Добрый день, есть 4 девайса,
ПЛК100 - мастер - версия 220В - P (Импульсная) - без ограничения памяти
МДВВ
МДВВ
МВУ8
суммарно получается 30 входов и 32 выхода
с помошью девайсов разведено осветление в квартире.
Подобным кодом реализованы все остальные подпрограммы, код ниже.
Подключено все через RS485, по протоколу ОВЕН, скорость 115200
Вопрос заключается в следующим, входов как вы поняли всего 30, задействовано 26, от физической кнопки включения (импульсная кнопка, фирмы Murlin, shneider) от 5 до 40 метров, кабель - витая пара.
Сегодня все это дело запустил в работу (залил программу в уже установленные и смонтированные девайсы) - и такой трабл, ПРОИЗВОЛЬНО нажимая разные кнопки, например на расстоянии 5 метров - сходу свет не включается, тоесть держать кнопку надо около секунды, что весьма не удобно, с другой стороны если тыкаю в кнопку на расстоянии 40 метров - все пучком, включается мгновенно, причем не важно на сколько кода эта кнопка , на 1 функцию (ВКЛ-ВЫКЛ) или на 4 (ВКЛ 1 группа света, добавить 2, добавить 3, выкл все 3 группы света)..
Прошу посоветовать как сделать все мгновенно.
У меня есть следующие соображения:
1. Кабель витая пара, он ОДНОЖИЛЬНЫЙ, тоесть внутри 8 изолированных проводков, в каждом по 1 жиле - где-то дребезжит контакт, где-то плотный, решить тем, чтобы перепроверить все выключатели и другие соединения. Если это может быть проблеммой - посоветуйте, может быть есть оборудование, с копомошью которого можно продиагностировать качество соединений. Монтировал ОПЫТНЫЙ электрик из частной фирмы, по совету знакомых, реально готов братся за работу и решить проблемму, но так как проблемма имеет массовых характер - хочу разобратся в чем проблемма а не поштучно все выключатели перекручивать. Так-же хочу обратить внимание что на 1 вход может быть подключено 3-4 выключателя из разных мест, тоесть подключены они паралельно в таком случае.
2. Когда начинал разбиратся читал про некий ШУМ или что-то такое, мол это чувстительность контроллера-модулей расширения к качеству соединений - подскажите может ли это влиять и какой параметр подкрутить.
3. Протокол обмена данными (как физический так и програмный), есть возможность быстро все переделать на МодБас или сменить скорость портов и так далее, в какую сторону есть смысл тестировать?
4. Количество девайсов в одной сети, наводки?
5. Стиль программирования?, я умею на php писать - поэтому самым близки оказался язык ST, все программы сделано обычными if-else-elseif триггером R_TRIG и таймером TP.
Может посоветуете по моему коду как его лучше оптимизировать если это поможет?
На данный момент программа почти готова, будут лишь дописаны некоторые таймеры по включению света и так далее, тоесть существенно менять код и функционал не планируется.
Показываю скриншот из codesys 2.3, копия в вложении

код программы:
Код:
PROGRAM TWOFUNCKABINET
VAR
RTRIGInst : R_TRIG ; (*обьявляем работу с тригерами*)
(*in5 кабинет*)
count5:INT;
inpoint5: BOOL;
END_VAR
(*Кнопка на 2 функции света в кабинете(входя №5 выходы №26 и №27)*)
RTRIGInst(CLK:= in5);
inpoint5 := RTRIGInst.Q;
IF inpoint5 = TRUE AND count5=2 THEN
count5:=0; out27:=0; out26:=0;
ELSIF inpoint5 = TRUE AND count5=1 THEN
count5:=count5+1; out27:=1;
ELSIF inpoint5 = TRUE AND count5=0 THEN
count5:=count5+1; out26:=1;
END_IF
Спасибо.