Kservistorg.ru

Все о бытовой технике
0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Ардуино регулировка яркости светодиода

Ардуино регулировка яркости светодиода

Сегодня мы будем управлять яркостью светодиода с помощью ШИМ каналов.

Схема подключения на макетной плате:

Интенсивность свечения будет регулироваться от 0 до 254 едениц, где 0 – вчетодиод выклчюен, а 254 – горит максимально (Например при 127 яркость будет на 50%).

Для этого нам понабодится:

  • Ардуино
  • Бредборд
  • Провода
  • Светодиод
  • Кнопки
  • Резисторы

Для подключения светодиода необходимо использовать резистор. Номинал резистора подбирается для каждого светодиода индивидуально, в зависимости от его рабочего напряжения и тока. Обычно резистор в 1 кОм. Можно использовать как универсальный вариант.

Управление реализуем с помощью двух тактовых кнопок. Подключать тактовые кнопки необходимо через подтягивающие резисторы (К земле, GND), для защиты от статических наводок (Ложные срабатывания кнопок от одного лишь касания и тд.). Номинал может быть различный. Рекомендуем вам использовать резисторы 10 кОм – 100 кОм.

Сегодня мы будем управлять яркостью светодиода с помощью ШИМ каналов.

Схема подключения на макетной плате:

Интенсивность свечения будет регулироваться от 0 до 254 едениц, где 0 – вчетодиод выклчюен, а 254 – горит максимально (Например при 127 яркость будет на 50%).

Для этого нам понабодится:

  • Ардуино
  • Бредборд
  • Провода
  • Светодиод
  • Кнопки
  • Резисторы

Для подключения светодиода необходимо использовать резистор. Номинал резистора подбирается для каждого светодиода индивидуально, в зависимости от его рабочего напряжения и тока. Обычно резистор в 1 кОм. Можно использовать как универсальный вариант.

Управление реализуем с помощью двух тактовых кнопок. Подключать тактовые кнопки необходимо через подтягивающие резисторы (К земле, GND), для защиты от статических наводок (Ложные срабатывания кнопок от одного лишь касания и тд.). Номинал может быть различный. Рекомендуем вам использовать резисторы 10 кОм – 100 кОм.

Как управлять светодиодом на Ардуино

Управление RGB-лентой производится с помощью настройки диапазона сигналов широтно-импульсной модуляции, позволяющих регулировать силу электротока. Сигналы широтно-импульсной модуляции кодируются цифрами в диапазоне от 0 до 255. Этот метод кодировки позволяет получить на РГБ Ардуино 16,8 млн различных цветных оттенков.

Для управления RGB-светодиодами требуются следующие комплектующие:

  • контроллер Arduino UNO R3, Nano или Mega.
  • RGB-диоды;
  • 3 резистора с сопротивлением 220 Ом;
  • проводные механизмы “плюс-минус”.

Контроллер устройства

При подключении светодиода к Ардуино требуется соединить провод “минус” с пином заземления GND. Синий диод подключается к порту Pin13, зеленый — к Pin 12, красный — к Pin 11.

После подсоединения основных компонентов нужно открыть программную среду Arduino IDE, подключить к персональному компьютеру плату при помощи кабеля USB и загрузить на микроконтроллер следующий скетч:

После компиляции этого программного кода кристаллы загорятся радужными цветами. Для настройки гаммы трехцветного светодиода требуется изменить в программном коде значение переменных red, blue и green. Чтобы все диоды стали белыми, нужно установить все значения цветов 255.

Белый диод

Команды передаются последовательно между портами. Движение ШИМ-сигналов указано в виде стрелок на светодиодной ленте Ардуино. 2 резистора 220 Ом требуются для предотвращения выгорания портов платы или возникновения короткого замыкания.

Перед тем как подключить RGB-светодиод к Arduino, нужно измерить расстояние между лентой и микроконтроллером. Если комплектующие находятся на большой дистанции, то необходимо приобрести провода длиной не менее 15 см. Для защиты механизмов от наводок рекомендуется скрутить проводные устройства. Это обеспечит стабильную работу протокола связи.

Для управления LED-диодом требуется бесплатная электронная библиотека GyverRGB. В ней содержатся часто используемые команды, что упрощает процесс написания скетча.

В библиотеке GyverRGB присутствуют программные конструкции, выполняющие следующие функции:

  1. Установка цвета и оттенков в формате HEX.
  2. Контроль полярности широтно-импульсной модуляции.
  3. Настройка яркости светодиодов.
  4. Регулировка частоты коррекции ШИМ.
  5. Ограничение подачи электрического тока.
  6. Плавная смена цветовой гаммы по мере разряда аккумулятора.

Библиотека GyverRGB поддерживает работу с RGB-диодами, одновременно подключенными к плате Arduino. В нее встроена матрица коррекции LUT, позволяющая изменять цветовую гамму при минимальном сигнале ШИМ. В библиотеке содержится свыше 1530 значений для инструмента ColorWheel.

Читайте так же:
Что удаляется при синхронизации айтюнс

LED-диод

Для этого нужно выполнить следующий алгоритм действий:

  1. Зайти в диспетчер устройств и найти графу с наименование микроконтроллера Ардуино.
  2. Нажать на вкладку “Сведения”.
  3. Из открывшегося списка выбрать графу “ИД-оборудования”.
  4. Скопировать идентификационный номер устройства, находящийся в текстовом поле.

После этого необходимо зайти в интернет и вставить в поисковую строку скопированный текст. В браузере откроется большое количество веб-страниц с ссылками для скачивания файлов. Загружать драйвера рекомендуется только на официальных сайтах производителей программного обеспечения. В противном случае можно скачать файл, содержащий вирусные программы. Он может привести к поломке персонального компьютера или утере персональных данных пользователя.

Программирование ПЛИС. Плавное изменение яркости светодиодов на Spartan-3E Starter Kit с использованием ШИМ (PWM)

Эта статья ориентирована на новичков в программировании ПЛИС на языке VHDL и тех, кто хочет научиться это делать. Ранее на хабре уже была рассмотрена статья с аналогичной задачей, реализованной на PIC-контроллере. А в этой статье речь пойдет об изменении яркости свечения светодиода с помощью ПЛИС.
Итак, цель работы: Освоить понятие ШИМ и применить его в изменении яркости светодиода. Для реализации воспользоваться языком программирования VHDL в среде разработки Xilinx ISE Project Navigator v12.3.

Перейдем к реализации цели

Для реализации нам потребуется какая-нибудь железка с ПЛИС, я выбрал имеющуюся под рукой платку Spartan-3E Starter Kit (DataSheet). Так же необходимо установить Xilinx ISE Project Navigator (у меня установлена версия 12.3). В принципе, все готово работе. Осталось только подключить питание к платке и соединить ее по USB с компьютером для последующего программирования.

Часть 1. Теория изменения яркости светодиода.

Яркость светодиода можно регулировать подачей на него разных значений постоянного напряжения (например, переменным резистором). Но на нашей плате установлены светодиоды без переменных резисторов, которые могут принимать значение ‘1’ и светиться в полную яркость, либо ‘0’. Так как же тогда сделать регулировку яркости у такого столь простого девайса? Ответ – ШИМ. Вся суть в том, что мы будем «моргать» этим светодиодом настолько быстро, что моргание даже не будет заметно нашему глазу, а мы просто будем видеть тускло светящийся светодиод. Если сказать точнее, то просто у светодиода есть переходный процесс при зажигании, то есть загорается он не мгновенно. Именно этим мы пользуемся, подавая единицу на очень короткий промежуток времени, так чтобы светодиод не успел загореться в полную яркость.

Часть 2. Создание нового проекта.

Загружаем ISE Project Navigator и тыкаем File -> New Project. Пишем имя проекта (у меня shim_habr), выбираем директорию для сохранения и снизу выбираем Top-level source type: HDL. Жмем Next.

Далее выбираем ПЛИС. В моем случае Family: Spartan3E; Device: XC3S500E; Package: FG320; Speed: -4. Все эти данные можно увидеть на самой микросхеме, либо посмотреть в даташите.

Далее выбираем Preferred Language: VHDL, жмем Next и потом Finish.

Проект создан. Теперь нужно добавить в него модуль, в котором мы будем описывать логику работы светодиода. Слева вверху находим кнопку New Source и жмем на нее:


В появившемся окне выбираем VHDL Module и пишем любое имя файла (можно одноименное с проектом shim_habr). Жмем Next.

