Лабиринт лего ев3 программа

Обновлено: 08.05.2024

На данном уроке мы рассмотрим, как пользоваться собственными блоками Ev3 при программировании Ev3.

Напишем программу для Ev3 для прохождения лабиринта. Когда в программе много раз повторяется одна и также последовательность команд, то удобно использовать собственные блоки. Это делает программу очень наглядной и удобной для изменения. Каждый блок отвечает за свой смысловой набор действий,, который можно обособить и выделить.

А далее из этих собственных блоков конструируется программа, согласно логике задания. Рассмотрим, как написать программу для Ev3 для прохождения лабиринта с помощью собственных блоков. Напишем блокидвижение вперед до стены.

программа на ev3 вперед

Поворот направо на Ev3

поворот направо на ev3

Поворот налево на Ev3

поворот налево на ev3

Выделяя эти части программы и выбирая в меню Инструменты раздел Конструктор моего блока, создадим три блока: vpered, parvo, levo. Подробно как создавать свои блоки в Ev3.Составим программу из собственных блоков Ev3 для прохождения такого лабиринта.Робот должен двигаться со старта вперед до левой стенки, потом повернуться направо и двигаться до стенки, потом повернуться направо и двигаться до стенки, налево и до стенки, и налево и до стенки до финиша.

лабиринт

Реализуем этот лагоритм с помощью собственных блоков Ev3 , которые мы создали.

программа для Ev3 прохождение лабиринта

Как видим программа достаточно лаконичная. Представьте, какая была бы большая программа без использования собственных блоков.Аналогично мы можем составить программу для прохождения лабиринта любой сложности.

На этом уроке мы научимся находить выход из лабиринта.

Сначала откроем программу LEGO MINDSTORMS EV3 Home Edition. Для работы построим модель из блоков. Каждый блок имеет свое название и имеет свои функции. Для этой работы нам понадобится зеленый блок или блок «Action» и желтый блок или блок » Flow Control».


medium large move move display sound brick status
motor motor steering tank ligh


Wait Loop Switch Loop interrupt

1) Выбираем 2 loop, 1 switch, 2 move tank .


Получается:

2) Работаем с первыми двумя Loop и Switch . Внутрь к 1 loop добавляем второй. А внутрь второго добавляем Switch.


a) Меняем функции 2 Loop .


Loop: Touch Senser
State: 1


b) Меняем функции Switch .

Switch: ultrasonic senser-compare-distance centimeters
Compare type: 4
Threshold value: 10

3) Работаем с первыми двумя Loop .



Move tank: on
Power left: 30
Power right: 5


Move tank: on
Power left: 5
Power right: 30

4) Работаем с остальными двумя Loop .


Move tank: on for ratations
Power left:-30
Power right: -30
Rotations:
0,4
Brake at end: true


Move tank: on for ratations
Power left:30
Power right: 0
Rotations:
1,5
Brake at end: true


После изменения получается.

Вы можете изучить и скачать доклад-презентацию на тему Движение в лабиринте. Программа EV3. Презентация на заданную тему содержит 9 слайдов. Для просмотра воспользуйтесь проигрывателем, если материал оказался полезным для Вас - поделитесь им с друзьями с помощью социальных кнопок и добавьте наш сайт презентаций в закладки!

500
500
500
500
500
500
500
500
500

201175 201292 201285 201173 201287 201288 201174 201163 201177 201170 201290 201289 201167 201165 201171 201283 201284 201281 201172 201164 201286 201176 201178 201291 201169 201168 201294 201282 201166 201293

Обратная связь

Если не удалось найти и скачать доклад-презентацию, Вы можете заказать её на нашем сайте. Мы постараемся найти нужный Вам материал и отправим по электронной почте. Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:

Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:

Мы в социальных сетях

maze_1

Одним из видов соревнований по робототехнике является прохождение роботом лабиринта. Сегодня мы представляем простую модель, собранную на базе домашней версии EV3. Эту модель и программу вы можете использовать как пример для собственной модели робота. Это даст вам возможность принять участие в соревнованиях, которые проходят во многих крупных городах Украины.
Итак, начнем.
1) Скачайте архив с инструкцией по сборке
2) Распакуйте его в любую папку.
3) Запустите файл «Building Instructions [MazeSolver].html»
4) В бровзере откроется инструкция для сборки конструкции.
5) Скачайте программу для робота
6) Запустите среду программирования Lego Ev3 и загрузите файл «MazeSolver.ev3″
7) Подключите робота к ПК и загрузите программу в робота.
8) Робот готов. Поставьте его рядом со стеной (датчик расстояния должен смотреть в стену).
9) Выберите на блоке управления загруженную программу с названием «index» и запустите ее.


