12/5/2023 11:13 AM | |
Joined: 11/17/2015 Last visit: 11/7/2024 Posts: 57 Rating: (16) |
Hi. I'm developing a program with cyclic acquisition of several drives through Modbus RTU. There is S7-1200 and CM1241. I had an experience with similar case, but then was only three drives, and I didn't take in account how fast that acquisition actually was. Now I have 16 drives and one CM1241. Let's take this application example, think and calculate. For one request we need three calls of Modbus_Master - first with REQ = FALSE, second REQ = TRUE, third DONE or ERROR = TRUE. It will be at least three main cycles of PLC (if response from slave will be received faster than OB1 cycle). For one drive we need four requests (control word, speed setpoint, status word, actual speed). We get 3x4 = 12 cycles for one drive. And 12x16 = 196 cycles for polling 16 drives. Let's assume we have 20 ms program cycle. So one drive would be polled not faster than 196 x 0.02 = almost 4 seconds !! Am I right? Would it be like this: I press a button, and then only after 4 seconds pump will start? If so - it's awful. And what if there will be 100 drives (in application example mentioned "up to 247")? 30 seconds delay for start/stop? |
Last edited by: The Helping Hand at: 12/06/2023 10:18:44Link optimized |
|
12/5/2023 12:11 PM | |
Joined: 3/30/2020 Last visit: 11/8/2024 Posts: 4938 Rating: (1010)
|
Possibly the best you can do is to use the library presented here: Otherwise the process design Siemens makes available to us is linked to the scan of the PLC which does not run well enough in a polled process, like other brands have available. The process itself is slow in execution. The use of Profinet or Profibus is the best to do when you have several devices. Else jump ship and try another brand's equipment. |
Activities of this user is voluntary. There is no obligation or liability placed on this user. Though optional, your 'please' and 'thank you' is highly valued. |
|
This contribution was helpful to1 thankful Users |
Follow us on