Алгоритм движения робота вдоль линии является базовым алгоритмом при изучении робототехники, потому что отражает суть программирования роботов: робот выполняет основную задачу (движение), меняя свое поведение в зависимости от изменений окружающих условий (черные и белые области). Поэтому задачи, основанные на движении вдоль линии, наиболее часто встречаются на всевозможных робототехнических состязаниях и олимпиадах
Секция: Информатика
Алгоритм следования
LEGOробота по черно
белой полосе
Сведения об авторе (авторах):
Шурнеев Кирилл Петрович,
Моргаушская СОШ 8 класс
Грачев Олег Вячеславович,
Моргаушская СОШ 8 класс
Научный руководитель:
Волков Олег Константинович,
учитель информатики Моргаушская СОШ
Цель: воспитание у детей
современного инженерного
мышления
Задачи:
1) вовлечение детей и молодежи в
научнотехническое творчество
2) обеспечение раннего доступа к
современным технологиям
3) написать алгоритм плавное движение
робота по чернобелой полосе
Актуализация
Алгоритм движения робота вдоль линии является
базовым алгоритмом при изучении робототехники,
потому что отражает суть программирования роботов:
робот выполняет основную задачу (движение), меняя
свое поведение в зависимости от изменений
окружающих условий (черные и белые области).
Поэтому задачи, основанные на движении вдоль
линии, наиболее часто встречаются на всевозможных
робототехнических состязаниях и олимпиадах.
Введение
Программа по Робототехнике предполагает непрерывное
практическое образование детей в сфере высоких
технологий. В ее рамках создаются региональные
ресурсные центры, которые обеспечиваются базовым
робототехническим конструктором, учебнометодическими
материалами, консультациями, преподавательским
составом, регулярно ведется обучение педагогов
организации работы робототехнических кружков и
проведению робототехнических соревнований на
федеральных и региональных учебнотренировочных
сборах.
Условие задания
Поле состоит из двух частей: темной и светлой и
роботу нужно добраться от одного края до другого
за минимальное время
Датчик освещенности
количество света преобразуется
в цифровое значение и
передается в программу. Чем
темнее поверхность, тем меньше
света приходит – в программу
приходят маленькие значения;
чем светлее поверхность, тем
больше света приходит –
программа оперирует с
большими значениями.
Первая программа
Наше поле состоит из двух частей: темной и светлой и
роботу нужно добраться от одного края до другого,
совершая движения "ёлочкой".
Анализ первой программы
Робот, двигающийся вдоль линии, по алгоритму,
рассмотренному выше, не может похвастаться особой
скоростью. Явно это видно на прямых участках, где
тележка, вместо того, чтобы ехать вперед двумя
колесам, все равно совершает постоянный поиск
границы линии двигаясь, то одним, то другим колесом
Время прохождения робота – 40 секунд
Вторая программа
если бы в алгоритм добавить движение прямо при
определенных условиях, то общая скорость движения
значительно бы возросла
Анализ второй программы
очевидно, что после добавления в алгоритм движение
прямо мы значительно увеличили скорость движения,
но в то же время робот всё равно двигается по черно
белой полосе «зигзагами». Т.е. мы пока не решили
проблему плавного движения.
Время прохождения робота – 18 секунд
Третья программа
Можно продолжить улучшение и разбить каждый из
поворотов на два в первом случае робот двигается
только одним колесом, а другое стоит; во втором
случае оба колеса двигаются, но только скорость
одного выше скорости другого.
Таким образом, диапазон всех возможных показаний
сенсора разбивается теперь не на три, как в прошлый
раз, а на пять участков.
5 участков показаний
сенсора
7 участков показаний
сенсора
Алгоритм плавного движения
И так можно продолжать довольно долго разбивать
диапазон все на более мелкие участки: на 9, 11, 13 и т.п.
Во всех этих случаях будет наблюдаться следующая
тенденция: на одном из моторов мощность будет расти
с увеличением показаний на световом сенсоре, в то
время, как на другом моторе мощность будет
уменьшаться
Пример
Пусть освещенность датчика (меняется в процессе
движения робота) равна L=45, а среднее значение
датчика (идеальное) LA =50
Тогда мощность мотора В:
PB=50+5, а мощность
мотора С: Pс=505
Формулы для алгоритма
движения робота
В итоге получаются следующие формулы, которые
позволяют в математической форме записать
отношение между освещенностью и мощностью на
моторах тележки:
PB=50+(LAL), Pс= 50+(LAL)
Составим таблицу
L
45
30
20
55
70
80
LAL
5
20
30
5
20
30
Мощность
мотора B
Мощность
мотора C
55
70
80
45
30
20
45
30
20
55
70
80
Наша программа
Время прохождения робота – 12 секунд
Время прохождение робота
Первая
программа
40
Вторая
программа
18
Третья
программа
12
Вывод
В нашем робототехническом кружке при Моргаушской
школе занимается более 20 детей и у нас 6
комплектов для сборки LEGOроботов. Наш робот
движется с высокой скоростью и плавно
перемещается по чернобелой полосе.
Наши результаты
1 место на Районных командных соревнованиях по
робототехнике
1 место на Республиканских командных
соревнованиях по робототехнике в г. Чебоксары
5 место на Всероссийском фестивале
робототехнике «Робофест 2015» в г. Москве