Описание принципа работы
Робот использует два датчика:
— датчик касания (кнопка) для определения препятствия спереди
— датчик расстояния (в нашем случае удьтразвуковой, который можно заменить на инфракрасный) для определения препятствия справа.
После старта программы робот начинает двигаться вперед вдоль препятствия справа. Если препятсвие далеко (более 4 см), то он поворачивает вправо, приближаясь к препятствию. Если препятствие близко (менее 4 см), то робот поворачивает влево, удалясь от препятствия. Таким образом робот все время движется вдоль препятствия справа на одном расстоянии. Если препятсвие справа отсутсвует (поворот), то робот старается найти его и поворачивает вправо, пока не обнаружит его.
Если же препятствие будет спереди, то при его достижении сработает датчик касания (кнопка). В этом случае робот отъезжает назад, поворачивается влево на 90 градусов и включает алгоритм движения вдоль препятствия. И так по циклу.
Если переставить датчик расстояния на другую сторону, то робот будет двигаться вдоль препятствия слева.
Мы собрали два примера лабиринта для демонстрации.

Это базовая модель, которую вы можете улучшить, изменив некоторые параметры программы или усовершенстовав конструкцию.
До встречи в роболабиринтах!

В этом состязании участникам необходимо подготовить автономного робота, способного наиболее быстро проехать от зоны старта до зоны финиша по лабиринту, составленному из типовых элементов.



Рисунок 1. Примерный вид поля

1. Условия состязания

1.1. Робот должен набрать максимальное количество очков, двигаясь по лабиринту от зоны старта до зоны финиша.
1.2. Во время проведения попытки участники команд не должны касаться роботов.
1.3. Роботу запрещено преодолевать стенки лабиринта сверху.
1.4. Если во время заезда робот станет двигаться неконтролируемо или не сможет продолжить движение в течение 20 секунд, то получит очки, заработанные до этого момента.

2. Поле

2.1. Разметка поля


Рисунок 2. Примерная разметка поля

2.2. Характеристики поля


2.3. Требования к элементам поля

2.3.1. На период проведения соревнований стандарт материалов, оборудований и полей, используемых для соревнований, устанавливается организационным комитетом.
2.3.2. Поле состоит из основания с бортиками, с внутренними размерами 1200×2400 мм (Рис. 2).
2.3.3. Лабиринт составляется из секций размером 300×300 мм двух типов: со стенкой и без стенки (Рис. 3).


Рисунок 3. Секции для поля

2.3.4. Стенки лабиринта высотой 150 мм и толщиной 16 мм (Рис. 3).
2.3.5. Секция «Базовый лагерь» обозначена зеленым цветом.
2.3.6. Конечная секция в противоположном конце лабиринта обозначена красным цветом.

3. Робот

3.1. Максимальные размеры робота 250х250х250 мм.
3.2. Во время попытки робот может менять свои размеры, но исключительно без вмешательства человека.
3.3. Робот должен быть автономным.
3.4. Робот, по мнению судей, как либо повреждающий покрытие поля, будет дисквалифицирован на всё время состязаний.

4. Проведение Соревнований

4.1. Подготовительный этап

4.1.1. Соревнования состоят не менее чем из двух раундов (точное число определяется оргкомитетом).
4.1.2. Каждый раунд состоит из серии попыток всех роботов, допущенных к соревнованиям.
4.1.3. Каждый раунд проводится после соответствующего периода отладки.
4.1.4. Команды могут настраивать своего робота в течение периода отладки.
4.1.5. До начала раунда команды должны поместить своих роботов в область «карантина». После подтверждения судьи, что роботы соответствуют всем требованиям, соревнования могут быть начаты.
4.1.6. Перед каждым раундом после периода отладки объявляется вариант расположения стенок лабиринта.
4.1.7. Объявленный вариант используется для всех команд в течение всего раунда. В каждом раунде конфигурация поля может меняться, но длина кратчайшего пути в лабиринте будет неизменна в течение всего периода проведения состязания.
4.1.8. Робот, отсутствующий в зоне карантина после окончания времени отладки не будет допущен к соответствующему раунду.
4.1.9. Если при осмотре будет найдено нарушение в конструкции робота, то судья дает 3 минуты на устранение нарушения. Если нарушение не будет устранено в течение этого времени, команда не сможет участвовать в состязании.
4.1.10. После помещения робота в «карантин» нельзя модифицировать или менять роботов (например: загрузить программу, поменять батарейки) до конца раунда.

