Само облако поддерживает работу с отдельными битами. По стандарту Modbus это функции 0х01 и 0х05. Любой элемент 8bit можно представить как набор из 8ми отдельных битов. Пример ручной настройки ниже.
2017-12-03_20-16-39.jpg
Последний раз редактировалось Сергей Лысов; 04.12.2017 в 15:00.
Добрый день. Подключил устройство Modbus. Все работает. Но есть пара вопросов.
1 Можно в будущем сделать время опроса не всего контроллера а конкретного параметра. Уличную температуру (к примеру ) незачем читать каждые 5 минут. Можно каждый час.
2. Вопрос. У меня куча точек которые сваливаются в одно окно. Можно ли как ни будь их раскидывать по папкам? Я не нашел как это сделать.
Похожий алгоритм уже реализован. Для каждого параметра можно выбрать тип: оперативный, конфигурационный и управляемый. Для каждого типа можно выбрать свой интервал обновления. Максимум раз в 30 минут.
Настроить частоту опроса можно в вкладке Настройки | Общие | Общие настройки.
Присвоить тип параметру можно в вкладке Настройки | Параметры | Настройка параметров Modbus.
Opros_oper.jpg
К сожалению, не понимаю что вы имеете ввиду. Не могли бы вы объяснить подробнее?
Добрый день! Добавил прибор ПЛК110-32 в облако через TCP. В Слейве 7 переменных real. Так вот 5 переменных видит а 6.7-я Нули. В чём подводный камень? в OPC есть данные в этом же слейве.
Мы с нескрываемым интересом изучили представленный код.
Оригинально названы переменные, имя "_" умилило.
Поступила жалоба на неправильное считывание float-ов из облака.
В ModBus Slave float-ов обнаружено не было. Хм...
Зато есть ФБ, в котором есть 8 входов типа REAL и нет начинки... Интригует.
Адрес первой переменной присваивается указателю на ФБ. ЧЕГО
И далее в коде
PSlave^.A := PSlave^.A + 1 + k;
PSlave^.B := PSlave^.B + 2 + l;
PSlave^.C := PSlave^.C + 3 + k;
PSlave^.D := PSlave^.D + 4 + l;
PSlave^.E := PSlave^.E + 5 + k;
PSlave^.F := PSlave^.F + 6 + l;
PSlave^.G := PSlave^.G + 7 + k;
PSlave^.H := PSlave^.H + 8 + l;
где l и k - константы REAL.
Я, конечно понимаю, что пытались сделать, но во первых, забыли про middleendian выравнивание в modbus
И зачем ТАК извращённо то?
Вставить флоат в modbus slave религия не позволяет или почему?
Идем дальше - настройки тучки:
Почему адреса float -ов нечётные? Естественно читает пол флоата от одного и половину от другого.
Далее:
Адреса идут 16-ти ричные. А задаются как будто они десятичные. Вот последние 3 и нули.
Последний раз редактировалось Филоненко Владислав; 08.12.2017 в 11:45.
Тролль-наседка, добрый, нежный и ласковый