Для компьютерного управления различными устройствами и объектами предлагаю воспользоваться методом широтно-импульсной модуляции (ШИМ), одинаково успешным при работе с разными ПК: от Intel-80286 до Pentium последних модификаций. Единственное, пожалуй, условие — наличие свободного СОМ-порта. Связь с ним до 200 м может осуществляться даже по обычным телефонным проводам, ничуть не защищенным от электромагнитного воздействия окружающей среды. При переходе же на более совершенные, экранированные линии «дальнобойность» компьютерного управления с ШИМ увеличивается.
Многоканальная нагрузка (например, световое табло или поставленные на охрану объекты) подчиняется импульсам, поступающим от ПК через СОМ-порт, с двумя фиксируемыми длительностями (10 и 90 мкс), означающими передачу лог.0 и лог.1. Их стабильность определяется внутренним кварцевым генератором базового компьютера, а длительность, скважность и последовательность формируются специальной программой.
Прием управляющих ШИМ-сигналов и их фиксация на регистре сдвига К555ИР8 происходят в устройстве, где в качестве коммутируемой нагрузки используется матрица, состоящая из светоизлучающих диодов HL1— HL8 (рис.1). При 8-кратном увеличении числа регистров сдвига получается табло с 64 каналами отображения информации. Но уже следующий шаг в данном направлении оказывается невозможным без усиления сигнала строба, поступающего на вход С всех регистров.
Дальнейшее ограничение обуславливается еще и возрастанием времени управляющего воздействия. Например, для управления одним каналом требуется ШИМ-импульс длительностью 90 мкс, да плюс еще 10 мкс, необходимых для разрядки времязадающего конденсатора С1 и подготовки к следующему приему сигнала. Итого нужно 100 мкс. Соответственно, для 64 каналов потребуется 6,4 мс, а для 640 каналов — уже 64 мс. И это без учета работы самой программы!
Рис.1. Принципиальная электрическая схема устройства компьютерного управления через СОМ-порт матричным табло из 8N светодиодов (где N— число микросхем К555ИР8) или другой маломощной многоканальной нагрузкой
Рис. 2. Та же схема, но дополненная цепью ручного ввода информации
Однако в действительности на ШИМ-сигнал управления даже для одного канала тратится не 100 мкс, а несколько большее время. Разумеется, при 64-канальной нагрузке общая продолжительность выдачи управляющих импульсов возрастет еще сильнее, не говоря уже о 640-канальной. Помня об этом, приходится идти на уловку: при программировании формировать вначале управляющую последовательность в буфере, а уже оттуда выдавать этот буфер в порт.
Если по условиям эксплуатации требуется сохранять управление нагрузкой даже при отключении компьютера, то используется несколько видоизмененная схема — с цепью ручного ввода данных (рис.2). Разработана она так, что при нажатии кнопки S1 (или S2) происходит разблокировка конденсатора С2 (или C3) и его заряд, а значит, и формирование ШИМ-импульса соответствующей длительности с последующим «заталкиванием» в регистры сдвига К555ИР8.
Распознавание ШИМ-импульсов (длительностью 10 мкс и 90 мкс) осуществляется в обоих вариантах схемы с помощью цепи заряда емкости С1. При поступлении импульса длительностью 10 мкс конденсатор не успевает зарядится до уровня лог. 1, следовательно, фиксируется лог. 0. Наоборот, с поступлением 90-мкс сигнала заряд успевает сработать, а значит, есть фиксация лог. 1. Разряд же осуществляется через исполнительную цепь оптопары VU1 (диод VD2 и выход логического элемента DD1.1 во втором варианте схемы). Положительным перепадом напряжения на тактовом входе С записывается и последующий сдвиг принятого значения (1 или 0) по разрядам регистра.
Длительность импульса управления выбрана минимально возможной для СОМ-порта. Настройкой на 110 Кбайт/с задано время единичного интервала (примерно равное 10 мкс).
При передаче сигнала FF (=1111-1111) выдается стартовый интервал и 8 единичных интервалов сигнала 1. В линию это идет как — 12 В. Таким образом формируется только один импульс — стартовый, который и равен 10 мкс.
Аналогично, для передачи 90-мкс импульса выдается байт 0 (=0000-0000), и в линию к стартовому добавляются еще 8 интервалов. В результате получается 90-мкс импульс управления. Таким 9-кратным отличием по длительности достигается высокая надежность считывания.
При большом удалении нагрузки от компьютера или интенсивных помехах целесообразно пойти на программное увеличение импульса управления. А для безошибочного выделения на приеме — пропорционально увеличить емкость конденсатора С1 (справедливо и для второго варианта схемы). Однако следует учитывать, что при этом увеличится и продолжительность передачи сигналов управления. Функциональное предназначение переменного резистора R4—подстройка времени заряда этого конденсатора, то есть юстировка четкости определения сигнала 1 или 0.
Для управления более мощной, чем светодиоды, нагрузкой придется в каждом из каналов установить, во-первых, гальваническую развязку (например, с помощью оптопары АОУ115Г), а во-вторых, электронный ключ типа симисторного. Причем если использовать КУ208Г (рис. 4), то даже без радиатора-теплоотвода можно получать на выходе 100 Вт. Такой мощности достаточно для коммутации ламп накаливания в матричном табло, питающемся от бытовой электросети.
Радиодетали, необходимые для сборки схем, не критичны к выбору. В частности, из постоянных резисторов пригодны МЛТ и другие. Удобны переменные резисторы СП5-2, а в качестве кнопок S1 и S2 ручного управления — микропереключатели МП8 или их аналоги. Микросхемы К555ИР8 можно заменить на К155ИР8 или аналогичные и поставить инвертор. Важно лишь, чтобы запись и сдвиг осуществлялись по окончанию импульса управления. Соответствующую замену легко найти и для К155ЛН1.
Рис. 3. Эпюры напряжений в контрольных точках; выход Q1 каждой ИМС подключен ко входам D0 и D1 следующей микросхемы (кроме Q1 последней)
Рис.4. Подключение 100-ваттного канала (в частности, лампы накаливания) к схеме компьютерного управления нагрузкой
Работоспособность каждой из схем можно проверить, контролируя осциллографом прохождение импульсов в контрольных точках. Затем, устанавливая тот или иной режим передачи (например, «Бегущие огни 1 + 1»), добиться переменным резистором правильного выделения передаваемых сигналов.
Требования к исполнительным цепям общие. Они достаточно полно освещены в радиолюбительской литературе, поэтому здесь не приводятся.
Теперь о программе. Она написана на Бейсике и позволяет получать оригинальные световые эффекты, используя ШИМ для компьютерного управления многоканальной нагрузкой, например, световым убранством новогодней елки, рекламными щитами, матричными табло.
Программа управления многоканальной нагрузкой через СОМ порт
(язык — Бейсик)
В строке 20 устанавливается число управляемых каналов (на один регистр — восемь, на два — шестнадцать и т.д.). Если используется порт СОМ-1, то в строке 10 называется его адрес, а вход выбранного варианта схемы подключается к выводам 3 и 5 разъема DB-9 компьютера.
Для управления из других программ с числом разрядов до 64 (это восемь микросхем К155ИР8) требуется специальная, достаточно объемистая программа «Драйвер». У автора она имеется, однако публикация ее невозможна из-за ограниченности журнальной площади.
А. ШАБРОНОВ, г. Новосибирск
ЛИТЕРАТУРА
1. А.Глушаченков. Выручит ФОРТ,— Моделист-конструктор, 1999, № 4.
2. А.Глушаченков. Воду «посеребрит» ЭВМ — Моделист-конструктор, 2000, № 1.
3. А.Шабронов. Емкость — через порт СОМ-2— Моделист-конструктор, 1998, № 9.
4. А.Шабронов. Опрос проводит ЭВМ. — Моделист-конструктор, 1999, № 6.
5. А.Шабронов. «Специалист» измерит емкость. — Моделист-конструктор, 1997, № 4.