Контроллеры и циклы
На соревнованиях команды используют контроллеры для беспроводного управления своими роботами. Контроллер запрограммирован на обновление робота на основе данных пользователя. В проекте используются циклы, благодаря которым робот неоднократно проверяет наличие обновленной входной информации. Циклы позволяют проекту быстро проверить, какие кнопки были нажаты или насколько далеко были нажаты джойстики. После проверки эта информация быстро передается роботу, чтобы он быстро реагировал на инструкции контроллера.
На изображении выше показан пример проекта Clawbot Control из VEXcode IQ. Вечный цикл в этом проекте постоянно проверяет положения осей A и D, чтобы установить скорость двигателей.
Петли важны даже для автономного программирования без контроллера. Цикл помогает упростить и организовать повторяющиеся команды внутри проекта.
Мотивировать обсуждение Циклическое поведение.
Ознакомьтесь с игрой VEX IQ Competition этого года со студентами, нажав на эту ссылку. Или проведите следующее обсуждение, основанное на играх прошлых лет.
В: Какое поведение робот может повторить во время соревнований?
A: Учащиеся, скорее всего, сразу же отреагируют движениями, но в проекте с меньшей вероятностью будут использоваться циклы для движений, чем циклы для проверки датчиков.
В: Как бы вы превратили эти повторяющиеся действия в цикл?
A: Независимо от повторяющегося поведения, перетаскивание блоков внутри цикла является обязательным шагом. Учащиеся должны уметь удобно размещать блоки внутри блоков циклов.
Вопрос: Спросите учащихся, какой блок в VEXcode IQ может помочь им запрограммировать поведение своих роботов после нажатия одной кнопки контроллера. Также спросите, частью какой группы блоков он является.
A: Этот блок называется блоком кнопок контроллера When и расположен под блоками событий в VEXcode IQ.
Расширьте свое обучение Рассмотрение примеров проектов
Чтобы расширить это задание, попросите своих учеников изучить различия между аркадным управлением и управлением танком. Студенты могут следовать примерам проектов, найденным в VEXcode IQ. Есть четыре примера проекта: Left Arcade, Right Arcade, Split Arcade и Tank Drive.
Обсудите, как работают циклы в программах, а также плюсы и минусы каждого типа управления.
Чтобы связать это задание с математикой, используйте приведенные выше проекты «левая/правая аркада» (один джойстик) и разделенная аркада/танк-драйв (оба джойстика), чтобы обсудить роли осей X и Y в проекте. Показания положения оси X фиксируют горизонтальные перемещения джойстиков влево-вправо, тогда как показания положения оси Y фиксируют вертикальные движения джойстиков вверх-вниз.