Электронный модуль «Датчик пространственного положения»

Электронный модуль «Датчик пространственного положения»

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 не поддерживается! Используйте обычный текст.

Оценка: Плохо           Хорошо

Введите код, указанный на картинке: