Copyright @ IFAC Integrated Systems Engineering, Baden-Baden, Gennany, 1994
UTILIZATION OF A HIERARCHICAL CONTROL SYSTEM IN A ROBOT-BASED FLEXIBLE ASSEMBLY CELL H.-J. BUXBAUM and W. MAIWALD University of Dortmund, Institut fUr Roboterforschung, 44221 Donmund, Germany
Abstract. Robot-based flexible assembly work cells generally consist of several manufacturing devices which have to co-operate on the assemblage of different products. In this paper first a typical assembly work cell consisting of industrial robot an a conveyor system is introduced. Basing on a concept for dissection of manufacturing systems into a structure of autonomous and decoupled work cells the requirements on a work cell controller are described. A work cell control system is presented which can be adapted to different applications universally. Key Words. Aexible manufacturing, work cell controller, automation. CAM. industrial robots. hierarchical systems
1. INTRODUCTION
are released to the work cell controller by the cell operator or automatically by a superior control system, e. g . a production control system.
The major applications of robots are production plants for large batches with very small product variations (VDMA, 1992). The actual trend to small batches. large product variance and farreaching considerations to individual customer requests shows the necessity to develop new factory automation strategies with the aim to enlarge the production flexibility (Milberg, 1985). A migration from normal machine control technology to a comprehensive factory wide planning, co-ordination and control structure is indicated (Sanger, 1990). The robot itself is a suitable device for the purpose of flexible automation. if only because of its kinematic structure (Freund and Hoyer, 1987). New robot control technologies, which improve the programming and communication facilities of robot systems, additionally increase their availability for flexible manufacturing systems (Buxbaum and Hidde, 1990).
By the structuring of an entire assembly system in different assembly work cells, decoupled and autonomous subsystems emerge with standardized material flow and control interfaces. Single work cells are capable to operate autonomously, even in case of a breakdown of systems beyond the work cell boundaries. This redundancy allows to reconfigure, to replace or to maintain single work cells during operation of the system.
2. THE FLEXIBLE ASSEMBLY WORK CELL A flexible assembly work cell shall be capable to assemble different products in different batch sizes. It is to be designed that there are no re-equipment tasks necessary while switching to another product. It has to work efficient with batch sizes down to one. At the Institute of Robotics Research a flexible assembly work cell was built that fulfils these requirements. Fig. I shows an overview on this work cell in a configuration which was presented on the 1994 Hannover Fair. The work cell consists of an industrial robot and conveyor belt system which provides two work stations to the robot as well as product entrance and exit.
A work cell is the smallest co-operating machinery unit in a flexible manufacturing system which carries out entire manufacturing operations autonomously. A typical flexible assembly work cell particularly consists of different automation components. Manufacturing components (industrial robots) and material flow components (conveyors) are co-ordinated by a work cell control system. The work cell is driven by work orders. Work orders 399
Fig. 1
Flexible assembly work cell flow interconnection of the work stations, which is independent from any cyclic times. This is necessary for the assemblage of small batch sizes down 'to one.
Different products could be assembled in batch size one within this flexible assembly work cell. The parts for assemblage of the products are placed on special carriers. Two of the products are assigned one carrier each, which contain all parts needed for assemblage. A further product is a box containing a set of spare light bulbs used for cars. Light bulbs each type placed on another carrier and an empty container enter the work cell. The robot picks a bulb from the carrier and puts it into a test socket, where a functional test is carried out. Depending in the test result, the robot places the bulb into its buffer or into the waste container. This is repeated until the buffer is full or the carrier is empty. Later on, when the box is at the robot work station, it is filled with lighfbulbs from the buffer.
Further it has a connection for manual material import and export. An AGV docking station for automatic material flow to and from the work cell will be provided in future.
2.2. Robot System
Obviously, an industrial robot fulfils the requirements of flexibility due to the kinematic structure. To adapt the robot to different manipulation processes it is fitted with an appropriate gripper. After the work cell was designed to operate with low batch sizes down to one, this is a requirement for the robot, too. Therefore the robot is equipped with a quick tool change adapter to select the desired tool or gripper from a tool rack, autonomously.
2.1. Material Flow System
The material flow system provides interfaces to the manufacturing devices of the work cell, e. g. the robot work stations, as well as to the factory wide material flow system to feed the work cell and carry away the products.
To prevent the robot as well as the products from undue forces and torques during jointing processes, a force torque sensor is applied to the robot. The sensor values are fed to different algorithms for force control and emergency stop functions. Some
The conveyor belt system as part of the work cell is capable to provide space to buffer carriers in front of each work station. That will provide a material
400
of these algorithms can be used for an automatic adjustment simulation model and real world in the case of offline programming of the robot.
control interface
control
In some processes the parts which are necessary for the complete assemblage are placed on one carrier. The product is assembled by the robot when the carrier comes to the work station. After assemblage the finished product is placed on the carrier for to be carried away from the work station. For this processes there are no special requirements to the robot. In other processes different material comes on more than one carrier. In this case there has to be applied a special buffer located in the robot's working space. Then feeding the different material to the robot could be performed independently. The robot controller has to manage the contents of the buffer.
interface
interface work cell material flow aystem manipulation interface
Fig. 2
to superior layer
Control structure on work cell layer
3.2. Generic model/or production systems A work cell is integrated in a superior control and material flow system. Fig. 3 shows the relation of work cells in a production system. It is done by connecting the different work cell controllers to a common superior control system and by a common material flow system. This results in a vertical information flow between work cell controllers and the superior control system and in a horizontal material flow between the work cells.
3. HIERARCHICAL CONfROL STRUCI1JRE
3.1. Work Cell Control Structure As described above a flexible assembly work cell consists of several automation components of different types. Each could be operated independent from the others and it features a control interface to propose manipUlation services to a client. The client-server principle is the basis for a hierarchical control structure. For the highest grade of flexibility an additional controller superior to the manufacturing devices is necessary to co-ordinate the manufacturing devices. This controller, the flexible work cell controller, manages the manufacturing process by co-ordination of the subordinated devices exclusively. Fig. 2 shows the control structure within a flexible assembly work cell consisting of manufacturing devices as robots and a material flow system.
The above model, where a controller, subordinated manufacturing systems and material flow components form a unit is appropriate to be applied as generic model to complete production systems. The level of abstraction represents the control layers which are well known from pyramid models introduced by Albus et. at. (1981), e. g. company layer, factory layer, shop layer as categorized by Pritschow (1990). The advance is that the subordinated manufacturing systems are described as autonomous systems with standardized manipulation and control interfaces.
The controllers of the manufacturing devices are connected to the superior flexible work cell controller by device specific vertical communication paths. There is no direct information flow between the device controllers. The control interface to the superior layer is related to the flexible work cell controller. It could be as well an operator console as a communication link to the factory controller.
to superior layer
manipulation
After the work cell received work orders and production material, the flexible work cell controller starts production, direct the material by transportation orders to the desired manufacturing devices and starts the manufacturing tasks. When the product is finished, this is reponed to the superior control system.
interface
factory transportation aystem manipulation interface
Fig. 3
401
to superior layer
Control structure on factory layer
4. THE FLEXIBLE WORK CELL CONTROLLER A flexible work cell controller must provide universal applicability, meaning that it has to be adaptable to different work cell configurations, including components of different manufacturers with different communication interfaces. In case of a subordinated component is inoperable a quick reconfiguration and operation with the remaining operable components must be possible and to be carried out easily.
•
program management services: Pro~ A vail_Request and Pro~A vail_Response,
•
program execution services: Execute_ Request and Execute_Ready _ Response.
4.2. Process Control
LUCAS regards each batch as a number of batches of size one. Therefore the controlling and programming of process sequences is independent from batch sizes. The flexible work cell is able to run a number of processes in parallel which is only limited by the system resources of the PC.
To fulfil these requirements the flexible work cell controller LUCAS was developed and described by Freund and Buxbaum (1993). LUCAS is based on a personal computer running MS-Windows. This combines the easy way of operating an MSWindows application with the large variety of interface boards for PCs. Fig. 4 shows the internal structure of the flexible work cell controller.
For programming of individual manufacturing processes for different products a comfortable programming interface is supplied. The process sequence program describes the way of a single product through the work cell. The process sequence for a single product is easy to describe, even in complex work cells. The process sequence description for a single product, which is freely programmable by the user, is called process plan in the following. For each single product variant an own process plan has to be programmed, which describes the manufacturing process for a single product of this variant. Fig. 5 shows an example for a process plan. This is the process plan for filling the box with light bulbs.
data acquisition
Fig. 4
initialization services: InicRequest and Init_Response,
For each new communication protocol these few services easily can be implemented in a device driver. For standardized communication protocols, e. g. PROFIBUS and MAP 3.0, configurable device drivers are provided.
An assembly process shall be programmable free and independent from other processes. This results in a larger product variety, a higher flexibility and a quick response on possible product changes.
acquis. terminaV signals
•
row
work cell devices
con-
device name
process task rext row
number dition
Modular structure of the work cell controller LUCAS
4.1 Interfaces to subordinated components
10
0
20
0
30 30 30
0 1 20
TRANSPORT TO_ROBOT_2 ROBOT FILL_BOX TRANSPORT
Fig. 5
The interface between the process control module and a device driver bases on a client-server principle as explained by Pritschow and Kuhn (1991). The process control module, as the hierarchical higher communication system, takes the part of the client, while the device driver works as server (Freund et. al., 1993). The communication between client and server is carried out by the use of the following services.
TO_EXIT
TRANSPORT TO_ROBOT_2 OPERATOR HELP FAULT
20
30 0 20 20
Process plan example
A process plan consists of a couple of process plan rows. Each process plan row describes a single process step on the way of the product through the work cell. The entry in the first column is the number of the process step.
402
In the second column the condition is supplied to choose one of more process steps with the same process step number. This entry is useful for conditional branches in the process plan. The condition number is transferred from the preceding process step as the result value of this step. In the example shown in Fig. 6 depending of the result of robot task "FILL_BOX" the product is directed to the exit, to the robot, again, or the operator receives a message about a robot fault. The entry in the third column is the name of the device which has to perfonn this process step.
Fig. 6
The entry in the fourth column denotes the process task, which has to be perfonned by the device.
Extension of the work cell controller due to optimization
have to be expanded by online optimization functionality .
The last column supplies the number of the succeeding process step.
Fig. 6 show a suggestion to the expansion of the flexible work cell controller.
As shown in this example the processes are easy programmable and clear to the programmer who has to view only the single process and not all the processes which could be at the same time within the work cell.
The contents of white boxes are already implemented. Process plans come through the work order management into the process control which controls the subordinated devices through the device drivers. The duration of single tasks is recorded by the data acquisition module. The contents of the grey boxes shows the suggested extension. The main element is the process optimization module. It will receive infonnation from the process plans, the active manufacturing processes and the data acquisition module. It will interfere with the production processes via the co-ordination interface.
5. ONLINE OPTIMIZAnON OF ASSEMBLY PROCESSES Assembly processes usually are optimized offline. The manufacturing tasks are well programmed that each device will carry its task as fast as possible. In addition large batch processes are optimized by the design of the assembly work cell. That means that there is an assembly line in which the manufacturing devices located in the order of the manufacturing steps to be carried out on the product. Each manufacturing device is used exactly once during the complete assemblage.
The process optimization module's duty is to detect situations where alternative decisions can be made. A optimization criterion allows to evaluate each possible decision and choose the best one. There are three categories of optimization. The first one is optimization by discontinuing processes. E. g. there is a robot with more than one work stations. The lower priority processes are discontinued that robot will work on the process with the highest priority.
Flexible assembly work cells are not designed for only one product. Moreover it is possible that other products are at the same time within the work cell. Then the occurrence within the flexible assembly work cell is unpredictable to the offline programming with the result, that optimization of the work cell is limited to optimizing single cell components.
The second one is optimization by additional material flow tasks. E. g. there is a buffer at a robot work station, where a product of high priority is waiting behind a product of low priority, the low priority one can be removed from the pole position by additional transportation steps within a carret system.
Operating the flexible assembly work cells with different products at the same time will lead to the cognition that there are situations, in which the behaviour of the work cell could be improved. E. g. an urgent product is waiting in the queue while the robot is busy on a product with low priority.
The third one is opbmlZlng by pre-programmed alternatives. E. g. there is more than one manufacturing device capable to perfonn a desired manufacturing task. Then this alternatives can be
An improvement of such situations only can be managed by the flexible work cell controller which
403
Freund, E. and Buxbaum, H.-J.: Control of RobotBased Flexible Manufacturing Work Cells. Proc. Int. Conf. on Advanced Mechatronics, Tokyo, 1993. Freund, E. and Hoyer, H.: "Roboterforschung: Entwicklung zu neuen Anwendungsbereichen,". Proc. 4. Europliische Kongressmesse fur Technische Automation, Essen, 1987. Milberg, 1.: "Entwicklungstendenzen in der automatisierten Produktion", Technische Rundschau, vo!. 77, no. 37, 1985. Pritschow, G. and Kiihn, P. 1.: Kommunikationstechnik fur den integrierten Fabrikbetrieb. TOv Rheinland, KOln. 1991. Pritschow. G.: "Automation technology - On the Way to an Open System Architecture," Robotics & Computer Integrated Manufacturing, vo!. 7, no. 112, 1990. Siinger, E.: "CIM- Eine Strategie zur Erhaltung der Wettbewerbsfahigkeit", In: Markte im Wandel. Hamburg: Spiegel Verlag, 1990. VDMA: Das Portrait der Branche Montage, Handhabung, Industrieroboter (MHI). Frankfurt: Verband Deutscher Maschinen- und Anlagenbau e.V., 1992.
written into the process plans. The optimization then will choose the alternative which is best for all products. The structure shown in Fig. 6 allows to implement all categories of optimization.
6. CONCLUSION In nowadays assembly applications still an enlargement of production flexibility is possible. As an application example for flexible assembly a typical assembly work cell is presented in this paper. The reasons for the significant increase in flexibility are, next to the individual product handling by bar-code identification, mainly a notable reduction of re-equipment time on product changes. It is possible to use the work cell for the production of very small quantities up to single run units in mixed batches without a significant loss of time. The co-ordination tasks within the work cell are performed by a work cell controller. Full production flexibility by free programmability of the process sequence in conjunction with individual product identification on the one hand and universal cell configurability by utilization of standardized open interfaces on the other hand are characteristic for this system. Some optimization potential of flexible assembly work cells was detected. A concept for implementing optimazation functions into the flexible work cell controller LUCAS was introduced. Three optimization strategies were suggested. The presented concepts are independent of the process or the product and therefore convertible to other fields of application.
7. REFERENCES Albus, 1. B.; Barbera, A. 1. and Nagel, R. N.: "Theory and practice of hierarchical control," National Bureau of Standards, Washington DC,1981. Buxbaum, H.-I. and Hidde, A. R.: "Flexible Zellensteuerung - Bestandteil eines produktunabhiingigen Fabrikautomatisierungskonzepts," Werkstattstechnik vo!. 80, no. 3 (part 1), no. 5 (part 2), 1990. Freund, E.; Kerndlmaier, M. and Buxbaum, H.-I.: Steuerung von Roboterzellen -universell durch offene Kommunikation. In: VDI Berichte 1094: InteUigente Steuerung und Regelung von Robotern, 1993.
404