Номинация 3_Статус-победитель. Автор: И.Н. Тазетдинов

Направление программы НКФП «Берлога»:

Программирование киберфизических систем

Тема модуля:

Программирование для киберфизических систем: от игровых юнитов «Берлоги» к роботам мини-сумо в системе визуального программирования»

Образовательная цель модуля:

Обеспечить освоение школьниками принципов проектирования и реализации ПРИМС для управления киберфизическими системами на примере создания робота-сумоиста.

Планируемое время на прохождение модуля:

12 лекционные 2ч, практика 6ч, турнир 3 ч, дискуссии 1ч.

Место модуля в учебном курсе по направлению НКФП «Берлога», связь с другими модулями в программе:

Базовый практический модуль по программированию КФС. Учащиеся создают программу для Arduino-робота по мини-сумо, осваивая основы управления, работу с датчиками и алгоритмы автономного поведения. Практическое введение в разработку киберфизических систем

Возрастная категория:

10-15 лет

Знания и навыки, необходимые для успешного прохождения модуля:

Учащимся необходимы: базовые навыки сборки Arduino-робота, работы с датчиками/моторами, (блоки: циклы, условия, управление моторами, чтение датчиков), понимание простых алгоритмов.

Необходимый опыт в программировании, в работе с киберфизическим содержанием:

Опыт программирования:
Базовые навыки визуального программирования (блоки: циклы, условия, переменные).

Опыт с КФС:
Понимание архитектуры КФС, опыт подключения датчиков/моторов к Arduino, чтения их сигналов.

Что должно быть освоено к моменту проведения занятия?:

К моменту старта модуля учащиеся должны: уверенно собирать базового Arduino-робота с датчиками линии/расстояния; программировать (управление моторами, чтение датчиков, циклы, условия, переменные); понимать архитектуру КФС и цикл управления.

Содержание, включённое в школьную программу (знания – представления, понятия, законы, способы решения и др.):

Модуль обеспечивает освоение школьных тем через прикладные задачи: от законов физики до алгоритмизации. Его уникальность — в использовании визуального программирования акцента на проектной деятельности.

Межпредметное киберфизическое содержание (общие киберфизические представления, программирование, моделирование, принципы управления и др.):

Межпредметное ядро модуля интегрирует киберфизические концепции через практику создания робота для мини-сумо :

  1. Системный подход (физика + информатика): Робот мини сумо (механика, датчики) и “интеллекта” (программа). Обратная связь: реакция на среду (линия ринга → коррекция курса).
  2. Программирование иерархических автоматов: Визуальное проектирование состояний (Поиск → Атака → Отход) с переходами по условиям (датчики, таймеры). Пример: ЕСЛИ (Датчик_противника > 50%) → Атака ИНАЧЕ → .
  3. Принципы управления и моделирование (математика):
  • P-регуляторы: Мощность_мотора = K (ошибка_смещения)
  • Фильтрация шумов: медианный фильтр для датчиков
  • Расчет траекторий: геометрия поворотов
  1. Интеграция знаний:
  • Физика: силы трения → выбор покрытия колес
  • Технология: оптимизация веса → устойчивость при столкновении
  • Информатика: генерация C++ кода из визуальных блоков

Итог: Учащиеся осваивают цикл «сенсоры → алгоритм → действие» через проектирование адаптивных систем. Визуальное программирование упрощает переход от теории к практике, формируя инженерное мышление.

Деятельностное (общие способы действия, понимания, мышления, коммуникации и др.):

Деятельностное содержание модуля:

Учащиеся осваивают:

  1. Способы действия: - Сборка КФС, визуальное программирование , отладка на ринге.
  2. Мышление: - Системный анализ (связь «датчик→код→мотор»), алгоритмизация через конечные автоматы.
  3. Коммуникация: - Коллективная разработка тактик, защита решений.
  4. Понимание: - Интерпретация ошибок как ресурс оптимизации.
    Пример: Тест-драйв робота → анализ сбоев → коррекция автомата состояний → повторное тестирование. Ключевые акценты: - Практика как основа обучения: собрал → запрограммировал → протестировал → улучшил. - Ошибки → инсайты: сбой датчика =повод изучить фильтрацию сигналов. - Командная рефлексия: обсуждение тактик перед турниром.

Как связаны три типа содержания:

Три компонента — образовательное, межпредметное киберфизическое и деятельностное содержание — образуют замкнутый цикл проектного обучения:

  1. Образовательное → КФС Теоретические знания (физика, информатика) становятся «строительными блоками» для системного мышления:
  • Пример: Закон Ома → расчет сопротивления → понимание работы аналоговых датчиков в КФС.
  • Связь: Без базовых понятий невозможно проектирование киберфизических систем.
  1. КФС → Деятельностное Принципы КФС (обратная связь, иерархия автоматов) трансформируются в практические действия:
  • Пример: Концепция «сенсор→обработка→актуатор» → программирование робота → тестирование на ринге.
  • Связь: Системный подход определяет этапы сборки, отладки и оптимизации.
  1. Деятельностное → Образовательное Практика корректирует и углубляет знания: - Пример: Ошибки датчиков при тестировании → изучение фильтрации сигналов → обновление теоретической базы.
  • Связь: Рефлексия над действиями выявляет пробелы в понимании.

Ключевые эффекты:

  • Цикличность: Каждый этап усиливает другие. Ошибки в действиях ведут к уточнению теории, обновлённые знания улучшают системное проектирование.
  • Интеграция: визуальные блоки воплощают теорию в КФС-принципы, а их отладка — в действия.
  • Мотивация: Соревновательный формат (сумо) превращает абстрактные знания в инструмент для победы.

Пример полного цикла для модуля:

  1. Знание: Алгоритмы ветвлений →
  2. КФС: Проектирование автомата состояний «Поиск→Атака» →
  3. Действие: программирование → сбой на ринге →
  4. Коррекция: Добавление состояния «Отход» →
  5. Новое знание: Принцип приоритета условий в реальном времени.

Задайте возможные/допустимые уровни освоения содержания:

Уровни освоения:

  1. Базовый:
  • Сборка робота по инструкции;
  • Программирование простых реакций (движение → стоп при линии).
  1. Продвинутый:
  • Самостоятельная настройка датчиков;
  • Реализация тактик (атака/поиск) через конечные автоматы.
  1. Творческий:
  • Оптимизация кода/конструкции;
  • Создание адаптивных алгоритмов (калибровка под ринг, уход от противника).

Диагностика:

  • Тестовые заезды на ринге;
  • Анализ логики блок-схем;
  • Защита проектных решений.

Пояснения:

  • Базовый: Действия по шаблону, минимальная коррекция кода.
  • Продвинутый: Понимание причинно-следственных связей в КФС, работа с переменными.
  • Творческий: Эксперименты с ПИД-регуляторами, хитроумные тактики (например, ложные манёвры).

