Тестовый заезд с алгоритмом Калмана

Автомат, адаптивный автомат ... разум

Тестовый заезд с алгоритмом Калмана

Сообщение mandigit » 04 июл 2009, 22:01

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

Обсудить предлагается следующее:
1. Ставим задачу, для которой однозначно полезно использование фильтра Калмана. Предлагаемая задача - ориентация в пространстве (в первом приближении - по одной оси, например балансирующий робот). Вход с двух сенсоров: акселерометр, гироскоп.
2. Берем в качестве датчиков какие-то стандартные приборы типа adxl202 и enc03j, используем паспортные данные распределения ошибок.
3. !!! А вот тут самое интересное !!! По шагам прописываем действия, которые нужно сделать для получения реального положения в пространстве.
4. Формируем набор входных данных, включаем туду ошибки измерения (дрейф гироскопа и динамическую ошибку измерения акселерометра)
5. Прогоняем алгоритм по сформированному набору - получаем показания лучше, чем только с гироскопа или только с акселерометра
6. (для эстетов) Все это реализуется в железе.

каждый элемент алгоритма - понимаем, что и почему - тоже понимаем.
если есть желание - оформляем в каком-нибудь вики или еще где
Аватара пользователя
mandigit
 
Сообщения: 583
Зарегистрирован: 28 ноя 2005, 12:05
Откуда: Москва

Re: LPS (Локальная Система Позиционирования)

Сообщение =DeaD= » 04 июл 2009, 22:34

Это не обсудить - это совместно составить туториал по Калману :) правда я не знаю зачем такие жертвы - убедиться что Калман всё-таки работает? :)
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: LPS (Локальная Система Позиционирования)

Сообщение mandigit » 05 июл 2009, 00:11

Ну нет сил, так нет :)

Ладно, наверное я действительно перебрал - просто фантазия разигралась
Калман, вроде, требует настройки, в частности правильного определения ковариационных матриц ошибки?
Аватара пользователя
mandigit
 
Сообщения: 583
Зарегистрирован: 28 ноя 2005, 12:05
Откуда: Москва

Re: LPS (Локальная Система Позиционирования)

Сообщение =DeaD= » 05 июл 2009, 00:31

2mandigit: Так не в силах вопрос, просто ты накидал план действий как будто собрался проверять работает Калман или нет :) это же не я его вчера придумал, чтобы требовалась проверка :) или ты хочешь посмотреть насколько он лучше, чем просто отдельные измерения, в какой-то конкретной модели?

Настройка - это да, для лучших результатов оно нужно. Иначе он не будет знать чему больше верить - каким измерениям или вообще предсказаниям верить.
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: LPS (Локальная Система Позиционирования)

Сообщение mandigit » 05 июл 2009, 01:36

Если будут результаты - дай знать.
Аватара пользователя
mandigit
 
Сообщения: 583
Зарегистрирован: 28 ноя 2005, 12:05
Откуда: Москва

Re: LPS (Локальная Система Позиционирования)

Сообщение =DeaD= » 05 июл 2009, 01:39

если будут результаты в чем?

Добавлено спустя 20 секунд:
В смысле после первого практического опыта применения Калмана?
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: LPS (Локальная Система Позиционирования)

Сообщение avr123.nm.ru » 05 июл 2009, 08:07

Я выше писал уже, но повторю.

Хотелось бы МНЕ увидеть КОНКРЕТНЫЕ наборы чисел (штук 20, 50 аль 170) - как бы данных с 2-3 и более датчиков - и соответвующий набор чисел выход с фильтра.

Загнать в excel например у увидеть на графике что Калман делает.
Аватара пользователя
avr123.nm.ru
отсылающий читать курс
 
Сообщения: 14195
Зарегистрирован: 06 ноя 2005, 04:18
Откуда: Москва

Re: LPS (Локальная Система Позиционирования)

Сообщение mandigit » 05 июл 2009, 10:50

=DeaD= писал(а):В смысле после первого практического опыта применения Калмана?

да
Аватара пользователя
mandigit
 
Сообщения: 583
Зарегистрирован: 28 ноя 2005, 12:05
Откуда: Москва

Re: LPS (Локальная Система Позиционирования)

Сообщение =DeaD= » 05 июл 2009, 13:01

Ок, какой пример разберем? Давайте двухмерный - для балансирующего робота? Считаем, что есть аксель и гиро - генерим реальное положение робота, генерим показания акселя и гиро, добавляем гауссову погрешность, смотрим что получается отдельно от гиро, отдельно от акселя и что получается от Калмана - так?
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: LPS (Локальная Система Позиционирования)

Сообщение mandigit » 05 июл 2009, 21:26

скорее даже одномерный :)
задача сформулирована верно
для гироскопа (как мне кажется) следует добавить гауссову погрешность к измеряемой скорости, а вот для акселерометра - я не уверен, что добавление гауссовской ошибки к компоненте положения будет достаточным (а может и будет?)
Аватара пользователя
mandigit
 
Сообщения: 583
Зарегистрирован: 28 ноя 2005, 12:05
Откуда: Москва

Re: LPS (Локальная Система Позиционирования)

Сообщение =DeaD= » 05 июл 2009, 21:28

Гироскоп - это угловая скорость, а какие же углы в 1-мерном пространстве? :)

Добавлено спустя 40 секунд:
К акселю гауссову погрешность надо добавлять к ответу (т.е. измеряемой скорости)
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: LPS (Локальная Система Позиционирования)

Сообщение mandigit » 05 июл 2009, 21:51

у нас же 1 измеряемая величина - угол наклона
значит, пространство - одномерно
(мы же не обязаны рассматривать декартово пространство)

насчёт акселерометра - надо определиться с понятиями:
есть сенсоры, которые измеряют ускорение - их называют акселерометрами, однако, датчик типа ADXL измеряет положение в пространстве TILT SENSOR (что видно из даташита на него).
То есть ответ акселя в нашем случае - это угол наклона, но содержащий значительную ошибку, если измерение производится в момент движения.
Аватара пользователя
mandigit
 
Сообщения: 583
Зарегистрирован: 28 ноя 2005, 12:05
Откуда: Москва

Re: LPS (Локальная Система Позиционирования)

Сообщение =DeaD= » 05 июл 2009, 21:58

А ну если так рассматривать - ок, давай будем так считать. Ща накидаю в фоне в экселе чего получается.
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: LPS (Локальная Система Позиционирования)

Сообщение Ku6opr » 05 июл 2009, 22:31

mandigit писал(а):датчик типа ADXL измеряет положение в пространстве TILT SENSOR (что видно из даташита на него).
То есть ответ акселя в нашем случае - это угол наклона, но содержащий значительную ошибку, если измерение производится в момент движения.

Прям таки угол наклона выдает? ADXL выдает ускорение по осям, а угол наклон уже с помощью арктангенса находится
Аватара пользователя
Ku6opr
 
Сообщения: 50
Зарегистрирован: 19 май 2008, 12:04
Откуда: Украина, г. Харьков
прог. языки: C#, C++

Re: LPS (Локальная Система Позиционирования)

Сообщение mandigit » 06 июл 2009, 00:16

2Ku6opr
В этой теме величина, в которой измеряется угол не принципиальна, вроде?
Аватара пользователя
mandigit
 
Сообщения: 583
Зарегистрирован: 28 ноя 2005, 12:05
Откуда: Москва

След.

Вернуться в Алгоритмы

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3