СЦБИСТ - железнодорожный форум, блоги, фотогалерея, социальная сеть СЦБИСТ - железнодорожный форум, блоги, фотогалерея, социальная сеть
Вернуться   СЦБИСТ - железнодорожный форум, блоги, фотогалерея, социальная сеть > Техника > Уголок радиолюбителя > Силовая электроника
Закладки ДневникиПоддержка Сообщество Комментарии к фото Сообщения за день
Ответ    
 
В мои закладки Подписка на тему по электронной почте Отправить другу по электронной почте Опции темы Поиск в этой теме
Старый 25.02.2024, 08:00   #1 (ссылка)
Crow indian
 
Аватар для Admin


Регистрация: 21.02.2009
Возраст: 44
Сообщений: 29,764
Поблагодарил: 397 раз(а)
Поблагодарили 5960 раз(а)
Фотоальбомы: 2576
Записей в дневнике: 692
Загрузки: 710
Закачек: 275
Репутация: 126089

Тема: Регулятор для тепло-холодного светодиодного светильника


Регулятор для тепло-холодного светодиодного светильника


В. РУБАШКА, г. Лисичанск, ЛНР

"Дизайн — это не то, как предмет выглядит, а то, как он работает".
Стив Джобс


Большой выбор светодиодной продукции для освещения заставляет радиолюбителей придумывать различные удобные устройства для управления ими. Как, например, комбинировать освещение тёплого и холодного оттенков в различных пропорциях? Самый простой ответ очевиден: нужны два органа управления. Например, два выключателя дадут четыре режима работы. Видел такой светильник у знакомого дизайнера. Оба выключены, включены по одному или оба вместе. Но тут невольно напрашивается аналоговое управление для изменения их яркости. Два переменных резистора позволят микшировать свет в различных пропорциях. А если делать кнопочное управление яркостью, то их понадобится вообще четыре штуки. В некоторых случаях это не очень удобно и практично. Например, чтобы быстро включить оба источника света на полную яркость или так же быстро выключить. Нужно что-то другое, чтобы можно было одним движением руки установить желаемые пропорции тёплого (горячего) и холодного источников света. Поэтому из органов управления оставим только один переменный резистор. А вот алгоритм управления будет таким, что он реализует и полное выключение, и максимальную яркость, и промежуточные варианты для двух источников света. Конструкция будет, конечно же, на одном из модулей Arduino, хотя это явно избыточно по всем параметрам, но удобство применения и наличие модуля Arduno Nano проголосовали "за". Если появится желание, устройство нетрудно перевести на более дешёвый контроллер.


Схема регулятора показана на рис. 1. Управление осуществляется с помощью переменного резистора R1. С его движка постоянное напряжение в интервале 0...5 В через помехоподавляющий фильтр R2C1 поступает на аналоговый вход А5 модуля Arduino Nano. Питающее напряжение на светодиодные ленты EL1 и EL2 подают мощные полевые транзисторы VT1 и VT2, которые управляются ШИ-сигналами с выходов D3 и D5 модуля.
Необходимо отметить, что для питания лент нужен источник питания с максимальным выходным током, превышающим их суммарный ток. В авторской конструкции использовались ленты с погонной мощностью 4,8 Вт/м и две пятиметровые ленты при максимальной яркости потребляюющие мощность 48 Вт. Поэтому был выбран сетевой импульсный блок питания с выходным напряжением 12 В и током до 4 А. Хотя лучше использовать блок питания с небольшим запасом.


Теперь несколько слов об алгоритме управления, его поясняет рис. 2. Напряжение с движка переменного резистора измеряется и сравнивается с четырьмя зонами регулирования. Весь интервал АЦП составляет 1024 значения. В крайних значениях интервала обе ленты выключены. При среднем значении обе ленты включены на полную яркость. Промежутки между выключенным состоянием и полной яркостью, в свою очередь, разбиты на две зоны. В этих зонах одна из лент имеет постоянную яркость, а у второй яркость плавно изменяется. Если описать изменение яркости по всем зонам, то получится следующее:
  • — крайнее левое положение. Обе ленты выключены;
  • — первая зона. "Холодная" лента выключена, яркость "тёплой" увеличивается до максимальной;
  • — вторая зона. Максимальная яркость "тёплой" ленты, яркость "холодной" увеличивается до максимальной;
  • — центральное положение. Максимальная яркость двух лент;
  • — третья зона. "Холодная" лента — максимальная яркость, у "тёплой" яркость уменьшается до минимальной;
  • — четвёртая зона. Яркость "тёплой" ленты минимальная, у "холодной" ленты яркость уменьшается;
  • — крайнее правое положение. Обе ленты выключены.
Такой алгоритм оказался очень удобным в управлении. Если кому-то не нравится переменный резистор, можно поставить две кнопки или сенсоры и регулировать яркость с их помощью. В принципе, будет достаточно и одной кнопки (сенсора), если устроит переход между зонами в одном направлении, без реверса.
Ещё одна особенность — экспоненциальное управление яркостью. Органы зрения и слуха человека имеют логарифмическое восприятие окружающего мира. Это позволяет слышать тихий шёпот и рёв взлетающего самолёта, видеть в сумерках и при ярком солнечном свете. Поэтому линейное управление яркостью источника света приводит к нелинейному восприятию — резкий скачок в начале и практически незаметное изменение в конце. Для получения плавности регулирования во всём интервале яркости необходим антилогарифмический или экспоненциальный характер их изменения. В управляющей программе расчёт яркости можно делать "на ходу", а можно рассчитать зависимость заранее и оформить в виде массива данных. Разработчик должен сам определиться, какой вариант
использовать, исходя из того что использование массива данных обеспечивает большее быстродействие, но при этом для него потребуется больше памяти микроконтроллера.
Программа управления написана в двух вариантах на двух языках — werilog для Arduino и Bascom-AVR, кому что ближе. В исходнике Bascom-AVR присутствуют несколько избыточных таблиц (файлы Exponential_1.1—Exponentials.0) с разной степенью экспоненты.


Цифры указывают на степень экспоненты, чем она больше, тем больше крутизна характеристики. Это актуально для светодиодов разного цвета свечения, например, чтобы получить белый цвет в максимальном интервале яркости для RGB-светильника. Практика показывает, что для красного цвета степень экспоненты должна иметь значение 1,2, для зелёного — 1,8, а для синего — 2. Для каждого типа светодиодов она может быть разной, поэтому подбирается экспериментально по наилучшему визуальному восприятию. Для перехода на другую таблицу достаточно в вызове функции указать её название. Например, заменить строку PwmOb = Lookup(bright_ cold , Exponential-1.4) строкой PwmOb = Lookup(bright cold , Exponential-1.6). А для модуля Arduino нетрудно добавить необходимые таблицы из кода bascom, оформив их соответственно массиву TAB_BRIGHTS[256].

Программа на Bascom-AVR начинается с указания используемого контроллера, его тактовой частоты, настройки аппаратного ШИМа, портов, аналого-цифрового преобразователя и задания ► переменных. В основном » цикле Do—Loop происходит измерение напряжения на движке переменного резистора, затем с помощью функции Select-Case рассчитывается значение яркости для каналов тёплого и холодного света. Далее с помощью функции Lookup получаем соответствующее значение яркости и отправляем в программный канал ШИМа. Программа для Arduino аналогична. Вначале настраивается периферия и объявляются переменные. В основном цикле также происходит измерение напряжения на движке переменного резистора, потом вычисляется яркость светильников. Только в этом случае используется функция if -else if. Стоит отметить, что код можно переделать, и на Bascom-AVR использовать функцию if -else if, а в Ардуино — select-case. Это значит, что для достижения одного и того же результата могут быть использованы разные подходы. Программирование — дело творческое. Можно написать приложение для таксопарка, а можно - прошивку для микроконтроллера. Тут у кому что больше нравится.

Элементы устройства смонтированы на макетной плате размерами 23x34 мм.
Модуль Arduino Nano установлен на плату бутербродом с помощью разъёмов серии PBS (рис. 3—рис. 5). Это придаёт компактность всей конструкции. Провода от источника питания и светодиодных лент подключают к винтовым клеммникам-разъёмам.

Для прошивки микроконтроллера в среде Arduino-IDE нужно установить настройки в соответствии с рис. 6, указав используемый номер COM-порта. В программе Bascom-AVR последних версий появилась возможность программировать и модули серии Arduino. В настройках программатора надо выбрать Arduino, скорость — 57600 бод и номер COM-порта, который присвоила модулю операционная система (рис. 7).
Что можно усовершенствовать? В одном из крайних положений переменного резистора реализовать эффект плавного поочерёдного изменения яркости лент. В дизайне, да и в декоративной подсветке жилья, это может быть востребовано. Для начинающих реализовать подобную функцию будет очень интересно. Ещё один вариант — использовать подобный алгоритм в RGB-лампе настроения. Крайние положения регулятора — белый цвет и выключено, а в промежутке — фиксированные цвета радуги. Можно использовать другой модуль серии Arduino или микроконтроллер серии AVR со своей обвязкой. Успехов!

От редакции Скетч для программирования находится по адресу http:// ftp. radio, ru/pub/2023/12/hea t- cold, zip на нашем FTP-сервере.
Admin вне форума   Цитировать 12
Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Доработка светильника "Облик" Admin Автоматика в быту 0 07.06.2015 07:32
[Новости БЧ] Станция Юшки: рельсы – стальные, тепло – душевное Анонимный Новости на сети дорог 0 06.09.2014 00:04
=Сход вагонов= 21.06.12г. ст. Хребет Ю-Уральская ж.д. Сход холодного паровоза в составе поезда Grin59 Нарушения безопасности на сети дорог 1 27.06.2012 11:41
[Новости РЖД] Тепло из-под земли для железнодорожников Андрей13 Новости на сети дорог 3 10.05.2012 20:00
[Гудок] [19 апреля 2011] Кочегар не нужен. Тепло дадут еез пыли и дыма Admin Газета "Гудок" 0 19.04.2011 07:36

Ответ

Возможно вас заинтересует информация по следующим меткам (темам):
,


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.



Часовой пояс GMT +3, время: 06:08.

СЦБ на железнодорожном транспорте Справочник 
сцбист.ру сцбист.рф

СЦБИСТ (ранее назывался: Форум СЦБистов - Railway Automation Forum) - крупнейший сайт работников локомотивного хозяйства, движенцев, эсцебистов, путейцев, контактников, вагонников, связистов, проводников, работников ЦФТО, ИВЦ железных дорог, дистанций погрузочно-разгрузочных работ и других железнодорожников.
Связь с администрацией сайта: admin@scbist.com
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34