Учебные материалы, необходимые для проведения модуля (тексты, формулировки заданий/задач, презентации, демонстрации, оборудование и др.):

  1. Правила соревнований и теория - Регламенты - Теория в презентациях - Алгоритмы поведения - Примеры тактик
  2. Конструкция робота - Базовые компоненты: - Платформа: Arduino - Датчики - Моторы - Корпус робота - Драйвер мотора - Колеса робота - Инструкции по сборке робота
  3. Программирование - Базовые алгоритмы в средах визуального программирования - Cyberiada IDE/Arduino
  4. Практические задания
  5. Оборудование и полигоны - Ноутбуки с программным обеспечением Cyberiada ide - Наборы учебных роботов: Enjoy robotics mini sumo 2шт. - 3d принтер для печати деталей корпуса робота
  6. Методические пособия
  • Книги и презентации
  • Презентация «Подготовка к роботосумо»: сравнение императивного и событийного программирования, примеры ПРИМС-диаграмм
  • Видеоразборы турниров (анализ типичных ошибок
  • Чек-листы для самопроверки (калибровка датчиков, баланс мощности моторов) .

Какие форматы проведения занятий и формы организации учебной и/или проектной деятельности предлагается использовать:

Форматы занятий:

  1. Геймифицированные квесты (45 мин): - Сборка + базовое программирование робота.
  2. Спринт-турниры (2 занятия): - Разработка тактик → тест-драйв → мини-чемпионат на ринге.
  3. Инженерные воркшопы: - Модернизация конструкции .
    Формы организации:
  • Индивидуальная: Калибровка датчиков.
  • Парная: Отладка кода/механики.
  • Групповая: Стратегические сессии.

Как обеспечивается повышение осознанности и самостоятельности в учебной деятельности:

Механизмы повышения осознанности и самостоятельности:

  1. Рефлексивные паузы: - Анализ ошибок после тест-драйва: «Почему робот ушел с ринга?» → поиск решений.
  2. Выбор тактик: - Самостоятельный подбор алгоритмов (атака/обход/защита).
  3. Инженерные дневники: - Фиксация наблюдений: «При увеличении веса батареи устойчивость выросла на 30%.
  4. Чек-листы самооценки: - Контроль этапов: сборка → калибровка датчиков → программирование.

Пример: Дети тестируют робота, выявляют сбои → корректируют код → защищают решения перед турниром. Ключевые принципы: - От инструкции к инновациям: Базовые навыки → творческая оптимизация. - Ошибки как ресурс: Сбой датчика = повод изучить фильтрацию.

Как организуется в процессе прохождения модуля коммуникативное взаимодействие между педагогом и учащимися, между учащимися, с внешними экспертами:

  1. Педагог ↔ Учащиеся:
  • Коучинг: Консультации через чек-листы («Проверь подключение датчиков») вместо прямых ответов.
  • Рефлексия: Обсуждение после тест-драйвов: «Как улучшишь тактику?».
  1. Учащиеся ↔ Учащиеся:
  • Парное программирование: Один пишет код, второй тестирует на ринге. - Стратегические сессии: Мозговой штурм тактик для турнира.
  1. Внешние эксперты:
  • Гостевая сессия: Онлайн-разбор проектов с инженером (пример: анализ устойчивости робота).
  • Судьи на турнире: Обратная связь по эффективности алгоритмов.

Пример: Дети защищают решения перед экспертом → получают советы → дорабатывают проект.
Ключевые принципы:

  • Минимум лекций, максимум диалога.
  • Ошибки → командный поиск решений.
  • Эксперты как мотивация: Реальные инженеры оценивают работы.

Подготовительные задания/задачи:

Учебная ситуация: «Оптимизация тактики робота-сумоиста»
Возраст: 10–15 лет
Цель: Разработать адаптивный алгоритм «Атака-Отход», повышающий шансы на победу в турнире.
Подготовительные задания (до занятия):

  1. Анализ прототипов: - Изучить [примеры тактик] выявить слабые места (например, застревание у борта).
  2. Тест железа: - Проверить калибровку датчиков по [чек-листу]
  3. Мозговой штурм: - Нарисовать схему идеального поведения робота (PDF-шаблон).

Сценарий занятия (45 мин):

  1. Вызов (10 мин): - Педагог: «Ваш робот выигрывает 3 из 10 боев. Проанализируйте видео поражений → предложите улучшения».
  2. Исследование (20 мин): - В парах: - Эксперимент с порогами ИК-датчиков в (снижение ложных срабатываний). - Тест манёвра «Ложный отход»: ЕСЛИ (противник ближе 10 см) → Отъезд назад → Резкий разворот → Атака сбоку
  3. Турнирная проверка (15 мин): - Робо-бои 2×2: - Фиксация результатов в [таблице] - Анализ: «Новая тактика увеличила победы до 6/10!»
  4. Рефлексия (15 мин): - Обсуждение: > «Почему “ложный отход” сработал против медленных роботов, но проиграл скоростным?» - Домашнее задание: Добавить в алгоритм ветку Определение_скорости_противника. Оборудование на занятии: - Easy Robotic mini sumo. - Ринг с разметкой зон риска - Ноутбуки . Ключевые навыки: - Критический анализ ошибок → инженерная оптимизация. - Коллективная генерация идей. - Интерпретация данных тестов.

Ключевая задача учебной ситуации, в какой форме предлагается:

Форма: Турнирный инженерный квест
Суть задачи: Создать адаптивную тактику для робота-сумоиста , повысив его победы в боях с 30% до 60+% через анализ ошибок и оптимизацию алгоритмов.

  1. Проблемный контекст:
  • Данные: Робот учеников проигрывает 7 из 10 боев
  • Вызов: «Определите 2 слабых места тактики и исправьте их за 40 минут!»
  1. Исследовательский этап:
  • Анализ данных:
  • Построение графика частых ошибок: «зависание у борта» (45%), «ложное срабатывание датчиков» (30%).
  • Эксперимент:
  • Тест гипотез : добавление состояния АНТИ-ЗАВИСАНИЕ (разворот при 5 сек бездействия).
  1. Практическая реализация:
  • В парном, формате
  • Программист: Создает ветку кода: ЕСЛИ (время_без_действия > 5с) → поворот_на_180°
  • Инженер: Тестирует манёвр на ринге, корректирует пороги ИК-датчиков.
  1. Верификация:
  • Турнир «каждый с каждым» (3 раунда):
  • Фиксация результатов в онлайн-таблице. - Критерий успеха: ≥6 побед из 10.
  1. Рефлексия: - Вопросы педагога: > «Почему манёвр сработал против тяжелых роботов, но не против легких? Какие данные еще нужны?» Педагогические акценты: Компонент Цель Анализ ошибок Развитие критического мышления Эксперимент Применение метода проб и ошибок Турнир Мотивация через соревновательность Рефлексия Осознание причинно-следственных связей Итог: Задача превращает детей в инженеров-исследователей — от диагностики проблемы до создания рабочего решения.

Какие действия по решению задачи могут привести к ошибкам/неверным решениям, иными словами: к сбою в решении (не менее двух):

Ошибка 1: Игнорирование калибровки датчиков Действие: Прямое копирование пороговых значений ИК-датчиков из примеров без теста на реальном ринге. Сбой: - Ложные срабатывания: робот «видит» противника там, где его нет. - Пропуск цели: датчики не реагируют на черную линию из-за бликов. Причина: Непонимание, что освещение, цвет покрытия и загрязнения сенсоров меняют сигнал. Как выявляется: Робот хаотично уезжает с ринга или проезжает границу.

Ошибка 2: Жёсткая привязка к времени в алгоритмах Действие: Использование блокирующих команд delay() для манёвров: Поворот_налево(90°) → delay(2000) → Движение_вперёд() Сбой: - Робот «зависает» на 2 сек, игнорируя противника/границу. - Тактика становится предсказуемой и уязвимой. Причина: Незнание принципов неблокирующего кода для систем реального времени. Как выявляется: Противник легко атакует во время «задержки».

Ошибка 3: Конфликт состояний в автомате Действие Создание условий без приоритетов: ЕСЛИ (датчик_линии) → Отъезд ЕСЛИ (датчик_противника) → Атака Сбой: - Робот «мечется» у границы: атакует → отъезжает → атакует. - Быстрая разрядка батареи из-за циклических действий. Причина: Отсутствие иерархии в логике (например, Сначала спастись от вылета → потом атаковать). Как выявляется: Видеоанализ показывает потерю времени на бессмысленные действия. Почему это критично?

  1. Ошибка 1 ведет к фундаментальной неработоспособности системы.
  2. Ошибка 2 нарушает принцип реактивности КФС.
  3. Ошибка 3 делает алгоритм неэффективным, несмотря на техническую исправность.

Как минимизировать риски: - Ввести обязательный этап: «5 минут на калибровку датчиков» перед турниром. - Использовать в Lapki IDE таймеры на события вместо delay() (см. [документацию] - Добавить правило: «Состоянию “Анти-вылет” всегда высший приоритет» в алгоритмах. > «Неочевидная ошибка: дети часто “улучшают” конструкцию, добавляя тяжелый крюк, что смещает центр тяжести → робот переворачивается при столкновении. Решение: тест робота в 3-х позициях».

Как проводится работа с неверными действиями/неверными гипотезами и т.д. школьников, которые привели к ошибкам, к сбою в деятельности:

Алгоритм работы с неверными действиями/гипотезами:

  1. Фиксация и анализ сбоя: - При тест-драйве робота педагог фиксирует проблему на видео (например, зависание у борта). - Учащиеся заполняют «Карту ошибки»: Симптом → Вероятная причина → Способ проверки [Робот крутится на месте] → [Конфликт состояний] → [Логи ]
  2. Проверка гипотез через микроэксперименты: - Ошибка: «Датчики !» → Эксперимент: - Замер сигналов ИК-сенсора при разном освещении → вывод о необходимости калибровки. - Ошибка: «Задержки помогают» → Эксперимент: - Сравнение delay(2000) vs. неблокирующего таймера → видеоразбор уязвимостей.
  3. Инструменты коррекции: - Чек-лист «5 шагов»: 1. Проверь питание → 2. Калибруй датчики → 3. Ищи конфликт состояний → 4. Замени delay() → millis 5. Тест на 3 типах противников 4. Шаблон: Автомат состояний с приоритетами 5. Рефлексивный диалог: - Педагог: «Что данные говорят? Какая гипотеза подтвердилась? Как избежим этого в новом проекте?». - Пример: После проигрыша из-за delay()→ обсуждение принципов реального времени. Пример: Гипотеза: «Больше скорости = больше побед» → Робот вылетает с ринга → Эксперимент с замедлением моторов на 30% → Победы → Вывод: Управляемость > Мощности. Итог: Ошибка становится исследовательским кейсом, где дети учатся: - Верифицировать гипотезы данными, - Разделять симптом/причину, - Конвертировать провалы в улучшения.

Как на основе работы по преодолению сбоя в деятельности вводятся новые знания/способы действия/приёмы работы/…:

  1. От симптома → к концепции: - Сбой: Робот зависает у борта ринга. - Новое знание: Принцип неблокирующего подхода.
  2. От гипотезы → к методу: - Ошибка: «Датчики !» → Проверка: Замер сигналов при разном освещении. - Новый способ: Калибровка сенсоров через: - Построение графика «Сигнал/Расстояние» → расчет пороговых значений. - Использование медианного фильтра в коде
  3. От конфликта → к системе: - Проблема: Робот мечется между состояниями «Атака» и «Отход». - Новый приём: Иерархия приоритетов в автомате: ВЫСШИЙ: Спасение от вылета → СРЕДНИЙ: Атака → БАЗОВЫЙ: Поиск - Инструмент: Визуальный конструктор состояний Lapki IDE с настройкой весов условий.

Педагогические инструменты:
Чек-лист «5 шагов после сбоя»:

  1. Запиши симптом
  2. Выдвини гипотезу
  3. Проверь экспериментом
  4. Изучи новую тему
  5. Решение

Мини-лекции «по требованию»: - Только после самостоятельного анализа ошибки (например, объяснение PID-регуляторов при систематическом съезде с траектории). Пример: После проигрыша из-за задержек delay(): - Учащиеся сами обнаруживают проблему в видеоанализе → - Получают доступ к шаблону Non-blocking code → - Изучают принцип через [интерактивную схему] → - таймеры событий → Тест: +40% побед. > Ошибка не тупик, а дверь. Важно дать ключ – конкретный инструмент для её исправления

Как завершается учебная ситуация:

Рефлексия (укажите предмет рефлексии: этапы проделанной работы, способ преодоления сбоя, полученное новое знание, выработанный способ решения, другое

Обоснуйте ваш выбор в предыдущем пункте:

Выбор: 2. Рефлексия Обоснование: Рефлексия — единственный вариант, который глубоко раскрывает образовательный смысл завершения учебной ситуации. Она позволяет:

  1. Связать теорию с практикой → Ученики осознают, как знания о ПРИМС из «Берлоги» помогли решить реальные проблемы.
  2. Закрепить инженерное мышление → Анализ ошибок («ложные срабатывания датчиков → добавление фильтра») показывает цикл: проблема → гипотеза → решение → результат.
  3. Оценить личный прогресс «Среда визуального программирования научила не просто кодить, а проектировать поведение» — демонстрирует рост от исполнителя к инженеру.

Вероятно, мы не спросили о том, что вы считаете важным в отношении адаптированного модуля. Напишите в свободной форме.:

Ключевые выводы по адаптированному модулю

  1. Модуль нивелирует разрыв между виртуальной «Берлогой» и физическими КФС, превращая игровые тактики в алгоритмы для реальных роботов. Мини сумо для начала программирования ардуино интересно ребятам.
  2. Готовое решение для педагогов: Визуальное программирование сокращает время на программирование, не требуется глубокое знание C++.
  3. Индустриальная актуальность: Навыки работы с ПРИМС соответствуют 80% требований к junior-инженеру промышленной автоматизации
  4. Турнир как учебный инструмент: Соревновательная механика: - Дает мгновенную обратную связь (робот вылетел с ринга → ошибка в автомате) - Мотивирует глубже анализировать киберфизические принципы База обучения, мотивирует строить модели роботов для соревнований Робофест, Робофинист, Робокод.
  5. Ограничение: Требует минимальной аппаратной базы (Arduino-совместимые наборы) Набор Enjoy robotics mini sumo - самостоятельная сборка детьми робота мини сумо. Главный эффект:Ученики видят прямую связь между действием в игре (программирование юнита) и результатом в физическом мире (поведение робота на ринге), формируя системное инженерное мышление.

Из заключений экспертов …Работа соответствует исходной предметной области. …Отличительная черта описания модуля в двух уровнях описания - реализуемой практики и теоретического обобщения (Ключевые принципы, Педагогические акценты, Почему это критично? и др.). Адекватные и понятные ответы. Методически грамотный подход к включению языка МС в сложившуюся практику работы по созданию робота-сумоиста. Ясное представление возможных уровней освоения. К сожалению, описание рефлексии не демонстрирует, как реально она организуется. Автор свободно ориентируется в содержании.