Фильтр по тематике

Устройство световых эффектов с сетевым интерфейсом

В статье представлен вариант устройства световых эффектов на базе микроконтроллеров AVR с управлением по интерфейсу RS-485. В состав устройства входят 15 контроллеров световых эффектов и пульт управления, включённые в сеть RS-485. Для реализации вышеуказанной сети задействованы драйверы MAX487CPA. Каждый контроллер реализует 16 различных световых эффектов, тип и скорость выполнения которых можно задать с клавиатуры контроллера или пульта.

01.02.2019 925 0
Устройство световых эффектов с сетевым интерфейсом

Структурная схема устройства световых эффектов представлена на рисунке 1.

В качестве канала связи применён интерфейс RS-485. Это широко распространённый высокоскоростной и помехоустойчивый промышленный последовательный интерфейс передачи данных. В настоящее время на рынке представлены сотни различных типов драйверов, на которых можно его реализовать. В устройстве задействован драйвер MAX487CPA. Он позволяет подключить в сеть до 128 станций (устройств).

В состав устройства входят пульт и 15 контроллеров световых эффектов № 1…№ 15, подключённые в сеть RS-485. Контроллеры идентичны по конструкции и схемотехнике. Каждый из них имеет в сети свой адрес, зашитый в память программ микроконтроллера, поэтому программное обеспечение у них разное. Принципиальная схема контроллера световых эффектов представлена на рисунке 2.

Принципиальная схема пульта управления представлена на рисунке 3.

В устройстве количество подключаемых контроллеров к пульту ограничено только тем, что на его дисплее для задания адреса предусмотрен один разряд (7-сегментный индикатор). Таким образом, если для задания адреса задействовать два разряда, то количество подключаемых контроллеров можно довести до 127, доработав при этом соответствующим образом программное обеспечение контроллера.

Не будем останавливаться на конструкции функциональных узлов устройства, а перейдём к схемотехнике и программному обеспечению. Интерфейс управления (ИУ) устройства состоит из ИУ контроллеров и ИУ пульта. Элементы интерфейса контроллера: клавиатура (кнопки S1…S5), индикаторы HG1, HG2 (см. рис. 2); элементы интерфейса пульта: индикаторы HG1…HG3, клавиатура (кнопки S1…S5) (см. рис. 3).

Рассмотрим алгоритм работы контроллера № 1. Число, индицируемое на индикаторе HG1, определяет номер светового эффекта, исполняемого в устройстве. Число, индицируемое на индикаторе HG2, определяет относительную скорость переключения индикаторов в выбранном световом эффекте; данное число может изменяться в пределах от 1 до 8 с шагом 1.

Кнопки клавиатуры имеют следующее назначение:

  • S1 (Δ) – инкремент числа, индицируемого на индикаторе HG1 (выбор номера выполняемого светового эффекта); инкремент числа, индицируемого на индикаторе HG2 (увеличение скорости);
  • S2 (∇) – декремент числа, индицируемого на индикаторе HG1 (выбор номера выполняемого светового эффекта); декремент числа, индицируемого на индикаторе HG2 (уменьшение скорости);
  • S3 (С) – старт/стоп (после нажатия на данную кнопку устройство реализует световой эффект, индицируемый на индикаторе HG1, со скоростью переключения, индицируемой на индикаторе HG2);
  • S4 (В) – включить/выключить индикаторы HL1…HL64 (после нажатия на данную кнопку включаются/выключаются все индикаторы, подключённые к контроллеру. Данная опция необходима для проверки работоспособности индикаторов в устройстве);
  • S5 (Р) – кнопка выбора режима работы кнопок S1, S2 – задание номера светового эффекта или задание скорости (при выборе номера светового эффекта точка h индикатора HG2 выключается, при выборе режима задания скорости – включается).

Световые эффекты, реализуемые контроллером № 1, аналогичны описанным в [1]. Конструктивно индикаторы HL1…HL8 образуют собой гирлянду (гирлянда № 1) – соответственно, индикаторы HL9…HL16 образуют гирлянду № 2 и т.д. Индикаторы HL58…HL64 – гирлянда № 8. Считаем также, что конструктивно все индикаторы в гирлянде расположены в один ряд.

