You are on page 1of 14

IEEE TRANSACTIONS ON ROBOTICS AND AUTOMATION, VOL. 12, NO.

1, FEBRUARY 1996

The Real-Time Supervisory Control of an Experimental Manufacturing Cell


Bertil A. Brandin, Member, ZEEE
Abstruct- In the last decade the manufacturing environment has changed dramatically. In the past, manufacturing systems were sufficiently simple, in most cases, to permit the use of intuitiveand informal solutions in the development of supervisory control systems. The increasing level of automation, integration, and flexibility encountered in automated manufacturing systems renders formal approaches to the supervisory control system development a necessity. The controlled-automata based approach to supervisory control development considered in this work is one such approach. It offers important advantages over other approaches. It guarantees that: i) the resulting controlled behaviors do not contradict the behavioral specifications and are nonblocking and ii) the controlled behaviors are maximally permissive within the behavioral specifications. The work presented illustrates the applicability of the method to the supervisory control of industrial automated manufacturing systems. The paper provides an overview of the automated manufacturing field, and introduces supervisory-control-system development. The main concepts are illustrated through an example of a small manufacturing cell. The development of a supervisory control system for an experimental manufacturing cell is presented subsequently. Both centralized and modular supervision are considered. The automata models for the complete cell are provided together with the corresponding supervisors. The implementation of the resulting supervisory control system only required the use of off-the-shelf industrial control systems.

the workcell behavior to corresponding controls; and iii) control enforcement via the downloading and execution of the appropriate device programs. Communication allows sensory feedback and control enforcement to be performed. Housekeeping is the set of tasks related to supervisory control and communication which are necessary to their implementation, e.g., data-base management. Supervisory control system development consists in the procedure generating supervisors and control laws which specify how the supervisory control system is to react to the manufacturing system behavior in order to satisfy given behavioral specifications (routing, sequencing, safety, etc.). To develop supervisory control systems, different techniques such as knowledge engineering 1121, [15]-[171, [21], [23]-[25], [29], [36], [42]-[44], [53], Petri nets [14], [18], [19], [28], [45], and controlled automata [l], [4]-[8], [27], [34], [38], [50], [51], [59] may be exploited. The work presented is based on controlled automata, since these provide important advantages over other approaches, as is described in Section III.

B. The Supervisory Control o Discrete-Event Systems f


Discrete event systems (DES) are dynamic systems that evolve in accordance with the abrupt occurrence of events. They are generally asynchronous (not clock driven) and nondeterministic (some events may occur spontaneously). Such systems are encountered in a variety of fields, for example in manufacturing, robotics, computer and communication networks, traffic, and logistics. The supervisory control of DES in accordance with behavioral specification is a new research area which is receiving increasing recognition. The approach is based on information feedback on the occurrence of events and controlled automata concepts. It offers two important advantages over other approaches: the resulting controlled behaviors do not contradict the behavioral specifications and are nonblocking: the supervisors and control laws obtained are correct by construction; and the controlled behaviors are maximally permissive within the behavioral specifications: all events which do not contradict the speciJcations are allowed to happen.
1 . AUTOMATED 1 MANUFACTURING SYSTEMS

I. INTRODUCTION

A. Automated Manufacturing Systems


UTOMATED manufacturing systems are generally composed of a number of interconnected material processing stations, a material transport system, a communication system, and a supervisory control system. The flexible manufacturing concept advocates that manufacturing operations be carried out within workcells, each workcell being responsible for the production of a specific part family. Cells are usually interconnected by a transport system. Although workcell configurations may vary, these typically incorporate the following systems: numerically controlled (NC) part processing machines, material handling devices, part inspectiodtesting devices, inprocess part storage systems, and a supervisory control system. The latter performs the following three tasks: supervisory control, communication, and housekeeping. Supervisory control consists of i) the monitoring of the workcell behavior via sensory feedback; ii) control evaluation (determination) in accordance with a supervisory control law which maps
Manuscript received November 3, 1992; revised February 14, 1995. The author is with the Department of Electrical and Computer Engineering, University of Toronto, Toronto, Ontario M5S 1A4 Canada. Publisher Item Identifier S 1042-296X(96)00969-4.

The manufacturing environment has evolved from intensive manual operation, where labor operated individual machines, to semiautomatic operation, where the machines were able to

1042-296W96$05.00 0 1996 IEEE

EEE TRANSACTTONS ON ROBOTICS AND AUTOMATION, VOL. 12, NO. 1, FEBRUARY 1996

perform a few steps in automatic sequence, to a high degree of automation making extensive use of computers and automated equipment [48]. The term automated manufacturing is used here when referi-ing to a manufacturing facility with a high degree of programmable automation. An automated manufacturing system generally consists of a number of interkonnected material processing stations capable of processing a wide variety of part types, a material transport system, a communication system for integrating all aspects of manufacturing, and a supervisory control system. Automated manufacturing systems generally exhibit a high degree of automation, integration, and flexibility; the latter takes a number of forms, including [48]: volume flexibility, i.e., the ability to handle changes in the production volume; * routing flexibility, i.e., the ability to route parts through the system in a dynamic fashion taking into account machine breakdowns, required tooling, etc.; and * product flexibility, i.e., the ability to handle requests for a wide variety of products, including the ability to reconfigure the system to handle the production of different products. The latter may also involve various off-line support technologies, including computer-aided design (CAD), and computer-aided process planning (CAPP), as well as on-line technologies such as robotics for processing and handling materials, and computer aided testing (CAT).

3) Data Storage and Control Systems: Data storage and control systems provide, together with communication systems, the basis for integration. They are classified into the following three categories: Microprocessor-Based Programmable Controllers, which are specialized devices used to control the operation of machines or processes by means of stored programs and feedback from input/output devices. Microcomputer-Based and Minicomputer-Based Controllers, which are either embedded into the manufacturing devices, or may work as standalone units performing monitoring and control functions. In automated manufacturing systems, production planning and control are possible because of the availability of such high performance microcomputers and minicomputers. Mainframe Computers, which are generally used to perform high-level control tasks and to manage the various databases for entire manufacturing facilities.

B. Workcells
Automated manufacturing systems are generally organized into workcells according to the flexible manufacturing concept 2 4 ,[35] which advocates that manufacturing operations be 21 carried out within workcells, each workcell being responsible for the production of a specific part family. Workcells are usually interconnected by a transport system. Although workcell configurations vary, these typically incorporate the following systems: * numerically controlled (NC) part processing machines; * material handling devices; part inspectiodtesting devices; * in-process part storage systems; and a workcell supervisory control system constituted by a computer system and corresponding communication network(s). Depending upon the decision-making ability and upon the local memory capacity requirements, computer systems may range from small, microprocessor-based systems to sophisticated computers with powerful operating systems and programming languages. Depending on the workcell configuration requirements, various types of communication networks may be considered. Cell size and complexity may vary, with on the one hand small workcells having very simple control systems incorporating just a few components, and on the other hand, workcells such as that of the automated manufacturing research facility at the National Bureau o f Standards, which considers an entire manufacturing facility to be a dynamic arrangement of virtual manufacturing workcells [34] assumed to be highly automated and flexible.
0

A. Elements o Automated Manufacturing Systems f

1) Machining, Assembly, and Transportation Devices: Numerically ControIledKomputerized Numerically Controlled (NC/CNC) Machines: The main types of CNC
9

machines are lathes and milling machines. Industrial Robots: Robots are useful in a wide variety of applications such as spray painting, spot welding, arc welding, as well as material handling, assembly, and inspection. Material Transport Systems (TransferSystems): Materials need to be transported bgtween manufacturing, assembly, and testing stations, etc. Typically, a variety of conveyor systems and automated guided vehicles (AGV) are used in addition to industrial robots. 2) Sensors and Communication Devices: * In most cases, sensors are an integral part of machines (internal) but they may sometimes perform their function independently (external). Bar code readers and vision systems are two such examples. Sensors, in general external, play an important role in the supervisory control context, since they provide the information required to carry out closed-loop control. * Communication systems are used in virtually every aspect of automated manufacturing. They provide, together with the data storage and control systems introduced below, the basis for integration. Communication systems are generally constituted in the manufacturing kontext by interconnected computer networks.
0

C. Supervisory Control
Supervisory control systems carry out the following three tasks: supervisory control, communication, and housekeeping [4]. Supervisory control consists of

BRANDIN REAL-TIME SUPERVISORY CONTROL OF AN EXPERIMENT& MANUFACTURING CELL

the monitoring of the system behavior via sensory feedSupervisory control system back; control evaluation in accordance with a supervisor and Events Supetvisor + the corresponding supervisory control law which maps control law the workcell behavior to corresponding controls; and control enforcement via the downloading and execution of the appropriate device programs. Communication allows sensory feedback and control enforcement to be performed. Housekeeping is the set of tasks related to supervisory control and communication which are necessary to their implementation, e.g., data-base management. Supervisory control system development Consists in the procedure generating supervisors and control laws wliich Plant specify how the supervisory control system is to react to the manufacturing system behavior in order to satisfy given Fig. 1. Feedback control. behavioral specifications. The advantage of considering a controlled automata based approach over other approaches lies mainly in the existence of plant model + Modelling + specification models + Synthesis techniques [SI, [9], [5 11 which guarantee that the supervisors and control laws obtained are correct by construction, ensuring that the resulting controlled behaviors are guaranteed not to 4 violate the specifications considered; and that the supervisors and control laws obtained are maximally permissive within the SUpervlsor(S) + Supervisory control t - Implementation c - control law@) behavioral specifications considered, allowing all occurrences which do not contradict the specifications. Furthermore, controlled automata provide excellent modeling tools for systems such as manufacturing workcells. The models obtained are Fig. 2. Supervisory control system development. realistic enough to capture the system features required for control purposes, and yet are simple to visualize and use. As shown in Fig. 2, the development of a supervisory Device integration and programming are important issues in control system is divided into three main steps: the supervisory control of automated manufacturing systems, The Modeling of the Plant and Behavioral Spec$cations because of the generally heterogeneous nature of such systems. to be Enforced: Both the plant physical behavior and the The various machines and devices often support a variety behavioral specifications are translated in the form of of programming languages, and the corresponding sensory automata. outputs are usually expressed in incompatible terms, thus Supervisor and Control Law Synthesis: Taking into acmaking device integration a difficult task. A successful and count the supervisory control system architecture adopted recognized approach to this issue consists of (for example centralized or modular), the automata repthe development of high-level device programming lanresenting the physical behavior of the system to be conguages and related device customized programming primtrolled and the automata representing the corresponding itives, which allow automated manufacturing system despecifications are fed to a computer program which will: vices to be programmed on a uniform basis 121, 141; i) tell us whether it is possible for the system to behave and within the specifications and ii) return the supervisor(s) the translation of sensory outputs into correspondmg highembodying the maxiknally permissive controlled behavior level language statements [4]. of the system within the latter specifications, and the corresponding control law(s) yielding such behavior. 111. SUPERVISORY CONTROL SYSTEM DEVELOPMENT Implementation: The supervisor(s) and the corresponding control law(s) obtained are coded in a Programmable The supervisory control of DES in accordance with behavLogic Controller (PLC) or computer based control system ioral specification is a new research area which is receiving which will carry out feedback-based control; the superviincreasing recognition. The approach is based on information sory control system reacts to event occurrences according feedback on the occurrence of events (cf., Fig. 1) and conto the supervisor(s) and corresponding control law(s). trolled automata concepts. It offers two important advantages Generally, specificationsencompass a set of nominal behavover other design approaches: the supervisors and control laws obtained are correct by ioral specifications, e.g., part routing, a set of error recovery procedures for modeled errors, e.g., a robot grasping error, and construction; and the supervisors and control laws obtained are maximally a recovery procedure for generally unmodeled occurrences, permissive within the behavioral specifications consid- e.g., ihe communication breakdown between the manufacturing system and the supervisory control system. The latter ered.

IEEE TRANSACTIONS ON ROBOTICS AND AUTOMATION, VOL. 12, NO. 1, FEBRUARY 1996

w
Machine is idle

D
events

operation finish repair and r e


to service

Fig. 3. A simple machine.

recovery procedure can take the form of a time-out requesting operator assistance, for example, in case no expected event occurrence takes place during a specified time interval. A. Modeling The theory for discrete event systems (DES) considered in this work is based on controlled automata concepts. The behavior of DES, such as manufacturing systems, are modeled naturally by finite state automata. An automaton is a five-tuple G = (E, Q, S, Qm, qo) in which: 1) C represents a finite set of transitions or event labels; 2) Q represents a finite set of states; 3) 6 is a transition function describing state transitions; 4) Qm represents a finite set of marker states (states with a particular meaning from a control perspective); and 5) g o represents the automatons initial state. Finite state automata are naturally described by directed transition graphs. In order to represent an automaton G = (E, Q, S, Qm, qo), the set of states Q is identified with the nodes (represented by 0 ) of a directed graph whose edges are labeled with transition labels in C (represented by o 0). In the following, (4 ) indicates the automatons initial state, 0 and ( 0 ) indicates a marker state. For the purpose of supervisory control system development, plant behaviors and corresponding behavioral specifications are modeled in the form of directed transition graphs. Furthermore, events are subdivided into controllable events, i.e., the events which may be disabled through control, and uncontrollable events, i.e., the events which may not be disabled through control. Consider the simple machine shown in Fig. 3. It has three possible states idle ( I ) ,working (W), down (D). Its initial and state is idle, and it is also a marker state. Four events may take the machine from one state to another. For example, the event operation start ( s ) takes the machine from the state idle (I) to the state working (W).Typically, operation start ( s ) is a controllable event, whereas breakdown (6) is an uncontrollable event.
B. Synthesis

We will limit the discussion to centralized and modular supervisory control. Centralized supervision [50], [511 implies

that the overall supervisory task is carried out by one single supervisor embodying the closed-loop behavior of the plant. Furthermore this supervisor must be provided with complete information on the occurrences of events in the plant. Modular supervision [6], [7], [59] implies the division of the overall supervisory task into two or more subtasks. Each of the latter tasks is solved using the results of centralized supervision and the resulting individual subsupervisors are run concurrently to implement a solution of the original control problem. A modular supervisor is ideally more readily modified, updated, and maintained than its centralized counterpart. For example, if one subtask is changed, then it should only be necessary to redesign the corresponding component supervisor. Unfortunately, these advantages are not always to be gained without a price. The fact that the individual supervisory modules are simpler implies that their control action must be based on an aggregated version of the global system state. Consequently, the different component supervisors, acting quasi-independently on the basis of partial information, may come into conflict and the overall system may fail to be nonblocking. Thus a fundamental issue that always arises in the presence of modularity is how to guarantee the nonconflictingproperty of the various supervisors working together. Shared resources are a common example of possible source of conflict between supervisors: two numerically controlled machines (users) require the simultaneous use of a tool-bit and a fixture (resources); two modular supervisors are each responsible for the control of one resource [6]. If these supervisors are such that at any one time each user is allowed to take possession of one resource by the respective supervisor, blocking results since effectively either user prevents the other from finishing its task and freeing the resource it possesses. Centralized supervisory control is seen to be suitable for fairly small problems (in the order of lo5 states, for plant and specifications combined synchronously [50]) since the corresponding supervisory controls tend to be large in state size; they are required to encompass the behavior of the whole plant subject to all specifications. Modular supervisors jointly achieve equivalent system behaviors but tend to be smaller in state size, even though they are generally computationally more expensive. It must be noted, however, that the corresponding off-line computations may often be carried out in parallel, thus reducing the effective required computation time. Taking into account the supervisory control system architecture adopted (e.g., centralized, modular, etc.), the transition graphs representing the physical behavior of the system to be controlled and the transition graphs representing the corresponding specifications are fed to a computer program which will return, if these exist, the supervisor(s) embodying the maximally permissive controlled behavior of the system within the specifications, and the corresponding control law(s). The resulting supervisors which embody the controlled behavior of the plant, are finite state automata (represented by directed transition graphs). Let S be a supervisor for a plant G. Let x be a state of S. The corresponding supervisory control law V maps every state x of S to a set of transitions V(x), termed control. Transitions in V(x) never contradict

BRANDIN: REAL-TIME SUPERVISORY CONTROL OF AN EXPERIMENTAL MANUFACTURING CELL

Fig. 5. Monitoring.

7 1
Interface

plant input

devices

readevent-data

Fig. 4. General computer controlled system.

I current-sta;update
control law

the specifications considered (and are therefore termed legal) and keep the system G within the specifications. C. Supervisor and Control Law Implementation In the context of discrete-event systems, the fundamental objective of a supervisory control system is the generation of suitable controls aimed at enforcing a correspondingcontrolled discrete-event system to behave in obedience to given specifications. In practice, a supervisory control system must also possess an architecture which will allow various plant structures and control schemes to be adopted. Thus a supervisory control system must exhibit a great degree of flexibility and must be amenable to integration within the plant. Recall that a supervisory control system carries out mainly three tasks: supervisory control, communication, and housekeeping. Supervisory control consists of: i) the monitoring of the plant behavior via sensory feedback; ii) control evaluation in accordance with a supervisory control law; and iii) control enforcement via the downloading and execution of the appropriate device programs. Fig. 4 illustrates the general organization of a computer controlled system. Although almost any digital computer can be used for real-time control and other related operations, they are not all equally easily adapted for such work. A computer-based control system must communicate both with plant and personnel: communication must be efficient and effective and the processor must be capable of rapid execution to allow real-time control action. I ) Monitoring [4]: The monitoring of the plant behavior via sensory feedback is essential in supervisory control. Monitoring requires that the supervisory control system possess the capability to communicate with the various devices constituting the plant, in order to gather the information provided by the devices sensors. The sensory outputs of the various devices may not always be expressed in compatible terms. It may thus be necessary to translate these into high level language statements which can be treated uniformly by the supervisory system or easily understood by an operator. Assume in the following, that the output of the plant output-devices, referred to as event-data, consists of a network address, and a bit pattern representing the occurred event. Then, monitoring can be carried out in one of two ways depending on the data transfer technique used
Fig. 6. Control evaluation.

store control

with polling, the supervisory control system checks periodically whether a device is ready for data transfer. In that case, the corresponding event-data is transmitted to and received by the supervisory control system and stored in a buffer; and using interrupts, the occurrence of an event causes the output device to interrupt the supervisory control system operation. The corresponding event-data is transmitted to and received by the supervisory control system and stored in a buffer. Subsequently,the supervisory control system returns to its pre-interrupt (background) activity. Fig. 5 illustrates, in the form of flow chart, the sequence of operations carried out for polling. 2) Control Evaluation 141: All controllable events are assumed to be disabled by default. Control evaluation determines which legal events must be enabled, in accordance with the supervisory control law considered. Control evaluation requires that the supervisory control system possess both computing power and memory capacity, to carry out the required decision making operations, and the capability to interface with human operators if necessary. Let S be a supervisor embodying the closed loop behavior of a plant G .Let x be the current state of S . Control evaluation is carried out in the following way (cf., Fig. 6). Through monitoring, event-data has been stored. Subsequently, the data is read and translated in suitable symbolic form, e.g., the operationJinish ( f ) event for the machine shown in Fig. 3, indicating the end of a production cycle. The current state x of S is thus updated to say x.Subsequently,the corresponding control V(x) is evaluated and stored. 3) Control Enforcement [4]: The enforcement of controls, when considered in detail, has further implications than just the ability to communicate with the workcell devices and vice versa; as is the case with monitoring, device integration becomes an important issue because of the generally heteroRecall that in the present context, legal has the following meaning: which does not contradict any behavioral specification.

IEEE TRANSACTIONS ON ROBOTICS AND AUTOMATION, VOL. 12, NO 1, FEBRUARY 1996

readcontrol

monitoring

I &
No

evaluation
translation

Fig. 7. Control enforcement.


control law evaluation

geneous nature of manufacturing systems (due, for example, to different machine makes). A successful and generally recognized approach to this issue consists of the development of enforcement high-level device programming languages and related device customized programming primitives [ 3 ] .This approach allows all the devices of a workcell to be programmed on a uniform basis. The various program statements are translated in realtime into device programs through the use of programming primitives in which the appropriate variables are instantiated. The downloading of these programs to the appropriate devices and their subsequent execution results in the enforcement of the stipulated controls. Control enforcement is carried out as follows. Control evaluation produces a list of events to be I executed by corresponding devices. The latter list is read item Fig. 8. Supervisory control. by item, and each item is appropriately translated for each device into suitable control actions, e.g., device programs TABLE I and corresponding execute statements, and thus transmitted BASIC PLC FUNCTIONS to the corresponding devices, thus effectively enforcing the corresponding events. Fig. 7 illustrates the related sequence of operations. a is energised if preceding 4 ) Supervisory Control 141: Fig. 8 illustrates the interacenmgise(a) logic sentence on rung is TRUE tion between monitoring, control evaluation, and control enforcement based on polling. a a is energised and kept
___.. ( ). . . -

D. PLC-Based Implementation [4/ Programmable (logic) controllers (PLC) are comparable in design to most computer-based control systems, but are specialized in logic-based control [41], [47], [57]. They are designed to operate in industrial environments with wide ranges of operating conditions (ambient temperature, humidity, noise, and vibrations). Their hardware and the corresponding software are designed for use by plant electricians and technicians. They are generally programmed in ladder logic or other comparable language, and repetitively execute a single program, sequentially, from beginning to end. Programmable logic controllers have built-in inputloutput (UO) modules linking them to the field devices constituting the plant; these are typically quite robust and easy to connect and replace. The fast access memory of most programmable (logic) controllers is broadly divided in two: the first part containing the user program and the second containing the related data table. The user program generally accounts for most of the memory capacity, and consists of ladder logic or equivalent

energised until reset, if preceding logic sentence on rung is TRUE once. a is de-energised if preceding logic sentence on rung is

reset(a}

-----(RI-----

TRUE
a examine_on(a)
examine-off(u)
-..--I I----a
. .I \ . _

returns TRUE if status of a is energised


returns TRUE if status of U is

I-.

de-energised

I
language statements relating inputs to corresponding internals (internals are user-program controlled flags) and outputs. The data table contains the information required to carry out the user program; it includes information such as the status (energizedlde-energized)of inputs, outputs, and internals, timer and counter values, digital data from field devices inputs, etc. During each operating cycle, termed scan, the CPU sequentially reads the status of the system inputs, evaluates the

BRANDIN: REAL-TIME SUPERVISORY CONTROL OF AN EXPERIMENTAL MANUFACTURING CELL

Machine 1

Buffer (1)

Machine 2

Fig. 9. A small manufacturing system.

control logic embodied in the user program, and consequently MACHINE 1 updates the status of the outputs by either energizing or deenergizing them. Data transfer is thus carried out using polling with periodic checks to determine whether the various field devices are ready for data transfer. Typically, scan times may vary from 1 ms up to 100 ms 1471, [571. Ladder logic programming is based on contact symbology. The five basic functions [41], [57] available on most PLC programming languages are described in Table I. Where a refers to either an input, an output or an internal for Machine 1 is working the e x a m i n e m and examine4 f f functions, to an output or Machine 1 is down Machine 2 is idle internal for the energise function, and to an internal for the set and reset functions. b2 For example, for a , b, and c referring to either an input, an r2 output or an internal, a -+ c ( a implies c) is expressed with the rung Fig. 10. Mach 1 and Machine 2. a C

MACHINE 2

events
operation start on Machine 1 operation finish on Machine 1 breakdown of Machine 1 rep. +ret. to serv. of Mach. 1 operation start on Machine 2 operation finish on Machine 2 breakdown of Machine 2 rep. + ret. to serv. of Mach. 2

I _ - - - - - - - I 1 - - - - - - - _( ) _ - - _ - _ - I
la
--f

c [(not a ) implies c] is expressed with the rung

I_ - - - - - - - [ \ I - - - - - - - -(

)- - - - - -

-1.

We are now in a position to consider the PLC-based implementation of discrete-event system supervisory control. Recall that supervisory control consists of three tasks: i) the monitoring of the plant behavior; ii) control evaluation;and iii) control

enforcement.
1 ) Monitoring: As stated earlier, monitoring is carried out using polling: during every scan, the status of the various inputs is checked. 2) Control Evaluation: Let S be a supervisor for a plant G and let V be the corresponding supervisory control law. Control evaluation is carried out as follows. To every state x of S is associated an internal labeled accordingly. One such internal is energized at any time and corresponds to the supervisors current state. Such internals are set and reset upon the occurrence of events, i.e., upon the energizing of corresponding inputs. Whenever a state x of S is reached, outputs corresponding to V(x) are energized. 3 ) Control Enforcement: Control enforcement is carried out by the programmable logic controller output modules upon the energizing of given outputs.
IV. EXAMPLE: CENTRALIZED SUPERVISORY CONTROL

either idle, working, or down. The buffer is either empty or full. Initially the buffer is assumed to be empty and the machines are assumed to be idle. The transfer of workpieces is assumed to be part of the machines workcycle, during which the machines pick up a workpieces upstream, and transfer workpieces downstream. Centralized supervisory control is to be used. The machines operation and repair must be coordinated according to the following production and repair specifications: the buffer must not overflow or underflow: Machine 1 may not start operating while a workpiece is present in the buffer,.and Machine 2 may not start operating unless a workpiece is present in the buffer; and Machine 2 has repair and return to service priority over Machine 1: in case both machines are down, Machine 2 must be repaired and returned to service first. The operation of the machines is controlled via information feedback on the occurrence of events.

B Control System Development .


Recall that the development of a supervisory control system is divided into three main steps: 1 ) Modeling of the Plant and Behavioral Specijications: The manufacturing system, that is Machine 1 and Machine 2, and the behavioral specifications are modeled in the form of transition graphs as illustrated in Figs. 10-12. Consider Machine 1. Initially it is idle; its state is 11. Once it starts operating, i.e., the event s l occurs, it changes state to W1. Depending on what event happens next it may either: change its state to idle (Il), if it successfully finishes its work cycle (fl); or change its state to down (Dl), if it breaks down (bl).

A. Problem Description

The manufacturing system considered consists of two machines and a buffer of size l . Machine l and Machine 2 are connected by the buffer (cf., Fig. 9). The machines are

IEEE TRANSACTIONS ON ROBOTICS AND AUTOMATION, VOL. 12, NO. 1, FEBRUARY 1996

states
E F
buffer is empty buffer is full

events

fl
s2

operation finish on Machine 1 operation start on Machine 2

Fig. 11. Buffer specification.


r2

11

OK

n
Fig. 13. Supervisor S embodying the plant maximally pemssive controlled behavior.
events

tell us whether it is possible for the machines to behave within the specifications, and * return the supervisor embodying the maximally permissive controlled behavior of the machines within these Fig. 12. Breakdown specification. specifications, and the corresponding control law. In this example the machines can behave within the buffer If the machine is down (Dl), it is repaired and returned to and breakdown specifications. The maximally permissive conservice (rl), bringing the machine back to its idle state (11). trolled behavior of the machines within these specifications is shown in Fig. 13. The same applies to Machine 2. State 1 of the graph corresponds to Machine 1 being idle The transfer of workpieces is assumed to be part of the machines' workcycle, so that when (sl) and (s2) have occurred, (Il), Machine 2 being idle (I2), and the buffer being empty the machines are assumed to have picked up a workpiece (E). htially Machine 1 starts working (sl) to fill the buffer. upstream, and when (fl) or (f2) have occurred, the machines If Machine 1 finishes its cycle (fl), Machine 2 can start work (s2), etc. are assumed to have transferred a workpiece downstream. 1 Table 1 provides further information on the meaning of the The events sl, s2, rl, and r2 are controllable: they can be disabled and enabled by control action. The events bl, b2, supervisor states. From the above transition graph the control law (shown in f l , and f2 are uncontrollable: they cannot be disabled and may occur spontaneously. The behavioral specifications are Table m) is obtained by listing the controllable events exiting the states of the controlled behavior transition graph. modeled as shown in Figs. 11 and 12. Through the disablement of controllable events, the combiThe buffer specification transition graph means the follownations of states which are not allowed by the specifications ing: are never reached by the machines and buffer. It is important * initially the buffer is empty; to note that, for example, the control law does not allow the Machine 2 may not start operating prior to the buffer being Idl, that is prior to the occurrence of an operation combination (Wl, 12, F, OK) to be reached from state 3 (11, 12, F, OK) by starting Machine 1 (sl): the combination (Wl, finish on Machine 1 (fl); 12, F, OK) could potentially lead to the buffer overflowing, * the buffer may not be filled again (fl) before the occurthat is having two parts in it, if Machine 1 finishes operating rence of an operation start on Machine 2 (s2); and (fl) before Machine 2 starts operating (s2). no other event occurrence affects the buffer specification. 3) Supervisor and Control Law Implementation: The suThe breakdown specification transition graph means the pervisor and control law are coded in the supervisory control following: system: a programmable logic controller or computer. Control initially Machine 2 is OK; is carried out via information feedback on the occurrence of Machine 1 may be repaired and returned to service (rl) events. any time as long as Machine 2 is OK; Initially, the machines are idle (11, I2), the buffer is empty * in case Machine 2 breaks down (b2), Machine 2 must be (E), and the supervisor S is in the initial state, that is state repaired and returned to service before Machine 1 may 1. According to the control law, the corresponding control is be repaired, that is the event r l may not occur at the state sl: starting the operation of Machine 1. The control system KO; and starts Machine 1 and updates the supervisor state to state 2. * no other event occurrence affects the breakdown speci- Depending on what occurs next the control system will update fication. the supervisor state and send out controls according to the 2) Supervisor and Control Law Synthesis: In order to syn- control law. For example if Machine 1 finishes its cycle (fl) thesize a control law which will enforce the specifications the supervisor state is updated from statel2 to state 3, and the considered, the above machine and specification transition corresponding control is s2: starting the operation of Machine graphs are fed to a computer program which will 2, etc.
States

OK KO

Machine 2 is fine Machine 2 is down

rl b2 r2

~ p+ret. to sew.of Machine 1 . breakdown of Machine 2 rep. + ret. to sew. of Machine 2

BRANDIN: REAL-TIME SUPERVISORY CONTROL OF AN EXF'EFSMENTAL MANUFACTURING CELL

1 TABLE 1 CONTROLLED BEHAVIOR STATE CORRESPONDENCE

supervisor state

Machine 1 state

Machine 2 state

buffer specification state

repair specification state

1 2

w1
I1 I1
w1 I1 I1 I1 w1 D1 D1 D1

I1

I2
I2 I2

E
E

3 4 5
6

w2 w2
w2

7
8 9 10
11 12

D2
D2 D2 D2 w2 12

F E E F F
E E

OK OK OK

OK OK
OK KO KO KO KO OK OK

E E
E

Superviso+Y control system

Conveyor belt

supervisor
state x

control
V(X)
SI

U
/'

U
Mill
~~

Robot and VLSiOn system

2
3 4

s2 Sl
r2 sl,r2 r2 r2 rl rl

outgoing pallet

Pallet positioning system

5 6 7 8 9 10
11

Bin

Drill

Fig. 14. The experimental workcell.

12

Using the approach presented, the contrc- system will i ways react to any event occurrence in the most permissive way within the specificationsconsidered. Initially, the machines are idle (11, I2), the buffer is empty (E), and the control system is in the initial state of the controlled behavior graph, that is state 1. According to the control law, the corresponding control is sl: starting the operation of Machine 1. The control system starts Machine 1 and updates its own state to state 2. Depending on what occurs next the control system will update its state and send out controls according to the control law. For example if Machine 1 finishes its cycle (fl) the controller state is updated from state 2 to state 3, and the corresponding control is s2: starting the operation of Machine 2, etc.

bin. Workpieces arrive in random order on the conveyor belt. Supervisory control may be carried out in either centralized or modular fashion. The cell is shown in Fig. 14.

B. Modeling

V. EXPERIMENTAL SETUP

A. Problem Description
The automated manufacturing cell considered consists of a robot, a vision system, a conveyor belt, two simulated numerically controlled machines, a mill and a drill, and a supervisory control system constituted by Programmable Logic Controllers. Two types of workpieces must be worked on by both the mill and the drill before being placed in the

1 ) Robot and Vision System: A GMF S-100 robot with a Karel R-F controller, is used to transfer workpieces within the cell. Along with its grasping tool it is equipped with a camera for workpiece recognition, linked to the workcell vision system. The robot is programmed to carry out seven tasks. These are: 1) go to conveyor and grasp, and go to mill and drop; 2) go to drill and grasp, and go to mill and drop; 3) go to mill and grasp, and go to drill and drop; 4) go to conveyor and grasp, and go to drill and drop; 5 ) go to mill and grasp, and go to bin and drop; 6) go to drill and grasp, and go to bin and drop; and 7) recognition. The robot is hardwired to the PLC with four output internals, which are energized in patterns in order to activate corresponding robot tasks. The vision system is characterized by object (workpiece) premarking, and active visual perception. Objects are modeled by a small number of their two-dimensional perspective

10

IEEE TRANSACTIONS ON ROBOTICS AND AUTOMATION, VOL. 12, NO. 1, FEBRUARY 1996

Robot + Vision System


I

TABLE IV

recl.rec2

EVENTS FIGS. FOR 15-21


events (c: controllable, U: uncontrollable)

Recognition Transfer op11,op12,op21,op22,exil,exi2

Fig. 15. The robot and vision system.

inre
reCl

reC2

C views, referred to as standard views, each associated with a C corresponding standard view axis. The mobile camera attached C to the robot arm is used to acquire a standard view of the C C object (workpiece) to be recognized. Local surface normals are U sens defined for each standard view by premarking the object with C gaup red circular markers (defining corresponding standard view axis). C ffado c Initially the vision system attempts to detect a marker in PiUP the field of view according to a preplanned search strategy. C pido In case a marker is detected, the corresponding standard view C PUP is estimated, and the surface normal and marker center are C pod0 computed with respect to the camera frame. Subsequently, C stw2 through the alignment of the cameras optical axis with the: C stw4 U wai2 estimated surface normal, a standard view of the object is U wai4 acquired. Depending on the degree of similarity between the acquired standard view and the reference standard views of Pos. limit switch all the possible objects considered, one or more candidates are pido selected. In case only one matching reference standard view is found, successful recognition is assumed. In case several matching reference standard views are found, one additional standard view is acquired. In case no unique candidate or no candidate is found, the object is assumed to be unrecognizable. Restraint pin Pallet positioner Finally, having recognized an object, its orientation and posipido tion are determined. In this example, recognition will always be assumed to be successful, and the vision system will be able to distinguish between two types of workpieces: type 1 Timer2 Timer4 and type 2. The robot and vision system are modeled as shown in Fig. 15. All events apart from (recl) and (rec2) are controls tw4 StW2 lable. A complete list of events for the experimental setup is provided in Table IV. Fig. 16. The conveyor positioning system. 2) The Conveyor Positioning System: The conveyor used is an Amatrol 83-129 loop conveyor with a 14 130 pallet potwo timers used to ensure that the pallets reach the desired sitioning system. Its purpose is the transportation of incoming position before acting on either the restraint pin or the workpieces. The pallet positioning system, shown in Fig. 16, pallet positioner (see corresponding specifications); the consists of timers are programmed in the supervisory control system. * a positioner limit switch, attached on the inner conveyor The various actuators of the pallet positioning system are rail just upstream of the pallet positioner, is placed so that powered by compressed air and controlled with solenoids. All the incoming pallet will trip It, thus signaling the pallets events are controllable apart from (wai2) and (wai4). presence; 3) The Simulated Numerically Controlled Machines: The two gage stops which are mechanical stops mounted on numerically controlled machines considered are simulated and either side of the conveyor belt immediately downstream shown in Fig. 17. They are composed of a platform on from the pallet positioner; which workpieces are positioned by the robot and mechanical * a restraint pin located upstream from the limit switch switches which indicate their presence or otherwise. The along the inside rail of the conveyor, its purpose being to switches are also hardwired to the PLC. Worktime is simulated queue pallets for the pallet positioning system; by time delays programmed on the PLC. Since for control * a pallet positioner which consists of four lifting rods purposes, only the end of operations by the mill and drill are of which straddle the belt in a rectangular formation; their interest, the above models are simplified as shown in Fig. 18. purpose is to lift the pallet above the moving conveyor All events apart from (opll), (op12), (op21), and (op22) are belt; and uncontrollable.

