Инструменты пользователя

Инструменты сайта


trenajor:calibrator

Магнитометр меряет напряженность магнитного поля, возвращая его проекции на свои три оси координат (оси чувствительности). Магнитное поле Земли довольно сильное и однородное, поэтому, если мы будем вращать датчик и строить его показания как 3Д график, то получим сферу.

В реальности мы получим перекособоченный эллипсоид, сдвинутый от начала координат. Это означает, что рядом присутствуют ферромагнетики и другие источники магнитного поля, а также оси чувствительности магнитометра могут быть не особо взаимно перпендикулярны и не начинаться с нуля.

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

Вуаля - теперь можно получить неискаженное значение магнитного поля, применив к измерению эту матрицу.

Поэтому для использования магнитометра надо накопить достаточно данных для построения эллипсоида чтобы получить его матрицу. (Для этого, собственно, владельцы квадрокоптеров с магнитометром в автопилоте и вращают их полчаса перед тем как запустить)

Вот результат вращения одного из датчиков, на первом графике отложено Y(X), на втором Z(X) -

Если массив данных магнитометра образовал почти идеальную сферу в пространстве - причем для обоих магнитометров, используемых в проекте, то это очень хорошо - т.к. поэтому для получения неискаженных данных необязательно возиться с эллипсоидом и методом наименьших квадратов, достаточно просто вычесть смещение.

Программы в директории a.calibrator2.pedals и a.calibrator2.stick предназначены для калибровки магнитометров педалей и рукоятки соответственно. Сначала надо собрать данные для эллипса (выбрать соответственный переключатель и запустить таймер выбором соответствующего пункта меню), получив аналогичную картинку. Потом выключить таймер и рассчитать смещение по пункту меню Эллипсоид→рассчитать(от собранных данных). Далее надо проделать процедуру центровки - поместить рукоятку или педали в начальное положение, выбрать соответствующий переключатель, собрать данные опять таки включив и затем выключив таймер, и рассчитать по пункту меню центр→рассчитать, для рукоятки или педалей. Потом выбрать пункт меню файл→сохранить все.

Параметры СОМ-порта (Имя, скорость, parity) содержатся в файле comport.txt

trenajor/calibrator.txt · Последнее изменение: 2021/02/20 03:41 — setproperty

Страницы, ссылающиеся на эту: [trenajor:народный_тренажер | trenajor:google_earth | trenajor:simulator]
Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki