Недавно изучать FLProg, пробовал чужие примеры - все красиво. А вот нарезал себе задачу, сперва казалось, что все будет просто, а как сел делать, пока ничего не выходит. Прошу помощи:
Светильник Feron Dimond AL5200, будет стоять в спальне (он же ночник и т.п.). Меняю в нем штатную схему управления (вместо штатного PIC контроллера к мосфетам, питающим светодиоды подключаю Arduino Nano). Т.к. светильник распространенный, может это решение пригодится и другим пользователям. Пишу в этом форуме, т.к. это все-таки больше про кнопки...
Вот схема подключения:
СпойлерПоказать
1. Светильник имеет 2 канала ШИМ управления (2 ШИМ-выхода контроллера): теплый и холодный.
a. При управлении светильником кнопками выключателя, свет – нейтрально белый (передаются одинаковые значения ШИМ1 и ШИМ2)
b. При управлении светильником от внешней системы используется независимое регулирование каналов ШИМ (может меняться температура).
2. Управление при помощи двух кнопок выключателя:
a. Короткое нажатие первой кнопки – включение на минимальной яркости (ночник).
Повторное короткое нажатие – выключает светильник.
b. Короткое нажатие второй кнопки – включение на средней яркости.
Повторное короткое нажатие – выключает светильник.
c. Короткое нажатие обоих кнопок – включение на максимальной яркости.
d. Нажатие с удержанием первой кнопки – увеличение яркости от текущего значения.
e. Нажатие с удержанием второй кнопки – уменьшение яркости от текущего значения.
3. Управление от внешней системы умного дома (MajorDomo).
a. Определить протокол связи (http, Modbus, MQTT, еще ничего про это в FLProg не знаю - определяюсь)
b. Раздельная регулировка теплого и холодного канала.
c. Передача текущих значений ШИМ1 и ШИМ2 в систему умного дома (с заданной периодичностью и при изменении значений).
Если отдельные комбинации, вроде начинают получаться (и то не до конца), то со взаимодействием между ними вообще все плохо...
Вот например кривое управление двумя кнопками:
СпойлерПоказать
СпойлерПоказать