Блоки управления моторами
Для одновременного управления двумя моторами Lego EV3 в зеленой палитре блоков программирования существует два блока:
Блок «Рулевое управление»
Блок «Независимое управление моторами»
Блок рулевого управления третий слева в блоках «Действия» палитры блоков EV3. Блок независимого управления четвертый по счету. Режимы управления у блоков одинаковые. Всего есть пять режимов работы:
- Выключить
- Включить
- Включить на количество секунд
- Включить на количество градусов
- Включить на количество оборотов
Эти пять режимов аналогичны режимам работы среднего и большого мотора и подробно описаны в статьях «Большой мотор EV3» и «Средний мотор EV3», поэтому останавливаться на режимах работы и режимах остановки не имеет смысла.
Блок программирования «Рулевое управление»
При помощи блока «Рулевое управление» робот может двигаться вперед, назад, по траектории, останавливаться. При рулевом управлении моторы могут передвигаться со скоростями от – 100 условных единиц до 100 условных единиц. Это позволяет моторам вращаться в разных направлениях.
Есть два входных параметра для управления блоком – мощность и рулевое управление.
Эти значения можно указывать непосредственно на блоке. Также можно задавать значения при помощи проводников. Такое управление часто используется для соревнований автономных роботов.
Максимальную скорость моторов можно задать любую. Значения рулевого управления, т.е. повороты, задаются ползунком. На рисунке приведен пример, где скорость или мощность равна 50 условных единиц, а значение рулевое управление установлено 20 условных единиц.
Это значит, что максимальная скорость левого мотора будет 50, а правого меньше. При таких заданных значениях робот совершает правый поворот. Если изменять положение ползунка, то будет изменяться вид стрелки и значение рулевого управления. Можно сказать, что блок «Рулевое управление» напоминает рулевое управление обычных автомобилей.
Отличие заключается в том, что в обычном автомобиле поворот осуществляется за счет поворота колес при одинаковой скорости ведущих колес, а у роботизированной платформы поворот происходит за счет разной скорости моторов.
Недостатком такого управления является трудность вычисления угла поворота. Поэтому часто значение рулевого управления подбирается опытным путем.
Блок программирования «Независимое управление»
В этом блоке реализована возможность одновременного управления двух моторов с одинаковой скоростью или различными скоростями. Выбор порта для моторов происходит, если щелкнуть по букве в верхней части блока.
Входные параметры блока «Независимое управление» это мощность левого и правого мотора. Их значения можно задавать также вручную или при помощи проводников. Поворот осуществляется за счет разности скоростей моторов.
Если у нас левый мотор подключен к порту В, а правый к порту С, то при значениях В = 100 и С = -100 происходит разворот на месте в правую сторону с максимальной скоростью. При В = 100 и С = 0 робот поворачивается вокруг правого неподвижного колеса. При В = 100 и 0 < С < 100 происходит движение роботизированной тележки по дуге.
При помощи этого блока можно легко задавать траектории движения и точно вычислять радиусы разворотов. Блок «Независимое управление» моторами очень похож на управление танком, трактором или любой другой техникой где повороты осуществляются за счет разных скоростей левых и правых гусениц или колес.