Просмотр полной версии : Чтение/запись из одного регистра
Николай_бел
14.10.2016, 10:55
В Овен ПЛК были созданны переменные: registr input module и registr output module с одинаковыми адресами. Постоянно происходит перезапись, что делать? В устройстве Universal modbus device перепробованны все режимы Work_mode: Poll time, change value, both, command. Считывается значение регистра только при Poll time.. Спасибо
А в чем собственно проблема ?
Николай_бел
14.10.2016, 11:18
постоянная перезапись идет. Овен в связи с ПЧ. На ПЧ изменил уставку, а она пришла там (отличная от нуля) и сразу же перезаписалась в ноль
постоянная перезапись идет. Овен в связи с ПЧ. На ПЧ изменил уставку, а она пришла там (отличная от нуля) и сразу же перезаписалась в ноль
Присвой то, что пришло из ПЧ тому, что передается в ПЧ.
Николай_бел
14.10.2016, 11:58
пробовал, все равно ноль
Ваша программа явно переписывает значение в 0, надо флаг выставлять на сравнение, если изменилась, то записать в ПЧ, если не изменили, то не писать в ПЧ.
пробовал, все равно ноль
Надо ненулевое значение, пришедшее из ПЧ сохранить в промежуточной переменной, а затем переписать ее значение в регистр на запись в ПЧ. В промежуточную переменную надо переписывать только не нулевые значения, пришедшие из ПЧ.
Николай_бел
14.10.2016, 13:13
Надо ненулевое значение, пришедшее из ПЧ сохранить в промежуточной переменной, а затем переписать ее значение в регистр на запись в ПЧ. В промежуточную переменную надо переписывать только не нулевые значения, пришедшие из ПЧ.
Это тоже пробовал. Но она даже в промежуточную переменную не присваивает. Ну по крайней мере в Подключении не видно
Это тоже пробовал. Но она даже в промежуточную переменную не присваивает. Ну по крайней мере в Подключении не видно
Что из ПЧ кроме 0 ничего не приходит ?
Николай_бел
14.10.2016, 13:15
Изменяю значения в ПЧ, на экране норм, пара секунд и обнуляется в контроллере. При Poll Time раз 10 вводишь тогда может изменится при подключенном к компьютеру контроллере в режиме отладки
Николай_бел
14.10.2016, 13:16
Что из ПЧ кроме 0 ничего не приходит ?
Если удалить переменную output regist - то все замечательно приходит
Николай_бел
14.10.2016, 13:19
Странно, но почему когда в свойствах Universal modbus device Work_mode меняешь на Change value, registr input value всегда равен 0, хотя этот регистр с некоторым значением
Если удалить переменную output regist - то все замечательно приходит
Программу свою выложи с промежуточной переменной.
Параметр «Период опроса устройства, в мс» (Polling time) сколько у тебя стоит ?
Николай_бел
14.10.2016, 13:22
Программу свою выложи с промежуточной переменной.
Ust_Pch1:=WORD_TO_REAL(P5_00r1)/100;
IF Ust_Pch1<>Ust_ACI THEN
Ust_ACI:=Ust_Pch1;
Z_ch1:=P5_00r1;
Z_ch2:=P5_00r1;
P5_00wr2:=P5_00r1;
END_IF
Ust_Pch2:=WORD_TO_REAL(P5_00r2)/100;
IF Ust_Pch2<>Ust_ACI THEN
Ust_ACI:=Ust_Pch2;
Z_ch1:=P5_00r2;
Z_ch2:=P5_00r2;
P5_00wr1:=P5_00r2;
END_IF
Николай_бел
14.10.2016, 13:25
стоял стандарт, увеличил в 10 раз
Ust_Pch1:=WORD_TO_REAL(P5_00r1)/100;
IF Ust_Pch1<>Ust_ACI THEN
Ust_ACI:=Ust_Pch1;
Z_ch1:=P5_00r1;
Z_ch2:=P5_00r1;
P5_00wr2:=P5_00r1;
END_IF
Ust_Pch2:=WORD_TO_REAL(P5_00r2)/100;
IF Ust_Pch2<>Ust_ACI THEN
Ust_ACI:=Ust_Pch2;
Z_ch1:=P5_00r2;
Z_ch2:=P5_00r2;
P5_00wr1:=P5_00r2;
END_IF
Лучше проект выложи.
Николай_бел
14.10.2016, 13:26
параметр ust_pch1 -промежуточная переменная
P5_00r1 - переменная input registr
P5_00wr1 - output
с одинаковыми адресами
параметр ust_pch1 -промежуточная переменная
P5_00r1 - переменная input registr
P5_00wr1 - output
с одинаковыми адресами
После Ust_Pch1:= P5_00r1; надо проверять Ust_Pch1 на 0.
Николай_бел
14.10.2016, 13:32
Вот файл. Вольд, думаешь если проверить с 0 тогда она начнет присваивает не нулевые значения?
Николай_бел
14.10.2016, 13:34
Ust_Pch1:=WORD_TO_REAL(P5_00r1)/100;
IF Ust_Pch1<>0 THEN
P5_00wr1:=P5_00r1;
END_IF
Вот файл. Вольд, думаешь если проверить с 0 тогда она начнет присваивает не нулевые значения?
У тебя Skype есть ? Сообщи в личку.
Николай_бел
14.10.2016, 13:37
Поставил проверку с 0, но все равно даже при Work_mode Poll time, change value ничего не пришло
Можно сделать свой обмен с ПЧ через библиотеку (не использовать конфигуратор). Там будет полная свобода действий.
http://www.owen.ru/forum/showthread.php?t=13584
Powered by vBulletin® Version 4.2.3 Copyright © 2025 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot