Устройство управления светофором

Целесообразно привести алгоритм работы светофора. Световые сигналы сторон (направлений)1 и 3 светофора С1 регулируют движение по дороге А, соответственно, стороны 2 и 4 регулируют движение по дороге Б.

Пусть на стороне 1 (и на стороне 3) включен красный сигнал светофора (КР1). На стороне 2 (и на стороне 4) включен зеленый сигнал (ЗЕЛ2). Через заданный интервал времени на стороне 2 включается зеленый мигающий сигнал, но на стороне 1 еще включен красный. Потом зеленый мигающий сигнал выключается и одновременно на обеих сторонах включается желтый сигнал (ЖЕЛ). Далее на стороне 1 включается зеленый сигнал (ЗЕЛ 1), а на стороне 2—красный (КР2) и т.д. Обычно зеленый мигающий сигнал, также как и желтый, включается на 3...4 с. Красный и зеленый сигналы включаются на определенные интервалы времени, которые определяются интенсивностью движения и дорожной ситуацией на перекрестке.



Назовем условно длительность включения КР2 (или ЗЕЛ1) интервалом №1. Соответственно, длительность включения ЗЕЛ2 (или КР1) — интервалом №2. Вышеуказанные интервалы в устройстве программируются с дискретностью

1 с в диапазоне от 1 до 99 с.

В интерфейс управления входят клавиатура (кнопки S1...S4) и блок индикации (дисплей) из двух 2-разрядных цифровых 7-сегментных индикаторов HG1 и HG2. Кнопки клавиатуры имеют следующее назначение:

- S1 (А) — увеличение значения задаваемого времени в выбранном интервале (№1 или №2), с;

- S2 (V) — уменьшение значения задаваемого времени в выбранном интервале (№1 или №2), с;

- S3 (Р) — выбор задаваемого интервала. Если включена точка h индикатора HG1.2, то выбран интервал №2. При включенной точке h индикатора HG2.2 выбран интервал №1. После нажатия на данную кнопку заданный кнопками S1 и S2 параметр записывается в память данных микроконтроллера;

- S4 (С) — “Старт/Стоп” — кнопка запуска или останова.

Разряды индикации интерфейса имеют следующее назначение:

-1 разряд (индикатор HG1) индицирует десятки секунд интерва-ла № 2;

- 2 разряд (индикатор HG1.2) — единицы секунд интервала №2;

- 3 разряд (индикатор HG2.1) — десятки секунд интервала №1;

- 4 разряд (индикатор HG2.2) — единицы секунд интервала №1.



Сразу после подачи питания на индикаторах индицируются нулевые значения интервалов №1 и №2, точка h индикатора HG1.2 включена, точка h индикатора HG2.2 — выключена. Сначала кнопками S1 и S2 устанавливается необходимое значение интервала №1. После нажатия на кнопку S3 заданное значение интервала №1 переписывается в память данных микроконтроллера. Точка h индикатора HG1.2 выключается, точка h индикатора HG2.2 включается. Аналогично кнопками S1 и S2 устанавливается необходимое значение интервала №2 и нажатием кнопки S3 переписывается в память данных микроконтроллера. Точка h индикатора HG1.2 включается, точка h индикатора HG2.2 выключается. После задания вышеуказанных параметров для запуска необходимо нажать кнопку S4, и таймер №1 переходит в рабочий режим, точка h индикатора HG1.2 включена.

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



Клавиатура таймера №2 собрана на кнопках S1...S4. Для функционирования клавиатуры задействован вывод 2 (РЗ.О) микроконтроллера DD1. Ключи для включения сигналов светофора выполнены на транзисторах VT1 ...VT5. Эти ключи управляют:

- на транзисторе VT1 — красным сигналом направления 1 (КР1), включается с вывода 3 микроконтроллера DD1; - на транзисторе VT2 — зеленым сигналом направления 1 (ЗЕЛ1), включается с вывода 6 DD1;

- на транзисторе VT3 — красным сигналом направления 2 (КР2), включается с вывода 7 DD1;

- на транзисторе VT4 — зеленым сигналом направления 2 (ЗЕЛ2), включается с вывода 8 DD1;

- на транзисторе VT5 — желтыми сигналами светофора направления 1 и 2 (ЖЕЛ), включается с вывода 9 DD1. Так как желтые сигналы направлений 1 и 2 зажигаются одновременно, для двух направлений достаточно одного ключа.

Узел динамической индикации собран на микросхеме DD2, транзисторах VT6...VT9 и сдвоенных цифровых 7-сегментных индикаторах HG1, HG2. Микроконтроллер DD1 с вывода 11 через резистор R26 включает точку h в индикаторах HG1.2, HG2.2.

