Робототехника
Паспорт модуля
| Параметр | Значение |
|---|---|
| Аудитория (кому) | Участники подготовки к робосоревнованиям без привязки к возрасту; стартовый уровень — умеют включить контроллер и залить скетч; группа 4–12 чел. (пары «пилот + программист» приветствуются) |
| Аутентичная задача (зачем) | Выполнить в зачётных условиях полный перечень мини-задач регламента: блок «Движение» (4.1–4.23) и блок «Линия и объекты» (3.1–3.17); лучшая попытка — в зачёт |
| Объём и формат | 16 занятий × 90 мин (кружок/секция), из них ≥60% времени — робот в руках; допускается сжатие в интенсив 8×180 мин |
| Оборудование и среда | ESP32 (Arduino C++), моторы DC с редуктором (любые), щелевые энкодеры, УЗ-дальномер (HC-SR04-класс), лазерный ToF (VL53L0X-класс), аналоговые/цифровые датчики линии (TCRT5000-класс), датчик касания (кнопка/концевик), поле с чёрной линией, кегли/банки |
| Ограничения | Датчики и моторы могут меняться → весь материал строится на геометрии, калибровке и HAL-интерфейсе, а не на конкретном коде; ЛиПо/Li-ion питание → обязательный блок ТБ |
| Источники анализа | Перечни мини-задач 4.1–4.23 и 3.1–3.17 (регламент робототехнического направления, предоставлен пользователем); РегламентЭлектроника.pdf — как образец турнирной логики РОБОСТЕП (баллы по задачам, лучшая попытка в зачёт); ШАБЛОН_СКЕЛЕТ_учебного_модуля.md |
Образовательные цели
Цели «от студента». Уровень оценивания = уровню цели: цели «применять/создавать» проверяются только заездом, не тестом.
| № | Обучающиеся … | Блум—Андерсон | Миллер | Чем проверяем |
|---|---|---|---|---|
| 1 | объясняют, как геометрия робота (диаметр колеса D, колея B, число прорезей энкодера N) связана с пройденным путём и углом поворота, и выводят расчётные формулы | понимать | знает как | устный вывод формулы у доски + квиз (КТ-1) |
| 2 | калибруют робота: измеряют мм/тик, коэффициент проскальзывания поворота, пороги датчиков линии и расстояния — и ведут карту калибровки | применять | показывает как | практикум «Карта калибровки» с чек-листом (КТ-2) |
| 3 | программируют точное перемещение и повороты (по времени, по энкодерам: вперёд/назад на S см, танковый и вокруг колеса на 90°/180°) — мини-задачи 4.1–4.13 | применять | делает | зачётные заезды по протоколу блока A (КТ-3) |
| 4 | программируют остановку и реакцию по датчикам (касание, линия, расстояние, объект сбоку, «вторая линия») — мини-задачи 4.5, 4.14–4.20, 4.23 | применять | делает | зачётные заезды по протоколу блока A (КТ-4) |
| 5 | проектируют и собирают навесное оборудование (толкатель, захват) и транспортируют объекты — мини-задачи 4.21–4.22, 3.10, 3.12–3.14, 3.16–3.17 | создавать | делает | защита конструкции + зачётные заезды (КТ-5, финал) |
| 6 | реализуют движение по линии с регулятором (релейный → P → PID) и навигацию по перекрёсткам (проезд, повороты, разворот, маршрут) — мини-задачи 3.1–3.6 | применять / создавать | делает | зачётные заезды по протоколу блока B (КТ-6) |
| 7 | анализируют неудачный заезд: по логу/видео локализуют причину (механика / калибровка / алгоритм / питание) и вносят одно проверяемое изменение | анализировать | показывает как | пост-разбор по протоколу «1 заезд → 1 гипотеза → 1 изменение» (сквозная, финал) |
Оценивание (спроектировано до контента)
Входная диагностика (занятие 1, 20 мин)
- Мини-задание на роботе-доноре: «заставьте оба мотора крутиться вперёд 2 секунды» — фиксируем, кто уже работал с Arduino-средой.
- 5 вопросов: путь/скорость/время; что такое ШИМ; зачем резистор датчику; чем цикл отличается от условия; работал ли с энкодером.
- Опрос мотивации: «сам пришёл / привели», прошлый соревновательный опыт.
Результат → разбиение на пары «сильный + начинающий» и выбор стартовой роли по SSDL (кому инструктаж, кому сразу практика с поддержкой).
Карта «мини-задача регламента → занятие → проверка»
| Мини-задачи регламента | Занятие | Контрольная точка |
|---|---|---|
| 4.1–4.2 (движение по времени) | 3 | заезд, чек-лист |
| 4.3–4.4 (S см по энкодерам) | 4 | заезд, чек-лист |
| 4.6–4.13 (повороты) | 5 | заезд-протокол «10 поворотов» |
| 4.5, 4.14–4.20, 4.23 (датчики) | 6–7 | КТ-4: лотерея условий |
| 4.21–4.22 (кегля) | 8 | заезд + защита конструкции |
| 3.1–3.5 (линия, перекрёстки) | 9–11 | КТ-6: маршрут-лотерея |
| 3.6–3.9, 3.11, 3.15 (маршрут, препятствия) | 12–13 | заезды по протоколу |
| 3.10, 3.12–3.14, 3.16–3.17 (транспортировка) | 13–14 | заезды по протоколу |
| Все | 15–16 | пробный тур: полный регламент, 3 попытки, лучшая в зачёт |
Протокол зачётного заезда (используется со 2-й недели)
Каждая мини-задача сдаётся так, как будет на турнире:
Заявка
Пара объявляет судье (тренеру/другой паре) номер мини-задачи и параметр (t, S, угол), который судья меняет относительно тренировочного.
Три попытки
Между попытками разрешена правка констант ≤ 2 мин. Перезалить прошивку — можно, трогать робота во время заезда — нельзя.
Фиксация
В таблицу заездов: попытка / результат / отклонение (см, °) / причина провала (механика | калибровка | алгоритм | питание | не определена).
Рубрика итогового пробного тура
| Критерий | 0 баллов | 1 балл | 2 балла |
|---|---|---|---|
| Выполнение мини-задачи | не выполнена ни в одной попытке | выполнена с отклонением сверх допуска / с касанием робота | выполнена в допуске с первой или второй попытки |
| Устойчивость к смене параметра | решение работает только на тренировочном значении | работает после ручной правки констант | работает сразу: параметр — переменная, пересчёт по калибровке |
| Обоснование решения (устно, 1 мин) | «так сработало» | описывает алгоритм | объясняет выбор алгоритма и калибровочных констант, называет ограничения |
| Пост-разбор провала | причина не названа | причина названа без проверки | причина локализована и подтверждена контрольным прогоном |
Допуски (для самопроверки на тренировках)
| Задача | Допуск «зачёт» | Допуск «олимпиадный» |
|---|---|---|
| Проезд S см | ±2 см на 100 см | ±1 см |
| Поворот 90°/180° | ±5° | ±2° |
| Остановка у препятствия на L см | ±3 см | ±1,5 см |
| Остановка на линии | датчик на линии | ось датчиков на линии, корпус не пересёк |
Путь обучающегося
Стадии Такмана распределены как 15/15/60/10 от 16 занятий; роль преподавателя по SSDL движется от инструктора к консультанту.
flowchart LR
A["Занятия 1–2<br/>ФОРМИРОВАНИЕ<br/>роль: тренер-инструктор<br/>платформа, ТБ, HAL"] --> B["Занятия 3–5<br/>ШТОРМ<br/>роль: мотиватор<br/>первые заезды, калибровка,<br/>«почему не едет прямо?!»"]
B --> C["Занятия 6–14<br/>АКТИВНАЯ РАБОТА<br/>роль: фасилитатор<br/>датчики → объекты → линия →<br/>перекрёстки → транспортировка<br/>ПИК СЛОЖНОСТИ: зан. 11–13"]
C --> D["Занятия 15–16<br/>ЗАВЕРШЕНИЕ<br/>роль: консультант<br/>пробный тур ×3 попытки,<br/>пост-разбор, рефлексия"]
| № | Тема | Цель занятия (одна!) | Retrieval-разминка | Основная активность | Мини-проверка | SSDL-роль |
|---|---|---|---|---|---|---|
| 1 | Платформа и ТБ | описывают свою платформу картой конфигурации | — (входная диагностика) | измерение D, B, N; сборка ездовой базы | карта конфигурации заполнена | инструктор |
| 2 | HAL: слой железа | оборачивают моторы/датчики в 6 функций HAL | 3 вопроса: D, B, ЛиПо-правила | worked example HAL + перенос на своё железо | оба мотора едут через drive() | инструктор |
| 3 | Движение по времени | ездят вперёд/назад t секунд и объясняют, почему это ненадёжно | ШИМ, drive(), ТБ | 4.1–4.2 + эксперимент «свежая vs севшая батарея» | заезд 4.1/4.2 | инструктор → тренер |
| 4 | Энкодеры: S см | проезжают заданное S см по энкодерам | мм/тик — вывод формулы | 4.3–4.4 + выравнивание курса по разнице тиков | заезд: судья задаёт S | тренер |
| 5 | Повороты | поворачивают на заданный угол двумя способами | формула тиков, коэффициент k | 4.6–4.13, протокол «10 поворотов» | серия из 4 поворотов = квадрат | тренер |
| 6 | Датчики расстояния и касания | останавливаются по касанию и на L см от препятствия | повороты: два способа, где ошибка | 4.5, 4.14–4.15, 4.18–4.20 | лотерея условий | фасилитатор |
| 7 | Датчик линии + «вторая линия» | останавливаются на линии и решают 4.23 | пороги, фильтр медианы | 4.16–4.17, 4.23 (конечный автомат) | 4.23 с тремя разными расстояниями | фасилитатор |
| 8 | Кегля: толкаем | перемещают кеглю в зону прямо и не прямо | конечный автомат 4.23 | конструирование толкателя + 4.21–4.22 | заезд 4.21 + кумулятивный квиз №1 (зан. 1–7) | фасилитатор |
| 9 | Линия: релейный и P | едут по линии релейным и P-регулятором | геометрия датчиков, пороги | калибровка линии, гонка «релейный vs P» | круг по линии без схода | фасилитатор |
| 10 | Линия: PID и скорость | настраивают ПИД и проходят трассу быстрее | ошибка, знак поправки | подбор Kp→Kd→Ki по протоколу | время круга −20% к зан. 9 | фасилитатор |
| 11 | Перекрёстки | детектируют перекрёсток и поворачивают на нём | P vs PID, что даёт D | 3.1–3.5: проезд, повороты, разворот | лотерея: 4 случайных манёвра | фасилитатор |
| 12 | Маршрут и препятствия | едут по маршруту-строке и объезжают банку | счётчик перекрёстков | 3.6–3.9, 3.11, 3.15 | маршрут-лотерея | фасилитатор → консультант |
| 13 | Захват и транспортировка | захватывают объект и везут по линии | объезд: фазы и возврат | 3.10, 3.12, 3.16 + красные линии 3.17 | заезд 3.10 | консультант |
| 14 | Перестановка объектов | переносят объект через линию/перекрёсток | захват: центр масс | 3.13–3.14 + кумулятивный квиз №2 (зан. 1–13) | заезд 3.13 или 3.14 (жребий) | консультант |
| 15 | Пробный тур, день 1 | проходят блок A в зачётных условиях | — (тур) | 3 попытки × выборка задач 4.x | протокол тура | судья |
| 16 | Пробный тур, день 2 + разбор | проходят блок B и разбирают ошибки | — (тур) | 3 попытки × выборка задач 3.x; пост-разбор | рубрика финала + рефлексия | судья/консультант |
Уровни сложности (сквозные для всех занятий)
Данные и итерация
- Входная диагностика: уровень Arduino-навыков, мотивация → состав пар.
- По занятиям: таблица заездов каждой пары (попытка/результат/отклонение/причина провала) — это главный датасет модуля.
- По контрольным точкам: % пар, уложившихся в допуск «зачёт» и «олимпиадный».
- После пробного тура: таблица «цель → % достигших»; сравнение топ-30% и боттом-30% пар по категориям причин провала (если у боттом-30% доминирует «калибровка» — усиливаем занятия 4–5; если «алгоритм» — занятия 11–12).
- Итерация: одно структурное изменение на запуск, фиксируется в паспорте следующей версии.