The present invention pertains to a process for moving a robot, especially an articulated robot such as an articulated arm industrial robot.
A robot as a robot according to EN ISO 8373, subsection 2.6 is controlled, in principle, by means of position control or continuous path control, wherein the motion processes are programmed by teach-in or off-line programming. The different axes of a robot are synchronized, in principle, by each axis moving to a reference point in order for the control to be able to assign the current position of the motor armature to an angle of articulation, i.e., a displacement takes place into a reference position, in which incremental measured values of the articulation coordinates are adapted to the robot control. A synchronization is optionally carried out in the same manner with an external axis of motion.
On the one hand, this does not permit a synchronous simulation of all motions, and, on the other hand, such a synchronization lacks sufficient reliability and accuracy over the entire path.
The basic object of the present invention is therefore to provide a process by means of which the entire motion process can be simulated and reliable synchronization is possible.
The object is accomplished according to the present invention with a process of the type described in the introduction, which is characterized in that motions of axes of the robot are synchronized with a primary motion.
Provisions are made in a preferred embodiment for positions of the axes to be assigned to the position of the primary motion via a path table. Accordingly, positions or the independent axes of the robots, for example, of the axes A1 through A6, are assigned in such a path table to a position of the primary motion, such as the motion of the entire robot in space, be it preferably on a turntable with an axis of rotation as the primary axis or also a linear motion of the robot or another motion in space in a matrix-like manner, i.e., for example, to a position S1 of the primary motion positions A11 (first position of the first robot axis), A21, A61 (first position of the sixth axis), of the position Sn of the basic motion, the robot axis positions A1n (end position of the first robot axis), A2n, . . . , A6n (end position of the sixth robot axis). The motions of the axes of the robot, which depend on the primary motion, can also be called secondary motions and the corresponding axes (A1 through A6) can be called secondary axes. Insofar as the primary motions take place about or along an axis, this can be called a primary axis.
In a preferred embodiment, the positions are checked especially by means of position encoders provided in the path of motion of the primary motion, such as, i.e., a primary axis.
As was stated above, the primary motion may be that of a primary axis, wherein the latter may be an axis of the robot or an axis defining a motion of the entire robot; the primary axis may be an axis of rotation about which the entire robot moves, or else a linear axis, along which the entire robot moves.
Due to the solution according to the present invention, the dependent motions of the robot axes are connected in a cam-like manner with the primary motion and follow a path, which is determined by the positions of the primary motion. The path of motion defines the position, the velocity and the acceleration of the robot or the axes thereof at any given point during the entire motion. The synchronous motion may be programmed off-line by means of a simulation tool in the path table. The present invention offers the advantage that there is a high level of flexibility for creating different motion paths or pathways and the user can make a selection from among a plurality of paths or pathways.
The motion of the robot and consequently the position of the robot is exactly coupled with the primary motion and consequently in the position along same as in the case of a mechanical cam.
Within the framework of the present invention, each position of the robot follows that preset in the path table. The robot control reaches a position from the path table during each interpolation cycle and moves the robot into the position read. The path table defines both the geometric shape of the path and the motion profile, which the robot performs during the performance of the motion over the path.
Other advantages and features of the present invention appear from the claims and the following description, in which exemplary embodiments of the present invention are specifically explained with reference to the drawings. The various features of novelty which characterize the invention are pointed out with particularity in the claims annexed to and forming a part of this disclosure. For a better understanding of the invention, its operating advantages and specific objects attained by its uses, reference is made to the accompanying drawings and descriptive matter in which a preferred embodiment of the invention is illustrated.
In the drawings:
Referring to the drawings in particular, the core element of the control of a robot R according to the present invention is a so-called path table 1, which is generated off-line by one or more programmers taking into account—in the exemplary embodiment being shown—turntable index 2, i.e., the information on the position of the turntable by means of an animation and simulation tool 3. The motion of the turntable is the motion about a principal axis, about which the robot moves, for example, eccentrically (as in the case of a carousel), while the motions of the robot axes, six axes in a conventional robot, depend on the principal motion of the turntable.
Instead of a turntable axis as the principal axis, a linear axis may be provided as well. Moreover, the basic motion may also be a more complex motion than a rotary motion about a principle axis or than a linear motion along a principal axis; what is essential is a preset path of motion with positions of the principal motion, to which positions of the rotor axes can be assigned.
When the motion profile is generated, the path of motion of the robot arm, more specifically the TCP (Tool Center Point) of the robot, is determined at first, and the process motion is determined next along this path, taking into account velocities and accelerations, and the path table is finally generated.
The entire motion of the robot can thus be simulated by means of the animation/simulation tool 3.
A row of the path table is assigned to each index position of the principle axes in Table 1 and it contains the associated robot position. To control a robot, the path table 1 is fed into the robot control 6, for example, from an external memory 5 (
Moreover, the robot control also has a path table interpreter 11 and a path table manager 13.
As can be determined from
1. The robot interpreter executes a robot program.
2. This robot program contains a special instruction, which transfers the control to the path table, e.g., with the indication of the path table to be run.
3. The path table manager loads the corresponding table and begins processing the table.
4. Corresponding to the position of the principal axis, it takes the corresponding robot position from the table, processes it and sends a displacement command to the motion controller. The position of the principal axis can be transferred, e.g., via I/Os (e.g., Inputs, Outputs 10).
5. The control passes again over to the robot interpreter with the processing of the table.
6. For example, the current table and the status of processing of that table can be visualized via the HMI.
In addition or as an alternative, the axis position can also be used to monitor the security of the motion path of the robot, as this is shown in
While specific embodiments of the invention have been shown and described in detail to illustrate the application of the principles of the invention, it will be understood that the invention may be embodied otherwise without departing from such principles.