Робот ев3 для лабиринта инструкция по сборке

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

maze_3 maze_2
Описание принципа работы

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

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

Обновлено: 29 нояб. 2020 г.

На этот раз я расскажу о роботе LEGO EV3, проходящем лабиринт ТУДА-ОБРАТНО.

Инструкцию по его сборке можно скачать по ссылке в описании. И хотя последовательность сборки, которую генерирует программа Lego Digital Disigner можно назвать странной, но, как видно, робот не очень сложный и даже с такой инструкцией собрать его не вызовет проблем.

Чтоб ещё было понятней ниже 2 фото с видом сверху и снизу.

Вид сверху с откинутым блоком EV3:

Вид снизу:

Задачу прохождения лабиринта ТУДА-ОБРАТНО можно разбить на три этапа:

  1. Прохождение роботом лабиринта ТУДА, то есть от клетки «старт» до клетки «финиш».

  2. Анализ пройденного пути и вычисление оптимального (кратчайшего) пути ОБРАТНО.

  3. По вычисленному пути ОБРАТНО возвращение робота в клетку «старт».

Прохождение роботом лабиринта ТУДА

Для прохождения роботом лабиринта ТУДА воспользуемся известным правилом правой руки.

Смысл этого правила – робот всегда должен держаться правой стены.

  1. Если справа стена, а впереди свободно – делаем шаг вперёд (в нашем случае шаг равен длине стороны клетки лабиринта, то есть 30 см).

  2. Если справа стены нет – поворачиваем направо и делаем шаг вперёд.

  3. Если справа стена и впереди стена – поворачиваем налево и делаем шаг вперёд. При этом полного шага вперёд может и не получиться, и робот наткнётся впереди на стену. Это случится, если робот дошёл до конца тупика. Тогда ещё раз поворачиваем налево и делаем шаг вперёд.

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

Но в реальности получается не всё так гладко.

Мы должны держаться правой стены – то есть всё время контролировать расстояние до стены. При этом робот делает неизбежные небольшие отклонения по курсу. Пройти шаг ровно 30 см тоже не всегда удаётся из-за того, что правое и левое колёса хотя немного, но отличаются и по трению, и по размещению на оси и т.д. По этой же причине мы не можем повернуть ровно на 90 градусов при повороте налево или направо. То есть постоянно имеет место небольшая ошибка, которая с течением времени накапливается, и в конце концов наш робот неизбежно собьётся с пути – или наедет на стену, или сделает лишние повороты и т.д.

Чтобы избежать этого мы должны обязательно как-то позиционировать робот посередине клетки и как-то подправлять его угловое положение.

Во-первых, при движении прямо вдоль стены мы должны контролировать расстояние до правой стены в 7 см – этим мы всегда придерживаемся линии, проходящей примерно посередине клеток.

Во вторых, встретив стену прямо, мы упираемся в неё и не сразу отключаем моторы, а через пол секунды. Тем самым мы выравниваем робота перпендикулярно стене, то есть выравниваем его угловое положение. Далее отъезжаем назад на середину клетки и поворачиваем налево. При этом происходит сброс длины шага. Тем самым исключаем нарастающую ошибку по длине шага.

В третьих, если в результате поворотов мы всё же отклонимся от стены более чем на 10 см, то поворачиваемся направо к этой стене, упираемся в неё, выравниваем робота перпендикулярно этой стене, отъезжаем назад на середину клетки и поворачиваем налево.

Благодаря этим трём приёмам, нашему роботу всё же удаётся добраться до клетки финиша.

Анализ пройденного пути и вычисление оптимального (кратчайшего) пути ОБРАТНО.

При прохождении лабиринта ТУДА, робот движется по клеткам, делая всего три типа движения:

  1. Налево

  2. Прямо

  3. Направо

Движения назад при корректировке положения не считаются информативными и в зачёт не идут.

Разворот робота – это два поворота налево подряд.

И каждое такое движение мы должны записывать в массив на всём пути ТУДА:

  1. При повороте налево в массив записывается значение (-1).

  2. При движении прямо на один шаг в массив записывается значение 0.

  3. При повороте направо в массив записывается значение 1.

