Общие сведения
Одновременное синхронное управление яркостью большого числа световых элементов по линейному закону требует не только применения отдельного аппаратного ШИМ-контроллера на каждый канал, но и синхронизации работы таких контроллеров с определённым фазовым сдвигом между каналами. Предлагаемое устройство базируется на архитектуре программируемого 16-канального контроллера с последовательным интерфейсом, рассмотренной в [1]. Отличия заключаются в алгоритме чтения и прошивке ИМС ЭСППЗУ, а также применении более сложных выходных регистров типа 74AC595. Данный регистр состоит из 16 триггерных ячеек, первые восемь из которых входят в состав буферного регистра, а остальные восемь – в состав выходного. Применение последовательного интерфейса позволяет наращивать число световых элементов с минимальными аппаратными затратами без существенного усложнения схемотехнической части основного контроллера, а также управлять одновременно и синхронно несколькими наборами световых элементов по линиям последовательного интерфейса, длина которых может достигать 100 м. В простейшем случае СДУ реализует два световых эффекта типа «бегущая волна» с длиной слова ШИМ-последовательности, равной 16 бит. Эффекты сменяются в автоматическом режиме после четырёхкратного повторения или выбираются вручную нажатием кнопки. С увеличением объёма памяти используемой ИМС ЭСППЗУ возможно увеличение числа каналов, количества эффектов, а также длины слова ШИМ-последовательности.Для плавного управления яркостью в данном устройстве использован принцип широтно-импульсной модуляции (ШИМ). ШИМ – это способ кодирования цифрового сигнала путём изменения длительности (ширины) прямоугольных импульсов несущей частоты. На рис. 1 представлены типичные графики ШИМ сигнала. Поскольку при широтно-импульсной модуляции частота импульсов, а значит, и период (T), остаются неизменными, то при уменьшении длительности импульса (t) увеличивается пауза между импульсами (эпюра «Б» на рис. 1) и, наоборот, при увеличении длительности импульса пауза уменьшается (эпюра «В» на рис. 1). В нашем случае включению светодиода соответствует появление на выходе регистра уровня логического нуля, поэтому яркость возрастает с увеличением скважности импульсов (эпюра «Б» на рис. 1), и, наоборот, яркость уменьшается с уменьшением скважности (эпюра «В» на рис. 1). Напомним, что скважностью импульсов называется отношение периода следования импульсов к их длительности. Скважность – безразмерная величина и не имеет единиц измерения, но может быть выражена в процентах.
В данном устройстве используется 16-битная длина слова ШИМ-последовательности, что соответствует 16 градациям яркости световых элементов. Такого числа градаций яркости вполне достаточно для визуально плавного изменения яркости при периоде нарастания и спада «бегущей волны», не превышающем одной секунды. С увеличением периода изменения яркости до двух-трёх секунд переходы между уровнями яркости (градации) становятся визуально заметными, что потребует увеличения длины слова ШИМ-последовательности. Но для большинства применений, если не требуется очень медленного воспроизведения эффекта, вполне достаточно и 16 градаций яркости.
Для управления удалённым набором световых элементов используются три сигнальные линии последовательного интерфейса: «Data», «Clk1» и «Clk2». Первая линия «Data» – это информационный сигнал, а две другие линии – «Clk1» и «Clk2» – это сигналы стробирования буферных и выходных регистров, соответственно, входящих в состав ИМС 74AC595.
При работе на длинных несогласованных линиях связи возникают проблемы передачи данных, связанные с хорошо известными отражениями сигналов и перекрёстными помехами, наводимыми смежными проводниками, входящими в один жгут. Подобные отражения и помехи, возникающие в светодинамической системе, означают нарушение эстетического эффекта. Это накладывает ограничения на длину соединительной линии и предъявляет жёсткие требования к помехоустойчивости системы, использующей последовательный интерфейс.
Помехоустойчивость такой системы зависит от многих факторов: частоты и формы импульсов транслируемого сигнала, времени между изменениями уровней (скважности) импульсов, удельной ёмкости проводников линии, входящих в жгут, эквивалентного сопротивления линии, а также входного сопротивления приёмников сигнала и выходного сопротивления драйверов.
Эффекты влияния длинных несогласованных линий начинают проявляться, когда времена задержек распространения сигнала вдоль линии и обратно начинают превосходить длительность фронтов нарастания и спада сигнала. Любые несоответствия между эквивалентным сопротивлением линии и входным сопротивлением логического элемента на приёмной стороне линии или выходного сопротивления драйвера на передающей стороне приводят к многократному отражению сигнала. Типовое значение времён нарастания и спада фронтов сигнала для микросхем серии КР1554 составляет менее 5 нс, поэтому эффекты влияния длинных несогласованных линий начинают проявляться при её длине всего пятьдесят-шестьдесят сантиметров.
Зная характеристики линии передачи, такие как полная входная ёмкость и удельная ёмкость на единицу длины, можно вычислить время задержки распространения сигнала по всей длине линии. Типовое значение времени задержки распространения сигнала обычно составляет 5–10 нс/м. Если длина соединительной линии достаточно велика и длительность фронтов нарастания и спада сигнала достаточно мала, несоответствие эквивалентного сопротивления линии и входного сопротивления логического КМОП элемента на приёмной стороне создаёт отражение сигнала, амплитуда которого зависит от мгновенного значения напряжения, приложенного ко входу элемента, и коэффициента отражения, который, в свою очередь, зависит от эквивалентного сопротивления линии и входного сопротивления входного логического элемента.
Поскольку входное сопротивление элементов ИМС серии КР1554 многократно превосходит эквивалентное сопротивление линии, выполненной витой парой или экранированным проводником, отражённое напряжение на входе приёмника удваивается. Этот отражённый сигнал распространяется вдоль линии обратно к передатчику, где он вновь отражается, и процесс повторяется до полного затухания сигнала.
Особо подчеркнём, что отражения никак не связаны с частотой импульсов транслируемого сигнала, а вызваны только большой крутизной фронтов транслируемых синхроимпульсов. Для борьбы с отражениями в профессиональной схемотехнике, при работе на линии большой длины (100 м и более), используют специальные драйверы, уменьшающие крутизну фронтов транслируемых синхроимпульсов и тем самым исключающие ошибки передачи данных.
Для работы на линии относительно небольшой длины (от 10 до 100 м) вполне подходят ИМС стандартной логики серии КР1554 (74ACxx). Благодаря их высокой нагрузочной способности возможно непосредственное управление нагрузкой, имеющей ёмкостный характер. Сбалансированные (симметричные) вольтамперные выходные (передаточные) характеристики элементов этих микросхем позволяют получить практически одинаковые времена фронтов нарастания и спада сигнала. Кроме того, для трансляции сигналов в линию и приёма можно использовать мощные буферные элементы на основе триггеров Шмитта, обладающие гистерезисом, минимальное значение которого составляет около 0,9 В при напряжении питания 4,5 В, что создаёт дополнительный запас помехоустойчивости.
Для компенсации отражённого сигнала в данном устройстве используются так называемые интеграторы или интегрирующие RC-цепочки. Необходимость в них возникает только при работе на линии длиной более 10 м в условиях повышенного уровня помех. В авторском варианте устройства на линиях длиной до 10 м конденсаторы, показанные на схемах выходных регистров штриховыми линиями, не использовались. Линия связи при длине до 10 м выполняется жгутом из 5 проводников, включая <<Питание «+12 В»>> и <<Общий провод>>. При этом никаких сбоев не наблюдается даже без интегрирующих конденсаторов. При длине сигнальной линии от 10 до 100 м возрастают перекрёстные помехи, наводимые смежными проводниками. В таком случае каждую сигнальную линию: «Data», «Clk1» и «Clk2» необходимо выполнить отдельной витой парой, а на платах выходных регистров установить конденсаторы, показанные на схеме штриховыми линиями. В таком случае удалённые регистры и гирлянды запитываются от отдельного источника питания напряжением «+12 В».
Схема электрическая принципиальная
Светодинамическое устройство (рис. 2) состоит из основной платы контроллера и двух плат удалённых регистров, которые подключаются к основной плате с помощью трёх линий последовательного интерфейса. Общий проводник (на схеме не показан) также входит в состав соединительной линии и выполняется многожильным проводом сечением не менее 1 мм2. Соединительная линия заканчивается 9-контактной вилкой типа DB-9. На печатной плате установлен ответный разъём XN1 (на схеме также не показан).Основная плата контроллера содержит: схему сброса в исходное состояние на триггере Шмитта DD1.4 и элементах C3-R6-R7; задающий генератор на элементах DD1.1…DD1.3; схему формирования импульсов синхронизации DD6.1, DD4.2…DD4.4, DD7.1, DD7.2; адресный счётчик DD6.2 выборки мультиплексора DD9 и счётчики DD2.2, DD3.2, DD5.1, DD5.2 адресации ИМС ЭСППЗУ DD8; светодиодную линейку индикации номера страницы памяти (HL1…HL4, зелёного цвета), индикатор возрастания-убывания яркости (HL5, жёлтого цвета), а также индикатор номера светодинамического эффекта (HL6, красного цвета). Для контроля работоспособности устройства на основной плате установлены регистры DD11, DD12 и светодиодная линейка HL7…HL22. Для трансляции сигналов в качестве драйверов использованы мощные буферные элементы на основе триггеров Шмитта типа КР1554ТЛ2 (74AC14). В качестве ИМС памяти можно использовать не только ЭСППЗУ типа AT28C16, но и РПЗУ типа КР573РФ2(РФ5).
Для разработки управляющей программы использован контроллер с интегрированным программатором, рассмотренный в [2]. Возможен и альтернативный вариант написания управляющей прошивки с помощью Виртуального программатора (Light Effects Dumper), но в таком случае необходимо переназначение адресных линий ИМС ЭСППЗУ (РПЗУ) при её программировании средствами стандартного программатора. Такую функцию поддерживают все промышленные программаторы профессионального уровня и большинство программаторов среднего уровня. Необходимость переназначения адресных линий при программировании ЭСППЗУ связана с тем, что при разработке программатора, рассмотренного в [2], изначально был выбран другой (обратный) порядок адресных линий для удобства трассировки печатной платы. Для конкретного контроллера [2] переназначение адресных линий на работе никак не отражается, поскольку данные считываются в той же последовательности, в которой и были записаны. При разработке СДУ «бегущая волна» порядок нумерации адресных линий был сохранён, чтобы обеспечить совместимость данного устройства с программатором [2]. Но в таблице приведён вариант прошивки светодинамических эффектов, сформированный с помощью программы Виртуального программатора (Light Effects Dumper), чтобы читатели смогли просмотреть прошивку с помощью программы Виртуального симулятора (Light Effects Reader), доступной по ссылке [3], и лучше ознакомиться с принципами работы устройства и разработки управляющей программы.
Таблица
0000 ВВ ВВ ВВ ВВ ВВ ВВ ВВ ВВ ВВ ВВ ВВ ВВ ВВ ВВ ВВ ВВ
0010 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11
0020 FF FF ВВ ВВ ВВ ВВ ВВ ВВ ВВ ВВ ВВ ВВ ВВ ВВ 99 99
0030 99 99 11 11 11 11 11 11 11 11 11 11 11 11 00 00
0040 FF FF FF FF ВВ ВВ ВВ ВВ ВВ ВВ ВВ ВВ 99 99 99 99
0050 99 99 99 99 11 11 11 11 11 11 11 11 00 00 00 00
0060 FF FF FF FF FF FF ВВ ВВ ВВ ВВ 99 99 99 99 99 99
0070 99 99 99 99 99 99 11 11 11 11 00 00 00 00 00 00
0080 FF FF FF FF FF FF FF FF 99 99 99 99 99 99 99 99
0090 99 99 99 99 99 99 99 99 00 00 00 00 00 00 00 00
00А0 FF FF FF FF FF FF DD DD DD DD 99 99 99 99 99 99
00В0 99 99 99 99 99 99 88 88 88 88 00 00 00 00 00 00
00С0 FF FF FF FF DD DD DD DD DD DD DD DD 99 99 99 99
00D0 99 99 99 99 88 88 88 88 88 88 88 88 00 00 00 00
00Е0 FF FF DD DD DD DD DD DD DD DD DD DD DD DD 99 99
00F0 99 99 88 88 88 88 88 88 88 88 88 88 88 88 00 00
0100 DD DD DD DD DD DD DD DD DD DD DD DD DD DD DD DD
0110 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88
0120 FF FF DD DD DD DD DD DD DD DD DD DD DD DD СС СС
0130 СС СС 88 88 88 88 88 88 88 88 88 88 88 88 00 00
0140 FF FF FF FF DD DD DD DD DD DD DD DD СС СС СС СС
0150 СС СС СС СС 88 88 88 88 88 88 88 88 00 00 00 00
0160 FF FF FF FF FF FF DD DD DD DD СС СС СС СС СС СС
0170 СС СС СС СС СС СС 88 88 88 88 00 00 00 00 00 00
0180 FF FF FF FF FF FF FF FF СС СС СС СС СС СС СС СС
0190 СС СС СС СС СС СС СС СС 00 00 00 00 00 00 00 00
01А0 FF FF FF FF FF FF ЕЕ ЕЕ ЕЕ ЕЕ СС СС СС СС СС СС
01В0 СС СС СС СС СС СС 44 44 44 44 00 00 00 00 00 00
01С0 FF FF FF FF ЕЕ ЕЕ ЕЕ ЕЕ ЕЕ ЕЕ ЕЕ ЕЕ СС СС СС СС
01D0 СС СС СС СС 44 44 44 44 44 44 44 44 00 00 00 00
01Е0 FF FF ЕЕ ЕЕ ЕЕ ЕЕ ЕЕ ЕЕ ЕЕ ЕЕ ЕЕ ЕЕ ЕЕ ЕЕ СС СС
01F0 СС СС 44 44 44 44 44 44 44 44 44 44 44 44 00 00
0200 ЕЕ ЕЕ ЕЕ ЕЕ ЕЕ ЕЕ ЕЕ ЕЕ ЕЕ ЕЕ ЕЕ ЕЕ ЕЕ ЕЕ ЕЕ ЕЕ
0210 44 44 44 44 44 44 44 44 44 44 44 44 44 44 44 44
0220 FF FF ЕЕ ЕЕ ЕЕ ЕЕ ЕЕ ЕЕ ЕЕ ЕЕ ЕЕ ЕЕ ЕЕ ЕЕ 66 66
0230 66 66 44 44 44 44 44 44 44 44 44 44 44 44 00 00
0240 FF FF FF FF ЕЕ ЕЕ ЕЕ ЕЕ ЕЕ ЕЕ ЕЕ ЕЕ 66 66 66 66
0250 66 66 66 66 44 44 44 44 44 44 44 44 00 00 00 00
0260 FF FF FF FF FF FF ЕЕ ЕЕ ЕЕ ЕЕ 66 66 66 66 66 66
0270 66 66 66 66 66 66 44 44 44 44 00 00 00 00 00 00
0280 FF FF FF FF FF FF FF FF 66 66 66 66 66 66 66 66
0290 66 66 66 66 66 66 66 66 00 00 00 00 00 00 00 00
02А0 FF FF FF FF FF FF 77 77 77 77 66 66 66 66 66 66
02B0 66 66 66 66 66 66 22 22 22 22 00 00 00 00 00 00
02C0 FF FF FF FF 77 77 77 77 77 77 77 77 66 66 66 66
02D0 66 66 66 66 22 22 22 22 22 22 22 22 00 00 00 00
02E0 FF FF 77 77 77 77 77 77 77 77 77 77 77 77 66 66
02F0 66 66 22 22 22 22 22 22 22 22 22 22 22 22 00 00
0300 77 77 77 77 77 77 77 77 77 77 77 77 77 77 77 77
0310 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22
0320 FF FF 77 77 77 77 77 77 77 77 77 77 77 77 33 33
0330 33 33 22 22 22 22 22 22 22 22 22 22 22 22 00 00
0340 FF FF FF FF 77 77 77 77 77 77 77 77 33 33 33 33
0350 33 33 33 33 22 22 22 22 22 22 22 22 00 00 00 00
0360 FF FF FF FF FF FF 77 77 77 77 33 33 33 33 33 33
0370 33 33 33 33 33 33 22 22 22 22 00 00 00 00 00 00
0380 FF FF FF FF FF FF FF FF 33 33 33 33 33 33 33 33
0390 33 33 33 33 33 33 33 33 00 00 00 00 00 00 00 00
03A0 FF FF FF FF FF FF ВВ ВВ ВВ ВВ 33 33 33 33 33 33
03B0 33 33 33 33 33 33 11 11 11 11 00 00 00 00 00 00
03C0 FF FF FF FF ВВ ВВ ВВ ВВ ВВ ВВ ВВ ВВ 33 33 33 33
03D0 33 33 33 33 11 11 11 11 11 11 11 11 00 00 00 00
03E0 FF FF ВВ ВВ ВВ ВВ ВВ ВВ ВВ ВВ ВВ ВВ ВВ ВВ 33 33
03F0 33 33 11 11 11 11 11 11 11 11 11 11 11 11 00 00
0400 EF EF EF EF EF EF EF EF C7 C7 C7 C7 C7 C7 C7 C7
0410 83 83 83 83 83 83 83 83 01 01 01 01 01 01 01 01
0420 FF FF EF EF EF EF E7 E7 E7 E7 C7 C7 C7 C7 СЗ СЗ
0430 СЗ СЗ 83 83 83 83 81 81 81 81 01 01 01 01 00 00
0440 FF FF FF FF E7 E7 E7 E7 E7 E7 E7 E7 СЗ СЗ СЗ СЗ
0450 СЗ СЗ СЗ СЗ 81 81 81 81 81 81 81 81 00 00 00 00
0460 FF FF F7 F7 F7 F7 E7 E7 E7 E7 ЕЗ ЕЗ ЕЗ ЕЗ СЗ СЗ
0470 СЗ СЗ Cl Cl Cl Cl 81 81 81 81 80 80 80 80 00 00
0480 F7 F7 F7 F7 F7 F7 F7 F7 ЕЗ ЕЗ ЕЗ ЕЗ ЕЗ ЕЗ ЕЗ ЕЗ
0490 Cl Cl Cl Cl Cl Cl Cl Cl 80 80 80 80 80 80 80 80
04A0 FF FF F7 F7 F7 F7 F3 F3 F3 F3 ЕЗ ЕЗ ЕЗ ЕЗ El El
04B0 El El Cl Cl Cl Cl C0 C0 C0 C0 80 80 80 80 00 00
04C0 FF FF FF FF F3 F3 F3 F3 F3 F3 F3 F3 El El El El
04D0 El El El El C0 C0 C0 C0 C0 C0 C0 C0 00 00 00 00
04E0 FF FF FB FB FB FB F3 F3 F3 F3 Fl Fl Fl Fl El El
04F0 El El E0 E0 E0 E0 C0 C0 C0 C0 40 40 40 40 00 00
0500 FB FB FB FB FB FB FB FB Fl Fl Fl Fl Fl Fl Fl Fl
0510 E0 E0 E0 E0 E0 E0 E0 E0 40 40 40 40 40 40 40 40
0520 FF FF FB FB FB FB F9 F9 F9 F9 Fl Fl Fl Fl F0 F0
0530 F0 F0 E0 E0 E0 E0 60 60 60 60 40 40 40 40 00 00
0540 FF FF FF FF F9 F9 F9 F9 F9 F9 F9 F9 F0 F0 F0 F0
0550 F0 F0 F0 F0 60 60 60 60 60 60 60 60 00 00 00 00
0560 FF FF FD FD FD FD F9 F9 F9 F9 F8 F8 F8 F8 F0 F0
0570 F0 F0 70 70 70 70 60 60 60 60 20 20 20 20 00 00
0580 FD FD FD FD FD FD FD FD F8 F8 F8 F8 F8 F8 F8 F8
0590 70 70 70 70 70 70 70 70 20 20 20 20 20 20 20 20
05A0 FF FF FD FD FD FD FC FC FC FC F8 F8 F8 F8 78 78
05B0 78 78 70 70 70 70 30 30 30 30 20 20 20 20 00 00
05C0 FF FF FF FF FC FC FC FC FC FC FC FC 78 78 78 78
05D0 78 78 78 78 30 30 30 30 30 30 30 30 00 00 00 00
05E0 FF FF FE FE FE FE FC FC FC FC 7C 7C 7C 7C 78 78
05F0 78 78 38 38 38 38 30 30 30 30 10 10 10 10 00 00
0600 FE FE FE FE FE FE FE FE 7C 7C 7C 7C 7C 7C 7C 7C
0610 38 38 38 38 38 38 38 38 10 10 10 10 10 10 10 10
0620 FF FF FE FE FE FE 7E 7E 7E 7E 7C 7C 7C 7C ЗС ЗС
0630 ЗС ЗС 38 38 38 38 18 18 18 18 10 10 10 10 00 00
0640 FF FF FF FF 7E 7E 7E 7E 7E 7E 7E 7E ЗС ЗС ЗС ЗС
0650 ЗС ЗС ЗС ЗС 18 18 18 18 18 18 18 18 00 00 00 00
0660 FF FF 7F 7F 7F 7F 7E 7E 7E 7E ЗЕ ЗЕ ЗЕ ЗЕ ЗС ЗС
0670 3C 3C 1C 1C 1C 1C 18 18 18 18 08 08 08 08 00 00
0680 7F 7F 7F 7F 7F 7F 7F 7F 3E ЗЕ ЗЕ ЗЕ ЗЕ ЗЕ ЗЕ ЗЕ
0690 1C 1C 1C 1C 1C 1C 1C 1C 08 08 08 08 08 08 08 08
06A0 FF FF 7F 7F 7F 7F 3F 3F 3F 3F ЗЕ ЗЕ ЗЕ ЗЕ IE IE
06B0 IE IE 1C 1C 1C 1C 0С 0С 0С ОС 08 08 08 08 00 00
06C0 FF FF FF FF 3F 3F 3F 3F 3F 3F 3F 3F IE IE IE IE
0600 IE IE IE IE 0С 0С 0С 0С 0С 0С 0С 0С 00 00 00 00
06ЕО FF FF BF BF BF BF 3F 3F 3F 3F IF IF IF IF IE IE
06F0 IE IE 0E 0E 0E 0E ОС ОС ОС ОС 04 04 04 04 00 00
0700 BF BF BF BF BF BF BF BF 1F IF IF IF IF IF IF IF
0710 0E 0E 0E 0E 0E 0E 0E 0E 04 04 04 04 04 04 04 04
0720 FF FF BF BF BF BF 9F 9F 9F 9F IF IF IF IF 0F 0F
0730 0F 0F 0E 0E 0E 0E 06 06 06 06 04 04 04 04 00 00
0740 FF FF FF FF 9F 9F 9F 9F 9F 9F 9F 9F 0F 0F 0F 0F
0750 0F 0F 0F 0F 06 06 06 06 06 06 06 06 00 00 00 00
0760 FF FF DF DF DF DF 9F 9F 9F 9F 8F 8F 8F 8F 0F 0F
0770 0F 0F 07 07 07 07 06 06 06 06 02 02 02 02 00 00
0780 DF DF DF DF DF DF DF DF 8F 8F 8F 8F 8F 8F 8F 8F
0790 07 07 07 07 07 07 07 07 02 02 02 02 02 02 02 02
07A0 FF FF DF DF DF DF CF CF CF CF 8F 8F 8F 8F 87 87
07B0 87 87 07 07 07 07 03 03 03 03 02 02 02 02 00 00
07C0 FF FF FF FF CF CF CF CF CF CF CF CF 87 87 87 87
07D0 87 87 87 87 03 03 03 03 03 03 03 03 00 00 00 00
07E0 FF FF EF EF EF EF CF CF CF CF C7 C7 C7 C7 87 87
07F0 87 87 83 83 83 83 03 03 03 03 0l 01 01 01 00 00
Принцип работы
При включении питания интегрирующая цепочка C3-R6 совместно с триггером Шмитта DD1.4 формирует короткий положительный импульс, который обнуляет счётчики DD2.1…DD6.2 (кроме DD3.1, который не используется), и тем самым переводит контроллер в исходное состояние. Импульсы задающего генератора DD1.1…DD1.3 с частотой около 130 КГц (точнее, 131 072 Гц) синхронизируют счётчик DD6.1, а вслед за ним и DD6.2 и остальные адресные счётчики. Забегая вперёд, скажем, что одному полному циклу нарастания-спада яркости «бегущей волны», по длительности равному две секунды, соответствует частота задающего генератора именно 131 072 Гц. Это значение получается исходя из частоты обновления данных в выходных регистрах равной 128 Гц, что намного превосходит эргономичное значение 85 Гц. Такая частота обновления данных необходима, чтобы исключить мерцание световых элементов и создать иллюзию плавного изменения яркости.Временнáя диаграмма формирования импульсов синхронизации показана на рис. 3. Из неё видно, что на каждый импульс синхронизации выходных регистров («Clk2»), формирующийся на выходе элемента DD7.2 (вывод 6), приходится 16 импульсов синхронизации буферных регистров («Clk1»), входящих в состав ИМС 74AC595. Причём положительный перепад синхроимпульса («Clk1»), формирующийся на выходе элемента DD4.3 (вывод 6), приходится на середину знакоместа передачи бита данных. Синхронизация буферного регистра в моменты, приходящиеся на середину знакоместа, как установлено опытным путём по результатам испытаний базовой версии контроллера [1], соответствует максимальной помехоустойчивости при работе на несогласованные линии большой длины. При этом в применении интеграторов на входах удалённых регистров нет необходимости.
Первый же отрицательный импульс, считая с момента включения питания, формирующийся на выходе элемента DD4.3 (вывод 6), своим задним фронтом (положительным перепадом) производит запись бита данных, считанного из первой ячейки ЭСППЗУ по нулевому (0000h) адресу, в первые триггеры буферных регистров, входящие в состав ИМС DD11 и DD14 с одновременным сдвигом информации в направлении возрастания разрядов. Содержимое выходных регистров, входящих в состав ИМС DD11, DD12, DD14, DD16, при этом не изменяется, и светодиодные линейки отображают текущую светодинамическую комбинацию. Как отмечено выше, длина слова ШИМ-последовательности составляет 16 бит, поэтому для отображения одного уровня (градации) яркости на линейке из шестнадцати светодиодов необходимо передать в регистры пакет данных из 16×16 = 256 бит информации, что условно соответствует одной странице адресного пространства ЭСППЗУ. Таким образом, полный цикл возрастания-убывания яркости занимает 32 страницы адресного пространства, или 8К, из которых первые 16 страниц (4К) – это полуцикл возрастания яркости, а вторая половина, также 16 страниц (также объёмом 4К) – это полуцикл убывания яркости, считая относительно первого канала.
Отрицательный перепад каждого положительного импульса с выхода 2 (вывод 4) счётчика DD6.1 увеличивает состояние счётчика DD6.2 на единицу и, следовательно, подключает к выходу мультиплексора DD9 его десятичный вход, соответствующий двоичному эквиваленту кода, который, в свою очередь, подключён к выходу соответствующего разряда данных ИМС ЭСППЗУ DD8. После записи 16 бит данных в буферные регистры ИМС DD11, DD12, DD14, DD16 задним фронтом (положительным перепадом) отрицательного импульса, формирующегося на выходе элемента DD7.2, производится перезапись содержимого буферных регистров ИМС DD11, DD12, DD14, DD16 в их соответствующие выходные регистры. На светодиодных линейках HL7…HL22 и HL23…HL38 при этом фиксируется новая комбинация. Но суммарному (интегральному) значению яркости соответствует именно шестнадцать 16-битных пакетов, т.е. 16×16 = 256 бит данных, переданных в регистры по линиям последовательного интерфейса, как отмечено выше.
Изменение уровней (градаций) яркости индицирует линейка светодиодов HL1…HL4, отображающая в двоичном коде состояния счётчика DD3.2. Как видно из схемы электрической (рис. 2), счётные импульсы на вход DD3.2 приходят с выхода DD2.2 после деления на восемь с помощью счётчика DD2.1. Такое деление частоты выходных импульсов DD2.2 необходимо для более медленного нарастания яркости, чем можно было бы получить без деления частоты с помощью счётчика DD2.1.
Счётчики DD3.2 и DD5.1 адресуют первую половину пространства ИМС ЭСППЗУ DD8 в нулевом состоянии счётчика DD5.2 и вторую половину адресного пространства ИМС ЭСППЗУ DD8 в единичном состоянии данного счётчика. Режим выбора световых эффектов – ручной или автоматический – устанавливается переключателем SA1. В показанном на схеме положении происходит автоматическое чередование эффектов после четырёх повторений. Это достигается благодаря подаче счётных импульсов с выхода третьего разряда DD5.1 (вывод 5) на вход счётчика DD5.2. В нижнем, по схеме, положении переключателя SA1 короткие положительные импульсы на вход счётчика DD5.2 поступают при нажатии кнопки SB1. Состояния счётчиков DD5.1 и DD5.2 индицируют, соответственно, жёлтый (HL5) и красный (HL6) светодиоды.
Конструкция и детали
Основной контроллер собран на печатной плате из двустороннего стеклотекстолита размерами 140×90 мм и толщиной 1,5 мм (рис. 4), а выходные регистры (рис. 5) – 90×30 мм (рис. 6). В устройстве применены постоянные резисторы типа МЛТ-0,125, подстроечный – СП3-38б, конденсаторы неполярные (С1…С3, С8…С10, С12…С14) типа К10-17, электролитические (С4…С7, С11, С15) – К50-35. На основной плате контроллера установлены сверхъяркие светодиоды диаметром 3 мм (HL1…HL6) и диаметром 5 мм (HL7…HL22), а в удалённой гирлянде – сверхъяркие диоды четырёх цветов КИПМ-15 диаметром 10 мм, размещённые в чередующейся последовательности. Учитывая различие в падении напряжения на прямо смещённых светодиодах (для красного и жёлтого это значение составляет 2,1 В, а для синего и зелёного – 3,0 В), необходимо последовательно со светодиодами включать соответствующие ограничительные резисторы: 220 и 150 Ом. Для управления мощной нагрузкой выходные регистры нужно дополнить транзисторными ключами. Возможно применение непосредственно на месте ЭСППЗУ типа AT28C16-15PI микросхемы памяти типа РПЗУ типа КР573РФ2 или КР573РФ5 без изменения рисунка печатной платы. Счётчики типа КР1564 ИЕ23 (74HC 4520N) можно заменить на К561 ИЕ10 (CD4520AN), кроме ИМС DD3, DD5, к выходам которых подключены индикаторные светодиоды. Мультиплексор DD9 типа КР1564 КП7 (74HC 151) заменим на КР1564 КП15 (74HC 251). Соединительная линия при длине до 10 м выполняется жгутом из 4 многожильных проводников сечением 0,35 мм2 (для сигнальных линий) и 1 мм2 («общий» провод) в изоляции, а при длине от 10 до 100 м сигнальные линии необходимо выполнить отдельными витыми парами, а на платах выходных регистров установить интегрирующие конденсаторы, ёмкостью не более 150 пФ.Подготовка к работе устройства, собранного из исправных деталей и без ошибок, заключается в записи прошивки в ИМС ЭСППЗУ (РПЗУ) средствами стандартного программатора. При этом необходимо программно переназначить порядок адресных линий ИМС ЭСППЗУ, выбрав в программе соответствующую опцию. Прежде чем запрограммировать микросхему ЭСППЗУ, текстовый файл программы (см. таблицу) необходимо конвертировать в двоичный формат с помощью одной из бесплатно распространяемых программ-конверторов, к примеру, [4]. Выбрать желаемую скорость воспроизведения светодинамических эффектов можно с помощью подстроечного резистора R3 на основной плате контроллера.
Литература
- Одинец А.Л. Программируемое СДУ и виртуальный симулятор // Современная электроника. 2023. № 8. С. 34–40.
- Одинец А.Л. Программируемое 32-канальное светодинамическое устройство // Современная электроника. 2024. № 5. С. 24–31.
- URL: http://www.art-of-light.narod.ru/LightEffectsReader.rar.
- URL: https://www.x-ways.net/winhex/index-m.html.
© СТА-ПРЕСС, 2024