opll op12 op21 op22 exil exi2

initialise recognition recognition of a workpiece of type 1 recognition of a workpiece of type 2 go to conveyor and grasp, go to mill and drop go to drill and grasp, and go to mill and drop go to mill and grasp, p d go to drill and drop go to conveyor and grasp, go to drill and drop go to mill and grasp, and go to bin and drop go to drill and grasp, and go to bin and drop positioner limit switch senses a pallet gage stops is placed in the up position, blocking a pallet in the positoner system gage stops is placed in the down position restraint pin is placed in the up position, queuing pallets upstream restraint pin is placed in the down position @et positioner is placed in the up position, liftiig pallet from the conveyor belt pallet positioner is placed in the down position start time out of 2 seconds start time out of 4 seconds time out of 2 seconds time out of 4 seconds

C
U

BRANDIN: REAL-TIME SUPERVISORY CONTROL OF AN EXPERIMENTAL MANUFACTURING CELL

11

Mill

endl

54

Drill

end2 op22,op12,exi2,endl

Fig. 17. The numerically controlled machines.

=
opll, opl
D

55

op12

W opll,opZl,exil,endZ

Fig. 18. The numerically controlled machines (simplified).

+ : a
exi2 opll,op12,op22,end2

S6

4) The Supervisory Control System: The supervisory control system is composed of two Allen-Bradley PLC-5 programmable logic controllers linked by an Allen-Bradley Data Highway Plus network to a personal computer used for programming purposes. 5 ) Behavioral Specifications: Four behavioral specifications must be enforced through supervisory control. These are as follows. 1) Two types of workpieces arrive on pallets in the workcell in random order. Type 1 workpieces must be worked on first by the mill, then by the drill and subsequently evacuated to the bin. Type 2 workpieces must be worked on first by the drill, then by the mill and subsequently evacuated to the bin. The graphs shown in Fig. 19 enforce the above specification. Type 1 workpieces are worked on first by the mill (opll, endl) , then by the drill ( 0 ~ 2 1end2) and are subsequently evacuated to the , bin (exi2). Type 2 workpieces are worked on first by the drill (op22, end2), then by the mill (op12, endl) and are subsequently evacuated to the bin (exil). 2) Both the mill and drill have a buffer of size one. One workpiece only may be transferred to these machines at any one time. This specification is implicit in the graphs S4-S7 shown in Fig. 19: neither machine may start operating on a new workpiece before the workpiece currently on the machine has been transferred onwards. 3) The various actuators of the conveyor belt positioning system must be coordinated so that only one pallet at time is halted and lifted from the conveyor, the remaining pallets being queued upstream. The graph shown in Fig. 21 enforces the above specification. Initially the arrival of a pallet triggers the positioner limit switch (sens). Subsequently, both the gage stops and the restraint pin are set in the up position (gaup, piup), thus blocking the pallet that has arrived, and queuing arriving pallets. Furthermore, before setting the pallet positioner in the up position (poup), a time delay of two seconds (wai2) is introduced allowing the pallet to travel to the gage stop. The recognition and transfer of the workpiece may now take place: the pallet will not move until a

57

exi 1

Fig. I,9. The routing specifications.

pallet advance (adpa) is requested. Then, the gage stops and the pallet positioner are set in the down position (gado, podo). Before setting the restraint pin in the down position (pido), to allow a new pallet arrival, a time delay of four seconds (wai4) is introduced letting the pallet present in the positioning system to travel downstream of the gage stop. The events (wai2) and (wai4) are assumed internal to the supervisory control system. 4) Workpiece recognition may only be carried out upon arrival of a pallet at the conveyor belt presentation system. The graph shown in Fig. 20 enforces the above specification. The recognition procedure must be initialized (inre) and either a workpiece of type 1 or of type 2 must be recognized before the robot is allowed to transfer it. Upon transfer of the workpiece, the pallet may be advanced (adpa), allowing the arrival of a new workpiece. C. Supervisor and Control Law Synthesis The cell, constituted by the two machines and the pallet positioning system, is represented by a graph with 256 states and 28 16 transitions. The specifications grouped together are represented by a graph with 540 states and 1977 transitions. With centralized supervision [5], [49], the corresponding supervisor embodying the controlled behavior of the plant within the specifications is a graph with 540 states and 1329 transitions. With modular supervision (under partial observations) [6], [50], it is possible to supervise the manufacturing cell, and obtain the same controlled behavior obtained with centralized supervision, with six supervisors functioning concurrently, namely the specification graphs S 4 4 9 shown in Figs. 19-21.

12

IEEE TRANSACTIONS ON ROBOTICS AND AUTOMATION, VOL. 12, NO. 1, FEBRUARY 1996

Mill

pido

I
~

stw2

wail

wai2

vision system

3 . 1

Ling sysrem

Fig. 22. The ceU and PLCs. TABLE V

PLCs AND CORRESPONDING SUPERVISORS


PLC0 PLCl

I S4, S5, S6, S7, S9 I S8

Fig. 20. The positioning system specification.

