Не-алгоритмы: черно-белое движение. Часть IX Следы NiNoXT в Галактике / 20.02.2013 Название этой заметки специально не похоже на название статей из цикла "Алгоритмы: черно-белое движение", потому что в ней не будет ни слова о программах. И хотя речь все еще пойдет о движении робота-тележки вдоль черной линии, рассматриваться здесь будут вопросы конструирования - в частности, вопросы выбора ширины колесной базы и размещения датчика освещенности применительно к данной задаче.Для простоты изучения сути вопроса, будет рассматриваться обычная двухколесная тележка с датчиком освещенности впереди. И, для начала, необходимо рассмотреть, какие траектории движения может описывать тележка при разной скорости вращения колес.Пусть сначала правое колесо стоит, а левое вращается. Тогда траекторией (синяя пунктирная линия) тележки будет окружность с центром в точке соприкосновения правого колеса с полем.Если теперь правое колесо начнет двигаться, то траектория изменится, но все так же останется окружностью - только большего радиуса.Движение в левую сторону даст аналогичные окружности:Общее правило при этом такое - чем сильнее скорости вращения колес стремятся сравняться друг с другом, тем больший радиус будет описывать тележка.Поэтому, когда оба колеса будут вращаться с одинаковой скоростью, движение выродится в прямую линию.Если рассмотреть движение роботом по линии, то в каждый момент времени он описывает дугу определенного радиуса, просто из-за краткосрочности движения в определенном направлении - дуга очень короткая.Очевидно, что при движении робота по каждой дуге, датчик освещенности закрепленный на тележке, также будет описывать дугу.Тогда первое следствие, которое можно выделить после данных рассуждений, что дуга минимального радиуса, описываемая датчиком освещенности, будет при одном неподвижном колесе (движение одним колесом в обратном направлении пока не рассматривается).Также можно утверждать, что дуга меньшего радиуса будет у робота с более узкой колесной базой.Это свойство можно использовать, когда конструируется робот для прохождения трассы определенной конфигурации. Ибо колесная база будет определять минимальный радиус кривизны трассы, которую робот сможет проехать и не вылететь с нее.Например, на данной схеме видно, что даже если робот полностью остановит свое правое колесо, минимальный радиус поворота переместит его датчик на левую сторону линии, в то время как робот ожидает ее правую границу. Это приведет к тому, что после завершения поворота робот будет продолжать поворот влево в поисках правой границы линии - это будет отдалять его от линии еще дальше и приведет к вылету с трассы.Робот с более узкой колесной базой на этом же самом участке трассы находится в более выигрышной ситуации - при крутом повороте (правое колесо полностью остановлено) его датчик всегда находится с правой стороны от линии, что позволяет ему без проблем продолжить движение после поворота.Сформулируем первое правило конструкции робота-тележки при движении вдоль линии: чем круче повороты на трассе, тем меньше должен быть радиус поворота механизма, тем уже должна быть колесная база робота.Конечно же, можно попытаться решить проблему программно введя в регулятор вращение колес в обратную сторону при критических показаниях датчика освещенности, но это, безусловно, скажется на максимальной скорости движения робота. конструирование обучение робототехника