Теперь нам нужно задать используемые в проекте ножки. Этого можно не делать сейчас и пропустить этот шаг, а потом написать все руками. Но поскольку для нашего проекта нам потребуется всего лишь три ножки, то я ввел их прямо здесь. Итак, нам потребуется опорная частота от установленного на плате 50 МГц кварца, подключенного к ПЛИС к ножке с именем C9, а так же мы будем использовать два светодиода так же уже установленных на плате. Допустим, это будут два правых светодиода, подключенных к ножкам ПЛИС под именами E12 и F12. Назовем ножку кварца clk, установим Direction: IN т.к. мы будем считывать частоту, а ножки со светодиодами – led1 и led2 со значением Direction: OUT, т.к. мы будем ими управлять.

Читайте так же:
Нет регулировки яркости экрана на леново


Жмем Next, потом Finish. Видим открывшийся текстовый редактор с уже заполненной заготовкой I/O портов проекта.

Как я уже говорил, можно было пропустить предыдущий шаг и ввести все это вручную. Далее нам нужно сопоставить имена портов с именами ножек ПЛИС. Тыкаем правой кнопкой на имени файла shim_habr.vhd в иерархии и выбираем пункт New Source.

В открывшемся окне выбираем Implementation Constrains File и называем этот файл pin. Жмем Next, затем Finish.

В открывшийся пустой файл пишем следующее:

Сохраняем.
Номера ножек можно посмотреть в даташите, либо в нашем случае нам упростили поиск — номера можно посмотреть прямо на плате рядом с нужной периферией:

Часть 3. Программирование постоянной яркости светодиода.

architecture Behavioral of shim_habr is

constant clk_freq : integer := 50 _000_000 ; — частота кварца
constant shim_freq : integer := 10 _000 ; — частота ШИМ
constant max_count : integer := clk_freq / shim_freq ; — разрядность ШИМ

signal count : integer range 0 to max_count := 0 ; — счетчик делителя частоты
constant porog : integer := max_count / 48 ; — ширина импульса логической единицы

process ( clk )
begin
if rising_edge ( clk ) then
if count = max_count then
count <= 0 ;
else
count <= count + 1 ;
end if ;
end if ;
end process ;

led1 <= ‘ 1 ‘ when count < porog else ‘ 0 ‘ ;
led2 <= ‘ 1 ‘ ;

То есть на светодиоде висит логическая единица тогда, когда наш счетчик меньше какого-то порогового значения porog (у меня это 1/48 от всего периода, смотри объявление констант), остальную часть периода на светодиоде висит логический ноль. Это наглядно можно показать рисунком:

Часть 4. Прошивка.

Сохраняем все изменения, выбираем в иерархии файл shim_habr.vhd и снизу под иерархией ищем процесс Configure Target Device и запускаем его. Ждем, пока проект оттранслируется в файл прошивки, после чего откроется окно программы iMPACT, с помощью которой мы будем зашивать его в ПЛИС.
Двойной щелчек на Boundary Scan, и если у вас плата подключена к компьютеру по USB, то вы увидите примерно следующее:

Если вам не предложили выбрать файл прошивки для xc3s500e, то кликайте правой кнопкой по соответствующей микросхемке и выбирайте пункт меню Assign Configuration File. В окне выбора файла выбираем недавно созданный shim_habr.bit. Далее опять правой кнопкой на xc3s500e, затем Program. Запустится процесс зашивки, после чего появится надпись Program Successful. Если все прошло именно так, то можно смотреть на платку =)

Часть 5. Программирование плавного изменения яркости светодиода.

architecture Behavioral of shim_habr is

constant clk_freq : integer := 50 _000_000 ; — частота кварца
constant shim_freq : integer := 10 _000 ; — частота ШИМ
constant max_count : integer := clk_freq / shim_freq ; — разрядность ШИМ

signal count : integer range 0 to max_count := 0 ; — счетчик делителя частоты
signal porog : integer range 0 to max_count := 0 ; — ширина импульса логической единицы

constant max_count_div : integer := clk_freq / 600 ;
signal count_div : integer range 0 to max_count_div := 0 ;

process ( clk )
begin
if rising_edge ( clk ) then
if count = max_count then
count <= 0 ;
else
count <= count + 1 ;
end if ;

if count_div = max_count_div then
count_div <= 0 ;
if porog = max_count then
porog <= 0 ;
else
porog <= porog + 1 ;
end if ;
else
count_div <= count_div + 1 ;
end if ;
end if ;
end process ;

led1 <= ‘ 1 ‘ when count < porog else ‘ 0 ‘ ;
led2 <= ‘ 1 ‘ ;

