You are on page 1of 34

13

Chapter 2
Computers and Control
- Mechatronic Systems

A Summary...
An overview and history of industrial computer control systems. General-purpose
computer systems adapted for process and system control. Specialised computer
control systems (micro-controllers, Computer Numerical Controllers (CNC) and robot
controllers). Industrial computer interfaces for process control - the Programmable
Logic Controller. Mechatronic elements and systems - servo motors, transfer lines,
FMS, etc.

Digital Voltages Analog Voltages Analog Energy Forms

External Voltage Supply

Digital to Energy
Scaling or
Analog Isolation Conversion
Amplification
Conversion (Actuators)
Computer External
System
Analog
to Digital Energy
Protection Scaling or Isolation
Conversion Conversion
Circuits Amplification
(Transducers)

External Voltage Supply


14 D.J. Toncich - Computer Architecture and Interfacing to Mechatronic Systems

2.1 A Review of Developments in Digital Computer Control


Digital computer control is a relatively recent phenomenon. It began to
proliferate in the 1970s as a result of the increased computational capacity of digital
computers and the increased availability (and "affordability") of integrated digital
circuits. However, early developers in digital computer controls faced a difficult task
because the external systems requiring control were predominantly analog in nature.
Ironically, now that we have an enormous supply of devices to simplify the process of
interfacing to analog systems, we increasingly find that the "systems" themselves are
becoming more digital in nature as a result of the increasing intelligence of constituent
components.

Unfortunately for early system designers, the cost of control computers was
relatively high and so, as a result, only the most expensive and complex processes were
generally considered for computerisation. The cost of applying computers to simple
control systems was prohibitive and so designers had to add to their professional skills
by first tackling the worst possible problems, with few experts to turn to for advice.
Typical applications included:

• Power station control systems


• Chemical plant and refinery controllers
• Metal smelting plant controllers
• Large-scale food processing control systems.

All of these types of computer applications can be classified under the umbrella of
"real-time control" and all suffer from similar problems. The problems include:

(i) The need to extract information from hundreds of sensors and energy
transducers
(ii) The need to process incoming information in "real-time" (ie: before the
next change of information occurs)
(iii) The need to output signals to hundreds of sensors and transducers.

Very few real-time control problems had been tackled by computer


manufacturers up until the 1970s. Most manufacturers had been busy enough just
developing computers to handle the growing number of data processing tasks that had
arisen during the 1960s. However, the requirements of real-time control were quite
different and, given the limitations of the technologies available in the 1970s, designers
did an outstanding job in creating relatively reliable end systems.

Typical computer control systems in the 1970s had an architecture of the form
shown in Figure 2.1. This is commonly referred to as a "hierarchical" control
architecture. It is composed of an intelligent control device (computer), referred to as
the host, and a number of unintelligent slave devices (sensors, transducers, actuators,
amplifiers, etc.) that together make up a functioning system.
Computers and Control - Mechatronic Systems 15

Control Computer
(Host)

Input/Output
Interfacing Boards

Feedback Signals from System Computer Outputs to System

Sensor 1 Transducer 1

Relay 1 Amplifier 1 Solenoid 1


Sensor N Transducer N

Relay N Amplifier N Solenoid N

Figure 2.1 - Hierarchical Computer Control Architecture

The hierarchical control architecture came about as a result of necessity rather


than outright design acumen. Computer processing was a relatively expensive
commodity in the 1970s and as a result it was most uncommon (and expensive) to
consider the use of more than one computer for a control problem. For this reason, the
host computer had to carry out all the functions associated with real-time control,
including:

• Input/output (normally abbreviated to I/O)


• Control algorithm execution
• Interaction with the system supervisors (users)
• Display of current status on screens and mimic panels.

This level of functionality was a radical departure from the traditional concept of
computing that had developed in the late 1950s and throughout the 1960s. Computers
had to become devices that could execute programs within a given time-frame and
interact with the outside world to an extent that had previously been difficult to
imagine.
16 D.J. Toncich - Computer Architecture and Interfacing to Mechatronic Systems

There were a number of important issues to be overcome before a transition could


be made from the data-processing role of the computer to a real-time control scenario.
Firstly, specialised input/output (I/O) boards and circuits had to be devised in order to
enable the computer to interact with the wide range of analog signals that emanated
from external systems and to enable the computer to drive high level analog outputs.
Secondly, the most fundamental piece of software within a computer system, the
operating system, had to change its functionality. The operating system still had to
remain as a resource manager and a scheduler and an interface between the computer
hardware and software. The big change was that it now had to perform these functions
in such a way that programs could execute quickly enough to process incoming signals
before the status of those signals altered (otherwise data would be lost). This was the
critical, "real-time" issue.

In the 1950s and 1960s, operating systems were really designed so that large
computer systems (main-frames) could process office data, entered on punch-cards
(known as Holorith cards), as efficiently as possible. The basic principle was that it
didn't really matter which data the computer processed first as long as, over a given
time-period (eg: one day), the total amount of information processed was maximised.
A small amount of task prioritisation was allowed, but in general, operating systems
tended to treat all data in terms of "files". In strict terms, a file was a quantum of data
stored on either magnetic disk or ferrite-core memory. However, the changing nature
of data input and output (from punch-cards and print-outs through to video terminals
and serial communications links) could not readily be accommodated in terms of the
older operating systems. The operating systems were therefore modified to consider
newer forms of data as though they were files (even though they were physically
something else).

Although the concept sounds rather convoluted, treating all inputs and outputs as
though they were files on a disk worked satisfactorily in the office but it became
unwieldy for control purposes. If inputs and outputs related to an external system
under control were treated as though they were files, then they were subject to the same
level of prioritisation as files. In simple terms this meant that the operating systems
associated with office computing could not deliver the time responses required for real-
time control. In other words, it could take the older computers longer to process data
from external systems than it may take for the data to change - information could be
lost.

One of the first organisations to recognise the limitations of the older style
computer architectures and operating systems was the Digital Equipment Corporation
(DEC). Their response was to develop a range of computers that are still revered today
for their innovative hardware and software. The computer range was given the title
prefix PDP-11 and was really the first computer series that engineers would claim for
themselves.
Computers and Control - Mechatronic Systems 17

Several factors made the DEC PDP-11 series revolutionary in its time (and led to
its survival for some 20 years). The first was an innovative hardware design that
simplified the control system development task for engineers through an enormous
range of powerful instructions. The second advantage of the PDP-11 was that the
company began to produce a range of products that enabled the computer to interact
with the outside world, at a time when other manufacturers were still producing
computers that worked in isolation. The third major advantage of the PDP-11 was its
new operating system, specifically designed for real-time control applications. The
operating system was given the acronym RSX-11 and also endured for some 20 years.

The DEC PDP-11 series of computers became a bench-mark for digital control
systems and were widely used in the complex types of applications cited earlier.
Indeed, even in the 1980s (when computer processing costs had diminished), system
designers still worked with the sort of hierarchical control architecture made popular
(and feasible) by DEC. However, by the mid-1980s, the cost of microprocessor chips
and microprocessor-based devices (including personal computers) had plummeted and
a new trend in both computing and control emerged.

Mid-range computers such as the DEC PDP-11 became relatively expensive in


comparison to microprocessor based computers and controllers and so, a new industry
arose, focused on the task of minimising the use of mid-range computers and
maximising the use of low-range (single microprocessor) based devices. This was
greatly assisted by the proliferation of intelligent (microprocessor controlled) devices in
the early 1980s. The net effect was to make possible a different form of control
architecture, which we now refer to as "distributed control". The concept of distributed
control is shown schematically in Figure 2.2.

Host Computer
(Event Scheduler)

Data
Communications
Links

Local Local Local


Processor 1 Processor 2 Processor N

Inputs / Outputs Inputs / Outputs Inputs / Outputs


to local system 1 to local system 2 to local system N

Figure 2.2 - Distributed Computer Control Architecture


18 D.J. Toncich - Computer Architecture and Interfacing to Mechatronic Systems

The basic principle of distributed control is that a complex control system is


divided up into a number of components and each component is controlled by a local
computer (which may be microprocessor or Digital Signal Processor (DSP) based).
The role of the host computer is then only to coordinate (schedule) the activities of
each of the local (slave) processors and to interact with the system users. The host
computer and local processors are normally connected to one another via data
communications links or a network, both of which unfortunately create a new range of
design problems that have to be resolved. However, if the communications issue can
be resolved then the distributed control architecture has a great deal of potential.

The idea of distributed control is to make each local control unit modular and
simple so that the overall control system becomes more robust than one large and
complex system. This means that the host system can be a much smaller computer
than would be required for a hierarchical control system. The collective cost of the
smaller host computer and the local processors can be comparable, or lower, than the
cost of one large computer. Moreover, when a local processor fails, it is often much
more cost effective to replace it entirely than it is to repair a mid-range or mainframe
computer.

A typical area of control that is commonly allocated to some form of local


processor is the collection and processing of signals from external systems. If the local
processor is designed to gather and process signals and it is not loaded down with other
tasks, then it may result in a total system that can perform time-critical functions more
efficiently than a large computer carrying out many tasks.

There is some ambiguity amongst different text books on the subject of


"hierarchical" and "distributed" control, largely because the definitions are rather
subjective. In this book, we will simply define a distributed control system as being
one in which the total control structure is divided up amongst a number of computers or
processors. One could also argue that the structure shown in Figure 2.2 is both
hierarchical and distributed since there is a host computer (ie: higher level computer)
that controls the local processors.

The distributed control architecture concept can be further extended to the point
where there is no longer a need for a host computer. In other words, a system is
controlled by a collection of computers (processors) that all work together in order to
achieve some particular objective. This is referred to as a "heterarchical" control
structure and is shown schematically in Figure 2.3. This is a departure from the other
two computer control architectures in the sense that there is no coordinating device in
the control system. The structure is sometimes referred to as a "functionally
decomposed" control architecture, since all control functions have been devolved down
to local devices. The heterarchical control system looks interesting and has a number
of characteristics in common with the way in which the human brain operates - that is,
as a collection of equally intelligent nodes operating together for some common
purpose.
Computers and Control - Mechatronic Systems 19

Data Communications Network (Local Area Network)

Local Local Local


Processor 1 Processor 2 Processor N

Inputs / Outputs Inputs / Outputs Inputs / Outputs


to local system 1 to local system 2 to local system N

Figure 2.3 - Heterarchical Control Architecture

The problem with the heterarchical control architecture is that it makes the
development of control software rather difficult because no single node has a
coordinating role. This really requires a new way of thinking and many modern system
designers are graduates of the hierarchical control school and have difficulty in
translating their existing techniques to heterarchical control. Over and above the
problems related to the development of control systems in heterarchical structures,
there is the issue of networking. Networking has always been one of the irritating
bottlenecks in the development of digital computers and computer control systems.
Since the need for networking emerged in the 1970s, the progress towards
standardisation has been painfully slow. In the case of heterarchical control systems,
the networks form the backbone for communications between devices and are critical
to the success or failure of the system. However, the speed of communications
between devices across a network has always been a limiting factor in the use of
heterarchical control.

The heterarchical control architecture is making some progress as the


performance of computer networks improves and system designers begin to change
their ways of thinking about control problems. However, all three forms of control
architecture are currently in use and all have advantages and limitations that need to be
considered. It is to be hoped that once you have completed reading this book, you will
have a much greater understanding of the issues that are involved in selecting a digital
computer control architecture for a mechatronic control system.

The remainder of this chapter is devoted to exploring a number of different


computer devices that are available in common mechatronic systems and the way in
which they are used in those systems.
20 D.J. Toncich - Computer Architecture and Interfacing to Mechatronic Systems

2.2 Programmable Logic Controllers


The Programmable Logic Controller, more commonly known as a PLC, is an
unusual device in many ways. The modern PLC is an industrial control computer in
every sense but its predecessors were really only designed to be low-level digital
replacements for the electromechanical control systems found on industrial equipment
during the 1940s, 1950s and 1960s. As a result of this rather unusual heritage, the PLC
has been developed in a rather peculiar way relative to other computer systems.

The first point to note about the PLC's heritage is that it was originally developed
as a "tradesman's tool" rather than the "professional's tool" that the traditional office
computer was designed to be. For this reason, a great deal of emphasis in early PLC
design was to create a programming language that was best understood by industrial
electricians rather than professional programmers. This language became known as
"relay-ladder-logic" and can still be found today on older equipment. The second point
to note about the PLC is that it was always designed as a computerised device with
extensive input and output facilities that were very rare in traditional office computers.

PLCs are now amongst the most prolific of all modern industrial control systems.
They are used for a wide range of applications and are very diverse in their capabilities.
A PLC is shown schematically at its simplest level in Figure 2.4.

Voltage Voltage
Inputs Outputs

Power Microprocessor Power


Transistor and Transistor
Front-End Digital
Back-End
Control
Circuitry

Current Current
Inputs Outputs

Figure 2.4 - Schematics of a Programmable Logic Controller


Computers and Control - Mechatronic Systems 21

PLCs use power-transistor technology, in combination with microprocessors and


digital circuitry, in order to produce a specialised computer system for high power
switching and control. The power transistor front and back ends, are used to buffer the
low-voltage microprocessor computer circuitry from high power industrial inputs and
outputs. PLCs therefore provide the ideal combination of a small computer system
together with interfacing to the industrial environment.

We earlier noted that PLCs were introduced to replace the electromechanical


relay-ladder logic systems used to implement industrial controls. A typical function
could be as follows:

"If Input A is high and Input B is greater than 50 volts, then delay 10 seconds and
then set Output C to High."

The starting point in PLC design was to give the devices the ability to perform
such functions with minimum programming effort. Moreover, to enable the industrial
electricians who once created relay ladders to program the newer technology PLCs.
The inherent ability of PLCs to perform such functions makes them ideal for sequential
control functions where (say) a number of hydraulic and pneumatic actuators and
sensors have to be governed. For example, the opening and closing of safety doors or
the switching of fluid pumps in a production system.