4.2. Период «Перед попыткой»

4.2.1. Перед началом попытки робот выставляется в зоне «Базовый лагерь» так, чтобы все касающиеся поля части робота находились внутри этой зоны (Рис. 1, зеленая клетка), затем включает робота и выбирает программу.
4.2.2. По команде судьи отдаётся сигнал на старт, при этом оператор должен запустить робота. Сигналом для начала и завершения попытки является свисток судьи.

4.3. Период «Во время попытки»

4.3.1. Максимальная длительность попытки – 2 мин.
4.3.2. Робот может менять свои размеры, но исключительно без участия человека.
4.3.3. Дистанционное управление роботом запрещено.
4.3.4. Манипуляции участников, влияющие на работу робота на поле, запрещены.
4.3.5. Попытка завершается в следующих случаях:

  1. Задание полностью выполнено;
  2. Робот полностью покинул поле;
  3. Участник команды громко сказал «СТОП» и поднял руку;
  4. Истекло максимальное время для попытки (2 мин.);
  5. Робот предпринял попытку преодолеть стенку лабиринта сверху;
  6. Во время попытки участник команды коснулся поля или робота.

4.4. Период «После попытки»

4.1.1. По завершению попытки команда получит очки, заработанные до этого момента.
4.1.2. По завершении попытки участник должен остановить робота вручную по разрешению судьи.
4.1.3. По завершении попытки судья фиксирует в протоколе время, результат выполнения задания роботом и возможные нарушения.
4.1.4. Задание считается полностью выполненным, как только все части робота, соприкасающиеся с поверхностью поля, полностью оказались в зоне «Базовый лагерь».

5. Судейство

5.1. Оргкомитет оставляют за собой право вносить в правила состязаний любые изменения, если эти изменения не дают преимуществ одной из команд.
5.2. Контроль и подведение итогов осуществляется судейской коллегией в соответствии с приведенными правилами.
5.3. Судьи обладают всеми полномочиями на протяжении всех состязаний; все участники должны подчиняться их решениям.
5.4. Судья может использовать дополнительные заезды для разъяснения спорных ситуаций.
5.5. Переигровка может быть проведена по решению судей в случае, если робот не смог закончить этап из-за постороннего вмешательства, либо когда неисправность возникла по причине плохого состояния игрового поля, либо из-за ошибки, допущенной судейской коллегией.
5.6. Члены команды и руководитель не должны вмешиваться в действия робота своей команды или робота соперника ни физически, ни на расстоянии. Вмешательство ведет к немедленной дисквалификации.
5.7. Судья может закончить состязание по собственному усмотрению, если робот не сможет продолжить движение в течение 20 секунд.

6. Правила отбора победителя


Рисунок 4. Пример подсчета очков

6.1. Если робот ПОЛНОСТЬЮ побывал в секции, находящейся на кратчайшем пути, то он заработает 1 балл (вне зависимости от того, на какой секции робот завершил попытку).
6.2. Робот побывал в секции ПОЛНОСТЬЮ, если все его части, соприкасающиеся с поверхностью поля, одновременно коснулись поверхности секции.
6.3. Максимальный балл равен количеству секций, находящихся на кратчайшем пути. В примере на Рис. 4 кратчайший путь состоит из 22 секций, значит, максимальный балл равен: 22.
6.4. Если робот не достиг конечной секции (красная клетка), то очки в попытке даются за количество полностью пройденных секций на кратчайшем пути в направлении конечной секции (красная клетка). В примере на Рис. 4 робот полностью преодолел 13 секций на кратчайшем пути, значит, он заработает 13 баллов из 22 возможных.
6.5. При ранжировании учитывается результат попытки с самым большим числом очков из всех попыток (не сумма). Если команды имеют одинаковое число очков, то будет учитываться время, потребовавшееся команде для завершения лучшей попытки.

7. Дополнения

Оргкомитет оставляет за собой право вносить в правила состязаний любые изменения, если эти изменения не дают преимуществ одной из команд.

Читайте также: