Motor Module
First Motor Assembly
Second Motor Assembly
Build a second motor assembly as a mirror image of the first.
Rear Skid Assembly
Bumper Assembly
First Bumper Assembly
Second Bumper Assembly
Build a second front bumper as a mirror image of the first.
Touch Sensor Module
Second Touch Sensor
Build a second touch sensor module as a mirror image of the first.
Light Sensor Module
Complete Assembly
Connect the left touch sensor to port 1 and the right touch sensor to port 2.
Note that the wires cross underneath the EV3 brick.
Connect the left motor to port C and the right motor to port B.
Congratulations
You have completed your EV3 sumo robot.
Введение:
Урок №12 курса «Практика» представляет разбор решения, наверное, самого популярного соревнования роботов — «Сумо». Главная задача робота-сумоиста состоит в том, чтобы вытолкнуть за пределы ринга своего соперника. Существует множество вариантов правил проведения этого состязания, накладывающих различные ограничения в первую очередь на размеры и конструкцию роботов, тем не менее, базовые алгоритмы поведения робота при этом очень похожи. Поэтому наш урок в значительной степени будет направлен на реализацию программы поведения, а в завершающей части урока рассмотрим некоторые советы по практической подготовке к соревнованию роботов.
12.1. Поле для проведения соревнования. Правила соревнования.
Не смотря на то, что соревновательная дисциплина «Сумо» большинством организаторов соревнований позиционируется как состязание, предназначенное для начинающих робототехников, она пользуется неизменным вниманием не только участников, но и зрителей! Соревнования проводятся на двух видах полей: либо белый круг, ограниченный черной окружностью, либо, наоборот, черный круг, ограниченный белой окружностью. Очень часто макет поля наносится на круглый подиум небольшой высоты. В этом случае побежденный робот принуждается к падению (бывает, что с подиума падают оба участника битвы).
Для нашего урока мы возьмем то же самое поле, которое использовали при разборе Урока №11 — «Кегельринг». Это поле представляет собой белый круг, ограниченный черной окружностью. С классическими правилами проведения соревнования «Сумо» по версии Российской ассоциации образовательной робототехники вы можете ознакомиться под спойлером ниже:
Регламент соревнований роботов «Сумо» по версии сайта RAOR.RU
Ссылка на страницу с правилами на сайте RAOR.RU
1. Общие правила
1.1. Робот должен вытолкнуть робота-соперника за черную линию (За пределы поля).
1.2. После начала состязания роботы должны двигаться по направлению друг к другу до столкновения.
1.3. После столкновения роботы должны пытаться контактировать друг с другом.
1.4. Во время проведения состязания участники команд не должны касаться роботов.
1.5. Два автономных робота выставляются на ринг (круглое поле). Роботы пытаются вытолкнуть соперника за пределы ринга.
1.6. Робот, выигравший большее количество раундов, выигрывает матч.
1.7. При игре «каждый с каждым», лучшим считается робот выигравший большее количество матчей.
1.8. При большом количестве участников можно организовывать ранжирование по «олимпийской системе» (на вылет).
2. Робот
2.1. Роботы должны быть построены с использованием только деталей конструкторов ЛЕГО Перворобот (LEGO-Mindstorms)
2.2. Во время всего раунда:
Размер робота не должен превышать 25х25х25см.
Вес робота не должен превышать 1кг.
2.3. Робот, по мнению судий, намерено повреждающий других роботов, или как-либо повреждающий покрытие поля, будет дисквалифицирован на всё время состязаний.
2.4. В конструкции робота строго запрещено использовать:
Клеящие вещества.
2.5. Перед матчем роботы проверяются на габариты и вес.
2.6. Робот может иметь множество программ, из которых оператор может выбирать каждый раунд.
2.7. Между матчами разрешено изменять конструкцию и программы роботов.
3. Поле
3.1. Белый круг диаметром 1 м с чёрной каёмкой толщиной в 5 см.
3.2. В круге, красными полосками отмечены стартовые зоны роботов.
3.3. Красной точкой отмечен центр круга.
3.4. Поле размещено на подиуме высотой 16 мм.
4. Проведение Соревнований
4.1. Соревнования состоят из серии матчей. Матч определяет, из двух участвующих в нём роботов, наиболее сильного. Матч состоит из 3 раундов по 30 секунд. Матч выигрывает робот выигравший большее количество раундов. Судья может использовать дополнительный раунд для разъяснения спорных ситуаций.
4.2. Раунды проводятся подряд.
4.3. В начале раунда роботы выставляются за красными полосами (от центра ринга) в своих стартовых зонах, все касающиеся поля части робота должны находиться внутри стартовой зоны.
4.4. По команде судьи отдаётся сигнал на запуск роботов, при этом операторы роботов должны запустить программу на роботах и отойти от поля более чем на 1 метр в течение 5 секунд. За эти же 5 секунд роботы должны проехать по прямой и столкнуться друг с другом.
4.5. Для начинающих: После столкновения роботы не могут маневрировать по рингу.
4.6. Для опытных: После столкновения роботы могут маневрировать по рингу как угодно.
4.7. Если роботы не сталкиваются в течение 5 секунд после начала раунда, то робот из-за которого, по мнению судьи, не происходит столкновения, считается проигравшим в раунде. Если роботы едут по прямой и не успевают столкнуться за 5 секунд, то робот, находящийся ближе к своей стартовой зоне, считается проигравшим в раунде.
5. Правила отбора победителя
5.1. Если робот не двигается, не находясь в контакте с другим роботом, больше 10 сек, то он считается проигравшим в раунде.
5.2. При касании любой части робота (даже не присоединённой к роботу) за пределы чёрной каёмки, роботу засчитывается проигрыш в раунде.
5.3. Если по окончании раунда ни один робот не будет вытолкнут за пределы круга, то выигравшим раунд считается робот, находящийся ближе всего к центру круга.
5.4. Если победитель не может быть определен способами, описанными выше, решение о победе или переигровке принимает судья состязания.
6. Судейство
6.1. Организаторы оставляют за собой право вносить в правила состязаний любые изменения, если эти изменения не дают преимуществ одной из команд.
6.2. Контроль и подведение итогов осуществляется судейской коллегией в соответствии с приведенными правилами.
6.3. Судьи обладают всеми полномочиями на протяжении всех состязаний; все участники должны подчиняться их решениям.
6.4. Если появляются какие-то возражения относительно судейства, команда имеет право в устном порядке обжаловать решение судей в Оргкомитете не позднее окончания текущего раунда.
6.5. Переигровка может быть проведена по решению судей в случае, когда робот не смог закончить этап из-за постороннего вмешательства, либо когда неисправность возникла по причине плохого состояния игрового поля, либо из-за ошибки, допущенной судейской коллегий.
6.6. Члены команды и руководитель не должны вмешиваться в действия робота своей команды или робота соперника ни физически, ни на расстоянии. Вмешательство ведет к немедленной дисквалификации.
6.7. Судья может закончить состязание по собственному усмотрению, если робот не сможет продолжить движение в течение 10 секунд.
12.2. Конструкция робота для соревнования «Сумо».
Базовое поведение робота в «Сумо» очень похоже на поведение робота в «Кегельринге». Роботу также необходимо найти внутри поля объект и вытолкать его за пределы круга. Различия, как водится, кроятся в деталях: теперь этот объект в свою очередь ищет нашего робота и тоже жаждет вытолкать его поскорее.
Тем не менее — сосредоточимся на своей цели: искать соперника нам по-прежнему будет помогать один из датчиков, способных определять предметы на расстоянии (инфракрасный или ультразвуковой), а своевременно определять черную границу поля будем с помощью датчика цвета. Поэтому для создания и отладки программы робота-сумоиста предлагаем вам использовать того же самого робота, которого мы подготовили для Урока №11 — Кегельринг.
Для того, чтобы защитить впереди расположенный датчик от взаимодействия с соперником, соорудим бампер и закрепим его на нашем роботе. Ниже приведены подробные инструкции для сборки, как из домашней, так и из образовательной версии конструктора Lego mindstorms EV3. Можете поэкспериментировать и придумать собственный вариант конструкции.
Lego mindstorms EV3 Home
Lego mindstorms EV3 Education
Получившийся элемент закрепим на передней балке нашего робота.
Lego mindstorms EV3 Home
Lego mindstorms EV3 Education
Наш учебный робот готов. Приступим к созданию программы робота-сумоиста. Замечательно, если у вас есть возможность отлаживать программу, используя ещё одного робота! Если же нет, то ничего страшного: можно задействовать в качестве соперника, например, радиоуправляемую модель автомобиля или те же кегли от «Кегельринга».
12.3. Создание программы для соревнования «Сумо».
Первая мысль, которая приходит в голову: использовать программу для «Кегельринга», внеся в неё косметические изменения. Действительно, алгоритмы поведения робота в «Кегельринге» и в «Сумо» очень похожи. Они реализуют поиск объекта и выталкивание его за пределы поля. Можно загрузить в робота-сумоиста программу для «Кегельринга», но работать такой сумоист будет не очень эффективно. Тем не менее, знания, полученные на предыдущем уроке, пригодятся нам сейчас.
Настало время загрузить в среду программирования наш проект «lessons-2», создать в нём новую программу «lesson-12» и подключить робота к среде программирования.
Поведенческую модель робота-сумоиста можно условно разделить на две части: поиск соперника и атака соперника. Сначала займемся реализацией первой части — поиска соперника.
Подробно пропишем последовательность действий нашего робота при обнаружении соперника на поле:
- вращаться вокруг своей оси, пока впереди расположенный датчик не обнаружит соперника;
- остановиться напротив соперника.
Эта последовательность действий полностью повторяет алгоритм поиска роботом кегли в «Кегельринге», но, так как, расстояние между роботами в «Сумо» может превышать расстояние от робота до кегли, то нам необходимо выбрать другое пороговое значение для используемого датчика.
Установим соперников на поле напротив друг друга, как показано на рисунке ниже.
Такое положение практически соответствует максимальному удалению роботов друг от друга во время состязания, поэтому текущее показание датчика, измеряющего расстояние до соперника можно взять за пороговое. Важно: так как пороговое значение будет достаточно большим — необходимо чтобы за пределами поля на расстоянии около 1 м. во время работы робота также отсутствовали посторонние предметы, способные помешать поиску.
На «Странице аппаратных средств», находящейся в правом нижнем углу среды программирования, выберем вкладку «Представление порта» (Рис. 1, 2 поз. 1) и снимем показание датчика, определяющего расстояние до соперника, установив соответствующий режим отображения показаний.
В нашем случае ультразвуковой датчик в режиме «Расстояние в сантиметрах» показывает значение — 56,1 (Рис. 1 поз. 2). За пороговое значение примем число — 57.
Рис. 1
Инфракрасный датчик в режиме «Приближение» показывает значение — 68 (Рис. 2 поз. 2). За пороговое значение примем число — 70.
Рис. 2
По аналогии с «Кегельрингом» мы можем запрограммировать нахождение роботом соперника, только, чтобы немного дистанцироваться от предыдущего урока, изменим направление вращения робота на противоположное:
Ультразвуковой датчик
- Для того, чтобы заставить робота вращаться вокруг своей оси, воспользуемся программным блоком «Независимое управление моторами» «Зеленой палитры», Режим работы блока установим «Включить», значение мощности для порта «B» установим равным -30, значение мощности для порта «C» установим равным 30 (Рис. 3 поз.1).
- Для поиска соперника используем программный блок «Ожидание» «Оранжевой палитры» в режиме «Ультразвуковой датчик — Сравнение — Расстояние в сантиметрах» с пороговым значением срабатывания датчика, равным 57 (Рис. 3 поз. 2).
- После того, как робот окажется напротив соперника, используя программный блок «Независимое управление моторами» «Зеленой палитры» выключим моторы (Рис. 3 поз. 3).
Рис. 3
Инфракрасный датчик
- Для того, чтобы заставить робота вращаться вокруг своей оси, воспользуемся программным блоком «Независимое управление моторами» «Зеленой палитры», Режим работы блока установим «Включить», значение мощности для порта «B» установим равным -30, значение мощности для порта «C» установим равным 30 (Рис. 4 поз.1).
- Для поиска соперника воспользуемся программным блоком «Ожидание» «Оранжевой палитры» в режиме «Инфракрасный датчик — Сравнение — Приближение», с пороговым значением срабатывания датчика, равным 70 (Рис. 4 поз. 2).
- После того, как робот окажется напротив соперника, используя программный блок «Независимое управление моторами» «Зеленой палитры» выключим моторы (Рис. 4 поз. 3).
Рис. 4
На этапе отладки этого алгоритма вам придется, подбирая значения «Мощность» моторов «B» и «C» а также пороговое значение датчика, добиться от вашего робота точного обнаружения и остановки строго напротив соперника. Только после этого можно будет переходить к программной реализации алгоритма атаки.
Если поиск соперника в «Сумо» очень похож на поиск кегли в «Кегельринге», то выталкивание соперника имеет важное отличие! Начиная атаку, первое, что необходимо сделать, это прямолинейно устремиться на максимальной мощности моторов в сторону обнаруженного соперника, проверяя датчиком цвета обнаружение границы ринга. Но ведь наш соперник тоже может двигаться! Поэтому вполне возможна ситуация, когда соперник выйдет в сторону из-под направления нашей атаки. В этом случае, наш робот, промахнувшись, будет двигаться в сторону границы ринга, теряя соперника и драгоценное время.
Следовательно, нам необходимо во время прямолинейного движения вперед анализировать оба датчика и прекращать атаку в случае, если робот потеряет соперника ИЛИ робот достигнет границы ринга. Поэтому нам необходимо отказаться от использования программного блока «Ожидание» «Оранжевой палитры» и самостоятельно в цикле получать и обрабатывать показания двух датчиков.
Приступим к поэтапной реализации алгоритма атаки соперника: для этого создадим в проекте временную программу «lesson-12-1» и начнем её наполнение программными блоками.
- Возьмем программный блок «Цикл» «Оранжевой палитры».
- Внутрь блока «Цикл» поместим программный блок «Независимое управление моторами» «Зеленой палитры». Режим работы блока установим в значение «Включить» (Рис. 5 поз. 1), мощности моторов «B» и «C» установим в максимальное значение — 100 (Рис. 5 поз. 2).
Рис. 5
- Следом за блоком «Независимое управление моторами» поместим программный блок «Датчик цвета» «Желтой палитры». Режим работы блока установим в значение «Сравнение — Яркость отраженного света» (Рис. 6)
Рис. 6
В этом режиме программный блок «Датчик цвета» «Желтой палитры» визуально очень похож на программный блок «Ожидание» «Оранжевой палитры» в режиме «Датчик цвета — Сравнение — Яркость отраженного света». Но, в отличие от блока «Ожидание», этот программный блок не ждет выполнения условия, указанного параметрами «Тип сравнения» (Рис. 7 поз. 1) и «Пороговое значение» (Рис. 7 поз. 2), а сразу выдает логическое значение («Истина» или «Ложь») в выходном параметре «Результат сравнения» (Рис. 7 поз. 3) и измеренное значение — в выходном параметре «Освещение» (Рис. 7 поз. 4).
Параметры «Тип сравнения» и «Пороговое значение» на Рис. 7 поз. 1, 2 установим таким образом, чтобы выходной параметр «Результат сравнения» (Рис. 7 поз. 3) выдавал логическое значение «Истина» при пересечении датчиком цвета черной границы ринга.
Рис. 7
- В случае использования ультразвукового датчика за блоком «Датчик цвета» установим программный блок «Ультразвуковой датчик» «Желтой палитры». Режим работы блока установим в значение «Сравнение — Расстояние в сантиметрах» (Рис. 8 поз. 1). Параметр «Тип сравнения» (Рис. 8 поз. 2), параметр «Пороговое значение» (Рис. 8 поз. 3) установим таким образом, чтобы выходной параметр «Результат сравнения» (Рис. 8 поз. 4) выдавал логическое значение «Истина» в случае потери из виду роботом соперника.
Рис. 8
В случае использования инфракрасного датчика за блоком «Датчик цвета» установим программный блок «Инфракрасный датчик» «Желтой палитры». Режим работы блока установим в значение «Сравнение — Приближение» (Рис. 9 поз. 1). Параметр «Тип сравнения» (Рис. 9 поз. 2), параметр «Пороговое значение» (Рис. 9 поз. 3) установим таким образом, чтобы выходной параметр «Результат сравнения» (Рис. 9 поз. 4) выдавал логическое значение «Истина» в случае потери из виду роботом соперника.
Рис. 9
Давайте ещё раз проанализируем промежуточный код нашего алгоритма атаки: мы включили моторы на максимальную мощность и движемся вперед, постоянно в цикле опрашивая датчики. Если наш робот пересечет черную линию границы ринга, то значение выходного параметра «Результат сравнения» «Датчика цвета» примет значение «Истина». Если наш робот потеряет соперника, то значение выходного параметра «Результат сравнения» датчика, следящего за соперником, также примет значение «Истина». В любом из этих случаев нам следует прекратить атаку, завершив наш цикл. В этом нам поможет программный блок «Логические операции» «Красной палитры». Познакомимся с этим блоком подробнее: программный блок «Логические операции» предназначен для выполнения операций над логическими данными (Рис. 10).
Рис. 10
Выбранный режим программного блока «Логические операции» «Красной палитры» определяет одну из четырех операций над логическими данными: «И (AND)», «ИЛИ (OR)», «Исключающее ИЛИ» и «Исключение (NOT)». Два входных параметра «a» и «b» (для операции «Исключение (NOT)» — один входной параметр «a») передают в программный блок входные значения, а результирующее значение выдается выходным параметром «Результат». Если вы ранее не сталкивались с логическими операциями, то можете ознакомиться с базовыми знаниями в прилагаемой справке под спойлером.
Логические операции осуществляются только над логическими значениями (данными), результатом логической операции также является логическое значение. Логическое значение может находиться в одном из двух состояний: «Истина» или «Ложь». Логические операции очень часто записываются в табличной форме в виде: «входной параметр 1» — «входной параметр 2» = «результат». Логические операции, реализуемые программным блоком «Логические операции» «Красной палитры» в табличной форме можно записать следующим образом:
Логическая операция «И (AND)»
Результатом логической операции «И (AND)» будет значение «Истина» только, если оба входных значения равны «Истина», во всех других случаях значение операции равно «Ложь».
«a» | операция | «b» | результат | |
«Ложь» | «И (AND)» | «Ложь» | = | «Ложь» |
«Ложь» | «И (AND)» | «Истина» | = | «Ложь» |
«Истина» | «И (AND)» | «Ложь» | = | «Ложь» |
«Истина» | «И (AND)» | «Истина» | = | «Истина» |
Логическая операция «ИЛИ (OR)»
Результатом логической операции «ИЛИ (OR)» будет значение «Ложь» только, если оба входных значения равны «Ложь», во всех других случаях значение операции равно «Истина».
«a» | операция | «b» | результат | |
«Ложь» | «ИЛИ (OR)» | «Ложь» | = | «Ложь» |
«Ложь» | «ИЛИ (OR)» | «Истина» | = | «Истина» |
«Истина» | «ИЛИ (OR)» | «Ложь» | = | «Истина» |
«Истина» | «ИЛИ (OR)» | «Истина» | = | «Истина» |
Логическая операция «Исключающее ИЛИ»
Результатом логической операции «Исключающее ИЛИ» будет значение «Истина» только, если одно из входных значений равно «Истина», во всех других случаях значение операции равно «Ложь».
«a» | операция | «b» | результат | |
«Ложь» | «Исключающее ИЛИ» | «Ложь» | = | «Ложь» |
«Ложь» | «Исключающее ИЛИ» | «Истина» | = | «Истина» |
«Истина» | «Исключающее ИЛИ» | «Ложь» | = | «Истина» |
«Истина» | «Исключающее ИЛИ» | «Истина» | = | «Ложь» |
Логическая операция «Исключение (NOT)»
Логическая операция «Исключение (NOT)» применяется только к одному входному значению. Результатом логической операции «Исключение (NOT)» над входным значением является противоположное значение.
«a» | операция | результат | |
«Ложь» | «Исключение (NOT)» | = | «Истина» |
«Истина» | «Исключение (NOT)» | = | «Ложь» |
- За программным блоком «Ультразвуковой датчик» или «Инфракрасный датчик» поместим программный блок «Логические операции» «Красной палитры».
- Выходной параметр «Результат сравнения» программного блока «Датчик цвета» (Рис. 11, 12 поз. 1) соединим с входным параметром «a» программного блока «Логические операции» (Рис. 11, 12 поз. 4).
- Выходной параметр «Результат сравнения» программного блока «Ультразвуковой (инфракрасный) датчик» (Рис. 11, 12 поз. 2) соединим с входным параметром «b» программного блока «Логические операции» (Рис. 11, 12 поз. 5).
- Режим работы программного блока «Логические операции» установим в «ИЛИ (OR)» (Рис. 11, 12 поз. 3). В этом случае результат выполнения логической операции будет принимать значение «Истина», только если будет выполнено одно из условий: датчик цвета пересёк черную линию, робот потерял соперника.
- Установив режим программного блока «Цикл» в значение «Логическое значение» (Рис. 11, 12 поз. 7), выходной параметр «Результат» программного блока «Логические операции» (Рис. 11, 12 поз. 6) соединим с входным параметром «Пока не будет истина» программного блока «Цикл» (Рис. 11, 12 поз.
. Данные настройки завершат выполнение цикла при «Истинном» результате выполнения логической операции.
Рис. 11
Рис. 12
Давайте протестируем получившийся алгоритм атаки! Для этого поместим нашего робота внутрь ринга, напротив установим неподвижного соперника и запустим программу атаки на выполнение. Наш робот должен уверенно вытолкать соперника за пределы ринга и остановиться над черной границей поля. Получилось? Значит наш сумоист верно контролирует границу ринга.
Проведем второй эксперимент: снова установим напротив робота неподвижного соперника и запустим программу атаки. Когда наш робот устремится к сопернику и приблизится достаточно близко, резко уберём соперника в сторону. Наш робот должен, потеряв соперника, остановиться.
Подведем итог: мы реализовали алгоритм поиска соперника и успешно его протестировали, также прошел проверку алгоритм атаки.
Законченная программа сумоиста должна в бесконечном цикле выполнять последовательно поиск соперника, а затем — атаку соперника. Можно было бы уже объединить обе части нашей программы, если бы не одно маленькое дополнение. Если наш робот остановился над границей ринга, то перед тем, как начать поиск, роботу следует, отъехав немного назад, вернуться внутрь ринга. Дополним нашу программу атаки следующим кодом: за пределами цикла атаки, воспользуемся программным блоком «Переключатель» «Оранжевой палитры». Режим работы блока «Переключатель» установим в «Датчик цвета — Сравнение — Яркость отраженного света». Параметры «Тип сравнения» и «Пороговое значение» установим аналогично ранее используемым в программном блоке «Датчик цвета» «Желтой палитры». Следовательно, если наш робот остановился над черной линией, то выполнение будет передано верхнему контейнеру программного блока «Переключатель». Именно в верхний контейнер поместим программный блок «Рулевое управление» «Зеленой палитры», с настройками параметров, заставляющими робота отъехать назад на один оборот моторов. В нижний контейнер программного блока «Переключатель» поместим программный блок, выключающий моторы (Рис. 13). Повторно протестировав алгоритм атаки, убедимся, что после того, как робот-сумоист вытолкал соперника за пределы ринга, он вернулся немного назад.
Рис. 13
Вот теперь можно завершить разработку программы для робота-сумоиста. Внутрь бесконечного цикла последовательно вложим программу поиска соперника, а затем программу атаки соперника. Попробуйте выполнить эту работу самостоятельно, не подглядывая в решение.
Программа робота-сумоиста
Заключение:
Программа, которую мы разобрали с вами на этом уроке, реализует только один прямой силовой алгоритм поведения робота-сумоиста. Она подразумевает, что в прямом силовом противостоянии робот должен непременно одолеть своего соперника. Но наш учебный робот, конечно же, совсем не похож на мускулистого борца-сумо. Для того, чтобы уверенно выступить в этом состязании, необходимо уделить самое пристальное внимание в первую очередь конструкции робота, создать прочную, защищенную платформу, с помощью дополнительных ведущих колес или гусениц повысить сцепление с поверхностью ринга. На популярном видеохостинге Youtube.com по запросу «сумо lego роботов» можно найти множество видеороликов с реальных соревнований роботов, из которых вы непременно почерпнёте для себя интересные идеи для реализации в собственных конструкциях.
Главная же цель этого урока — на практическом примере показать вам метод непрерывной обработки показаний от пары датчиков. Можно ли усовершенствовать нашу программу? Безусловно! Например, используя программный блок «Случайное значение» «Красной палитры», изменить алгоритм поиска соперника таким образом, чтобы задавать случайное вращение робота влево или вправо, тем самым, дезориентируя соперника. Попробуйте самостоятельно встроить в нашу программу этот дополнительный код. Подумайте так же над тем, какие изменения нужно внести в прорамму, в случае проведения соревнования на черном ринге с белой границей. Возможно, что у вас появятся собственные идеи улучшения: поделитесь ими в комментариях к уроку!
Программирование,
подготовка и комплектация борца-робота «СУМО» на базе конструктора Mindstorms LEGO EV3.
Мы живем в веке информационных технологий, поэтому робототехника
становится неотъемлемой частью учебного процесса. И если в рамках стандартной
школьной программы мы изучаем теоретические основы программирования, то с
помощью лего-роботов мы можем наглядно показать как выполняются те или иные
функции.
Робототехника поощряет детей мыслить творчески,
анализировать ситуацию и применять критическое мышление для решения реальных
проблем. Работа в команде и сотрудничество укрепляет коллектив, а соперничество
на соревнованиях дает стимул к учебе. Возможность делать и исправлять ошибки в
работе самостоятельно заставляет школьников находить решения.
Робототехника в школе приучает детей смотреть на проблемы
шире и решать их в комплексе. Созданная модель всегда находит аналог в реальном
мире. Задачи, которые ученики ставят роботу, предельно конкретны, но в процессе
создания машины обнаруживаются ранее непредсказуемые свойства аппарата или
открываются новые возможности его использования. Различные языки
программирования графическими элементами помогают школьникам мыслить логически
и рассматривать вариантность действия робота. Обработка информации с помощью
датчиков и настройка датчиков дают школьникам представление о различных
вариантах понимания и восприятия мира живыми системами.
В
данной статье, мы рассмотрим программирование, подготовку и комплектацию
борца-робота «СУМО». По данному направлению в любом регионе России и в мире в
целом постоянно проводятся всевозможные мероприятия.
Цель: Научить учащихся к самостоятельному программированию
робота сумоиста, с применением датчиков: 2 датчика цвета, ультразвукового
датчика и датчика касания для дальнейшего участия в соревнованиях
борцов-роботов «СУМО».
Задача работы: Познакомить учащихся со способом
программирования робота сумо.
Новизна: По новым требованиям ФГОС нового поколения введены
новые направления в дополнительном образовании. Направление «Робототехника»
представляет собой конструирование и программирование робота, т.е. развивает
малую моторику, технические навыки у учащихся, а также укрепляет межпредметную
связь.
Данная
работа представляет собой инструкцию программирования робота с пояснениями.
Правила:
·
Роботы устанавливаются в центре
круга (на линии старта) в любом направлении (кроме как внутрь круга)
·
После включения программы робот
ожидает 3 секунды и начинает выполнять программу
·
Робот должен доехать до края
площадки (белая или черная линия)
·
Коснувшись линии робот
приступает к поиску соперника
·
В соревнованиях побеждает тот,
кто выталкивает робота соперника за черный круг.
Конструкция данного робота будет наглядно приведена
(изображения) в приложении к данной работе.
Рис. 1 Программа СУМО
робота
По
регламенту соревнования роботы должны находиться внутри круга с диаметром 122
см с черной или белой границей в 4 см, в середине круга расположены две линии
старта, после сигнала они должны стоять на линии в течение 3 секунд, только
потом начинать движения, поэтому необходимо использовать оператор времени,
настроив его на время.
Рис.
2
Далее робот
движется до белой или черной линии (границы круга)
Рис.
3
Коснувшись линии, робот приступает к поиску соперника. То
есть начинаем кружиться вокруг. Это можно сделать с помощью блока независимого
управления моторами, который так же будет действовать в цикле с постусловием.
Но здесь мы будем использовать показания другого датчика в качестве условия.
Ультразвуковой датчик отправляет ультразвуковой сигнал и замеряет скорость, за
какой промежуток времени сигнал приходит обратно. Таким образом этот датчик в
состоянии определить расстояние до объекта. Поскольку наше поле диаметром 122
см, наш робот продолжит выполнять программу после того, как обнаружит объект на
расстоянии меньшем или равном 90 см.
Рис. 4
Далее, как только датчик расстояния заметит перед собой
цель, программа переключается на независимое управление моторами, движением
вперед моторамиA и B. Для этого просто включим оператор управления с
независимыми моторами, присоединённых к порту A и B, на движение
вперед. Тем самым обеспечив роботу движение вперед. Но не стоит забывать, что
робот соперника, может совершить маневр, и мы проедем мимо него. Или
попытавшись вытолкнуть соперника, наш робот сам может покинуть пределы
площадки. Чтобы избежать этого нам помогут датчики цвета. В нашем роботе
используется 2 датчика. Так как на практике столкнулись с ситуацией. Когда
датчик, расположенный с одной стороны просто не успевает среагировать, когда
робота выталкивают с площадки другой стороной. И это будет одной из самых
сложных частей программы, так как для считывания информации параллельно с обоих
датчиков, придется использовать логическую операцию и работу датчиков цвета
разбирать во вложенном цикле. Потребуется логическая операция ИЛИ, известная
каждому школьнику, и значение истинности одного из условий. После того, как
один из датчиков цвета обнаружил линию черного или белого цвета ему необходимо
отъехать назад от края площадки и вновь приступить к поиску противника.
Рис.
5
Рис.
6
Для того,
чтобы нашего робота было не так просто вытолкнуть за пределы поля, если он не
успел развернуться и увидеть робота, или если проехал мимо и оказался в
невыгодном положении, когда робот соперника находится сзади и уже выталкивает с
поля, мы используем датчик касания. Его работа будет выполняться в параллельном
цикле, который начнет свое действие только тогда, когда будет произведено
нажатие. И остановит выполнение основного цикла. После нажатия датчика робот
совершит маневр разворота с радиусом, чтобы избежать своего соперника, при этом
учитывая данные показаний датчиков цвета, чтобы не покинуть пределы площадки.
Рис.
7
После чего
мы начинаем выполнение основной программы. Таким образом получается следующее:
Рис.
8
Приложение
1
Конструкция
робота (фото)
Контакты
Удиви меня
Содержание
- Рекомендации по сборке и программированию Lego робота-сумоиста EV3
- Необходимые детали для робота-сумо ev3
- Пошаговая инструкция по сборке
- Коротко о программировании сумо-робота
- Программирование, подготовка и комплектация борца-робота «СУМО» на базе конструктора Mindstorms LEGO EV3.
- Курс программирования робота EV3 в среде Lego Mindstorms EV3, Овсяницкая Л.Ю., Овсяницкий Д.Н., Овсяницкий А.Д., 2016
- Методическая разработка занятия по робототехнике «Мини-соревнования Сумо роботов»
- Просмотр содержимого документа «Методическая разработка занятия по робототехнике «Мини-соревнования Сумо роботов»»
- Инструкция робота ев3 для сумо
Рекомендации по сборке и программированию Lego робота-сумоиста EV3
Для победы в боевых соревнованиях по робототехнике необходимо правильно собрать робота сумо ev3, инструкция по сборке поможет в этом. Результативность обеспечивается задействованием всех функциональных возможностей, включая датчики расстояния, цвета, толкающие и поддевающие ковши. Роботы-участники представлены в базовых и усовершенствованных комплектациях (шагающие, гусеничные боты).
Необходимые детали для робота-сумо ev3
Модели для сумо состоят из следующих блоков и элементов:
- 3 большие шестеренки, скрепленные парой балок для полного привода;
- колеса;
- прямоугольная рамка для размещения боковой платформы;
- поддевающий и распорный ковши;
- моторы;
- датчики и портальные разъемы;
- конструкционные элементы (поперечины, крепеж, направляющие, продольные, диагональные рейки).
Датчики и моторы
Для робота предусмотрено два больших двигателя, подсоединяемые к портам «В» и «С». Движущая конструкция расположена во фронтальной части, моторы вращаются по часовой стрелке.
Полноценное функционирование ev3 невозможно без датчиков. У рассматриваемого конструктора применяется пять основных видов индикаторов:
- Инфракрасный маяк служит для передачи сигналов роботу. Он агрегирует с другими лего-ботами.
- Температурный датчик работает по принципу органов чувств человека и других живых организмов.
- Ультразвуковой индикатор реагирует на соперника, что важно на соревнованиях любого уровня.
- Индикатор цвета расширяет возможности робота, ориентируя его на ринге.
- Датчик касания — самый простой и важный элемент.
Программный блок
Стандартное ПО рассчитано на два больших мотора, два датчика (инфракрасный и цветовой). Работает программа по следующей схеме:
- «Ожидание» – 5 секунд.
- «Звуковой сигнал» – начало работы.
- Два цикла «Начало» и «Неограниченный» – старт движения.
- «Определение цвета» – по умолчанию робот видит черный колер; при этом механизм отъезжает на два вращения назад.
- «Управление рулевое» – корректируется количество оборотов.
- Режим «Нет цвета» – ведется расчет имеющихся препятствий, расстояния до них и последующих манипуляций.
- «Инфракрасный индикатор» – действует по принципу распознавания и приближения объектов.
- «Истина» – ветка, которая активируется, если до препятствия менее 60 единиц.
- «Лож» – противоположность восьмой позиции в списке.
- «Независимое управление» – на противоположных мощностях двигателей бот будет вертеться на месте, пока дистанция до соперника не станет менее 60 единиц.
Выставив указанные параметры, проводят тестирование робота ev3 для сумо.
Моторы большой и средний
Основной двигатель серверного типа сделан под NXT с увеличенной корпусной частью. Характеристики:
- оборотистость предельная (об./мин.) — 170;
- заданный/рабочий момент кручения (Н/см) — 40/20;
- индикатор поворотного угла – есть, погрешность – до одного градуса.
Средний сервомотор «ев3» базируется на Power Function, ориентирован на высокие скорости и низкие нагрузки. Параметры:
- максимум оборотов (об./мин.) — 250;
- крутящий момент (Н/см) — 12/8;
- энкодер, отвечающий за угол поворота с точностью до одного градуса.
Новый блок для соревнований настроен универсально, подходит для всех модификаций рассматриваемых конструкций.
Удаленный инфракрасный маяк
Впереди расположенный датчик излучает волны, невидимые человеческому глазу. Подобным образом работают ДПУ. В режиме «Приближение» индикатор самостоятельно отправляет импульсы, отражая полученный сигнал и фиксируя обнаруженное препятствие.
ИК-маяк может определять дистанцию до соперника, посылая сведения о примерном своем расположении и удаленности. Для использования функции потребуются батарейки типа «ААА».
Датчик цвета и прикосновения
Цветовой индикатор «сумоиста» отличает семь оттенков с возможностью определения отсутствия колера. Дополнительная функция – работа в режиме подсветки.
- улавливание красного и его окружающего фона;
- контроль разницы между контрастными оттенками;
- рабочая частота – 1 кГц.
Датчик касания фиксирует активацию или отпускание кнопки, подсчитывает число нажатий.
Инфракрасный сенсор
Этот индикатор позволяет определять не только оттенок, но и степень освещенности, дистанцию до ближайших предметов. В качестве контроллера выступает специальный блок, к которому подсоединяются сопутствующие «движки» и датчики.
Пошаговая инструкция по сборке
Собрать мощного робота-сумоиста Lego не сложно, если знать все операции по этапам.
Боевой бот Mindstorms ev3 конструируется следующим образом:
- Собирается передний привод с тремя большими шестернями и обжимной парой длинных балок.
- Крепятся колеса, горизонтальная и вертикальная прямоугольная рамка.
- Цепляется поддевающий ковш.
- Комплектуется вся правая сторона боевого робота для сумо.
- Подсоединяются датчики к моторам посредством проводов и специальных портальных гнезд.
Бота собирают в нескольких базовых исполнениях. Таблица ориентирует пользователей на выбор модели, подходящей для заданных целей, по сравнению с категорией Education.
Характеристика | NXT | EV3 |
Основной процессор | ARM AT91-SAM 7S256, Atmel. 48 МГц, «Флеш-память» – 256 кБ, RAM – 64 кБ | ARM9, 300 МГц, Память – 16/64 кБ |
Вспомогательное ПО | «Восьмибитный» «Амтел», 8 МГц, «Флеш»/«РАМ» – 4,0/0,52 кБ | Не предусмотрено |
Операционная система | Propietary | Linux |
Ввод | Четыре гнезда с цифровыми и аналоговыми портами. Скорость – 9600 бит/с | Аналоговые и цифровые разъемы со скоростью 460,8 Кбит/с |
Вывод | 3 | 4 |
Передача сведений | Full speed 12 Мбит/с | High speed 480 Мбит/с |
Способ подключения | Отсутствует | Wi-Fi, Flash (до трех носителей и передатчиков) |
Чтение карт SD | Нет | miniSD до 32 Гб |
Совместимость с мобильными девайсами | «Андроид» | «Андроид», iOS |
Монитор | Монохромный LCD (100×64 Px) | LCD (178×128 Px) |
Взаимодействие | Bluetooth, USB | Bluetooth 2.1, USB 2.0/1.1, Wi-Fi |
Коротко о программировании сумо-робота
Регламент состязаний предполагает расположение «бойцов» во внутреннем секторе круга. Диаметр арены составляет 1540 мм, черная приграничная окантовка имеет ширину 50 мм. В середине круга предусмотрены две стартовые линии. На них соревнующиеся машины должны выждать 5 секунд до того, как броситься в схватку. В связи с этим секундомер пуска настраивается с соответствующей задержкой.
«Фишка» подобных соревнований заключается в том, что программировать робота «на успех» не получится. Направление движения определяет судья. Во избежание попадания бота в «молоко» используется программа «Цикл» с независимым управлением.
Настройка предполагает создание для мотора «А» предельной скорости перемещения вперед. Соответственно, мотор «В» на гусеницах альтернативно вращается назад. Независимое управление позволяет вращаться конструкции в пределах одной оси.
Пользователь корректирует робота, вращая его на одной точке. В этом помогает инфракрасный датчик, определяющий цель. Используют опцию «Приближение», настроив дистанцию 0,5 м. Рабочий диаметр для сражения ботов составляет по диагонали 1,5 м.
В соответствии с правилами предельное расстояние между соперниками не превышает 1000 мм. Колесо каждого участника не должно заступать за стартовую линию. Уловив цель, индикатор передает сведения на микропроцессор. Включается независимое управление, робот начинает перемещаться вперед и в стороны.
Для того чтобы лего-боец сумо смог уловить направление движения и стратегию ведения борьбы, включается датчик цвета. С его помощью бот доходит до черной черты с последующим включением задней передачи. Если на протяжении одной секунды ситуация остается без изменений, «сумоист» останавливается автоматически.
После настройки всех портов с моторами и датчиками, программа представит собой схему, в которой задействованы два двигателя, индикаторы света и инфракрасного излучения на движение.
Источник
Программирование, подготовка и комплектация борца-робота «СУМО» на базе конструктора Mindstorms LEGO EV3.
Программирование, подготовка и комплектация борца-робота «СУМО» на базе конструктора Mindstorms LEGO EV 3.
Мы живем в веке информационных технологий, поэтому робототехника становится неотъемлемой частью учебного процесса. И если в рамках стандартной школьной программы мы изучаем теоретические основы программирования, то с помощью лего-роботов мы можем наглядно показать как выполняются те или иные функции.
Робототехника поощряет детей мыслить творчески, анализировать ситуацию и применять критическое мышление для решения реальных проблем. Работа в команде и сотрудничество укрепляет коллектив, а соперничество на соревнованиях дает стимул к учебе. Возможность делать и исправлять ошибки в работе самостоятельно заставляет школьников находить решения.
Робототехника в школе приучает детей смотреть на проблемы шире и решать их в комплексе. Созданная модель всегда находит аналог в реальном мире. Задачи, которые ученики ставят роботу, предельно конкретны, но в процессе создания машины обнаруживаются ранее непредсказуемые свойства аппарата или открываются новые возможности его использования. Различные языки программирования графическими элементами помогают школьникам мыслить логически и рассматривать вариантность действия робота. Обработка информации с помощью датчиков и настройка датчиков дают школьникам представление о различных вариантах понимания и восприятия мира живыми системами.
В данной статье, мы рассмотрим программирование, подготовку и комплектацию борца-робота «СУМО». По данному направлению в любом регионе России и в мире в целом постоянно проводятся всевозможные мероприятия.
Цель: Научить учащихся к самостоятельному программированию робота сумоиста, с применением датчиков: 2 датчика цвета, ультразвукового датчика и датчика касания для дальнейшего участия в соревнованиях борцов-роботов «СУМО».
Задача работы: Познакомить учащихся со способом программирования робота сумо.
Новизна: По новым требованиям ФГОС нового поколения введены новые направления в дополнительном образовании. Направление «Робототехника» представляет собой конструирование и программирование робота, т.е. развивает малую моторику, технические навыки у учащихся, а также укрепляет межпредметную связь.
Данная работа представляет собой инструкцию программирования робота с пояснениями.
Роботы устанавливаются в центре круга (на линии старта) в любом направлении (кроме как внутрь круга)
После включения программы робот ожидает 3 секунды и начинает выполнять программу
Робот должен доехать до края площадки (белая или черная линия)
Коснувшись линии робот приступает к поиску соперника
В соревнованиях побеждает тот, кто выталкивает робота соперника за черный круг.
Конструкция данного робота будет наглядно приведена (изображения) в приложении к данной работе.
Рис. 1 Программа СУМО робота
По регламенту соревнования роботы должны находиться внутри круга с диаметром 122 см с черной или белой границей в 4 см, в середине круга расположены две линии старта, после сигнала они должны стоять на линии в течение 3 секунд, только потом начинать движения, поэтому необходимо использовать оператор времени, настроив его на время.
Рис. 2
Далее робот движется до белой или черной линии (границы круга)
Рис. 3
Коснувшись линии, робот приступает к поиску соперника. То есть начинаем кружиться вокруг. Это можно сделать с помощью блока независимого управления моторами, который так же будет действовать в цикле с постусловием. Но здесь мы будем использовать показания другого датчика в качестве условия. Ультразвуковой датчик отправляет ультразвуковой сигнал и замеряет скорость, за какой промежуток времени сигнал приходит обратно. Таким образом этот датчик в состоянии определить расстояние до объекта. Поскольку наше поле диаметром 122 см, наш робот продолжит выполнять программу после того, как обнаружит объект на расстоянии меньшем или равном 90 см.
Рис. 4
Далее, как только датчик расстояния заметит перед собой цель, программа переключается на независимое управление моторами, движением вперед моторамиA и B. Для этого просто включим оператор управления с независимыми моторами, присоединённых к порту A и B, на движение вперед. Тем самым обеспечив роботу движение вперед. Но не стоит забывать, что робот соперника, может совершить маневр, и мы проедем мимо него. Или попытавшись вытолкнуть соперника, наш робот сам может покинуть пределы площадки. Чтобы избежать этого нам помогут датчики цвета. В нашем роботе используется 2 датчика. Так как на практике столкнулись с ситуацией. Когда датчик, расположенный с одной стороны просто не успевает среагировать, когда робота выталкивают с площадки другой стороной. И это будет одной из самых сложных частей программы, так как для считывания информации параллельно с обоих датчиков, придется использовать логическую операцию и работу датчиков цвета разбирать во вложенном цикле. Потребуется логическая операция ИЛИ, известная каждому школьнику, и значение истинности одного из условий. После того, как один из датчиков цвета обнаружил линию черного или белого цвета ему необходимо отъехать назад от края площадки и вновь приступить к поиску противника.
Для того, чтобы нашего робота было не так просто вытолкнуть за пределы поля, если он не успел развернуться и увидеть робота, или если проехал мимо и оказался в невыгодном положении, когда робот соперника находится сзади и уже выталкивает с поля, мы используем датчик касания. Его работа будет выполняться в параллельном цикле, который начнет свое действие только тогда, когда будет произведено нажатие. И остановит выполнение основного цикла. После нажатия датчика робот совершит маневр разворота с радиусом, чтобы избежать своего соперника, при этом учитывая данные показаний датчиков цвета, чтобы не покинуть пределы площадки.
После чего мы начинаем выполнение основной программы. Таким образом получается следующее:
Источник
Курс программирования робота EV3 в среде Lego Mindstorms EV3, Овсяницкая Л.Ю., Овсяницкий Д.Н., Овсяницкий А.Д., 2016
Курс программирования робота EV3 в среде Lego Mindstorms EV3, Овсяницкая Л.Ю., Овсяницкий Д.Н., Овсяницкий А.Д., 2016.
Книга посвящена программированию робота EV3 в среде Lego Mindstorms EV3. Работа является результатом многолетнего опыта непосредственного участия авторов в региональных, всероссийских и международных состязаниях по робототехнике и педагогической деятельности, направленной на подготовку учителей, преподавателей и тренеров по данной тематике.
Книга будет полезна педагогам начального, среднего, высшего и дополнительного образования, учащимся, студентам и всем, интересующимся вопросами робототехники.
Создание первого проекта.
Проект — это новая составляющая среды программирования, которая отсутствовала в предыдущих версиях. Проект содержит:
— программы;
— объекты, используемые в программах проекта:
— подпрограммы;
— звуки, изображения, видеоролики, текстовые файлы;
— переменные;
— константы.
Можно привести сравнение проекта с книгой MS Excel, которая состоит из листов. Причём листы могут быть автономны или содержать информацию, относящуюся к общей теме книги. При сохранении книги сохраняются все листы, при сохранении проекта в среде Lego Mindstorms EV3 сохраняются все входящие в него программы и используемые в них объекты.
Программы, содержащиеся в проекте EV3, могут относиться к выполнению одного задания для робота (например, варианты прохождения лабиринта или захват определённых предметов в зависимости от их расположения) или быть совершенно не связанными друг с другом.
ОГЛАВЛЕНИЕ.
Введение.
Глава 1. Характеристики робота. Создание и запуск первого проекта.
1.1. Краткая характеристика роботизированных платформ. Обзор среды программирования Lego Mindstorms EV3.
1.2. Способы подключения робота к компьютеру. Обновление прошивки блока EV3. Загрузка программ в блок EV3.
Глава 2. Программирование робота.
2.1. Моторы. Программирование движений по различным траекториям.
2.2. Работа с подсветкой, экраном и звуком.
2.2.1. Работа с экраном.
2.2.2. Работа с подсветкой кнопок на блоке EV3.
2.2.3. Работа со звуком.
2.3. Программные структуры.
2.3.1. Структура Ожидание.
2.3.2. Структура Цикл.
2.3.3. Структура Переключатель.
2.4. Работа с данными.
2.4.1. Типы данных. Проводники.
2.4.2. Переменные и константы.
2.4.3. Математические операции с данными.
2.4.4. Другие блоки работы с данными.
2.4.5. Работа с массивами.
2.4.6. Логические операции с данными.
2.5. Работа с датчиками.
2.5.1. Датчик касания.
2.5.2. Датчик цвета.
2.5.3. Гироскопический датчик.
2.5.4. Ультразвуковой датчик.
2.5.5. Инфракрасный датчик и маяк.
2.5.6. Датчик Вращение мотора (определение угла/количества оборотов и мощности мотора».
2.5.7. Кнопки управления модулем.
2.6. Работа с файлами.
2.7. Совместная работа нескольких роботов.
2.7.1. Соединение роботов кабелем USB.
2.7.2. Связь роботов с помощью Bluetooth-соединения.
2.8. Полезные блоки и инструменты.
2.8.1. Блок «Поддерживать в активном состоянии».
2.8.2. Блок «Остановить программу».
2.8.3. Создание подпрограмм.
2.8.4. Запись комментариев.
2.8.5. Использование проводного ввода порта.
Глава 3. Основные виды соревнований и элементы заданий.
3.1. Соревнования Сумо.
3.2. Кегельринг.
3.3. Слалом (объезд препятствий).
3.4. Программирование движения полиции.
3.4.1. Алгоритм движения по линии «Зигзаг» с одним и двумя датчиками цвета.
3.4.2. Алгоритм «Волна».
3.4.3. Алгоритм автоматическом калибровки датчика цвета.
3.5. Пропорциональное линейное управление.
3.5.1. Движение но линии на основе пропорционального управления.
3.5.2. Поиск и подсчёт перекрёстков при пропорциональном управлении движением по линии.
3.5.3. Проезд инверсии.
3.5.4. Движение робота вдоль стены.
3.6. Поиск цели в лабиринте.
Глава 4. Обновление встроенного ПО и перезапуск блока EV3.
Глава 5. Использование сторонних датчиков.
5.1. Работа с HiTech датчиком цвета.
5.2. Использование других датчиков.
Заключение.
Бесплатно скачать электронную книгу в удобном формате, смотреть и читать:
Скачать книгу Курс программирования робота EV3 в среде Lego Mindstorms EV3, Овсяницкая Л.Ю., Овсяницкий Д.Н., Овсяницкий А.Д., 2016 — fileskachat.com, быстрое и бесплатное скачивание.
Скачать pdf
Ниже можно купить эту книгу по лучшей цене со скидкой с доставкой по всей России. Купить эту книгу
Источник
Методическая разработка занятия по робототехнике «Мини-соревнования Сумо роботов»
Конспект занятия робототехники. Занятие посвящено построению конструкции робота и проведению мини-соревнования между обучающимися детского объединения.
Просмотр содержимого документа
«Методическая разработка занятия по робототехнике «Мини-соревнования Сумо роботов»»
Разработка занятия на тему: «Мини-соревнования Сумо роботов»
Автор: Кустов Илья Викторович
Краткое описание: конспект занятия робототехники. Занятие посвящено построению конструкции робота и проведению мини-соревнования между обучающимися детского объединения.
Тип занятия: занятие закрепления полученных знаний и применение их на практике.
Форма занятия: комбинированное занятие.
Цели занятия:
Предметная: подготовить роботов на базе Lego Mindstorms RV3, сконструированных на предыдущих занятиях, для проведения соревнований.
Методологическая: воспитание информационной культуры учащихся, развитие умения выделять главное в задании, развитие внимательности, памяти, развитие навыков коллективной работы.
Метапредметная: формирование представлений о возможностях конструктора LEGO Mindstorms EV3 в разнообразных сферах деятельности.
Методы обучения: наглядный, частично-поисковый, исследовательский.
Учащиеся должны знать/понимать:
Основные принципы конструирования робота с использованием моторов и деталей Lego Mindstorms.
Основные способы управлением робота. (Дистанционное, программное)
Правила проведения соревнований.
Критерии робота. (Ограничения по длине и ширине)
Оборудование: компьютер, наборы Lego Mindstorms EV3, ноутбуки среда программирования, поля для заездов, секундомер.
План занятия:
Организационный момент (2 мин)
Повторение теоретического материала предыдущего урока (5 мин)
Практическая работа: доработка робота (10 мин)
Практическая работа: настройка и установка программы (5 мин)
Подведение итогов урока. Рефлексия (3мин)
Организационный момент.
Раздача роботов, собранных на прошлом уроке.
Учитель: Добрый день, ребята! На прошлом уроке мы с вами собирали
Сегодня мы продолжим изучение темы, доработаем ваших роботов и настроим программу для успешного проведения соревнований. Затем вы добавите несколько элементов в программу для выполнения определённых задач и проверим, чья конструкция окажется крепче и сильней.
Повторение теоретического материала предыдущего урока.
Учитель: Ребята, на прошлом занятии мы рассмотрели возможные конструкции робота-сумоиста и команды начали собирать свои рабочие модели. Прежде чем продолжить работу, давайте ответим на следующие вопросы:
1. Что такое робот-сумоист?
2. Чем отличается такой робот от обычных роботов-тележек?
3. Какие блоки программирования нам понадобятся для того что бы запустить ваших роботов?
Обучающиеся отвечают на предложенные вопросы.
III – IV. Практическая работа: сборка и разработка алгоритма для робота.
Учитель: Теперь давайте вернёмся к нашим роботам (на данном уроке это роботы-сумоисты, которые мы собирали на прошлом занятии).
Предлагаю вам доработать ваши модели и подготовить их к загрузке программы и продемонстрировать ее выполнение.
Рекомендации: Если команда состоит из двух и более человек, следует
распределить задачи между участниками. Например: один участник занимается сборкой робота, второй написанием программы. Если один участник справляется с работой быстрей, ему следует присоединиться к напарнику.
Учитель: Для начала определим на какой стадии сборки находятся ваши роботы.
Необходимо убедиться что конструкция подходит под критерии соревнований:
— Максимальная длина – 25 см.
— Максимальная ширина – 25 см.
А также убедиться что конструкция крепкая и ни какие детали не отделятся при движении робота.
После сборки необходимо загрузить программу в блок управления и провести тестовые заезды для отладки.
Примечание: возможные причины, по которым обучающиеся не смогут запустить робота:
1. Не включен блок EV3.
2. Не загружена пробная программа.
3. Номер порта мотора в программе не соответствует номеру порта мотора на роботе.
Проведение соревнований.
Учитель: Время на доработку, написание и отладку программы закончилось, а значит что настал момент проведения соревнований.
Учащиеся в составе своих команд убирают роботов в зону «Карантина» для контрольного замера размеров робота.
Примечание: если параметры робота превышают максимальные, команде даётся возможность уменьшить габариты конструкции.
После проведения контрольных замеров проводится жеребьёвка и первые две команды выставляют своих роботов на поле.
Побеждает команда вытолкнувшая противника всеми колёсами за круг поля.
Примечание: Если после столкновения роботы не могут сдвинуть друг друга с места – назначается перезаезд. Если один из роботов переворачивается, или по каким либо причинам больше не может двигаться, ему присуждается проигрыш.
После первого заезда к полю для соревнований приглашается следующая пара. После того как все пары проведут заезды начинается второй этап соревнований, в котором проходят заезды победитель – победитель и проигравший – проигравший.
Подведение итогов урока. Рефлексия.
Итак, ребята, давайте подведем итоги нашей работы. Как и в каждом соревновании у нас есть победители, но это не значит что остальных мы можем назвать проигравшими. Все мы получили опыт, который сможем применить на практике, а это самый главный приз для всех нас и им теперь обладает каждый из вас.
По окончанию заездов подведём итоги.
Сегодня вы научились (ответы обучающихся):
1.Конструировать робота для соревнований.
2. Отладке программы.
Что вызвало у вас трудности и как эти трудности вы смогли преодолеть:
Спасибо вам за продуктивную работу! До свидания.
Источник
Инструкция робота ев3 для сумо
This is replacement for DroidBot 1.0. It has all the features of 1.0 and then a few more.
DroidBot 2.0 is a robot build using only parts from 45544 LEGO® MINDSTORMS® Education EV3 Core Set + 1 color sensor. There is also an optional handle that can be added when the robots are used in camps or classrooms.
Designed by: Sanjay and Arvind Seshan
This is a base robot built with one EV3 Education Core Set (45544). This robot can be used as a learning tool as well as a basic design for FIRST LEGO League.
Designed by: Michael Buss Anderson
Droid Bot JR is a robot build using only parts from 31313 LEGO® MINDSTORMS® EV3 Set. This build is slightly smaller than Droid Bot 2.0, but still has many similar features. An optional handle allows for easy carrying in classrooms. It has been designed to allow the builder to easily replace the infrared sensor with the ultrasonic, use a rechargeable battery, and add a gyro sensor if needed.
Designed by: Sanjay and Arvind Seshan
This is a base robot built with one EV3 Retail Set (31313). This robot can be used as a learning tool.
Designed by: Markus Böge, Team SAPfinity
EV3 Enterprise is a robot built using parts from the 31313 LEGO® MINDSTORMS® EV3 Set. This robot has a base that only uses 82 pieces. Sensor and motor modules easily snap on to the base robot as the student needs. (The robot has optional instructions for adding a gyro and second color sensor. The infrared can also replaced with the ultrasonic if needed.) This robot has been tested and approved by EV3Lessons.com
Designed by: Sanjay and Arvind Seshan
Endeavour is a basic robot build using only one 45544 LEGO® MINDSTORMS® Education EV3 Core Set.
Designed by: Sanjay and Arvind Seshan
Driving Bas3 is designed to look like the EV3 Education Core set base robot. However, it is constructed just with parts available in one Retail (#31313) Set.
EV3 Discovery is a robot built using parts from the 45544 LEGO® MINDSTORMS® EV3 Set. Sensor and motor modules easily snap on to the base robot as the student needs. (The robot has optional instructions for adding a second color sensor.)
Designed by: Sanjay and Arvind Seshan
Compact Bot is a basic robot build using the 45544 LEGO® MINDSTORMS® Education EV3 Core Set + 1 motor. It has a back bumper for aligning (straightening the robot by bumping into walls and objects) and a third large motor for attachments. There are a few variations on the build available on this site.
Designed by: Brian Wheeler, Hoosier Girlz
This new NXT robot design is compact and very sturdy — ideal for classroom usage. It has been designed for use in our lessons and also works well on our Training Mats. We name it Cyberbot because of its distinctive handle which makes it look like a Cyberman from Dr. Who. The robot features a shielded color sensor as well as modular/easy to add sensors and a third motor.
Designed by: Sanjay and Arvind Seshan
This is a base robot similar to the one available in the Educational EV3 set (45544), but constructed with parts available in the NXT set.
This is great starting robot design that uses the NXT. It features an outer wall as well as two touch sensors. This robot can also line follow.
Designed by: Tim, Team Cassapeia
This is a base robot similar to the one available in the Educational EV3 set (45544), but constructed with the NXT.
Designed by: Muhannad Al-Khodari, roboticarena.net
This is a simple, quick-build design that can be built easily by students in a camp.
Designed by: Sam Last
This is a basic robot using the NXT that is good for classrooms. Since the brick is low to the ground, this design is a very stable build. The design incorporates all the basic sensors needed for classroom activities.
Designed by: Dr. Damien Kee.
This LEGO MINDTORMS EV3 Sumo Bot uses three EV3 Large Motors, two of which have “triple torque” due to gearing. In the false-colored picture, the pink 12-tooth gear that is directly connected to the EV3 Large Motor touches the turquoise 36-tooth gear. This “gearing down” increases its torque three times, for increased pushing power. The center motor operates the yellow “flipper” arms for upending opposing robots in a Lego Sumo or Battlebot competition. Parts from the EV3 45544 Education Set are supplemented by the third motor and EV3 Color Sensor (for detecting the edge of a Lego Sumo arena). You can use your spare parts to make the flipper larger; with it in the “up” position, it measures
22×22 studs). The EV3 Ultrasonic Sensor detects the opposing robot, or it can be replaced by a Mindsensors “Sumo Eyes” sensor for SuGObot competitions.
Designed by: David Luders
This is an EV3 Sumo Bot design by Mr. Phil. It uses Mindsensor’s SumoEyes. It is shared here with his permission. For more information on this design as well as lots of resources and documentation on the SuGO competitions visit the GEARS website devoted to SuGO .
Designed by: Phil Malone, GEARS
SamBot is an EV3 Sumobot design by Anderson Harayashiki Moreira. It features two ultrasonic sensors and a ramp made of LEGO Brick Separators.
Designed by: Anderson Harayashiki Moreira
This is a four-wheel drive LEGO MINDSTORMS NXT Sumo Bot.
Designed by:Sam Last
This Sumo Bot can be built using the LEGO Mindstorms EV3 31313 retail set’s parts. It features a front flipper, wide rubber tires for good traction, and the EV3 Infrared Sensor for manual operation via the EV3 Remote Control. Download the “Custom Remote” .ev3 project file for Remote Control operation. The EV3 Color Sensor allows for the robot to back up when “seeing” the perimeter line around the Lego Sumo ring. As an option, the pair of red 2L Technic Axles allow for mounting the Mindsensors “Sumo Eyes” to run the SuGObot program.
Designed by: David Luders
This is a quadcopter model for teaching Physics with Edu Core set plus extra motors.
Designed by: Seshan Brothers
This is a witchmade with one EV3 31313 set.
This robot is a fun design with two people playing on a seesaw. It is made with parts in the 45544 set.
Designed by: Young-jun Yi, Funers
This robot is a porter pushing a wheelbarrow. It is made with parts in the 31313 set.
Designed by: Young-jun Yi, Funers
I’m Possible Too is an autonomous biped walker using just one medium motor. It is built using parts from the LEGO MINDSTORMS EV3 Home Edition and EV3 Expansion Set and some parts from other technic sets such as the turntable type 2. When you are done building this design, visit Stu’s website to try all his other walkers.
Источник