Пройдя до конца лабиринта, в массиве будут записаны все ходы нашего робота.

Итак, пройдя до конца этот лабиринт, робот записал в массив следующую последовательность ходов:

0, 0, 0, -1, -1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 1, 0, -1, -1, 0, -1, 0, -1, 0, 0, 1, 0, 1, 0, 0, -1, -1, 0, 0, 1, 0, 1, 0

В этом лабиринте три тупика в клетках A5, B4 и A2.

В массиве, который записал робот, мы видим три пары (-1)(-1).

0, 0, 0, -1, -1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 1, 0, -1, -1, 0, -1, 0, -1, 0, 0, 1, 0, 1, 0, 0, -1, -1, 0, 0, 1, 0, 1, 0

Именно здесь робот делал два подряд поворота налево. Это и есть разворот в конце тупика.

Рассмотрим ходы робота при прохождении тупика №1:

0, 0, 0, -1, -1, 0, 0, 1

Пара -1, -1 соответствует тупику в клетке А5.

Смотрим команды слева и справа от этой пары и попарно их складываем. Видно, что на всём протяжении тупика сумма равноудалённых от тупика ходов равна нулю:

Пара, сумма значений ходов которой > 0, и является выходом из тупика и соответствует клетке С5.

В данном случае на выходе из тупика сумма Σ = 1.

Давайте рассмотрим ходы робота при прохождении тупика №2:

1, 0, 0, 1, 0, 1, 0, -1, -1, 0, -1, 0, -1, 0, 0, 1

Этот тупик гораздо длиннее, но и для него попарная сумма значений ходов на всём протяжении тупика =0.

И пара, сумма значений ходов которой > 0, и является выходом из тупика и соответствует клетке С3.

В данном случае на выходе из тупика сумма Σ = 2.

В результате видно, что тупики бывают двух видов:

1. Тупик остаётся прямо, нам же перед тупиком надо повернуть налево. Сумма на выходе из тупика Σ = 1.

2. Заход в тупик с поворотом направо, нам же надо двигаться прямо, оставив тупик справа. Сумма на выходе из тупика Σ = 2.

Исходя из этого, сформулируем два правила сокращения тупиковых веток.

  1. Если на выходе из тупика попарная сумма ходов Σ = 1, то есть для этого случая крайняя пара может быть вида (1+0) или (0+1). Тогда правило для этого случая:

Все пары ходов, сумма которых Σ < 1, из массива удаляются.

В крайней паре (1+0) или (0+1) значение 1 заменяется на -1.

Сама изменённая крайняя пара не удаляется.

2. Если на выходе из тупика попарная сумма ходов Σ = 2, то есть для этого случая крайняя пара может быть вида только (1+1). Тогда правило для этого случая:

Все пары ходов, сумма которых Σ < 1, из массива удаляются.

Сама крайняя пара (1+1) также удаляется.

По этим правилам теперь можно составить алгоритм программы оптимизации пути «ОБРАТНО», или удаления тупиковых ответвлений, и по этому алгоритму написать программу для нашего LEGO-робота.

Тут может возникнуть вопрос, а почему после удаления тупика программа начинает проверять путь опять с начала массива (index = 1), а не продолжает с того места, до которого уже дошла. Тогда вроде как можно бы было за один проход удалить все тупики.

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

Но даже в таком простом лабиринте 5х4 можно разместить тупик в тупике, то есть разветвляющиеся тупики.

В таком тупике розовые клетки остаются несокращёнными. То есть путь до разветвления тупиков не удаляется.

Если же после удаления тупика 1,

мы начнём проверять массив с первого (правильнее нулевого) индекса, то ко второму проходу программы после удаления тупика 1 розовые клетки станут частью тупика 2 и поэтому удалятся при оптимизации пути.

А ведь вложенность тупиков может быть и больше двух, то есть тупик в тупике в тупике и т.д.

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

Путь ОБРАТНО: возвращение робота в клетку «старт».

На пути «ОБРАТНО» правило правой руки отменяется.

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

Робот считывает этот массив, начиная с последнего элемента и до нулевого, и выполняет записанные в нём команды.

Ход (-1) теперь это поворот направо, ход 1 – поворот налево, ход 0 – остаётся ходом прямо.

При движении «ОБРАТНО» робот также контролирует расстояние до правой стены, и также если это расстояние превысит 10см поворачивается направо, упирается в стену, отъезжает на середину клетки и поворачивается налево.

▼Инструкция по сборке робота ▼

▼Программа labirint.ev3▼

▼Блок-схема алгоритма оптимизации массива пройденного пути▼

Introduction: AI in LEGO EV3 Maze-Driving Robot

This is a simple, autonomous robot with some artificial intelligence. It is designed to explore a maze and when placed back at the entrance, to drive thru to the exit and avoid the dead ends. It is much more complicated than my previous project, which simply drove thru the maze. Here, the robot must remember the path it has travelled, remove dead-ends, store the new path, and then follow the new path.

My previous robot is described here: https://www.instructables.com/id/LEGO-Robot-Drives-Thru-a-Maze

The robot is built using LEGO Mindstorms EV3. The EV3 Software runs on a computer and generates a program, which is then downloaded to a microcontroller called an EV3 Brick. The programming method is icon-based and high-level. It’s very easy and versatile.

Supplies

PARTS

  1. LEGO Mindstorms EV3 set
  2. LEGO Mindstorms EV3 ultrasonic sensor. It’s not included in the EV3 set.
  3. Corrugated cardboard for the maze. Two cartons should be sufficient.
  4. A small piece of thin cardboard to help stabilize some corners and walls.
  5. Glue and tape to connect cardboard pieces together.
  6. A red greeting-card envelope to identify the exit of the maze.

TOOLS

  1. Utility knife to cut the cardboard.
  2. Steel ruler to aid the cutting process.

SOFTWARE

The program is here: https://github.com/Tony-file/myEV3maze

Step 1: How a Maze Is Solved

MAZE-DRIVING METHOD

There are several methods of navigating a maze. If you are interested in studying them, they are described very well in the following Wikipedia article: https://en.wikipedia.org/wiki/Maze_solving_algorithm

I chose the left-hand wall-following method. The idea is that the robot will keep a wall on its left side by making the following decisions as it goes thru the maze:

  1. If it’s possible to turn left, do so.
  2. Otherwise, go straight if possible.
  3. If it can’t go left or straight, turn right, if possible.
  4. If none of the above are possible, this must be a dead end. Turn around.

One caution is that the method could fail if the maze has a loop in it. Depending on the placement of the loop, the robot could keep going around and around the loop. A possible solution for this problem would be for the robot to switch to the right-hand wall-follower rule if it realized that it was going in a loop. I didn’t include this refinement in my project.

SOLVING THE MAZE TO FIND A DIRECT PATH

While driving thru the maze the robot must memorize the path it is travelling and eliminate dead-ends. It accomplishes this by storing each turn and intersection in an array, checking for specific combinations of turns and intersections as it goes, and replacing the combinations that include a dead-end. The final list of turns and intersections is the direct path thru the maze.

The possible turns are: Left, Right, Back (at a dead-end), and Straight (which is an intersection).

Combinations are replaced as follows:

  • «Left, Back, Left» becomes «Straight.»
  • «Left, Back, Right» becomes «Back.»
  • «Left, Back, Straight» becomes «Right.»
  • «Right, Back, Left» becomes «Back.»
  • «Straight, Back, Left» becomes «Right.»
  • «Straight, Back, Straight» becomes «Back.»

