6/20/2020 3:03 PM | |
Joined: 10/12/2019 Last visit: 6/15/2022 Posts: 23 Rating: (0) |
I'm trying to pass 735 format DWORD value (on the emulator) to the PLC - screenshot 11 target tag is passed of type INT(which is 0), the screenshot 22 type DINT (assigned -5530517 056), tried to work through the function CONVERT - screenshot 33 (displays -9.367487 E+18), tell me how I convert that in this case, to the number 735? I work for TIA PORTAL 15.1
Attachment1.zip (144 Downloads) |
6/20/2020 3:29 PM | |
Joined: 9/27/2006 Last visit: 9/21/2024 Posts: 12282 Rating: (2684) |
Hello Voskobnynikioydm; The value 735(dec) translates to 02DF(hex). You are receiving DF02_0000 from your Modbus emulator. So you have a Big Endian/Little Endian format problem with your Step 7 program there. Notice the difference in byte arrangement: DF02_0000 <--> 0000_02DF https://en.wikipedia.org/wiki/Endianness This issue might no longer exist when you work with the real Modbus slave. If it does, you have to swap the 2 words in the DWord, then swap the bytes inside each word, 2 by 2. This function often exists inside the Modbus slave configuration software, or else you have to code it in the master's program. There are different swapping functions for S7 CPUs, depending on the software version you are using, so you need to tell us more abut the CPU that you use and Modbus master and the software (with version information) that you use to program it; information on the slave would be useful also. There are a few discussions on Endianness in the forum that might interest you, I suggest you look for them using the Search Box at the top right of this page. Hope this helps, Daniel Chartier |
Last edited by: dchartier at: 06/20/2020 15:44:50Last edited by: dchartier at: 06/20/2020 15:47:01 |
|
This contribution was helpful to1 thankful Users |
6/20/2020 5:58 PM | |
Joined: 9/27/2006 Last visit: 9/21/2024 Posts: 12282 Rating: (2684) |
Hello Voskoboynikiovdm; See if the Codesys configuration offers a swapping function (both word and byte) for its Modbus slave. In this link you have an example of the swapping properties of one Modbus slave: Examine the Double format swap possibilities to see how they propose it. Ask if the Codesys slave can provide the exact swapping possibilities you require., https://www.modbustools.com/poll_display_formats.html Hope this helps, Daniel Chartier |
Last edited by: dchartier at: 06/21/2020 00:35:45 |
|
This contribution was helpful to1 thankful Users |
Follow us on