Алгоритм работы таймера №2 в рабочем цикле следующий (у таймера №1 свой рабочий цикл). Сразу после подачи питания необходимо с клавиатуры интерфейса управления задать необходимые параметры работы — интервалы №1 и №2. Данные параметры индицируются на дисплее (индикаторами HG1 и HG2). Устройство переходит в рабочий цикл сразу после нажатия на кнопку S4 (“Старт/Стоп”). Микроконтроллер при этом устанавливает “0” на выводах 3 и 8, и открываются ключи на VT1 и VT4. Включается КР1 и ЗЕЛ2. Время, индицируемое на индикаторе HG2 (интервал №1), декрементируется с каждой секундой. И как только оно станет равно нулю, микроконтроллер с вывода 8 выдает 4 импульса с периодом 1 с (сигнал ЗЕЛ2 мигает).

Далее микроконтроллер устанавливает (на 3 с) “1” на выводе 8 и “О” на выводе 9, т.е. ЗЕЛ2 выключает-ся, ЖЕЛ включается и горит 3 с. Через 3 с микроконтроллер устанавливает “1” на выводах 3 и 9, “0” на выводах 6 и 7 (КР1 и ЖЕЛ выключаются, ЗЕЛ1 и КР2 включаются).

На индикаторе HG2 снова высвечивается первоначально заданное значение интервала №1. Далее время, индицируемое на индикаторе HG1 (интервал №2), декрементируется с каждой секундой. Как только оно станет равным нулю, микроконтроллер с вывода 6 выдает 4 импульса с периодом 1 с (ЗЕЛ 1 мигает). Далее микроконтроллер устанавливает (на 3 с) “1” на выводе 6 и “0” на выводе 9, т.е. ЗЕЛ1 выключается, ЖЕЛ включается и горит 3 с. Через 3 с микроконтроллер устанавливает “1” на выводах 7 и 9, “0” на выводах 3 и 8 (КР2 и ЖЕЛ выключаются, ЗЕЛ2 и КР1 включаются). Индикатор HG1 снова индицирует первоначально заданное значение интервала №2. Рабочий цикл завершен. Такие циклы периодически повторяются.

Программное обеспечение микроконтроллера DD1 обеспечивает реализацию вышеуказанного алгоритма работы с обратным отсчетом интервалов №1 и №2 с выводом задаваемых параметров на динамическую индикацию. Таймер TF0 микроконтроллера DD4 формирует запрос на прерывание через каждые 310 мкс. Данный таймер играет роль базового счетчика времени, который формирует временные интервалы, необходимые для отображения разрядов в динамической индикации, установки и задания временных интервалов для включения световых сигналов светофора в рабочем цикле.

Дальше идет инициализация программы, в которой задаются параметры работы таймера №2. При инициализации на всех выводах порта РЗ DD1 устанавливаются “1”. Далее запускается таймер TF0 и разрешается работа устройства по приведенному выше алгоритму. Для работы динамической индикации в ОЗУ микроконтроллера DD1 организован буфер отображения.

В рабочем цикле таймера №2 после установки параметров (интервалов №1 и №2) нажатием кнопки S4 устанавливается бит, разрешающий работу программы управления ключами. Интервал №2 задан ранее и индицируется на индикаторе HG1. Текущее значение времени, выводимое на индикатор HG1, хранится в ячейках EMIN (единицы секунд) и DMIN (десятки секунд). При задании параметров работы устройства после нажатия кнопки S3 значение времени переписывается соответственно в ячейки EMINB и DMINB. Интервал №1 задан ранее и индицируется на индикаторе HG2.

Текущее значение времени, индицируемое на HG2, хранится в ячейках EMIN1 (единицы секунд) и DMIN1 (десятки секунд). При задании параметров работы после нажатия кнопки S3 эти значения времени переписываются соответственно в ячейки EMINB1 HDMINB1.

В подпрограмме обработки прерывания происходит отсчет 1 с (счетчик организован на регистрах R1 и R2), опрос клавиатуры, и лишь затем в порт Р1 выводится байт динамической индикации. В регистр RO записывается адрес ячейки из буфера отображения. При каждом обращении к подпрограмме обработки регистр R0 инкрементируется.

В основной программе происходит декремент заданных интервалов №1 и №2 и управление ключами.

В качестве источников света в светофорах применяют лампы накаливания или сверхъяркие (ультраяркие) светодиоды. Для подключения каналов №1... №5 к сети применены симисторные блоки типа БС-440-63/40-Н фирмы “КонтрАвт”.

Конденсаторы С1, С4 —типа К50-35, конденсаторы С2, СЗ — К10-17а.

Потребление тока по каналу +5 В — не более 500 мА.