1
АВТОМАТИКА
l
Ильдар Габидуллин
(Окончание. Начало в №1/2006)
! Р е г у л я т о р я р к о с т и
i л а м п ы н а к а л и в а н и я
Описание программы
микроконтроллера
Исходный текст программы публи-
куется как есть. Программа доступ-
на для повторения и изменения, но
автор не несет ответственности за
ее работоспособность при каждом
повторении конструкции.
Программа написана на ассем-
блере в виде монолитного текста.
Стиль программирования и офор-
мления программы автор не обсуж-
дает. Он.значительно изменился,
так как с момента окончания раз-
работки данного устройства про-
шло
2
года, в течении которых ре-
гулятор успешно работает.
Текст программы содержит под-
робные комментарий на русском
языке, поэтому ниже будут поясне-
ны только основные, так сказать,
“идейные" моменты этой программы.
Программа управления регуля-
тора использует два прерывания
микроконтроллера MCS51: преры-
вание по уровню на входе INTO и
прерывание таймера ТО. Прерыва-
ние таймера ТО имеет более высо-
кий приоритет.
В основной фоновой программе
выполняется инициализация мик-
роконтроллера, считывание сохра-
ненных параметров из энергонеза-
висимой памяти перед началом
работы регулятора и постоянный
контроль бита необходимости со-
хранения параметров, который ус-
танавливается в подпрограмме
обработки прерывания INTO. При
установленном бите фоновая про-
грамма записывает изменившиеся
значения в энергонезависимую па-
мять и сбрасывает бит.
Прерывание таймера ТО пред-
назначено для формирования им-
пульса управления симистором дли-
тельностью около 25 микросекунд
по окончанию времени загруженно-
го в таймер и загрузки таймера ТО
новым табличным значением време-
ни задержки, соответствующим те-
кущему уровню мощности. Сам тай-
мер по выходу из прерывания ТО
10
| --------------------------------------------------------------
оказывается выключенным. Таким
образом, таймер ТО подготавлива-
ется к началу новой полуволны се-
тевого напряжения. Это позволяет
сократить время реакции микро-
контроллера. Сам таймер запуска-
ется в самом начале прерывания
INTO.
Подпрограмма обработки пре-
рывания INTO является, в сущнос-
ти, ключевой частью программы
регулятора. В момент “перехода
через
0
” новой полуволны сетево-
го напряжения на входе микрокон-
троллера INTO внешней схемой
формируется отрицательный им-
пульс. Этот импульс и является
причиной возникновения прерыва-
ния INTO.
В подпрограмме прерывания
INTO в первую очередь запускаёт-
ся таймер ТО. Затем производится
динамический опрос кнопок и со-
хранение результата опроса. Пос-
ле окончания опроса кнопок порт
Р
1
начинает работать исключи-
тельно на светодиодный дисплей.
Содержимое вспомогательных
регистров выводится на соответ-
ствующее знакоместо светодиод-
ного семисегментного индикатора.
Данные для отображения;подготав-
ливаются в предыдущем полупери-
оде. Это позволяет сократить время,
необходимое для вывода данных на
индикацию.
В каждом полупериоде сетево-
го напряжения знакоместа дисплея
чередуются. Таким образом, часто-
та динамической индикации со-
ставляет 50 Гц.
После обработки индикации
производится анализ состояния
кнопок в соответствии с текущим
активным режимом. Одновремен-
но обеспечивается защита от дре-
безга контактов. Возможно, кому-
то этот фрагмент программы пока-
жется нерациональным, автор не
'будет с этим спорить, но, тем не
менее, все надежно работает.
По ходу обработки прерывания
INTO кснтролируются различные
вспомогательные биты, определя-
ющие режим работы регулятора.
Посредством этих битов и различ-
ных счетчиков реализуются анти-
дребезг, темп изменения парамет-
ров, темп изменения яркости лам-
пы при включении и выключении
регулятора, выделение коротких и
длительных нажатий на кнопки,
выдержка времени необходимости
сохранения параметров и т.п.
Особенностью разработанной
программы является использова-
ние оригинальной, как представля-
ется автору, таблицы углов задер-
жки включения симистора. Данная
таблица получена путем вычисле-
ния в таблице Excel 100 интерва-
лов времени за полупериод сете-
вого напряжения, уменьшенного на
5%. Интервалы времени рассчиты-
вались из условия равенства интег-
ралов мгновенного значения сину-
соиды. При этом получаются не-
равномерные интервалы времени,
соответствующие различным уров-
ням мощности. Максимальному
уровню мощности соответствует
минимальная задержка.
Графическая иллюстрация резуль-
тата расчета приведена на рис. 4.
Для наглядности расчет выполнен для
20 интервалов. Как видно из графи-
ка, интервал времени между соседни-
ми точками на максимуме синусоиды
почти в три раза меньше времени пер-
вого интервала.
Полученная неравномерность
таблицы позволяет сделать более
равномерное изменение яркости
лампы при изменении уровня мощ-
ности. Положительным результа-
том такого подхода является то, что
с момента “перехода сетевого на-
пряжения через
0
”, до момента вре-
мени, соответствующего 99% ин-
теграла напряжения за полупери-
од, проходит порядка 640 микросе-
кунд. Это свидетельствует о том,
что в распоряжении микроконтрол-
лера достаточно времени для вы-
полнения различных операций без
потери максимально возможной
I Родиолюбитель - 02/2006
предыдущая страница 9 Радиолюбитель 2006-02 читать онлайн следующая страница 11 Радиолюбитель 2006-02 читать онлайн Домой Выключить/включить текст