Победитель

ROB-69094

Моя команда называется Победитель. Я стремлюсь к победе. При создании робота я использовал набор лего Mindstorms EV3. Блок от EV3, двигатели от NXT. Два датчика цвета. Это позволит лучше двигаться по черной линии и не слетать с нее. Но пришлось использовать двигатели от NXT. Но все равно главное проехать надо по черной линии. При программировании робота я использовал среду программирования для EV3.   Рассмотрим простейший алгоритм движения по черной линии на одном датчике цвета на EV3.

Данный алгоритм является самым медленным, но самым стабильным.

Робот будет двигаться не строго по черной линии, а по ее границе, подворачивая то влево, то вправо и постепенно перемещаясь вперед.

Алгоритм очень простой: если датчик видит черный цвет, то робот поворачивает в одну сторону, если белый — в другую.

В обоих блоках движения выбираем режим «включить». Переключатель настраиваем на датчик цвета — измерение — цвет. В нижней части не забудьте изменить «нет цвета» на белый.

Также, необходимо правильно указать все порты.Действие алгоритма основано на том, что в зависимости от степени перекрытия, пучка подсветки датчика чёрной линией, возвращаемые датчиком показания градиентно варьируются. Робот сохраняет положение датчика света на границе чёрной линии. Преобразовывая входные данные от датчика света, система управления формирует значение скорости поворота робота.

Так как на реальной траектории датчик формирует значения во всём своём рабочем диапазоне (0-100), то значением к которому стремиться робот, выбрано 50. В этом случае значения передаваемые функции поворота формируются в диапазоне -50 - 50, но этих значений недостаточно для крутого поворота траектории. По этому следует расширить диапазон в полтора раза до -75 - 75. Более устойчиво алгоритм работает, если использовать моторы с управлением скоростью –100...100.

В этом случае есть возможность отрегулировать плавность поворота в соответствии с кривизной линии

Так как на реальной траектории датчик формирует значения во всём своём рабочем диапазоне (0-100), то значением к которому стремиться робот, выбрано 50. В этом случае значения передаваемые функции поворота формируются в диапазоне -50 - 50, но этих значений недостаточно для крутого поворота траектории. По этому следует расширить диапазон в полтора раза до -75 - 75. 

Движение с двумя датчиками:

Вы уже знаете алгоритм движения робота по черной линии с использованием одного датчика. Сегодня рассмотрим движение по линии с использованием двух датчиков цвета.

Датчики нужно установить таким образом, чтобы черная линия проходила между ними.

Алгоритм будет следующий:

• Если оба датчика видят белый цвет – двигаемся вперед;

• Если один из датчиков видит белый, а другой черный – поворачиваем в сторону черного;

• Если оба датчика видят черный цвет – мы на перекрестке (например, остановимся).

Реализация в среде Lego Mindstorms EV3

Если робот заехал левым датчиком на чёрную линию, то он сворачивает (съезжает с линии) налево.

Если робот заехал правым датчиком на чёрную линию, то он поворачивает направо.

Если обоими датчиками робот видит белое поле, то он едет вперёд.

Если обоими датчиками робот видит чёрную линию, то это перекрёсток, он едет вперёд и съезжает с перекрёстка.

Для реализации алгоритма нам потребуется отслеживать показания обоих датчиков, и только после этого задавать движение роботу. Для этого будем использовать переключатели, вложенные в другой переключатель. Таким образом, мы опросим сначала первый датчик, а потом, независимо от показаний первого, опросим второй датчик, после чего зададим действие. Я живу в городе Усть - Катав. Учусь в МАОУ СОШ №5. Занимаюсь лего уже два года. Участвовал несколько раз в соревнованиях.