Skip to content
Робототехника

Робототехника

Паспорт модуля

ПараметрЗначение
Аудитория (кому)Участники подготовки к робосоревнованиям без привязки к возрасту; стартовый уровень — умеют включить контроллер и залить скетч; группа 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
Аутентичная задача. Когда обучающиеся выйдут с этого модуля, они смогут на незнакомом поле, с меняющимися от попытки к попытке параметрами (расстояния, положения объектов), за отведённое число попыток выполнить мини-задачи регламента на роботе собственной сборки — без подсказок тренера и без «магических констант», которые перестают работать при севшей батарее.
Ключевая идея модуля. Соревновательный робот — это не «код, который один раз сработал». Это система: измеренная геометрия + откалиброванные датчики + программа, устойчивая к изменению условий. Поэтому в каждом занятии есть процедура калибровки и повторный прогон. Задача 4.23 (две линии на переменном расстоянии) и приписка «расстояние меняется от попытки к попытке» — прямое требование регламента: жюри целенаправленно ломает решения, подогнанные под одну конфигурацию поля.

Образовательные цели

Цели «от студента». Уровень оценивания = уровню цели: цели «применять/создавать» проверяются только заездом, не тестом.

Обучающиеся …Блум—АндерсонМиллерЧем проверяем
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 мин)

  1. Мини-задание на роботе-доноре: «заставьте оба мотора крутиться вперёд 2 секунды» — фиксируем, кто уже работал с Arduino-средой.
  2. 5 вопросов: путь/скорость/время; что такое ШИМ; зачем резистор датчику; чем цикл отличается от условия; работал ли с энкодером.
  3. Опрос мотивации: «сам пришёл / привели», прошлый соревновательный опыт.

Результат → разбиение на пары «сильный + начинающий» и выбор стартовой роли по 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; сборка ездовой базыкарта конфигурации заполненаинструктор
2HAL: слой железаоборачивают моторы/датчики в 6 функций HAL3 вопроса: 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Поворотыповорачивают на заданный угол двумя способамиформула тиков, коэффициент k4.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, что даёт D3.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; пост-разборрубрика финала + рефлексиясудья/консультант
Интервальные возвраты (спланированы заранее). Калибровка повторяется на занятиях 4, 7, 9, 15 (перед туром — обязательно: батарея и покрытие поля другие). Кумулятивные квизы — занятия 8 и 14. Повороты из занятия 5 возвращаются в занятии 11 (повороты на перекрёстке) и 13 (разворот с грузом). Это распределённая практика: возврат к материалу через интервал закрепляет его лучше, чем повторение подряд.

Уровни сложности (сквозные для всех занятий)

Данные и итерация

  • Входная диагностика: уровень Arduino-навыков, мотивация → состав пар.
  • По занятиям: таблица заездов каждой пары (попытка/результат/отклонение/причина провала) — это главный датасет модуля.
  • По контрольным точкам: % пар, уложившихся в допуск «зачёт» и «олимпиадный».
  • После пробного тура: таблица «цель → % достигших»; сравнение топ-30% и боттом-30% пар по категориям причин провала (если у боттом-30% доминирует «калибровка» — усиливаем занятия 4–5; если «алгоритм» — занятия 11–12).
  • Итерация: одно структурное изменение на запуск, фиксируется в паспорте следующей версии.

Глоссарий

HAL
Hardware Abstraction Layer — 6 функций-обёрток над железом; меняется железо — меняется только HAL, алгоритмы не трогаем
Тик энкодера
Одно срабатывание щелевого датчика при прохождении прорези диска; базовая единица пути робота
Колея B
Расстояние между серединами пятен контакта левого и правого колеса; определяет геометрию поворота
Коэффициент проскальзывания k
Поправка расчётного числа тиков поворота под реальное покрытие; находится калибровкой
Танковый поворот
Колёса вращаются в противоположные стороны; робот крутится вокруг центра колеи
Пивот
Поворот вокруг заблокированного колеса; радиус = колея B
Порог (threshold)
Значение датчика, разделяющее «линия/фон»; всегда середина между калиброванными min и max
Гистерезис
Два порога (вход/выход из состояния), защищающие от дребезга показаний на границе
Конечный автомат
Программа как набор состояний и переходов; главный инструмент задач 4.23 и 3.6–3.17
P/PID-регулятор
Поправка мощности моторов пропорциональна ошибке (P), её скорости (D) и накоплению (I)
Worked example
Полностью разобранное эталонное решение, изучаемое ДО самостоятельной попытки — снижает нагрузку новичка
Лучшая попытка
Турнирное правило РОБОСТЕП: из нескольких попыток в зачёт идёт лучшая — значит, попытки надо тратить умно