Электронный модуль «Датчик пространственного положения»
1. Назначение устройства
Электронный модуль «Датчик пространственного положения» ПЭМ10.300 (Рис. 1.1) является элементом системы управляющей электроники «Эвольвектор ВЕРТОР» (далее ВЕРТОР) и относится к классу датчиков. Он предназначен для определения угловых ускорений, угловых скоростей и вычисления углов поворота относительно трех декарторвых осей, промаркированных на плате. Также датчик наделен функцией определения индукции магнитного поля земли в точке своего нахождения. Модуль может использоваться в учебных стендах, робототехнических конструкциях и системах их навигации, которые требуют определения указанных параметров.
Модуль рассчитан на применение совместно с программируемыми контроллерами и шилдами, входящими в систему ВЕРТОР (подробная информация о системе представлена на сайте https://academy.evolvector.ru).
Рис. 1.1
2. Конструкция модуля и назначение выводов (контактов)
Модуль «Датчик пространственного положения» выполнен в форме печатной платы, на которой смонтированы разъем для подключения модуля к контроллеру, цифровой датчик пространственного положения и индикатор принципиальной работоспособности модуля (Рис.2.1).
Рис. 2.1
Плата имеет типоразмер U1 (1 unit) и четыре крепежных отверстия под винты М3. Межосевое расстояние крепежных отверстий и физические размеры модуля представлены на рисунке 2.2. По расстоянию между крепежными отверстиями (кратно 8 мм) модуль совместим с конструкторами Эвольвектор, LEGO, MakeBlock и может крепиться к их деталям с помощью стоек.
Рис. 2.2
Модуль не является независимым устройством и может работать только совместно с контроллерами системы ВЕРТОР.
Подключение модуля осуществляется с помощью разъема XH-2.54-4P, выводы которого имеют следующее назначение:
VCC - к “+” источника питания контроллера;
SDL - к линии SDL контроллера, по которой передаются тактирующие импульсы для передачи данных по протоколу I2C;
SDA - к линии SDA контроллера, по которой происходит передача данных по протоколу I2C;
GND - земля (общий провод).
Для указанных контактов на печатной плате модуля нанесена соответствующая маркировка белого цвета.
3. Принцип работы
Основным элементом модуля, осуществляющим измерение параметров угловой скорости, ускорения и напряженности магнитного поля, является микросхема цифрового датчика MPU9250 (ее расположение на модуле показано на рисунке 2.1), сочетающая в себе три устройства: 3-х осевой гироскоп, акселерометр и компас.
Гироскопом называется датчик, реагирующий на изменение углов своей ориентации в пространстве.
Если гироскоп фиксирует свои отклонения относительно 3-х декартовых осей, то его называют 3-х осевым.
Акселерометр, в свою очередь, - это датчик, возвращающий величину своего углового ускорения относительно определенной оси. Аналогично гироскопу, если ускорения детектируются вокруг 3-х осей, то он является также 3-х осевым.
Ну а компас всем известен. Это устройство, которое определяет направление магнитных линий земли.
Применительно к данному датчику, с помощью компаса можно получить значение напряженности магнитного поля Земли в точке, в которой находится модуль.
Микросхема, содержащая все эти датчики, обменивается данными с контроллером по протоколу I2C.
Поэтому для обеспечения возможности получения данных контроллером модуль необходимо подключить к разъему контроллера, поддерживающему данный интерфейс.
На рисунке 3.1 показаны оси, относительно которых работают гироскоп и акселерометр.
Рис. 3.1
А на рисунке 3.2 проиллюстрировано расположение осей для компаса относительно модуля.
Рис. 3.2
Обратите внимание, что направление осей не совпадает, однако в обоих случаях совпадает точка начала данных осей. Она находится в центре микросхемы.
На практике углы отклонения датчиков от показанной на рис. 3.1 системы координат называются углами Эйлера. Это название позаимствовано из авиации для лучшего понимания того, как именно отклоняется в пространстве датчик. Углы эти характиризуют поворот модуля по курсу (англ. yaw), крену (англ. roll), и тангажу (pitch) (Рис. 3.3).
Рис. 3.3
Соответственно курс описывается углом ψ, крен обозначается углом φ, а тангаж характеризизуется углом θ. На рисунке 3.4 даны пояснения что представляют из себя данные углы для модуля пространственного положения.
Рис. 3.4
Работу с датчиком реализует библиотека «Geegrow_MPU9250», которую можно скачать с сайта https://academy.evolvector.ru. В нее заложены базовые функции для инициализации датчика и определения угловых скоростей с ускорениями:
I2CTransport::begin() - функция запуска передачи данных по протоколу I2C;
myIMU.readByte(WHO_AM_I_MPU9250) - функцияопределения типа используемой микросхемы датчика пространственного положения;
myIMU.init - функция, выполняющая инициализацию и калибровку акселерометра, гироскопа и компаса перед началом работы с ним;
myIMU.update() - функция считывания актуальных значений параметров от гироскопа, акселерометра и компаса;
myIMU.ax - переменная, содержащая значение углового ускорения датчика относительно оси оХ в град/с²;
myIMU.ay - переменная, содержащая значение углового ускорения датчика относительно оси оY в град/с²;
myIMU.az - переменная, содержащая значение углового ускорения датчика относительно оси оZ в град/с²;
myIMU.gx - переменная, содержащая значение угловой скорости датчика относительно оси оX в град/с;
myIMU.gy - переменная, содержащая значение угловой скорости датчика относительно оси оY в град/с;
myIMU.gz - переменная, содержащая значение угловой скорости датчика относительно оси оZ в град/с;
myIMU.mx - переменная, содержащая значение проекции вектора напряженности магнитного поля на ось oX;
myIMU.my - переменная, содержащая значение проекции вектора напряженности магнитного поля на ось oY;
myIMU.mz - переменная, содержащая значение проекции вектора напряженности магнитного поля на ось oZ;
Madgwick::update() - функция, реализующая алгоритм фильтра Маджвика для расчета углов курса, крена и тангажа на основе показаний гироскопа, акселерометра и компаса;
Madgwick::yaw - выражение для вывода переменной класса, содержащей значение угла курса;
Madgwick::pitch - выражение для вывода переменной класса, содержащей значение угла тангажа;
Madgwick::roll - выражение для вывода переменной класса, содержащей значение угла крена.
Внутри библиотеки представлен скетч, который является примером применения перечисленных функций.
Он иллюстрирует общий случай использования библиотеки, когда с датчика снимаются все возможные данные. И далее на основании этих данных вычисляются в реальном времени отклонения по курсу, тангажу и крену относительно некоторого откалиброванного начального положения с помощью математического фильтра Маджвика. Вычисленные углы при этом выводятся в монитор порта.
Для того, чтобы воспользоваться данным примером в целях изучения принципов работы модуля, выполните следующие действия:
1. Подключите модуль к любому порту I2C контроллера Вертор Стандарт или Вертор Мега и положите его на ровную поверхность стола в горизонтальном положении;
2. Загрузите скетч примера из библиотеки «Geegrow_MPU9250» в контроллер;
3. Откройте сразу же монитор порта;
4. Убедитесь, что выполняется калибровка акселерометра и гироскопа. В этот момент модуль должен быть неподвижным (трогать его руками нельзя), а в монитор порта выводится сообщение «Gyro and accel calibration will start in 5 seconds! It will take about 1s. Don’t touch device!». Дождитесь окончания калибровки, о чем будет свидетельствовать сообщение «Acccel abd gyro calibration done!» (Рис. 3.5);
Рис. 3.5
5. Далее запустится калибровка компаса. В мониторе появится сообщение «Mag calibration: Wave device in a fgure 8 until done! Waiting 5 seconds to get ready followed by 10 seconds of sampling». При появлении данного сообщения возьмите в руки модуль и двигайте его так, чтобы он описывал в пространстве воображаемую цифру 8. Двигать его надо в течение 10 секунд до появления сообщения «Mag calibration done!» (Рис. 3.6);
Рис. 3.6
6. После завершения перечисленных выше операций вы увидите в мониторе порта значения углов курса, крена и тангажа. Теперь, если произвольно отклонять модуль в пространстве, данные углы будут изменяться (Рис. 3.7);
Рис. 3.7
4. Технические характеристики
Наименование характеристики | Значение |
Типоразмер, мм | 1U, 22x29 |
Тип разъема | XH-2.54-4P |
Номинальное напряжение питания, В | 5 |
Диапазон измерения гироскопа (определяется настройками), º/с | ±250, ±500, ±1000, ±2000 |
Диапазон измерения акселерометра (определяется настройками), G | ±2, ±4, ±8, ±16 |
Чувствительность гироскопа (определяется настройками), LSB/(º/с) | ±131, ±65,5, ±32,8, ±16,4 |
Диапазон измерения компаса, мкТл | ±4800 |
Интерфейс обмена данными | I2C |
5. Условия гарантии
ООО «Эвольвектор» гарантирует работоспособность электронного модуля на протяжении всего гарантийного срока эксплуатации, который составляет 12 месяцев с момента приобретения устройства. Также гарантируется совместимость модуля с другими устройствами системы управляющей электроники ВЕРТОР.
Гарантийные обязательства производителя распространяются только на ту продукцию, которая не имеет повреждений и не выведена из строя в результате неверных действий пользователя.
По вопросам гарантийного обслуживания, а также по всем техническим и информационным вопросам можно обращаться на электронную почту:
info@evolvector.ru
help@evolvector.ru
а также по телефону +7 (499) 391-01-05
Адрес для корреспонденции: 143300, Московская область, г. Наро-Фоминск, ул. Московская, д.15.
Написать отзыв
Ваше Имя:Ваш отзыв: Внимание: HTML не поддерживается! Используйте обычный текст.
Оценка: Плохо Хорошо
Введите код, указанный на картинке: