Таймер для подачи школьных звонков (Arduino UNO)


Это очень простое устройство предназначено для автоматической подачи школьных звонков В аппаратной части оно состоит только из микроконтроллерной платы ARDUINO UNO и выходного электромагнитного реле.

Принципиальная схема

Схема предназначена для управления одной нагрузкой, которой служит школьный звонок. Контакты выходного реле подключают параллельно звонковой кнопке. Для управления выбран порт D10.

Логический уровень с порта D10 поступает на транзисторный ключ на VT1, в коллекторной цепи которого включено реле К1, управляющее звонком.

Программа предельно проста. Она написана на языке C++. Если все перемены и уроки одинаковые, например, все перемены по 10 минут, все уроки по 45 минут, то для управления используется программа, приведенная в таблице 1.

Таймер для подачи школьных звонков, схема на Arduino UNO

Рис. 1. Таймер для подачи школьных звонков, схема на Arduino UNO.

Эта программа отрабатывает один повторяющийся цикл, состоящей из звонка на урок, звучащего 3 секунды, урока, длительностью 45 минут, звонка на перемену, звучащего 3 секунды, и перемены длительностью 10 минут. Цикл повторяется пока питание включено и может отработать любое количество уроков и перемен.

В начале учебного дня ответственный сотрудник школы включает питание выключателем S1 в тот момент, когда нужно подать звонок на первый урок. Далее все происходит автоматически. А по завершении занятий этот же ответственный сотрудник питание выключает выключателем S1, и уходит домой.

Обратите внимание, что все временные интервалы задаются в миллисекундах. То есть, 45 минут на урок и 10 минут на перемену нужно перевести в миллисекунды и вписать в программу именно в таком виде. Для этого нужно значение в минутах умножить на 60000.

Программа

Программа, показанная в таблице 1 годится только в том случае, если все уроки одинаковые и все перемены тоже одинаковые. Но бывает и иначе, например, может быть большая перемена на обед и какая-то промежуточная большая перемена. В этом случае, нужно подробно расписать всю смену.

Код программы Arduino UNO таймера для подачи школьных звонков

Или даже весь учебный день. Для примера в таблице 2 приводится программа на шесть уроков, в которой длительность 3-й перемены задана в 20 минут, а длительность 6-й перемены в 15 минут.

Код программы Arduino UNO таймера для подачи школьных звонков, второй вариант

Все значения времени, конечно же могут быть другими. Количество шагов программы тоже может быть другим. Все зависит от расписания работы конкретного учебного заведения.

Но принцип составления программы должен быть понятен.

Никаких органов управления аппарат не имеет, кроме выключателя питания и кнопки сброса, которая есть на плате ARDUINO UNO. Для изменения расписания уроков его нужно подключить через USB-порт к персональному компьютеру. Для работы с ARDUINO UNO нужен компьютер с установленной программой ARDUINO.

Программу ARDUINO раздают бесплатно на официальном сайте arduino.ru.

Каравкин В. РК-10-2018.

Литература: 1. Каравкин В. «Ёлочная мигалка на ARDUINO как средство от боязни микроконтроллеров», РК-11-2016.


1 1329 На микроконтроллерах
таймер звонок arduino avr микроконтроллер микроконтроллер

Комментарии (2):

#1 BRUT Февраль 03 2023
0

Люди которые портят таким образом код !

#2 root Февраль 03 2023
0

Здравствуйте. Код программы простой и не содержит вложенных блоков и циклов. Поэтому был приведен распознанный текст листинга кода из источника статьи, там действительно были неточности и отсутствие форматирования портило вид. Заменили код рисунками из источника, пусть каждый сам его изучит и наберет в своем редакторе кода.

Оставить комментарий: