CN114434436A - Method and device for controlling robot and computer readable storage medium - Google Patents
Method and device for controlling robot and computer readable storage medium Download PDFInfo
- Publication number
- CN114434436A CN114434436A CN202011189454.XA CN202011189454A CN114434436A CN 114434436 A CN114434436 A CN 114434436A CN 202011189454 A CN202011189454 A CN 202011189454A CN 114434436 A CN114434436 A CN 114434436A
- Authority
- CN
- China
- Prior art keywords
- coordinate system
- axis
- end effector
- handle
- robot
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1628—Programme controls characterised by the control loop
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Manipulator (AREA)
Abstract
The embodiment of the invention discloses a method and a device for controlling a robot and a computer readable storage medium. The method comprises the following steps: establishing an equipment side coordinate system, wherein the equipment side coordinate system comprises a first coordinate axis coincident with a surface normal of a working object; collecting the handle position movement amount and/or the handle posture adjustment amount in a handle coordinate system; mapping a handle position movement amount in the handle coordinate system to a position movement amount of a robot end effector operating the work object in the device-side coordinate system, and/or mapping a handle posture adjustment amount in the handle coordinate system to a posture adjustment amount of the robot end effector operating the work object in the device-side coordinate system, wherein a predetermined contact force and/or contact torque between the robot end effector and the work object is maintained on a first coordinate axis of the device-side coordinate system. A novel device-side coordinate system is established, which is particularly suitable for working objects with curved surfaces.
Description
Technical Field
The present invention relates to the field of robot technology, and in particular, to a method and an apparatus for controlling a robot, and a computer-readable storage medium.
Background
Robots (robots) are machine devices that can automatically perform work. The intelligent robot can accept human command, run pre-programmed program and perform actions according to the principle set by artificial intelligence technology. The robot may include an industrial robot, an agricultural robot, a household robot, a medical robot, a service robot, a space robot, an underwater robot, a military robot, a rescue and relief robot, an educational and teaching robot, an entertainment robot, and the like. Industrial robots are multi-joint manipulators or multi-degree-of-freedom machine devices oriented to the industrial field, which can automatically perform work and realize various functions by means of self power and control capability.
The conventional method of operating a robot is based on a conventional teach pendant (teach pendant) which includes a plurality of keys. For example, a key typically includes: menu related keys, jog related keys, execute related keys, edit related keys and other keys, etc.
In the prior art, keys on the teach pendant are manually manipulated to control different motions of the robot. However, it is difficult to control the movement of the robot by the buttons because it requires a user to perform a lot of training work, and erroneous operation may cause the robot to hit an object or an operator.
Disclosure of Invention
The invention mainly aims to provide a method, a device and a computer readable storage medium for controlling a robot.
The technical scheme of the embodiment of the invention is realized as follows:
a method of controlling a robot, comprising:
establishing a device-side coordinate system, wherein the device-side coordinate system comprises a first coordinate axis coinciding with a surface normal of a work object
Collecting the handle position movement amount and/or the handle posture adjustment amount in a handle coordinate system;
mapping a grip position movement amount in the grip coordinate system to a position movement amount of a robot end effector operating the work object in the apparatus-side coordinate system, and/or mapping a grip posture adjustment amount in the grip coordinate system to a posture adjustment amount of the robot end effector operating the work object in the apparatus-side coordinate system, wherein a predetermined contact force and/or contact torque between the robot end effector and the work object is maintained on a first coordinate axis of the apparatus-side coordinate system.
Therefore, the embodiment of the invention realizes the intuitive control aiming at the robot based on the handle operation, and reduces the operation difficulty of the user. Furthermore, by establishing a novel device-side coordinate system, maintaining a predetermined contact force and/or contact moment on a work object is facilitated, in particular for contact manipulation on work objects having a curved surface.
In one embodiment, the device-side coordinate system further includes a second coordinate axis and a third coordinate axis perpendicular to the first coordinate axis, respectively, wherein the second coordinate axis is a mapping of an X-axis in the tool coordinate system on a normal plane to the first coordinate axis, and the third coordinate axis is determined based on a cross product of the first coordinate axis and the second coordinate axis.
Therefore, the X-axis in the device-side coordinate system proposed by the embodiment of the invention is the mapping of the X-axis in the tool coordinate system on the normal plane containing the first coordinate axis, thereby facilitating the establishment of the device-side coordinate system.
In one embodiment, the handle position movement amount includes an X-axis value of a handle coordinate system and a Y-axis value of the handle coordinate system, and the handle posture adjustment amount includes an RX value of the handle coordinate system, a RY value of the handle coordinate system, and an RZ value of the handle coordinate system, where RX is an angle of rotation of the handle about the X-axis of the handle coordinate system, RY is an angle of rotation of the handle about the Y-axis of the handle coordinate system, and RZ is an angle of rotation of the handle about the Z-axis of the handle coordinate system.
Accordingly, embodiments of the present invention may provide a position movement amount and a posture adjustment amount based on the handle.
In one embodiment, the mapping of the amount of handle position movement in the handle coordinate system to the amount of position movement of the robot end effector operating the work object in the apparatus-side coordinate system includes:
when the coordinate origin of the equipment side coordinate system is changed, the position movement amount of the robot end effector and the position movement amount of the handle after the new coordinate origin is switched have a linear relation or a nonlinear relation.
It can be seen that the amount of positional movement in the apparatus-side coordinate system is conveniently mapped based on the amount of positional movement of the hand lever in the hand lever coordinate system, thereby facilitating control of the position of the end effector.
In one embodiment, the mapping of the hand pose adjustment amount in the hand coordinate system to the pose adjustment amount of the robot end effector operating the work object in the device-side coordinate system includes:
when the coordinate origin of the equipment side coordinate system is changed, the posture adjustment amount of the robot end effector and the posture adjustment amount of the handle after the equipment side coordinate system is switched to the new coordinate origin have a linear relation or a nonlinear relation.
Therefore, the posture adjustment amount in the equipment side coordinate system is conveniently mapped based on the handle posture adjustment amount in the handle coordinate system, so that the posture of the end effector is conveniently controlled.
In one embodiment, further comprising:
determining the current posture of the robot end effector based on the posture adjustment amount of the robot end effector and the historical posture of the robot end effector before the coordinate origin is changed; or
Determining a current pose of the robotic end effector based on the pose adjustment amount of the robotic end effector and a predetermined default pose of the robotic end effector.
Thus, the pose of the end effector may be determined by superposition with the historical pose or the default pose.
An apparatus for controlling a robot, comprising:
the device side coordinate system establishing module is used for establishing a device side coordinate system, wherein the device side coordinate system comprises a first coordinate axis which is coincident with the surface normal of the working object;
the acquisition module is used for acquiring the handle position movement amount and/or the handle posture adjustment amount in a handle coordinate system;
a mapping module for mapping a handle position movement amount in the handle coordinate system to a position movement amount of the robot end effector operating the work object in the device side coordinate system and/or mapping a handle posture adjustment amount in the handle coordinate system to a posture adjustment amount of the robot end effector operating the work object in the device side coordinate system, wherein a predetermined contact force and/or contact torque between the robot end effector and the work object is maintained on a first coordinate axis of the device side coordinate system.
Therefore, the embodiment of the invention realizes the intuitive control aiming at the robot based on the handle operation, and reduces the operation difficulty of the user. Furthermore, by establishing a novel device-side coordinate system, maintaining a predetermined contact force and/or contact moment on a work object is facilitated, in particular for contact manipulation on work objects having a curved surface.
In one embodiment, the device-side coordinate system further includes a second coordinate axis and a third coordinate axis perpendicular to the first coordinate axis, respectively, where the second coordinate axis is a mapping of an X-axis in the tool coordinate system on a normal plane of the first coordinate axis, and the third coordinate axis is determined based on a cross product of the first coordinate axis and the second coordinate axis.
Therefore, the X-axis in the device-side coordinate system provided by the embodiment of the invention is the mapping of the X-axis in the tool coordinate system on the normal plane containing the first coordinate axis, thereby facilitating the establishment of the device-side coordinate system.
In one embodiment, the handle position movement amount includes an X-axis value of a handle coordinate system and a Y-axis value of the handle coordinate system, and the handle posture adjustment amount includes an RX value of the handle coordinate system, a RY value of the handle coordinate system, and an RZ value of the handle coordinate system, where RX is an angle of rotation of the handle about the X-axis of the handle coordinate system, RY is an angle of rotation of the handle about the Y-axis of the handle coordinate system, and RZ is an angle of rotation of the handle about the Z-axis of the handle coordinate system.
Accordingly, embodiments of the present invention may provide a position movement amount and a posture adjustment amount based on the handle.
In one embodiment, the mapping module is configured to, when the coordinate origin of the device-side coordinate system changes, cause the position movement amount of the robot end effector to have a linear relationship or a non-linear relationship with the position movement amount of the handle after switching to the new coordinate origin.
It can be seen that the amount of positional movement in the apparatus-side coordinate system is conveniently mapped based on the amount of positional movement of the hand lever in the hand lever coordinate system, thereby facilitating control of the position of the end effector.
In one embodiment, the mapping module is configured to have a linear relationship or a non-linear relationship between the posture adjustment amount of the robot end effector and the posture adjustment amount of the handle after switching to a new coordinate origin when the coordinate origin of the device-side coordinate system changes.
Therefore, the posture adjustment amount in the equipment side coordinate system is conveniently mapped based on the handle posture adjustment amount in the handle coordinate system, so that the posture of the end effector is conveniently controlled.
In one embodiment, the mapping module is further configured to determine a current pose of the robot end effector based on the pose adjustment amount of the robot end effector and a historical pose of the robot end effector before the coordinate origin is changed; or determining a current pose of the robotic end effector based on the pose adjustment amount of the robotic end effector and a predetermined default pose of the robotic end effector.
Thus, the pose of the end effector may be determined by superposition with the historical pose or the default pose.
An apparatus for controlling a robot, comprising: a memory; a processor; wherein an application program executable by the processor is stored in the memory for causing the processor to execute the method of controlling a robot as described in any one of the above.
A computer-readable storage medium, on which a computer program is stored which, when being executed by a processor, carries out a method of controlling a robot according to any one of the preceding claims.
Drawings
Fig. 1 is a flowchart of a method of controlling a robot according to an embodiment of the present invention.
FIG. 2 is a schematic view of a coordinate system of a handle according to an embodiment of the present invention.
Fig. 3 is a schematic diagram of an apparatus-side coordinate system according to an embodiment of the present invention.
Fig. 4 is an exemplary schematic diagram of a control robot according to an embodiment of the present invention.
Fig. 5 is a control flow chart of force and torque according to the embodiment of the present invention.
Fig. 6 is a block diagram showing the structure of a device for controlling a robot according to the embodiment of the present invention.
Fig. 7 is a block diagram of an apparatus for controlling a robot having a memory-processor architecture according to an embodiment of the present invention.
Wherein the reference numbers are as follows:
100 | method for controlling |
101~103 | Step (ii) of |
21 | Handle (CN) |
60 | |
31 | Robot |
32 | End effector |
33 | Force and moment sensor |
34 | |
35 | Controller for controlling a |
501 | |
502 | PID regulating |
503 | |
504 | Position and |
505 | Force and |
600 | Device for controlling |
601 | Equipment side coordinate |
602 | |
603 | Mapping module |
700 | Device for controlling |
701 | |
702 | Processor with a memory having a plurality of memory cells |
Detailed Description
In order to make the technical scheme and advantages of the present invention more apparent, the present invention is further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the detailed description and specific examples, while indicating the scope of the invention, are intended for purposes of illustration only and are not intended to limit the scope of the invention.
For simplicity and clarity of description, the aspects of the invention are set forth below by describing several representative embodiments. Numerous details of the embodiments are set forth to provide an understanding of the principles of the invention. It will be apparent, however, that the invention may be practiced without these specific details. Some embodiments are not described in detail, but rather only a framework is presented, in order to avoid unnecessarily obscuring aspects of the invention. Hereinafter, "comprising" means "including but not limited to", "according to … …" means "at least according to … …, but not limited to … … only". In view of the language convention of chinese, the following description, when it does not specifically state the number of a component, means that the component may be one or more, or may be understood as at least one.
Fig. 1 is a flowchart of a method of controlling a robot according to an embodiment of the present invention.
As shown in fig. 1, the method includes:
step 101: an apparatus-side coordinate system is established, wherein the apparatus-side coordinate system comprises a first coordinate axis coinciding with a surface normal of the work object.
When the surface of the work object is a curved line (curved surface), the surface normal of the work object is not fixed, and therefore the first coordinate axis is variable as the surface of the work object extends.
In one embodiment, the device-side coordinate system further includes a second coordinate axis and a third coordinate axis perpendicular to the first coordinate axis, respectively, wherein the second coordinate axis is a mapping of an X-axis in the tool coordinate system on a normal plane to the first coordinate axis, and the third coordinate axis is determined based on a cross product of the first coordinate axis and the second coordinate axis.
Here, the meaning of the mapping of the second coordinate axis as the X-axis in the tool coordinate system on the normal plane to the first coordinate axis includes:
(1) and the second coordinate axis is the direct mapping of the X axis in the tool coordinate system on the normal plane of the first coordinate axis. That is, a straight line projecting the X-axis in the tool coordinate system onto a normal plane including the first coordinate axis is determined as the second coordinate axis.
(2) And the second coordinate axis is a straight line obtained by directly mapping the X axis in the tool coordinate system on a normal plane of the first coordinate axis and then transforming the X axis to a preset angle. That is, a straight line obtained by projecting the X-axis in the tool coordinate system onto a normal plane including the first coordinate axis and then converting the normal plane by a predetermined angle is determined as the second coordinate axis.
FIG. 2 is a schematic view of a coordinate system of a handle according to an embodiment of the present invention.
In fig. 2, a handle coordinate system may be established based on the movement space of the handle 21. Wherein the handle coordinate system may be a cartesian coordinate system including an X-axis and a Y-axis in a horizontal plane and a Z-axis perpendicular to the X-axis and the Y-axis. In general, no movement occurs in the Z-axis. The three-dimensional space coordinate information and the three-dimensional coordinate axis rotation angle in the handle coordinate system input by the user based on the handle can be collected. The three-dimensional coordinate axis rotation angle comprises RX, RY and RZ information, wherein RX is an angle of rotation around an X axis, RY is an angle of rotation around a Y axis, and RZ is an angle of rotation around a Z axis.
Fig. 3 is a schematic diagram of an apparatus-side coordinate system according to an embodiment of the present invention.
In fig. 3, the robot work object 60 is not flat, but has a corresponding curve, wherein the curve contains point a, point B, point C and point D, etc. At each point on the curve, a device-side coordinate system can be established, where the surface normal of the curve is the first coordinate axis (Z-axis) of the device-side coordinate system. Furthermore, the apparatus-side coordinate system further comprises a second coordinate axis (X-axis) and a third coordinate axis (Y-axis) perpendicular to the first coordinate axis, respectively, wherein the second coordinate axis is a mapping of the X-axis in the tool coordinate system of the robot on a normal plane to the first coordinate axis, and the third coordinate axis is determined based on a cross product of the first coordinate axis and the second coordinate axis.
For example, in the device-side coordinate system at point a: the origin is point A, the Z-axis is the normal at point A, the X-axis is a mapping of the X-axis in the tool coordinate system on a normal plane containing the normal at point A, and the Y-axis is determined by a cross product of the normal at point A and the A-axis. As the point on the curve changes, the corresponding device-side coordinate system changes. For example, after moving to point C, in the device-side coordinate system at point C: the origin is point C, the Z-axis is the normal at point C, the X-axis is the mapping of the X-axis in the tool coordinate system onto a normal plane containing the normal at point C, and the Y-axis is determined by the cross product of the normal at point C and the A-axis.
It can be seen that embodiments of the present invention establish a novel device-side coordinate system at the device end (as opposed to the user end with the handle). The X axis of the equipment side coordinate system is from a tool coordinate system of the robot; the Z-axis in the device-side coordinate system is derived from the workpiece coordinate system as the object surface normal. Also, RX in the device-side coordinate system is an angle of rotation about the X-axis in the device-side coordinate system; RY in the equipment side coordinate system is an angle of rotation around the Y axis in the equipment side coordinate system; RZ in the apparatus-side coordinate system is an angle of rotation around the Z axis in the apparatus-side coordinate system.
Step 102: and acquiring the handle position movement amount and/or the handle posture adjustment amount in a handle coordinate system.
Here, the grip position movement amount includes an X-axis value of a grip coordinate system and a Y-axis value of the grip coordinate system, and the grip posture adjustment amount includes an RX value of the grip coordinate system, a RY value of the grip coordinate system, and an RZ value of the grip coordinate system, where RX is an angle of rotation of the grip around the X-axis of the grip coordinate system, RY is an angle of rotation of the grip around the Y-axis of the grip coordinate system, and RZ is an angle of rotation of the grip around the Z-axis of the grip coordinate system.
Step 103: mapping a grip position movement amount in the grip coordinate system to a position movement amount of a robot end effector operating the work object in the apparatus-side coordinate system, and/or mapping a grip posture adjustment amount in the grip coordinate system to a posture adjustment amount of the robot end effector operating the work object in the apparatus-side coordinate system, wherein a predetermined contact force and/or contact torque between the robot end effector and the work object is maintained on a first coordinate axis of the apparatus-side coordinate system.
An end effector refers to any tool that is attached to the edge (joint) of a robot with a certain function. This may include robotic grippers, robotic tool quick-change devices, robotic collision sensors, robotic rotary connectors, robotic pressure tools, compliant devices, robotic spray guns, robotic burr cleaning tools, robotic arc welding torches, robotic electric welding torches, and the like. A robot end-effector is generally considered to be a peripheral device of a robot, an attachment of a robot, a robot tool, an end-of-arm tool. The mechanical clamping type end effector used in the industrial robot is mostly of a double-finger claw type, and if the mechanical clamping type end effector is divided into a translation type and a rotation type according to the movement of a finger. The mechanical clamping method may be classified into an outer clamping type and an inner supporting type, and the mechanical clamping method may be classified into an electric (electromagnetic) type, a hydraulic type and a pneumatic type, and a combination thereof. Here, force and torque sensors are arranged at the end effector. During execution of the motion control commands by the robot, the force and torque sensor acquires contact forces and/or contact torques between the end effector and the work piece of the robot. A probe or the like is coupled to the end effector, and the probe is in contact with the work object.
In one embodiment, the probe is coupled to the force and torque sensor via a first flange, and the force and torque sensor is further coupled to the end effector via a second flange. The controller of the robot may control the robot to move a probe on the end effector over a surface of the object to be measured, wherein the force and torque sensor detects a current value of a contact force or a current value of a contact torque between the probe and the surface. And the controller controls the position of the end effector of the robot in a feedback control mode based on the difference between the current value of the contact force or the current value of the contact torque and the preset contact force or the preset contact torque so as to enable the probe on the end effector to keep the preset contact force or the preset contact torque to be contacted with the surface of the object to be measured as much as possible. When there is a change (e.g., a protrusion or a depression) on the surface of the object to be measured, the position of the end effector needs to be adjusted accordingly in order to maintain a predetermined contact force or contact torque for the probe. Therefore, the position adjustment amount of the end effector can reflect the amount of change on the surface of the object to be measured.
In one embodiment, mapping the amount of handle position movement in the handle coordinate system to the amount of position movement of the robot end effector in the device-side coordinate system that operates the work object includes:
when the coordinate origin of the equipment side coordinate system is changed, the position movement amount of the robot end effector and the position movement amount of the handle after the new coordinate origin is switched have a linear relation or a nonlinear relation.
For example, when the handle is moved in a change in the X-axis of the handle coordinate system. Accordingly, the end effector also moves on the X-axis of the apparatus-side coordinate system. Preferably, the amount of movement of the end effector may be proportional to the amount of movement of the handle in the X-axis of the handle coordinate system.
In one embodiment, mapping the hand pose adjustment amount in the hand coordinate system to a pose adjustment amount of the robot end effector operating the work object in the device-side coordinate system includes:
when the coordinate origin of the equipment side coordinate system is changed, the posture adjustment amount of the robot end effector and the posture adjustment amount of the handle after the equipment side coordinate system is switched to the new coordinate origin have a linear relation or a nonlinear relation.
For example, when the handle is gestured (rotated) in the Z-axis of the handle coordinate system. Accordingly, the end effector is also subjected to attitude adjustment (rotation) on the Z-axis of the apparatus-side coordinate system. Preferably, the attitude adjustment amount of the end effector may be proportional to the amount of movement of the handle in the X-axis of the handle coordinate system.
In one embodiment, the method further comprises: determining the current posture of the robot end effector based on the posture adjustment amount of the robot end effector and the historical posture of the robot end effector before the coordinate origin is changed; or determining a current pose of the robotic end effector based on the pose adjustment amount of the robotic end effector and a predetermined default pose of the robotic end effector.
For example, when the rotation angle of the handle on the Z-axis of the handle coordinate system is 15 degrees, the posture adjustment amount of the robot end effector is 15 degrees accordingly. If the historical attitude of the robot end effector is 30 degrees, the final attitude of the robot end effector is 45 degrees.
For another example, when the rotation angle of the handle on the Z axis of the handle coordinate system is 15 degrees, the posture adjustment amount of the robot end effector is 15 degrees accordingly. And, the default pose of the robot end effector is 0 degrees, and the final pose of the robot end effector is 15 degrees, thereby achieving 1:1 mapping with the handle.
Fig. 4 is an exemplary schematic diagram of a control robot according to an embodiment of the present invention.
As shown in fig. 4, the robot 31 includes an end effector 32; a force and torque sensor 33 mounted on the end effector 32; a probe 34 coupled to the force and torque sensor 33; a controller 35 for adjusting the position of the end effector 32 based on the detection values of the force and torque sensor 33, so that the probe 34 is moved on the target surface area of the object to be measured while maintaining a predetermined contact force or contact torque. During execution of the motion control commands by the robot 31, the force and torque sensor 33 may acquire a contact force and/or a contact torque between the probe 34 and the work piece.
In one embodiment, probe 34 is coupled to force and torque sensor 23 via a first flange, and force and torque sensor 33 is further coupled to end effector 32 via a second flange. The target surface area may be specified in the human machine interface of the controller 35. Alternatively, the controller 35 automatically determines a region having a difference from the contour feature of the peripheral region as the target surface region based on image analysis of the three-dimensional model provided by the photographing component 37. The controller 35 of the robot 31 may control the robot 31 such that the probe 34 on the end effector 32 moves row-by-row or column-by-column over the target surface area, wherein the force and torque sensor 33 detects a current value of a contact force or a current value of a contact torque between the probe 34 and the surface of the target surface area. The controller 35 controls the position of the robot's end effector 32 in a feedback control manner based on the difference between the current value of the contact force or contact torque and the predetermined contact force or contact torque to attempt to maintain the probe 34 on the end effector 32 in contact with the target surface area with the predetermined contact force or contact torque. When there is a change in the target surface area (e.g., a bump or a depression), the position of end-effector 32 needs to be adjusted accordingly in order for probe 34 to maintain a predetermined contact force or contact torque. Therefore, the position adjustment amount of the end effector 32 can reflect the amount of change on the surface of the object to be measured. Accordingly, controller 35 may determine profile data for the target surface area based on the amount of positional adjustment of end effector 32 during movement of probe 34 over the target surface area and update the corresponding region in the three-dimensional model of the object to be measured based on the profile data for the target surface area.
Fig. 5 is a control flow chart of force and torque according to the embodiment of the present invention.
As shown in fig. 5, a predetermined contact force and a desired Value of the contact torque (Value1) are input to the arithmetic unit 501. Also, the force and torque sensor 505 disposed at the end effector acquires an actual Value (Value2) of the contact force and/or the contact torque between the end effector and the work, which is inputted to the operator 501. In the operator 501, the difference between the expected value and the actual value is calculated, and the difference is input to the PID adjusting module 502 to perform PID adjustment. The kinematics conversion module 503 performs kinematics conversion (kinematics conversion) operation on the PID adjustment result output by the PID adjustment module 502. The position and orientation adjustment module 504 adjusts the position and orientation of the robot based on the operation result of the kinematics conversion module 503, thereby changing the contact force and/or the contact torque detected by the force and torque sensor 505.
Fig. 6 is a block diagram showing the structure of a device for controlling a robot according to the embodiment of the present invention.
As shown in fig. 6, the apparatus 600 for controlling a robot includes:
an apparatus-side coordinate system establishing module 601, configured to establish an apparatus-side coordinate system, where the apparatus-side coordinate system includes a first coordinate axis coinciding with a surface normal of a work object;
the acquisition module 602 is configured to acquire a handle position movement amount and/or a handle posture adjustment amount in a handle coordinate system;
a mapping module 603 configured to map a handle position movement amount in the handle coordinate system to a position movement amount of the robot end effector operating the work object in the device-side coordinate system, and/or map a handle posture adjustment amount in the handle coordinate system to a posture adjustment amount of the robot end effector operating the work object in the device-side coordinate system, wherein a predetermined contact force and/or contact torque between the robot end effector and the work object is maintained on a first coordinate axis of the device-side coordinate system.
In one embodiment, the device-side coordinate system further includes a second coordinate axis and a third coordinate axis perpendicular to the first coordinate axis, respectively, where the second coordinate axis is a mapping of an X-axis in the tool coordinate system on a normal plane of the first coordinate axis, and the third coordinate axis is determined based on a cross product of the first coordinate axis and the second coordinate axis.
In one embodiment, the handle position movement amount includes an X-axis value of a handle coordinate system and a Y-axis value of the handle coordinate system, and the handle posture adjustment amount includes an RX value of the handle coordinate system, a RY value of the handle coordinate system, and an RZ value of the handle coordinate system, where RX is an angle of rotation of the handle about the X-axis of the handle coordinate system, RY is an angle of rotation of the handle about the Y-axis of the handle coordinate system, and RZ is an angle of rotation of the handle about the Z-axis of the handle coordinate system.
In one embodiment, the mapping module 603 is configured to, when the coordinate origin of the device-side coordinate system changes, make a linear relationship or a non-linear relationship between a position movement amount of the robot end effector and a position movement amount of the handle after switching to a new coordinate origin.
In one embodiment, the mapping module 603 is configured to, when the coordinate origin of the device-side coordinate system changes, have a linear relationship or a non-linear relationship between the posture adjustment amount of the robot end effector and the posture adjustment amount of the handle after switching to a new coordinate origin.
In one embodiment, the mapping module 603 is further configured to determine a current pose of the robot end effector based on the pose adjustment amount of the robot end effector and a historical pose of the robot end effector before the coordinate origin is changed; or determining a current pose of the robotic end effector based on the pose adjustment amount of the robotic end effector and a predetermined default pose of the robotic end effector.
Fig. 7 is a block diagram of an apparatus for controlling a robot having a memory-processor architecture according to an embodiment of the present invention.
As shown in fig. 7, the apparatus 700 includes a processor 701 and a memory 702;
the memory 702 has stored therein an application program executable by the processor 801 for causing the processor 701 to perform the method 100 of controlling a robot as shown in fig. 1.
The memory 702 may be embodied as various storage media such as an Electrically Erasable Programmable Read Only Memory (EEPROM), a Flash memory (Flash memory), and a Programmable Read Only Memory (PROM). The processor 701 may be implemented to include one or more central processors or one or more field programmable gate arrays, wherein the field programmable gate arrays integrate one or more central processor cores. In particular, the central processor or central processor core may be implemented as a CPU or MCU.
It should be noted that not all steps and modules in the above flows and structures are necessary, and some steps or modules may be omitted according to actual needs. The execution order of the steps is not fixed and can be adjusted as required. The division of each module is only for convenience of describing adopted functional division, and in actual implementation, one module may be divided into multiple modules, and the functions of multiple modules may also be implemented by the same module, and these modules may be located in the same device or in different devices.
The hardware modules in the various embodiments may be implemented mechanically or electronically. For example, a hardware module may include a specially designed permanent circuit or logic device (e.g., a special purpose processor such as an FPGA or ASIC) for performing specific operations. A hardware module may also include programmable logic devices or circuits (e.g., including a general-purpose processor or other programmable processor) that are temporarily configured by software to perform certain operations. The implementation of the hardware module in a mechanical manner, or in a dedicated permanent circuit, or in a temporarily configured circuit (e.g., configured by software) may be determined by cost and time considerations.
The invention also provides a machine-readable storage medium storing instructions for causing a machine to perform a method as described herein. Specifically, a system or an apparatus equipped with a storage medium on which a software program code that realizes the functions of any of the embodiments described above is stored may be provided, and a computer (or a CPU or MPU) of the system or the apparatus is caused to read out and execute the program code stored in the storage medium. Further, part or all of the actual operations may be performed by an operating system or the like operating on the computer by instructions based on the program code. The functions of any of the above-described embodiments may also be implemented by writing the program code read out from the storage medium to a memory provided in an expansion board inserted into the computer or to a memory provided in an expansion unit connected to the computer, and then causing a CPU or the like mounted on the expansion board or the expansion unit to perform part or all of the actual operations based on the instructions of the program code.
Examples of the storage medium for supplying the program code include floppy disks, hard disks, magneto-optical disks, optical disks (e.g., CD-ROMs, CD-R, CD-RWs, DVD-ROMs, DVD-RAMs, DVD-RWs, DVD + RWs), magnetic tapes, nonvolatile memory cards, and ROMs. Alternatively, the program code may be downloaded from a server computer or the cloud by a communication network.
The above description is only a preferred embodiment of the present invention, and is not intended to limit the scope of the present invention. Any modification, equivalent replacement, or improvement made within the spirit and principle of the present invention should be included in the protection scope of the present invention.
Claims (14)
1. A method (100) of controlling a robot, comprising:
establishing an apparatus-side coordinate system, wherein the apparatus-side coordinate system comprises a first coordinate axis (101) coinciding with a surface normal of a work object;
collecting the handle position movement amount and/or the handle posture adjustment amount (102) in a handle coordinate system;
mapping a handle position movement amount in the handle coordinate system to a position movement amount of a robot end effector in the device-side coordinate system that operates the work object, and/or mapping a handle posture adjustment amount in the handle coordinate system to a posture adjustment amount of the robot end effector in the device-side coordinate system that operates the work object, wherein a predetermined contact force and/or contact moment between the robot end effector and the work object is maintained on a first coordinate axis of the device-side coordinate system (103).
2. The method (100) of controlling a robot according to claim 1, wherein the device-side coordinate system further comprises a second coordinate axis and a third coordinate axis perpendicular to the first coordinate axis, respectively, wherein the second coordinate axis is a mapping of an X-axis in a tool coordinate system on a normal plane to the first coordinate axis, and the third coordinate axis is determined based on a cross product of the first coordinate axis and the second coordinate axis.
3. The method (100) of controlling a robot of claim 1, wherein the grip position movement amount includes an X-axis value of a grip coordinate system and a Y-axis value of the grip coordinate system, and the grip posture adjustment amount includes an RX value of the grip coordinate system, a RY value of the grip coordinate system, and an RZ value of the grip coordinate system, wherein RX is an angle of rotation of the grip around an X-axis of the grip coordinate system, RY is an angle of rotation of the grip around a Y-axis of the grip coordinate system, and RZ is an angle of rotation of the grip around a Z-axis of the grip coordinate system.
4. Method of controlling a robot (100) according to claim 3,
the mapping of the grip position movement amount in the grip coordinate system to the position movement amount of the robot end effector operating the work object in the apparatus-side coordinate system includes:
when the coordinate origin of the equipment side coordinate system is changed, the position movement amount of the robot end effector and the position movement amount of the handle after the new coordinate origin is switched have a linear relation or a nonlinear relation.
5. A method (100) of controlling a robot according to claim 3,
the mapping of the hand pose adjustment amount in the hand coordinate system to the pose adjustment amount of the robot end effector operating the work object in the device-side coordinate system includes:
when the coordinate origin of the equipment side coordinate system is changed, the posture adjustment amount of the robot end effector and the posture adjustment amount of the handle after the equipment side coordinate system is switched to the new coordinate origin have a linear relation or a nonlinear relation.
6. The method (100) of controlling a robot of claim 5, further comprising:
determining the current posture of the robot end effector based on the posture adjustment amount of the robot end effector and the historical posture of the robot end effector before the coordinate origin is changed; or
Determining a current pose of the robotic end effector based on the pose adjustment amount of the robotic end effector and a predetermined default pose of the robotic end effector.
7. An apparatus (600) for controlling a robot, comprising:
an apparatus-side coordinate system establishing module (601) configured to establish an apparatus-side coordinate system, wherein the apparatus-side coordinate system includes a first coordinate axis coinciding with a surface normal of a work object;
the acquisition module (602) is used for acquiring the handle position movement amount and/or the handle posture adjustment amount in a handle coordinate system;
a mapping module (603) for mapping a handle position movement amount in the handle coordinate system to a position movement amount of a robot end effector in the device-side coordinate system operating the work object, and/or mapping a handle posture adjustment amount in the handle coordinate system to a posture adjustment amount of the robot end effector in the device-side coordinate system operating the work object, wherein a predetermined contact force and/or contact torque between the robot end effector and the work object is maintained on a first coordinate axis of the device-side coordinate system.
8. The device (600) for controlling a robot according to claim 7, wherein the apparatus-side coordinate system further comprises a second coordinate axis and a third coordinate axis perpendicular to the first coordinate axis, respectively, wherein the second coordinate axis is a mapping of an X-axis in a tool coordinate system on a normal plane to the first coordinate axis, and the third coordinate axis is determined based on a cross product of the first coordinate axis and the second coordinate axis.
9. The apparatus (600) for controlling a robot according to claim 7, wherein the grip position movement amount includes an X-axis value of a grip coordinate system and a Y-axis value of the grip coordinate system, and the grip posture adjustment amount includes an RX value of the grip coordinate system, a RY value of the grip coordinate system, and an RZ value of the grip coordinate system, wherein RX is an angle of rotation of the grip around an X-axis of the grip coordinate system, RY is an angle of rotation of the grip around a Y-axis of the grip coordinate system, and RZ is an angle of rotation of the grip around a Z-axis of the grip coordinate system.
10. The device (600) for controlling a robot according to claim 9,
the mapping module (603) is used for enabling the position moving amount of the robot end effector and the position moving amount of the handle after the coordinate origin of the equipment side coordinate system is switched to a new coordinate origin to have a linear relation or a nonlinear relation when the coordinate origin of the equipment side coordinate system is changed.
11. The device (600) for controlling a robot according to claim 9,
the mapping module (603) is used for enabling the attitude adjustment quantity of the robot end effector and the attitude adjustment quantity of the handle after the equipment side coordinate system is switched to a new coordinate origin to have a linear relation or a nonlinear relation when the coordinate origin of the equipment side coordinate system is changed.
12. The device (600) for controlling a robot according to claim 11,
the mapping module (603) is further configured to determine a current pose of the robot end effector based on the pose adjustment amount of the robot end effector and a historical pose of the robot end effector before the coordinate origin is changed; or determining a current pose of the robotic end effector based on the pose adjustment amount of the robotic end effector and a predetermined default pose of the robotic end effector.
13. An apparatus (700) for controlling a robot, comprising: a memory (701); a processor (702); wherein the memory (701) has stored therein an application program executable by the processor (702) for causing the processor (702) to perform the method (100) of controlling a robot according to any of claims 1 to 6.
14. A computer-readable storage medium, characterized in that the computer-readable storage medium has stored thereon a computer program which, when being executed by a processor, carries out the method (100) of controlling a robot according to any one of the claims 1 to 6.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011189454.XA CN114434436A (en) | 2020-10-30 | 2020-10-30 | Method and device for controlling robot and computer readable storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011189454.XA CN114434436A (en) | 2020-10-30 | 2020-10-30 | Method and device for controlling robot and computer readable storage medium |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114434436A true CN114434436A (en) | 2022-05-06 |
Family
ID=81358304
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011189454.XA Pending CN114434436A (en) | 2020-10-30 | 2020-10-30 | Method and device for controlling robot and computer readable storage medium |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114434436A (en) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5129044A (en) * | 1988-03-01 | 1992-07-07 | Hitachi Construction Machinery Co., Ltd. | Position/force controlling apparatus for working machine with multiple of degrees of freedom |
CN106938470A (en) * | 2017-03-22 | 2017-07-11 | 华中科技大学 | A kind of device and method of Robot Force control teaching learning by imitation |
CN109084722A (en) * | 2018-06-20 | 2018-12-25 | 华中科技大学 | A kind of adaptively sampled complex-curved contact measurement method |
CN109483556A (en) * | 2018-10-30 | 2019-03-19 | 武汉大学 | A kind of robot polishing system and method based on learning from instruction |
CN110281108A (en) * | 2019-06-18 | 2019-09-27 | 蓝点触控(北京)科技有限公司 | A kind of robot flexibility intelligence polishing system based on six-dimension force sensor |
US20190381659A1 (en) * | 2018-06-13 | 2019-12-19 | Siemens Healthcare Gmbh | Method for operating a robot, data memory with corresponding program code, robot, and robot system |
WO2020094879A1 (en) * | 2018-11-08 | 2020-05-14 | Franka Emika Gmbh | Robot and method for determining a movement space by means of a robot |
-
2020
- 2020-10-30 CN CN202011189454.XA patent/CN114434436A/en active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5129044A (en) * | 1988-03-01 | 1992-07-07 | Hitachi Construction Machinery Co., Ltd. | Position/force controlling apparatus for working machine with multiple of degrees of freedom |
CN106938470A (en) * | 2017-03-22 | 2017-07-11 | 华中科技大学 | A kind of device and method of Robot Force control teaching learning by imitation |
US20190381659A1 (en) * | 2018-06-13 | 2019-12-19 | Siemens Healthcare Gmbh | Method for operating a robot, data memory with corresponding program code, robot, and robot system |
CN109084722A (en) * | 2018-06-20 | 2018-12-25 | 华中科技大学 | A kind of adaptively sampled complex-curved contact measurement method |
CN109483556A (en) * | 2018-10-30 | 2019-03-19 | 武汉大学 | A kind of robot polishing system and method based on learning from instruction |
WO2020094879A1 (en) * | 2018-11-08 | 2020-05-14 | Franka Emika Gmbh | Robot and method for determining a movement space by means of a robot |
CN110281108A (en) * | 2019-06-18 | 2019-09-27 | 蓝点触控(北京)科技有限公司 | A kind of robot flexibility intelligence polishing system based on six-dimension force sensor |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101479233B1 (en) | Robot and method for controlling cooperative task of the same | |
CN106826769B (en) | A kind of quick teaching apparatus of industrial robot and its implementation | |
US11040451B2 (en) | Teaching device and teaching method | |
Siradjuddin et al. | A position based visual tracking system for a 7 DOF robot manipulator using a Kinect camera | |
JP2011011321A (en) | Robot system and calibration method for the same | |
Li et al. | A hybrid visual servo control method for simultaneously controlling a nonholonomic mobile and a manipulator | |
CN108687758B (en) | Moving speed control device and method for robot | |
WO2017088888A1 (en) | Robot trajectory or path learning by demonstration | |
CN113319848B (en) | Robot control method and robot system | |
CN116423526B (en) | Automatic calibration method and system for mechanical arm tool coordinates and storage medium | |
CN114536346B (en) | Mechanical arm accurate path planning method based on man-machine cooperation and visual detection | |
CN111515928A (en) | Mechanical arm motion control system | |
KR101205363B1 (en) | Method and apparatus for controlling 4-degree of freedom robot using 6-degree of freedom controller | |
CN113858189A (en) | Robot control method and robot system | |
US11964391B2 (en) | Robot system | |
CN115135466A (en) | Burr removing device and control system | |
US20230286143A1 (en) | Robot control in working space | |
US11878423B2 (en) | Robot system | |
CN109605140B (en) | Cutter edging method based on machine vision and six-axis mechanical arm with force control function | |
CN114434436A (en) | Method and device for controlling robot and computer readable storage medium | |
JPH05345291A (en) | Working area limitation for robot | |
Wisanuvej et al. | Hands-on reconfigurable robotic surgical instrument holder arm | |
JP5447150B2 (en) | Robot control device and method for controlling robot | |
JPH05303425A (en) | Direct teaching type robot | |
CN114714358A (en) | Method and system for teleoperation of mechanical arm based on gesture protocol |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |