Лабораторная работа 2. Использование датчиков, моторов, повороты, движение по линии.

Задание

Для выполнения задания следует использовать библиотеку RubiRobotLib, робота с двумя датчиками света/цвета для движения по линии, одним впередсмотрящим датчиком расстояния и датчиком-кнопкой, а также полигон с произвольной конфигурацией черных линий. Разработать и проверить функции:
  1. Поворот на N градусов вокруг оси по часовой стрелке (при N<0 - против часовой) со скоростью S. Остановка - с блокировкой моторов и компенсацией инерции. Компенсация зависит от заданной скорости, материала полигона и должна быть вычислена эмпирически. Повороты от -720 до 720 градусов с шагом 45 градусов.
  2. Поворот на N градусов вокруг заданного колеса по часовой стрелке (при N<0 - против часовой) со скоростью S. Остановка - с блокировкой моторов и компенсацией инерции. Компенсация зависит от заданной скорости, материала полигона и должна быть вычислена эмпирически. Повороты от -720 до 720 градусов с шагом 45 градусов.
  3. Движение по черной линии со скоростью S, с приостановкой, пока расстояние до препятствия менее 20 сантиметров и возобновлением движения по исчезновению препятствия, с окончательной остановкой по нажатию на датчик-кнопку, либо по преодолению расстояния P в сантиметрах. Примеры движения по линии на базе RubiRobotLib доступны в программе examples/mot2.pp и в статье по адресу https://shgpi.edu.ru/forum/viewtopic.php?t=1772
  4. Движение по черной линии со скоростью S, с остановкой на N-м перекрестке, с выравниванием робота на перекрестке.