CN113733098A - Mechanical arm model pose calculation method and device, electronic equipment and storage medium - Google Patents

Mechanical arm model pose calculation method and device, electronic equipment and storage medium Download PDF

Info

Publication number
CN113733098A
CN113733098A CN202111145018.7A CN202111145018A CN113733098A CN 113733098 A CN113733098 A CN 113733098A CN 202111145018 A CN202111145018 A CN 202111145018A CN 113733098 A CN113733098 A CN 113733098A
Authority
CN
China
Prior art keywords
pose
mechanical arm
model
theoretical
parameters
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.)
Granted
Application number
CN202111145018.7A
Other languages
Chinese (zh)
Other versions
CN113733098B (en
Inventor
刘强
陈龙
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wuhan United Imaging Zhirong Medical Technology Co Ltd
Original Assignee
Wuhan United Imaging Zhirong Medical Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Wuhan United Imaging Zhirong Medical Technology Co Ltd filed Critical Wuhan United Imaging Zhirong Medical Technology Co Ltd
Priority to CN202111145018.7A priority Critical patent/CN113733098B/en
Publication of CN113733098A publication Critical patent/CN113733098A/en
Application granted granted Critical
Publication of CN113733098B publication Critical patent/CN113733098B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/163Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Manipulator (AREA)
  • Numerical Control (AREA)

Abstract

The application relates to a method and a device for calculating pose of a mechanical arm model, electronic equipment and a storage medium, wherein the method comprises the following steps: acquiring the TCP (transmission control protocol) pose at the tail end of the mechanical arm; and determining the pose of the mechanical arm model based on the terminal TCP pose, the theoretical DH parameters and the calibrated DH parameters of the mechanical arm. Through the method and the device, the flange pose at the tail end of the mechanical arm is consistent with that of the real mechanical arm, and meanwhile, the middle connecting rods of the mechanical arm are not subjected to position deviation, so that the mechanical arm model is more accurate in path planning collision detection and 3D rendering of scenes.

Description

Mechanical arm model pose calculation method and device, electronic equipment and storage medium
Technical Field
The application relates to the technical field of robots, in particular to a method and a device for calculating pose of a mechanical arm model, electronic equipment and a storage medium.
Background
Usually, a corresponding scene model needs to be established when the mechanical arm path planning is performed, and the precision error between the established scene model and a real scene affects the result output by the mechanical arm path planning algorithm. Generally, when a mechanical arm output path is planned, the requirement that the mechanical arm does not collide with the environment when moving along the current path is met, and therefore the established mechanical arm collision detection model is required to be consistent with the mechanical arm in a real scene. At the moment, the pose deviation of each connecting rod model of the mechanical arm needs to be corrected by combining the theoretical DH parameters, or the pose of each connecting rod of the robot model can be calculated by using the actual DH parameters if the difference between the calibrated DH parameters and the theoretical DH parameters is not large.
However, due to the introduction of the absolute positioning accuracy error of the mechanical arm, the mechanical arm collision detection model established by using the theoretical DH parameter has a certain difference from the pose of the mechanical arm end flange in a real scene, and the end flange accuracy is low. The mechanical arm collision detection model established based on the actually calibrated DH parameters can only ensure the pose precision of the mechanical arm tail end flange, and DH error compensation parameters between the calibrated DH parameters and theoretical DH parameters are large, so that the middle connecting rod model is scattered due to the deviation of a joint coordinate system.
Disclosure of Invention
The embodiment of the application provides a method and a device for calculating the pose of a mechanical arm model, electronic equipment and a storage medium, and at least solves the problem that the pose of each connecting rod cannot be deviated while the accuracy of a tail end flange cannot be guaranteed in the related technology.
In a first aspect, an embodiment of the present application provides a method for calculating a pose of a robot model, including:
acquiring the TCP (transmission control protocol) pose at the tail end of the mechanical arm;
and determining the pose of the mechanical arm model based on the terminal TCP pose, the theoretical DH parameters and the calibrated DH parameters of the mechanical arm.
In some embodiments, determining the pose of the model of the robot arm based on the tip TCP pose, the theoretical DH parameters of the robot arm, and the calibrated DH parameters comprises:
performing closed inverse solution calculation based on the terminal TCP pose and the theoretical DH parameters to obtain the theoretical joint configuration of each connecting rod of the mechanical arm;
and obtaining the pose of the mechanical arm model according to the theoretical joint configuration of each connecting rod, the calibrated DH parameters and the terminal TCP pose.
In some of these embodiments, acquiring the end-of-arm TCP pose comprises:
and calculating by using the calibrated DH parameters to obtain the terminal TCP pose of the mechanical arm based on the joint configuration data.
In some embodiments, performing closed inverse solution calculation based on the terminal TCP pose and the theoretical DH parameter to obtain the theoretical joint configuration of each link of the mechanical arm includes:
establishing a forward kinematics model based on a theoretical DH parameter of a mechanical arm;
determining a pose transformation equation of each connecting rod of the mechanical arm between a model derived reference coordinate system and a base coordinate system according to the forward kinematics model;
and calculating the theoretical joint configuration of each connecting rod of the mechanical arm according to the terminal TCP pose and the pose transformation equation.
In some of these embodiments, determining, from the forward kinematics model, a pose transformation equation for each link of the robotic arm between a model-derived reference frame and a base frame comprises:
calculating a first attitude transformation matrix of each connecting rod local coordinate system relative to the base coordinate system according to the forward kinematics model;
acquiring a second attitude transformation matrix of the model derived reference coordinate system relative to the local coordinate system of each connecting rod;
and establishing a pose transformation equation of each connecting rod of the mechanical arm between a model derived reference coordinate system and a base coordinate system based on the first pose transformation matrix and the second pose transformation matrix.
In some embodiments, obtaining the pose of the manipulator model according to the theoretical joint configuration of each link, the calibrated DH parameters and the terminal TCP pose comprises:
fine adjustment correction is carried out on the theoretical joint configuration obtained through inverse solution according to the terminal TCP pose and the calibrated DH parameters, and actual joint configurations of all connecting rods are obtained;
and obtaining the pose of the mechanical arm model according to the actual joint configuration of each connecting rod and the terminal TCP pose.
In some embodiments, the fine tuning and correcting the theoretical joint configuration obtained by the inverse solution according to the terminal TCP pose and the calibrated DH parameter, and obtaining the actual joint configuration of each link includes:
and taking the theoretical joint configuration obtained by the inverse solution as the input of an iterative algorithm, performing iterative computation on the theoretical joint configuration by using the calibrated DH parameter and the terminal TCP pose, and taking the joint configuration meeting the preset precision requirement after iteration as the actual joint configuration of each connecting rod.
In a second aspect, an embodiment of the present application provides a robot model pose calculation apparatus, including:
the tail end TCP pose acquisition unit is used for acquiring a tail end TCP pose of the mechanical arm;
and the pose calculation unit is used for determining the pose of the mechanical arm model based on the terminal TCP pose, the theoretical DH parameters of the mechanical arm and the calibrated DH parameters.
In a third aspect, an embodiment of the present application provides a computer device, which includes a memory, a processor, and a computer program stored in the memory and executable on the processor, and the processor, when executing the computer program, implements the robot arm model pose calculation method according to the first aspect.
In a fourth aspect, embodiments of the present application provide a computer-readable storage medium on which a computer program is stored, the program, when executed by a processor, implementing the robot arm model pose calculation method according to the first aspect.
Compared with the related art, the method for calculating the pose of the mechanical arm model provided by the embodiment of the application obtains the terminal TCP pose of the mechanical arm; the pose of the mechanical arm model is determined based on the terminal TCP pose, the theoretical DH parameters and the calibrated DH parameters of the mechanical arm, and the pose of the mechanical arm terminal flange and the pose of each connecting rod are accurately set by combining the theoretical DH parameters and the actual DH parameters, so that the position deviation of each connecting rod in the middle of the mechanical arm is avoided while the pose of the mechanical arm terminal flange is consistent with that of the real mechanical arm, and the mechanical arm model is more accurate in path planning collision detection and 3D rendering of a scene.
The details of one or more embodiments of the application are set forth in the accompanying drawings and the description below to provide a more thorough understanding of the application.
Drawings
The accompanying drawings, which are included to provide a further understanding of the application and are incorporated in and constitute a part of this application, illustrate embodiment(s) of the application and together with the description serve to explain the application and not to limit the application. In the drawings:
FIG. 1 is a schematic flow chart of a pose calculation method for a robot arm model according to an embodiment of the present application;
FIG. 2 is a diagram of an initial pose of a mechanical arm link visualized by calculation based on a calibrated DH parameter according to an embodiment of the present invention;
FIG. 3 is a diagram illustrating the initial pose of a mechanical arm linkage visualized by calculation based on the theoretical DH parameters in one embodiment;
FIG. 4 is a diagram illustrating any pose of a mechanical arm linkage visualized by calculation based on theoretical DH parameters in one embodiment;
FIG. 5 is a schematic flow chart of determining the pose of a model of a robotic arm in one embodiment of the present application;
FIG. 6 is a block diagram showing the construction of a robot arm model pose calculation apparatus according to an embodiment of the present application;
fig. 7 is a schematic structural diagram of a computer device in one embodiment of the present application.
Description of the drawings: 201. a terminal TCP pose acquisition unit; 202. a pose calculation unit; 30. a bus; 31. a processor; 32. a memory; 33. a communication interface.
Detailed Description
In order to make the objects, technical solutions and advantages of the present application more apparent, the present application will be described and illustrated below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative of the present application and are not intended to limit the present application. All other embodiments obtained by a person of ordinary skill in the art based on the embodiments provided in the present application without any inventive step are within the scope of protection of the present application.
It is obvious that the drawings in the following description are only examples or embodiments of the present application, and that it is also possible for a person skilled in the art to apply the present application to other similar contexts on the basis of these drawings without inventive effort. Moreover, it should be appreciated that in the development of any such actual implementation, as in any engineering or design project, numerous implementation-specific decisions must be made to achieve the developers' specific goals, such as compliance with system-related and business-related constraints, which may vary from one implementation to another.
Reference in the specification to "an embodiment" means that a particular feature, structure, or characteristic described in connection with the embodiment can be included in at least one embodiment of the specification. The appearances of the phrase in various places in the specification are not necessarily all referring to the same embodiment, nor are separate or alternative embodiments mutually exclusive of other embodiments. Those of ordinary skill in the art will explicitly and implicitly appreciate that the embodiments described herein may be combined with other embodiments without conflict.
Unless defined otherwise, technical or scientific terms referred to herein shall have the ordinary meaning as understood by those of ordinary skill in the art to which this application belongs. Reference to "a," "an," "the," and similar words throughout this application are not to be construed as limiting in number, and may refer to the singular or the plural. The present application is directed to the use of the terms "including," "comprising," "having," and any variations thereof, which are intended to cover non-exclusive inclusions; for example, a process, method, system, article, or apparatus that comprises a list of steps or modules (elements) is not limited to the listed steps or elements, but may include other steps or elements not expressly listed or inherent to such process, method, article, or apparatus. Reference to "connected," "coupled," and the like in this application is not intended to be limited to physical or mechanical connections, but may include electrical connections, whether direct or indirect. The term "plurality" as referred to herein means two or more. "and/or" describes an association relationship of associated objects, meaning that three relationships may exist, for example, "A and/or B" may mean: a exists alone, A and B exist simultaneously, and B exists alone. The character "/" generally indicates that the former and latter associated objects are in an "or" relationship. Reference herein to the terms "first," "second," "third," and the like, are merely to distinguish similar objects and do not denote a particular ordering for the objects.
The pose calculation method of the manipulator model provided by the embodiment can be applied to joint robots with multiple degrees of freedom, such as manipulators, industrial robots and the like, and can also be applied to wheeled and tracked mobile robots, and the method is not limited in the application. The path planning of the mechanical arm is one of core research contents of the robot, and means that for a certain mechanical arm, when a starting point and an end point are given, a path which meets constraints and has low cost is calculated, so that the mechanical arm can move from the starting point to the end point without collision.
When the mechanical arm path planning is performed, a corresponding scene model needs to be established, and the accuracy error between the established scene model and a real scene influences the output result of the mechanical arm path planning algorithm. The path output by planning is required to output an optimal or suboptimal path which bypasses all obstacles from a starting point to a target point without collision according to a given instruction and environmental information and according to a certain performance index. The requirement is that the mechanical arm collision detection model established by the user must be consistent with the mechanical arm in a real scene so as to calculate and obtain accurate mechanical arm pose data and realize effective mechanical arm path planning.
The embodiment provides a method for calculating the pose of a mechanical arm model. Fig. 1 is a flowchart of a robot arm model pose calculation method according to an embodiment of the present application, where the flowchart includes the following steps, as shown in fig. 1:
and step S11, acquiring the terminal TCP pose of the mechanical arm.
The mechanical arm is composed of a series of joint connecting rods and is an open-loop space connecting rod mechanism, and the tail end can reach different space positions and postures through the relative position change, speed change and acceleration change of each connecting rod, so that the expected working requirement is met.
The problem of inverse kinematics of the joint type mechanical arm is that under the condition that the position and the posture of a coordinate system of an end effector of the mechanical arm relative to a base coordinate system and geometric parameters of joints of the mechanical arm are given, the rotation angle values of the joints of the mechanical arm are obtained, and the process is the inverse process of the forward kinematics. In this embodiment, a TCP (Tool Center Point, TCP) pose includes a position and a posture of a Center Point of a Tool at a terminal of the mechanical arm, and a corresponding joint link variable can be calculated by using inverse solution of kinematics of the robot and knowing the TCP pose at the terminal of the mechanical arm. The tail end of the mechanical arm refers to the central point of a flange plate, a gripper and other tail end tools of the mechanical arm.
In some embodiments, acquiring the end-of-arm TCP pose comprises: and calculating by using the calibrated DH parameters to obtain the terminal TCP pose of the mechanical arm based on the joint configuration data.
In the embodiment, a real motion scene is simulated based on designed mechanical arm model data, and whether a certain configuration of the mechanical arm collides with the environment is calculated through a collision detection algorithm, so that the function of early warning is realized. However, when the designed model data is applied to a real mechanical arm, because the theoretical DH parameter is constructed according to the mechanical arm design drawing data of a manufacturer, in consideration of the actual mechanical arm manufacturing and assembling and the absolute positioning error introduced by the mechanical arm self long-term load kinematic wear, the terminal TCP pose of the mechanical arm collision detection model constructed based on the theoretical DH parameter has a certain difference from the terminal TCP pose of the mechanical arm in a real scene, and there is a collision detection precision problem.
In order to meet the requirement of motion precision of the TCP at the tail end of the mechanical arm, the actual mechanical arm needs to be calibrated by the kinematic parameters of the TCP, that is, the kinematic parameters are calibrated. In actual project application, in order to ensure the accuracy of the TCP at the tail end of the mechanical arm, a calibrated DH parameter is used for establishing a kinematic model of the mechanical arm. Therefore, the forward kinematics result of each connecting rod coordinate system is calculated based on the joint configuration data and the kinematics model, and the tail end TCP pose of the mechanical arm is obtained. Based on the joint configuration data, the calibrated DH parameters are used to calculate the terminal TCP pose of the mechanical arm, which may use the prior art in the field, and is not described herein any further. The calibrated DH parameters are real DH parameters obtained through calibration, a user can obtain the calibrated DH parameters of the real mechanical arm when the real mechanical arm leaves a factory by correspondingly superposing DH compensation parameters and theoretical DH parameters, the DH compensation parameters are differences between the calibrated DH parameters of the real mechanical arm and the corresponding theoretical DH parameters, and the calibrated DH compensation parameters are obtained through calculation after a large amount of terminal TCP (transmission control protocol) position and posture data of the real mechanical arm are collected through a kinematics calibration algorithm.
It should be noted that the calibrated DH parameters can only be used on the calibrated robot arm, and other robot arms cannot use the calibrated DH parameters, because the actual calibrated DH parameters of different robot arms are different, the kinematics parameter calibration is performed when each robot arm leaves the factory, and the calibration result is written in the corresponding robot arm controller. The position and orientation accuracy of the TCP cannot be calibrated by using DH compensation parameters which are not matched with the mechanical arm, otherwise, the calculation result is unreliable.
Of course, in other embodiments, the acquiring of the TCP pose of the end of the mechanical arm may also be performed by giving a known TCP pose of the end of the mechanical arm, which is not specifically limited herein.
And step S12, determining the pose of the mechanical arm model based on the terminal TCP pose, the theoretical DH parameters of the mechanical arm and the calibrated DH parameters.
In this embodiment, the poses of the robot arm model include the poses of the end TCP of the robot arm and the poses of the intermediate links of the robot arm.
Fig. 2 shows a visualized initial pose graph of the mechanical arm link calculated based on the calibrated DH parameters. As can be seen from FIG. 2, based on the calibrated DH parameters, only the terminal TCP pose can be guaranteed to be accurate, and the pose data of the middle connecting rods generate large position offset. Therefore, it is not available to calculate the pose of each link of the robot arm in any configuration purely based on the calibrated DH parameters. The theoretical DH parameter values and the corresponding calibrated DH parameter values are shown below using the UR3 robot arm as an example:
theoretical DH parameter values:
name="Joint1"alpha="90"a="0"d="0.1519"offset="0"
name="Joint2"alpha="0"a="-0.24365"d="0"offset="0"
name="Joint3"alpha="0"a="-0.21325"d="0"offset="0"
name="Joint4"alpha="90"a="0"d="0.1104"offset="0"
name="Joint5"alpha="-90"a="0"d="0.0834"offset="0"
name="TCP"alpha="0"a="0"d="0.0824"offset="0"
calibrating a DH parameter value:
name="Joint1"alpha="89.9641"a="1.85428e-05"d="0.151844"offset="-0.0028954"
name="Joint2"alpha="-0.09572"a="-0.243232"d="8.16505"offset="-3.2157"
name="Joint3"alpha="0.231201"a="-0.211684"d="-14.4282"offset="-3.59907"
name="Joint4"alpha="89.9789"a="-9.66541e-06"d="6.37358"offset="6.8076"
name="Joint5"alpha="-89.99"a="-2.9341e-05"d="0.0833601"offset="0.00325911"
name="TCP"alpha="0"a="0"d="0.0824"offset="0"
therefore, the reason why the position and orientation data of the middle connecting rods are subjected to position deviation is that the value of the d parameter in the calibrated DH parameter of the corresponding mechanical arm after calibration is greatly changed compared with a theoretical value.
Fig. 3 shows a visualized initial pose graph of the mechanical arm link calculated based on the theoretical DH parameters. Fig. 4 shows a visualized any pose graph of the mechanical arm link calculated based on the theoretical DH parameters. As can be seen from fig. 3 to 4, in both the initial configuration of the robot arm and any other joint configuration of the robot arm, each link of the robot arm calculated based on the theoretical DH parameter always rotates around the corresponding joint axis, and the phenomenon of rack scattering does not occur. However, the TCP pose accuracy of the tail end of the mechanical arm calculated by only using the theoretical DH parameters is low. Therefore, in this embodiment, in an actual collision detection application, the theoretical DH and calibrated DH parameters are combined to calculate and set the poses of each link of the mechanical arm and the pose of the TCP at the end of the mechanical arm.
In summary, the pose calculation method of the mechanical arm model provided by the embodiment of the application obtains the terminal TCP pose of the mechanical arm; the pose of the mechanical arm model is determined based on the terminal TCP pose, the theoretical DH parameters and the calibrated DH parameters of the mechanical arm, and the pose of the mechanical arm terminal flange and the pose of each connecting rod are accurately set by combining the theoretical DH parameters and the actual DH parameters, so that the position deviation of each connecting rod in the middle of the mechanical arm is avoided while the pose of the mechanical arm terminal flange is consistent with that of the real mechanical arm, and the mechanical arm model is more accurate in path planning collision detection and 3D rendering of a scene. For example, in some embodiments, theoretical DH parameters may be used to calculate the pose of each middle link in any configuration, and calibrated DH parameters may be used to calculate the TCP pose of the end of the mechanical arm in the corresponding configuration. In other embodiments, the theoretical DH parameters and the calibrated DH parameters may be applied simultaneously to calculate the poses of the middle connecting rods and the end TCP poses in the corresponding configurations, which is not specifically limited herein.
The embodiments of the present application are described and illustrated below by means of preferred embodiments.
On the basis of the above embodiments, in some embodiments, as shown in fig. 5, determining the pose of the robot arm model based on the end TCP pose, the theoretical DH parameter and the calibrated DH parameter of the robot arm includes:
and S121, performing closed inverse solution calculation based on the terminal TCP pose and the theoretical DH parameters to obtain the theoretical joint configuration of each connecting rod of the mechanical arm.
For the same set of mechanical arm joint values, the repeated positioning precision of the industrial mechanical arm is generally high, and the absolute positioning precision is also in the millimeter level. The pose of each middle connecting rod calculated by using the theoretical DH parameters is not greatly different from the pose data of the middle connecting rod of the real mechanical arm, so that the pose of each middle connecting rod configuration calculated by using the theoretical DH parameters is reliable.
Specifically, in this embodiment, based on the theoretical DH parameters, a pose transformation matrix between any connecting rod of the mechanical arm and the robot base coordinate system can be calculated. Therefore, inverse kinematics solution is carried out based on the terminal TCP pose and the pose transformation matrix, and the theoretical joint configuration of each connecting rod of the mechanical arm can be obtained.
And S122, obtaining the pose of the mechanical arm model according to the theoretical joint configuration of each connecting rod, the calibrated DH parameters and the terminal TCP pose.
In this embodiment, the theoretical joint configuration of each intermediate connecting rod calculated based on the theoretical DH parameters has a certain difference from the pose data of each intermediate connecting rod of the real mechanical arm. After the theoretical joint configurations of the connecting rods are obtained, in order to enable the mechanical arm to accurately move to a target position when an inverse solution result is issued to the mechanical arm to be executed, the theoretical joint configurations of the connecting rods of the mechanical arm need to be compensated according to a calibrated DH parameter and/or the terminal TCP pose. In some embodiments, the theoretical joint configuration can be finely adjusted by a numerical iteration algorithm such as a jacobian iteration method according to a given terminal TCP pose and a calibrated DH parameter; in other embodiments, the terminal TCP pose of the mechanical arm may also be obtained by calculation using the calibrated DH parameter based on the joint configuration data, the theoretical joint configuration is finely adjusted by using a numerical iteration algorithm such as a jacobian iteration method according to the calculated terminal TCP pose and the calibrated DH parameter, the theoretical joint configuration is corrected, and the corrected actual joint configuration of each connecting rod is obtained, where the correction method is not specifically limited in this application.
In this embodiment, after obtaining the corrected actual joint configuration of each link, the actual joint configuration is used as the input of the forward kinematics, and the actual pose of each link is calculated. And determining the actual pose of each connecting rod and the terminal TCP pose obtained by calculation as the pose of the mechanical arm model.
On the basis of the above embodiments, in some embodiments, the obtaining of the theoretical joint configuration of each link of the mechanical arm by performing closed inverse solution calculation based on the terminal TCP pose and the theoretical DH parameter includes:
and step S1211, establishing a forward kinematics model based on the theoretical DH parameters of the mechanical arm.
In this embodiment, the theoretical DH parameter is a parameter for geometric modeling of the robot, and mainly includes information such as a link length information and a joint deflection angle of the robot. Specifically, a theoretical DH parameter method is used for establishing a mechanical arm joint coordinate system, a tool coordinate system is established by taking a terminal TCP as an original point, a base coordinate system is established by taking a base center as an original point, and corresponding joint coordinate systems are respectively and independently established by n joints.
And step S1212, determining a pose transformation equation of each connecting rod of the mechanical arm between the model derived reference coordinate system and the base coordinate system according to the forward kinematics model.
In this embodiment, each link of the robot arm may establish a joint coordinate system and a base coordinate system in which the robot arm is fixed on the support base. For a robot with n +1 degrees of freedom, n +1 coordinate systems can be established, and each joint coordinate system is fixed at the tail end of a connecting rod and moves along with the connecting rod. Thus the n joint coordinate systems move with the end tool, and the position and pose of the end tool relative to the base coordinate system can be described by a pose transformation equation between the n coordinate systems.
And calculating the homogeneous coordinate transformation matrixes of the two adjacent coordinate systems, and sequentially right-multiplying the homogeneous coordinate transformation matrixes to obtain the pose matrix of the tool coordinate system to the base coordinate system. Specifically, a first attitude transformation matrix of each connecting rod local coordinate system relative to a base coordinate system is calculated according to a forward kinematics model; acquiring a second attitude transformation matrix of the model derived reference coordinate system relative to the local coordinate system of each connecting rod; and establishing a pose transformation equation of each connecting rod of the mechanical arm between the model derived reference coordinate system and the base coordinate system based on the first pose transformation matrix and the second pose transformation matrix.
Generally speaking, the setting of the overall derived reference coordinate system of the derived model of the mechanical arm may have a certain influence on the pose of the collision detection and the 3D rendering thereof, and the selection of the overall derived reference coordinate system is divided into three cases, namely: 1. the integrally derived reference frame coincides with the base frame of the robot arm, i.e.BaseTDrawableIs a unit array; 2. the derived reference coordinate system Drawable of each link model coincides with the joint coordinate system established on the link; 3. the whole derived reference coordinate system is arranged at will, namely, a fixed pose transformation exists between the derived reference coordinate system and the mechanical arm base coordinate systemBaseTDrawable
First, we analyze case 1, in which case the vertex data of the arm model is calculated as:
Figure BDA0003285136270000091
wherein
Figure BDA0003285136270000092
A pose transformation matrix of the overall derived reference coordinate system relative to the local coordinate system of each connecting rod before the mechanical arm assembly model is derived is a fixed value, namely the inverse of the forward kinematics of each connecting rod when the mechanical arm is in the Home (initial) state is solved;
Figure BDA0003285136270000093
the physical meaning of (1) is to change the current case 1 to the case 2, so that the workload of establishing a coordinate system and respectively deriving for each connecting rod can be saved, and the final calculation resultBaseP denotes that the model vertex data for collision detection and 3D visualization rendering are both described based on the base coordinate system of the robot, thus tightly combining the joint motion of the mechanical arm and the calculation of the vertex position data of the link model. The user can calculate the model pose data of each connecting rod when the corresponding mechanical arm joint angle is theta by calculating the forward kinematics of each connecting rod because
Figure BDA0003285136270000094
Is a fixed value.
Figure BDA0003285136270000095
Forward kinematics built for theoretical DH parametersThe model calculates a pose transformation matrix of each link coordinate system relative to the base coordinate system, where the default is to coincide the base coordinate system of the robot arm with the world coordinate system.
Next, we analyze case 2, in which case the vertex data for the arm model is calculated as:
Figure BDA0003285136270000101
in this case
Figure BDA0003285136270000102
The method is a unit matrix, namely, after a forward kinematics model established based on theoretical DH parameters calculates a forward kinematics result of each connecting rod coordinate system, the forward kinematics result can be directly used for transforming vertex data of a terminal tool read from an STL file, and the calculated result is collision detection and 3D rendering pose of the mechanical arm model.
Finally, we analyze case 3, in which case the vertex data of the arm model is calculated as:
Figure BDA0003285136270000103
in this case, a pose transformation matrix of the reference coordinate system relative to the robot arm base coordinate system is derived by right-hand multiplication on the basis of the case 1, where the global reference coordinate system in the scene is a world coordinate system, and it is assumed that the base coordinate system of the robot arm does not coincide with the world coordinate system, and the model-derived reference coordinate system Drawable coincides with the world coordinate system, which is in accordance with the real scene modeling case. Formula (II)
Figure BDA0003285136270000104
The purpose of the method is to transform the model vertex data described in the world coordinate system into the base coordinate system of the mechanical arm.
And step S1213, calculating the theoretical joint configuration of each connecting rod of the mechanical arm according to the terminal TCP pose and the pose transformation equation.
In this embodiment, the pose transformation equation represents the relationship between the pose of the TCP at the end of the mechanical arm and each joint variable, and the pose of the TCP at the end of the mechanical arm with respect to the base coordinate system can be obtained based on the pose transformation equation. And solving the inverse solution of the kinematics based on the tail end TCP pose and the pose transformation equation, and calculating to obtain the theoretical joint configuration of each connecting rod of the mechanical arm.
On the basis of the above embodiments, in some embodiments, obtaining the pose of the manipulator model according to the theoretical joint configuration of each link, the calibrated DH parameter, and the terminal TCP pose includes:
and S1221, performing fine adjustment correction on the theoretical joint configuration obtained by inverse solution according to the terminal TCP pose and the calibrated DH parameters to obtain the actual joint configuration of each connecting rod.
Specifically, the fine tuning and correction of the theoretical joint configuration obtained by the inverse solution according to the terminal TCP pose and the calibrated DH parameters are carried out, and the actual joint configuration of each connecting rod is obtained by the following steps: and taking the theoretical joint configuration obtained by the inverse solution as the input of an iterative algorithm, performing iterative computation on the theoretical joint configuration by using the calibrated DH parameter and the terminal TCP pose, and taking the joint configuration which meets the preset precision requirement after iteration as the actual joint configuration of each connecting rod.
In this embodiment, the calibrated DH parameters cannot apply the pose transformation equation of the mechanical arm derived based on the theoretical DH parameters, so that only a numerical iteration mode can be used to solve a set of joint configurations of the mechanical arm that meet the accuracy requirement. In some embodiments, based on the terminal TCP pose and the calibrated DH parameter, an inverse kinematics solution of the joint coordinate system may be calculated by using an iterative algorithm such as a Newton-Raphson numerical iterative algorithm, an L-M (Levenberg-Marquardt damped least squares) algorithm, a cyclic coordinate descent method, and the like, to obtain a set of joint configurations corresponding to the pose matrix and meeting the preset accuracy requirement. Of course, in other embodiments, other iterative optimization methods may be used to correct the theoretical joint configuration of each link, and the application is not limited thereto.
In a specific embodiment, taking a six-joint robot as an example, five sets of robot joint configuration data are known as follows:
Q[6]{1.5,-2,2,-1.5,-1.5,0.5}
Q[6]{0.13,-0.796,2,-1.5,-1.5,0.5}
Q[6]{0.13,-0.796,2,-0.014,1.549,0.5}
Q[6]{0.13,0.014,-1.635,-0.014,-1.607,0.5}
Q[6]{0.13,0.014,-1.635,-0.014,-0.072,1.665}
based on the five groups of mechanical arm joint configuration data, calculating by using a calibrated DH parameter to obtain a corresponding tail end TCP pose, and performing closed inverse solution calculation based on the tail end TCP pose and a theoretical DH parameter to obtain the theoretical joint configuration of each connecting rod of the first group of mechanical arms as follows:
Q[6]{-0.609734,-1.14109,-2.03859,-1.51156,1.66549,1.5342}
Q[6]{-0.609734,-2.96421,2.03859,2.51755,1.66549,1.5342}
Q[6]{-0.609734,-1.84441,-1.3802,1.67495,-1.66549,-1.60739}
Q[6]{-0.609734,-3.11487,1.3802,0.185013,-1.66549,-1.60739}
Q[6]{1.50141,0.00479725,-1.41302,3.04949,1.50406,-2.64119}
Q[6]{1.50141,-1.29477,1.41302,1.52302,1.50406,-2.64119}
Q[6]{1.50141,-0.204768,-2.0027,0.70714,-1.50406,0.500398}
Q[6]{1.50141,-2.00035,2.0027,-1.50268,-1.50406,0.500398}
taking the theoretical joint configuration as the input of an iterative algorithm, carrying out iterative computation on the theoretical joint configuration by using a calibrated DH parameter and a terminal TCP (transmission control protocol) pose, and taking the joint configuration which meets the preset precision requirement after iteration as the actual joint configuration of each connecting rod of the first group of mechanical arms of each connecting rod as follows:
Q[6]{-0.613073,-1.14198,-2.0402,-1.50925,1.67068,1.53273}
Q[6]{-0.6074,-2.96268,2.03607,2.51837,1.6624,1.53274}
Q[6]{-0.610838,-1.84391,-1.38231,1.67703,-1.66956,-1.60567}
Q[6]{-0.609992,-3.1141,1.37737,0.187016,-1.66573,-1.61125}
Q[6]{1.50234,0.00554283,-1.41514,3.05102,1.50634,-2.64446}
Q[6]{1.50096,-1.29416,1.41023,1.52511,1.50089,-2.64065}
Q[6]{1.50453,-0.202732,-2.0045,0.707112,-1.50907,0.501672}
Q[6]{1.5,-2,2,-1.5,-1.5,0.5}
it can be seen that in the final actual joint configuration, the difference between the theoretical joint configuration calculated based on the theoretical DH parameter and the actual joint configuration calculated by using the calibrated DH parameter and the terminal TCP pose to iteratively calculate the theoretical joint configuration is very small. In other words, in order to enable the theoretical mechanical arm to reach the actual target position, the mechanical arm only needs to finely adjust the numerical value of each joint after the theoretical mechanical arm reaches the theoretical target position. This fine tuning value, which may be exemplified by the last set of data from joint 1 to joint 6, is the following for each joint:
0.00141,-0.00035,0.0027,-0.00268,-0.00406,0.000398
similarly, the theoretical joint configuration of each connecting rod of the second group of mechanical arms is as follows:
Q[6]{-2.23581,-2.34606,-2.05381,-1.45325,2.36823,0.795347}
Q[6]{-2.23581,2.10248,2.05381,2.55696,2.36823,0.795347}
Q[6]{-2.23581,-3.04626,-1.36576,1.70048,-2.36823,-2.34625}
Q[6]{-2.23581,1.97931,1.36576,0.22659,-2.36823,-2.34625}
Q[6]{0.131739,1.20824,-1.4129,3.05003,1.50289,-2.64269}
Q[6]{0.131739,-0.091223,1.4129,1.52369,1.50289,-2.64269}
Q[6]{0.131739,0.998381,-2.00213,0.707524,-1.50289,0.498906}
Q[6]{0.131739,-0.796761,2.00213,-1.5016,-1.50289,0.498906}
the second set of corresponding actual joint configurations is as follows:
Q[6]{-2.2375,-2.34568,-2.05575,-1.45092,2.37128,0.79643}
Q[6]{-2.2333,2.10359,2.05086,2.55515,2.36719,0.79024}
Q[6]{-2.23585,-3.04523,-1.36759,1.70403,-2.37174,-2.34276}
Q[6]{-2.23527,1.97866,1.36445,0.224896,-2.36869,-2.35169}
Q[6]{0.131688,1.209,-1.41552,3.05207,1.50489,-2.64631}
Q[6]{0.130691,-0.0905191,1.41039,1.52537,1.5003,-2.64141}
Q[6]{0.133262,0.998984,-2.00371,0.708846,-1.50628,0.498103}
Q[6]{0.13,-0.796,2,-1.5,-1.5,0.5}
the theoretical joint configuration of each link of the third group of mechanical arms is as follows: :
Q[6]{-1.85421,-2.76181,-2.66302,0.894232,1.2337,-1.52385}
Q[6]{-1.85421,1.39087,2.66302,-2.30131,1.2337,-1.52385}
Q[6]{-1.85421,-2.4189,-1.96797,2.99786,-1.2337,1.61774}
Q[6]{-1.85421,2.09578,1.96797,0.830432,-1.2337,1.61774}
Q[6]{0.129612,0.999018,-2.00302,2.19415,1.54728,0.495511}
Q[6]{0.129612,-0.79681,2.00302,-0.0160617,1.54728,0.495511}
Q[6]{0.129612,1.82467,-2.59746,-1.17865,-1.54728,-2.64608}
Q[6]{0.129612,-0.304558,2.59746,2.03883,-1.54728,-2.64608}
the third set of corresponding actual joint configurations is as follows:
Q[6]{-1.85624,-2.75905,-2.66495,0.893306,1.22956,-1.52371}
Q[6]{-1.85123,1.38974,2.66118,-2.29798,1.23772,-1.52508}
Q[6]{-1.85327,-2.41868,-1.97109,2.9989,-1.23283,1.62421}
Q[6]{-1.85371,2.09649,1.96567,0.833391,-1.2371,1.61447}
Q[6]{0.129321,1.00013,-2.00599,2.19608,1.54512,0.490243}
Q[6]{0.13,-0.796,2,-0.014,1.549,0.5}
Q[6]{0.132021,1.82394,-2.59914,-1.17593,-1.54437,-2.64714}
Q[6]{0.127085,-0.302756,2.59534,2.03947,-1.55199,-2.64614}
the theoretical joint configuration of each connecting rod of the fourth group of mechanical arms is as follows: :
Q[6]{-2.34227,-1.65999,-1.62271,-1.39994,1.50465,1.17318}
Q[6]{-2.34227,3.14042,1.62271,3.1206,1.50465,1.17318}
Q[6]{-2.34227,-2.55735,-0.183135,1.19943,-1.50465,-1.96841}
Q[6]{-2.34227,-2.72826,0.183135,1.00408,-1.50465,-1.96841}
Q[6]{0.127485,-0.45517,-0.105684,2.0672,1.60407,-2.64033}
Q[6]{0.127485,-0.553816,0.105684,1.95448,1.60407,-2.64033}
Q[6]{0.127485,0.0130708,-1.63387,-0.0144458,-1.60407,0.501258}
Q[6]{0.127485,-1.4793,1.63387,-1.78982,-1.60407,0.501258}
the fourth set of corresponding actual joint configurations is as follows:
Q[6]{-2.34454,-1.66028,-1.62398,-1.39844,1.50886,1.17333}
Q[6]{-2.34046,3.14134,1.62043,3.1221,1.5039,1.17044}
Q[6]{-2.34269,-2.55751,-0.183789,1.20057,-1.50778,-1.96871}
Q[6]{-2.34254,-2.72666,0.178726,1.00726,-1.5074,-1.96956}
Q[6]{0.127621,-0.456328,-0.104261,2.06682,1.60285,-2.64227}
Q[6]{0.127527,-0.551414,0.0994448,1.95821,1.60254,-2.64185}
Q[6]{0.13,0.014,-1.635,-0.014,-1.607,0.5}
Q[6]{0.126145,-1.4788,1.63125,-1.78736,-1.60081,0.502261}
the theoretical joint configuration of each connecting rod of the fifth group of mechanical arms is as follows: :
Q[6]{-2.34234,-2.04501,-1.50383,0.297724,2.461,3.08606}
Q[6]{-2.34234,2.85863,1.50383,-1.33039,2.461,3.08606}
Q[6]{-2.34234,-2.15448,-0.526495,2.57146,-2.461,-0.0555336}
Q[6]{-2.34234,-2.64512,0.526495,2.0091,-2.461,-0.0555336}
Q[6]{0.127399,0.0196047,-1.63978,-0.0344861,-0.0690734,1.68458}
Q[6]{0.127399,-1.47784,1.63978,-1.81661,-0.0690734,1.68458}
the fifth set corresponds to the actual joint configuration as follows:
Q[6]{-2.34461,-2.04625,-1.50318,0.301881,2.46016,3.09061}
Q[6]{-2.34153,2.85951,1.50123,-1.32865,2.46442,3.08606}
Q[6]{-2.34237,-2.15081,-0.533914,2.58028,-2.46151,-0.049307}
Q[6]{-2.34178,-2.64531,0.52676,2.01161,-2.46318,-0.0525199}
Q[6]{0.13,0.0140001,-1.635,-0.014,-0.072,1.665}
Q[6]{0.126098,-1.47598,1.64172,-1.83513,-0.0658506,1.69947}
and step S1222, obtaining the pose of the mechanical arm model according to the actual joint configuration of each connecting rod and the terminal TCP pose.
Specifically, in this embodiment, the actual joint configuration of each link obtained after correcting the theoretical joint configuration is used as the joint configuration of each link in the middle of the mechanical arm, and the terminal TCP pose is used as the terminal pose of the mechanical arm, so as to obtain the pose of the mechanical arm model.
It should be noted that the steps illustrated in the above-described flow diagrams or in the flow diagrams of the figures may be performed in a computer system, such as a set of computer-executable instructions, and that, although a logical order is illustrated in the flow diagrams, in some cases, the steps illustrated or described may be performed in an order different than here.
The embodiment also provides a robot model pose calculation device, which is used for implementing the above embodiments and preferred embodiments, and the description of the device is omitted. As used hereinafter, the terms "module," "unit," "subunit," and the like may implement a combination of software and/or hardware for a predetermined function. Although the means described in the embodiments below are preferably implemented in software, an implementation in hardware, or a combination of software and hardware is also possible and contemplated.
Fig. 6 is a block diagram of a robot arm model pose calculation apparatus according to an embodiment of the present application, and as shown in fig. 6, the apparatus includes: an end TCP pose acquisition unit 201 and a pose calculation unit 202.
A terminal TCP pose acquisition unit 201, configured to acquire a terminal TCP pose of the mechanical arm;
and the pose calculation unit 202 is used for determining the pose of the mechanical arm model based on the terminal TCP pose, the theoretical DH parameters of the mechanical arm and the calibrated DH parameters.
In some of these embodiments, the pose calculation unit 202 includes: the device comprises a theoretical joint configuration acquisition module and a mechanical arm pose acquisition module.
The theoretical joint configuration acquisition module is used for carrying out closed inverse solution calculation based on the tail end TCP pose and the theoretical DH parameters to obtain the theoretical joint configuration of each connecting rod of the mechanical arm;
and the mechanical arm pose acquisition module is used for acquiring the pose of the mechanical arm model according to the theoretical joint configuration of each connecting rod, the calibration DH parameters and the terminal TCP pose.
In some embodiments, the end TCP pose acquisition unit 201 is specifically configured to:
and calculating by using the calibrated DH parameters to obtain the terminal TCP pose of the mechanical arm based on the joint configuration data.
In some of these embodiments, the theoretical joint configuration acquisition module comprises: the system comprises a model building module, a pose transformation equation determining module and a theoretical joint configuration calculating module.
The model establishing module is used for establishing a forward kinematics model based on a theoretical DH parameter of the mechanical arm;
the pose transformation equation determining module is used for determining a pose transformation equation of each connecting rod of the mechanical arm between a model derived reference coordinate system and a base coordinate system according to the forward kinematics model;
and the theoretical joint configuration calculating module is used for calculating the theoretical joint configuration of each connecting rod of the mechanical arm according to the terminal TCP pose and the pose transformation equation.
In some of these embodiments, the pose transformation equation determination module comprises:
the first position and posture transformation matrix calculation module is used for calculating a first position and posture transformation matrix of each connecting rod local coordinate system relative to the base coordinate system according to the forward kinematics model;
the second posture transformation matrix calculation module is used for acquiring a second posture transformation matrix of the model derived reference coordinate system relative to the local coordinate system of each connecting rod;
and the equation establishing module is used for establishing a pose transformation equation of each connecting rod of the mechanical arm between a model derived reference coordinate system and a base coordinate system based on the first pose transformation matrix and the second pose transformation matrix.
In some embodiments, the robot arm pose acquisition module includes: the device comprises a first posture acquisition module and a second posture acquisition module.
And the first pose acquisition module is used for carrying out fine adjustment correction on the theoretical joint configuration obtained by the inverse solution according to the tail end TCP pose and the calibrated DH parameters to obtain the actual joint configuration of each connecting rod.
And the second pose acquisition module is used for acquiring the pose of the mechanical arm model according to the actual joint configuration of each connecting rod and the terminal TCP pose.
In some embodiments, the first pose acquisition module is specifically configured to:
and taking the theoretical joint configuration obtained by the inverse solution as the input of an iterative algorithm, performing iterative computation on the theoretical joint configuration by using the calibrated DH parameter and the terminal TCP pose, and taking the joint configuration meeting the preset precision requirement after iteration as the actual joint configuration of each connecting rod.
The above modules may be functional modules or program modules, and may be implemented by software or hardware. For a module implemented by hardware, the modules may be located in the same processor; or the modules can be respectively positioned in different processors in any combination.
In addition, the robot arm model pose calculation method described in the embodiment of the present application with reference to fig. 1 may be implemented by an electronic device. Fig. 6 is a schematic diagram of a hardware structure of an electronic device according to an embodiment of the present application.
The electronic device may comprise a processor 31 and a memory 32 in which computer program instructions are stored.
Specifically, the processor 31 may include a Central Processing Unit (CPU), or A Specific Integrated Circuit (ASIC), or may be configured to implement one or more Integrated circuits of the embodiments of the present Application.
Memory 32 may include, among other things, mass storage for data or instructions. By way of example, and not limitation, memory 32 may include a Hard Disk Drive (Hard Disk Drive, abbreviated to HDD), a floppy Disk Drive, a Solid State Drive (SSD), flash memory, an optical Disk, a magneto-optical Disk, tape, or a Universal Serial Bus (USB) Drive or a combination of two or more of these. Memory 32 may include removable or non-removable (or fixed) media, where appropriate. The memory 32 may be internal or external to the data processing apparatus, where appropriate. In a particular embodiment, the memory 32 is a Non-Volatile (Non-Volatile) memory. In particular embodiments, Memory 32 includes Read-Only Memory (ROM) and Random Access Memory (RAM). The ROM may be mask-programmed ROM, Programmable ROM (PROM), Erasable PROM (EPROM), Electrically Erasable PROM (EEPROM), Electrically rewritable ROM (EAROM), or FLASH Memory (FLASH), or a combination of two or more of these, where appropriate. The RAM may be a Static Random-Access Memory (SRAM) or a Dynamic Random-Access Memory (DRAM), where the DRAM may be a Fast Page Mode Dynamic Random-Access Memory (FPMDRAM), an Extended data output Dynamic Random-Access Memory (EDODRAM), a Synchronous Dynamic Random-Access Memory (SDRAM), and the like.
The memory 32 may be used to store or cache various data files that need to be processed and/or used for communication, as well as possible computer program instructions executed by the processor 31.
The processor 31 realizes any one of the robot model pose calculation methods in the above embodiments by reading and executing the computer program instructions stored in the memory 32.
In some of these embodiments, the electronic device may also include a communication interface 33 and a bus 30. As shown in fig. 6, the processor 31, the memory 32, and the communication interface 33 are connected via the bus 30 to complete mutual communication.
The communication interface 33 is used for implementing communication between modules, devices, units and/or equipment in the embodiment of the present application. The communication interface 33 may also enable communication with other components such as: the data communication is carried out among external equipment, image/data acquisition equipment, a database, external storage, an image/data processing workstation and the like.
The bus 30 includes hardware, software, or both that couple the components of the electronic device to one another. Bus 30 includes, but is not limited to, at least one of the following: data Bus (Data Bus), Address Bus (Address Bus), Control Bus (Control Bus), Expansion Bus (Expansion Bus), and Local Bus (Local Bus). By way of example, and not limitation, Bus 30 may include an Accelerated Graphics Port (AGP) or other Graphics Bus, an Enhanced Industry Standard Architecture (EISA) Bus, a Front-Side Bus (Front Side Bus), an FSB (FSB), a Hyper Transport (HT) Interconnect, an ISA (ISA) Bus, an InfiniBand (InfiniBand) Interconnect, a Low Pin Count (LPC) Bus, a memory Bus, a microchannel Architecture (MCA) Bus, a PCI (Peripheral Component Interconnect) Bus, a PCI-Express (PCI-X) Bus, a Serial Advanced Technology Attachment (SATA) Bus, a Video Electronics Bus (audio Association) Bus, abbreviated VLB) bus or other suitable bus or a combination of two or more of these. Bus 30 may include one or more buses, where appropriate. Although specific buses are described and shown in the embodiments of the application, any suitable buses or interconnects are contemplated by the application.
The electronic device may execute the robot arm model pose calculation method in the embodiment of the present application based on the acquired program instruction, thereby implementing the robot arm model pose calculation method described with reference to fig. 1.
In addition, in combination with the robot arm model pose calculation method in the foregoing embodiment, the embodiment of the present application may provide a computer-readable storage medium to implement. The computer readable storage medium having stored thereon computer program instructions; the computer program instructions, when executed by a processor, implement any one of the robot model pose calculation methods in the above embodiments.
The technical features of the embodiments described above may be arbitrarily combined, and for the sake of brevity, all possible combinations of the technical features in the embodiments described above are not described, but should be considered as being within the scope of the present specification as long as there is no contradiction between the combinations of the technical features.
The above-mentioned embodiments only express several embodiments of the present application, and the description thereof is more specific and detailed, but not construed as limiting the scope of the invention. It should be noted that, for a person skilled in the art, several variations and modifications can be made without departing from the concept of the present application, which falls within the scope of protection of the present application. Therefore, the protection scope of the present patent shall be subject to the appended claims.

