An Implementation of the Matrix-Based Supervisory Controller

download An Implementation of the Matrix-Based Supervisory Controller

of 8

Transcript of An Implementation of the Matrix-Based Supervisory Controller

  • 8/2/2019 An Implementation of the Matrix-Based Supervisory Controller

    1/8

    IEEE TRANSACTIONS ON CONTROL SYSTEMS TECHNOLOGY, VOL. 10, NO. 5, SEPTEMBER 2002 709

    An Implementation of the Matrix-Based Supervisory Controllerof Flexible Manufacturing Systems

    Stjepan Bogdan, Frank L. Lewis, Zdenko Kovacic, Ayla Grel, and Mario Stajdohar

    AbstractThis paper deals with an implementation of a newmatrix-based supervisory controller of flexible manufacturingsystem (FMS). A design method is applied to the laboratory setupof a finite-buffer multiple reentrant flowline FMS which containsone 5-degree of freedom (DOF) robot, few transporters, pistons,and other elements (sensors, programmable logic controller, andpersonal computers). Control of the FMS is based on a matrixmodel approach which significantly reduces a computationaleffort and simplifies conversion of dispatching rules to the soft-ware program. The results obtained during experiments haveconfirmed effectiveness of the matrix-based FMS controller.

    Index TermsDeadlock avoidance, discrete-event systems, flex-ible manufacturing systems (FMSs), supervisory controller.

    I. INTRODUCTION

    ANY MANUFACTURING process can be treated as agroup of jobs performed by someone or something inorder to get a product finished in a specific time. From the

    control point of view, full automation requires controllability

    and observability of all machine operations. Controllability is

    provided by direct computer control of machine actuators at

    the local level and by indirect computer control at the global

    (shop or factory) level. Observability is ensured by processing

    of data acquired from the suitably mounted sensors.

    A swift change of production technology is an important

    feature of flexible manufacturing systems (FMSs) which is

    crucial in providing a quick output of medium series productswhich may undergo minor to major variations of shape, size,

    and structure (material). Different scheduling rules can be

    used to steer a manufacturing process depending whether it is

    treated as a static or dynamic problem [1]. Failure to suitably

    assign, or dispatch, resources can lead to system deadlock

    [10]. When stability of finite-buffer automated manufacturing

    systems is considered, then deadlock is found to be far more

    critical issue than bounded-buffer stability [4].

    Various concepts in Petri nets (PNs) [11] are extremely useful

    for flexible manufacturing systems analysis and a great deal of

    research has been done from the PN point of view [12][15],

    [17], [18]. Though the PN framework offers rigorous ground

    Manuscript received August 9, 2000; revised July 12, 2001. Manuscript re-ceived in final form January 7, 2002. Recommended by Associate Editor M.Lemmon.

    S. Bogdan and Z. Kovacic are with the Faculty of Electrical Engineering andComputing, University of Zagreb, 10000 Zagreb, Croatia.

    F. L. Lewis is with the Automation and Robotics Research Institute, Univer-sity of Texas at Arlington, Fort Worth, TX 76118-7115 USA.

    A. Grel is with the Department of Electrical and Electronics Engineering,Eastern Mediterranean University, Famagusta, Turkey.

    M. Stajdohar is with HEP, D.P. Elektra, 44000 Sisak, Croatia.Publisher Item Identifier 10.1109/TCST.2002.801876.

    for theoretical analysis, it is very inconvenient for actual com-putational analysis of the practical FMS, introducing problems

    of computational complexity (it is known that many problems

    in scheduling, dispatching, and deadlock analysis are NP-hard

    [16]). Matrix techniques that exploit the system structure can be

    used to alleviate this.

    In this paper, we are concerned with a practical implemen-

    tation of a new matrix-based supervisory controller in order

    to show its potential as a tool for very simple realization of

    dispatching rules that are often used in the FMS. The phys-

    ical model of an FMS has been built for testing of dispatching

    algorithms. Namely, physical models are widely adopted as a

    method for studying of FMS performance [3]. The FMS model

    comprises few machines (transporters and pistons) and onearticulated robot arm. Various sensors are mounted in order to

    get feedback data from the system. As the only shared resource

    in the proposed FMS, the robot arm represents a potentialsource

    of deadlock. In this sense, experiments have been organized to

    illustrate those situations which may lead to system deadlock.

    Prevention of deadlock may be accomplished by adequate FMS

    control based on the usage offast logical matrix calculations in

    a form of ladder diagram. In order to show efficiency of the pro-

    posed controller two dispatching policies have been tested; last-

    buffer-first-serve (LBFS) and improved first-buffer-first-serve

    (FBFS) algorithm denoted as a stable FBFS policy [2].

    This paper is organized as follows. In Section II, we give a

    brief description of a matrix-based FMS controller according to

    the concept described in [5] and [6]. Since the experiments ad-

    dress the problem of deadlock free dispatching, a special em-

    phasis has been put on determination of critical subsystems,

    siphons, and traps [7], [8]. In Section III, we describe a structure

    of an FMS laboratory setup. In Section IV, experimental results

    obtained after applying dispatching algorithms prove theoretical

    hypotheses and confirm effectiveness of the matrix-based FMS

    controller. Final comments and discussion about future research

    directives are given in Section V.

    II. MATRIX MODEL OF AN FMS

    The matrix model, which is described in more detail in [5]and [6], represents a set of logical rules that put in relation re-

    sources, operations, control signals, and parts in an FMS. In

    [8] it is shown that a matrix model is an efficient framework

    for analysis of an FMS that offers a deep insight in the struc-

    ture of the system and provides computational algorithms for

    determination of control (i.e., dispatching) signals.

    We make the following assumptions. 1) No preemption. A

    resource cannot be removed from a job until it is complete; 2)

    Mutual exclusion. A single resource can be used for only one job

    at a time; 3) Hold while waiting. A process holds the resources

    1063-6536/02$17.00 2002 IEEE

    http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-
  • 8/2/2019 An Implementation of the Matrix-Based Supervisory Controller

    2/8

  • 8/2/2019 An Implementation of the Matrix-Based Supervisory Controller

    3/8

    IEEE TRANSACTIONS ON CONTROL SYSTEMS TECHNOLOGY, VOL. 10, NO. 5, SEPTEMBER 2002 711

    Fig. 2. Experimental FMS setup.

    III. FMS LABORATORY SETUP

    In order to investigate performance of the matrix-based FMS

    controller in a real environment a laboratory model of a flexible

    manufacturing system has been built (Fig. 2). The laboratory

    model contains a personal computer (PC),a programmable logic

    controller (PLC), a robot driver, and machine shop that includes

    a set of sensors, machines, and a 5-degree of freedom (DOF)

    robot arm (Fig. 3).

    The PC serves as an interface between the PLC and the robot

    driver. It calculates joint velocities based on the difference be-

    tween the next and the current robot arm position. In order to

    reach the next position robot executes trajectories that are pre-

    determined andsaved to file. Which trajectory will be performed

    next depends on the code received from the PLC. Once received

    by the PC the code is processed and information about motor

    velocities is sent through the RS232 to the robot driver. Simul-

    taneously the robot driver transfers data from motor encoders so

    that the PC can calculate a current arm position.The PLC takes the highest control level in the FMS which

    means that it bonds all parts of the system in one logical unit.

    The main task of the PLC is to execute an FMS control al-

    gorithm. The PLC picks sensors status and robot status (sig-

    nals that form and ), sends onoff signals to the machines

    (vectors and ) and makes decisions which trajectory robot

    should terminate (components of dispatching vector ).

    The PLC connection diagram is shown in Fig. 4. A very

    simple 8-bit PLC is used in experiments. The matrix-based

    FMS dispatching algorithm, in form of a ladder diagram, is

    executed every 184 ms.

    The machine shop includes one 5-DOF articulated robot

    arm, three pneumatic double-acting cylinders which act astransporters, three pneumatic pistons for moving parts from

    and to transporters, and one buffer. A modular nature of the

    machine shop (all parts are movable and stand-alone) allows

    the user to arrange different problems to be solved.

    The structure of the machine shop used in experiments is

    shown in Fig. 5 with a dotted line representing a part path.

    As may be seen, the robot moves a part from an input place

    to the transporter 1 ( ), which carries it to the piston 1 ( ).

    The piston unloads the part from and moves it in front of

    the second piston ( ). puts the part into the buffer ( ).

    The robot lifts and carries it to transporter 2 ( ). The part ad-

    vances through the line by moving along the transporter .

    Fig. 3. Structure of the experimental FMS.

    Once reaching the piston 3 ( ) the part is moved to the trans-

    porter 3 ( ) which hauls it to the end of the line. Finally, the

    part is removed from the line by the robot and dropped into the

    output place.

    A. Matrix Model of the Laboratory FMS

    By using a system description (bill of materials, assembly

    tree, heuristic design experience of the shop-floor engineer) one

    can define the form of the matrices and vectors necessary for

    generation of the matrix model which will consequentially lead

    to set of rules.

    As the first step of matrix model development we should

    recognize and entitle all jobs (operations) in the FMS. In our

    example one can resolve eight operations which are stated in

    Table I. Even though from the mathematical point of view an

    order of jobs is irrelevant when matrix model is carried out, a

    causal ordering of operations has few merits. One is that in caseof causal ordering matrices and have a special, very con-

    venient form that is important in proving the results on the FMS

    structural properties [8].

    Having this in mind and knowing the structure of the system,

    we may write down a job vector and matrix :

    (6)

    Once having a job vector one should assign resources in the

    FMS to the jobs, those providing a resource requirement matrix

    . In the laboratory setup six resources are allocated in order

    to perform operations defined with (6). Table II shows resource

    assignment.

    From Table II, it may be seen that robot RA has three tasks

    and it is the only shared resource in the example. Also, one can

    find that operation T3P is conducted by two physical resources

    http://-/?-http://-/?-
  • 8/2/2019 An Implementation of the Matrix-Based Supervisory Controller

    4/8

    712 IEEE TRANSACTIONS ON CONTROL SYSTEMS TECHNOLOGY, VOL. 10, NO. 5, SEPTEMBER 2002

    Fig. 4. PLC connection diagram.

    Fig. 5. Machine shop of the FMS laboratory setup.

    that form one resource in the matrix model (T3A). Hence, the

    forms of a resource vector and resource requirements matrix

    are as follows:

    (7)

    One should notice that matrix has three 1s in the first

    column. This column corresponds with robot (resource RA,

    which is the first component of vector ) who has three jobs to

    perform.

    Causal ordering of jobs and resource assignment dictates the

    shape of matrices and

    (8)

    To complete the matrix model we have to define matrices

    and that describe part entering and leaving the line as well as

    dispatching matrix . Since in our example we have one part

    path, input vector and output vector become scalars (

    PI and PO) which leads to vector-shaped and

    (9)

    As it is said earlier problem arises when conditions for two

    or three jobs, performed by the robot, are met. In that case robot

    is facing a conflict and introduction of a control vector is

    necessary. Since matrix (7) has three 1s in the first column,

    has to have three components,

    and matrix has a form

    (10)

  • 8/2/2019 An Implementation of the Matrix-Based Supervisory Controller

    5/8

    IEEE TRANSACTIONS ON CONTROL SYSTEMS TECHNOLOGY, VOL. 10, NO. 5, SEPTEMBER 2002 713

    TABLE IOPERATIONS IN THE FMS EXAMPLE

    TABLE IIRESOURCE ASSIGNMENT

    The matrix model of the experimental FMS follows:

    (11)

    (12)

    From vectors and matrices determined above, it is possible to

    read FMS rules. For example, in order to start with operation

    T2P rule has to be true (12), which means that operation

    RP2 has to be done and resource T2A has to be idle (11). If we

    associate a sensor (or group of sensors) with each operation, the

    FMS controller can be written in a formof a PLC ladder diagramdirectly from the matrix model. The ladder diagram rung for the

    rule has a form shown in Fig. 6.

    It can be seen that completion of operation RP2 is assigned to

    sensor S6, which is connected with input I0.5 (input word 0, bit

    5). If the rule is satisfied, actuator connected with output O0.1

    (output word 0, bit 1) starts operation T2P.

    The matrix model could be easily understood by comparing

    with a Petri net graph (Fig. 7) of the FMS laboratory setup.

    It is clear that components of the logical state vector (rules)

    correspond with Petri net transitions.

    The matrix model can be used to simulate the system [6] or

    to solve logical equations online, i.e., to control a system by

    http://-/?-http://-/?-
  • 8/2/2019 An Implementation of the Matrix-Based Supervisory Controller

    6/8

    http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-http://-/?-
  • 8/2/2019 An Implementation of the Matrix-Based Supervisory Controller

    7/8

  • 8/2/2019 An Implementation of the Matrix-Based Supervisory Controller

    8/8

    716 IEEE TRANSACTIONS ON CONTROL SYSTEMS TECHNOLOGY, VOL. 10, NO. 5, SEPTEMBER 2002

    Fig. 8. BP operation status during the LBFS dispatching: 1the buffer is full,0the buffer is empty.

    Fig. 9. T1P operation status during the LBFS dispatching:1work-in-progress, 0idle.

    Fig. 10. BP operation statusduring thestable FBFS dispatching: 1the bufferis full, 0the buffer is empty.

    Fig. 11. T1P operation status during the stable FBFS dispatching:1work-in-progress, 0idle.

    multiple reentrant flowline FMS was built. The matrix-based

    FMS model was derived and thereafter used for the synthesis

    of the matrix-based FMS controller. Deadlock prevention was

    applied as a criterion for the controller design. The controller

    was validated through implementation of two dispatching

    policies, one was a well-known LBFS policy while the other

    was a MAXWIP policy called also a stable FBFS. The matrix

    techniques allowed effective and simple on-line control by

    applying a set of discrete-event control signals.

    Future work will be concerned with influence of operational

    times on the stability and throughput of the manufacturing

    system. Another issue will be an investigation of different FMS

    topologies with shared resources and bottleneck machinesvarying in place.

    REFERENCES

    [1] S. S. Panwalkar and W. Iskander, A survey of scheduling rules, Oper.Res., vol. 25, no. 1, pp. 4561, Jan.Feb. 1977.

    [2] S. Bogdan and F. L. Lewis, Matrix approach to deadlock avoidanceof dispatching in multi-class finite buffer reentrant flow lines, in Proc.12th IEEE Int.Symp. Intell. Contr., Istanbul, Turkey, 1997, pp. 397402.

    [3] K. H. Dietsch and E. M. Malstrom, Physical simulator analyzes per-formance of flexible manufacturing system, Ind. Eng., pp. 6675, June1985.

    [4] P. R. Kumar and S. P. Meyn, Stability of queueing networks and sched-uling policies, IEEE Trans. Automat. Contr., vol. 40, pp. 251260, Feb.1995.

    [5] A. Gurel,O. C. Pastravanu,and F. L. Lewis,A robustapproachin dead-lock-free and live FMS design, in Proc. IEEE Mediterranean Symp.

    New Directions Contr. Automat., June 1994, pp. 4047.[6] D. A. Tacconi and F. L. Lewis, A new matrix model for discrete event

    systems: Application to simulaition, IEEE Contr. Syst. Mag., vol. 17,pp. 6271, 1997.

    [7] A. Gurel, F. L. Lewis, S. Bogdan, and O. Pastravanu, Circular blockingin flexible manufacturing systems: A matrix-based analysis, in Proc.

    IEEE Conf. Contr. Applicat., Trieste, Italy, 1998, pp. 786791.[8] F. L. Lewis, A. Gurel, S. Bogdan, A. Doganalp, and O. Pastravanu,

    Analysis of deadlock and circular waits using a matrix model for dis-crete event manufacturing systems, Automatica, vol. 34, no. 9, 1998.

    [9] A. Gurel, S. Bogdan, F. L. Lewis, and B. Huff, Matrix approach todeadlock-free dispatching in multi-class finite buffer flowlines, IEEETrans. Automat. Contr., vol. 45, pp. 20862090, Nov. 2000.

    [10] H. M. Deitel, An Introduction to Operating Systems. Reading, MA:Addison-Wesley, 1984, ch. 6.

    [11] T. Murata, Petri nets: Properties, analysis and applications, Proc.IEEE, vol. 77, pp. 541580, Apr. 1989.[12] Z. A. Banaszak and B. H. Krogh, Deadlock avoidance in flexible man-

    ufacturing systems with concurrently competing process flows, IEEETrans. Robot. Automat., vol. 6, pp. 724734, Dec. 1990.

    [13] S. D. Ezpeleta, J. M. Colom, and J. Martinez, A Petri net based dead-lock preventionpolicy for flexible manufacturing systems,IEEE Trans.

    Robot. Automat., vol. 11, pp. 173184, Apr. 1995.[14] M. D. Jeng and F. DiCesare, A synthesis method for Petri net modeling

    of automated manufacturing systems with shared resources, in Proc.IEEE Conf. Decision Contr., Dec. 1992, p. 1184.

    [15] T. K. Kumaran, W. Chang, N. Cho, and R. A. Wysk, A structured ap-proach to deadlock detection, avoidance, and resolution in flexible man-ufacturing systems, Int. J. Prod. Res, vol. 32, no. 10, pp. 23612379,1994.

    [16] M. R. Garey and D. S. Johnson, Computers and Intractability: A Guideto the Theory of NP-Completeness. San Francisco, CA: Freeman,

    1979.[17] H. Cho, T. K. Kumaran, and R. A. Wysk, Graph-theoretic deadlock de-tection and resolution for flexible manufacturing systems, IEEE Trans.

    Robot. Automat., vol. 11, pp. 413421, 1995.[18] R. A. Wysk, N. S. Yang, andS. Joshi,Detection of deadlocksin flexible

    manufacturing cells,IEEETrans. Robot. Automat., vol. 7, pp.853859,Dec. 1991.

    [19] D. Labalo, A. Gurel, F. L. Lewis, and S. Bogdan, Modeling and in-formation structures for supervisory control of flexible manufacturingsystems, in Information Infrastructure Systems for Manufacturing II,J. J. Mills and F. Kimura, Eds. Boston, MA: Kluwer, 1999, ch. 20, pp.287301.