Планирование уроков на учебный год (по учебнику К.Ю. Полякова, Е.А. Еремина, углубленный уровень)



Уроки 4 - 5
§3. Алгоритмы управления роботами




Содержание урока

Управляющие кнопки

Движение в лабиринте

Движение по линии

Выводы

Вопросы и задания

Практическая работа № 3 «Использование датчиков»

Практическая работа № 4 «Движение робота по линии»


Управляющие кнопки


Ключевые слова:


• порт ввода
• чтение из порта
• датчик касания
• датчик расстояния
• датчик освещённости
• ошибка измерения
• калибровка датчика
• движение по линии
• релейный регулятор
• П-регулятор


Простейший управляющий элемент — кнопка, с помощью которой включается или выключается какой-то режим работы робота. Например, с помощью кнопки можно управлять светодиодом: при нажатии кнопки лампочка загорается, после отпускания кнопки — гаснет. Схема, которую можно собрать на плате Arduino, показана на рис. 1.7.

Рис. 1.7

Рис. 1.7

На один контакт кнопки подаётся питание, второй подсоединён к входному пину, с которого микроконтроллер может прочитать значение сигнала. При нажатии кнопки цепь замыкается, так что на входной пин подаётся сигнал высокого уровня (величиной 5 вольт, на рис. 1.7 он обозначен как +5V). А какой сигнал будет на этом пине, если кнопка не нажата? Оказывается, в этом случае он может «плавать», т. е. меняться случайным образом из-за электромагнитных шумов. Чтобы этого не происходило, ставят специальный «стягивающий» резистор, который связывает входной пин с сигналом нулевого уровня (см. рис. 1.7).

Перейдём к программированию. Нам нужно постоянно читать значение напряжения на пине. Если подан высокий уровень сигнала (кнопка нажата), нужно включить лампочку, т. е. подать сигнал высокого уровня (255) на выходной пин, с которым она связана. Если кнопка не нажата, на выходной пин подаём сигнал низкого уровня (0), лампочка выключается. Будем считать, что лампочка управляется пином 11, а сигнал от кнопки приходит на пин 2. Команда прочитать читает значение на входном пине, номер которого записан в скобках. Это функция, она возвращает значение, которое можно записать в переменную.

цел х

нц

х:=прочитать(2)

если х=255 то

записать (11, 255)

иначе

записать (11, 0)

все

кц


Запишите в тетради вариант программы, в котором нет оператора если.

Запишите в тетради программу для схемы, которая работает «наоборот» — когда кнопка нажата, лампочка не горит, а когда отпущена — лампочка включается. Постарайтесь найти два варианта решения задачи.



Следующая страница Движение в лабиринте



Cкачать материалы урока





Наверх