воскресенье, 1 декабря 2013 г.

Решение проблем с EV3 датчиком-гироскопом программным способом

Датчик-гироскоп, по умолчанию идущий в составе образовательных наборов LEGO Mindstorms EV3, - одно из самых интересных устройств для экспериментов в новом наборе! Но те, кто начал использовать его в своих конструкциях, наверняка, столкнулись с одним неприятным свойством - существуют такие моменты, когда показания датчика, работающего в режиме замера угла поворота, самопроизвольно нарастают или уменьшаются, хотя датчик не двигается.
Это явление называется дрифт (drift).

Данное видео демонстрирует этот эффект:


Так же на видео видно, что есть способ, как убрать это нарастание - надо переинициализировать датчик (отключить питание и включить снова).

Есть и другой способ, его могут уже знать читатели Google группы legoengineering (https://groups.google.com/forum/#!forum/legoengineering). Он позволяет решать эту проблему программно, что очень актуально для команд, занимающихся спортивной робототехникой. Дело в том, что с точки зрения программы, переинициализация (не путать со сбросом текущего значения) датчика происходит также во время переключения его из одного режима в другой. Для датчика-гироскопа это переключение его из режима замера углового ускорения в режим замера угла поворота.


Главное помнить, что во время переключения робот должен быть неподвижен.

P.S. эксперименты показывают, что это способ тоже не всегда работает. Поэтому его можно "усилить" двойным переключением.

1 комментарий:

Related Posts Plugin for WordPress, Blogger...