Determining An Orientation Of A Robot Relative To The Direction Of Gravity
20190009410 ยท 2019-01-10
Assignee
Inventors
Cpc classification
B25J9/1694
PERFORMING OPERATIONS; TRANSPORTING
B25J9/1664
PERFORMING OPERATIONS; TRANSPORTING
B25J9/1638
PERFORMING OPERATIONS; TRANSPORTING
International classification
Abstract
A method for determining an orientation or installation of a robot relative to a direction of gravity for at least one installation location of the robot, and for horizontal alignment or alignment relative to the direction of gravity of a robot includes creating a model wherein joint forces are identified in at least one calibration pose. The robot is then into a new installation location and the joint forces of the robot are identified in at least one measuring pose. Based on the identified joint forces and the model of the robot, the orientation, i.e. the orientation or the installation, of the robot relative to the direction of gravity is determined. The orientation of the robot is corrected by tilting the robot base such that the identified joint forces do not deviate from the forces defined in the model.
Claims
1. A method for determining an orientation of a robot (10) relative to a gravitational direction (g.sub.actual) in at least one installation location of the robot, having the steps of: detecting (S10) joint forces of the robot in at least one measuring pose; and ascertaining (S20) an orientation of the robot relative to the gravitational direction based on the detected joint forces and a model of the robot.
2-15. (canceled)
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0087] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate exemplary embodiments of the invention and, together with a general description of the invention given above, and the detailed description given below, serve to explain the principles of the present invention.
[0088]
[0089]
DETAILED DESCRIPTION
[0090] The robot has a robot arm with a proximal robot base 11 and a distal tool flange 16, on which a tool 12 is positioned in such a way that it can be detached without being destroyed. The base 11 and flange 16 are movably connected to one another by means of seven actuated pivot joints, the joint angles of which are detected as q.sub.1, . . . , q.sub.7.
[0091] In
[0092] The mobile robot further has a drivable platform 13 with for example two wheels 14, on which its robot base 11 is positioned.
[0093] For example, the platform has two supports 15 of variable length, by means of which an alignment of the robot relative to the surface on which it stands can be varied. In the exemplary embodiment, the supports 15 can be pivoted in and out by means of a screw thread. By synchronously pivoting the two supports 15, positioned one after the other in the viewing direction of
[0094] The controller 2, in an at least partly automated manner, performs a method, explained hereinafter with reference to
[0095] For what is seen in absolute terms as a horizontal or vertical alignment of the robot 10 in its current installation location, in a step S10 in the measuring pose shown in
[0096] In a step S20, from the joint angles q.sub.1, . . . , q.sub.7, based on a model of the toolless robot, in accordance with equation (1), the controller 2 ascertains model joint forces
[0097] This can be seen in
[0098] This joint momentum in the second joint then deviates from the joint momentum ascertained based on the model or of the gravitational direction g.sub.model=[0,0,g].sup.T fundamental to it. Accordingly, the controller 2based on this deviation between the ascertained joint momentum and the model joint momentum ascertained based on the model of the robotcan conversely ascertain the orientation of the robot 10 or of its robot (base)-specific reference system (x, y, z) relative to the actual current gravitational direction g.sub.actual in the (x-z) plane or a corresponding component of the correction variable.
[0099] Analogously, the controller can also ascertain the orientation in the (y-z) plane or a corresponding component of the correction variable, for instance based on the joint momentum in the third joint (see q.sub.3).
[0100] By taking into account further joint momentums, such as the joint momentum in the fifth joint (see q.sub.5) for the orientation in the (x-z) plane and/or the joint momentum in the seventh joint (see q.sub.7) for the orientation in the (x-z) plane, and/or by repeating steps S10 and S20 for further measuring poses, rotated for instance by 90 around the first axis (see q.sub.1), the ascertainment can be performed redundantly and thus its precision can be enhanced, in particular by means of averaging.
[0101] In step S30, the ascertained current orientation or correction variable of the robot 10 can be displayed, for instance in the form of angles around the x and y axes by which the robot-base-specific z axis, or the gravitational direction g.sub.model=[0,0g].sup.T which is fundamental to the model, and the actual current g.sub.actual deviate from each other.
[0102] By adjusting the (lengths of the) supports 15, the user can correct the alignment of the robot 10, and in particular of its platform 13, so as to minimize the deviation between the ascertained orientation and the orientation or correction variable on which the model is based.
[0103] In this way, the robot 10 can be aligned absolutely horizontally or vertically.
[0104] In the same way, a previous orientation of the robot upon calibration of a model of the tool-carrying robot can be restored in another installation location:
[0105] To do so, first this model is calibrated in an installation location in a manner that is known per se by approaching various calibration poses and ascertaining the joint momentums in those poses. Parameters of the model can be calibrated based on the deviation of these ascertained joint momentums from joint momentums ascertained based on the model.
[0106] This too can be illustrated with
[0107] If the robot 10 is then installed in a further installation location, its orientation relative to the actual current gravitational direction there should once again be equivalent to the one that was also present in the calibration explained above. This is because deviations between the actual orientation and the orientation fundamental to the model upon calibration are intrinsically compensated for in the parametrization of robot applications based on the calibrated model. This compensation should accordingly also be taken into account (or be able to be taken into account) (again) in the new or further installation location as well.
[0108] Accordingly, in the further installation location, once again in steps S10-S30, the joint forces
[0109] The correction variable can be displayed for example in the form of the rotational direction and/or angle around the x and y axes. Equally, it can be displayed for example in the form of a directional arrow in the x-y plane, into which plane the z axis is to be tilted; the size of the directional arrow can indicate the tilt angle. It can for instance also be displayed in the form of a correction axis in the x-y plane, around which the z axis is to be tilted; in a further embodiment, the direction of rotation and/or tilt angle can be displayed, for example also numerically.
[0110] Because by moving the supports 15 in or out, the user changes the alignment of the platform 13 so that the displayed correction variable is minimized, the user employs the same orientation, in the new or further installation position, that existed when the model of the tool-carrying robot was calibrated.
[0111] In this way, the calibrated model can also be used in the new or further installation position, and in particular without the robot, for calibration of the model, being aligned absolutely horizontally or vertically.
[0112]
[0113] Analogously, the third and seventh axes of motion of the robot form an angle, which likewise amounts to 0, with the further correction axis x, by which the alignment of the robot is correctable by altering one of the supports 15. As a result, corrections of the alignment of the robot around the x axes advantageously have a direct effect on the third and seventh axis of motion.
[0114] Furthermore, in the measuring pose, a horizontal spacing between the distal flange 16 and the base 11 of the robot amounts to 100% of a maximum horizontal spacing between the flange and the base, so that the weight forces have an especially strong effect.
[0115] In a modification, a force sensor in the form of a load cell 20, shown in dashed lines in
[0116] In this modification, the controller 2 in step S10, by means of the load cell 20 (positioned on the base), ascertains a weight force of the robot arm, optionally including the useful load, or, by means of the load cell 20 (positioned on the base or the flange), a weight force of a robot-guided useful load.
[0117] In one embodiment of this modification, the multiaxial load cell 20 in step S10 ascertains components m.sub.x, m.sub.y, m.sub.z of the weight force m in the three directions of the robot-base-specific reference coordinate system (x, y, z).
[0118] From this, the controller 2 in step S20 ascertains the orientation of the load cell 20, or of the robot on which the load cell is positioned in a known orientation, in particular the orientation of its robot-base-specific reference coordinate system, relative to the actual current gravitational direction that is determined by the direction of the vector [m.sub.x, m.sub.y, m.sub.z].sup.T. For instance, if the load cell 20 detects only a negative weight force (component) in its z axis direction, then this is oriented in the opposite direction from and parallel to the actual current gravitational direction.
[0119] In another embodiment of this modification, the monoaxial load cell 20 in step S10 detects only one component m.sub.z of the weight force m in the axial or detection direction z of the robot-base-specific reference coordinate system (x, y, z).
[0120] Based on this, in step S20, the controller 2 ascertains the orientation of the load cell 20, or of the robot on which the load cell is positioned in a known orientation, relative to the actual current gravitational direction. If, for example, the amount |m| of the weight force m is known, then the orientation can be ascertained based the ratio m.sub.z/|m|, which assumes the maximum value 1 if the detection direction z and the actual current gravitational direction coincide.
[0121] In step S30, the controller 2 ascertains a correction variable, which indicates the current orientation, ascertained based on the detected weight force, of the robot relative to the actual gravitational direction, and displays it, for example as the ratio m.sub.z/|m|. The user can minimize this by tilting the platform 13 and thus the robot 10 and thus aligning the robot absolutely with the actual gravitational direction. This is also possible if the amount |m| of the weight force m is not known, since the component m.sub.z has an extreme value if the z axis direction of the load cell, or of the robot-base-specific reference coordinate system, coincides with the actual current gravitational direction.
[0122] Likewise, the correction variable can also indicate the deviation between the ascertained current orientation and an orientation of the robot relative to the actual gravitational direction that was present during a calibration of the robot, such as the deviation between the components m.sub.x, m.sub.y, m.sub.z of the currently detected weight force and the corresponding components that were detected during a calibration of the robot. Because the user, by tilting the platform 13 and thus the robot 10, minimizes this (multidimensional) deviation, he restores the orientation that was present during the calibration of the robot, so that in particular, a robot model that is calibrated in the course of this is once again correct. Although exemplary embodiments were explained in the foregoing description, it should be noted that multiple modifications are possible. It is furthermore noted that the exemplary embodiments are solely examples, which are in no way intended to limit the scope of patent protection, the applications, and the structure thereof. On the contrary, from the description above, the person skilled in the art is provided with guidelines for implementing at least one exemplary embodiment; various changes, particularly in terms of the function and location of the components described, can be made without departing from the scope of protection as defined by the claims and the feature combinations equivalent to them.