PDA

Просмотр полной версии : Переменная DWORD



stanislavpotapchenko
11.06.2026, 23:56
Помогите разобраться как на ПЛК 210 принимать со скада по MODBUS значение в формате DWORD.
В ПЛК настроил ModbusTCP_Slave_Device. С другими значениями разобрался через библиотеку OwenCommunication Library,а вот как DWORD принимать не могу понять. Помогите, разобраться пожалуйста.

krollcbas
12.06.2026, 00:27
Используйте функционал библиотеки, FB

Объявление:
rFB20:OCL.DWORD_TO_WORD2;

Вызов:
rFB20(dwInput:= Count_N2, xSwapBytes:= , wOutput1=>awSlaveData[25] , wOutput2=>awSlaveData[24] );//Насос Н2. Количество пусков

МихаилГл
12.06.2026, 07:27
Можно через union ещё. И kondor3000 вроде, или ещё кто, давал вообще красивый вариант, но я этот вариант забыл)

kondor3000
12.06.2026, 08:55
Помогите разобраться как на ПЛК 210 принимать со скада по MODBUS значение в формате DWORD.
В ПЛК настроил ModbusTCP_Slave_Device. С другими значениями разобрался через библиотеку OwenCommunication Library,а вот как DWORD принимать не могу понять. Помогите, разобраться пожалуйста.

Можно DWORD разложить и собрать из 2 WORD, например 2 варианта на скрине 89524
Можно и не раскладывать, DWORD это 2 шт WORD подряд, например 0 и 1 регистр в массиве, поэтому если вы положите DWORD в 0 регистр, то и считать сможете из 0 регистра.

МихаилГл
12.06.2026, 09:03
Можно DWORD разложить и собрать из 2 WORD, например 2 варианта на скрине 89524
Можно и не раскладывать, DWORD это 2 шт WORD подряд, например 0 и 1 регистр в массиве, поэтому если вы положите DWORD в 0 регистр, то и считать сможете из 0 регистра.

Наверное не твой вариант. Там кто-то через указатели или ещё как показывал именно в кодесисе. Эх, склероз. Старость)

kondor3000
12.06.2026, 09:14
Наверное не твой вариант. Там кто-то через указатели или ещё как показывал именно в кодесисе. Эх, склероз. Старость)

Можно и на указателях, REAL заменить на DWORD 89525
разбираются и собираются через указатели они одинаково,
это как раз про то, что выше написано их и собирать не надо они сами готовые лежат в массиве при правильной расстановке WORD.