PDA

Просмотр полной версии : А как Вы проверяете на связи ли ПЛК , АРМ



Stas
23.10.2015, 10:32
Желательно с примерами)

Например я управляю исполнительными с компьютера, при записи бита и последующего пропадания связи
, бит так и остается записанным в ПЛК.
Для устранения , был реализован следующий алгоритм. "meandr" меандр от АРМ в случае его отсутствия все входы устанавливаются в FALSE
meandr: BOOL;
ton_0: TON;
ton_1: TON;
not_link_0: BOOL;
not_link_1: BOOL;
not_connect: BOOL;
(*Проверка связи ПЛК с АРМ*)
meandr:=arm_meandr;
ton_0(IN:=meandr, PT:=T#1s500ms);
ton_1(IN:=NOT meandr, PT:=T#1s500ms);
not_link_0:=ton_0.Q;
not_link_1:=ton_1.Q;
not_connect:=not_link_0 OR not_link_1;
IF not_connect=TRUE THEN
arm_p5_dim_1_open:=FALSE;
arm_p5_dim_1_close:=FALSE;
arm_p5_dim_2_open:=FALSE;
arm_p5_dim_2_close:=FALSE;
arm_p5_dut_open:=FALSE;
arm_p5_dut_close:=FALSE;
END_IF

Yegor
23.10.2015, 14:12
Так тут куча всяких факторов ведь. Удалённость узлов, длительность процессов, допустимость такого обрубания.

У нас делается так, чтобы со стороны контроллера связь проверять не приходилось. Если какой-то автоматический процесс запущен, то он до конца сам дойдёт. Но у нас установки все с локальным управлением — оператор всегда рядом и может СТОП нажать. Одна интересная штука, правда, была, где процесс больше суток идёт и «все выходы в FALSE» ей противопоказаны — так там полный электромеханический обход контроллера был, чтобы при проблемах с АРМом можно было спасти процесс кнопками и потенциометрами.

А со стороны АРМа всё просто очень. Если обломались прочитать данные с контроллера, то аудиовизуальная сигнализация оператору и запись события в журнал, а дальше бесконечное переподключение.

wagman1986
23.10.2015, 20:44
Так тут куча всяких факторов ведь. Удалённость узлов, длительность процессов, допустимость такого обрубания.
В запасе всегда есть кнопки на пульте. Пекём цемент так что тут тоже все посчитано.


У нас делается так, чтобы со стороны контроллера связь проверять не приходилось. Если какой-то автоматический процесс запущен, то он до конца сам дойдёт. Но у нас установки все с локальным управлением — оператор всегда рядом и может СТОП нажать. Одна интересная штука, правда, была, где процесс больше суток идёт и «все выходы в FALSE» ей противопоказаны — так там полный электромеханический обход контроллера был, чтобы при проблемах с АРМом можно было спасти процесс кнопками и потенциометрами.

А со стороны АРМа всё просто очень. Если обломались прочитать данные с контроллера, то аудиовизуальная сигнализация оператору и запись события в журнал, а дальше бесконечное переподключение.

Можно узнать что за АРМ используете? В трасемоде вот хочу по достоверности канала построить систему мониторинга

wagman1986
23.10.2015, 21:02
20532
для тех кто не любит парсить ST. Нужна библиотека Util. Пример рабочий. И в чем будет удобнее выкладывать 2.3 , 3.5SP7P2 , картинками?

wagman1986
23.10.2015, 21:33
"Меняется ли" хочу реализацию увидеть этой фразы

Yegor
24.10.2015, 06:52
Можно узнать что за АРМ используете?Самописанный.

Павел Б.
25.11.2015, 07:49
Делаю несколько переменных типа INT. На мастере запускаю инкрементирование данной переменной, в слейве анализирую меняется ли.
Так делается и в обратную сторону, чтоб точно знать что слейв не пропал.

А если плк работает 24 часа 7 дней в неделю. INT хоть и большая но не переполниться ли ?
(и если не сложно пример ?)

Scream
25.11.2015, 07:57
А если плк работает 24 часа 7 дней в неделю. INT хоть и большая но не переполниться ли ?
(и если не сложно пример ?)

она после переполнения опять будет с 0. отслеживайте изменение.
У меня сервер отслеживает дисконнект от сокета, так сказать из первых источников.

Павел Б.
30.11.2015, 02:39
Спасибо применю.