Industry Online Support
Technical Forum
1/15/2013 6:54 PM | |
Posts: 8 Rating: (0) |
I have the following errors in my diagnostic buffer and can not findhelp to decipher the address data. I am not at point where I can delete OB121 or OB122 to let the program stop and lead me to the problem area. The addresses do not seem to pertain to anything I have in my block container. Please see attachment of buffer data.
AttachmentC:\Documents and Settings\DCrews\Desktop\Diagnose.zip (105 Downloads) |
Last edited by: TerryP at: 1/15/2013 6:56 PM |
|
1/16/2013 1:46 PM | |
Posts: 8 Rating: (0) |
I have no analog input modules in this project. Where do I download PLCSIM ? |
1/16/2013 2:24 PM | |
Joined: 9/27/2006 Last visit: 6/1/2024 Posts: 12259 Rating: (2670) |
Hello terry; You diagnostic buffer contains references to 2 types of error, calling OB 121 and OB 122. See the description of the called OBs in the following manual: System Software for S7-300/400 System and Standard Functions Volume 1 and Volume 2 P.82: 1.27 Programming Error Organization Block (OB121) DescriptionT he operating system of the CPU calls OB121 whenever an event occurs that is caused by an error related to the processing of the program. For example, if your program calls a block that has not been loaded on the CPU, OB121 is called. P.85: 1.28 I/O Access Error Organization Block (OB122) Description The operating system of the CPU calls OB122 whenever an error occurs while accessing data on a module. For example, if the CPU detects a read error when accessing data on an I/O module, the operating system calls OB122. P.222 :Error ... I/O access error when reading ID (W#16#...) 2942 Event Error Occurs ... when no signal module is assigned to the address in the I/O area. Or... when access to this I/O area is not acknowledged within the selected module watchdog time (timeout). So, OB 121 is called when the operating system of the CPU detects that some blocks are not loaded on the CPU (and called in the program), namely DB7 and DB10 in our case. OB 122 is called when the operating system of the CPU detects that in your program you are trying to access a non-existing module (compared to the contents oif the HWConfig editor). The addresses shown here are the diagmnostic adresses of modules, they could be analog (as Hamid thought) or they could refer to modules on a Profibus-DP*/Profinet network. In both cases there seems to be a mismatch between the contents of the CPU and the program configuration. Please start by checking the validity of the program you downloaded to the CPU, and doing the Compile/download of the hardware configuration first, then doind the same for the program blocks. By the way, is it possible that you using a MMC that was used in another CPU, by any chance, and could it contains the configuration for another project? Hope this helps, Daniel Chartier |
Last edited by: dchartier at: 1/16/2013 2:26 PM |
|
This contribution was helpful to1 thankful Users |
Follow us on