Modern PLCs are relatively inexpensive items, which are industrially rugged in
design and extremely modular in structure. It is commonplace to buy a Central
Processing Unit PLC, together with any number of bus-connected Input/Output (I/O)
modules. This allows both simple and complex machines to be based upon the same,
basic PLC unit. An Original Equipment Manufacturer (OEM) may choose to design a
machine using a basic PLC system (with say 10 to 20 inputs and outputs) and then
purchase expansion I/O modules as customer, design requirements change.

Programming languages for Programmable Logic Controllers are as diverse as the


controllers themselves. Early PLCs were only programmable in "ladder-logic
diagrams" that were a pictorial representation of Boolean circuits coupled with delay
and timer elements. However, as people grew to realise the enormous range of design
applications for these programmable devices, it became less and less attractive to use
the now dated, ladder-logic, diagrams.

Many modern PLCs are sold with specialised implementations of the BASIC
programming language as a built-in feature. This allows a much more sensible and
structured approach to system design to be used. It has also been a logical step, since
the proliferation of Personal Computers meant that more and more technical people
were comfortable with the concept of programming in a language, rather than using
diagrams. In recent years, PLCs have now become available with specialised "C" or
"PASCAL" compilers, that allow complex program development for control
applications.
22 D.J. Toncich - Computer Architecture and Interfacing to Mechatronic Systems

Despite the availability of high-level languages on PLCs, they still remain very
much a "tradesman's tool". PLCs are generally weak in terms of their ability to carry
out complex computations and control algorithms. The real strength of the PLC is in
its ability to interact with high voltage and current inputs and outputs. Moreover, since
PLCs are designed in a modular (building-block) manner, an enormous range of energy
conversion transducers can be used to turn PLC outputs into useful drivers for
mechatronic equipment. For example, PLCs can readily be connected to a range of
solenoids and pneumatic actuators to convert a voltage output into a mechanical
movement.

The functionality of the PLC makes it ideal for controlling sequential "event-
oriented" systems such as conveyors, dedicated transfer machining lines and so on.
However, the ability of the modern PLC to communicate with higher level computer
systems through a data communications link or network has made it into a useful
processing device for distributed control. Figure 2.5 illustrates a commonly used
distributed control system (similar to that shown in Figure 2.2) in which the PLCs are
responsible for interacting with the outside world while the host computer system
carries out some complex control algorithm.

Host Computer
(Control Algorithm)

Data
Communications
Links or Network

PLC 1 PLC 2 PLC 3

Inputs / Outputs Inputs / Outputs Inputs / Outputs


to local system 1 to local system 2 to local system N

Figure 2.5 - Distributed Control Using PLCs

The distributed system of Figure 2.5 enables the PLCs to input information from
hundreds of external sources, carry out minor processing on that information and then
feed it as control input data to the host computer. Once the host computer has
calculated the next set of required outputs (as determined by the control algorithm) it
sends the information to the PLCs via the communications links or network. The PLCs
are then responsible for creating the high current or voltage output.
Computers and Control - Mechatronic Systems 23

The problem with the sort of architecture shown in Figure 2.5 is that the
commonly used data communications links and networks are relatively slow. If, for
example, the system shown therein was used for some form of continuous process
control (such as in a power station or chemical plant) then the communications link
between the PLC and the host computer could form an unacceptable bottle-neck in
terms of data flow. For this reason, a number of PLC manufacturers are now
developing devices that have a much closer coupling to the host computer system so
that the external communications link can be avoided. This form of design involves
connecting the PLC directly into the internal architecture of the host computer system
and is referred to as a "back-plane" connection.

The range of PLCs currently on the market is quite extensive and can include
small devices costing less than a personal computer up to large systems costing more
than most mid-range computer systems. Simple PLCs have an appearance similar to a
programmable pocket calculator - however, the PLC is equipped with a number of
high-voltage, high-current input/output terminals which are used for interaction with
the outside world. These systems are useful for simple sequential control.

Sophisticated PLCs can resemble computer workstations in both appearance and


functionality. Most of the high-end PLCs are capable of executing multiple programs
simultaneously, and interacting with the user through graphical software interfaces.
These systems normally represent the "break-even" point in control systems design. A
control system designer would sometimes need to decide whether to use one of these
costly PLCs to carry out a complete control system or whether it would be more cost
effective to use a traditional computer and a lower cost PLC system.

The criteria typically used to select a PLC for a particular application include the
following:

• PLC Programming Language


• Number of Inputs and Outputs (I/O capability)
• Ability to interact with the user and/or display graphical system information
• Expansion Capability
• Processor Execution Speed
• Modularity of Design
• Ruggedness of Design
• Capacity for Integration with other systems through:
♦ Serial Communication
♦ Back-plane (Bus) Communication
♦ Local Area Network Communication.

Overriding the technical factors are the always considerable political factors,
which cause a company to choose a PLC vendor based upon conformance with other
systems already installed in a plant. This reduces the need for maintenance personnel
to become familiar with a wide range of programming languages and implementation
techniques.
24 D.J. Toncich - Computer Architecture and Interfacing to Mechatronic Systems

2.3 Intelligent Indexers and Servo-Drive Systems


One of the most important issues in the development of mechatronic control
systems for industrial applications is the ability to accurately move some mechanical
element such as a cutting tool or end-effector from one position to another. This is
essential to the development of precision devices such as robots, Computer Numerical
Control (CNC) machine tools, indexing tables for laboratory equipment, etc.

There are many ways in which an element can be moved from one position to
another. Older industrial systems traditionally used hydraulics and pneumatics to
propel mechanical elements. For centuries, mechanical clocks have used springs for
energy and gears to index the arms with a relatively high degree of accuracy. However,
in modern industrial systems the most common approach is to use electromagnetic
techniques - that is, electric motors whose rotational positions can be accurately
controlled. Rotational movement is transformed into linear motion by driving simple
"screw-feeds" or low-friction, low-backlash, recirculating ball-bearing, screw-feeds
(ball-screw-feeds).

Those who are unfamiliar with the intricacies of electric motors will assume that
the only function of a motor is to rotate continuously within a required velocity range.
However, when we talk about the accurate positioning of a robot arm or CNC machine
axis, we are really talking about motors that are designed to rotate a fraction of a
revolution and then stop. The actual motors used for these applications are similar to
the a.c. and d.c. motors that rotate continuously in other electrical machinery - the
difference is in the way they are controlled.

There are essentially two types of motor control systems that can be used for
accurate positioning of mechanical elements:

• Stepper Motor or Indexer Control (Open loop control)


• Servo Motor Control (Closed loop control).

The stepper motor system is based upon a special type of motor that rotates
(indexes) by a fraction of a revolution each time a voltage pulse is applied to one of its
windings. Unlike traditional motors, the stepper motor does not rotate smoothly but
rather, steps from one position to another and hence its name. The overall stepper drive
system is shown schematically in Figure 2.6. Stepper motors were originally used for
small scale applications such as in printers, plotters, etc. However, they are now also
used in industrial applications where the mechanical load on the motor is known (and
stable). Although the control principles are similar, the industrial systems tend to be
referred to as "indexers" in commercial literature.
Computers and Control - Mechatronic Systems 25

Electrical Energy Input

Voltages
Representing
Stepper Motor Drive
Required Position

Electrical
Outputs

Mechanical
Stepper Motor
Output

Figure 2.6 - Stepper Motor Arrangement

The nature of the actual stepper motor drive can vary considerably. For very
small motors, the drive can be implemented on a single silicon chip. On large systems,
the stepper motor drive has to include power electronics and cooling fins to dissipate
heat and hence has to be implemented on a circuit board, with discrete transistors and
digital circuits.

The fundamental limitation of stepper motors arises when they are used as shown
in Figure 2.6 - that is, as "open-loop" devices. If the load on the motor shaft is larger
than the torque generated by the electrical energy input to the motor windings, then the
motor will not index from one position to another in a predictable manner. The
absolute positioning characteristic of the motor is therefore lost. As a result, open-loop
stepper motors are only used in situations where the load is always well defined - for
example, in parts transfer (shuttle or indexing) systems where the maximum load on the
motor can be calculated during the system design phase. A stepper motor, running in
"open-loop" mode would be inappropriate for positioning a cutting tool, since the load
caused by tool could vary substantially depending on the work-piece properties and
amount of material being removed.

Some stepper motor controllers can function in a closed-loop, where the position
of the motor shaft is fed back to the controller from a resolver or position encoder.
However, once these devices are converted into closed-loop systems, then they lose
their cost advantage over traditional servo drives that can provide a "smoother"
rotation.
26 D.J. Toncich - Computer Architecture and Interfacing to Mechatronic Systems

The servo motor system is the embodiment of classical control theory and
operates in a closed loop that enables the controller to drive the motor according to its
current velocity or position. The traditional servo motor system is shown in Figure 2.7.
It is composed of:

• An a.c. or d.c. motor


• An analog resolver or digital encoder device that provides a voltage signal
or signals corresponding to the orientation of the motor shaft
• The servo drive controller itself
• An electrical energy supply.

Electrical Energy
Input

Input voltage
proportional to
required position
Servo Drive
(Controller)

Electrical
Position
Energy
Feedback
Output

Encoder
Mechanical
or a.c. or d.c Motor
Output
Resolver

Figure 2.7 - Schematic of Traditional Servo Drive System Arrangement

The servo drive is an electronic device that is used to provide a regulated flow of
electrical energy from an external power supply to the motor, based upon the difference
between a specified voltage signal (the set-point or reference position) and the feedback
signal from the encoder or resolver on the motor shaft. This provides closed-position
loop control of the shaft.
Computers and Control - Mechatronic Systems 27

A number of servo motor systems have servo drives that do not provide closed-
position loop control. Instead, their purpose is to provide closed-velocity-loop control.
In these systems, the servo drive provides an output proportional to the difference
between the actual velocity of the motor and a specified voltage signal (the set-point or
reference velocity). In servo drives such as this, the velocity feedback can either be
obtained by differentiating the position feedback signal (readily achieved in both
analog and digital servo drives) or from an additional element known as a tacho-
generator. A tacho-generator is a d.c. machine that is mounted onto the same shaft as
the main motor and provides an output voltage proportional to the speed of rotation of
the shaft. This closed-velocity loop form of servo drive is shown in Figure 2.8.

Electrical Energy
Input

Input voltage
proportional to
required velocity
Servo-Drive
(Controller)

Electrical
Position Velocity
Energy
Feedback Feedback
Output

Encoder Tacho-
Mechanical
or Generator a.c. or d.c Motor
Output
Resolver

Figure 2.8 - Closed-Velocity-Loop Servo Motor System

The "velocity" terminology in regard to servo drives will cause some annoyance
to those concerned with engineering etiquette. Strictly, of course we are referring to
the speed of rotation (not velocity). However, this speed is normally directly related to
the linear velocity of some end-effector and so the terms tend to be used
interchangeably.

The closed-position and closed-velocity loop servo drives both have roles to fulfil
in industrial applications. The closed-position loop system is most useful where only
one independent axis of movement is required in order to move some element or "end-
effector" to a given position. However, where two or more motors are used to drive an
end-effector to a given position, the axes are often interdependent. The path taken to
reach that position also needs to be controlled through the velocities of the servo
motors.
28 D.J. Toncich - Computer Architecture and Interfacing to Mechatronic Systems

The difference between velocity and position control is best demonstrated with a
simple "XY" machine, as shown in Figure 2.9 (a), where one motor controls X
movement and the other controls Y movement. Figure 2.9 (b) shows two paths taken
by the end-effector in order to reach the point "P". Path (i) is obtained using velocity
control of servo motors so that a straight line is generated between the starting point
and the final destination. This is called "linear interpolation". Path (ii) is what can
result from using two position controlled servo motors, which each attempt to reach
their final positions independently. In path (ii) it is clear that the "X" movement is
faster than the "Y" movement and hence when the X motor reaches its final position,
the Y motor still has to continue for some time. Since it is obviously not possible to
have "total velocity control" over a motor, because of acceleration and deceleration,
most multiple-axis machines (robots and CNCs) use a dual feedback loop arrangement
incorporating both velocity and position.

End-Effector
Position

X
Drive

Y Y
Drive

X
(a)

Y
P

(i)
(ii)

X
(b)

Figure 2.9 - (a) A Simple XY-Machine


(b) Problems with Using Position Control for Interdependent Axes
Computers and Control - Mechatronic Systems 29

There are many different types of servo drive control available for industrial
applications. The first distinction between drives is that some are designed for d.c.
motors and others are designed for a.c. motors (induction and synchronous motors).
Direct current motors are much simpler to control than alternating current motors but
cost considerably more and are less reliable. As a result of technology limitations,
older servo drives were only designed to control d.c. motors and a.c. drives did not
emerge until the 1980s.

The older types of servo drives (both d.c. and a.c.) are analog in nature and are
characterised by the fact that the circuit boards are relatively bulky. Modern drives
utilise digital technology to control the power flow to the motors and as a result, less
"waste" heat is generated and hence the drives can be much smaller. Traditional servo
drives did not have any in-built "intelligence" and could thus only carry out simple
forms of closed-loop control. The most prolific form of control was (and still is) the
so-called Proportional-Integral-Differential or PID control which is a classical, closed-
loop control methodology.

In recent years, servo drives have also begun to utilise the low-cost processing
power that has become available through microprocessors and Digital Signal Processors
(DSPs). This enables manufacturers to design servo drives that can "intelligently"
control the flow of energy to the motors through some complex algorithm. A number
of commercially available indexers (stepper motors) are now also equipped with
microprocessor control. In addition to allowing a broader range of control algorithms
to be implemented (in addition to PID), the on-board processor can also allow the servo
drive controller to be networked, so that it will respond to positioning or velocity
commands.

Servo motors and drives, both a.c. and d.c., are not only the basis for a great
range of modern machinery design but are also contributors to the improved factory
environment that now exists in many Western countries. Servo drive systems are much
quieter than hydraulic and pneumatic systems and considerably reduce noise emission
levels in the factory when they replace these older drive systems in low power
applications (up to a few kilowatts). The servo motors not only provide quieter
operation but also the ability to position elements with a high degree of accuracy over
an entire range of displacements. Hydraulic and pneumatic systems, on the other hand,
tend to be used only for point to point positioning and are not suitable for graduated
positioning. However, the hydraulic and pneumatic drives still have advantages in
situations where extremely high forces need to be applied to move actuators or end-
effectors from one position to another.
30 D.J. Toncich - Computer Architecture and Interfacing to Mechatronic Systems

