Erratic PLC operation


Thread Starter

Brad Elliott

The previous Engineer left this for me...

The problem is we are starting to have alot of erratic operations, not reading inputs and improper sequences. Not all machines behave the same, some are worse than others.

We are using KOYO/Plc Direct 405's in our machinery
405's function is:
1. Communicating w/a basic module for serial communications.
2. Supporting an optimate 2 line display w/multiple input buttons, continuous scan of input from operators.
Needless to say alot of subroutines are used.

My questions are:
Is there a way to determine the scan time of my program?
What are other peoples experiences w/scan times, and overtaxed PLC's?

I prefer A/B PLC's.

Thanks in advance
Brad Elliott
Seattle, WA
Its easy enough to overtax ANY PLC as far as scan time is concerned. From your note, it appears you suspect the scan time is marginal.
I had the same problem a few years ago with an AB 5/25 being used in a winder application. The scan time reported by the processor turned out to be much shorter than the real, overall scan time when all the analog card transfers were considered.
You can check it easily with a scope or fast chart recorder. In your main program, program a rung to output a single-shot pulse of few milliseconds. Set the chart recorder/scope to receive a signal every time the output operates.
Run your program and try various operations to put your system through its various subroutines. The time from pulse to pulse on the scope or chart tells you the REAL scan time.

Steve Bailey

If the PLC doesn't have a data register that shows you the scan time, here's an easy way to monitor it. Set up an internal coil that alternates ON for one scan, then OFF for one scan. Do this with a NC contact in series with the coil, same address for both the contact and the coil. Use a contact from this coil to increment a counter with a preset of 500. Start a timer and the counter at the same time. Use a NC counter done contact to stop the timer. The accumulated value in the timer is the time for 1000 scans.

R A Peterson

Before I would claim the erratic behaviour is a scan time issue, I'd suspect a programming problem. its possible that some inputs could be missed but my experience is that it's almost always a programming error that causes erratic
machine behaviour. note - almost always.

As to timing your scans, you can easily figure out an average scan time by timing ten scans with a timer. Program an add instruction to increment a register by one each scan and a free running 0.01 second timer. when the register gets to ten, capture the timer accum value and then reset it and the register back to zero. every ten scans you will get a new value reflecting how long the previous ten scans took. dividing by ten will tell you the average scan time per scan. granted this will not tell you worst case, but most of the time scans are virtually the same length of time. note - usually.

it may even be that the koyo has a register like the ab plcs that will tell you the scan time.
One thing to keep in mind with Koyo PLC's is that if you make any program edits while on-line, the scan will stop until the edits have been downloaded.

Yes, you read that right, the scan will stop. The outputs can be frozen for many seconds while your machine keeps on running. I have verified this by setting up a blinking light program and watched the blinking stop while I made my on-line change.

This may be the problem that you are having. If not, then you should still be aware of this. It can be extremely dangerous, in my opinion.

I cannot believe that they can sell PLC's that do this, but they do. You sure don't see this mentioned in their "wonderful" advertisements.

Aside from that problem, they are decent PLC's. I have used them for many projects with success. You just have to be careful.

Bill Sturm

Darren Tichbourne

Yes SCAN TIME can be monitored from within the 'DirectSoft' koyo programming software by using the PLC/Diagnostics sub-menu. Current, Min. & Max. scan times are displayed. Other method is using AUX 53, auxiliary functions are available to setup, view or change the CPU configuration.

Hope this helps,

Darren E. Tichbourne

President, CET
CompuSys Solutions

Paul Gruhn, P.E. Moore Process Automatio

These are technically referred to as "undocumented features". ;-)