Claims (10)

1. A method for calculating the pose of a mechanical arm model is characterized by comprising the following steps:
acquiring the TCP (transmission control protocol) pose at the tail end of the mechanical arm;
and determining the pose of the mechanical arm model based on the terminal TCP pose, the theoretical DH parameters and the calibrated DH parameters of the mechanical arm.
2. The robot arm model pose calculation method of claim 1, wherein determining the pose of the robot arm model based on the terminal TCP pose, the theoretical DH parameters and the calibrated DH parameters of the robot arm comprises:
performing closed inverse solution calculation based on the terminal TCP pose and the theoretical DH parameters to obtain the theoretical joint configuration of each connecting rod of the mechanical arm;
and obtaining the pose of the mechanical arm model according to the theoretical joint configuration of each connecting rod, the calibrated DH parameters and the terminal TCP pose.
3. The robot arm model pose calculation method according to claim 1, wherein acquiring the TCP pose of the robot arm end comprises:
and calculating by using the calibrated DH parameters to obtain the terminal TCP pose of the mechanical arm based on the joint configuration data.
4. The robot arm model pose calculation method according to claim 2, wherein performing closed inverse solution calculation based on the terminal TCP pose and the theoretical DH parameters to obtain the theoretical joint configuration of each link of the robot arm comprises:
establishing a forward kinematics model based on a theoretical DH parameter of a mechanical arm;
determining a pose transformation equation of each connecting rod of the mechanical arm between a model derived reference coordinate system and a base coordinate system according to the forward kinematics model;
and calculating the theoretical joint configuration of each connecting rod of the mechanical arm according to the terminal TCP pose and the pose transformation equation.
5. The robot arm model pose calculation method of claim 4, wherein determining a pose transformation equation for each link of the robot arm between the model-derived reference frame and the base frame based on the forward kinematics model comprises:
calculating a first attitude transformation matrix of each connecting rod local coordinate system relative to the base coordinate system according to the forward kinematics model;
acquiring a second attitude transformation matrix of the model derived reference coordinate system relative to the local coordinate system of each connecting rod;
and establishing a pose transformation equation of each connecting rod of the mechanical arm between a model derived reference coordinate system and a base coordinate system based on the first pose transformation matrix and the second pose transformation matrix.
6. The robot arm model pose calculation method according to claim 2, wherein obtaining the pose of the robot arm model from the theoretical joint configuration of each link, the calibrated DH parameters, and the terminal TCP pose comprises:
fine adjustment correction is carried out on the theoretical joint configuration obtained through inverse solution according to the terminal TCP pose and the calibrated DH parameters, and actual joint configurations of all connecting rods are obtained;
and obtaining the pose of the mechanical arm model according to the actual joint configuration of each connecting rod and the terminal TCP pose.
7. The robot arm model pose calculation method of claim 6, wherein the fine tuning correction of the theoretical joint configuration obtained by the inverse solution according to the terminal TCP pose and the calibrated DH parameters to obtain the actual joint configuration of each link comprises:
and taking the theoretical joint configuration obtained by the inverse solution as the input of an iterative algorithm, performing iterative computation on the theoretical joint configuration by using the calibrated DH parameter and the terminal TCP pose, and taking the joint configuration meeting the preset precision requirement after iteration as the actual joint configuration of each connecting rod.
8. A robot arm model pose calculation apparatus, comprising:
the tail end TCP pose acquisition unit is used for acquiring a tail end TCP pose of the mechanical arm;
and the pose calculation unit is used for determining the pose of the mechanical arm model based on the terminal TCP pose, the theoretical DH parameters of the mechanical arm and the calibrated DH parameters.
9. An electronic device comprising a memory and a processor, wherein the memory stores therein a computer program, and the processor is configured to execute the computer program to perform the robot arm model pose calculation method according to any one of claims 1 to 7.
10. A computer-readable storage medium on which a computer program is stored, the computer program, when being executed by a processor, implementing the robot arm model pose calculation method according to any one of claims 1 to 7.
CN202111145018.7A 2021-09-28 2021-09-28 Mechanical arm model pose calculation method and device, electronic equipment and storage medium Active CN113733098B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111145018.7A CN113733098B (en) 2021-09-28 2021-09-28 Mechanical arm model pose calculation method and device, electronic equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111145018.7A CN113733098B (en) 2021-09-28 2021-09-28 Mechanical arm model pose calculation method and device, electronic equipment and storage medium

Publications (2)

Publication Number Publication Date
CN113733098A true CN113733098A (en) 2021-12-03
CN113733098B CN113733098B (en) 2023-03-03

Family

ID=78741573

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111145018.7A Active CN113733098B (en) 2021-09-28 2021-09-28 Mechanical arm model pose calculation method and device, electronic equipment and storage medium

Country Status (1)

Country Link
CN (1) CN113733098B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117444989A (en) * 2023-12-25 2024-01-26 常州微亿智造科技有限公司 Collision detection method and device for path planning

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120232694A1 (en) * 2009-11-24 2012-09-13 Kuka Roboter Gmbh Method For Creating A Robot Model And Industrial Robot
CN105137973A (en) * 2015-08-21 2015-12-09 华南理工大学 Method for robot to intelligently avoid human under man-machine cooperation scene
CN106338990A (en) * 2016-08-12 2017-01-18 杭州亿恒科技有限公司 Industrial robot DH parameter calibration and zero position calibration method based on laser tracker
JP2017061022A (en) * 2015-09-25 2017-03-30 株式会社デンソーウェーブ Controller of robot
CN107053154A (en) * 2017-05-11 2017-08-18 华志微创医疗科技(北京)有限公司 A kind of method demarcated for robot precision
CN111216164A (en) * 2020-02-20 2020-06-02 上海节卡机器人科技有限公司 Robot online calibration method, system, storage medium and calibration equipment

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120232694A1 (en) * 2009-11-24 2012-09-13 Kuka Roboter Gmbh Method For Creating A Robot Model And Industrial Robot
CN105137973A (en) * 2015-08-21 2015-12-09 华南理工大学 Method for robot to intelligently avoid human under man-machine cooperation scene
JP2017061022A (en) * 2015-09-25 2017-03-30 株式会社デンソーウェーブ Controller of robot
CN106338990A (en) * 2016-08-12 2017-01-18 杭州亿恒科技有限公司 Industrial robot DH parameter calibration and zero position calibration method based on laser tracker
CN107053154A (en) * 2017-05-11 2017-08-18 华志微创医疗科技(北京)有限公司 A kind of method demarcated for robot precision
CN111216164A (en) * 2020-02-20 2020-06-02 上海节卡机器人科技有限公司 Robot online calibration method, system, storage medium and calibration equipment

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117444989A (en) * 2023-12-25 2024-01-26 常州微亿智造科技有限公司 Collision detection method and device for path planning
CN117444989B (en) * 2023-12-25 2024-03-22 常州微亿智造科技有限公司 Collision detection method and device for path planning

