Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Измерение расстояния, пути с MEMs акселерометр + гироскоп
Форум разработчиков электроники ELECTRONIX.ru > Аналоговая и цифровая техника, прикладная электроника > Метрология, датчики, измерительная техника
Aner
Кто делал реализацию просьба поделитесь достигнутыми результатами, идеями, алгоритмами, ссылками, прогами. Задача в измерении пути в 2D, 3D используя MEMs акселерометр, гироскоп например такие ADXL345; L3G4200 или аналогичные. Допустимая точность, разбросы параметров. Скорость в пределах от 0 до 50км/час. 1 - предполагается прямолинейное равномерное движение в плоскости по прямой точка точка. 2 - предполагается криво-линейное не равномерное движение в плоскости по прямой точка точка. 3 - в 3D криво, неравномерно.
a-p
Цитата(Aner @ May 12 2014, 16:58) *
Кто делал реализацию просьба поделитесь достигнутыми результатами, идеями, алгоритмами, ссылками, прогами. Задача в измерении пути в 2D, 3D используя MEMs акселерометр, гироскоп например такие ADXL345; L3G4200 или аналогичные. Допустимая точность, разбросы параметров. Скорость в пределах от 0 до 50км/час. 1 - предполагается прямолинейное равномерное движение в плоскости по прямой точка точка. 2 - предполагается криво-линейное не равномерное движение в плоскости по прямой точка точка. 3 - в 3D криво, неравномерно.


Добрый день!

Некоторое время назад мне предстояло работать над похожей задачей, но с гораздо меньшими скоростями. К сожалению, проект заморозили практически на старте. Несколько дней изучал материалы по теме. Основная проблема, которую Вам придётся решать, это накапливание погрешности. В моём случае нужно было отслеживать положение платформы, перемещающейся неравномерно в трёх измерениях в замкнутом пространстве. Я хотел использовать дешевые видеосенсоры для привязки к реперным точкам при замедлении платформы, а в момент ускорения использовать данные гироскопа/акселерометра. В принципе проблема решалась только высокоскоростными видеосенсорами, но стоимость разработки (как и стоимость самих сенсоров) убивала это решение на корню. Поэтому решено было использовать гироскоп/акселерометр.

Я тогда сохранил несколько интересных ссылок. Первая ссылка - реклама некоего устройства, но демонстрация впечатляет. Вторая ссылка - лекция от GoogleTechTalks про Sensor Fusion.

http://www.youtube.com/watch?v=6ijArKE8vKU

http://www.youtube.com/watch?v=C7JQ7Rpwn2k

С уважением,
Андрей
Aner
http://habrahabr.ru/post/131555/
TSerg
См./ищи "Бесплатформенные инерциальные навигационные системы"
Aner
QUOTE (TSerg @ May 12 2014, 16:41) *
См./ищи "Бесплатформенные инерциальные навигационные системы"

Но они совсем не MEMs_овские.
amaora
Хорошие БИНС расходятся по 1 м/с (в среднем минут за 20) и больше. А на дешевом MEMS только ориентацию можно удержать, с дрейфом величиной около угловой скорости земли. Если есть движение то еще хуже. MEMS акселерометр обычно используют как источник вертикали а не как в классических БИНС.
_pv
используя один акселерометр нельзя отличить поворот самого датчика от приложенного поперечного ускорения.
мемс гироскоп тут не поможет так как имеет большие смещения/дрейфы и очень быстро потеряет направление.
надо брать 3 разнесённых акселерометра, а еще лучше 4, чтобы не в одной плосткости находились, и по ним определять и ориентацию в пространтстве и направление ускорения.
однако чтобы получить смещения из ускорения, его надо интегрировать, причём дважды, поэтому любые минимальные смещения начинают очень быстро накапливаться.
то есть 1mg ошибки (а с обычными акселерометрами будет больше) или 10мм/с^2, за пару минут (100сек) превратится в a * t ^ 2 / 2 = 5м ошибки. ну и дальше квадратично за 20мин - 500м.
и это только длина пройденного пути при допущении что мы знаем куда перемещаемся, а с потерей ориентации в пространстве будет гораздо хуже, то есть за те же пару минут, мемсы что гироскопы, что акселерометры полностью забудут куда они изначально были направлены и в результате в какую именно сторону был двигается объект уже не узнать
amaora
Цитата(_pv @ May 12 2014, 19:27) *
надо брать 3 разнесённых акселерометра, а еще лучше 4, чтобы не в одной плосткости находились, и по ним определять и ориентацию в пространтстве и направление ускорения.


