 | Продолжение. Перед чтением этой заметки, рекомендуется ознакомиться с первой частью.
В прошлый раз, было показано как шаг за шагом прийти к самому простому алгоритму движения вдоль линии - линейному: |

Можно напомнить, что при запуске тележки, работающей по этому алгоритму, характер движения будет следующий:

Этот же алгоритм можно записать слегка другим способом. Для этого, вместо каждого блока Wait, будет стоять эквивалентный цикл, оканчивающийся при том же условии, что и блок Wait.

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

Словами этот алгоритм может быть описан следующим образом: повторяем движение одним мотором до пересечения границы черной линии, после чего повторяем движение уже другим мотором до обратного выезда за границу.
Данная реализация алгоритма может быть легко переделана к более узнаваемой форме - релейный регулятор с двумя состояниями:

Следует отметить, что изменилась только запись - сам алгоритм остался тот же, причем сохранились не только основные элементы, отвечающие за операции с моторами, но и, при внимательном просмотре, два цикла из стоящего выше примера, с точкой выхода на границе линии.

Зачем нужна такая форма записи алгоритма? Дело в том, что от нее очень логично перейти к более сложной теме - пропорциональным регуляторам, о которых будет рассказано в следующих частях.
Комментариев нет:
Отправить комментарий