Алгоритм движения по линии
Для реализации алгоритма движения по линии с пропорционально-дифференциальным регулятором, используя видеомодуль «Глаз», необходимо присоединить этот модуль так, чтобы сам модуль смотрел на поверхность движения перед роботизированной системой. Далее включить видеокамеру в режиме сенсора линии и с его помощью записывать отклонение от центра линии в переменную [16]. В зависимости от отклонения от центра, необходимо регулировать мощность силовых моторов пропорционально отклонению, т. е. чем больше отклонение, тем меньше скорость моторов и тем больше разность между скоростью правой и левой парой моторов. Это является пропорционально-дифференциальным регулятором (ПД-регулятор). ПД-регулятор — это параллельно соединенные пропорциональное и идеальное дифференцирующее звено [17]. Выходной сигнал ПД-регулятора зависит от ошибки регулирования и от скорости изменения ошибки.
Алгоритм обнаружения препятствий
Для реализации алгоритма обнаружения препятствий с помощью ультразвукового датчика и последующим использованием расчетов для определения препятствий, мешающих дальнейшему движению, необходимо подключить сам датчик к порту D1 и снимать с него показания расстояния до найденного препятствия. Работа программы заключается в том, чтобы посылать стоп сигнал на силовые моторы, когда расстояние будет равно половине корпуса роботизированной системы. Проблема заключается в том, что край корпуса роботизированной системы может столкнуться с препятствием из-за маленького угла измерения ультразвукового датчика [18]. Если препятствие находится так, что край роботизированной системы наезжает на это преграда, но угол измерения ультразвукового модуля не способен детектировать расстояние до объекта на всем протяжении движения, то при приближении робота к объекту, сенсор может потерять его из виду до минимального расстояния в половину корпуса и врезаться в объект. С помощью тригонометрической формулы можно рассчитать расстояние, при котором роботизированная система при вышеуказанных условиях столкнется с препятствием.
где X — двойное расстояние между препятствием и серединой роботизированной системы; D — расстояние до препятствия.
При условии, что X больше чем ширина роботизированной системы, она проедет, не задев препятствие.