Есть какие-то результаты по такой схеме? Мне кажется это развалится быстрее ДУСов.
_pv
Цитата(amaora @ May 12 2014, 21:37) *
Есть какие-то результаты по такой схеме? Мне кажется это развалится быстрее ДУСов.

по сравнению с гироскопами, так можно по g ориентацию определять, хотя бы частично, с вращением вокруг оси параллельной g - беда.

amaora
Цитата(_pv @ May 12 2014, 19:59) *
по сравнению с гироскопами, так можно по g ориентацию определять, хотя бы частично, с вращением вокруг оси параллельной g - беда.


Без дополнительных предположений о траектории движения так же (как и в случае с акс. + дус) нельзя по акселерометрам определить ориентацию. Ну начнут они все выдавать вектор повернутый на 10 градусов, это будет ориентация или ускорение? Или в свободном падении все 0 будут показывать.

Добавка: Можно пересчитать показания акселерометров, чтобы постоянная составляющая скомпенсировалась а угловая осталась. Получается снова ДУС.
_pv
Цитата(amaora @ May 12 2014, 22:22) *
Без дополнительных предположений о траектории движения так же (как и в случае с акс. + дус) нельзя по акселерометрам определить ориентацию. Ну начнут они все выдавать вектор повернутый на 10 градусов, это будет ориентация или ускорение?


для этого их и надо несколько штук разнесённых в пространстве, так как тогда при повороте они угловое ускорение увидят и его можно проинтегрировать чтобы угол поворота получить. и поворот от ускорения всторону можно будет отличить.
Цитата(amaora @ May 12 2014, 22:22) *
Или в свободном падении все 0 будут показывать.

при отсутсвии силы тяжести ориентация по акселерометрам пожалуй хуже чем по гироскопам, там хотя бы только один раз интегрировать надо.
fider
Может быть, это будет интересно? У нас делали.

1. на конференции SibCon-2013 - Нажмите для просмотра прикрепленного файла

2. на конференции СПР-2014 - Нажмите для просмотра прикрепленного файла
TSerg
Цитата(Aner @ May 12 2014, 18:28) *
Но они совсем не MEMs_овские.


Ну и какая разница (в плане математики), из чего сделаны аксели или ДУС-ы?
Aner
QUOTE (TSerg @ May 13 2014, 01:07) *
Ну и какая разница (в плане математики), из чего сделаны аксели или ДУС-ы?

Разница: как в физике работы, в мат. обработке, в стоимости ДУС.
И все же я прошу ответить того, у кто есть опыт и результаты именно с MEMs.
fider спсибо за этот файлик - на конференции СПР-2014
amaora
Цитата(_pv @ May 12 2014, 20:41) *
для этого их и надо несколько штук разнесённых в пространстве, так как тогда при повороте они угловое ускорение увидят и его можно проинтегрировать чтобы угол поворота получить. и поворот от ускорения всторону можно будет отличить.

при отсутсвии силы тяжести ориентация по акселерометрам пожалуй хуже чем по гироскопам, там хотя бы только один раз интегрировать надо.


Сначала говорите, что такая схема позволит определять ориентацию в отличии от гироскопов, теперь оказывается нужно интегрировать угловую скорсть, то есть получается так же как и с дусами.

Можно и с акселерометров угловую скорость снимать исходя из их статической связи, без интегриирования ускорений. Но будет ли это давать результат лучшем дус, сомнитильно.
TSerg
Цитата(Aner @ May 13 2014, 12:03) *
Разница: как в физике работы, в мат. обработке, в стоимости ДУС.
И все же я прошу ответить того, у кто есть опыт и результаты именно с MEMs.
fider спсибо за этот файлик - на конференции СПР-2014


Вы меня не услышали, поэтому повторю контр-вопрос: "Какая разница в математике, на каком физ. типе датчиков основана БИНС?"