system, and two simulated numerically controlled machines: a mill and a drill. The work illustrated the viability of automata based approaches, in particular modular supervision under partial observation. Computational tools used were used to synthesize inre the supesvisors and corresponding control laws, and/or to verify and guarantee the supervisors nonconflictitlg nature. rec2 recl adpa The plant controlled behavior obtained was observed never to violate the specifications considered, and was nonblocking as guaranteed by the theory: supervisors and control laws obtained are correct by construction, and ensures that: the resulting controlled behaviors do not to violate the specifications considered; and Fig. 21. The pallet-advance specification. Ue supervisors and control laws obtained are maximally L permissive within the behavioral specifications considered. This approach requires the coding in ladder logic of 29 states (3 states each for specifications S4-S7, 12 states for Off-the-shelf industrial programmable controllers from specification S8, and 5 states for specification S9) to track the Allen-Bradley were used in the experimental set-up illustrating supervisors states, compared to 540 states when considering that the approach adopted can be implemented on industrial centralized supervision. control systems and does not require investment in specialized equipment. The work carried out comprised the following steps: D. Supervisor and Control Law Implementation the integration of the industrial control system within the The supervisors S 4 S 7 and S9, responsible for the behavior manufacturing cell; of the robot and the vision system and also the numeriproblem scenario development; cally controlled machines, were coded on one programmable cell modeling: controller (PLCO) and supervisor S8, responsible for the specification modeling; behavior of the pallet positioning system, was programmed on supervisor and control law synthesis; a second programmable controller (PLC1) (cf., Fig. 22). The robot and vision system programming; and programmable controllers and corresponding supervisors im* PLC programming. plement the behavioral specifications concurrently and without The work carried out took approximately 4 man-months to conflict. people not familiar with PLCs. The results of this work are currently being applied to the VI. DISCUSSION CONCLUSIONS AND supervisory control of an automated assembly cell consisting A new approach to the real-time supervisory control of of 3 robotic assembly stations linked by five conveyor belts. automated manufacturing systems was implemented and tested Current results show that the supervisory control system on an experimental manufacturing cell composed of a robot development approach presented is applicable to such relaand vision system, a conveyor belt with pallet positioning tively complex systems (over 400 inputs and outputs, and
s9

1,

J:

BRANDIN: REALTIME SUPERVISORY CONTROL OF AN EXPERIMENTAL,MANUFACTURING CELL

13

approximately 80007 states) using off-the-shelf industrial programmable controllers.

GLOSSARY
plant: system to be controlled, e.g., a manufacturing cell. supervisory control system: physical system that performs the following tasks: supervisory control, communication and housekeeping. supervisory control: consists o f i) the monitoring of the plant behavior via sensory feedback; ii) control evaluation (determination) in accordance with a supervisor and supervisory control law which map the plant behavior to corresponding controls; and iii) control enforcement. communication: allows sensory feedback and control enforcement to be performed. housekeeping: is the set of tasks related to supervisory control and communication which are necessary to their implementation, e.g., data-base management. supervisory control development: consists of the formulation and synthesis of supervisors and corresponding control laws specifying how the supervisory control system is to react to the manufacturing system behavior in order to satisfy given behavioral specijications. supervisor: consists of an automaton embodying the plant controlled behavior, in whole or in part. automaton: mathematical and modeling tool for discrete event systems. discrete event systems: dynamic systems that evolve in accordance with the abrupt occurrence of events. supervisory control law: maps the plant controlled behavior to corresponding controls. control: list of events. behavioral specijications: are classified into: logic-based specifications such as safety, error recovery, the sequencing of operations, part routing, and production volume requirements; temporal production specifications: e.g., production times; and utility optimality specifications: e.g., costs.

ACKNOWLEDGMENT
The author would like to thank Allen-Bradley (Canada) and Rockwell International (Canada) for their support of the Ontario/Rh8ne-Alpes Collaboration Project on The Supervisory Control of Automated Manufacturing Systems, and in particular D. Pattengale, Integrated Solutions Consultant, Allen-Bradley (Canada). The author would also like to thank D. Anderson, Executive Vice-president University Relations, Manufacturing Research Corporation of Ontario (MRCO), for his help in establishing the first contacts with Rockwell International and Allen-Bradley, and finally but not least, Technology Ontario and Dr. M. Walmsley, Director, Premiers Council Technology Fund.
REFERENCES [l] S. Balemi, Discrete-eventsystems control of a rapid thermal multiprocessor, in INCOM 92, Toronto, Canada, May 1992, pp. 53-58.

H. S. Baird, E. G. Wells, and D. E. Britton, Coordination software for robotics workcells, in 1984 IEEE Int. Con$ Robotics, Atlanta, GA, May 1984, pp. 354-360. S . Bennett, Real-Time Computer Control: An Introduction. Englewood Cliffs, NJ: Prentice-Hall, 1988. B. A. Brandin, The real-time supervisory control of automated manufacturing systems, Ph.D. dissertation, Dep. Elect. Comput. Eng., Univ. Toronto, Canada, 1993. Also Systems control group report 9302, Dep. Elect. Comput. Eng., Univ. Toronto, Canada, Feb. 1993. B. A. Brandin and W. M. Wonham, The supervisory control of timed discrete-event systems, IEEE Trans. Automat. Contr., vol. 39, no. 2, pp. 329-342, Feb. 1994. , Modular supervisory control of timed discrete-event systems, in I993 IEEE Control and Decision Con$, San Antonio, TX, Dec. 1993, pp. 2230-2235. B. A. Brandin, W. M. Wonham, and B. Benhabib, Manufacturing cell supervisory control-a modular timed discrete-event system approach, in 1993 IEEE Int. Con$ Robotics and Automation, Atlanta, GA, May 1993, pp. 846-851. B. A. Brandin and W. M. Wonham, The supervisory control of timed discrete-event systems, in 1992 IEEE Control and Decision Con$, Tucson, AZ, Dec. 1992, pp. 3357-3362. B. A. Brandin, W. M. Wonham, and B. Benhabib, Modular supervisory control of timed discrete-event systems, in 1992 Allerton Communication and Control Con$, Urbana-Champain, IL, Sept. 1992, pp. 624-632. , Manufacturing cell supervisory control-A timed discreteevent system approach, in 1992 IEEE Int. Con$ Robotics and Automation, Nice, France, May 1992, pp. 531-536. -, Discrete event supervisory control applied to the management of manufacturing workcells, in 7th Int. Con$ Computer Aided Manufacturing Engineering, 1991, pp. 527-536. B. A. Brandin, T. Chen, C. Derventzis, and G. Pang, The control and supervision of groups of lifts using the blackboard architecture approach, Trans. Inst. M.C., vol. 12, no. 5, pp. 271-279, 1990. R. Cassinis, Hierarchical control of integrated manufacturing systems, in Proc. 13th Int. Symp. Industrial Robots and Robotics, Chicago, IL, Apr. 1983, pp. 12-19. J. A. Cecil, K. Srihari, and C. R. Emerson, A review of Petri net applications in manufacturing, Int. J. Advanced Manufacturing Technol., vol. 7, no. 7, pp. 168-177, 1992. H. Chochon and R. Alami, NNS, a knowledge-based on-line system for an assembly workcell, in I986 IEEE Int. Con$ Robotics and Automation, San Francisco, CA, Apr. 1986, pp. 603409. E. Coste-Manibre, B. Espiau, and D. Simon, Reactive objects in a task level open controller,in 1992 IEEE Int. Con$ Robotics and Automation, Nice, France, May 1992, pp. 2732-2737. E. Coste-Manikre, B. Espiau, and E. Rutten, A task level robot programming language and its reactive execution, in 1992 IEEE Int. Con$ Robotics and Automation, Nice, France, May 1992, pp. 2751-2756. R. David and H. Alla, Autonomous and timed continuous Petri nets, presented at the 1lth Int. Conf. Application and Theory of Petri Nets, Paris, France, June 1990. R. David, Modeling of dynamic systems by Petri nets, in ECC91 European Control Con$, Grenoble, July 2-5, 1991, pp. 136-147. P. Freedman, Time Petri nets and robotics, IEEE Trans. Robot. Automat., vol. 7, no. 4, pp. 417433, Aug. 1991. B. Frommherz, Robot action planning, Comput. Mech. Eng., vol. 6 , no. 3, pp. 30-36, Nov./Dec. 1987. C. A. Gauthier and M. Krieger, Developmentof a flexible assembly cell test-bed, in NRC Symp. Manufacturing Applicat. Languages, Winnipeg, Canada, June 1988, pp. 61-70. J. Gaylord, Factory Information Systems: Design and Implementation for CIM Management and Control. New York Markcel Dekker, 1987. S . Y. Harmon, Steps toward autonomous manufacturing, in I987 IEEE Int. Con$ Robotics and Automation, Raleigh, NC, Mar. 1987, pp. 1896-1902. B. Hayes-Roth, A blackboard architecture for control, AI, vol. 26, no. 3, pp. 251-321, 1985. W. B. Heginbotham, Ed., Programmable Assembly. Bedford, U.K.: Springer-Verlag, 1984. G. Hoffmann, C. Schaper, and G. Franklin, Discrete-event control for a rapid thermal multiprocessor, in Proc. American Control Con$ 1991, Boston, MA, June 1991, pp. 2936-2938. E. Holloway and B. H. Krogh, Synthesis of feedback control logic for a class of controlled Petri nets, IEEE Trans. Automat. Contr., vol. 35, no. 5, pp. 514-523, May 1990.

