т.к. функции записи или чтения однозначно определяют области регистров 4х или 0х, 3х или 1хДля считывания состояния индикаторов я прописываю в таблице переменных регистр 0 и его биты 0 и 2, как по инструкции от терминала. Тип переменных - булевские. А для считывания веса - тоже регистр 0, как в прошлый раз. Тип переменной - с плавающей запятой. Не понятно, куда прописывать смещение 4х или 0х, как это можно было сделать в настройках элементов на панели.
Сделал сводную табл.:
То в настройках переменных мастера ПР нужно руководствоваться кодом функции для чтения и записи
Захват-3.png Захват-4.png
Соответствующие поля есть в ОЛ
Захват-005.png
Я полагал, что проблему уже решилиЕсли выводить кнопку, индикаторы нуля и стабилизации веса, то работает. А если выводить всё сразу, то ОЛ ругается, что обнаружено использование сетевых переменных с совпадающими Modbus регистрами.
Захват-002.png
Оказывается, что нет... Печально!
Причем, если не использовать сетевые переменные второго интерфейса(слейва), а взять обычные переменные, то проблем нет
Захват-006.png
Ну и далее
Если не использовать чтение 0 бита 0 регистра мастера для записи в сетевую переменную слейва то проблемы тоже нет
Захват-08.png
Как только "цепляю" сюда выходную сет.переменную слейва, даже через переменную - капут
Захват-010.png
Вижу единственный способ решения
Добавить в мастер еще одно устройство, с тем же адресом
Захват-01.png
Где и "поселить" только булевские переменные
Результат
Захват-11.png Захват-12.png




Ответить с цитированием