Сигналы больше-меньше условно, управляется дискретными выходами.
Вид для печати
настройки яркости находятся в драйвере, а ПР в принципе здесь не причём!
https://www.youtube.com/watch?v=uB-02LymtgE[/QUOTE]
Говорю же, при отключении питания драйвера, настройки освещения слетают. Надо сделать так, чтобы ПР запоминал последнюю настройку и делал регулировку до этой самой последней настройки.
Ранее Вы так не говорили, это уже второй поворот, в смысле, Вы говорили про энергонезависимость настройки яркости, а это совсем другое!
Короче, можно примерно так запомнить настройку яркости, в счётчике, только частоту генератора сделать максимально возможной, для точности:
Вложение 80633
А управление драйвером от выходов ПР.
Конечно, всё это будет, через одно место, через которое часто в России делают, но видимо у Вас такая цель!
И, сигнал включения драйвера(подачи напряжения питания) нужен будет или ПР запитать параллейно драйверу.
Попробуйте так и первое включение сделайте через кнопку ПР, а все остальные через "Выключатель".
TMRSet - сделайте энергонезависимой, ФБ должен запоминать время удержания кнопки BTN и повторить на выходе при сбросе питания на ПР.
Вложение 80634
Код:function_block TMRPush
var_input
BTN : bool;
RPT : bool;
TMRSet : udint;
end_var
var_output
TMRValue : udint;
Q : bool;
end_var
var
RT : SYS.RTRIG;
FT : SYS.FTRIG;
TS : time;
TMRRPT : SYS.TP;
end_var
TMRValue := TMRSet;
RT(I:=BTN); if RT.Q then TS := get_time(); end_if
FT(I:=BTN); if FT.Q then TMRValue := time_to_udint(get_time() - TS); end_if
TMRRPT(I:=RPT, T:= udint_to_time(TMRValue));
Q := BTN or TMRRPT.Q;
end_function_block
Посмотрел вашу схему, мне видится один реальный вариант, это подать сигнал(8-40В) с выхода драйвера на аналоговый вход ПР через делитель напряжения(не более 10В на выходе) и запоминать это значение, всё!
При включении ПР восстанавливать это значение с помощью дискретного выхода ПР!
Есть ПР102 с аналоговыми входами, вам придётся менять модификацию ПР102!
Вложение 80637
Другие варианты - это несерьёзно, из области фантастики, мне так кажется!
А как у вас яркость уменьшается, в смысле, насколько понял, при длительном нажатии яркость увеличивается до максимума затем уменьшается до минимума и так циклически, пока кнопка нажата или для изменения направления(с увеличения яркости на уменьшение и обратно) надо кнопку передёрнуть?
Т.е. вот так тоже было бы нормально?
Вложение 80639
Так ему же надо не на максимальную яркости включать, а на заданную, в смысле что была в момент выключения питания!
И, как я понимаю у кнопки(управляющего входа драйвера) несколько функций, в смысле, короткое нажатие, включает-выключает свет(работает как Т-триггер), а длинное нажатие увеличивает-уменьшает яркость, пока кнопка нажата, короче, я до конца ещё не разобрался как это всё работает, но и того что понял достаточно, чтобы понять, что будет очень проблематично сделать управление по времени нажатия на кнопку!
Я уже писал, как я бы сделал!