Подскажите с математикой обсчета компаса

Обсуждаем контроллеры компании Atmel.
Ответить
Собутыльник Кота
Аватара пользователя
Сообщения: 2708
Зарегистрирован: Сб май 14, 2011 21:16:04
Откуда: г. Чайковский

Сообщение Z_h_e »

Нет, не читал, наверное не буду.
Вектор электронного компаса указывает на определенную точку?
Если электронный компас всегда показывает на одну точку, то трехмерных данных должно быть достаточно для определения положения. В равной степени также как достаточно определения положения относительно центра гравитации для акселерометра.
Изображение
Добро всегда побеждает зло. Поэтому кто победил - тот и добрый.
Реклама
Друг Кота
Аватара пользователя
Сообщения: 3790
Зарегистрирован: Ср дек 24, 2008 09:58:58

Сообщение Ser60 »

Не хотите - не читайте. Может у кого-то есть больше времени печатать здесь прописные истины, подробно описанные в других местах. Я этого делать не стану. Кратко отмечу лишь, что Вы путаете проекцию 3-мерного вектора магнетометра на плоскость корабля и определение его курса в проекции вектора на плоскость истинного горизонта.
Реклама
Потрогал лапой паяльник
Аватара пользователя
Сообщения: 355
Зарегистрирован: Ср мар 09, 2016 08:07:41

Сообщение JackSmith »

Тоже столкнутся с проблемой, пытаюсь откалибровать компас по этому мануалу:
http://diydrones.com/profiles/blogs/adv ... or-dummies

Я правильно понимаю, что если компас 3-х осевой, то я могу получить кроме азимута еще тангаж и крен? Или мне это только гироскоп даст, а компас будет вменяемые данные показывать только на экваторе (магнитном)?
Друг Кота
Аватара пользователя
Сообщения: 3790
Зарегистрирован: Ср дек 24, 2008 09:58:58

Сообщение Ser60 »

Тангаж/крен даст не гироскоп а акселерометр. Что Вы имеете в виду под "вменяемыми показаниями" компаса мне неясно. Если направление его вектора на северный полюс при горизонтальном его положении, то нигде на земном шаре электронный компас это не даст. В любом случае понадобится вычисление проекции вектора компаса на плоскость истинного горизонта (см., например, Википедию для определений) для определения направления на магнитный полюс Земли.
Реклама
Эиком - электронные компоненты и радиодетали
Потрогал лапой паяльник
Аватара пользователя
Сообщения: 355
Зарегистрирован: Ср мар 09, 2016 08:07:41

Сообщение JackSmith »

Ser60 писал(а):Тангаж/крен даст не гироскоп а акселерометр. Что Вы имеете в виду под "вменяемыми показаниями" компаса мне неясно
я имел ввиду, точнее я хотел спросить, датчик указывает же отклонение от магнитного поля? т.е. на плоскости угол между севером и датчиком будет азимутом? Но тогда, если датчик выровнять по магнитному у полю, то на экваторе Z будет указывать в пол и датчик будет выдавать углы Эйлера т.е. ориентацию в пространстве. На полюсе же(магнитном), если также выровнять датчик по магнитному полю, Z будет указывать в горизонт. Или нет?
Изображение
Реклама
Друг Кота
Аватара пользователя
Сообщения: 3790
Зарегистрирован: Ср дек 24, 2008 09:58:58

Сообщение Ser60 »

3-мерный вектор магнитометра измеряется последним в системе координат его плоскости, где Z-кордината перпендикулярна этой плоскости и направлена вниз в сторону платы, на которой смонтирован чип е-компаса. Если расположить плоскость магнетометра параллельно с плоскостью, касающейся поверхности Земли в точке нахождения наблюдателя (т.е. когда его Z-ось пойдет вертикально вниз, что называется плоскостью истинного горизонта), то остальные 2 координаты его вектора по осям Х и Y покажут направление (азимут) на магнитный центр, который несколько отличается от географического и находится в постоянном перемещении. При таком положении магнетометра в северном магнитном полушарии Z-компонента вектора компаса уходит вниз, в южном полушарии - вверх. На магнитном экваторе (не географическом) Z-компонента равна 0. В точке магнитных полюсов Z-координата уходит вертикально вниз (в северном полюсе) и вверх (в южном).

Если плоскость корпуса акселерометра не параллельна плоскости истинного горизонта, для определения курса (азимута) следует пересчитать проекцию вектора на плоскость истинного горизонта. Последняя характеризуется как вектор гравитации с кординатами Z=g, X=Y=0. Если акселерометр распаян на той-же плате что и магнетометр, по показаниям акселерометра можно будет определить наклон плоскости платы по отношению к плоскости истинного горизонта. Таким образом, коррекция вектора курса в зависимости от наклона магнетометра будет работать с минимальной погрешностью только при отсутствии ускорений платы, вызванных ее перемещением относительно Земли. В частности, коррекция такая не будет работать вообще, если плата магнетометра с акселерометром будет находиться в свободном падении, где показания по всем осям акселерометра равны 0.
Реклама
Потрогал лапой паяльник
Аватара пользователя
Сообщения: 355
Зарегистрирован: Ср мар 09, 2016 08:07:41

Сообщение JackSmith »

А, дошло. Магнитометр измеряет вектор магнитной индукции относительно базиса. Тогда при наклоне, в формуле
Изображение
следует вектор B умножить на матрицу поворота полученную из показаний акселерометра.
Опытный кот
Сообщения: 804
Зарегистрирован: Чт мар 12, 2009 16:31:05

Сообщение Vov123 »

Знакомая картинка.

Занятный видос http://www.avislab.com/blog/hmc5883l_ru/
Ответить

Вернуться в «AVR»