Алгоритм работы контроллера № 1 следующий. Сразу после подачи питания устройство готово к работе. Номер исполняемого светового эффекта задаётся кнопками S1, S2 (точка h индикатора HG2 выключена). Далее необходимо нажать кнопку S4 (В) – при этом включится точка h в индикаторе HG2 дисплея. Кнопками S1, S2 нужно задать скорость переключения индикаторов в выбранном световом эффекте. Исполнение эффекта начинается после нажатия кнопки S3 (С). Для исполнения другого светового эффекта (или для изменения скорости переключения индикаторов в исполняемом) необходимо нажать кнопку S3 (С) (остановить исполняемый световой эффект). Далее следует выполнить вышеуказанные операции по установке номера светового эффекта и задания скорости переключения индикаторов. На 7-сегментном индикаторе HG1 буква B и цифра 8, а также буква D и цифра 0 индицируются одинаково, поэтому при индицировании букв B и D на 7-сегментном индикаторе HG1 включается точка h.

С порта РВ микроконтроллер DD2 управляет индикаторами гирлянд № 1…№ 8. Сами гирлянды управляются ключами, выполненными на транзисторах VT3…VT10. Данные ключи управляются с выводов синхронного регистра DD1 и выводов 9, 11 микроконтроллера DD2. Резисторы R3…R10 – токоограничительные для индикаторов HL1…HL64. Все индикаторы в контроллере работают в режиме динамической индикации. Коды для включения индикаторов при функционировании динамической индикации поступают на вход порта PВ микроконтроллера DD2. Регистр DD1 управляет ключами VT1…VT8. Для функционирования клавиатуры задействован вывод 8 микроконтроллера DD2. Питающее напряжение поступает на контроллер с соединителя Х2. Конденсатор С5 фильтрует пульсации в цепи питания +5 В. При инициализации во все разряды портов микроконтроллера DD1 записывается лог 1. Ключи на транзисторах VT3…VT10 закрыты, индикаторы HL1…HL64 выключены.

