Лабиринт. Подпрограммы

Содержание

Слайд 2

Лабиринт

Нарисуйте лабиринт в 2D модели. Включите сетку, чтобы рисовать стены под прямым

Лабиринт Нарисуйте лабиринт в 2D модели. Включите сетку, чтобы рисовать стены под
углом. Размер сетки минимальный

Характеристики лабиринта:
Лабиринт не должен иметь замкнутых пространств
Одно поле лабиринта 2 на 3 клетки
Высота лабиринта 4 поля
Ширина лабиринта 5 полей
Старт отмечен синим маркером
Финиш отмечен красным маркером

Задача: есть лабиринт, известна карта с точкой заброса робота и конечной точкой. Необходимо запрограммировать робота на перемещение в конечную точку

образец

Слайд 3

Лабиринт

Декомпозиция задачи: разбить движение на элементарные действия (движение вперед, плавные повороты и

Лабиринт Декомпозиция задачи: разбить движение на элементарные действия (движение вперед, плавные повороты
т.д)

Составление программы

Выделение повторяющихся действий и составление подпрограммы

Слайд 4

Лабиринт

Вытащите первый блок «Подпрограмма» на сцену

Назовите её «Вперед». Блок подпрограммы появится в

Лабиринт Вытащите первый блок «Подпрограмма» на сцену Назовите её «Вперед». Блок подпрограммы
палитре

Двойным щелчком по подпрограмме перейдем к диаграмме её алгоритма

Слайд 5

Лабиринт


Поле лабиринта в 2D модели 3 на 3 клетки. Составьте алгоритм для

Лабиринт Поле лабиринта в 2D модели 3 на 3 клетки. Составьте алгоритм
движения вперед из поля в поле

У подпрограммы есть своя собственная 2D модель. Чтобы её открыть нужно находится на вкладке подпрограммы

Вернитесь на вкладку основной программы

Слайд 6

Лабиринт


Следующий элемент движения – поворот направо. Создайте новую подпрограмму «Направо»

Разница в

Лабиринт Следующий элемент движения – поворот направо. Создайте новую подпрограмму «Направо» Разница
выполнение этого действия зависит от модели тележки (ведущие колеса спереди или сзади)

Алгоритм:
подъехать вперед (чтобы колеса оказались на центре клетки)
повернуть направо на месте
отъехать назад

Слайд 7

Лабиринт

Аналогично составляется алгоритм для поворота налево

Осталось с помощью подпрограмм построить движение в

Лабиринт Аналогично составляется алгоритм для поворота налево Осталось с помощью подпрограмм построить движение в конечную точку
конечную точку

Слайд 8

Правило правой руки

Задача: есть лабиринт с единственным выходом; необходимо выйти из него

Правило правой руки Задача: есть лабиринт с единственным выходом; необходимо выйти из
используя правило правой руки;
Робот: базовая тележка с двумя датчиками расстояния

Нарисуйте лабиринт в 2D модели аналогичный предыдущей задачи, но с одним выходом

образец

Слайд 9

Правило правой руки

Алгоритм

Есть ли справа стена?

Повернуть направо

Вперед

Начало

Есть ли впереди стена?

Вперед

Повернуть налево

ожидание

нет

нет

да

да

Правило правой руки Алгоритм Есть ли справа стена? Повернуть направо Вперед Начало

Слайд 10

Правило правой руки

Алгоритм в ТРИК Студии

Потребуется подключить два ИК датчика расстояния

Связующим блоком

Правило правой руки Алгоритм в ТРИК Студии Потребуется подключить два ИК датчика
«условия» служит «нулевой таймер»

Следует останавливать моторы в конце каждой подпрограммы

Слайд 11

Задача для самостоятельного решения: реализуйте разгон в течение 3х секунд и торможение

Задача для самостоятельного решения: реализуйте разгон в течение 3х секунд и торможение
в течение 2ух. Каждое действия оформите в виде подпрограмм

Задача

Задача для самостоятельного решения: реализуйте движение по «бублику» с разгоном и торможением в 2D модели и на реальном роботе; используйте ИК датчик