Also Published As

Publication number Publication date
CN113733098B (en) 2023-03-03

Similar Documents

Publication Publication Date Title
CN107738254B (en) Conversion calibration method and system for mechanical arm coordinate system
CN104889973B (en) Manipulator, arm-and-hand system, control device and control method
US11833692B2 (en) Method and device for controlling arm of robot
CN111168719B (en) Robot calibration method and system based on positioning tool
CN111438688B (en) Robot correction method, robot correction device, computer equipment and storage medium
CN110068326B (en) Attitude calculation method and apparatus, electronic device, and storage medium
CN112444798B (en) Method and device for calibrating space-time external parameters of multi-sensor equipment and computer equipment
CN113733098B (en) Mechanical arm model pose calculation method and device, electronic equipment and storage medium
CN112241989A (en) External parameter calibration method and device, computer equipment and storage medium
Patwardhan et al. Kinematic analysis and development of simulation software for nex dexter robotic manipulator
CN111185909B (en) Robot operation condition acquisition method and device, robot and storage medium
CN117428791B (en) Inverse kinematics solving method and system for shoulder four-axis rehabilitation robot
CN115439633A (en) Calibration method and device and electronic equipment
Gao et al. Kinematic calibration of industrial robots based on distance information using a hybrid identification method
CN116277035A (en) Robot control method and device, processor and electronic equipment
CN113119083B (en) Robot calibration method and device, robot and storage medium
CN109909999B (en) Method and device for acquiring TCP (Transmission control protocol) coordinates of robot
CN114387352A (en) External parameter calibration method, device, equipment and storage medium
WO2021027945A1 (en) Coordinate obtaining method and apparatus for movable device
Shen et al. RETRACTED: Jacobian free monotonic descent algorithm for forward kinematics of spatial parallel manipulator
CN116945229A (en) Robot high-precision shaft hole assembly method, system, terminal and storage medium
Palmieri On the positioning error of a 2-DOF spherical parallel wrist with flexible links and joints–an FEM approach
US11325247B2 (en) Robotic arm control method and apparatus and terminal device using the same
CN116922399B (en) Mechanical arm gravity compensation method and device, electronic equipment and storage medium
CN111716345B (en) Motion control method, motion control device and mechanical arm

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
GR01 Patent grant
GR01 Patent grant