HOW THE ROBOT HANDLES MY MAZE

  1. When the robot starts driving it sees a space to the right and stores Straight in the list in the array.
  2. Then it turns left and adds Left to the list. The list now contains: Straight, Left.
  3. With a dead end, it turns around and adds Back to the list. The list now contains: Straight, Left, Back.
  4. Passing the lane it used from the entrance, it adds Straight to the list. The list now contains: Straight, Left, Back, Straight. It recognizes a combination and changes Left, Back, Straight to Right. The list now contains Straight, Right.
  5. With a dead end, it turns around and adds Back to the list. The list now contains: Straight, Right, Back.
  6. After the left turn the list contains Straight, Right, Back, Left. It recognizes a combination and changes Right, Back, Left to Back. The list now contains Straight, Back.
  7. After the next left turn the list contains Straight, Back, Left. It changes that combination to Right. The list now contains only Right.
  8. It passes a space and adds Straight to the list. The list now contains Right, Straight.
  9. After the right turn the list contains Right, Straight, Right which is the direct path.

Step 2: Considerations When Programming the Robot

CONSIDERATIONS FOR ANY MICROCONTROLLER

When the robot decides to turn it should either make a wide turn, or go forward a short distance before turning and after turning go forward a short distance again without checking the sensor. The reason for the first short distance is that the robot shouldn’t bump into the wall after the turn, and the reason for the second short distance is that after the robot has turned, the sensor would see the long space it had just come from, and the robot would think it should turn again, which is not the proper thing to do.

When the robot senses an intersection on the right but it’s not a right turn, I have found that it’s good to have the robot drive forward about 10 inches (25 cm) without checking its sensors.

CONSIDERATIONS SPECIFIC TO LEGO MINDSTORMS EV3

Although LEGO Mindstorms EV3 is very versatile, it allows no more than one of each type of sensor connected to one Brick. Two or more Bricks could be daisy-chained, but I didn’t want to buy another Brick, and so I used the following sensors (instead of three ultrasonic sensors): infrared sensor, color sensor, and ultrasonic sensor. This worked out well.

But the color sensor has a very short range, of about 2 inches (5 cm), which leads to a few special considerations as described below:

  1. When the color sensor detects a wall in front and the robot decides to turn right or turn around, it should back up first, in order to give itself enough space to turn without bumping into the wall.
  2. A complicated issue occurs with some “Straight” intersections. Because of the short range of the color sensor, the robot cannot determine whether it senses a proper “Straight” intersection or the lead-up to a right turn. I have tried to fix this issue by setting the program to store a “Straight” in the list every time the robot senses one, and then eliminate more than one “Straight” in a row in the list. This fixes the situation where a right turn follows a “Straight” in the maze but not the situation where there is a right turn without a “Straight” before it. I also tried setting the program to eliminate a “Straight” if it is just before a “Right” but this doesn’t work if a right turn follows a “Straight”. I haven’t been able to find a solution that fits all cases, altho I suppose it would be possible for the robot to look at the distance travelled (by reading the motor rotation sensors) and decide whether it’s a “Straight” or a right turn. I didn’t think this complication was worth doing for the purposes of demonstrating the AI concept in this project.
  3. An advantage of the color sensor is that it distinguishes between the brown of a wall and the red of the barrier I used at the exit, and provides an easy way for the robot to decide when it has finished the maze.

Step 3: The Main Program

LEGO Mindstorms EV3 has a very convenient icon-based programming method. Blocks are shown at the bottom of the display screen on the computer and can be drag-and-dropped into the programming window to build a program. The EV3 Brick may be connected to the computer by either a USB cable, Wi-Fi or Bluetooth, and the program may then be downloaded from the computer to the Brick.

The program consists of a main program and several “My Blocks” which are subroutines. The uploaded file contains the entire program, which is here: https://github.com/Tony-file/myEV3maze

The steps in the main program are as follows:

  1. Define and initialize the turn-counting variable and the array.
  2. Wait 5 seconds and say “Go.”
  3. Start a loop.
  4. Drive thru the maze. When the exit is reached, the loop is exited.
  5. Display on the Brick’s screen, the intersections found in the maze so far.
  6. Check if the path should be shortened.
  7. Display the intersections in the shortened path.
  8. Loop back to step 4.
  9. After the loop, drive the direct path.

The screen shot shows this main program.

Step 4: The My Blocks (Subroutines)