2.4 CNC and Robotic Controllers


The servo motor drive system is a basic building block for most modern industrial
equipment. In particular, it is the basis for Computer Numerical Control (CNC)
machine and robot design. These two elements are, in turn, amongst the most prolific
pieces of machinery in a modern industrial complex.

The CNC machine is very much a "fish out of water" in the worlds of computing
and manufacturing. CNC has never provided a full-fledged computer control system
(in the way most engineers would understand it) and the machines which are controlled
by CNC are still designed like machines that should be manually driven. Robotics on
the other hand, benefited enormously by arriving at a more opportune "technological
time" after suitable electronics and processing became available to provide sensible
controls.

In the middle of the twentieth century, the majority of lathes and mills were
manually driven by operators that moved axes by turning hand-wheels. The axes were
composed of "screw-feeds" that were used to move some end-effector (such as a
cutting tool or work-piece fixture) so that the work-piece could be processed. These
machines were designed around a rudimentary, geometric axis system (based on either
orthogonal or cylindrical coordinates) so that the operators could easily relate the
required geometry of a work-piece to the movement of a single hand-wheel on the
machine.

The most logical first step in automating these machines in the 1950s was to
replace each of the manual hand-wheels with a servo motor drive. Initially, the servo
motor drives were all connected to a controller, known as a Numerical Controller or
NC, that would cause each of the drives to move, based on a punched, paper-tape
program. Considering the high cost of computing in the 1950s, these machines
provided an extremely good mechanism for automated processing of work-pieces.
Unfortunately however, as computer technology evolved and low cost microprocessors
proliferated in the 1970s, NC became Computer Numerical Control or CNC, with little
revision of the fundamental concepts. CNC is conceptually little more advanced than
NC and its basic advantage is that it provides the ability for programmers to enter, edit
and simulate cutter paths on the controller itself.

Few people question the design of CNC machines. As with many other industrial
systems, features that were ill-designed due to lack of technology have remained as
industry standards, long after the enabling technologies have emerged. There are many
other limitations that have arisen in CNC, in terms of the design of the computer
control itself. Many CNCs are still designed as though machines were intended to exist
in isolation from other computers and the outside world - that is, as "islands of
automation". However, in industry we now know that it is important for all computer
controllers to either receive instructions from the outside world or send data to the
outside world in order to simplify the task of factory automation.
Computers and Control - Mechatronic Systems 31

Robots, unlike CNC machines, really only came into being (on a large scale) after
the advent of microprocessors and the dawn of "low-cost" computing. Modern robot
design has therefore suffered far less from the manacles of the by-gone manual era than
has CNC machine design. As a result, robots tend to look and perform like devices
designed for a specific function using modern concepts of computer control. Even after
all the advances in CNC design, robots still tend to interact with the outside world in a
far more proficient manner than the CNCs. However, despite the obvious physical
differences between, say, an articulated welding robot and a CNC milling machine, the
principles behind the actual control systems are essentially similar. The schematics of
CNC and robot control systems are shown in Figure 2.10.

Supervisory Controller
(Executing Program)
Reference
Position
Position Feedback
Axis Controller
(Axes 1 to N)

Reference
Velocity Position Transducer

Voltage
Servo Drive End
Motor 1
Controller 1 or Current Effector
Mechanical
Coupling

Velocity Feedback

Figure 2.10 - Schematics of a CNC or Robotic Axis Control System

The supervisory controller in robotic and CNC systems is responsible for a


number of simultaneous activities including the user (system) interface and part
program parsing and execution. As each step (block) of a part program executes, the
supervisory controller passes down positioning information to the axis control
computer.

The axis controller is responsible for achieving the desired position, using
appropriate acceleration and deceleration curves. It does this by sending reference
velocities to the servo-drive controller, on the basis of the actual position that has been
achieved. As a result, a double feedback loop (velocity and position) is established.
32 D.J. Toncich - Computer Architecture and Interfacing to Mechatronic Systems

The relationship between the servo-drive controller and the servo-motor is


dependent upon the type of motor in use. In d.c. systems, the servo-controller varies
the average voltage (hence current) applied to the motor windings. In both
synchronous and induction motor, variable-speed a.c. systems, the servo controller
supplies the armature of the motor with a variable frequency supply voltage. Note also,
that the servo motor drives in traditional CNC and robotic control systems are based
upon closed-velocity-loop control. The CNC or robotic axis controller is then
responsible for closing the position loop.

In older CNC and robotic control systems, a number of processors were used to
implement the entire control. One processor acted as the supervisory controller,
another as the axis controller and so on. In some cases, each axis had its own processor
because the task of closing the position loop was so "processor-intensive". Current
processor technologies enable a typical four axis machine to be controlled by one
microprocessor which performs all processing (supervisory, axis control, etc.) functions
in real-time through multi-tasking.

The transducers used to provide velocity and position feedback on both robots
and CNC machines vary according to the specific applications. Commonly, shaft-
mounted tacho-generators are used to provide velocity feedback and linear resolvers or
pulse-code transducers (encoders) provide position feedback.

Both CNC and robot control systems share another common trait in that they tend
to be very specialised in their design. They are optimised to achieve multi-axis control,
with minimum user programming, and hence the languages that they use tend to be
somewhat restrictive.

For historical reasons, related to early hardware limitations, CNC machines were
(and still are) traditionally programmed in a "G-Code" language. This dated system
provides a user with a number of sub-programs, commonly prefaced with either a "G",
"F", "S", or "T" and suffixed with a subroutine number or parameter. These facilitate
the movement of a cutting tool through a predefined path; the selection of a cutting tool
and so on. However, few (if any) of these languages will allow a programmer to do
more than this.

G-Code languages were never intended to provide the user with routines for
accessing various aspects of the machine controller itself and for interfacing it to the
outside world. These features, which are now both desirable and important, are
difficult or impractical to implement on CNCs. For example, with older CNCs, it is
often difficult to display user programmed screens as a part program executes. Further,
it is generally not possible to access the serial communications facilities of a CNC
through the G-Code language itself.
Computers and Control - Mechatronic Systems 33

CNC designers often attempt to augment the limited features of the G-Code
languages by running additional (concurrent) tasks on the CNC. For example, many
CNCs have programs designed to handle serial communications and remote commands,
running as tasks, while a part program executes. This type of task is referred to as a
Direct Numerical Control or DNC task/facility. It generally enables a host computer to
remotely control a CNC machine through a serial link. There are other tasks, such as
concurrent, graphic information displays, which are also added by a number of
manufacturers.

