Курс «Основы робототехники на Arduino» В качестве основы для обучения и проектов клуба используется контроллер Arduino – основанный на микроконтроллере ATmega328 электронный конструктор, предоставляющий возможность макетирования без использования пайки, имеющий простой язык программирования, основанный на языке Си. Для занятий используются стенды, состоящие из контроллера Arduino Uno и макетной платы, на которой можно реализовывать различные схемы и подключать модули (датчики, индикаторы, драйверы двигателей и т.д.) Ориентировочный возраст слушателей курса – с 14 лет (с 7 класса), т.к. желательно знать основы программирования и физики. По результатам собеседования возможен допуск к курсу слушателей моложе 14 лет. Для младшего школьного возраста разрабатывается упрощенный курс на сокращенной с использованием среды графического программирования ArduBlock и, возможно, на специально адаптированных для данного возраста стендов (минимум соединений, возможно, просто на готовых схемах) Каждое занятие курса будет приведено в виде распечаток с теоретической частью, инструкциями, схемами включения и прошивками с комментариями на русском языке. Распечатки выдаются учащимся насовсем, чтобы они имели возможность в свободное время повторить данную на занятии информацию. Ориентировочное время занятия – от 1,5 до 2 часов с перерывом 5-10 минут в середине занятия. План занятия: 1. Теоретическая часть – рассказ информации (которая продублирована в распечатках) 2. Сборка изучаемой в процессе занятия схемы, подключение модулей 3. Изучение готовой программы для Arduino или написание новой программы 4. Проверка собранной схемы преподавателем, включение питания, испытания схемы Примечание 1: в случае использования готовой схемы (например, робота-ровера) занятие начинается с пункта 3 Примечание 2: до или после занятия может проводиться работа над проектами школьников Примечание 3: после прохождения базового курса школьники могут продолжать ходить в клуб для работы над своими проектами или участия в проектах клуба, а если наберется группа, желающая пройти продвинутый курс робототехники на Arduino – то пройти и этот курс Примечание 3: в курсе ниже занятия объединены по наблюдению за скоростью усвоения школьников 10 класса, при обучении младшего возраста занятия можно разъединить № Тема занятия Содержание занятия на примере Arduino Uno: возможности применения, входы и выходы, подключение к компьютеру. Прочие основные пред- Контроллер Arduino ставители: Arduino Nano, Arduino Pro Mini, Arduino Mega, Arduino Due 1 Среда программирования Arduino IDE знакомство со средой программирования Arduino IDE, настройка подключения к Arduino (порт, тип контроллера), основные кнопки интерфейса включением/выключение имеющегося на плате светодиода по Цифровой выход – времени на основе примера Blink. Изменение интервалов вреуправление светодио- мени. Подключение внешних светодиодов, написание управ2 дами ляющей программы. Светофор из трех светодиодов, изучение использования цикла For Управление яркостью светодиода на основе примера Fading. Аналоговый выход Управление яркостью нескольких светодиодов Изготовление схемы кнопки и управление включени- ем/выключением светодиода по нажатию кнопки на основе Цифровой ввод примера Button Светофор, переключаемый по нажатию кнопки Использование переменного резистора для управления яркостью светодиода на основе примера Analog Input 3 Сборка делителя напряжения для подключения фоторезистора к Arduino. Вывод данных с фоторезистора на компьютер, ис- Аналоговый ввод пользуя пример AnalogReadSerial. Описание использования фоторезистора как датчика освещенности и датчика линии в роботе Использование терморезистора как датчика температуры Подключение пьезоизлучателя (Buzzer), изучение команды Генерация 4 звука пьезоизлучатель – tone(). Воспроизведение простых мелодий, например, на основе примеров toneMelody. Управление звуками аналоговым входом tonePitchFollower. Пианино (несколько обычных кнопок, при нажатии – одной – своя нота) ЖК индикатор Подключение ЖК индикатора к Arduino, вывод сообщений. Вывод на экран информации с датчиков из предыдущих заня- № Тема занятия Содержание занятия тий Ультразвуковой датчик расстояния HCSR04 Подключение датчика к Arduino и вывод измеренного расстояния в Монитор порта на компьютере, на ЖК индикатор. Управление частотой звука. Примеры использования датчика для навигации робота, системы контроля пересечения луча 5 Подключение библиотек, необходимых для работы датчика. Датчик температуры DS18B20 Подключение датчика к Arduino. Вывод измеренной температуры в Монитор порта на компьютере. Примеры использования датчика для измерения температуры тела, температуры воздуха Подключение Bluetooth модуля к Arduino. Управление светодиодом, подключенным к Arduino, с компьютера и планшета. 6 Bluetooth модуль Передача данных с Arduino на компьютер и планшет. Специальные приложения на компьютере и смартфоне для удобного интерфейса взаимодействия с Arduino по Bluetooth Знакомство с сервоприводами, примеры использования для Управление серво- управления жалюзи, поворотом автомодели, в шагоходе. Под- приводами ключение серво к Arduino и управление с использованием встроенной библиотеки Servo.h 7 Управление электромоторами с помощью драйвера Подключение драйвера на основе L298 к Arduino и моторам, управление двумя моторами. Принцип работы и управление моторами с помощью ШИМ. Пример использования моторов в шасси колесного робота Возможно несколько занятий, посвященных работе с робо- Написание программ том-ровером – управление моторами двух ведущих колес, 8 для управления робо- опрос установленных на роботе датчиков, управление по том-ровером Bluetooth, программа для самостоятельного движения по информации с датчиков Слушатели курса делятся на несколько команд и проводятся: Соревнования по сборке электронных схемы и написанию 9 Состязания программ для них Соревнования дистанционно управляемых роботов Соревнования автономно работающих по информации с № Тема занятия Содержание занятия датчиков роботов (например, самостоятельное прохожение лабиринта, движение по линии на скорость, сумо и т.д.)