Датчик акселерометр гироскоп, для измерения ориентации робота в пространстве в углах поворота вокруг трех осей
Датчик положения (гироскоп/акселерометр)
ТЕХНИЧЕСКИЕ ХАРАКТЕРИСТИКИ
- 1) Модель MPU-6050
- 2) Напряжение питания : от 3.3 до 5.0 В
- 3) Рабочий ток: < 5 мА
- 4) Диапазон измеряемых акселерометром ускорений: +/- 2g, +/- 4g, +/- 8g, +/- 16g
- 5) Диапазон измеряемых гироскопом угловых скоростей: ± 250, 500, 1000, 2000 °/сек
- 6) Количество осей: 3
- 7) Интерфейс подключения: 4-проводной I2C
Описание


Углы крена, тангажа, рыскания
С помощью комбинированного модуля гироскопа и акселерометра можно измерять ориентацию робота в пространстве в углах поворота вокруг трех осей: продольной оси «X» (угол крена), поперечной оси «Y» (угол тангажа), вертикальной оси «Z» (угол рыскания).
Ориентация осей X и Y относительно корпуса указана на плате датчика. «Стрелка» поворота указывает в сторону увеличения угла. Ось «Z» направлено вертикально вверх относительно «лицевой» стороны платы, на которой располагаются все компоненты. Угол поворота вокруг оси увеличивается при повороте по часовой стрелке.


Ориентация осей относительно датчика
Использование
Подключение
Модуль датчика положения использует интерфейс I2C и подключается к любому из двух соответствующих портов I2C контроллера Трекдуино.
Схема подключения проводов:
На датчике | На контроллере (I2C) |
---|---|
VCC | 5V |
GND | GND |
SCL | SCL |
SDA | SDA |
Программирование
Блок, необходимые для работы с датчиком, расположены в группе блоков «Датчики» и называется «Положение»
При работе с датчиком положения из текстовой среды необходимо вручную подключать соответствующую библиотеку gyro_accel.h
и вызывать функцию калиброки setupAccel()
в секции setup()
:
#include//подключение библиотеки void setup(){ setupAccel();//калибровка. Датчик должен неподвижно располагаться на горизонтальной поверхности.} void loop(){ //ваш код}
При использовании графического блока эти функции генерируются автоматически.
Блок и генерируемая им функция | Описание |
---|---|
![]() float readAccelAngle(char axis, int mode) | Возвращает дробное значение типа float, соответствующее углу поворота по оси. Аргументы: char axis - инетерующая ось. Допустимые значения - 'x', 'y', 'z'.int mode - режим расчета выдаваемых значений. Допустимые значения:0 или RAW_GYRO - только гироскоп1 или RAW_ACCEL - только акселерометр2 или FILTERED - усредненный |
Режимы работы
Так как датчик совмещает в себе два устройства (гироскоп и акселерометр), то и выдавать показания он может основаваясь на каждом из них (режимы «только акселерометр» и «только гироскоп»), либо комбинируя эти показания для усреднения и стабилизации (режим «усредненный»)
Режим «Только акселерометр»: углы измеряются только акселерометром на основании измерения вектора силы тяжести.
Плюсы: нет накапливающейся во времени погрешности
Минусы: показания крайне нестабильны, чувствительны к вибрации и боковым ускорениям
Так как основываясь на информации о положении вектора силы тяжести невозможно определить вращение вокруг вертикальной оси Z, при попытке получить показания по оси Z в режиме «только акселерометр» вы всегда будете получать «0». Определение вращения вокруг Z возможно только в режимах «только гироскоп» и «усредненный»
Режим «Только гироскоп»: углы измеряются гироскопом путем измерения угловых скоростей и интегрирования их по времени.
Плюсы: показания стабильны и мало подвержены влиянию случайных ускорений и вибрации
Минусы: ошибка накапливается во времени. Показания зависят от временных промежутков между измерениями. Чем чаще производятся измерения, тем точнее результат.
Режим «Усредненный» (рекомендуется в большинстве случаев): показания обоих датчиков программно комбинируются, взаимно устраняя недостатки друг друга. Показания акселерометра, ошибка в которых не накапливается во времени, «фильтруются» показаниями гироскопа, таким образом скачки в показаниях при случайных ускорениях и вибрации игнорируются.
Плюсы: показания стабильны и мало подвержены влиянию случайных ускорений и вибрации.
Минусы: по оси Z все равно накапливается ошибка, так как для нее используется только гироскоп.
Примеры использования в проектах
Вывод показаний по трем осям в последовательный порт
Оплачивайте покупки удобным способом. В интернет-магазине доступно 3 варианта оплаты:
- Наличные при самовывозе или доставке курьером. Специалист свяжется с вами в день доставки, чтобы уточнить время и заранее подготовить сдачу с любой купюры. Вы подписываете товаросопроводительные документы, вносите денежные средства, получаете товар и чек.
- Безналичный расчет при самовывозе или оформлении в интернет-магазине: карты МИР, Visa и MasterCard. Чтобы оплатить покупку, система перенаправит вас на сервер системы ASSIST. Здесь нужно ввести номер карты, срок действия и имя держателя.
- ЮMoney при онлайн-заказе. Для совершения покупки система перенаправит вас на страницу платежного сервиса. Здесь необходимо заполнить форму по инструкции.
Экономьте время на получении заказа. В интернет-магазине доступно 4 варианта доставки:
- Курьерская доставка работает с 9.00 до 19.00. Когда товар поступит на склад, курьерская служба свяжется для уточнения деталей. Специалист предложит выбрать удобное время доставки и уточнит адрес. Осмотрите упаковку на целостность и соответствие указанной комплектации.
- Самовывоз из магазина. Список торговых точек для выбора появится в корзине. Когда заказ поступит на склад, вам придет уведомление. Для получения заказа обратитесь к сотруднику в кассовой зоне и назовите номер.
- Постамат. Когда заказ поступит на точку, на ваш телефон или e-mail придет уникальный код. Заказ нужно оплатить в терминале постамата. Срок хранения — 3 дня.
- Почтовая доставка через почту России. Когда заказ придет в отделение, на ваш адрес придет извещение о посылке. Перед оплатой вы можете оценить состояние коробки: вес, целостность. Вскрывать коробку самостоятельно вы можете только после оплаты заказа. Один заказ может содержать не больше 10 позиций и его стоимость не должна превышать 100 000 р.