Просмотр полной версии : Чтение и запись в один и тот же регистр по MODBUS TCP
Уважаемые форумчане, подскажите пожалуйста!
Есть следующая задача: контроллер PLC-100, с его помощью необходимо читать регистр по MODBUS TCP с устройства и прочитав обнулять его на удаленном устройстве (записывать туда 0).
Организовал с помощью стандартных средств (Universal Modbus Device), завел регистр на чтение, и регистр на запись с таким же адресом.
Проблема в том что данные от чтения не успевают отслеживаться программой, т.к. сразу же перезаписываются нулем.
Подскажите как лучше решить задачу.. По сути нужна запись по требованию, т.е. прочитали регистр, если отличный от нуля, запомнили значение и выдали на запись 0.
Заранее Спасибо!
http://www.kipshop.ru/CoDeSys/steps/owen_plc-configuration.pdf ищите
http://www.kipshop.ru/CoDeSys/steps/owen_plc-configuration.pdf ищите
спасибо за ссылку, только ничего не удалось найти по моему вопросу.. наверное стандартными средствами этого сделать нельзя (
А что, скопировать прочтённое во внутреннюю переменную по условию ненулевого значения прочтённого, а уж потом только отправлять в удалённый регистр ноль, так сложно догадаться?
А что, скопировать прочтённое во внутреннюю переменную по условию ненулевого значения прочтённого, а уж потом только отправлять в удалённый регистр ноль, так сложно догадаться?
Догадаться не сложно, но дело в том что регистр созданный для записи, отправляется на запись при каждом цикле, независимо от того, пишем что то в него или нет. Таким образом, получается ситуация, когда полученный при чтении регистр тут же перетирается значением регистра на запись, и в программе значение регистра для чтения всегда равно значению регистра для записи, в моем случае=0
спасибо за ссылку, только ничего не удалось найти по моему вопросу.. наверное стандартными средствами этого сделать нельзя (
Ну не виноват я что в документе либо куда то делось, либо еще какой то казус, тогда добавляете в мастер Universal Modbus Device, в нем открываете вкладку Параметры модуля и ищите пункт work mode и анализируем аргументы в списке, ну и соответственно догадываемся что здесь можно использовать для записи по условию
PS Ищите в документе либо поиском ключевые слова work modeлибо сразу отправляйтесь в описалово протокола DCON 78-79 стр.
Ну не виноват я что в документе либо куда то делось, либо еще какой то казус, тогда добавляете в мастер Universal Modbus Device, в нем открываете вкладку Параметры модуля и ищите пункт work mode и анализируем аргументы в списке, ну и соответственно догадываемся что здесь можно использовать для записи по условию
PS Ищите в документе либо поиском ключевые слова work modeлибо сразу отправляйтесь в описалово протокола DCON 78-79 стр.
Огромное спасибо, добрый человек!! :)
Очередная проблема (( . У меня уже есть один Universal Modbus Device. Второй (для записи двух регистров в тот же MODBUS слэйв) почему то не работает. Отключаю первый, начинает работать второй.. видимо нельзя создать два Universal Modbus Device к одному и тому же устройству..
Все получилось! через выходные регистры с поддержкой Command. Управление выводом оказывается можно организовать не только целым устройством Universal Modbus Device, но и отдельными регистрами.
Powered by vBulletin® Version 4.2.3 Copyright © 2026 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot