Практическая работа «Составление цепочки команд»
Модуль: Алгоритмизация и программирование робототехнических систем
Тема урока: Практическая работа «Составление цепочки команд»
Цель урока: Сформировать практические навыки разработки алгоритмов с использованием циклических структур для решения робототехнических задач управления повторяющимися действиями.
Планируемые результаты:
Предметные:
- Знать основные принципы построения алгоритмов с циклическими структурами
- Уметь составлять алгоритмы для управления роботом с использованием циклов
- Применять оптимальные циклические структуры в зависимости от поставленной задачи
- Программировать робота для выполнения повторяющихся действий по заданному маршруту
Метапредметные:
- Регулятивные УУД: умение планировать последовательность действий, контролировать и корректировать работу алгоритма
- Познавательные УУД: развитие алгоритмического мышления, поиск оптимальных решений задач
- Коммуникативные УУД: умение работать в команде над созданием и отладкой программы
Личностные:
- Развитие логического мышления и творческого подхода к решению задач
- Формирование интереса к техническому творчеству и программированию
- Воспитание точности и аккуратности в работе с алгоритмическими структурами
Задачи урока:
- Актуализировать знания о циклических структурах и их применении
- Научить анализировать задачи и выбирать оптимальные циклические конструкции
- Сформировать навыки разработки последовательностей команд с использованием циклов
- Организовать практическую работу по созданию программ для управления роботом
- Развить умения отладки и оптимизации алгоритмов
Тип урока: Практическая работа с элементами исследования
Учебно-методическое и материально-техническое обеспечение:
- Робототехнические наборы (LEGO Mindstorms EV3/SPIKE Prime, Arduino или аналоги)
- Компьютеры с установленной средой программирования
- Проектор и интерактивная доска для демонстрации
- Карточки с заданиями различного уровня сложности
- Полигоны для испытания роботов (поля с разметкой маршрутов)
- Инструкционные карты по использованию циклических структур
- Презентация с примерами алгоритмов и их визуализацией
Образовательные технологии: Проблемное обучение, личностно-ориентированное обучение, практико-ориентированное обучение, работа в малых группах
Межпредметные связи:
- Информатика: алгоритмизация, последовательное выполнение команд, циклические конструкции
- Математика: логика построения последовательностей действий, оптимизация алгоритмов, итерационные процессы
- Физика: движение объектов по заданным траекториям, расчет скорости и времени
Этап урока | Деятельность учителя | Деятельность ученика | Планируемые результаты предметные | Планируемые результаты УУД |
---|---|---|---|---|
1. Организационный момент (2 мин) | Приветствует учащихся, проверяет готовность к уроку, организует рабочие группы по 2-3 человека. | Готовятся к уроку, занимают рабочие места, проверяют наличие необходимых материалов. | Регулятивные: самоорганизация, настрой на работу | |
2. Актуализация знаний (5 мин) | Проводит краткий фронтальный опрос: - Какие виды циклов вы знаете? - В каких случаях целесообразно использовать цикл с предусловием, а в каких - с постусловием? - Как организовать повторение действий заданное число раз? Предлагает решить небольшую задачу на определение типа цикла для конкретной ситуации. |
Отвечают на вопросы, вспоминают изученный материал о циклах. Приводят примеры ситуаций, где применяются разные виды циклов. Решают предложенную задачу, обосновывая свой выбор типа цикла. |
Воспроизведение знаний о видах циклов и их применении. Умение определять подходящий тип цикла для конкретной задачи. |
Познавательные: актуализация имеющихся знаний. Коммуникативные: формулирование ответов на вопросы. |
3. Мотивация и постановка цели (3 мин) | Демонстрирует видеоролик с примерами роботов, выполняющих повторяющиеся действия (следование по маршруту, сортировка объектов, патрулирование территории). Создает проблемную ситуацию: “Как запрограммировать робота, чтобы он выполнял повторяющиеся действия наиболее эффективным способом?" Помогает сформулировать цель практической работы. |
Просматривают видеоматериал. Участвуют в обсуждении проблемной ситуации. Предлагают варианты решения. Формулируют цель практической работы. |
Регулятивные: целеполагание. Познавательные: выявление проблемы и способов ее решения. |
|
4. Инструктаж по выполнению практической работы (10 мин) | Объясняет задания практической работы: 1. Разработать алгоритм движения робота по заданному маршруту с использованием циклических структур 2. Оптимизировать алгоритм, минимизируя количество команд 3. Запрограммировать робота и отладить программу Демонстрирует примеры маршрутов на полигонах и соответствующие им алгоритмы. Разъясняет критерии оценки работы: - Правильность выполнения задания - Оптимальность использования циклов - Работоспособность программы Напоминает правила безопасности при работе с оборудованием. |
Слушают инструкции учителя. Изучают примеры маршрутов и алгоритмов. Задают уточняющие вопросы. Распределяют роли в группах. |
Понимание принципов составления цепочек команд с использованием циклов. Знание критериев оптимальности алгоритма. |
Регулятивные: принятие учебной задачи. Познавательные: анализ образцов решения задач. |
5. Практическая работа: составление алгоритмов (15 мин) | Раздает карточки с заданиями различного уровня сложности. Организует работу групп на этапе составления алгоритмов: - Предлагает сначала разработать блок-схему алгоритма - Обращает внимание на необходимость выявления повторяющихся действий - Консультирует группы, испытывающие затруднения Напоминает о необходимости оптимизации алгоритмов. |
Работают в группах над составлением алгоритмов: - Анализируют задание - Определяют повторяющиеся фрагменты - Выбирают подходящие циклические структуры - Составляют блок-схемы алгоритмов - Обсуждают варианты оптимизации - При необходимости консультируются с учителем |
Умение анализировать задачу и выделять повторяющиеся фрагменты. Навыки составления алгоритмов с использованием циклических структур. |
Познавательные: анализ, синтез, моделирование. Коммуникативные: работа в команде, обсуждение вариантов решения. Регулятивные: планирование деятельности. |
6. Физкультминутка (2 мин) | Проводит короткую физкультминутку с элементами повторяющихся движений, иллюстрирующих принцип циклов. | Выполняют упражнения для снятия напряжения. | Регулятивные: саморегуляция. | |
7. Практическая работа: программирование и отладка (25 мин) | Организует работу групп по программированию и отладке: - Напоминает о синтаксисе циклических конструкций в используемой среде программирования - Обращает внимание на типичные ошибки - Предлагает поэтапное тестирование фрагментов программы - Консультирует по вопросам отладки Организует испытание роботов на полигонах. |
Работают в группах над программированием: - Реализуют составленный алгоритм в среде программирования - Используют циклические структуры - Загружают программу в робота - Тестируют работу программы - Выявляют и исправляют ошибки - Оптимизируют программу при необходимости - Проводят финальные испытания робота на полигоне |
Умение программировать циклические алгоритмы. Навыки отладки программ. Умение оптимизировать программный код. |
Регулятивные: контроль и коррекция деятельности. Познавательные: применение алгоритмического мышления на практике. Личностные: настойчивость в достижении цели. |
8. Представление и анализ результатов (10 мин) | Организует представление результатов работы групп. Предлагает каждой группе продемонстрировать работу своего робота и объяснить использованные циклические конструкции. Задает вопросы для анализа: - Почему выбран именно такой тип цикла? - Какие оптимизации были выполнены? - С какими трудностями столкнулись и как их преодолели? |
Представляют результаты работы: - Демонстрируют работу робота по маршруту - Объясняют структуру алгоритма и использованные циклы - Комментируют процесс оптимизации - Отвечают на вопросы - Анализируют возникшие трудности и способы их решения |
Умение объяснять принципы работы созданного алгоритма. Понимание взаимосвязи между алгоритмом и поведением робота. |
Коммуникативные: представление результатов, аргументация. Познавательные: рефлексия способов деятельности. Личностные: адекватная самооценка. |
9. Сравнительный анализ алгоритмов (5 мин) | Организует обсуждение и сравнение различных решений. Предлагает выявить наиболее оптимальные алгоритмы. Акцентирует внимание на различных подходах к решению одной и той же задачи. Подчеркивает связь с информатикой (оптимизация алгоритмов) и математикой (логика построения последовательностей). |
Участвуют в обсуждении. Сравнивают различные алгоритмы, оценивают их эффективность. Выявляют преимущества и недостатки разных подходов к решению. Делают выводы о наиболее оптимальных способах использования циклических структур. |
Умение анализировать и сравнивать алгоритмы по эффективности. Понимание критериев оптимальности алгоритма. |
Познавательные: сравнение, анализ, синтез, обобщение. Коммуникативные: участие в дискуссии, уважение к мнению других. |
10. Обобщение и систематизация знаний (5 мин) | Систематизирует полученные на уроке знания и умения. Предлагает составить “памятку программиста” по использованию циклов в робототехнике: - Когда использовать цикл с предусловием - Когда использовать цикл с постусловием - Когда использовать счетный цикл - Как избежать бесконечных циклов - Как правильно формулировать условия в циклах |
Участвуют в составлении “памятки программиста”. Предлагают пункты для включения в памятку. Формулируют правила эффективного использования циклов в программировании роботов. |
Систематизация знаний о циклических структурах и их применении в робототехнике. | Познавательные: обобщение, систематизация. Коммуникативные: коллективное составление памятки. |
11. Подведение итогов и рефлексия (5 мин) | Подводит итоги урока. Организует рефлексию по методу “3-2-1”: - 3 вещи, которые узнали или научились делать - 2 вопроса, которые остались - 1 идея для дальнейшего развития Выставляет оценки группам с комментариями. |
Участвуют в рефлексии. Заполняют карточки методом “3-2-1”. Оценивают свою работу на уроке. Формулируют вопросы, которые остались неясными. Предлагают идеи для дальнейшего развития темы. |
Регулятивные: оценка результатов деятельности. Познавательные: рефлексия. Личностные: самооценка и самоанализ. |
|
12. Домашнее задание (3 мин) | Объясняет домашнее задание: 1. Обязательная часть: разработать алгоритм движения робота по более сложному маршруту (предлагается схема) с использованием минимального количества команд 2. Творческая часть (по желанию): придумать и описать робототехническую задачу, которая наиболее эффективно решается с использованием вложенных циклов |
Записывают домашнее задание. Задают уточняющие вопросы. |
Регулятивные: планирование самостоятельной работы. |
Задание: Запрограммировать робота для движения по квадратной траектории. Требования:
- Использовать счетный цикл для повторения 4 раз последовательности “движение вперед + поворот на 90°”
- Сторона квадрата - 50 см
- Скорость движения - средняя
Задание: Запрограммировать робота для движения по маршруту “змейка” с обходом препятствий. Требования:
- Использовать вложенные циклы для перемещения по строкам и столбцам
- Разместить на пути 2-3 препятствия
- Использовать датчик расстояния для обнаружения препятствий
- Реализовать алгоритм обхода препятствий
Задание: Запрограммировать робота для патрулирования территории с посещением контрольных точек. Требования:
- Разработать алгоритм движения по произвольному маршруту с 5-6 контрольными точками
- Использовать цикл с условием для проверки прохождения всех контрольных точек
- В каждой контрольной точке выполнять специальное действие (сигнал, пауза, поворот)
- Оптимизировать маршрут для минимизации времени прохождения
┌───────────┐
│ Начало │
└─────┬─────┘
│
┌─────▼─────┐
│ i = 1 │
└─────┬─────┘
│
┌──▼──┐
┌─►│i ≤ 4?├───Нет───┐
│ └──┬───┘ │
│ │Да │
│ │ │
│┌────▼────┐ │
││Движение │ │
││вперед 50см│ │
│└────┬────┘ │
│ │ │
│┌────▼────┐ │
││ Поворот │ │
││ на 90° │ │
│└────┬────┘ │
│ │ │
│┌────▼────┐ │
││ i = i+1 │ │
│└────┬────┘ │
│ │ │
└─────┘ │
│
┌───────────────────▼┐
│ Конец │
└───────────────────┘
Алгоритм (0-5 баллов):
- Корректность логики алгоритма (0-2)
- Оптимальность использования циклических структур (0-2)
- Наличие комментариев и пояснений (0-1)
Программная реализация (0-5 баллов):
- Работоспособность программы (0-2)
- Оптимальность кода (0-1)
- Отсутствие ошибок (0-1)
- Эффективность использования циклов (0-1)
Практическая реализация (0-5 баллов):
- Точность выполнения роботом заданного маршрута (0-2)
- Плавность движений робота (0-1)
- Скорость выполнения задания (0-1)
- Устойчивость работы программы (0-1)
Защита решения (0-5 баллов):
- Понимание принципов работы алгоритма (0-2)
- Объяснение использованных циклических структур (0-2)
- Ответы на дополнительные вопросы (0-1)
Максимальный балл: 20 Шкала перевода в оценку:
- 18-20 баллов - “5”
- 14-17 баллов - “4”
- 10-13 баллов - “3”
- менее 10 баллов - “2”
-
Выбор типа цикла:
- Цикл с предусловием (WHILE) - когда необходимо проверять условие перед выполнением действий (например, движение до препятствия)
- Цикл с постусловием (DO-WHILE) - когда действие должно быть выполнено хотя бы один раз (например, повороты до обнаружения линии)
- Счетный цикл (FOR) - когда известно точное количество повторений (например, движение по многоугольнику)
-
Предотвращение бесконечных циклов:
- Всегда проверять условие выхода из цикла
- Убедиться, что условие когда-либо станет ложным
- Включать аварийный выход из цикла (таймаут)
-
Оптимизация циклов:
- Выносить за пределы цикла операции, не требующие повторения
- Минимизировать вычисления внутри цикла
- Использовать вложенные циклы только при необходимости
-
Типичные применения циклов в робототехнике:
- Движение до достижения условия (линия, препятствие, метка)
- Повторение действий заданное количество раз
- Обработка множества объектов
- Патрулирование территории
- Калибровка датчиков