The present invention relates to a method of controlling an automated work station and to a corresponding work station. The invention applies in particular to an automated assembly line for motor vehicle bodywork.
An automated line for producing workpieces generally comprises a succession of work stations each having operational units connected to a controller. There exist very numerous types of operational unit, and for example: handling robots; welding robots; automatic machine tools; position-holding tools; conveyors; movable positioning means; and clamping members, . . . . In each work station, the operational units are arranged and controlled so as to act together on one or more workpieces by the operational units performing sequences of actions. The controller executes a control program that coordinates and synchronizes the operational units and triggers the actions to be performed by each operational unit. Actions may be performed in succession or simultaneously by a plurality of operational units, with the operational units then acting simultaneously and independently, until their respective actions have come to an end.
The control program is designed specially for each work station as a function of the requirements of the user of the work station. Program design includes a step of writing the program in a high level language or user language, and a step of compiling the program in which the high level language program is translated into machine language. Program preparation, and in particular program compilation are relatively lengthy and require significant computer resources. In this mode of operation, the program needs to be rewritten in full or in part for each new work station or for any modification to an existing work station. However, such a control program is relatively complex, particularly when the number of robots is large, so that coordinating and synchronizing movements, functions, and actions of the robots becomes difficult, such that rewriting all or part of the program requires highly skilled personnel. Taking action on the program is thus relatively lengthy and expensive, which is penalizing when it is necessary to comply with flexibility requirements.
It would therefore be advantageous to have means that enable the control of an automatic work station to be simplified.
To this end, the invention provides a method of controlling at least one work station comprising operational units comprising at least one robot such as a welding robot, the operational units being connected to a controller executing a control program, the control program including, for each operational unit, at least one sub-portion that defines a plurality of sequences of actions as a function of synchronization states, the control method comprising a configuration stage and an execution stage for the control program, the configuration stage comprising the steps of selecting the units to be operated, setting parameter values in the corresponding sub-portions by selecting the sequence of actions to be performed and the associated synchronization states, with the execution stage comprising the step of executing the control program as configured in this way.
Thus, the program is compiled once only and may be common to a plurality of work stations performing different jobs. A modification to the work performed in a particular station is then easily performed by reconfiguring the control program.
The invention also provides a work station comprising operational units connected to a controller controlled by a control program, the control program including, for each operational unit, at least one sub-portion of a plurality of action sequences, and means for setting parameters values for the sub-portions.
The work station enables the method of the invention to be implemented.
Other characteristics and advantages of the invention appear on reading the following description of a particular, non-limiting element of the invention.
Reference is made to the sole accompanying FIGURE that is a diagram showing a work station in accordance with the invention.
With reference to the FIGURE, the work station in accordance with the invention, given overall reference 1, comprises a plurality of operational units, namely a conveyor 2, a positioning tool 3, a handling robot 4, a welding robot 5, and a welding robot 6. In known manner, the operational units incorporate actuators and sensors that are connected (e.g. via a bus) to a controller 7 comprising a computer unit 8 that is connected to an input/output (I/O) device constituted in this embodiment by a touch-sensitive display screen 9 and that is arranged to execute a control program contained in a memory 10 of the computer unit 8. The above-mentioned robots are six-axis industrial robots providing maximum capabilities in terms of intervention and flexibility. The six-axis handling robot 4 can thus present workpieces to the welding robots in optimized positions. The operational units and the controller are themselves known and are therefore not described in detail.
The operational units are arranged to perform actions in sequence.
The conveyor 2 and the handling robot 4 perform actions in three sequences A, B, and C.
In sequence A, the conveyor 2 needs to wait for the workpiece in an entry position to the work station in order to take it to an intermediate position close to the positioning tool 3. The handling robot 4 needs to take the workpiece from the conveyor in the intermediate position and place it in the positioning tool 3, and then after it has been welded by the robots 5 and 6, it needs to withdraw the workpiece from the positioning tool 3 and put it back on the conveyor 2. The conveyor 2 must wait for the workpiece in the intermediate position prior to taking it to an exit position from the work station.
In sequence B, the handling robot 4 needs to take hold of a workpiece in a zone 16 external to the work station in order to bring it to the positioning tool 3, and then after it has been welded, it needs to place the workpiece on the conveyor 2. The conveyor 2 must wait for the workpiece in the intermediate position in order it to an exit position from the work station 1.
In sequence C, the manipulating robot 4 needs to take hold of the workpiece on the conveyor 2 in order to place it on the positioning tool 3, and after it has been welded, it needs to take hold of the workpiece on the positioning tool 3 in order to place it in the zone 16 external to the work station 1.
In these sequences, the positioning tool 3 grips the workpiece when it detects it, and releases the workpiece when welding has been completed.
In each of these sequences, the welding robots 5 and 6 need to perform actions in three sequences D, E, and F, namely:
It should be observed that when the actions of a plurality of operational units need to be performed independently and in parallel, the sequencing with the following actions is performed once all of the preceding actions have been finished.
The action sequences of each operational unit constitute respective sub-portions of the control program. The actions are synchronized relative to one another as a function of the state that needs to be reached by at least one operational unit in order for a subsequent action of an interacting operational unit to begin (this state is referred to as a synchronization state).
To adapt the work station 1 to the work that is to be performed, the control method includes a stage of configuring the control program. Program configuration is performed after the program has been compiled such that compilation is performed once only, and the program is executed as soon as configuration has been completed, without any subsequent compilation. The configuration stage comprises selecting the operational units that are to be used, selecting the sequences of actions to be performed by each operational unit, and selecting the respective synchronization states, where necessary. The operational units, the action sequences, and the synchronization states constitute variables or parameters for the control program.
By way of example, sequence A is selected for conveyor 2 and handling robot 4, and sequence E for the welding robots 5 and 6.
The configuration stage is implemented by means of a computer routine of the control program that is arranged to enable the parameters of said program to be modified and to display an input screen page 11 on the touch-sensitive display 9 to show the values of the parameters. The input screen page 11 has fields 12, 13, 14, and 15 corresponding to the modifiable parameters for each of the respective operational units.
The term “action” is used to mean either a stage of activity for the operational unit, e.g. gripping or welding, or a stage of passivity for the operational unit, such as waiting for an event that will trigger it taking action, or indeed storing the fact that all or some of the actions that are to be performed by an operational unit have been accomplished.
In general, the event that triggers an action being performed by an operational unit is the end of an action performed by another operational unit or by the same operational unit.
When the trigger event always occurs and is mandatory, e.g. for safety reasons, the control program is predefined so that the trigger event does not need to be indicated. This applies in particular to a validation action performed by the operator in charge of workpiece loading, on each occasion that the operator has loaded a workpiece and has cleared the zone in which operational units take action.
For an action, the modifiable parameters are generally as follows:
For a waiting action, the modifiable parameters are as follows:
For a storage action, the parameters are as follows:
If there is no need to wait for a particular state before passing onto the following action of the operational unit for which the sequence of actions is being specified, then the fields designating the expected event and the operational unit that will originate the event are left blank.
Naturally, it is possible to provide other parameters that can be modified, such as timing durations for waiting stages, different types of workpiece involving different clamping operations or positioners.
When the user seeks to input a value into one of the fields 12, 13, 14, and 15 (by pressing on the zone of the touch-sensitive display 9 that corresponds to the field), the routine displays a context menu 17 giving multiple choices that present the various sequences predefined for the selected type of operational unit. Selection is performed by pressing on the zone of the touch-sensitive display 9 that corresponds to the selected option.
From the selected field values, the routine applies parameters to the control program sub-portion(s) that correspond to the operational unit that is being configured. This setting of the parameters activates the corresponding sub-portion.
This enables actions or sequences of actions by the various units to be interleaved in such a manner as to enable the units to work together.
It will be understood that the control program thus includes sub-portions relating to the operational units and that correspond to a large number of action sequences that can be performed by the operational units, and also that the configuration stage serves to select and set parameter values therefor.
The control method continues with a stage of executing the sub-portions of the configured control program that have been selected and for which parameter values have been set.
During the control stage, the control program causes the touch-sensitive display 9 to display screen pages similar to those displayed during the configuration stage (nevertheless the fields are already filled in, as configured). In order to enable proper operation of the control to be monitored at sight, the control program displays the actions it has accomplished and those that it is currently executing. When an action is finished by an operational unit, this fact is indicated, for example by a change of color on such a screen page, while actions that are currently being performed or that have not yet finished are indicated by flashing, for example.
When the execution of an action exceeds a predetermined normal execution time, a visible warning is displayed on the screen and a warning signal is sent to a supervisor station or to premises for maintenance personnel by means of an electrical connection of the Ethernet local network type or of some other type.
Furthermore, a line is displayed for showing the content of files on the screen in order to help find a possible cause for the time overrun and solve the problem that has arisen.
By way of example, the file in question is a two-dimensional (2D) or three-dimensional (3D) image of the operational unit in respect of which the system is waiting for an event or the end of an action. Advantageously, the image also has a pointer displayed thereon to designate the component from which a change of state is expected (such as the end-of-stroke sensor of an actuator, a safety device, . . . ). Said files may also contain:
Preferably, another window is displayed showing the history of error messages and the dates and times at which they were issued. Still further windows can be displayed in order to give access:
Naturally, the embodiment described above is very simple in order to make the method easier to understand. In practice, the number of sequences that can be performed by a work station is much greater, particularly when the number of operational units therein is large.
It will be understood that the control program, prior to configuration, is identical for all of the work stations in a production line. This makes the line more modular and makes the stations more interchangeable.
Naturally, the invention is not restricted to the embodiment described and variants can be applied thereto without going beyond the ambit of the invention as defined by the claims.
In particular, the structure of the work station is described herein solely in order to enable the method to be understood and the method is not limited in any way thereto. The work station can thus have a structure that is different from that described and can include some other number of operational units and/or some other number of different types of operational units.
The program sub-portions mentioned in the above description of an embodiment may either be specifically portions of a single program, or they may be subprograms of a main program, or they may be slave programs controlled by a master program, . . . . The control program may have a structure that is different from that described.
The program sub-portions may correspond to an entire sequence of actions for one or more operational units, or to a portion only thereof. The robots used may for example have a number of axes other than six.
The configuration stage could be performed away from the work station.
It is possible to use an I/O device that is different from a touch-sensitive screen, and for example it is possible to use a keyboard, a mouse, and a screen, a touch-sensitive screen and a display screen, or a touch-sensitive display screen, . . . . The I/O device may be arranged to be connectable to a plurality of controllers in order to configure the control programs thereof.
Number | Date | Country | Kind |
---|---|---|---|
06 00857 | Jan 2006 | FR | national |
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/FR2007/000171 | 1/30/2007 | WO | 00 | 7/29/2008 |
Publishing Document | Publishing Date | Country | Kind |
---|---|---|---|
WO2007/088269 | 8/9/2007 | WO | A |
Number | Name | Date | Kind |
---|---|---|---|
4348142 | Figour | Sep 1982 | A |
4561176 | Leddet | Dec 1985 | A |
4578554 | Coulter | Mar 1986 | A |
4655675 | Yasuoka | Apr 1987 | A |
5140237 | Sasaki | Aug 1992 | A |
5340960 | Takasaki | Aug 1994 | A |
5455894 | Conboy et al. | Oct 1995 | A |
5539530 | Reifman et al. | Jul 1996 | A |
5555179 | Koyama et al. | Sep 1996 | A |
5815399 | Fujibayashi | Sep 1998 | A |
5906761 | Gilliland et al. | May 1999 | A |
5928531 | Sato | Jul 1999 | A |
6078320 | Dove et al. | Jun 2000 | A |
6429404 | Suzuki | Aug 2002 | B1 |
6444942 | Kawai | Sep 2002 | B1 |
6472634 | Houston et al. | Oct 2002 | B1 |
6479793 | Wittmann et al. | Nov 2002 | B1 |
6605800 | Schick et al. | Aug 2003 | B1 |
6633741 | Posa et al. | Oct 2003 | B1 |
6747247 | Holverson et al. | Jun 2004 | B2 |
6815917 | Fujinawa | Nov 2004 | B2 |
7024250 | Graf et al. | Apr 2006 | B2 |
7043332 | Fujinawa | May 2006 | B1 |
7049547 | Brunner et al. | May 2006 | B1 |
7076322 | Chandhoke | Jul 2006 | B2 |
7076332 | Cifra et al. | Jul 2006 | B2 |
7220941 | Niedereder et al. | May 2007 | B2 |
7291808 | Burgstaller et al. | Nov 2007 | B2 |
7515977 | Eryurek et al. | Apr 2009 | B2 |
7558646 | Matsumoto et al. | Jul 2009 | B2 |
7620478 | Fortell | Nov 2009 | B2 |
7653977 | Wiedemann | Feb 2010 | B2 |
7680547 | Liu et al. | Mar 2010 | B2 |
7721019 | Pierce et al. | May 2010 | B2 |
7721273 | Hall et al. | May 2010 | B1 |
8060834 | Lucas et al. | Nov 2011 | B2 |
20020156794 | Mayhew et al. | Oct 2002 | A1 |
20020186245 | Chandhoke et al. | Dec 2002 | A1 |
20040210339 | Ogino | Oct 2004 | A1 |
20050085928 | Shani | Apr 2005 | A1 |
20050173390 | Lanouette et al. | Aug 2005 | A1 |
20060052900 | Kozai | Mar 2006 | A1 |
20060101043 | Czotscher et al. | May 2006 | A1 |
20060265653 | Paasonen et al. | Nov 2006 | A1 |
20080011728 | Peters et al. | Jan 2008 | A1 |
20080056859 | Inoue | Mar 2008 | A1 |
20080114492 | Miegel et al. | May 2008 | A1 |
20100131104 | Brown et al. | May 2010 | A1 |
Number | Date | Country |
---|---|---|
0 973 078 | Jan 2000 | EP |
9106050 | May 1991 | WO |
2004055609 | Jul 2004 | WO |
Entry |
---|
FANUC Series 30i/31i/32i—Model A, FANUC, Ltd., Japan, pp. 1-24, 2003. |
Gertz et al., “A Human-Machine Interface for Distributed Virtual Laboratories,” IEEE Robotics & Auto. Mag., vol. 1, No. 4, pp. 5-13 (Dec. 1, 1994). |
Number | Date | Country | |
---|---|---|---|
20090018690 A1 | Jan 2009 | US |