Sign in to follow this  
Followers 0
korfhav

SLC 5/05 Fault Help

5 posts in this topic

Hello, today I had a fault on a PLC, luckily, I was able to clear it and we could start production back up, however now I'm worried it may happen again and shut us back down.  I am fairly new to PLCs and have only been working with them for a little over a month.  I took a picture of the fault before I cleared it(see below). What would be the cause of the fault below and should I be worried about it reoccurring? 

Thanks

thumbnail_IMG_0876.jpg

Share this post


Link to post
Share on other sites

Yes, you should be worried.  That screenshot includes the location that produced the error: program 33, rung 6. (See S:20 & S:21 in the picture.)  There's an array subscript or a use of the # operator that has an arithmetic flaw.  Enabling it to point past the end of the data file it is accessing.  You will have to analyze the arithmetic involved.

If you can't figure it out before it happens again, make sure you save the program & data before you clear the fault.  Share that file with us so we can help decipher the math based on the actual values in your data tables.

Share this post


Link to post
Share on other sites

The program is saved on our server and backed up regularly.  How do I go about saving a data file so that I can share it?

 

Share this post


Link to post
Share on other sites

With Allen-Bradley processors, saving the program usually prompts you for uploading the data or not, as the data is stored with the program.  So, before clearing the fault, go online with RSLogix500, save the program, say yes to the upload data prompt.  Share that program file.  If you cannot share that file for some reason, you may need to hire a local professional to help you.

Share this post


Link to post
Share on other sites

I've gotten into the habit of limit checking tags/addresses used as array subscripts to make sure this doesn't happen. A simple LIM instruction preceding the indirect address use keeps the fault from happening. You can then trap it and "do something" to fix the offset or alert the operator/maintenance/programmer/someone of the issue. Ideally, that trap would never be triggered because the preceding math would be written in such a way that it wouldn't cause the overflow. Ideally...

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0