14

EEE TRANS#ACTIONSON ROBOTICS AND AUTOMATION, VOL. 12, NO. 1, FEBRUARY 1996

[29] A. Jones and V. C. McLean, A proposed hierarchical control model for automated manufacturing systems, J. Manufacturing Syst., vol. 5, no. 1, pp. 15-25, 1986. [30] V. C. Jones, MAP/TOP Networking: A Foundation for ComputerIntegrated Manufacturing. New York McGraw-Hill, 1988. [31] J. S. Jun and C. R. McLean, Control of an automated machining workstation, IEEE Gntr. Syst. Mag., vol. 8, no. 1, pp. 26-30, Feb. 1988. [32] R. B. Kelley, Vertical integration for robot assembly cells, in IEEE Int. Con& Robotics and Automation, San Francisco, CA, Apr. 1986, pp. 585-590. [33] D. T. Koenig, Computer Integrated Manufacturing Theory and Practice. New York Hemisphere, 1990. [34] P. Kozak, Supervisory control of discrete-event processes: A real time extension, Inst. Inform. Theory Automat., Czechoslovak Acad. Sci., Prague, Tech. Rep., p. 26, Mar. 1991. [35] A. Kusiak and A. Villa, Architectures of expert systems for scheduling flexible manufacturing systems, in I987 IEEE Int. Con$ Robotics and Automation, Raleigh, NC, Mar. 1987, pp. 113-117. [36] A. Kusiak, Ed., Flexible Manufacturing Systems: Methods and Studies. Amsterdam: Elsevier, 1986. [37] J. E. Lenz, Flexible Manufacturing: Benefits for the Low Inventory Factory. New York Marcel Dekker, 1989. [38] F. Lin and W. M. Wonham, Decentralized supervisory control of discrete-event systems, Inform. Sei., vol. 44, no. 3, pp. 199-224, 1988. 1391 0. Z. Maimon and S. B. Gershwin, Dynamic scheduling and routing for flexible manufacturing systems that have unreliable machines, in IEEE Int. Con& Robotics and Automation, Raleigh, NC, Mar. 1987, pp. 281-288. f [40] J. Martin, Design o Real Time Computer Systems. Englewood CLiffs, NJ: Prentice-Hall, 1976. [41] G. Michel, Programmable Logic Controllers and Architecture and Application. New York Wiley, 1990. [42] M. C. Moed and R. B. Kelley, An expert supervisor for a robotic workcell, Intell. Robots Wsion Syst., vol. SPIE-848, pp. 502-506, NOV. 1987. , An on-line supervisor for robotic tasks, i IEEE Computer n [43] Integrated Manufacturing Con$, Troy, NY,May 1988, pp. 27&281. [44] P. W. Moir, ESJicient Beyond Imagining: CIM and its Applications for Todays Industry. New York Halsted, 1989. [45] T. Murata, Petri nets: Properties, analysis, and applications, ZEEE Proc., vol. 77, no. 4, Apr. 1989. [46] P. OGrady and K. Lee, An intelligent cell control system for automated manufacturing, Int. J. Production Res., vol. 26, no. 5, pp. 845-861, 1988. [47] F. D. Petruzella, Programmable Logic Controllers. New York McGraw-Hill, 1989. 1481 J. R. Pimentel, Communication Networks for Manufacturing. Englewood Cliffs, NJ: Prentice-Hall, 1990. [49] B. Prasad, Ed., Proc. 3rd Int. Con$ CAD/CAM Robotics and Factories o the Future, South Field, MI, 1988. f [50] P. J. Ramadge and W. M. Wonham, Supervisory control of a class of discrete-event systems, SIAM,J. Contr. Optimization, vol. 25, no. 1, pp. 206-230, Jan. 1987.

[Sl] -, The control of discrete-event systems, IEEE Proc., vol. 77, no. 1, pp. 81-98, Jan. 1989. [52] U. Rembold, C. Blume, and R. Dillmam, Computer and Integrated Manufacturing Technology and Systems. New York Marcel Dekker, 1985. [53] A. C. Sanderson, Parts entropy methods for robotic assembly system design, in I984 IEEE Int. Con$ Robotics, Atlanta, GA, May 1984, pp. m o 8 . 1541 K. P. Valavanis and P. H. Yuan, Hardware and software for intelligent robotic systems, J. Intell. Robot. Syst., Theory Applicat., vol. 1, no. 4, pp. 343-373, 1989. [55] R. Vijaykumar and M. A. Arbib, Problem decomposition for assembly planning, in IEEE Int. Con& Robotics and Automation, Raleigh, NC, M a . 1987, pp. 1361-1366. 1561 I. G. Warnock, Programmable Controllers-Operation and Application. Englewood Cliffs, N J Prentice-Hall, 1988. [57] A. Weatherall, Computer Integrated Manufacturing: From Fundamenfals to Implementation. London and Boston: Butterworths, 1988. [58] C. C. White, E,Final report, presented at the NSF Workshop on the t Decision and Control of DEDS, Airlie House, Airlie, VA, June 1988. [59] W. M. Wonham and P. J. Ramadge, Modular supervisory control of discrete event systems, Maths. Contr., Signals Syst., vol. 1, no. 1, pp. 13-30, 1988.

Bertil A. Brandin (M95) received the Bachelors degree in mechanical engineering from the University of New South Wales, Australia, in 1984. He received the Master of Applied Science and Doctorate degrees in electrical engineering from the University of Toronto. Canada, in 1989 and 1993, respectively, From 1993 to 1995, he was Project Leader in a collaboration project on the supervisory control of automated manufacturing systems between the Province of Ontario. Canada. and R&ion RhBneAlps, France. In 1994, he was an Invited Scientist at the Rockwell Science Center, Thousand Oaks, CA. Prior to his Masters program, he worked for three years at the Swiss Federal Institute of Technology, Lausanne, Switzerland. His research interests include the control of discrete-event systems from both theoretical and implementation perspectives, artificial intelligence and howledge engineering techniques, and their application in systems control. Automated manufacturing systems have been the focus of his implementation efforts.

You might also like