2/22/2009 3:06 PM | |
Posts: 3 Rating: (0) |
Hi, Today I have faced a serious problem as the CPU (Type 417-4H) went to stop mode due to multiple OB request error. I should mention that a communication problem (With Rockwell PLC using SST card and Y-Link) is coming frequently and the CPU stop happened after this communicaiton failure. I am not sure whether the communicaiton problem has got any role in thiscontext. Diagnostic buffer shows that multiple OB has been called at the same time and with immediate effect the CPU went to stop mode. Please see the attached diagnostic buffer log for reference. Please let me know the reason of stopping the CPU for the mentioned events. Further it is to be mentioned that the CPUhas beenrunning for last one month without any program change. Regards Deba AttachmentError_PCS4a_220209.pdf (363 Downloads) |
3/12/2009 7:53 AM | |
Posts: 557 Rating: (64) |
hi find the attachment. in this attachment you can see the property of cpu--> memeory. increase the local data priority class memory which in coming in ur diagnostic buffer. see the details below, hope this will help you The L stack saves the following:
When you are programming organization blocks, you can declare temporary variables (TEMP) that are only available when the block is executed and are then overwritten again. Before you access the local data stack for the first time, the local data must be initialized. In addition to this, every organization block also requires 20 bytes of local data for its start information. The CPU has a limited amount of memory for the temporary variables (local data) of blocks currently being executed. The size of this memory area, the local data stack, is dependent on the CPU. The local data stack is divided up equally among the priority classes (default). This means that every priority class has its own local data area, thus guaranteeing that higher priority classes and their OBs also have space available for their local data. The following figure shows the assignment of local data to the priority classes in an example in which in the L stack OB1 is interrupted by OB10 which is then interrupted by OB81. Caution All the temporary variables (TEMP) of an OB and its associated blocks are saved in the L stack. If you use too many nesting levels when executing your blocks, the L stack can overflow. S7 CPUs change to STOP mode if the permitted L stack size for a program is exceeded. Test the L stack (the temporary variables) in your program. The local data requirements of synchronous error OBs must be taken into consideration. Assigning Local Data to Priority Classes Not every priority class requires the same amount of memory in the local data stack. By assigning parameters in STEP 7, you can set different sized local data areas for the individual priority classes for S7-400 CPUs and for the CPU 318. Any priority classes you do not required can be deselected. With S7-400 CPUs and the CPU 318 the memory area for other priority classes is then increased. Deactivated OBs are ignored during program execution and save cycle time. With the other S7-300 CPUs every priority class is assigned a fixed amount of local data (256 bytes) that cannot be changed. regards Attachmentmemory.zip (357 Downloads) |
Follow us on