PDA

Просмотр полной версии : Mx210 для S7-1200(1500) ModbusTCP



sergey.a.kalugin
14.04.2022, 11:05
Добрый день коллеги.
В связи с известными событиями и дефицита периферии, актуальным стал вопрос замены серии ET200S и ET200SP. Мы решили связать PLC S7-1500 и модуль MB210-204 по ModbusTCP.
Если у кого есть опыт, подскажите, что не так. Для обмена я использую FB MB_CLIENT.
60329
При работе возникает ошибка 8383
Instruction version >= V6.0: Error reading or writing data or access outside the address area of MB_DATA_PTR, RD_MB_DATA_PTR or WR_MB_DATA_PTR.
или
Error reading or writing data or access outside the address area of the server.
Поскольку результат должен быть UINT32 (UDINT), то я выделяю два слова в DB для записи и тут проблемы быть не должно. (P#DB101.DBX28.0 WORD 2).
При вызове FB я указываю параметр MB_DATA_LEN=2 (пробовал менять, толку - 0).
В параметрах модуля указано, что MB функция чтения=3 (Read 1 to 125 holding registers on the remote address 0 to 9,998).
Соответственно, какой адрес для регистра 51 я должен указать в параметре MB_DATA_ADDR? 40051 или 400051, или вообще другой?
Подскажите, в чём гиммор? Плз.

Мне кажется, что тема перехода на периферию Овена будет ещё долго актуальна.

Евгений Кислов
14.04.2022, 11:17
Добрый день коллеги.
В связи с известными событиями и дефицита периферии, актуальным стал вопрос замены серии ET200S и ET200SP. Мы решили связать PLC S7-1500 и модуль MB210-204 по ModbusTCP.
Если у кого есть опыт, подскажите, что не так. Для обмена я использую FB MB_CLIENT.
60329
При работе возникает ошибка 8383
Instruction version >= V6.0: Error reading or writing data or access outside the address area of MB_DATA_PTR, RD_MB_DATA_PTR or WR_MB_DATA_PTR.
или
Error reading or writing data or access outside the address area of the server.
Поскольку результат должен быть UINT32 (UDINT), то я выделяю два слова в DB для записи и тут проблемы быть не должно. (P#DB101.DBX28.0 WORD 2).
При вызове FB я указываю параметр MB_DATA_LEN=2 (пробовал менять, толку - 0).
В параметрах модуля указано, что MB функция чтения=3 (Read 1 to 125 holding registers on the remote address 0 to 9,998).
Соответственно, какой адрес для регистра 51 я должен указать в параметре MB_DATA_ADDR? 40051 или 400051, или вообще другой?
Подскажите, в чём гиммор? Плз.

Мне кажется, что тема перехода на периферию Овена будет ещё долго актуальна.

Добрый день.
Судя по документации (https://cache.industry.siemens.com/dl/files/340/102020340/att_118119/v6/net_modbus_tcp_s7-1500_s7-1200_en.pdf) (п. 4.3) - проще всего поставить MB_MODE = 103 - тогда можно будет использовать адреса из нашего руководства (51 и т.д.).

IVM
14.04.2022, 11:22
Зачем использовать такой допотопный язык программирования ? В Tia Portal есть SCL.

sergey.a.kalugin
14.04.2022, 12:36
Получилось при MB_MODE = 103. Спасибо.

sergey.a.kalugin
14.04.2022, 12:40
Спорный вопрос. Особенно, когда квалификация персонала Заказчика, которому сдаёшь оборудование слегка выше плинтуса.