The present invention relates to a method and a device for providing feedback on weaving parameters in connection with programming an industrial robot to perform a weaving movement. The invention is particularly useful in connection with programming an industrial robot to perform a welding process, such as arc welding. However, the invention is also useful in connection with programming the robot to perform any process including a weaving movement, such as gluing.
Weaving is a movement superimposed on the basic path of the process. That means that the robot moves the tool essentially along the basic path, and at the same time the tool performs a weaving movement. The weaving movement repeats a weaving pattern having a predetermined weave shape.
When an industrial robot is programmed to carry out a weaving movement, weaving data has to be created as an input to the robot programming. The weaving pattern is defined by the weaving data. When creating the weaving data, the user assigns values to a plurality of weaving parameters. The number of weaving parameters to be set depends on the process and the tool used. For example weaving data for an arc welding process may comprise thirteen weaving parameters. For example, the weaving parameters are the weave shape type, the weave type, the weave cycle, the weave width, and the weave height. The weaving data may also comprise other parameters more precisely specifying the shape of the weave. The values of the weaving parameters differ between various process applications.
Accordingly, weaving with an industrial robot includes many possible combinations of weaving parameters, all resulting in different weaving patterns. In order to find an optimal weaving pattern in accordance with the process requirements, weaving data has to be tested by running the weaving program on the robot, and studying the movements of the robot. The operator has to try the weaving data through experience to verify that the weaving pattern is the desired. Therefore, when programming an industrial robot to carry out a weaving movement for a specific process application it is troublesome and time consuming to find an optimal weaving pattern.
The object of the present invention is to make it easier and faster for the operator to find an optimal weaving pattern for a specific process application.
According to one aspect of the invention this object is achieved by a method as defined in claim 1.
The method comprises the following steps: receiving weaving parameters, performing a simulation of the weaving movement based on the received weaving parameters and a mathematical model of the weaving movement, producing a graphical representation of the weaving movement based on said simulation, and displaying said graphical representation of the weaving movement. Performing a simulation of the weaving movement comprises calculating the trace to be followed by the tool during the weaving movement based on the received weaving parameters and the mathematical model of the weaving movement. The graphical representation of the weaving movement is for example provided in 3D or in projection on a plane surface.
The weaving movement of the tool describes a weaving pattern. The mathematical model comprises a description of how the parameters affect the weaving pattern, for example in the form of equations and/or relations between the parameters and the weaving pattern. When the operator inputs a set of weaving parameters, or selects a predefined set of parameters, the trace of the tool, i.e. the weaving pattern, is visualized on a display screen. Thus, it is possible for the user to choose a set of weaving parameters and view the achieved weaving pattern on the display screen, without having to run the robot. The method can be used off-line on a personal computer, or integrated in a portable teach-pendant unit. Thanks to the invention the time for preparing a robot path including weaving, such as a welding path, is considerably reduced.
When the user is satisfied with the displayed shape of the weaving movement he approves the weaving shape and upon receiving the approval from the user, weaving data for the robot is created based on the weaving parameters, on which the present simulation is based. Thus, the weaving data does not have to be created until the user has approved the weaving pattern displayed.
According to one embodiment of the invention it is possible to select between a plurality of weave shape types and a mathematical model is provided for each weave shape type. In this embodiment one of the weaving parameters is the type of the shape of the weaving pattern. There is number of predefined wave shapes types for the user to choose from. For each weave shape type a mathematical model is defined. Which mathematical model to be used is determined base on which wave shape type the user selects.
According to an embodiment of the invention the method comprises receiving one or more adjusted weaving parameters, and the steps of the method is repeated based on the new adjusted parameters. Preferably, the values assigned to the weaving parameters are displayed together with the graphical representation of the weaving movement. If the operator is not satisfied with the weaving pattern visualized on the display device, he may adjust one or more of the parameters and the new weaving pattern is visualized on the display device. This embodiment of the invention makes it easier and faster for the operator to find an optimal weaving pattern for a specific process application.
To make it easier to change the numerical value of a selected weaving parameter a user interaction member, such as a scrollbar, is displayed on the display screen. Thus, the user can adjust the values of the weaving parameters until he is satisfied with the weaving pattern. The user gets an immediate visual feedback on any adjustment of a parameter.
According to an embodiment of the invention weaving data for the robot is created upon command, based on the received and adjusted weaving parameters. When the operator is satisfied with the displayed weaving pattern he indicates this, for example by activating a software button, and weaving data for the robot is automatically created. The creation of weaving data comprises for example the creation of a variable, an instance or a file comprising the parameters and their values. The weaving data created is ready for being loaded directly into the control system of the robot. This embodiment further reduces the time required for programming a robot path including a weaving pattern.
According to an embodiment of the invention the method comprises displaying the graphical representation of the weaving movement from different viewing angles in dependence of user commands. Thus, it is possible for the operator to view the weaving pattern from different angles.
The weaving movement comprises a repetitive pattern of a weave shape. The weaving parameters comprise at least the weave shape type, the weave cycle, the weave width, and the weave height. For example the weave shape type is any of Zig-zag, V-shape or Triangular.
According to an embodiment of the invention the method comprises calculating a plurality of points on the trace based on the received weaving parameters and the mathematical model of the weaving movements, and the graphical representation of the weaving movement is produced based on the calculated points. In a preferred embodiment, the points calculated are a plurality of breakpoints on the weave shape, and the mathematical model of the weaving movements comprises the weave shape describes as a plurality of linear segments, wherein each segment is represented by a vector having a start point and an end point, and said calculated breakpoints are the start and end points of said vectors. This is a simple and straightforward method to calculate the trace of the tool.
According to a further aspect of the invention, the object is achieved by a computer program directly loadable into the internal memory of a computer or a processor, comprising software code portions for performing the steps of the method according to the invention, when said program is run on a computer. The computer program is provided either on a computer readable medium or through a network, such as the Internet.
According to another aspect of the invention, the object is achieved by a computer readable medium having a program recorded thereon, when the program is to make a computer perform the steps of the method according to the invention, and said program is run on the computer.
The method according to the invention is preferably used for visualizing a weaving movement and/or optimizing weaving parameters in connection with programming of an industrial robot.
According to another aspect of the invention this object is achieved by a device as defined in claim 19. Such a device is characterized in that it comprises a simulation unit receiving said weaving parameters and on basis thereof performing a simulation of the weaving movement by means of a mathematical model of the weaving movements, a graphical unit producing a graphical representation of the weaving movement based on the simulation of the movement, and a display unit displaying the graphical representation of the weaving movement.
A device according to the invention assists the operator to visualize the weaving movement without having to run the robot program on the robot. The display unit comprises a display screen, for instance the display screen of a portable teach pedant or of an external computer.
The invention will now be explained more closely by the description of different embodiments of the invention and with reference to the appended figures.
a-c shows an example of the weave shape of the weaving pattern for zigzag weaving.
a-c shows an example of the weave shape of the weaving pattern for V-shaped weaving.
a-c shows an example of the weave shape of a weaving pattern for triangular weaving.
a shows third example of a view displaying the graphical representation of the weaving movement.
b shows a two dimensional projection of the trace of a robot tool on a plane.
c shows touch-screen boxes for selections of predefined weaving pattern.
A weaving movement is defined by weaving data comprising a plurality of weaving parameters. For example in arc welding the weaving data comprises 18 parameters to be set. Some of the parameters of the weaving data depend of the configuration of the robot. The main parameter to be set is the weave shape type. In this embodiment there are three weave shape types to choose from, as illustrated in
Another weaving parameter is the type of weaving in the welding phase. For a 6-axes robot, the weaving types are: geometric weaving (0), i.e. all axes are used during the weaving, wrist weaving (1), rapid weaving (2) using axis 1, 2 and 3, and rapid weaving (3) using axis 4, 5 and 6. Another important parameter is the weave cycle. There are two meanings of the weave cycle parameter: the length of the weave cycle, and weaving frequency. The weave cycle is defined as the length L of the weave cycle in the weld phase for weaving types 0 and 1, and as the frequency f=1/T of the weave cycle for weaving types 2 and 3. T is the weave cycle time. Other important parameters are the width W and the height H of the weaving pattern.
For the calculation of the trace to be followed by the tool during the weaving movement, a mathematical model of the weaving movement, i.e. the weaving pattern, is provided. A mathematical model is developed for each of the weave shape types. To provide a mathematical model of a weave shape, the weave shape is divided into a plurality of linear segments 1-8, as shown in
The device further comprises user input means 28. The device may comprise any normal input means, such as a keyboard, a keypad, a touch screen, a computer mouse or any other pointing means. The device further comprises a weaving data creator 29, which upon receiving an approval from a user creates weaving data for the robot based on the weaving parameters on which the present simulation is based. The creation of data comprises for example the creation of a variable, an instance or a file comprising the parameters and their values. The weaving data is then used by the control system of the robot for the calculation of robot movement to enable the robot to carry out the desired weaving movement.
a shows another example of a view displaying the graphical representation of the weaving movement. The view comprises a visualization window 40 for displaying the graphical representation of the weaving movement. The view comprises a box 42 displaying all the weaving parameters and the values assigned to each parameter. The operator selects which of the parameters to be modified. In this example the parameter frequency 43 is selected. The view also comprises a scrollbar 44 for changing a selected weaving parameter. The user selects one of the parameters in the box 42 for example by pointing or clicking at the parameter. When a parameter is selected it is possible for the user to change its value by means of the scrollbar 44. When the user changes the value of a parameter, the view of the weaving movement shown in the box 40 is changed in dependence of the change of the parameter. Accordingly, the user, by trial and error, can change the parameters until he is satisfied with the resulting weaving movement. The user receives an immediate visual feedback upon changing a parameter.
The view further comprises a reference menu 46 of predefined weaving patterns views and data. The reference menu 46 (denoted Gallery) comprises predefined projections of different kinds of weaving pattern on plane surfaces and representations of some typical 3D weaving patterns with corresponding weaving parameters. By clicking on one of the icons in that menu the user gets a static or animated visualization of the trace of the tool, for example of the welding gun, both in 3D and in projection on a plane surface together with a summary of the numerical values for the corresponding weaving parameters. The view is also provided with means 48 for choice of increment steps for the parameter setting with the scrollbar. The view further comprises means 49-52 for changing to other views including 2D projections in the x,y,z plane and rotated views.
The device includes a weaving data creator, creating weaving data for the robot based on the received and adjusted weaving parameters. The view displayed comprises an interaction means 54, in the form of a software button, for commanding the creation of weaving data. In the following the interaction means 54 is denoted a finish-button. When the user activates the finish-button, by for example pointing at it with the pointing device, a signal is send to a software module for creating weaving data based on the parameters set by the user. The creation of data comprises for example the creation of a variable, an instance or a file comprising the parameters and their values. Accordingly, the user adjusts the values of the weaving parameters until he is satisfied with the weaving pattern displayed on the display device, and then he activates the finish-button and weaving data for the robot is created.
The calculated breakpoints are converted into graphics representing the weaving pattern, block 66, and a view including the graphics and user interaction means are displayed on the display device, 68. In order to evaluate the weaving pattern, the user may change the view by zooming and rotating the view about the x, y or z-axis. The user orders changes of the view by activating the interaction means displayed, block 70, 72. The user may change the value of any parameter, block 74. An adjusted value of the parameter is received, block 76, and new breakpoints are calculated, new graphics are created based on the new breakpoints, and the new graphics are displayed on the display screen. The user may continue to change the view and adjust the parameters until he is satisfied with the weaving pattern. When the user is finished he approves the shape of the weaving movement. In this example the user approved the shape of the weaving movement by pushing the finish-button. The program receives a finish signal from the finish button, block 78. When receiving the finish-signal, weaving data is created based on the present values of the weaving parameters block 80.
The device according to the invention can be used off-line on a Personal computer or integrated in a GTPU (Graphical Teach Pendant Unit).
Number | Date | Country | Kind |
---|---|---|---|
0401542-6 | Jun 2004 | SE | national |
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/SE05/00837 | 6/2/2005 | WO | 00 | 12/17/2007 |