Измеряем максимальную скорость движения робота
Ниже – фото рабочего робота.
Для этого опыта используем код, который написали в предыдущем задании. Удалим из него часть, где робот движется в обратном направлении, и установим время вращения моторов вперед 10 секунд. Можно поставить и меньшее время, если место испытаний ограничено. Пишем код.
Для написания кода может понадобиться короткий словарик основных команд.
Скопируйте текст программы и вставьте его в Arduino IDE. После проверки загрузите код в контроллер Arduino nano. Установите контроллер в блок R-5 и включите питание робота. Блок R-5 – ниже на фото.
Контроллер Arduino сам отсчитает 10 секунд. Установим робота в начальную точку, а также измерим линейкой или рулеткой путь робота, пройденный за 10 секунд.
Внимание! На блоке R-5 есть переключатель N – H. Этот переключатель подаёт напряжение питания электромоторов. В положении N напряжение питания электромоторов подается со стабилизатора 5 Вольт. В этом положении скорость робота не очень высокая, но стабильная, она не зависит от уровня разряда батареи. Поэтому всё измерение скорости будет достаточно точным и стабильным во времени. В положении H напряжение питания подаётся непосредственно с батареи, и если установлены свежие и качественные батареи, то напряжение составит 6 х 1,5 = 9 Вольт. В этом случае скорость робота будет выше. Но со временем, из-за уменьшения заряда батареи, скорость робота будет уменьшаться.
Максимальная скорость движения робота
В нашем опыте пока не важна стабильность измерений скорости. Нам важнее измерить максимально возможную скорость движения робота. Поэтому измерение проведем, установив переключатель в положение H.
За 10 секунд наш робот проехал примерно 2,5 метров. Скорость робота составила 0,25 м/с. Пересчитаем скорость в километры и часы. Умножаем пройденный путь и время на 3600 (1 час= 60*60=3600 сек.) и делим на 1000 (1 км=1000 метров) получаем скорость 0,9 км/ч.
Энкодерные модели
Известно, что энкодер – это датчик, который измеряет угол поворота вала мотора. В будущем, когда робот будет ездить не по времени, то потребуется знание такого параметра, как количество оборотов колеса в секунду. Зная скорость робота, количество оборотов в минуту, мы можем прокладывать путь робота по заданному параметру рассчитывать траекторию движения, места остановок и поворотов.
Чтобы вычислить этот параметр, нам необходимо рассчитать длину окружности колеса. У нашего конкретного робота диаметр колеса составляет 42 мм.
Формула длины окружности колеса робота:
L= πD, где число π = 3,14; D – диаметр колеса.
Подставляем значения и получаем, что L= 3,14 x 42= 132 мм. Получаем, что длина окружности колеса составляет 132 мм.
Умножаем 2,5 метра, пройденных роботом за 10 секунд, на 6 (в минуте 60 секунд). Затем делим на длину окружности колеса: 2500*6/132 = 113,67 или примерно 114 об/мин.
Также нам может пригодиться такой параметр, как время, за которое колесо сделает один оборот.
Скорость вращения колес – 114 об/мин.
Длина окружности колеса – 132 мм.
Время, за которое колесо сделает один оборот (робот проедет 132 мм) – 120 миллисекунд.
В итоге, зная эти характеристики движения нашего робота, мы сможем проектировать различные маршруты движения, например, движение по квадрату или восьмеркой. Файл загрузки Arduino IDE здесь, сравните с тем что получилось у вас.