is a PLC?
It's a computer which runs an archaic computer language
normally designed to simulate relay (or boolean) logic -
the software is called 'ladder' because it's vaguely like one very
large ladder with rungs - the 'rungs' being the individual lines
Here's an example (this is a small one):
The processors are normally very old (but quick enough
since they are effectively running a form of machine code) with
laughable amounts of RAM - the average small PLC comes with 4K (yes
4096 bytes, that's less than in the average digital watch) and the
biggest has only about 512K. Rather less than the musical tie I
got for Christmas last year.
The programming software is also normally quite laughable
- it's supposedly designed for the average electrician or maintenance
engineer to program, but normally fails badly in this respect. 'Advanced'
functions of the programming software are such exciting features
as 'copying lines' and 'pasting lines'. You don't believe me do
The software is totally incompatible between manufacturers,
there is NO common format. In fact the software is normally not
compatible even for one manufacturer. Siemens produce many PLCs,
we have programmed all of the following:
Siemens 101 (discontinued)
Siemens 105 (discontinued)
Siemens 110 (discontinued)
Siemens 150 (discontinued)
Software written on a 135 cannot be placed on a 100 or even a
115. Software written on a 155 may or may not be compatible with
a 135 (and so on). Please note that Siemens are probably no (or
not much) worse than other manufacturers in this case. Only Mitsubishi
have a conversion program to convert between different CPUs (which
only achieves 90% or so accuracy anyway)
So what's good about PLCs?
Well the I/O is the important part - the PLC has live links
to the outside world in two forms - analogue and digital. A digital
signal is typically for a pump or a motor (ie on to start a motor,
off to stop it). An Analogue signal is typically level (of a sump
or hopper) or temperature and so on. The I/O is PLCs is robust
and hard to break (except for 1 or 2 manufacturers) Siemens and
Allen Bradley having particularly good I/O in this respect.
The entire program is typically run 10 to 50 times per second.
The concept here is that if anything goes wrong the PLC reacts
almost immediately to sort it out or take emergency action.
Who uses these things?
They are used to produce your water, electricity, food and pretty
much everything in process control industries. Back
What is SCADA?
This is a bit better - it's lots of pretty graphics with a useful
purpose. The graphics display parts of the plant for the operators
who run them. SCADA systems produce alarms telling the operator
to fix a problem.
Here's a very simple example
So who uses these things?
Again they are used to in Water, Electricity, food and pretty
much everything in process control industries.
Back to Top
What is Ladder?
It's crude simple stuff, here's an example:
Segment 2 Air bad delay timer
! T 116
!I 19.1 +-----+
!KT 060.2 --!TV BI!-
! ! DE!-
! ! !
! ! !
! +-!R Q!-
This is a time delay - when the input "I19.1" is on then the timer
T116 start. When it expires the timer output Q is activated. Timers
are used a lot in PLC programs - to delay starting a pump until the
'low level' probe has been active for 10 seconds say (to avoid spurious
signals) or simply to time how long a pump has been running for.
Segment 3 F49:Compressed Air missing
!I 19.1 F 18.2 F 26.0
!F 26.0 !
Nowadays the ladder editor is in Windows type format, but the principle is still
Back to Top
We program in all PLC languages, examples being:
Siemens S5-100 Series (including 90,95)
Siemens S5-115 Series
Siemens S5-135 Series
Siemens S5-155 Series
Siemens S7-200 Series
Siemens S7-300 Series
Siemens S7-400 Series
Allen Bradley MicroLogix
Allen Bradley PLC 2
Allen Bradley PLC 3
Allen Bradley PLC 5
Allen Bradley SLC 500 series
Allen Bradley ControlLogix
Allen Bradley FlexLogix
Allen Bradley CompactLogix
Mitsubishi F series
Mitsubishi A1 series
Mitsubishi A1 series
Mitsubishi A3 series
Mitsubishi FX series
Mitsubishi F1 series
Mitsubishi F2 series
We also program in Visual BASIC, PASCAL, C and C++ often to link to the PLCs
and SCADA system. Our experience in writing complex communication
drivers is second to none.
Back to Top
All the programming is different, experience of
one PLC is often only a little help in programming the next type.
Communications are by far the most
complex part of using PLCs. Linking two PLCs is never simple
Allen Bradley have the most simple
communications between PLCs (Data Highway + or DH+), it's almost
easy! Normally the only problem is getting the blue and clear wires
the wrong way around.
the most complex systems for linking their PLCs. You stil often
need to blow EPROMs and get the correct comms driver (depending
on the CPU type and comms card type) and you normally need to write
lots of software to get it to do the simplest thing. The communications
are often limited in terms of protocol and data bits (etc) - it's
not easy, definitely not for the beginner. Thinking about, Siemens
Comms aren't really for anyone...except experts.
All other "comms" problems lie somewhere
in between these two. All problems are different, each PLC type
has it's set of unique problems.
You see? It's all quite simple really (OK apart from comms we
Back to Home
last change 18th June 2018