The Navigate My Block, which controls how the robot drives thru the maze, is shown. The print is very small and may not be legible. But it’s a good example of how versatile and powerful are the if-statements (called Switches in the LEGO EV3 system).

  1. Arrow #1 points to a Switch that checks if the infrared sensor sees an object more than a specific distance away. If so, the top series of blocks is executed. If not, then control is passed to the large, bottom series of blocks, where arrow #2 is located.
  2. Arrow #2 points to a Switch that checks what color the color sensor sees. There are 3 cases: no color at the top, red in the middle, and brown at the bottom.
  3. Two arrows #3 point to Switches that check if the ultrasonic sensor sees an object more than a specific distance away. If so, the top series of blocks is executed. If not, then control is passed to the bottom series of blocks.

The My Blocks for shortening the path and for driving the direct path are more complicated and would be totally illegible, and so they aren’t included in this document.

Step 5: Starting to Build the Robot: the Base

As mentioned previously, LEGO Mindstorms EV3 allows no more than one of each type of sensor connected to one Brick. I used the following sensors (instead of three ultrasonic sensors): infrared sensor, color sensor, and ultrasonic sensor.

The pairs of photos below show how to build the robot. The first photo of each pair shows the parts needed, and the second photo shows the same parts connected together.

The first step is to build the base of the robot, using the parts shown. The robot base is shown upside-down. The small L-shaped part at the back of the robot is a support for the back. It slides as the robot moves. This works okay. The EV3 kit doesn’t have a rolling-ball-type part.

Step 6: Top of the Base, 1

ThIs step and the next 2 steps are for the top of the base of the robot, the color sensor, and the cables, which are all 10 inch (26 cm) cables.

Step 7: Top of the Base, 2

Step 8: Top of the Base, 3

Step 9: Infrared and Ultrasonic Sensors

Next, are the infrared sensor (on the left side of the robot) and the ultrasonic sensor (on the right). Also, the 4 pins for attaching the Brick on top.

The infrared and ultrasonic sensors are located vertically instead of the normal horizontal. This provides better identification of the corners or ends of the walls.

Step 10: Cables

The cables connect to the Brick as follows:

  • Port B: left large motor.
  • Port C: right large motor.
  • Port 2: ultrasonic sensor.
  • Port 3: color sensor.
  • Port 4: infrared sensor.

Step 11: Final Step in Building the Robot: Decoration

The wings and fins are only for decoration.

Step 12: Build a Maze

Two corrugated cardboard cartons should be sufficient for the maze. I made the maze walls 5 inches (12.5 cm) high, but 4 inches (10 cm) should work just as well if you’re short of corrugated cardboard.

First, I cut around the walls of the cartons, 10 inches (25 cm) from the bottom. Then I cut around the walls 5 inches from the bottom. This provides several 5-inch walls. Also, I cut around the bottoms of the cartons, leaving about 1 inch (2.5 cm) attached to the walls for stability.

The various pieces can be cut and glued or taped wherever needed to form the maze. There should be an 11 or 12 inch (30 cm) space between the side walls in any path with a dead end. The length should be no less than 10 inches (25 cm). These distances are needed for the robot to turn around.

Some of the corners of the maze may need to be reinforced, Also, some straight walls need to be kept from bending if they include a straightened carton corner. Small pieces of thin cardboard should be glued to the bottom at those places, as shown.

The exit has a red barrier consisting of half a red greeting-card envelope and a base made from 2 pieces of thin cardboard, as shown.

Step 13: The Maze

One caution is that the maze should not be large. If the robot’s turns are at a slight angle from the proper one, the discrepancies add up after a few turns and the robot could run into the walls. I had to fiddle several times with the Rotations settings of the turns in order to get a successful drive thru even the small maze I made.

A way around that issue is to include a path-straightening routine that would keep the robot a specific distance from the left wall. I didn’t include this. The program is complicated enough as it is, and it is sufficient for demonstrating the AI concept in this project.

CONCLUDING REMARK

This was a fun project and a great learning experience. I hope you also find it interesting.

