10/30/2014 9:05 AM | |
Posts: 102 Rating: (2) |
One more thing my communication is on mpi between hmi and cpu ... and the speed is 187.5kpbs.... |
10/30/2014 11:42 AM | |
Joined: 11/21/2007 Last visit: 9/25/2024 Posts: 2325 Rating: (308) |
Hello Hassan Raza There can be several reasons for high cycle time and I am afraid that there are no simple solutions. Cycle type can be high due to : a) Size of your Program b) The way your program is written and structured. c) Too many / too fast Interrupts programmed c) Peripheral faults & errors. It is difficult to pintpoint any problem without having access to your program. Here are some ways you can try and reduce the Cycle time : a) Remove any unnecessary interrupts ( time interrupts with low cycle time or process interrupts occurring very frequently ) b) Optimise your program logic e.g. - stagger the calling of your blocks. you may stagger the calling of some blocks over different CPU cycles if it is not important to call them every cycle. - Conditionally call the blocks required to be executed only under specific conditions. -Remove and excess / unnecessary logic c)Ensure that there are no peripheral device errors ( Profibus / Profinet slave errors) d) If nothing works ... use a higher CPU Hope this helps Cheers Navnag |
Last edited by: Navnag at: 10/30/2014 11:42 AMpoint-d added There is no such thing as the last bug in a program |
|
This contribution was helpful to7 thankful Users |
10/30/2014 12:34 PM | |
Joined: 3/5/2014 Last visit: 8/5/2022 Posts: 5521 Rating: (1054) |
Hello Hassan, |
FCK WAR! |
|
11/1/2014 9:07 AM | |
Posts: 1064 Rating: (72) |
check for loops in your program they can and will caus ehigh cycle times , jump out of loops if possible |
This contribution was helpful to2 thankful Users |
11/1/2014 11:23 AM | |
Posts: 8946 Rating: (999) |
If your program is to large/slowfor CPU315, you may use a CPU317 that is much faster... |
This contribution was helpful to3 thankful Users |
11/3/2014 12:09 AM | |
Joined: 10/7/2005 Last visit: 9/25/2024 Posts: 3022 Rating: (1054)
|
Hello Hassan Raza over and top of the already given advice, I've seenvery high cycle times due to excessive use of UDT's, STRUCT's and other complex data types being used as FC/FB parameters. Have a look at Shall UDT make the difference in CPU Scan Time? for more on this. Also, overall code sizecan be a deceiving value. If you have for example one FC with let's say 5kB in size, but this FC is being called 200 times (e.g. valvehandling block and you have 200 valves), your CPUneeds to crunch through1MB of code every scan just for this one block that by itself is "only" 5kB incode size. The message here is that reuseable Blocksare best coded in the most memory efficient way (and again avoid complex datat types as parameteres for these blocks where you can). I hope this helps |
Cheers |
|
This contribution was helpful to5 thankful Users |
11/3/2014 9:04 AM | |
Posts: 102 Rating: (2) |
Thank you fellows, I will try the steps mentioned and will post results here.
|
This contribution was helpful to2 thankful Users |
11/3/2014 9:24 AM | |
Posts: 102 Rating: (2) |
Let me tell you my program structure. I had to control 50 motors, 16 gates and 15 two way valves. So i have made one FB for motor , one FB for Gates and one FB for two way valves. and recalled the motor FB 50 times in one FC, gates FB 16 times in other FC and valves FB 15 times in third FC. but there are total of 81 DBs produced corressponding to calling of FBs.
Is there any way to optimize this program? |
11/3/2014 11:31 AM | |
Posts: 8946 Rating: (999) |
Do not destroy a well structured program just to save some ms (or even not...)! Try this new 315 CPU with FW 3.x, that is approx. 3 times faster than your very old one. https://support.automation.siemens.com/WW/llisapi.dll?aktprim=0&lang=en&referer=%2fWW%2f&func=cslib.csinfo&siteid=cseus&load=treecontent&groupid=4000003&prodLstObjId=11033923&extranet=standard&viewreg=WW&nodeid0=33516848&objaction=csview |
Last edited by: IBN-Service at: 11/3/2014 11:38 AM |
|
This contribution was helpful to1 thankful Users |
11/3/2014 12:07 PM | |
Posts: 102 Rating: (2) |
The link is not showing any document and saying you cannot access document in current user status
|
11/3/2014 12:36 PM | |
Posts: 8946 Rating: (999) |
MLFB is: 6es7315-2ah14-0ab0 Try this: https://www.google.com/?hl=de&gws_rd=ssl#hl=de&q=6ES7315-2AH14-0AB0 |
11/6/2014 6:03 AM | |
Joined: 10/7/2005 Last visit: 9/25/2024 Posts: 3022 Rating: (1054)
|
Hello Hassan Raza while I would generally recommend to upgrade the firware, it will NOT help you with your cycle time issue (fell free toupload your S7 program here, perhaps there is an easy fix). |
Cheers |
|
This contribution was helpful to1 thankful Users |
11/6/2014 10:49 AM | |
Posts: 102 Rating: (2) |
Please tell me how to upload code? my code size exceeds the attchment limit. the size of my code is 6mb
|
11/6/2014 3:25 PM | |
Posts: 79 Rating: (1) |
try to archive(zipp) the project first. |
11/6/2014 4:19 PM | |
Joined: 11/21/2007 Last visit: 9/25/2024 Posts: 2325 Rating: (308) |
Hello Hassan Raza You can try the following : a) Delete any integrated HMIs etc. from the project. b) Delete Instance DBs c) Use "Save As" to save the project to a new file and select the option "With Re-organisation" d) Use WinZip / other Zip programs to zip the project folder instead of built-in Archive software. e) If still project size is large then you can upload the software to your own website or a sharing site like Dropbox and post the link. Hope this helps Cheers Navnag |
There is no such thing as the last bug in a program |
|
11/9/2014 7:25 PM | |
Posts: 102 Rating: (2) |
I have bought a new cpu |
11/9/2014 9:54 PM | |
Posts: 5225 Rating: (1192) |
..what is your cycle times now? |
11/11/2014 3:31 PM | |
Posts: 102 Rating: (2) |
Dear IBN, I am suggesting my client to buy this cpu....Are you sure this will solve my problem of cycle time? just confirming |