P.S.
С MEM-сами сейчас не работает только ленивый, но их использование - это не самоцель, а определяется ТЗ на систему.
Aner
Дус может и лучше но из-за цены, доступности не рассмтривается. Не для леталки нужно. Предел расстояния для измерения от 2 до 500 метров, с точностью 1...5% допускаются. Для первого варианта Z вертикаль можно не использовать - предполагается прямолинейное равномерное движение в плоскости по прямой точка точка. Да могут быть шаги, бег, можно использовать эту идею. Но также может быть и колёсное движение или перемещение по плоскости.
amaora
Цитата(Aner @ May 13 2014, 17:27) *
Дус может и лучше но из-за цены, доступности не рассмтривается.


Цитата
The L3G4200 is a low-power, three-axis angular rate sensor ...


Ничего не понял про цену и доступность. Аngular rate sensor это и есть Датчик Угловой Скорости (ДУС).

Цитата
Предел расстояния для измерения от 2 до 500 метров, с точностью 1...5% допускаются.


Исходите из времени работы БИНС, а не расстояния. Ну или можно приблизительно пересчитать, пешеходная скорость 5км/час дает 6 минут. Для начала самым наивным образом можете дважды проинтегрировать измерение неподвижного акселерометра и посмотреть, что будет через 6 минут. Чтобы получить не более 25м ошибки за 6 минут, ошибка нуля акселерометра должна быть ниже 4e-4 м/c^2. У ADXL345 температурная зависимость 0.4 mg (~4e-3 м/c^2) на градус. То есть уже превышение в 10 раз, от одного градуса изменения температуры. И это лишь один из источников погрешности.

А от литературы отказываетесь зря, многие вопросы нашли бы там ответы. Мне вот нравится "Н.И. Амелькин Динамика твердого тела", кратко и понятно. Да оно не про БИНС, а про то на чем основаны любые ИНС.
TSerg
35 лет назад небольшая (20 кг) платформенная ИНС для морских объектов имела уход < 100 м/час.
На МЕМ-сах таких показателей сегодня повторить не удается.
Aner
QUOTE (amaora @ May 15 2014, 20:47) *
... дважды проинтегрировать измерение неподвижного акселерометра и посмотреть, что будет через 6 минут. Чтобы получить не более 25м ошибки за 6 минут, ошибка нуля акселерометра должна быть ниже 4e-4 м/c^2.

У ADXL345 температурная зависимость 0.4 mg (~4e-3 м/c^2) на градус. То есть уже превышение в 10 раз, от одного градуса изменения температуры. И это лишь один из источников погрешности.

А от литературы отказываетесь зря, многие вопросы нашли бы там ответы. Мне вот нравится "Н.И. Амелькин Динамика твердого тела", кратко и понятно. Да оно не про БИНС, а про то на чем основаны любые ИНС.

Нет от литературы не отказываюсь, ... Температурная зависимость позже (предполагается, что температура не меняется), поскольку при измерении могу контролировать, следить за температурой.
Контролировать отклонения от нуля, после двойного интегрирования неподвижного акселерометра не проблема. Получается приемлемо. А вот в движении по прямой точка-точка, идет накопление ошибки от двух других дименсий, если делаем слежение в 3D.
polyakovav
Цитата(Aner @ May 18 2014, 13:40) *
Нет от литературы не отказываюсь, ... Температурная зависимость позже (предполагается, что температура не меняется), поскольку при измерении могу контролировать, следить за температурой.
Контролировать отклонения от нуля, после двойного интегрирования неподвижного акселерометра не проблема. Получается приемлемо. А вот в движении по прямой точка-точка, идет накопление ошибки от двух других дименсий, если делаем слежение в 3D.


