Цитата Сообщение от jk3141 Посмотреть сообщение
попробовал SWAP_DATA , но так и не понял как ее использовать(( описание почти нет, видео примеров тоже... где бы посмотреть пример использования?
По примеру из справки WirenBoard:
https://wirenboard.com/wiki/WB-MAP3E_Data_Registers

Код:
PROGRAM PLC_PRG
VAR
        // привязываем к компоненту Modbus
	awTotal_AP_Energy_ch2_Modbus:	ARRAY [0..3] OF WORD := [16#B4DF, 16#0DFF, 16#0000, 16#0000];
        // промежуточное значение в целочисленном виде
	lwTotal_AP_Energy_ch2:			LWORD;
        // итоговое значение с плавающей точкой
	lrTotal_AP_Energy_ch2:			LREAL;
END_VAR


OCL.SWAP_DATA(ADR(awTotal_AP_Energy_ch2_Modbus), ADR(lwTotal_AP_Energy_ch2), SIZEOF(lwTotal_AP_Energy_ch2), FALSE, FALSE, FALSE);

lrTotal_AP_Energy_ch2 := TO_LREAL(lwTotal_AP_Energy_ch2) * 0.00001 ;
17-03-2022 17-50-45.png 17-03-2022 17-51-14.png