Транслируем, зашиваем, радуемся успехам. =) Вам может показаться, что светодиод большую часть времени светится ярко, а тусклый он только в начале цикла. Я уже писал об этом эффекте в своей предыдущей статье про цветомузыку. Дело в том, что яркость зависит от порога не линейно, а логарифмически. То есть, например, чтобы яркость изменялась плавно от минимума к максимуму с использованием ШИМ разрядностью 1024 необходимо брать последовательно следующие значения переменной porog: 0, 16, 32, 64, 128, 256, 512, 1024.

Читайте так же:
Регулировка плотности закрытия пластикового окна

Домашнее задание.

Как видите, светодиод плавно набирает яркость, а как только набрал – сразу сбрасывает в 0 (собственно, что написали то и получили). В качестве тренировки можно попробовать сделать плавный набор яркости, а по достижении максимальной начать ее плавно уменьшать до нуля. Тем, кто с легкостью справится с этим заданием, можно попытаться сделать «бегущие огни» из восьми имеющихся светодиодов: плавно загорается и гаснет первый диод, потом второй и т.д. Если не получается, но интересно, то спрашивайте — постараюсь ответить и объяснить.

Заключение.

Итак, мы освоили применение ШИМ к светодиоду и научились регулировать яркость светодиода с помощью ПЛИС. Этим же методом можно регулировать скорость вращения двигателя, магнитную силу катушек, и т.д.
Желаю всем успехов в освоении ПЛИС!

Программа

Чтобы изменить коэффициент заполнения ШИМ сигнала нам необходимо каждый раз перенастраивать таймер, но уже не в конфигураторе, а в самой программе. Для этого мы опишем новую функцию, которую назовём setPWM. Сначала объявим её в самом начале файла main.c.

А затем реализуем её в блоке USER CODE BEGIN 4.

Также необходимо запустить ШИМ на 3-м канале первого таймера. Делаем это так:

Это была подготовка. Теперь напишем программу, которая будет плавно менять яркость светодиода от 0 до 100%, а затем от 100% до нуля. Сделаем это следующим образом. Пусть изначально яркость равна 0. На каждом шаге суперцикла будем прибавлять единицу к яркости, пока не достигнем максимального значения. В момент, когда яркость достигла 500, меняем направление отсчёта и начинаем вычитать по единице, пока не достигнем 0. И так далее.

Объявим пару переменных, в которых будем хранить текущее значение коэффициента заполнения (pwm_value) и направление отсчёта (step).

Основной код добавим в суперцикл while:

Последнее, что нам нужно сделать — подключить светодиод к ножке PA10. Воспользуемся простейшей схемой с резистором на 200 Ом, такой же, как в уроке про светодиод на Ардуино.

Наконец, загружаем программу на микроконтроллер и наблюдаем плавно вспыхивающий и также плавно затухающий светодиод. Ура!

На следующем уроке будем управлять куда более серъёзной нагрузкой — двигателем постоянного тока!

Светодиодные ленты

Светодиодная лента представляет собой цепь соединённых светодиодов. Соединены они не просто так, например обычная 12V лента состоит из сегментов по 3 светодиода в каждом. Сегменты соединены между собой параллельно, то есть на каждый приходят общие 12 Вольт. Внутри сегмента светодиоды соединены последовательно, а ток на них ограничивается общим резистором (могут стоять два для более эффективного теплоотвода): Таким образом достаточно просто подать 12V от источника напряжения на ленту и она будет светиться. За простоту и удобство приходится платить эффективностью. Простая математика: три белых светодиода, каждому нужно по

3.2V, суммарно это 9.6V. Подключаем ленту к 12V и понимаем, что 2.5V у нас просто уходят в тепло на резисторах. И это в лучшем случае, если резистор подобран так, чтобы светодиод горел на полную яркость.

Подключаем к Arduino

Здесь всё очень просто: смотрите предыдущий урок по управлению нагрузкой постоянного тока. Управлять можно через реле, транзистор или твердотельное реле. Нас больше всего интересует плавное управление яркостью, поэтому продублирую схему с полевым транзистором: blank Конечно же, можно воспользоваться китайским мосфет-модулем! Пин VCC кстати можно не подключать, он никуда не подведён на плате. blank

Управление

Подключенная через транзистор лента управляется точно так же, как светодиод в предыдущей главе, то есть все примеры кода с миганием, плавным миганием и управление потенциометром подходят к этой схеме. Про RGB и адресные светодиодные ленты мы поговорим в отдельных уроках.