Комплексная система навигации мобильного комплекса на GPS, акселерометрах и гироскопе в автономном режиме (потеря сигнала GPS) имеет уход около 5 градусов за первую минуту, потом дрейф ускоряется.
Для компенсации дрейфов нужно провести инициализацию (движение, сочетающее прямые участки 100 м с поворотами в разные стороны).
В общем, современные МЕМС не позволяют пока получить необходимую точность в автономе. Немного улучшает ситуацию магнитометр, но он чувствителен к влиянию всякого железа и токов - в помещениях сильно врет.
Очень неплохие результаты можно получить на встроенной навигации смартфонов, только нужно брать сырые данные с датчиков.
TSerg
Кстати, если говорить о пешеходных БИНС, то удается использовать сигнал от стопы, когда она припечатана к земле и в этот момент делается коррекция по ускорению и скорости. В основе - все тот же Калман.
Однако угловые дрейфы пока непоборимы без внешней коррекции или магнитометра.
amaora
Aner

А по оптическим датчикам не подходит?

http://www.robots.ox.ac.uk/~gk/PTAM/
Aner
QUOTE (amaora @ May 19 2014, 18:11) *
Aner

А по оптическим датчикам не подходит?

http://www.robots.ox.ac.uk/~gk/PTAM/

Нет не подходит, другая задача.
polyakovav
Цитата(Aner @ May 18 2014, 13:40) *
... А вот в движении по прямой точка-точка, идет накопление ошибки от двух других дименсий, если делаем слежение в 3D.


Обратите внимание на вибрацию или тремор (если на теле размещено). У нас из-за переменной составляющей ускорений ошибки заметно увеличивались (особенно если спектр вибраций выходит за Fd/2 sm.gif.
Вибрация сильно влияет и на стабильность показаний гироскопов.
Aner
Вибрация, тремор (этот, не совсем технический термин), джиттер ... с этим разбираются Калманы и матричные фильтры приемлемо за отведенное время и растояние которым ограничились.
С гироскопом тоже все приемлемо, проверили, он обеспечивает углы с заданной точностью, после нормализаций, кватернионных преобразований и тд. То что от него и требовалось.
Сейчас "математику" под аксель нужно доделывать, тестить. Отсюда и вопрос изначальный, к тем кто такое проходил и чего добился.
amaora
Понятно, значит литература уже изучена и вопрос в том, что еще можно сделать с показаниями датчиков для повышения точности.

Моделировать работу датчиков и вашего БИНС пробовали? Методически все верно? Калибровка ортогональности осей, масштабов, зависимости дус от ускорения есть? Как производится старт? В условиях неподвижности устройства? При этом оцениваются-запоминаются нулевые показания датчиков?

Угловые погрешности пересчитывали в ошибки по координатам? От одного градуса будет ~10 километров за 6 минут. А от например вращения земли за 6 минут получается 1.5 угловых градусов.

Если движение по поверхности, то можно пытаться измерять высоту бародатчиком и использовать для коррекции карты высот. Но таких детальных карт скорее всего не найти, да и рельеф должен быть информативен. Я как-то даже думал над возможностью навигации по одному только датчику давления и скорости движения (или даже без нее), предполагая, что двигаться можно только по дорогам, а на картах этих дорог нанесена высота в каждой точке.

Aner
Если задаёмся порогом, делаем переодическое обнуление то малое влияние вращения земли, как фактор ошибки устраняется. Да и нет у нас 10 км в условиях. По сути шагомер нужен, но и колесное движение требуется поддержать.
alx125
Возможно будет интересна статья "Мультисенсорные навигационные системы для локального позиционирования"
http://www.soel.ru/cms/f/?/325567.pdf

Системы бурно развиваются
Одно из интересных применений этих систем - позиционирование пожарных в горящем здании
Aner
QUOTE (alx125 @ May 23 2014, 03:50) *
Возможно будет интересна статья "Мультисенсорные навигационные системы для локального позиционирования"
http://www.soel.ru/cms/f/?/325567.pdf

Системы бурно развиваются
Одно из интересных применений этих систем - позиционирование пожарных в горящем здании

Все же это ~ 8-летней давности обзорно-публицистическая статейка, не более.
alx125
Цитата(Aner @ May 24 2014, 11:51) *
Все же это ~ 8-летней давности обзорно-публицистическая статейка, не более.

Скорее это говорит о том, как Они далеко продвинулись с тех пор

Из этого журнала, из свеженького 2014г №4 "Инерциальные датчики и модули на основе МЭМС" :
http://www.soel.ru/issues/?id=496347

Глубже копать не стал , наверное еще что-то можно нарыть. Например ссылки/литературу
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.