Ghost

ROB-42326

Соколов Валерий Константинович, учусь в Муниципальном автономном общеобразовательном учреждении “Средняя общеобразовательная школа №5” г. Усть - Катава Челябинской области. Я хочу участвовать в интеллектуальном сумо. Базовое поведение робота в "Сумо" очень похоже на поведение робота в "Кегельринге". Роботу также необходимо найти внутри поля объект и вытолкать его за пределы круга. Различия, как водится, кроятся в деталях: теперь этот объект в свою очередь ищет нашего робота и тоже жаждет вытолкать его поскорее. Тем не менее - сосредоточимся на своей цели: искать соперника нам по-прежнему будет помогать один из датчиков, способных определять предметы на расстоянии (инфракрасный или ультразвуковой), а своевременно определять черную границу поля будем с помощью датчика цвета. Поэтому для создания и отладки программы робота-сумоиста предлагаем вам использовать того же самого робота, которого мы подготовили для 

Для того, чтобы защитить впереди расположенный датчик от взаимодействия с соперником, соорудим бампер и закрепим его на нашем роботе. Ниже приведены подробные инструкции для сборки, как из домашней, так и из образовательной версии конструктора Lego mindstorms EV3. Можете поэкспериментировать и придумать собственный вариант конструкции. Наш учебный робот готов. Приступим к созданию программы робота-сумоиста. Замечательно, если у вас есть возможность отлаживать программу, используя ещё одного робота! Если же нет, то ничего страшного: можно задействовать в качестве соперника, например, радиоуправляемую модель автомобиля или те же кегли от "Кегельринга". Первая мысль, которая приходит в голову: использовать программу для "Кегельринга", внеся в неё косметические изменения. Действительно, алгоритмы поведения робота в "Кегельринге" и в "Сумо" очень похожи. Они реализуют поиск объекта и выталкивание его за пределы поля. Можно загрузить в робота-сумоиста программу для "Кегельринга", но работать такой сумоист будет не очень эффективно. Тем не менее, знания, полученные на предыдущем уроке, пригодятся нам сейчас.

Настало время загрузить в среду программирования наш проект "lessons-2", создать в нём новую программу "lesson-12" и подключить робота к среде программирования.

Поведенческую модель робота-сумоиста можно условно разделить на две части: поиск соперника и атака соперника. Сначала займемся реализацией первой части - поиска соперника.

Подробно пропишем последовательность действий нашего робота при обнаружении соперника на поле:

  1. вращаться вокруг своей оси, пока впереди расположенный датчик не обнаружит соперника;
  2. остановиться напротив соперника.

Эта последовательность действий полностью повторяет алгоритм поиска роботом кегли в "Кегельринге", но, так как, расстояние между роботами в "Сумо" может превышать расстояние от робота до кегли, то нам необходимо выбрать другое пороговое значение для используемого датчика.Для этого я собрал робота с использованием Lego Mindstorms EV3. Это мое первое соревнование по легоконструированию. Хотелось бы хорошо выступить.