The deficiency with older forms of CNC architecture is that they ultimately
provide a closed (black) box to the end-user. It is often difficult for end-users to re-
program CNCs in order to change graphics displays, or the way in which serial
communication occurs. So, while traditional CNCs provided great flexibility in terms
of cutting and shaping materials, they generally provided very little flexibility in terms
of tailoring the user environment. Modern CNC designs, however, have improved
since the early 1990s and are gradually moving towards high-level, structured
languages and open-architecture programming capabilities.

Robot controllers have generally been better than traditional CNCs in terms of
programming flexibility. Unlike CNC machines, robots seldom, if ever, work as
devices in total isolation from other systems. They are generally linked to other
computer controlled or logic controlled mechanical systems. For example, a spray-
painting robot must be linked to the production line that feeds it with work-pieces for
painting - otherwise there can be no inter-locking between line movement and robot
cycles. As a result, programming languages on robots have tended to reflect the
systems oriented nature of these devices. However, it is far more difficult to categorise
the capabilities of robot controllers, because they are far more diverse in software
architecture than CNC systems.

Some robot-controllers can be programmed in PASCAL or "C" (or special


structured languages such as VAL) in the same manner as any normal computer
system. These systems provide users with a high level of access to the internal
hardware of the controller itself. This makes such controllers more amenable to
interfacing with the outside world. A few, "less sophisticated", robot controllers are
analogous to older CNCs and can only be programmed in restrictive, specialised,
movement languages (similar to proprietary G-Codes). These systems suffer from the
same interfacing disadvantages as CNC systems.
34 D.J. Toncich - Computer Architecture and Interfacing to Mechatronic Systems

CNC systems and robot controllers generally come with built-in Programmable
Logic Controllers, usually of a specialised and complementary design, and normally
produced by the CNC or robot manufacturer. The PLCs are integrated into the CNC or
robot control system, under the control of the main processor. They are used to control
a range of sundry functions requiring high voltage or current switching. For example,
on a CNC machine, the internal PLC may control the switching of coolant pumps, the
opening and closing of doors, etc. On a robot, the PLC may control the opening and
closing of grippers and the switching of inter-locked equipment. The inputs and
outputs of PLCs on both robot and CNC systems are accessible from within the robot
programming language or G-Code programming language. This scheme is shown in
Figure 2.11.

CNC Inputs
Integrated
or
Purpose-Built
Robot Control
PLC
Outputs

Servo Servo
..
Drive 1 Drive N

Figure 2.11 - Integrated PLC Control of High Power Peripherals

CNC and robot controls are generally both provided with a "hard-wire" interface
to the outside world. This provides a simple means of integrating the devices into
automated systems. In a hard-wire interface, spare inputs and outputs from the
integrated PLC are selectively connected to external devices so that they can be inter-
locked. Program execution is then made dependent upon the condition of inputs.

For example, if we wished to use a robot to feed a CNC machine with work-
pieces, a hard-wire inter-locking arrangement, such as the one shown in Figure 2.12
may be used.
Computers and Control - Mechatronic Systems 35

PLC PLC

Output x Input m Robot


CNC
Controller
Input y Output n

Figure 2.12 - Inter-locking a CNC Machine to a Robot

In such a system, the CNC machine program should start execution as soon as the
robot has loaded a part (ie: when the robot program has been completed). The robot
should unload a part when the CNC machine program has ended. This can be achieved
by the robot setting output number "n" high when it completes a program (last
executable line of code) and the CNC machine setting output "x" high when it
completes a program (last executable line of code). The first lines of code on both the
CNC and robot are to wait for inputs "y" and "m", respectively to go high before
continuing.

This form of inter-locking is suitable for simple systems, but is unable to deal
with problems that occur during the execution of a robot program or CNC program.
For example, the robot may jam a component while loading the CNC machine and stop
while its grippers are still inside the machine. The CNC has no way of knowing the
actual position of the robot and so may damage the grippers. These sorts of issues can
only be resolved by having the robot and CNC intelligently communicate with one
another through a data communications link. These links require specialised
communications software packages (known as protocols) to execute on each of the
devices. Robots have been equipped with communications protocols since the early
1980s and CNCs became available with similar protocols shortly thereafter. The actual
implementation of a control system via a communications protocol is the subject of
another book and is outside the scope of this text.
36 D.J. Toncich - Computer Architecture and Interfacing to Mechatronic Systems

2.5 Development Systems for Mechatronic Control


The advances in computer processing power which took place during the 1970s
produced an enormous number of low cost personal computers in the 1980s. However,
by the mid-1980s it was evident that these personal computers were limited by their
inability to communicate with the outside world. As a result, their use in engineering
control was limited. Engineers with a good background knowledge of electronics were
able to design interfaces between personal computers and real-world systems but these
were "one-off" solutions that were very costly to pursue. For those without an
electronic engineering background, the concept of linking personal computers and
workstations to the outside world presented serious problems.

By the latter part of the 1980s, a number of companies had recognised the need
and potential for equipment suitable for interfacing personal computers to the outside
world. Vendors began to launch a range of "building-block" products that could be
used by engineers, with limited knowledge of computer hardware, to implement
engineering control systems. Since that time, the interfacing-board market has grown
to the extent where plug-in interfaces have almost become a commodity.

There are literally thousands of different types of products that are suitable for
mechatronic control systems in industrial and laboratory environments. In general,
these are designed to plug directly into a variety of commonly available personal
computers and workstations. At their most basic level, these interfacing boards provide
the ability for computers to input and output analog voltage signals through a number
of different channels. This is shown schematically in Figure 2.13.

Host Personal Computer

Operating System
1
User Interface : Analog Outputs
Program Board
N

Interface 1
Board : Analog Inputs
Software Library
N

Figure 2.13 - Basic Interface Board Arrangement for Data-Acquisition and Control
in Analog Systems
Computers and Control - Mechatronic Systems 37

An interface board such as the one shown in Figure 2.13 would also typically
provide a library of software routines that would carry out the low level hardware
access to the input and output channels of the board. The end user can utilise these
routines in a common high-level language program such as C or Pascal without ever
understanding the complexities of the board or the processes that transfer data between
the board and the computer's memory areas. As with nearly all consumer items, the
more one pays, the more one gets. A more sophisticated version of the board could
provide protection and isolation between the external signals and the computer
hardware.

The basic arrangement of Figure 2.13 assumes that the end-user will wish to
develop control software entirely on the "host" personal computer. However, there are
many instances where the development of a control algorithm may be a case of
"reinventing the wheel". A typical example would be the implementation of a basic
PID control, where an incoming feedback signal is processed via a standard algorithm
to produce a required output signal. A number of boards are equipped with their own
"on-board" microprocessors or Digital Signal Processors that are available to carry out
basic "closed-loop" control functions. The host personal computer then essentially
becomes a development tool that provides a screen and keyboard/mouse input
arrangement. However, when the control system is fully implemented, the system
designer can develop software that will enable the personal computer screen and
keyboard to become the interface between the user and the control system. This is
shown schematically in Figure 2.14.

Host Personal Computer

Operating System Interface


1
Board with
Interface : Analog Outputs
On-Board
Board
Processor N
Software Library
Standard
User Control Loop 1
Program Software : Analog Inputs
N

Figure 2.14 - Using Advanced Interface Boards with "On-Board Processors" for
Standard Closed-Loop Control Functions
38 D.J. Toncich - Computer Architecture and Interfacing to Mechatronic Systems