Питание и мощность

Светодиодная лента потребляет немаленький ток, поэтому нужно убедиться в том, что выбранный блок питания, модуль или аккумулятор справится с задачей. Но сначала обязательно прочитайте урок по закону Ома! Потребляемая мощность светодиодной ленты зависит от нескольких факторов:

  • Яркость. Максимальная мощность будет потребляться на максимальной яркости.
  • Напряжение питания (чаще всего 12V). Также бывают 5, 24 и 220V ленты.
  • Качество, тип и цвет светодиодов: одинаковые на вид светодиоды могут потреблять разный ток и светить с разной яркостью.
  • Длина ленты. Чем длиннее лента, тем больший ток она будет потреблять.
  • Плотность ленты, измеряется в количестве светодиодов на метр. Бывает от 30 до 120 штук, чем плотнее – тем больший ток будет потреблять при той же длине и ярче светить.
Читайте так же:
Как регулировать скорость кулера видеокарты radeon

Лента всегда имеет характеристику мощности на погонный метр (Ватт/м), указывается именно максимальная мощность ленты при питании от номинального напряжения. Китайские ленты в основном имеют чуть меньшую фактическую мощность (в районе 80%, бывает лучше, бывает хуже). Блок питания нужно подбирать так, чтобы его мощность была больше мощности ленты, т.е. с запасом как минимум на 20%.

    Пример 1: нужно подключить 4 метра ленты с мощностью 14 Ватт на метр, лента может работать на максимальной яркости. 14*4 == 56W, с запасом 20% это будет 56*1.2

Важные моменты по току и подключению:

  • Подключение: допустим, у нас подключено ленты на 100W. При 12 Вольтах это будет 8 Ампер – весьма немаленький ток! Ленту нужно располагать как можно ближе к блоку питания и подключать толстыми (2.5 кв. мм и толще) проводами. Также при создании освещения есть смысл перейти на 24V ленты, потому что ток в цепи будет меньше и можно взять более тонкие провода: если бы лента из прошлого примера была 24-Вольтовой, ток был бы около 4 Ампер, что уже не так “горячо”.
  • Дублирование питания: лента сама по себе является гибкой печатной платой, то есть ток идёт по тонкому слою меди. При подключении большой длины ленты ток будет теряться на сопротивлении самой ленты, и чем дальше от точки подключения – тем слабее она будет светить. Если требуется максимальная яркость на большой длине, нужно дублировать питание от блока питания дополнительными проводами, или ставить дополнительные блоки питания вдоль ленты. Дублировать питание рекомендуется каждые 2 метра, потому что на такой длине просадка яркости становится заметной уже почти на всех лентах.
  • Охлаждение: светодиоды имеют не 100% КПД, плюс ток в них ограничивается резистором, и как результат – лента неслабо греется. Рекомендуется приклеивать яркую и мощную ленту на теплоотвод (алюминиевый профиль). Так она не будет отклеиваться и вообще проживёт гораздо дольше.

После объявления 9 пина в качестве ledPin, тело функции setup() можно не наполнять.

Функция analogWrite() которую вы будете использовать в главном цикле main, требует два аргумента: один для определения пина, на который будут записываться и второй — для отображения записываемого ШИМ-значения.

Для того, чтобы постепенно зажигать и тушить ваш светодиод, постепенно увеличивайте ШИМ значение от 0 до 255, после — опять до 0, чтобы завершить цикл. В скетче ниже, ШИМ-значение используется для переменной под названием brightness. Каждый раз по завершению цикла она увеличивает значение переменной.

Если brightness достигает своего предельного значения (0 или 255), fadeAmount меняет свое значение на отрицательное. Другими словами, если fadeAmount равно 5, его значение меняется на -5. При следующей итерации цикла это приводит к изменению переменной brightness.

analogWrite() обеспечивает быструю смену ШИМ значения, так что задержка в конце скетча контролирует скорость затухания. Попробуйте изменить значение задержки задержки и отследить, как отработает программа.

Читайте так же:
Куплю лабораторный блок питания с регулировкой тока и напряжения

Светлый угол — светодиоды

Invisible_Light Scio me nihil scire
Scio me nihil scireСообщений: 6010 Зарегистрирован: 17 июн 2012, 01:53 Откуда: Киров Благодарил (а): 13 раз. Поблагодарили: 968 раз.

