Спасибо за разъяснение
Вид для печати
Спасибо за разъяснение
Продумываю наиболее простой вариант задания начального значения для переменных, которые используются в визуализации. Переменная "инициализация" энергонезависимая. Такой способ будет работать? Может быть есть способ проще?Вложение 80056
Добрый день. Подскажите записываю переменную, с плавающим знаком, в сетевой адрес 16384. В СПК110 через modbus TCP пытаюсь считать 16385 и значения не считываются, в параметрах связи получаю ошибку ILLEGAL_DATA_ADDRESS. Что я делаю не так?
Введите 16384 - что будет?
Настроили не правильно, всё передаётся в том числе регистры с 16384 по 16398 Вложение 80087
Float занимает 2 регистра 16384 и 16385, читать надо 2 регистра с адресом 16384.
А вам для начала надо проверить на целочисленной с адресами 16384 и 16385.
Если вы знакомы с адресацией, можно объявить глобальную переменную типа real и присвоить ей адрес первого принятого регистра. Лично мне больше нравится использовать для этого структуру, содержащую все сетевые регистры, и присвоить ей адрес первого сетевого регистра. Но это уже выходит за рамки темы ПР205. Вам лучше написать в раздел Кодесис 3.5, там вам дадут ссылку на видеоинструкцию или пример проекта.
В библиотеке OwenCommunication Library есть прекрасная функция WORD2_TO_REAL. LIMIT не обязателен, это скорее перестраховка. Переменная с адреса 16385 будет на первом входе, а с адреса 16384 - на втором. Переставить байты - FALSE
На скрине - чтение канала на 16 регистров (8 FLOAT/REAL) переменных. Но у меня не работал опрос, пока я не объявил дополнительную сетевую переменную в пр на следующем адресе (читать/записывать) ее не нужно
Вложение 80212