The concept shown in Figure 2.14 is often extended to provide more than just a
simple general-purpose control. A number of intelligent controller boards are available
for specific functions including:

• Servo motor control


• PC-based digital storage oscilloscope applications
• Waveform synthesis
• Micro-stepper and stepper motor control
• Video acquisition (frame-grabbing and image-processing, etc.).

To some extent, a number of plug-in boards available for personal computers and
workstations really do little more than replicate the functionality available in a
Programmable Logic Controller. There is however, one major advantage in using plug-
in interface boards in preference to PLCs and that is the fact that the interface board
connects directly into the bus structure of the host computer. This provides the fastest
possible link between the outside world and the computer. Most PLCs can only be
connected to a computer via a network or point-to-point communications link, both of
which are relatively slow for real-time control. In some instances, PLCs have evolved
to a level where there is really no difference between the functionality of an interface
board and a PLC - this is particularly true of PLCs that plug directly into the bus
structure of a personal computer or workstation in much the same way as the
arrangement of Figure 2.14.

The major disadvantage of nearly all plug-in boards (and PLCs) is their relative
cost. An interface board can often cost as much or more than the host computer
system. If the board is to be used for a "one-off" system design then this is not an
issue, since the cost of developing an interface board would be a much more expensive
proposition. However, if the objective is to develop control systems for mass
production, then clearly the off-the-shelf interfaces are unacceptable.

One of the reasons for the relatively high cost of interface boards is the fact that
they are designed to be "general-purpose". Most of the boards accept a wide range of
voltage and current inputs and can provide a wide range of output voltages and
currents. This sort of functionality is expensive. In situations where many boards need
to be produced and cost is of the essence, specialised boards with strictly limited
functionality (in other words, purpose-built) need to be designed from first principles.
The focus of this book is to help you to come to terms with the basic principles behind
the design of interfaces so that you can understand how commercial systems operate,
their limitations and the appropriateness of designing from first principles.
Computers and Control - Mechatronic Systems 39

In some cases, the decisions in regard to control system design are already fixed
by overriding physical or commercial factors. For simple controller applications, the
cost of a personal computer plus interfacing boards may be too high to make such a
solution viable. In other situations, the physical size of a personal computer and
interfacing boards precludes the use of such a solution. There are several ways to
resolve these control problems. The first is to design a complete microprocessor or
DSP based controller from first principles. This is normally the most cost-effective
solution where mass production is involved, but is expensive for low volume
applications. The other alternatives are based upon the tailoring of so-called "miniature
controllers" or "micro-controllers".

Miniature controllers are microprocessor based computers that are usually


designed to fit onto a relatively small printed-circuit board. Unlike the mother-board of
a personal computer or workstation, a miniature controller already has built-in control
functionality such as analog inputs and outputs and relay-drivers. The software for the
miniature controllers is normally stored in special memory chips known as "Electrically
Erasable Programmable Read Only Memory" or EEPROM. On a normal computer,
programs are stored on magnetic disks and transferred to memory later for execution.
This allows for much greater storage but also makes the overall computer system larger
in size than the miniature controller. A typical arrangement is shown in Figure 2.15.

Key-Pad LCD Display

PC Workstation
Operating System Miniature Controller

µP EEPROM
Software
Serial Link
Development
Kit

A/D D/A

Strain Gauge Analog Output 1

Load Cells Analog Output 2

Temperature Analog Output 3


Sensor

Linear Position Analog Output N


Transducer

Figure 2.15 - Miniature Controller Development System


40 D.J. Toncich - Computer Architecture and Interfacing to Mechatronic Systems

The beauty of miniature controller development systems is that a system designer


can develop software on a standard PC workstation using a special development
compiler (normally programmed in the "C" language). The software is then down-
loaded to the miniature controller memory via a serial communications link.
Thereafter, the miniature controller can be disconnected from the PC and act as a stand-
alone unit.

Miniature controllers are designed in a building-block fashion so that the


development does not require a highly skilled electronics engineer nor the production
of printed circuit boards and so on. Typical accessories include liquid crystal display
screens and operator keypads that enable the final users of such controllers to interact
with them at a very basic level. As with all other general-purpose "building-block"
devices, the cost of a miniature controller can become excessive when large volumes
need to be produced. However, when one takes into account the fact that development
times are minimised and hardware reliability is much higher than for "one-off" designs,
the miniature controller is a very useful device.
Computers and Control - Mechatronic Systems 41

2.6 Manufacturing Systems


There are very few areas of engineering where control systems proliferate to the
extent that they do in modern manufacturing systems. A sophisticated manufacturing
system can contain control elements including:

• Microprocessor or DSP controlled Servo Drives


• CNCs
• Robot Controllers
• PLCs
• Cell controllers (PC workstations or dedicated computers).

The difficulty, of course, lies in getting all these different types of controllers to talk to
one another so that a cohesive manufacturing system can be produced.

In continuous processes (such as in chemical, food and petrochemical production


and power generation) the interaction between different levels of control is very tightly
governed because the level of intelligence ascribed to each element tends to be limited.
However, in discrete processes, such as in metal-cutting manufacturing systems or
textile production systems, the boundaries between the different levels of control are
somewhat blurred and cohesive control is more difficult to achieve.

A number of different, metal-cutting, manufacturing systems are used in order to


satisfy the performance criteria demanded by a wide range of industries, including
workshops, automotive and aerospace manufacturers. The common system
configurations are shown in Figure 2.16, which gives an indication of how each system
fits into annual volume / variety regions in the production environment.

Annual Volume

Dedicated
Systems
100000
F.T.L.

10000
FMS with CNCs, AGVs & Robots
1000

100
Robot
Fed CNC
10
Stand-alone CNC
1
Part Variety
1 10 100 1000

Figure 2.16 - Realms of Metal-Cutting Manufacturing Systems


42 D.J. Toncich - Computer Architecture and Interfacing to Mechatronic Systems

The systems mapped onto the graph in Figure 2.16 have differing performance
characteristics and also place different demands upon the data communications used by
their control systems. We shall now examine the structure of each of the integrated
systems and the way in which communication between devices occurs.

The dedicated, in-line transfer machine is shown in Figure 2.17 and is a high-
volume, low part variety system. It is composed of a number of machining stations and
a transfer conveyor. Each of the machining stations is designed and tooled for a
specific application. For each station, tools are loaded into an induction motor driven,
multi-spindle cutting head, which has an advance and retract motion. When a work-
piece comes into position within a machine, the head advances for a fixed period, then
retracts, to allow the work-piece to move down-line to the next destination. Each
machining module is generally controlled by a PLC, which is hard-wired to its sensors,
coolant pumps, etc. These machining modules are generally not user-programmable
devices. They are pre-programmed to perform only a fixed task.

Supervisory PLC

PLC PLC PLC

PLC
Transfer Mechanism
(Conveyor)

PLC PLC PLC


Dedicated
Machining Modules

Figure 2.17 - Schematic of Dedicated, In-Line Transfer Machine