Обновлено: 16.07.2023

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

Lego Mindstorms EV3 следование линии

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

LEGO MINDSTORMS EV3 датчик касания и света

LEGO MINDSTORMS EV3 датчик касания и света Для начала нужно заставить нашего робота двигаться, для этого создадим блок с движением по параметрам 30-30. Сложно разобраться с этим? С нами легко, смотри здесь! Так как мы будем работать с датчиком касания нам требуется установить его . Устанавливать его мы будем из блока Flow control, проще говоря, …

LEGO MINDSTORMS EV3. Очищение от мусора

LEGO MINDSTORMS EV3 Очищение от мусора Сенсорное видение грани. Использование датчика света в робототехнике. Режим » Яркость отраженного света«. На данном уроке мы научимся использовать датчик света робота на примере очищения какой-либо территории от иных объектов. Предположим, нам дана территория и поставлена задача: очистить местность внутри этой территории от чужих объектов (мусор, грязь, бесполезные предметы …

Lego Mindstorms EV3 Сенсорное видение грани

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

LEGO MINDSTORMS EV3 сенсорные движения

LEGO MINDSTORMS EV3 сенсорные движения. Урок 3. Сенсорные движения.( Датчик расстояния. Ультразвуковой датчик) Сегодня на уроке мы научимся составлять блок для робототехники в приложении «LEGO MINDSTORMS EV3». Его задачей будет, то что робот должен остановившись перед преградой, повернуть и продолжить путь. И так бесконечно. Главное значение ультразвукового датчика, это определение расстояния до предметов, находящихся …

Lego Mindstorms EV3 Повороты

Lego Mindstorms EV3 Повороты. В этом уроке мы научимся делать повороты.  Сначала откроем программу LEGO MINDSTORMS EV3 Home Edition. Для работы построим модель из блоков. Каждый блок имеет свое название и имеет свои функции. Для поворота робота нам достаточно зеленого блока или блока «Action». 1) Выбираем 1 Display, 1 Sound, 5 Move Tank, 1 …

LEGO MINDSTORMS EV3 сборка робота

LEGO MINDSTORMS EV3 сборка робота. Инструкции по сборке для моделей из Базового набора. Базовый набор LEGO MINDSTORMS Education EV3. Част 1 Част 2  Смотрите также:

LEGO MINDSTORMS EV3 Движение

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

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

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

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

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

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

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

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

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

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

лабиринт

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

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

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

Стих: Робот (Алекс Воланд) » Стихотворения про роботов

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

500
500
500
500
500
500
500
500
500

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

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

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

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

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

maze_1

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

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

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

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

Сначала откроем программу 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

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

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

      

  • Лего star wars комплект сага
  •   

  • Главный конструктор нап глонасс
  •   

  • Лучшие наборы лего звездные войны за всю историю
  •   

  • Лего сити 60101 инструкция
  •   

  • Как строить автомат из лего

На этой странице собраны инструкции по сборке роботов или механизмов из стартового образовательного набора LEGO MINDSTORMS Education EV3 (45544). Кроме инструкций вы найдёте здесь видео, показывающие возможности собранных моделей, и демонстрационные программы. Для некоторых моделей даны рекомендации, с помощью каких приложений можно дистанционно управлять роботами и как настраивать эти приложения.

Стартовый набор LEGO Mindstorms EV3

Пушка EV3

Имея под рукой образовательный набор LEGO Mindstorms EV3 (45544) и шарики для пинг-понга вполне можно собрать пушку, стреляющую шариками. Пушкой можно управлять со смартфона с помощью приложения RoboCam.

Робот с большими картонными колёсами

Если вы горите желанием сделать робота с большими колёсами из образовательного набора LEGO Mindstorms EV3 (45544), но у вас нет таких колёс, не расстраивайтесь. Вы можете изготовить их самостоятельно из толстого гофрированного картона. Как сделать робота с большими картонными колёсами, чтобы колёса нормально крутились и не отваливались, я предлагаю вам прочитать в этой статье.

