Робот для траектории на основе Lego Mindstorms EV3


Данная презентация может быть использована как на уроках информатики и технологии, так и во внеурочной деятельности, на кружке «Робототехника», во время подготовки к соревнованиям. Презентация рассчитана на учащихся 9-11 классов Робот для траекторииLego Mindstorms EV3 Собираем базовую модель учебного робота Robot EducatorДля этого можно использовать инструкцию в программном обеспечении MINDSTORMS EV3. Заголовок слайда Так же нам понадобятся, датчики света-цвета EV3. В режиме измерения окружающей освещенности, количество света, попавшее на светочувствительный элемент, преобразуется в цифровое значение, которое уже используется в программе. В режиме измерения отраженного цвета, помимо светочувствительного элемента, активируется светои-спускающий элемент (светодиод). Свет, выпущенный этим элементом, отражается от какой-нибудь поверхности и попадает обратно в светочувствительный элемент.
Что выполняет датчик освещенности?Измеряет уровень освещенности. Например, показания сенсора может быть 10% на темной стороне и 90% процентов на светлой.
На какой высоте от поверхности поля и под каким углом лучше всего крепить датчик освещенности?На расстоянии 1 см. и менее от поверхностиПод углом 90° и менее относительно робота
Что такое средняя освещенность и по какой формуле она рассчитывается?Это освещенность на границеIср=(Iсв+Iтем)/2

Перед началом программирования, необходимо провести калибровку сенсора освещенности. После чего, измерить, что показывает сенсор на разных частях карты светлой и темной части карты. Пусть после калибровки, показания сенсора будут 30% на темной стороне и 70% процентов на светлой. 30 %70 %Следовательно, условием, когда можно рассматривать, что робот уже на темной стороне – значение на сенсоре стало меньше 50%.
Для примера мы разберём 3 примера программ для движения по чёрной траектории изображённой на ровном, светлом фоне: Один датчик, с П регулятором. Один датчик, с ПK регулятором. Два датчика.

Пример 1. Один датчик, с П регулятором. КонструкцияДатчик света устанавливается на балку, удобно расположенную на модели. АлгоритмДействие алгоритма основано на том, что в зависимости от степени перекрытия, пучка подсветки датчика чёрной линией, возвращаемые датчиком показания градиентно варьируются. Робот сохраняет положение датчика света на границе чёрной линии. Преобразовывая входные данные от датчика света, система управления формирует значение скорости поворота робота.Так как на реальной траектории датчик формирует значения во всём своём рабочем диапазоне (0-100), то значением к которому стремиться робот, выбрано 50. В этом случае значения передаваемые функции поворота формируются в диапазоне -50 - 50, но этих значений недостаточно для крутого поворота траектории. По этому следует расширить диапазон в полтора раза до -75 - 75. Заголовок слайдаБолее устойчиво алгоритм работает, если использовать моторы с управлением скоростью –100...100. В этом случае есть возможность отрегулировать плавность поворота в соответствии с кривизной линии Так как на реальной траектории датчик формирует значения во всём своём рабочем диапазоне (0-100), то значением к которому стремиться робот, выбрано 50. В этом случае значения передаваемые функции поворота формируются в диапазоне -50 - 50, но этих значений недостаточно для крутого поворота траектории. По этому следует расширить диапазон в полтора раза до -75 - 75. Пример 2. Один датчик, с ПK регулятором. Вы наверно заметили, что в прошлом примере робот излишне раскачивался, что не давало ему достаточно разогнаться. Сейчас мы постараемся немного улучшить эту ситуацию.К нашему пропорциональному регулятору мы добавляем ещё и простой кубический регулятор, который добавит изгиб в функции регулятора. Это позволит уменьшить раскачивание робота рядом нужной границей траектории, а так же совершать более сильные рывки при сильном удалении от неё

Пример 3. Два датчика Заголовок слайда Использование двух датчиков позволяет более чётко разграничить отклонение датчиков от линии и позволяет легко отфильтровывать/подсчитывать перекрёстки или сложные повороты на траектории. Робот крутится на месте, не заезжая на линиюВ этом случае следует либо стартовать с другой стороны линии, либо поменять подключения моторов к контроллеру местами.Робот проскакивает линию, не успевая среагировать.Следует понизить мощность моторов.Робот реагирует на мелкие помехи на белом, не доезжая до черного. Надо увеличить порог чувствитель-ности датчика (например, не на 5, а на 8 пунктов). Вообще говоря, это число можно рассчитать. Для этого следует снять показания датчика на белом, затем на черном, вычесть одно из другого и поделить пополам. Например, (56 – 40) / 2 = 8.Возможные проблемы


Список источниковОвсянницкая Л.Ю. Курс программирования робота Lego Mindstorms EV3 в среде EV3: основные подходы, практические примеры, секреты мастерства. – Челябинск: ИП Мякотин И.В., 2014Вязовов С.М., Калягина О.Ю., Слезин К.А. Соревновательная робтотехника: приемы программирования в среде EV3. – М.: Издательство «Перо», 2014http://robot.edu54.ru/http://pilotlz.ru/robo/