The transport mechanism for in-line transfer machines is also a PLC controlled
device. In simple systems, the transport mechanism controller is also the system
controller, and is hard-wire inter-locked to the dedicated machining modules. In more
complex systems, a separate, high powered PLC is used to coordinate the running of
the system and drive mimic-panels and graphic information displays.
Computers and Control - Mechatronic Systems 43

In transfer machines, where individual modules are controlled by a range of


PLCs, produced by different vendors, it is common practice to simply hard-wire from
the supervisory PLC to other PLCs in the system. However, in a single-PLC-vendor
environment, a number of proprietary solutions are generally feasible. Some of these
solutions allow PLC data buses to be inter-connected through a back-plane system for
information exchange. Other solutions allow for interconnection of PLCs through high
speed Local Area Networks. Regardless of which system is chosen, the objective is for
the supervisory PLC to implement sequential control over the system through
input/output inter-locking with individual module controllers.

Rotary transfer machines are analogous to in-line transfer machines except that
parts transfer, from machine to machine, occurs through via an indexing mechanism in
a circular path. The control principles however are almost identical.

The hard-wire, inter-locking, communications techniques, shown in Figure 2.17,


for dedicated systems are generally adequate because:

• Individual machining modules are relatively simple devices, executing


simple, fixed, programs

• The amount of information which any, one machine can feed back to a
supervisor is comprised of little more than off/on limit-switch status

• The supervisory controller does not need to change programs on individual


modules in the system.

Dedicated manufacturing systems, of the type shown in Figure 2.17, fulfil a vital
role in the high-volume production of a small variety of parts. However, in order to
vary the type of part that passes through such a system, it is necessary to manually re-
tool each of the machining stations. If the type of part to be produced is radically
altered, then such systems require major re-engineering, or as is often the case,
complete replacement. Since these systems are designed for the production of a
specific item, their cost and production life are calculated on the basis of anticipated
product life.

Increased competition in manufacturing, coupled with increasing consumer


demands for new products, mean that product life-spans are decreasing. The cost
effectiveness of dedicated production systems is therefore diminished accordingly. In
addition, companies driving towards export competitiveness with products now find
that they need to produce a "family" of products, tailored to specific global markets.
These requirements engender a need for flexibility in production systems.
44 D.J. Toncich - Computer Architecture and Interfacing to Mechatronic Systems

Flexibility in production systems is achieved through the ability of individual


modules in those systems to respond to changes in part variety. This is in turn,
achieved through the use of fully programmable machining modules and flexible parts
transport techniques.

It would be sensible to suggest that flexibility in manufacturing could be achieved


by taking a dedicated system, such as that shown in Figure 2.17, and replacing some or
all the fixed machining modules with CNC machines. This is common practice, and
the result is referred to as a "Flexible Transfer Line" or FTL. However, it should be
noted that the cost ratio of a CNC machining module to a dedicated module can be as
high as 10 to 1. It is therefore not economically feasible to replace, say 50 dedicated
machining modules in a fixed system with 50 CNC machines. Generally, each CNC
machine uses automatic, programmable tool changing in order to perform the functions
of a number of dedicated modules. Thus, production flexibility is increased but
throughput is decreased in what becomes a normal trade-off situation.

While it may be common in a dedicated production line to have 50 to 100


machining stations, a flexible production system may have only 5 to 10 CNC
machining stations, performing the same net function at a lower production rate.
However, the benefits in flexible production become self-evident when production
needs change, because flexible systems can respond very quickly to new demands, with
minimal human intervention.

The transfer line arrangement of Figure 2.17, whilst very fast, does not provide
the optimal transport mechanism for maximum production flexibility. Robots, Gantry
Robots and Automated Guided Vehicles (AGVs), on the other hand, provide a high
degree of transportation flexibility at the cost of production throughput. All three
devices use relatively sophisticated control systems. AGVs in particular, commonly
use a powerful PLC as a Constant System Monitor (CSM), which governs the positions
to which vehicles move.

The Flexible Manufacturing System (FMS), designed for a very wide variety of
parts, is more likely to resemble the schematic shown in Figure 2.18, rather than that of
2.17. The intelligence level of each module (machine) within the system is much
greater than that within the dedicated production line. CNC machines in sophisticated
FMS environments may even be augmented with specialised robots to transfer tools
from AGVs to machine tool carousels and vice-versa. The practicality of such systems
has long been questioned by industrialists and their reliability has been unsatisfactory.
The primary reason for this is the difficulty of creating a cohesive and robust control
system that can recover from the numerous system faults that arise when handling a
wide range of parts.
Computers and Control - Mechatronic Systems 45

AGV

CNC CNC

AGV

Programmable
Machining Modules

CNC CNC

AGV

FMS Controller AGV Controller

Figure 2.18 - Schematic of a Flexible Manufacturing System

In a complex FMS environment, where a number of different part-types may be


within the system simultaneously, the controller is required to:

• Coordinate the flow of work-pieces of differing types, from one machine to


another, based upon a rolling schedule

• Activate different part programs on CNC machines, as required by the part-


types present in the system

• Down-load part programs to CNC machines as required by the machines

• Coordinate (inter-lock) the role of the work-piece transport system with the
operation of CNC machines.
46 D.J. Toncich - Computer Architecture and Interfacing to Mechatronic Systems

Some of these functions can be (and sometimes are) implemented through the
hard-wire inter-locking of devices to the FMS controller, which can be a powerful PC,
PLC, workstation or mini-computer. However, FMS control is more appropriately
achieved through data communications between the controller and the other
computerised (intelligent) modules within the system. In a complex, FMS
environment, the system controller must have the capacity to interrogate other
equipment whilst programs are running. This gives the controller access to a wide
variety of information regarding the status and error-conditions of machines, thereby
allowing for intelligent decision making in the control algorithm.

Simple, hard-wiring techniques only allow devices to exchange one piece of data
per wire (say an on/off state or transducer voltage). They do not allow one computer to
transfer data files to another computer. This of course means that down-loading of
CNC machine programs from a supervisory computer cannot be achieved with the
hard-wired system alone. In simple hard-wired, FMS systems, machine programs are
normally resident in the local memories of each machine during a production run.
Programs are generally down-loaded (or file-dumped) to machines, via data
communications links, prior to the start of automatic FMS control.

One of the major benchmarks of FMS is the ability to tolerate and reconcile fault
conditions. Each module in the system performs a complex task and is therefore
subject to a large number of possible faults or errors. It is costly for an FMS controller
to shut down an entire system, simply because one machine has developed a fault. The
objective is for the controller to attempt to maintain orderly and safe system operation
even under certain fault conditions. However, as previously stated, this is far more
readily achieved in a rarefied academic environment than it ever has been in industry.

One of the major problems in FMS is the difficulty involved in integrating a


range of different and proprietary computer controllers (PLCs, CNCs, robot controllers,
etc.) via computer networks. There are considerable problems with lack of
standardisation and an overwhelming sensation that many of the "intelligent"
controlling devices to be linked in an FMS were designed to operate as "islands" of
control without the necessary functionality for interaction. These sorts of integration
problems are the subject of another book, but as we progress through this text we shall
see why it is that integration problems arise with computer based devices.

You might also like