Робот-художник EV3 Print3rbot

Мне очень понравился проект робота-художника EV3 Print3rbot, в котором, к сожалению, используются нестандартные детали, которые нужно печатать на 3D-принтере. Я решил собрать такого же робота, но используя детали только из образовательного набора LEGO Mindstorms EV3 (45544). И у меня это получилось, правда, пришлось добавить ещё резинок.

Управление роботом LEGO Mindstorms EV3 от первого лица

Роботом, собранным из конструктора LEGO Mindstorms EV3, вы легко можете управлять дистанционно от первого лица. Для этого вам дополнительно понадобится два смартфона, с установленным приложением RoboCam на один из них. Давайте познакомимся подробнее с приложением RoboCam и научимся им пользоваться.

Обнаружение лица на EV3

Используя конструктор LEGO MINDSTORMS EV3 и веб-камеру, вы сможете провести эксперимент по обнаружению лиц в помещении. Для эксперимента подойдёт любой колёсный робот EV3, который умеет вращаться на месте, и на который вы сможете закрепить веб камеру. Робот будет сканировать помещение, поворачиваясь вокруг, а, увидев лица, будет останавливаться и дёргаться столько раз, сколько лиц увидел.

Слежение за объектом на EV3

С помощью веб-камеры и образовательного набора конструктора LEGO MINDSTORMS Education EV3 (45544) вполне можно сделать робота, отслеживающего двигающийся объект. Робот сможет не только поворачивать камеру в сторону объекта, но и выдерживать определённую дистанцию до него, т.е. подъехать поближе, если объект удаляется от камеры, или отъехать подальше, если объект приближается. О том, как это сделать поговорим в этой статье.

Гимнаст EV3

Гимнаста выполняющего различные упражнения на турнике сделать достаточно просто, если у вас есть образовательный конструктор LEGO MINDSTORMS Education EV3 (45544). Я научил гимнаста выполнять три упражнения, а вы можете научить его и другим различным трюкам.

Гоночная машина формула 1 EV3

Гоночную машину, имитирующую болид формулы 1, можно сделать с помощью образовательного набора LEGO MINDSTORMS Education EV3 (45544). В машине сидит водитель и держится за руль. Машина дистанционно управляется с Android-смартфона.

Мойщик пола LEGO EV3

Робот мойщик пола передвигается за счёт поворотов двух дисков параллельно полу. С помощью резинок на диски можно закрепить смоченные моющим раствором тряпки и тогда ваш пол станет немного чище.

Робот с клешнёй LEGO EV3

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

Селеноход из конструктора LEGO EV3

Селеноход – это луноход, созданный российской командой для участия в конкурсе Google Lunar X PRIZE. В настоящий момент проект закрыт, но интересная конструкция с не менее интересной системой передвижения по лунной поверхности остались. С помощью стартового образовательного набора LEGO MINDSTORMS Education EV3 (45544) возможно собрать модель Селенохода, который будет передвигаться по такому же принципу и так же поднимать и опускать «голову».

Собираем часы со стрелками из конструктора LEGO EV3

В базовом образовательном наборе LEGO Mindstorms Education EV3 (45544) оказалось достаточно шестерёнок и других деталей, чтобы собрать часы с часовой и минутной стрелками. Кроме того, что часы точно отображают время, они издают звуковой сигнал каждый час.

Приводная платформа EV3 на гусеничном ходу

В образовательном наборе конструктора Mindstorms Education EV3 всё обучение робототехники в классе ведётся с помощью приводной платформы, на колёсном ходу. Мне же захотелось сделать точно такую же платформу, чтобы на неё точно также можно было установить все датчики, но только, чтобы она передвигалась с помощью гусениц.

Понравилась статья? Поделить с друзьями:
  • Робот мойщик окон mamibot w110 t инструкция по эксплуатации
  • Робот для чистки стекла hobot 188 инструкция по применению
  • Робот для сумо ev3 инструкция по сборке как собрать
  • Робот для мытья окон puruikai инструкция
  • Робот для мойки окон chovery инструкция