Сензор за позиция (жироскоп

Потребителски инструменти

Инструменти за сайта

Съдържание

Сензор за позиция (жироскоп/акселерометър)

жироскоп
СПЕЦИФИКАЦИИ

сензор

С помощта на комбинирания модул на жироскоп и акселерометър е възможно да се измери ориентацията на робота в пространството в ъглите на въртене около три оси: надлъжна ос "X" (ъгъл на въртене), напречна ос "Y" (ъгъл на наклон), вертикална ос "Z" (ъгъл на отклонение).

Ориентацията на осите X и Y спрямо корпуса е указана на сензорната платка. "Стрелата" на въртене сочи в посока на увеличаване на ъгъла. Оста "Z" е насочена вертикално нагоре спрямо "предната" страна на платката, на която са разположени всички компоненти. Ъгълът на въртене около оста се увеличава с въртене по посока на часовниковата стрелка.

позиция

Използване

Връзка

Модулът на енкодера използва I2C интерфейс и се свързва към всеки от двата съответни I2C порта на контролера Trackduino.

Електрическа схема:

Включен сензор Включен контролер (I2C)
VCC5V
GNDGND
SCLSCL
SDASDA

Програмиране

Блокът, необходим за работа със сензора, се намира в групата блокове "Сензори" и се нарича "Позиция"

Когато работите със сензор за позиция от текстова среда, трябва ръчно да включите подходящата библиотека gyro_accel.h и да извикате функцията за калибриране setupAccel() в секцията setup():

При използване на графичния блок тези функции се генерират автоматично.

Блок и генерирана от него функция Описание

Връща дробната плаваща стойност, съответстваща на ъгълавъртене на ос.

Аргументи:char axis - променлива ос. Валидни стойности са 'x', 'y', 'z'.int mode - режим на изчисление за върнатите стойности. Валидни стойности: 0 или RAW_GYRO - само жироскоп 1 или RAW_ACCEL - само акселерометър 2 или FILTERED - средно

Режими на работа

Тъй като сензорът комбинира две устройства (жироскоп и акселерометър), той може да дава показания на базата на всяко от тях (режими „само акселерометър“ и „само жироскоп“) или чрез комбиниране на тези показания за осредняване и стабилизиране (режим „среден“)

Режим само на акселерометър : Ъглите се измерват само от акселерометъра въз основа на измерването на вектора на гравитацията.

Плюсове: няма кумулативна грешка във времето

Минуси: показанията са изключително нестабилни, чувствителни към вибрации и странични ускорения

Тъй като не е възможно да се определи въртенето около вертикалната Z-ос въз основа на информация за позицията на вектора на гравитацията, винаги ще получавате "0", когато се опитате да вземете показания по Z-ос в режим "само акселерометър". Определянето на въртене около Z е възможно само в режимите "само жироскоп" и "осреднено"

Режим само жироскоп : Ъглите се измерват от жироскопа чрез измерване на ъгловите скорости и интегрирането им във времето.

Плюсове: показанията са стабилни и не се влияят от произволни ускорения и вибрации

Минуси: Грешката се натрупва с времето. Показанията зависят от интервалите от време между измерванията. Колкото повече измервания се правят, толкова по-точен е резултатът.

Среден режим (препоръчва се в повечето случаи) : показанията на двата сензора се комбинират от софтуер, взаимно елиминирайки недостатъците на другия. показания на акселерометъра,грешката, в която не се натрупва с течение на времето, се "филтрира" от показанията на жироскопа, така че скокове в показанията, дължащи се на случайни ускорения и вибрации, се игнорират.

Плюсове: Показанията са стабилни и слабо засегнати от произволни ускорения и вибрации.

Минуси: оста Z все още натрупва грешка, тъй като за нея се използва само жироскоп.