Страница 3 из 3

Re: Панель Weintek как slave устройство (Modbus server)

СообщениеДобавлено: 27 фев 2018, 11:45
maces
VanMo писал(а):Чтобы настроить панель как Modbus RTU/ASCII slave, достаточно добавить в проект устройство "MODBUS Server" или "MODBUS ASCII Server" соответственно для RTU и для ASCII.
В настройках необходимо указать параметры связи и адрес устройства.
Будьте внимательны, в текущей версии EasyBuilder (4.52) поле ввода адреса устройства переведено как "Кол-во станций".

MBServer2.jpg


Соответствие регистров Modbus памяти панели:
LB 0 ~ 9998 соответствует 0x/1x 1 ~ 9999
LW 0 ~ 9998 соответствует 3x/4x 1 ~ 9999
RW 0 ~ 55536 соответствует 3x/4x 10000 ~ 65536
Тестовый проект:
ModbusServer.zip


Доброго дня суток!
Подскажите пожалуйста как два PIXEL 2511 настроить как SLAVE а панель MT8050ie как MASTER!
C каждого PIXEL надо считать некоторую информацию по температуре обратки и улицы, а так же останавливать и запускать приточки.
Какие настройки необходимо произвести в EasyBuilder и в SMLogix чтобы всё заработало...
ЗАРАНЕЕ СПАСИБО!

Re: Панель Weintek как slave устройство (Modbus server)

СообщениеДобавлено: 14 мар 2018, 12:39
VanMo
maces писал(а):
Доброго дня суток!
Подскажите пожалуйста как два PIXEL 2511 настроить как SLAVE а панель MT8050ie как MASTER!
C каждого PIXEL надо считать некоторую информацию по температуре обратки и улицы, а так же останавливать и запускать приточки.
Какие настройки необходимо произвести в EasyBuilder и в SMLogix чтобы всё заработало...
ЗАРАНЕЕ СПАСИБО!

Добрый день.
Панель в режиме мастера настраивается по-другому. Если контроллеры подключаются к одной сети RS-485, то настраивается это так:
http://www.rusavtomatika.com/forum/viewtopic.php?f=7&t=131

Re: Панель Weintek как slave устройство (Modbus server)

СообщениеДобавлено: 27 апр 2020, 17:03
8bit
День добрый. А как разделить Hold и Input регистры (по datasheet регистры 3х и 4х доступны только через LW, причет 3х0001 - это LW0 и 4х0000 - это LW0).


Действительно, по-умолчанию таблица отражения переменных панели в регистры modbus следующая:
Изображение

Для этого надо в настройках нашего устройства (Modbus server) поставить флажок "Шлюз Modbus TCP/IP (Ethernet)"
Изображение

В Таблице привязки появится возможность самому создать какой регистр панели (или переменная другого устройства) в каком регистре modbus будет отражена. Плюс появится возможность из modbus обращаться к битам регистров RWб RW_A, RBI
Изображение

Таблицу привязок можно отредактировать, а можно все удалить и создать исвой кастомный набор привязок.
Изображение

В настройках свой привязки необходимо помнить, что в modbus всего 65535 регистров, соотвественно все это адресное пространство и можно поделить задав "Размер таблицы"
Изображение
Например, первые 9000 регистров панели могут быть спроецированые на первые 9000 регстров Input Registers, а регистры панели начиная с 9001 могут быть спроецированы на Holding Registers.
Главное быть аккуратным и следить , чтобы адресные пространства разных привязок не перекрывались (а то записав в Holding Register можно будет переписать и какой-то Input Register, спроецированный на тот же регистр панели)
Изображение

Необходмо помнить, что обращаться к регистрам панели можно будет только через указанные в привязках регистры modbus, если в привязках нет ассоциаций с Input Registers, то при обращении к ним в ответ будет сообщение об ошибке согласно кодам modbus.

Приблизительное желаемое
Изображение

Re: Панель Weintek как slave устройство (Modbus server)

СообщениеДобавлено: 08 май 2020, 21:12
8bit
arhatkin писал(а):согласен, 3х (Input_Register)-только для чтения, но это со стороны MODBUS master (тобишь персоналки), а со стороны MODBUS slave (тобишь панели) исправления вполне возможны. Разве нет? В итоге так как 3х и 4х регистры ассоциированны с одним пространством, записывая в регистры 4х мы меняем значения регистров 3х.
Мною был проведен экперимент: Вначале было записано по команде ModBus 10h в регистры 0000h....0003h значений 1,2,3,4. Затем прочитано по команде 04h значение регистров 0000h...0005h и полуно 1,2,3,4,0,0... Писал в Holding Register, а в панели изенились как Holding Register, так и Input Register. Вот в чем проблема.


если предположить, что первую тысячу (0-999) адресов LW/RW ассоциировать с регистрами 3х (Input Registers), а остальные (1000-12200) с 4х (Holding Registers) , то
можно самостоятельно задать диапазон адресов LW\RW, защищенные от записи со стороны
соотвественно по картинке - "Защита LW" надо выбрать диапазон 0~999

Изображение

в документации глава 39. Data Security
Изображение