Re: Пожалуйста подскажите.

Baikal » 10 апр 2019, 11:08

Re: Пожалуйста подскажите.

Eugen » 12 апр 2019, 18:24

WiFI стоит вот такая LPB100-1. С неё выползает ШИМка. Единственное и самое простое из вариантов что мне в голову пришёл, так это кондер, но чувствую емкость буду подбирать экспериментально, хотя меня сильно удивило, что ШИМ в 1кГц увидел телефон. А вот плавная регулировка напряжением питания. это же конвертер надо лепить с ШИМа на напругу, я правильно понимаю? Вообще вся эта задумка как продолжение вот этой темы, с форума тему удалил, но архивы страниц сохранил https://yadi.sk/d/2CtzyXwkfsukNQ .

Re: Пожалуйста подскажите.

Eugen » 12 апр 2019, 18:25

Дайте ссылки, посмотрю что это за поделки, спасибо

Re: Пожалуйста подскажите.

Eugen » 25 апр 2019, 11:48

Очень интересная мысль. Из ШИМа аналог ещё смогу вывести. Но вот чем регулировать ума не приложу. Тут встаёт вопрос еще о разных предельных напряжениях, есть ещё и матрица RGB, ей тоже рулить надо. Уже были мысли и LM2596 задействовать, то есть после ШИМ ставим ФНЧ, далее операционник, и отправляем на LM2596, это для RGB матрицы. А на белые каналы после операционника даже мыслей не хватает что ставить, там до 5 ампер подкидывает потребление на ШИМ в 100%. Если имеете в "багажнике", какие либо мысли, то подкиньте, пожалуйста, буду очень благодарен.

Соорудил примерную схему от ШИМ 3,3в, выход 0-10 вольт. вполне прилично эмулирует, думаю в железе мало чем будет отличаться. А вот что дальше.. ума не хватает.
Изображение

Re: Пожалуйста подскажите.

Invisible_Light » 25 апр 2019, 19:57

Invisible_Light Scio me nihil scire
Scio me nihil scireСообщений: 6010 Зарегистрирован: 17 июн 2012, 01:53 Откуда: Киров Благодарил (а): 13 раз. Поблагодарили: 968 раз.

Re: Пожалуйста подскажите.

Eugen » 25 апр 2019, 20:07

А как поднять выше? неа, эмиттерный повторитель не подходит.

Re: Пожалуйста подскажите.

Eugen » 08 июл 2019, 13:51

Re: Пожалуйста подскажите.

Xabych » 15 июл 2019, 22:40

Re: Пожалуйста подскажите.

Eugen » 31 июл 2019, 16:53

Ну 2500 стоит этот блок питания. И всё же решение нашёл, буквально за 150 рублей. В решении очень помогла вот эта статья https://stoptest.ru/istochnik-toka-upravlyaemyj-arduino/ .
И в результате экспериментов, с десяток пробитых транзисторов и с пару спаленных операционников вот что получилось:

Изображение
Блок питания взял на 24 вольта, выкрутил подстроечником на нём 27 вольт, при этом максималка LM358 32В -36В, транзистора — 30В.
На схеме, где вход ШИМ нарисовал делитель напряжения, но по факту поставил подстроечник, этим самым задаю максимальный ток при 100% ШИМ. Регилуриется всё отлично от 1% до 100% ШИМ, при 0% всё выключается, правда ночью заметно еле уловимое свечение светодиодов, но это не беда, так. мелочь. Транзистор прилепил к радиатору, но транзистор даже и не думает греться, сначала ставил два транзистора в паралельку, но как оказалось и один справляется на отлично.
Получилось очень стабильное преобразование ШИМ в постоянный регулируемый ток, без пульсаций. ШИМ можно преобразовать любой 1,8В, 3,3В и 5В, у меня в основе ШИМ модуль HF-LPB100, питание 3,3В. Еще можно увеличить ёмкости во входном фильтре ШИМ, получиться плавность в регулировке тока.
Теперь все наработки надо собирать в кучу. И делать одну единую плату.

R4 — 1K!! Ошибочка на картинке.

И тестовый стенд:

Изображение

А это то, чем надо управлять:

Изображение

Изображение

В центре ещё будет оптоволокно, им тоже надо управлять, но это отдельная история:

голоса
Рейтинг статьи
Ссылка на основную публикацию
Adblock
detector