11/15/2014 7:24 PM | |
Joined: 9/16/2014 Last visit: 1/11/2025 Posts: 30 Rating:
|
Hello friends, I have a problems with a comunication of plc s7-1200 with a mudbus rtu device, this device read many variables almost 150, and when I make the program on TIA Portal to read with the plc those variables the comunication take 30 seconds!!!, my client is very upset because that's not real time!!. I did the program with one Master db for each variable, a friend told me that that is the reason for the huge time that comunication to read a variable. Then I tried othe way to program, I use just one Master db and i use a pointer to directioning the data db and in the length i put the quantity of variables (250). I put the modbus direction of the first variable. but when i run the program in the plc the status told that the lenght is not valid. It is correct the way I do my program. There is max quantity of variables a Master db can read???? What could be the solution. Please help me!!! I attached the pictures of the program that works but take too much time to read a variable and the programs that does not works. Thanks
Attachmentmany_master_dbs.pdf (213 Downloads) |
11/15/2014 11:01 PM | |
Posts: 5225 Rating:
|
Hi there. Have a look at the [LINK]. Give special attention to figure 3 on how the pointer was done. You only need to show to the first bit.. do not include the length as you already do that in the length parameter. So.. Use the same method you did in the one that works, but this time upgrade the DATA_LEN. There are some other detail to note too. Please see the attached extract. Greetings. w @Others.. Please double check my statements and assist. AttachmentEXTRACT_s71200_system_manual_201403 (FW4).pdf (206 Downloads) |
Last edited by: William B. at: 11/15/2014 11:05 PMfile attached |
|
This contribution was helpful to
1 thankful Users |
11/17/2014 11:17 AM | |
Joined: 1/17/2007 Last visit: 3/10/2025 Posts: 1557 Rating:
|
I am afraid that you have tried to use modbus for something that it was never designed to do - namely real-time communications. Modbus was designed to move quite large amounts of data between systems in a simple way. However, the protocol is not particularly high integrity and certainaly not deterministic (especially over a serial line). If you need high speed, deterministic, high integrity data transfer, then you should be using a protocol that was designed with that in mind - such as Profibus. The drawback of these protocols is that they are usually limited to quite small data packets so as to allow for high speed updates. There are some tricks you can employ to make things a bit quicker (see below), but you will never achieve the update times offered by Profibus etc. https://www.automation.siemens.com/tf/WW/en/Posts/81834#top |
Programming today is the race between software engineers building bigger and better idiot proof programs, and the universe producing bigger and better idiots. |
|
Follow us on