Условно, все алгоритмы движения по черной линии можно разделить на две группы:
- Движение с “вилянием”.
- Плавное движение.
Нельзя сказать что какой-то из них однозначно лучше. В различных ситуациях возможно применение каждого из них.
При подготовке к FLL 2013, я понял, что для выполнения задания с аптечкой необходим плавный алгоритм. Именно о нем я и расскажу.
И в первой части мы поговорим о конструировании.
Плавность движения будет зависеть не только от алгоритма, но и от конструкции робота.
Заднее колесо.
Часто за основу берется “классическая NXT-модель”: два ведущих колеса спереди и одно поворотное колесо сзади, например, вот так:
С такой конструкцией робот никогда плавно не поедет. И дело даже не в том, что колесо расположено не по центру. При любом изменении направления движения заднее колесо тоже поворачивается, но делает это с опозданием. Фактически, передняя часть робота уже начинает поворачивать в одну сторону, а задняя еще движется в другую.
Поэтому в качестве заднего колеса я бы рекоммендовал использовать совсем даже не колесо, а следующую конструкцию:
В качестве деталей, соприкасающихся с поверхностью, взяты пластинки 2х2 идущие под номером 2654.
Найти такие детали можно либо в ресурсном наборе NXT, либо в наборах от RCX.
Достоинства конструкции:
- Точка касания с поверхностью мала, что уменьшает трение;
- Нет выделенного направления движения, т.е. при движении в любую сторону конструкция ведет себя одинаково;
- Использование двух точек касания делает конструкцию более устойчивой.
Центр тяжести конструкции.
Условно, центром тяжести конструкции можно назвать точку, за которую можно держать робота, и он будет в равновесии. Чем ниже находится центр тяжести, тем устойчивее будет робот.
Самыми тяжелыми частями робота являются моторы и аккумулятор блока NXT. Поэтому, чем ниже расположены эти части, тем лучше.
Колесная база.
Колесная база – расстояние между ведущими колесами. Понятно, что чем меньше колесная база, тем более крутые повороты сможет проходить робот (если не брать в расчет возможность вращения двигателей в обратную сторону).
Подробнее об этом написал Александр Колотов.
Расположение датчика освещенности.
От положения датчика относительно колес тоже зависит очень многое. Например, если датчик расположить на одной линии с моторами и использовать простой релейный алгоритм движения по черной линии, то робот будет просто вилять на месте.
Подробно о влиянии позиции датчика освещенности тоже рассказал Александр Колотов, поэтому останавливаться на этом вопросе не буду.
Итог.
Как видно, алгоритм – далеко не все, от чего зависит движение по черной линии. Учет конструкции робота не менее важен для достижения быстрого и плавного движения.
При написании статьи использовались материалы сайтов