Программное обеспечение микроконтроллера DD2 обеспечивает реализацию алгоритма работы задаваемых световых эффектов в режиме динамической индикации с заданной скоростью переключения гирлянд. Задача по формированию временно¢го интервала для включения индикаторов на каждой гирлянде (или интервала переключения индикаторов и гирлянд) решена с помощью прерываний от таймера Т/C1 и счётчиков на регистрах r8 (sek1) и r13 (min1). Таймер Т/C1 формирует запрос на прерывание, счётчики на регистрах r8 и r13 подсчитывают количество прерываний, и устанавливается необходимый флаг (нулевой разряд регистра r19 (flo). Скорость переключения индикаторов меняется путём изменения числа speed, загружаемого в регистр r13 (min1).

Программа состоит из процедуры инициализации, основной программы, работающей в замкнутом цикле, и подпрограммы обработки прерывания от таймера Т/C1 и прерывания по завершению приёма USART. При переходе на метку Reset инициализируются стек, USART, таймер, порты, а также флаги и переменные, используемые в программе.

В подпрограмме обработки прерывания осуществляются формирование временно¢го интервала для включения индикаторов, опрос клавиатуры, работа динамической индикации, а также происходит выполнение всех световых эффектов, реализованных в устройстве. В памяти данных микроконтроллера DD1 с адресов 60Н…69Н организован буфер отображения для динамической индикации. По адресу 60Н размещён байт номера отображаемого светового эффекта. По адресу 61Н размещено число, задающее скорость переключения индикаторов. Данные байты после перекодировки в режиме динамической индикации выводятся на дисплей устройства. 62Н…69Н – адреса, где хранятся текущие значения для индикаторов HL1…HL64 (гирлянд № 1…№ 8). Доступ к данным в адресном пространстве с помощью адресных указателей следующий: адреса гирлянд № 1…№ 8 и байты номеров светового эффекта и скорости загружаются в Y-регистр во фрагментах программы, где происходит выполнение светового эффекта. Z-регистр задействован только во фрагменте динамической индикации. При задании параметров с пульта в приёмнике из регистра UDR сообщение переписывается в буфер приёма на адреса 60Н…70Н.

Протокол односторонний – от пульта к контроллерам; пульт – передатчик, контроллеры – приёмники. Сообщения (протокол передачи) имеют следующий вид: А1 А2 А3 А4, А5 где А1 – байт адреса контроллера светового эффекта (число от 1 до F); А2 – байт номера светового эффекта (число от 0 до F, световые эффекты представлены в [1]); А3 – байт скорости переключения индикаторов (число от 1 до 8); А4 – байт включения/выключения заданного светового эффекта (число 1 в данном байте – включение выбранного светового эффекта, число 0 – выключение светового эффекта; в устройстве по умолчанию в нём установлено число 1); А5 – байт контрольной суммы CRC8 (этот байт нужен для проверки целостности принятой информации).

Фрагмент программы обработки буфера приёма для контроллера № 1 с адресом -1 приведён в листинге 1.

Фрагмент программы обработки прерывания от USART и вычисления СRC8 приведён в листинге 2.

Разработанная программа на ассемблере занимает порядка 1,9 Кбайт памяти программ (flash-память программ) микроконтроллера.

В контроллере использованы резисторы С2-33Н-0.125, однако подойдут любые другие с такой же мощностью рассеивания и погрешностью 5%. Конденсаторы С1…С6 типа К10-17а, С7 – типа К50-35. Конденсатор С4 устанавливается между цепью +5В и общим проводником микроконтроллера DD2. Конденсатор С5 устанавливается между цепью +5В и общим проводником регистра DD1. 7-сегментные индикаторы HG1, HG2 типа HDSP-F501. Индикаторы HL1…HL64 типа КИПД40С20-Л4-П7. Для гирлянд можно подобрать абсолютно любые индикаторы, желательно с Iпр=10 мА.

Рассмотрим алгоритм работы пульта. Кнопки его клавиатуры имеют следующее назначение:

  • S1 (Δ) – инкремент числа выбранного разряда в 4-разрядном дисплее;
  • S2 (∇) – декремент числа выбранного разряда в 4-разрядном дисплее;
  • S3 (Р) – кнопка выбора разряда на дисплее для изменения числа в нём (выбранный разряд мигает с частотой 1 с);
  • S4 (О) – кнопка обнуления показаний на дисплее (после нажатия на данную кнопку во всех разрядах дисплея индицируются нули);
  • S5 (П) – кнопка отправки (передачи) набранного сообщения по последовательному каналу.

Функциональное назначение индикаторов HG1…HG3 на дисплее пульта соответствует назначению байт в сообщении:

  • HG1 – индикатор адреса (число от 1 до F);
  • HG2 – индикатор номера светового эффекта (число от 1 до F);
  • HG3 – индикатор скорости переключения индикаторов в световом эффекте (число от 1 до 8).

Число, индицируемое на каждом из индикаторов HG1, HG2 кнопками S1 (Δ), S2 (∇), можно задать в диапазоне от 0 до F. В данном случае программа для пульта получается более простой и занимает меньше места в памяти программ микроконтроллера. Точно так же, как и в дисплее контроллера, на 7-сегментном индикаторе буква B и цифра 8, а также буква D и цифра 0 индицируются одинаково, поэтому при индицировании букв B и D в 7-сегментных индикаторах дисплея пульта включается точка h. Сразу после подачи питания пульт переходит в рабочий режим, на дисплее индицируется число 000. Затем с помощью клавиатуры задаётся и отправляется необходимое сообщение в выбранный контролер.

В программе пульта используются 3 прерывания: Reset, прерывание таймера Т1 и прерывание по событию «Регистр данных USART пуст». При переходе на метку Reset инициализируются стек, USART, таймер, порты, а также флаги и переменные, используемые в программе. В обработчике прерывания таймера Т1 осуществляются процедура опроса кнопок S1…S5, функционирование динамической индикации, перекодировка двоичного числа в код для отображения информации на 7-сегментных индикаторах устройства. В подпрограмме обработки прерывания по событию «Регистр данных USART пуст» происходит передача данных через передатчик USART. В ОЗУ микроконтроллера по адресам $61…$63 организован буфер отображения для динамической индикации. Разработанная программа на ассемблере занимает порядка 0,8 Кбайт памяти программ (flash-память программ) микроконтроллера.

Пульт и контроллеры собраны фактически из одних и тех же элементов. В пульте применены резисторы типа С2-33Н, но подойдут любые другие с такой же мощностью рассеивания и погрешностью 5%. Конденсаторы С1…С5 типа К10-17а, С6 – типа К50-35а. 7-сегментные индикаторы HG1…HG3 типа HDSP-F501, зелёного цвета. Элементную базу для клавиатуры и динамической индикации можно подобрать любую – главное, чтобы она отвечала требованиям для работы в составе функциональных узлов устройства. Для организации сети RS-485 можно применить кабель типа КИПЭП 1´2´0,60 ТУ16.К99-008-2001 или любой другой типа витая пара с волновым сопротивлением 120 Ом.

Тексты программ (для пульта и версии для контроллеров № 1…№ 15), а также hex-файлы представлены в дополнительных материалах на сайте журнала www.soel.ru.

Литература

  1. Шишкин С. Устройство световых эффектов с управлением скоростью переключения и яркостью свечения. Современная электроника. 2017. № 7.

Если вам понравился материал, кликните значок — вы поможете нам узнать, каким статьям и новостям следует отдавать предпочтение. Если вы хотите обсудить материал —не стесняйтесь оставлять свои комментарии : возможно, они будут полезны другим нашим читателям!

01.02.2019 925 0
Комментарии
Рекомендуем
Организация пакетной ретрансляции данных в условиях сложного радиопокрытия: опыт применения Forth на платформе HC12

Организация пакетной ретрансляции данных в условиях сложного радиопокрытия: опыт применения Forth на платформе HC12

Крыши из металлочерепицы и другие металлические конструкции хранилищ зернопродуктов препятствуют прохождению радиоволн и не позволяют сформировать одноточечное подключение радиоканала. Поскольку мощность HC12 [1] ограничена, используется метод ретрансляции данных, которые организованы в структурированные пакеты. Структура пакетов подобна известному протоколу AX25 [2], содержит данные и адресную информацию, что позволяет организовать их перемещение по модулям HC12 и выполнить ретрансляцию данных. В адресации зарезервировано подключение до 6 ретрансляторов-репитеров (РПТ), что при средней дистанции 500–1000 метров между ними позволяет получать устойчивые данные от источников на расстоянии до 3–6 километров. Источник данных – термоштанга (ТШ) удалённого контроля температуры зерна [3], при перемещении по территории складов автоматически подключается к доступному РПТ. Практическое применение всего двух РПТ позволяет обеспечить доступ к измерению для комплекса складов с полностью металлическими крышами на площади около 1000×500 метров и ещё «обойти» корпус элеватора вертикального хранения из железобетона для доступа к данным в лаборатории объекта. Приведена схема, конструкция и программное исполнение РПТ. Дополнительно в конструкции предусмотрены шины интерфейсов RS-485, 1-Wire, I²C и установочные позиции для возможного подключения датчиков температуры, влажности и различных газов.
18.09.2026 82 0
К 130-летию со дня рождения  великого советского физика  Игоря Евгеньевича Тамма.  Часть 5. Как были открыты плазмоны

К 130-летию со дня рождения великого советского физика Игоря Евгеньевича Тамма. Часть 5. Как были открыты плазмоны

Продолжаем серию статей о научном наследии Игоря Тамма. В предыдущих статьях мы рассмотрели, как его идеи, изложенные в статьях 1930–1950-х годов, повлияли на развитие нового научного направления «плазмоники», изучающего взаимодействие света с электронами в металлах и эффекты локализации света в объёмах меньше его длины волны. В частности, мы разобрали некоторые темы: современные быстродействующие электрооптические модуляторы, поверхностные состояния Тамма, запрещённые фотонные зоны, фотонные кристаллы («Современная электроника» № 7–9, 2025), а также экситон-поляритоны и фонон-поляритоны («Современная электроника» № 4, 2026). В этой статье мы расскажем о том, как научное предвидение Игоря Тамма позволило правильно прогнозировать именно те направления исследований, где были открыты объёмные и поверхностные плазмоны.
27.07.2026 СЭ №6/2026 398 0

ООО «ИнСАТ»  ИНН 7734682230  erid = 2SDnjc8wWn7
ООО «ИнСАТ»  ИНН 7734682230  erid = 2SDnjcRFNsu
  Подписывайтесь на наш канал в Telegram и читайте новости раньше всех! Подписаться