A data acquisition method, device, apparatus and storage medium
By acquiring the pose information of the articulated robot as it moves to the target spatial point, and using the pose information to filter out the DH parameters of the articulated robot, the problem of acquiring professional knowledge required in the prior art is solved, and simple automatic calculation of DH parameters is realized.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- HANGZHOU HIKROBOT TECH CO LTD
- Filing Date
- 2023-09-19
- Publication Date
- 2026-05-05
AI Technical Summary
Obtaining the DH parameters of an articulated robot in the existing technology requires a certain level of robotic expertise, which increases the difficulty of manual operation in practical applications.
By acquiring the pose information of the articulated robot when it moves to the target spatial point, the candidate configuration parameters are initially screened using the joint angle and the first rotation matrix, the link length parameters are estimated, and the current configuration parameters and link length parameters of the articulated robot are selected, thereby automatically calculating the DH parameters.
It reduces the difficulty of obtaining DH parameters for articulated robots, simplifies operation, and reduces the professional knowledge requirements for on-site personnel.
Smart Images

Figure CN117086879B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of robotics, and in particular to a data acquisition method, apparatus, device, and storage medium. Background Technology
[0002] With the continuous improvement of industrial automation, the use of articulated robots for object grasping has attracted widespread attention. In high-precision grasping fields such as surgery, welding, and assembly, it is necessary to strictly ensure the absolute accuracy of articulated robots. However, in actual production applications, wear and overload can lead to parameter errors in the Denavit-Hartenberg (DH) kinematic model of the articulated robot. To improve the absolute positioning accuracy of the articulated robot, the DH parameters of its DH kinematic model are usually corrected. Obtaining the DH parameters of the articulated robot is a prerequisite for DH parameter correction.
[0003] In related technologies, the common method for obtaining the DH parameters of an articulated robot is to parse some parameters, such as link lengths, from the robot's design specifications or 3D model. Then, the robot is moved to its zero-position orientation to obtain configuration parameters, such as coordinate system orientation, axis, and zero-position offset, thus deriving the DH parameters. However, this method requires a certain level of robotics expertise to correctly obtain the DH parameters, increasing the difficulty of manual operation in practical applications.
[0004] Therefore, how to reduce the difficulty of obtaining the DH parameters of articulated robots has become an urgent technical problem to be solved. Summary of the Invention
[0005] The purpose of this application is to provide a data acquisition method, apparatus, device, and storage medium to reduce the difficulty of acquiring the DH parameters of articulated robots. The specific technical solution is as follows:
[0006] In a first aspect, embodiments of this application provide a data acquisition method, the method comprising:
[0007] Acquire pose information when controlling the articulated robot to move to a target spatial point; wherein, the pose information includes joint rotation angles and a first rotation matrix of the end effector;
[0008] Based on the joint angles and the first rotation matrix in the acquired pose information, the candidate configuration parameters of the articulated robot are initially screened to obtain at least one set of target configuration parameters.
[0009] For each set of target configuration parameters, the link length parameters that the articulated robot will have when it has that set of target configuration parameters are estimated, and the link length parameters corresponding to that set of target configuration parameters are obtained.
[0010] Based on the target configuration parameters, corresponding link length parameters, and acquired pose information, the current configuration parameters and link length parameters of the articulated robot are selected to obtain the DH parameters of the articulated robot.
[0011] Optionally, based on the joint angles and the first rotation matrix in the acquired pose information, the candidate configuration parameters of the articulated robot are initially screened to obtain at least one set of target configuration parameters, including:
[0012] For each set of candidate configuration parameters of the articulated robot, based on the set of candidate configuration parameters and the joint rotation angles included in the acquired pose information, the rotation matrix of the end effector is estimated if the articulated robot moves to the target spatial point, and the second rotation matrix corresponding to the set of candidate configuration parameters is obtained.
[0013] Based on the difference between the second rotation matrix and the first rotation matrix corresponding to each group of candidate configuration parameters, each group of candidate configuration parameters is screened to obtain at least one set of target configuration parameters.
[0014] Optionally, before filtering the candidate configuration parameters based on the difference between the second rotation matrix and the first rotation matrix corresponding to each set of candidate configuration parameters to obtain at least one set of target configuration parameters, the method further includes:
[0015] For each set of candidate configuration parameters, if there is a non-union orthogonal matrix in the second rotation matrix corresponding to the set of candidate configuration parameters, the set of candidate configuration parameters is removed from each set of candidate configuration parameters.
[0016] Optionally, the step of filtering out the current configuration parameters and link length parameters of the articulated robot based on each set of target configuration parameters, the corresponding link length parameters, and the acquired pose information to obtain the DH parameters of the articulated robot includes:
[0017] For each set of target configuration parameters, the difference between the estimated pose information and the acquired pose information corresponding to the set of target configuration parameters is determined as the difference information corresponding to the target configuration parameter; wherein, the estimated pose information is the pose information generated when the articulated robot moves to the target spatial point when it has the set of target configuration parameters and the corresponding link length parameters.
[0018] The target configuration parameter and the corresponding link length parameter with the smallest difference are represented by the corresponding difference information and determined as the current configuration parameter and link length parameter of the articulated robot, thus obtaining the DH parameter of the articulated robot.
[0019] Optionally, the number of target spatial points is multiple;
[0020] The method of filtering candidate configuration parameters based on the difference between the second rotation matrix and the first rotation matrix corresponding to each group of candidate configuration parameters yields at least one set of target configuration parameters, including:
[0021] For each set of candidate configuration parameters, the differences corresponding to the candidate configuration parameters in the set are summed to obtain the loss value corresponding to the candidate configuration parameters in the set; wherein, the differences corresponding to the candidate configuration parameters in the set are: the differences between the second rotation matrix corresponding to the candidate configuration parameters in the set and the first rotation matrix respectively;
[0022] From each set of candidate configuration parameters, select configuration parameters whose loss value is less than the first preset threshold to obtain at least one set of target configuration parameters.
[0023] Optionally, the method for predicting the link length parameters of the articulated robot when it has any set of target configuration parameters includes:
[0024] Determine the rod length parameters for each group of candidates;
[0025] For each set of candidate rod length parameters, based on the target configuration parameters and the candidate rod length parameters, the pose information of the end effector of the articulated robot when it moves to the target spatial point is calculated, and the pose information corresponding to the candidate rod length parameters is obtained.
[0026] Based on the pose information corresponding to each group of candidate rod length parameters, a group of candidate rod length parameters that meet the preset constraints is selected from each group of candidate rod length parameters to obtain the rod length parameters that the articulated robot has when it has the target configuration parameters.
[0027] The preset constraint is that the difference between the pose information corresponding to each group of candidate rod length parameters and the acquired pose information is less than a second preset threshold.
[0028] Optionally, the step of estimating the rotation matrix of the end effector if the articulated robot moves to the target spatial point based on the set of candidate configuration parameters and the joint angles included in the acquired pose information, to obtain the second rotation matrix corresponding to the set of candidate configuration parameters, includes:
[0029] Based on the candidate configuration parameters and the joint angles included in the acquired pose information, forward kinematics calculation is performed to estimate the rotation matrix of the end effector, thus obtaining the second rotation matrix corresponding to the candidate configuration parameters.
[0030] Optionally, acquiring the pose information obtained when controlling the articulated robot to move to the target spatial point includes:
[0031] A specified tool is used to control an articulated robot to perform specified operations; wherein, the specified operations include translation and rotation.
[0032] The pose information of the articulated robot when it moves to the target spatial point is collected from the designated tool.
[0033] Secondly, embodiments of this application provide a data acquisition device, the device comprising:
[0034] The acquisition module is used to acquire the pose information obtained when controlling the articulated robot to move to the target spatial point; wherein, the pose information includes joint rotation angles and the first rotation matrix of the end effector;
[0035] The initial screening module is used to perform initial screening on each set of candidate configuration parameters of the articulated robot based on the joint angles and the first rotation matrix in the acquired pose information, so as to obtain at least one set of target configuration parameters.
[0036] The estimation module is used to estimate the link length parameters of the articulated robot when it has the target configuration parameters for each set of target configuration parameters, and obtain the link length parameters corresponding to the target configuration parameters.
[0037] The filtering module is used to filter out the current configuration parameters and link length parameters of the articulated robot based on each group of target configuration parameters, the corresponding link length parameters, and the acquired pose information, so as to obtain the DH parameters of the articulated robot.
[0038] Optionally, the primary screening module includes:
[0039] The calculation submodule is used to estimate the rotation matrix of the end effector if the articulated robot moves to the target spatial point for each set of candidate configuration parameters of the articulated robot, based on the set of candidate configuration parameters and the joint rotation angles included in the acquired pose information, and obtain the second rotation matrix corresponding to the set of candidate configuration parameters.
[0040] The filtering submodule is used to filter each group of candidate configuration parameters based on the difference between the second rotation matrix and the first rotation matrix corresponding to each group of candidate configuration parameters, so as to obtain at least one group of target configuration parameters.
[0041] Optionally, the primary screening module further includes:
[0042] The elimination submodule is used to eliminate each group of candidate configuration parameters from the candidate configuration parameters before the filtering submodule performs filtering based on the difference between the second rotation matrix corresponding to each group of candidate configuration parameters and the first rotation matrix to obtain at least one group of target configuration parameters. If there is a non-union orthogonal matrix in the second rotation matrix corresponding to each group of candidate configuration parameters, the candidate configuration parameters of that group are eliminated from the candidate configuration parameters.
[0043] Optionally, the filtering module includes:
[0044] The first determining submodule is used to determine the difference between the estimated pose information and the acquired pose information corresponding to each set of target configuration parameters, and use this difference information as the difference information corresponding to the target configuration parameters; wherein, the estimated pose information is the pose information generated when the articulated robot moves to the target spatial point when it has the set of target configuration parameters and the corresponding rod length parameters.
[0045] The second determining submodule is used to determine the target configuration parameter and the corresponding link length parameter with the smallest difference in the corresponding difference information as the current configuration parameter and link length parameter of the articulated robot, and obtain the DH parameter of the articulated robot.
[0046] Optionally, the number of target spatial points is multiple;
[0047] The filtering submodule is specifically used for:
[0048] For each set of candidate configuration parameters, the differences corresponding to the candidate configuration parameters in the set are summed to obtain the loss value corresponding to the candidate configuration parameters in the set; wherein, the differences corresponding to the candidate configuration parameters in the set are: the differences between the second rotation matrix corresponding to the candidate configuration parameters in the set and the first rotation matrix respectively;
[0049] From each set of candidate configuration parameters, select configuration parameters whose loss value is less than the first preset threshold to obtain at least one set of target configuration parameters.
[0050] Optionally, the method for predicting the link length parameters of the articulated robot when it has any set of target configuration parameters includes:
[0051] Determine the rod length parameters for each group of candidates;
[0052] For each set of candidate rod length parameters, based on the target configuration parameters and the candidate rod length parameters, the pose information of the end effector of the articulated robot when it moves to the target spatial point is calculated, and the pose information corresponding to the candidate rod length parameters is obtained.
[0053] Based on the pose information corresponding to each group of candidate rod length parameters, a group of candidate rod length parameters that meet the preset constraints is selected from each group of candidate rod length parameters to obtain the rod length parameters that the articulated robot has when it has the target configuration parameters.
[0054] The preset constraint is that the difference between the pose information corresponding to each group of candidate rod length parameters and the acquired pose information is less than a second preset threshold.
[0055] Optionally, the step of estimating the rotation matrix of the end effector if the articulated robot moves to the target spatial point based on the set of candidate configuration parameters and the joint angles included in the acquired pose information, to obtain the second rotation matrix corresponding to the set of candidate configuration parameters, includes:
[0056] Based on the candidate configuration parameters and the joint angles included in the acquired pose information, forward kinematics calculation is performed to estimate the rotation matrix of the end effector, thus obtaining the second rotation matrix corresponding to the candidate configuration parameters.
[0057] Optionally, the acquisition module includes:
[0058] The control submodule is used to control the articulated robot to perform specified operations using specified tools; wherein, the specified operations include translation and rotation.
[0059] The acquisition submodule is used to acquire pose information from the specified tool when controlling the articulated robot to move to the target spatial point.
[0060] Thirdly, embodiments of this application provide an electronic device, including a processor, a communication interface, a memory, and a communication bus, wherein the processor, the communication interface, and the memory communicate with each other through the communication bus;
[0061] Memory, used to store computer programs;
[0062] When a processor executes a program stored in memory, it implements the steps of any of the data acquisition methods described above.
[0063] Fourthly, embodiments of this application provide a computer-readable storage medium storing a computer program, which, when executed by a processor, implements the steps of any of the data acquisition methods described above.
[0064] Beneficial effects of the embodiments in this application:
[0065] The solution provided in this application first acquires the pose information obtained when the articulated robot moves to the target spatial point. Based on the joint angles and the first rotation matrix in the acquired pose information, the candidate configuration parameters of the articulated robot are initially screened to obtain at least one set of target configuration parameters. Then, for each set of target configuration parameters, the link length parameters of the articulated robot with that set of target configuration parameters are estimated. Based on each set of target configuration parameters, the corresponding link length parameters, and the acquired pose information, the current configuration parameters and link length parameters of the articulated robot are selected to obtain the DH parameters of the articulated robot. Thus, only the pose information obtained when the articulated robot moves to the target spatial point is needed to automatically calculate the DH parameters of the articulated robot. Compared with the prior art, which requires manual adjustment of the robot to a zero-point posture to obtain configuration parameters, this method is simpler to operate and can significantly reduce the professional knowledge requirements of on-site personnel. It can be seen that this solution can reduce the difficulty of obtaining the DH parameters of the articulated robot.
[0066] Of course, implementing any product or method of this application does not necessarily require achieving all of the advantages described above at the same time. Attached Figure Description
[0067] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other embodiments can be obtained based on these drawings.
[0068] Figure 1 A flowchart illustrating a data acquisition method provided in an embodiment of this application;
[0069] Figure 2 A flowchart illustrating step S102 in the data acquisition method provided in this application embodiment;
[0070] Figure 3 A flowchart illustrating a method for estimating the link length parameters of an articulated robot, as provided in the embodiments of this application;
[0071] Figure 4 A schematic diagram of adjacent joints in an articulated robot provided in an embodiment of this application;
[0072] Figure 5 A flowchart illustrating a specific example of the data acquisition method provided in the embodiments of this application;
[0073] Figure 6 This is a schematic diagram of the structure of a data acquisition device provided in an embodiment of this application;
[0074] Figure 7 A block diagram of an electronic device for implementing the data acquisition method provided in the embodiments of this application. Detailed Implementation
[0075] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art based on this application are within the scope of protection of this application.
[0076] Below, we will first introduce a data acquisition method provided in the embodiments of this application.
[0077] The data acquisition method provided in this application can be applied to various electronic devices, such as personal computers, servers, and other devices with data processing capabilities. Furthermore, it is understood that the data acquisition method provided in this application can be implemented through software, hardware, or a combination of both.
[0078] The data acquisition method provided in this application embodiment may include the following steps:
[0079] Acquire pose information when controlling the articulated robot to move to a target spatial point; wherein, the pose information includes joint rotation angles and a first rotation matrix of the end effector;
[0080] Based on the joint angles and the first rotation matrix in the acquired pose information, the candidate configuration parameters of the articulated robot are initially screened to obtain at least one set of target configuration parameters.
[0081] For each set of target configuration parameters, the link length parameters that the articulated robot will have when it has that set of target configuration parameters are estimated, and the link length parameters corresponding to that set of target configuration parameters are obtained.
[0082] Based on the target configuration parameters, corresponding link length parameters, and acquired pose information, the current configuration parameters and link length parameters of the articulated robot are selected to obtain the DH parameters of the articulated robot.
[0083] The solution provided in this application first acquires the pose information obtained when the articulated robot moves to the target spatial point. Based on the joint angles and the first rotation matrix in the acquired pose information, the candidate configuration parameters of the articulated robot are initially screened to obtain at least one set of target configuration parameters. Then, for each set of target configuration parameters, the link length parameters of the articulated robot with that set of target configuration parameters are estimated. Based on each set of target configuration parameters, the corresponding link length parameters, and the acquired pose information, the current configuration parameters and link length parameters of the articulated robot are selected to obtain the DH parameters of the articulated robot. Thus, only the pose information obtained when the articulated robot moves to the target spatial point is needed to automatically calculate the DH parameters of the articulated robot. Compared with the prior art, which requires manual adjustment of the robot to a zero-point posture to obtain configuration parameters, this method is simpler to operate and can significantly reduce the professional knowledge requirements of on-site personnel. It can be seen that this solution can reduce the difficulty of obtaining the DH parameters of the articulated robot.
[0084] The data acquisition method provided in the embodiments of this application will be described below with reference to the accompanying drawings.
[0085] like Figure 1 As shown, the data acquisition method provided in this application embodiment may include steps S101-S104:
[0086] S101, Obtain the pose information obtained when controlling the articulated robot to move to the target spatial point; wherein, the pose information includes joint rotation angle and the first rotation matrix of the end effector;
[0087] In this embodiment, the target spatial point can be the spatial point to which the articulated robot moves within the workspace. In practical applications, the articulated robot can be controlled to move to the target spatial point within the workspace, thereby obtaining the pose information of the articulated robot at that target spatial point. The pose information can be used to describe the position and orientation of the articulated robot in three-dimensional space. This pose information can include the joint angles of each joint of the articulated robot, as well as the first rotation matrix of the end effector. The first rotation matrix of the end effector can describe the change relationship between the coordinate systems corresponding to the end effector before and after movement.
[0088] Optionally, in one implementation, obtaining the pose information when controlling the articulated robot to move to the target spatial point may include steps A1-A2:
[0089] A1, using a specified tool to control an articulated robot to perform a specified operation; wherein, the specified operation includes translation and rotation.
[0090] In this implementation, the designated tool can be a teach pendant used to control the articulated robot's movement. It is understood that a teach pendant is a device used for manual manipulation, programming, parameter configuration, and monitoring of the articulated robot. As a medium for interaction between humans and robots, the teach pendant plays a crucial role in robot task deployment. By using the teach pendant to control the articulated robot to perform translational and rotational operations, the articulated robot can move to a target spatial location.
[0091] A2, Collect pose information from the designated tool when controlling the articulated robot to move to the target spatial point.
[0092] Understandably, in practical applications, operators can use a teach pendant to control the articulated robot to move to a target spatial point and record the pose information of the articulated robot when it moves to the target spatial point. Thus, the pose information of the articulated robot when it moves to the target spatial point can be collected in the teach pendant.
[0093] S102, based on the joint angles and the first rotation matrix in the acquired pose information, perform preliminary screening of each set of candidate configuration parameters of the articulated robot to obtain at least one set of target configuration parameters;
[0094] In this embodiment, multiple sets of candidate configuration parameters can be pre-defined for the articulated robot, each set consisting of various DH parameters. DH parameters are parameters in the DH kinematic model, a robot kinematic representation and coordinate system modeling method proposed by Denavit and Hartenberg, which has become the standard method for robot kinematic modeling. In practical applications, any set of candidate configuration parameters set for the articulated robot can include discrete parameters from the DH parameters, such as robot type, base coordinate system orientation, tool coordinate system orientation, joint axis, joint angle zero-position offset, etc. It is understood that, due to the ergodicity of discrete parameters, by using discrete parameters from the DH parameters as configuration parameters and setting each set of candidate configuration parameters for the articulated robot, configuration parameters that match the actual configuration parameters of the articulated robot can be selected from these sets of candidate configuration parameters later. For example, if the articulated robot is a six-axis robot, the robot type of the articulated robot may include: spherical wrist robot and offset wrist robot; the coordinate system orientation may be: up, down, left, right, forward and backward; the joint axis may be: clockwise and counterclockwise; the joint angle zero offset may be: 0 degrees, positive 90 degrees and negative 90 degrees.
[0095] It should be noted that an articulated robot consists of a series of joints (links) and rotation axes. The length of each joint (link length), the direction of rotation of each axis, the initial angle (zero offset) of each axis's rotation, and the coordinate system orientation of the robot base and end effector are all considered DH parameters of the articulated robot. Among the DH parameters of an articulated robot, the link length parameter is a continuous parameter and therefore is not considered a configuration parameter.
[0096] Optionally, in one implementation, based on the joint angles and the first rotation matrix in the acquired pose information, the candidate configuration parameters of the articulated robot are initially screened to obtain at least one set of target configuration parameters, which may include steps B1-B2:
[0097] B1. For each set of candidate configuration parameters of the articulated robot, based on the set of candidate configuration parameters and the joint rotation angles included in the acquired pose information, estimate the rotation matrix of the end effector if the articulated robot moves to the target spatial point, and obtain the second rotation matrix corresponding to the set of candidate configuration parameters.
[0098] In this implementation, the joint angles included in the acquired pose information can be used to construct rotation matrices corresponding to the joint angles of adjacent joints. Since the acquired pose information is the pose information of the articulated robot moving to the target spatial point, the rotation matrix constructed using the joint angles in the acquired pose information is the rotation matrix corresponding to each adjacent joint when the articulated robot moves to the target spatial point.
[0099] For each set of candidate configuration parameters, by multiplying the rotation matrices corresponding to each adjacent joint in sequence based on the orientation of the base coordinate system included in that set of candidate configuration parameters, the rotation matrix of the end effector when the articulated robot moves to the target spatial point can be calculated. This calculated rotation matrix of the end effector is then the second rotation matrix corresponding to that set of candidate configuration parameters. For example, if an adjacent joint in the articulated robot is like... Figure 4 As shown, the rotation matrix corresponding to the adjacent joint is:
[0100]
[0101] in, Let be the rotation matrix from joint i-1 to joint i, where i is a positive integer; and The included angle is derived from the joint rotation angle, and For the coordinate axis X i-1 With coordinate axis X i The angle between them Z is the coordinate axis i-1 With coordinate axis Zi The angle between them.
[0102] For example, in one specific implementation, based on the set of candidate configuration parameters and the joint angles included in the acquired pose information, the rotation matrix of the end effector is estimated if the articulated robot moves to the target spatial point, thus obtaining a second rotation matrix corresponding to the set of candidate configuration parameters, which may include:
[0103] Based on the candidate configuration parameters and the joint angles included in the acquired pose information, forward kinematics calculation is performed to estimate the rotation matrix of the end effector, thus obtaining the second rotation matrix corresponding to the candidate configuration parameters.
[0104] As can be understood, forward kinematics calculation is the process of calculating the pose of the end effector of an articulated robot based on its DH parameters and the rotation angles of each joint. Since the pose of the end effector obtained from forward kinematics calculation consists of the translation and rotation matrices of the end effector, the rotation matrix of the end effector can be predicted through forward kinematics calculation. This predicted rotation matrix is the second rotation matrix corresponding to the set of candidate configuration parameters. It should be noted that since the rotational component of the end effector's pose is independent of the link length, an arbitrary set of link length parameters can be assigned during forward kinematics calculation to obtain the second rotation matrix of the end effector.
[0105] B2, based on the difference between the second rotation matrix and the first rotation matrix corresponding to each group of candidate configuration parameters, the candidate configuration parameters are screened to obtain at least one set of target configuration parameters.
[0106] It is understandable that, since the first rotation matrix obtained in step S101 when the joint robot moves to the target spatial point is the actual rotation matrix of the end effector when the joint robot moves to the target spatial point, for any set of candidate configuration parameters, the smaller the difference between the estimated second rotation matrix under the set of candidate configuration parameters and the first rotation matrix in the obtained pose information, the closer the set of candidate configuration parameters is to the real configuration parameters. Therefore, based on the difference between the calculated second rotation matrix and the first rotation matrix in the obtained pose information corresponding to each set of candidate configuration parameters, each set of candidate configuration parameters can be screened to obtain at least one set of target configuration parameters.
[0107] For example, in practical applications, the difference can be sorted from smallest to largest, and the top preset number of candidate configuration parameters can be selected as at least one set of target configuration parameters; or, the candidate configuration parameters corresponding to the difference being less than a preset threshold can be selected to obtain at least one set of target configuration parameters, both of which are reasonable.
[0108] Optionally, in another implementation, before filtering each set of candidate configuration parameters based on the difference between the second rotation matrix and the first rotation matrix corresponding to each set of candidate configuration parameters to obtain at least one set of target configuration parameters, the following may be included:
[0109] For each set of candidate configuration parameters, if there is a non-union orthogonal matrix in the second rotation matrix corresponding to the set of candidate configuration parameters, the set of candidate configuration parameters is removed from each set of candidate configuration parameters.
[0110] Understandably, since rotation matrices are inherently orthogonal, if the second rotation matrix corresponding to any set of candidate configuration parameters is not orthogonal, then it cannot represent a rotation. In this case, the set of candidate configuration parameters is incorrect and can be directly discarded. Because orthogonal matrices possess the following characteristics: the inverse of the matrix is equal to its transpose; the rows or columns of the matrix are all orthogonal vectors; and the determinant of the matrix is 1, in practical applications, one can determine whether the estimated second rotation matrix is not orthogonal by judging whether it conforms to any of these characteristics.
[0111] It is understandable that by eliminating candidate configuration parameters whose estimated second rotation matrix is a non-uniform orthogonal matrix before filtering each group of candidate configuration parameters based on the difference between the estimated second rotation matrix and the first rotation matrix in the obtained pose information, the amount of computation when calculating the difference can be reduced, and the selected target configuration parameters can be avoided as incorrect configuration parameters.
[0112] It should be noted that the above-described method for preliminary screening of candidate configuration parameters is merely an example and should not be construed as limiting the implementation of preliminary screening of candidate configuration parameters in this application. For example, in practical applications, it is also reasonable to screen candidate configuration parameters by estimating the difference between the rotation matrix of any rotation axis when the articulated robot moves to the target spatial point and the rotation matrix of that rotation axis in the acquired pose information.
[0113] S103, For each set of target configuration parameters, estimate the link length parameters that the articulated robot will have when it has the set of target configuration parameters, and obtain the link length parameters corresponding to the set of target configuration parameters;
[0114] In this embodiment, the link length parameter of the articulated robot refers to the length of each joint in the articulated robot. The method for estimating the link length parameter of the articulated robot under any set of target configuration parameters can be as follows: A preset number of link length parameters are randomly generated. Then, by calculating the difference between the pose information of any rotation axis or end effector and the actual pose information of that rotation axis or end effector when the articulated robot moves to the target spatial point under the target configuration parameters and any set of link length parameters, the link length parameter with the smallest corresponding difference is selected from the preset number of link length parameters as the link length parameter corresponding to that set of target configuration parameters.
[0115] It should be noted that, in order to make the layout of the solution clear, the method for estimating the link length parameters of the articulated robot when it has the target configuration parameters will be described in the following embodiments, and will not be repeated here.
[0116] S104. Based on the target configuration parameters of each group, the corresponding link length parameters, and the acquired pose information, the current configuration parameters and link length parameters of the articulated robot are selected to obtain the DH parameters of the articulated robot.
[0117] In this embodiment, after obtaining the link length parameters corresponding to each set of target configuration parameters, for each set of target configuration parameters, the target configuration parameters with the smallest difference can be selected based on the difference between the pose information of any rotating axis or end effector calculated under the target configuration parameters and the corresponding link length parameters and the obtained pose information. The selected set of target configuration parameters and the corresponding link length parameters are then determined as the DH parameters of the articulated robot.
[0118] Optionally, in one implementation, based on each set of target configuration parameters, the corresponding link length parameters, and the acquired pose information, the current configuration parameters and link length parameters of the articulated robot are filtered to obtain the DH parameters of the articulated robot, which may include steps C1-C2:
[0119] C1, for each set of target configuration parameters, determine the difference between the estimated pose information and the acquired pose information corresponding to the set of target configuration parameters, and use it as the difference information corresponding to the target configuration parameter; wherein, the estimated pose information is the pose information generated when the articulated robot moves to the target spatial point when it has the set of target configuration parameters and the corresponding link length parameters.
[0120] In this implementation, the estimated pose information corresponding to each set of target configuration parameters can be obtained by performing forward kinematics calculations based on the target configuration parameters, the corresponding link length parameters, and the joint angles in the acquired pose information. In practical applications, the pose information may also include the translation matrix of the end effector of the articulated robot. The difference information between pose information can be the sum of the differences between the rotation matrices included in the pose information and the differences between the translation matrices.
[0121] The forward kinematics calculation involves sequentially multiplying the transformation matrices of adjacent joints based on the configuration parameters and link length parameters of the articulated robot to obtain the attitude information of the robot's end effector. For example,... Figure 4 As shown in the figure, the change matrix of adjacent joints is as follows:
[0122]
[0123] in, Let be the transformation matrix from joint i-1 to joint i, where i is a positive integer; and The included angle is derived from the joint rotation angle, and For the coordinate axis X i-1 With coordinate axis X i The angle between them Z is the coordinate axis i-1 With coordinate axis Z i The angle between them; Z is the coordinate axis i-1 With coordinate axis Z i Along the coordinate axis X i The directed distance; For the coordinate axis X i-1 With coordinate axis X i Along the coordinate axis Z i The directed distance.
[0124] C2, the target configuration parameter with the smallest difference and the corresponding link length parameter are represented by the corresponding difference information, and determined as the current configuration parameter and link length parameter of the articulated robot, thus obtaining the DH parameter of the articulated robot.
[0125] It is understandable that the smaller the corresponding difference information, the closer the calculated pose of the end effector is to the actual pose of the end effector under the target configuration parameters and the corresponding link length parameters. In other words, the target configuration parameters and the corresponding link length parameters are closer to the true values of the target configuration parameters and link length parameters of the articulated robot. Therefore, the target configuration parameters and the corresponding link length parameters with the smallest difference can be used as the DH parameters of the articulated robot.
[0126] The solution provided in this application first acquires the pose information obtained when the articulated robot moves to the target spatial point. Based on the joint angles and the first rotation matrix in the acquired pose information, the candidate configuration parameters of the articulated robot are initially screened to obtain at least one set of target configuration parameters. Then, for each set of target configuration parameters, the link length parameters of the articulated robot with that set of target configuration parameters are estimated. Based on each set of target configuration parameters, the corresponding link length parameters, and the acquired pose information, the current configuration parameters and link length parameters of the articulated robot are selected to obtain the DH parameters of the articulated robot. Thus, only the pose information obtained when the articulated robot moves to the target spatial point is needed to automatically calculate the DH parameters of the articulated robot. Compared with the prior art, which requires manual adjustment of the robot to a zero-point posture to obtain configuration parameters, this method is simpler to operate and can significantly reduce the professional knowledge requirements of on-site personnel. It can be seen that this solution can reduce the difficulty of obtaining the DH parameters of the articulated robot.
[0127] Optionally, in another embodiment of this application, the number of target spatial points is multiple;
[0128] Accordingly, in this embodiment, such as Figure 2 As shown, step B2 above, based on the difference between the second rotation matrix and the first rotation matrix corresponding to each group of candidate configuration parameters, filters each group of candidate configuration parameters to obtain at least one set of target configuration parameters, which may include steps S201-S202:
[0129] S201, for each group of candidate configuration parameters, sum the differences corresponding to the group of candidate configuration parameters to obtain the loss value corresponding to the group of candidate configuration parameters; wherein, the differences corresponding to the group of candidate configuration parameters are: the differences between the second rotation matrix corresponding to the group of candidate configuration parameters and the first rotation matrix respectively;
[0130] In this embodiment, there are multiple target spatial points. For each set of candidate configuration parameters, the second rotation matrix when the articulated robot moves to each target spatial point can be estimated, resulting in multiple second rotation matrices. Then, the difference between each second rotation matrix corresponding to the set of candidate configuration parameters and the first rotation matrix is calculated to obtain the difference value corresponding to the set of configuration parameters. For example, the formula for calculating the loss value corresponding to any set of configuration parameters can be:
[0131]
[0132] in, The loss value is N, where N is the number of target spatial points and is a positive integer greater than 1. The second rotation matrix is calculated for the i-th target spatial point. Let be the first rotation matrix obtained at the i-th target spatial point. These are three virtual 3D points with non-zero coordinates.
[0133] S202, select configuration parameters with loss values less than a first preset threshold from each group of candidate configuration parameters to obtain at least one set of target configuration parameters.
[0134] Understandably, when there are multiple target spatial points, for each set of candidate configuration parameters, the sum of the differences between the calculated second rotation matrix and the first rotation matrix in the acquired pose information when the articulated robot moves to each target spatial point is calculated, and this sum of differences is used as the loss value corresponding to that set of candidate configuration parameters. Then, the configuration parameters with loss values less than a first preset threshold are selected as target configuration parameters. This can reduce the problem of inaccurate target configuration parameters due to insufficient motion amplitude at a single target spatial point, thereby improving the accuracy of the selected target configuration parameters.
[0135] It is evident that this approach can improve the accuracy of the selected target configuration parameters.
[0136] Alternatively, in another embodiment of this application, such as Figure 3 As shown, the method for estimating the link length parameters of the articulated robot when it has any set of target configuration parameters may include steps S301-S303:
[0137] S301, determine the candidate rod length parameters for each group;
[0138] In this embodiment, the candidate rod length parameters for each group can be randomly generated rod length parameters.
[0139] S302, For each set of candidate rod length parameters, based on the target configuration parameters and the candidate rod length parameters, calculate the pose information of the end effector of the articulated robot when it moves to the target spatial point, and obtain the pose information corresponding to the candidate rod length parameters.
[0140] In this embodiment, under any set of target configuration parameters, the kinematic forward kinematics can be calculated based on the set of target configuration parameters and any set of candidate link length parameters, combined with the joint rotation angles in the obtained pose information, to obtain the pose information of the end effector of the joint robot when it moves to the target spatial point, which is used as the pose information corresponding to the set of candidate link length parameters.
[0141] S303, Based on the pose information corresponding to each group of candidate rod length parameters, select a group of candidate rod length parameters that meet the preset constraints from each group of candidate rod length parameters, and obtain the rod length parameters that the articulated robot has when it has the target configuration parameters of that group;
[0142] The preset constraint is that the difference between the pose information corresponding to each group of candidate rod length parameters and the acquired pose information is less than the second preset threshold.
[0143] In this embodiment, a set of candidate link length parameters that meet preset constraints can be selected from each set of candidate link length parameters as the link length parameters possessed by the articulated robot when it has the target configuration parameters. The selected set of candidate link length parameters that meet the preset constraints can be the set of candidate link length parameters with the smallest difference between the calculated pose information and the acquired pose information, or any link length parameter whose difference is less than a second preset threshold; both are reasonable.
[0144] Furthermore, it should be noted that in practical applications, several initial values for the link length parameters can be randomly generated. Then, based on the constraint that the pose information obtained from the forward kinematics calculation is equal to the actual pose information, nonlinear optimization is performed on the initial values of each set of link length parameters to obtain the optimized sets of link length parameters. This actual pose information is the acquired pose information. The error after nonlinear optimization of each set of link length parameters is recorded, and the candidate set of link length parameters with the smallest error after nonlinear optimization is selected as the link length parameters possessed by the articulated robot when it has this set of target configuration parameters.
[0145] The objective function for the nonlinear optimization is as follows:
[0146]
[0147] in, This represents the pose information obtained from the forward kinematics calculation, where L is the rod length parameter. For joint rotation parameters, For true pose information, Let L be three virtual 3D points with non-zero coordinates. Furthermore, the rod length parameter L can be obtained by solving the objective function using the LM (Levenberg-Marquardt, least squares estimation of regression parameters in nonlinear regression) algorithm or the Gauss-Newton method.
[0148] As can be seen, this scheme can be used to predict the link length parameters of the articulated robot when it has any set of target configuration parameters.
[0149] To better understand the data acquisition method provided in this application, a specific example will be used to introduce the content of this application below.
[0150] This example presents a method for rapidly obtaining the DH parameters of an articulated robot. First, the robot is controlled to perform translations and rotations at N points (N > 5). The joint angles and end effector poses (corresponding to the end effector pose information) for each of these N points (corresponding to the target space points mentioned above) are recorded. Based on the constraint that the pose reconstructed by the joint angles using the DH parameters is equal to the actual pose, the DH parameters of the articulated robot are calculated using a method that iterates through configuration parameters and nonlinearly optimizes link length parameters. At the implementation level, this method only requires controlling the teach pendant to acquire N sets of pose information to automatically calculate the DH parameters of the articulated robot. It is simple and fast to operate, improving the convenience of obtaining the DH parameters of the articulated robot. Figure 5 As shown, it includes the following steps:
[0151] S501, acquire the joint angles and end-effector pose of the articulated robot;
[0152] The teach pendant is used to control the articulated robot to move through N points (N greater than 5) within the workspace, and the joint angle and end-effector pose at each point are recorded. The N points must include varying degrees of translation and rotation to prevent overfitting in subsequent calculations due to excessively small motion amplitudes.
[0153] S502, iterate through each set of configuration parameters set for the articulated robot (corresponding to the candidate configuration parameters mentioned above).
[0154] The configuration parameters of an articulated robot include robot type, base coordinate system orientation, tool coordinate system orientation, joint axis, and joint zero-position offset. A recursive approach is used to obtain all permutations of the candidate configuration parameters, and then each set of configuration parameters is iterated over. Common articulated robot types include: spherical wrist robots and offset wrist robots; coordinate system orientations are: up, down, left, right, forward, and backward; joint axis orientations are: clockwise and counterclockwise; and joint angle zero-position offsets are: 0 degrees, +90 degrees, and -90 degrees. Since each of these configuration parameters is an enumerated variable, a full permutation of the configuration parameters can be constructed and iterated over. Furthermore, to adapt to more complex robots, simply add enumeration variables to the corresponding parameters.
[0155] S503, quickly eliminates erroneous configuration parameters (corresponding to the initial screening mentioned above);
[0156] When the current set of configuration parameters is reached, forward kinematics calculation is performed to determine the end-effector pose. Since the rotation component of the end-effector pose is independent of the rod length, any set of rod length parameters can be assigned for forward kinematics calculation to obtain the rotation matrix of the end-effector pose. Then, the configuration parameters are judged according to the following two conditions: ① Whether the rotation matrix obtained from the forward kinematics calculation is a unit orthogonal matrix. If not, the current set of configuration parameters is directly discarded, and the process continues to S502 to traverse the next set of configuration parameters; if yes, then condition ② is judged. ② The difference between the rotation matrix obtained from the forward kinematics calculation and the rotation matrix of the actual end-effector pose recorded in S501 is compared. If the error is greater than a set threshold, the current configuration parameter is directly discarded, and the process continues to S502 to traverse the next set of configuration parameters; if the error is less than the set threshold, then the set of configuration parameters is determined as the target configuration parameter.
[0157] The error between the rotation matrices can be calculated using the following formula:
[0158]
[0159] In the formula: The error between the rotation matrices is N, and the number of points in the target space is N. The rotation matrix is calculated for the i-th target spatial point. Let be the actual rotation matrix obtained at the i-th target spatial point. These are three virtual 3D points with non-zero coordinates.
[0160] S504, nonlinear optimization of rod length parameters;
[0161] Based on the target configuration parameters obtained through S503, the optimal link length parameters corresponding to the current configuration parameters are determined through nonlinear optimization. Since the link length parameters are continuous variables, the idea of RANSAC (Random Sample Consensus) can be used to randomly generate M sets of initial values for the link length parameters. Then, based on the constraint that the end-effector pose calculated by the forward kinematics is equal to the actual end-effector pose, nonlinear optimization is performed on the link length parameters. The set of link length parameters with the smallest error after nonlinear optimization is taken as the optimal link length parameters for the current target configuration parameters, and the error after nonlinear optimization is recorded. The objective function of the nonlinear optimization is expressed by Equation 2 and is solved using the LM algorithm or the Gauss-Newton method.
[0162]
[0163] in, This represents the pose information obtained from the forward kinematics calculation, where L is the rod length parameter. For joint rotation parameters, For true pose information, These are three virtual 3D points with non-zero coordinates.
[0164] S505 outputs the optimal DH parameters;
[0165] Repeat steps S502-S504 until all configuration parameters have been traversed. Take the configuration parameters and link parameters corresponding to the minimum nonlinear optimization error as the final DH parameter output.
[0166] As can be seen, this solution only requires collecting multiple sets of robot end-effector poses and joint angles via a teach pendant. Then, by traversing configuration parameters and nonlinearly optimizing link length parameters, the DH parameters of the articulated robot can be automatically calculated. The entire parameter acquisition process is simple and quick, significantly improving operational efficiency and reducing implementation difficulty compared to manually analyzing the design specifications and manipulating the articulated robot to a zero-point posture to obtain DH parameters.
[0167] Based on the above method embodiments, this application also provides a data acquisition device, such as... Figure 6 As shown, the device includes:
[0168] The acquisition module 610 is used to acquire the pose information obtained when controlling the articulated robot to move to the target spatial point; wherein, the pose information includes joint rotation angles and the first rotation matrix of the end effector;
[0169] The initial screening module 620 is used to perform initial screening on each set of candidate configuration parameters of the articulated robot based on the joint angles and the first rotation matrix in the acquired pose information, so as to obtain at least one set of target configuration parameters.
[0170] The estimation module 630 is used to estimate the link length parameters of the articulated robot when it has the target configuration parameters for each set of target configuration parameters, and obtain the link length parameters corresponding to the target configuration parameters.
[0171] The filtering module 640 is used to filter out the current configuration parameters and link length parameters of the articulated robot based on each group of target configuration parameters, the corresponding link length parameters and the acquired pose information, so as to obtain the DH parameters of the articulated robot.
[0172] Optionally, the primary screening module includes:
[0173] The calculation submodule is used to estimate the rotation matrix of the end effector if the articulated robot moves to the target spatial point for each set of candidate configuration parameters of the articulated robot, based on the set of candidate configuration parameters and the joint rotation angles included in the acquired pose information, and obtain the second rotation matrix corresponding to the set of candidate configuration parameters.
[0174] The filtering submodule is used to filter each group of candidate configuration parameters based on the difference between the second rotation matrix and the first rotation matrix corresponding to each group of candidate configuration parameters, so as to obtain at least one group of target configuration parameters.
[0175] Optionally, the primary screening module further includes:
[0176] The elimination submodule is used to eliminate each group of candidate configuration parameters from the candidate configuration parameters before the filtering submodule performs filtering based on the difference between the second rotation matrix corresponding to each group of candidate configuration parameters and the first rotation matrix to obtain at least one group of target configuration parameters. If there is a non-union orthogonal matrix in the second rotation matrix corresponding to each group of candidate configuration parameters, the candidate configuration parameters of that group are eliminated from the candidate configuration parameters.
[0177] Optionally, the filtering module includes:
[0178] The first determining submodule is used to determine the difference between the estimated pose information and the acquired pose information corresponding to each set of target configuration parameters, and use this difference information as the difference information corresponding to the target configuration parameters; wherein, the estimated pose information is the pose information generated when the articulated robot moves to the target spatial point when it has the set of target configuration parameters and the corresponding rod length parameters.
[0179] The second determining submodule is used to determine the target configuration parameter and the corresponding link length parameter with the smallest difference in the corresponding difference information as the current configuration parameter and link length parameter of the articulated robot, and obtain the DH parameter of the articulated robot.
[0180] Optionally, the number of target spatial points is multiple;
[0181] The filtering submodule is specifically used for:
[0182] For each set of candidate configuration parameters, the differences corresponding to the candidate configuration parameters in the set are summed to obtain the loss value corresponding to the candidate configuration parameters in the set; wherein, the differences corresponding to the candidate configuration parameters in the set are: the differences between the second rotation matrix corresponding to the candidate configuration parameters in the set and the first rotation matrix respectively;
[0183] From each set of candidate configuration parameters, select configuration parameters whose loss value is less than the first preset threshold to obtain at least one set of target configuration parameters.
[0184] Optionally, the method for predicting the link length parameters of the articulated robot when it has any set of target configuration parameters includes:
[0185] Determine the rod length parameters for each group of candidates;
[0186] For each set of candidate rod length parameters, based on the target configuration parameters and the candidate rod length parameters, the pose information of the end effector of the articulated robot when it moves to the target spatial point is calculated, and the pose information corresponding to the candidate rod length parameters is obtained.
[0187] Based on the pose information corresponding to each group of candidate rod length parameters, a group of candidate rod length parameters that meet the preset constraints is selected from each group of candidate rod length parameters to obtain the rod length parameters that the articulated robot has when it has the target configuration parameters.
[0188] The preset constraint is that the difference between the pose information corresponding to each group of candidate rod length parameters and the acquired pose information is less than a second preset threshold.
[0189] Optionally, the step of estimating the rotation matrix of the end effector if the articulated robot moves to the target spatial point based on the set of candidate configuration parameters and the joint angles included in the acquired pose information, to obtain the second rotation matrix corresponding to the set of candidate configuration parameters, includes:
[0190] Based on the candidate configuration parameters and the joint angles included in the acquired pose information, forward kinematics calculation is performed to estimate the rotation matrix of the end effector, thus obtaining the second rotation matrix corresponding to the candidate configuration parameters.
[0191] Optionally, the acquisition module includes:
[0192] The control submodule is used to control the articulated robot to perform specified operations using specified tools; wherein, the specified operations include translation and rotation.
[0193] The acquisition submodule is used to acquire pose information from the specified tool when controlling the articulated robot to move to the target spatial point.
[0194] In the technical solution of this application, the operations of obtaining, storing, using, processing, transmitting, providing and disclosing user personal information are all carried out with the user's authorization.
[0195] This application also provides an electronic device, such as... Figure 7 As shown, it includes:
[0196] Memory 701 is used to store computer programs;
[0197] The processor 702, when executing the program stored in the memory 701, implements any of the data acquisition methods described above.
[0198] Furthermore, the aforementioned electronic device may also include a communication bus and / or a communication interface, with the processor 702, the communication interface, and the memory 701 communicating with each other via the communication bus.
[0199] The communication bus mentioned in the above electronic devices can be a Peripheral Component Interconnect (PCI) bus or an Extended Industry Standard Architecture (EISA) bus, etc. This communication bus can be divided into address bus, data bus, control bus, etc. For ease of illustration, only one thick line is used to represent it in the diagram, but this does not mean that there is only one bus or one type of bus.
[0200] The communication interface is used for communication between the aforementioned electronic devices and other devices.
[0201] The memory may include random access memory (RAM) or non-volatile memory (NVM), such as at least one disk storage device. Optionally, the memory may also be at least one storage device located remotely from the aforementioned processor.
[0202] The processors mentioned above can be general-purpose processors, including central processing units (CPUs), network processors (NPs), etc.; they can also be digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, or discrete hardware components.
[0203] In another embodiment provided in this application, a computer-readable storage medium is also provided, which stores a computer program that, when executed by a processor, implements the steps of any of the above data acquisition methods.
[0204] In another embodiment provided in this application, a computer program product containing instructions is also provided, which, when run on a computer, causes the computer to execute any of the data acquisition methods described above.
[0205] In the above embodiments, implementation can be achieved entirely or partially through software, hardware, firmware, or any combination thereof. When implemented using software, it can be implemented entirely or partially in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, all or part of the processes or functions described in the embodiments of this application are generated. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another. For example, the computer instructions can be transmitted from one website, computer, server, or data center to another website, computer, server, or data center via wired (e.g., coaxial cable, fiber optic, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) means. The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or data center that integrates one or more available media. The available medium can be a magnetic medium (e.g., floppy disk, hard disk, magnetic tape), an optical medium (e.g., DVD), or a solid-state drive (SSD), etc.
[0206] It should be noted that, in this document, relational terms such as "first" and "second" are used only to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitations, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes said element.
[0207] The various embodiments in this specification are described in a related manner. Similar or identical parts between embodiments can be referred to mutually. Each embodiment focuses on describing the differences from other embodiments. In particular, the apparatus embodiments are basically similar to the method embodiments, so the description is relatively simple; relevant parts can be referred to the descriptions of the method embodiments.
[0208] The above description is merely a preferred embodiment of this application and is not intended to limit the scope of protection of this application. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this application are included within the scope of protection of this application.
Claims
1. A data acquisition method, characterized in that, The method includes: Acquire pose information when controlling the articulated robot to move to a target spatial point; wherein, the pose information includes joint rotation angles and a first rotation matrix of the end effector; For each set of candidate configuration parameters of the articulated robot, based on the set of candidate configuration parameters and the joint rotation angles included in the acquired pose information, the rotation matrix of the end effector is estimated if the articulated robot moves to the target spatial point, and the second rotation matrix corresponding to the set of candidate configuration parameters is obtained. Based on the difference between the second rotation matrix and the first rotation matrix corresponding to each group of candidate configuration parameters, each group of candidate configuration parameters is screened to obtain at least one set of target configuration parameters; For each set of target configuration parameters, the link length parameters that the articulated robot will have when it has that set of target configuration parameters are estimated, and the link length parameters corresponding to that set of target configuration parameters are obtained. For each set of target configuration parameters, the difference between the estimated pose information and the acquired pose information corresponding to the set of target configuration parameters is determined as the difference information corresponding to the target configuration parameter; wherein, the estimated pose information is the pose information generated when the articulated robot moves to the target spatial point when it has the set of target configuration parameters and the corresponding link length parameters. The target configuration parameter and the corresponding link length parameter with the smallest difference are represented by the corresponding difference information and determined as the current configuration parameter and link length parameter of the articulated robot, thus obtaining the DH parameter of the articulated robot.
2. The method according to claim 1, characterized in that, Before filtering the candidate configuration parameters based on the difference between the second rotation matrix and the first rotation matrix corresponding to each group of candidate configuration parameters to obtain at least one set of target configuration parameters, the method further includes: For each set of candidate configuration parameters, if there is a non-union orthogonal matrix in the second rotation matrix corresponding to the set of candidate configuration parameters, the set of candidate configuration parameters is removed from each set of candidate configuration parameters.
3. The method according to claim 1 or 2, characterized in that, The number of target spatial points is multiple; The method of filtering candidate configuration parameters based on the difference between the second rotation matrix and the first rotation matrix corresponding to each group of candidate configuration parameters yields at least one set of target configuration parameters, including: For each set of candidate configuration parameters, the differences corresponding to the candidate configuration parameters in the set are summed to obtain the loss value corresponding to the candidate configuration parameters in the set; wherein, the differences corresponding to the candidate configuration parameters in the set are: the differences between the second rotation matrix corresponding to the candidate configuration parameters in the set and the first rotation matrix respectively; From each set of candidate configuration parameters, select configuration parameters whose loss value is less than the first preset threshold to obtain at least one set of target configuration parameters.
4. The method according to any one of claims 1-2, characterized in that, The methods for predicting the link length parameters of the articulated robot when it has any set of target configuration parameters include: Determine the rod length parameters for each group of candidates; For each set of candidate rod length parameters, based on the target configuration parameters and the candidate rod length parameters, the pose information of the end effector of the articulated robot when it moves to the target spatial point is calculated, and the pose information corresponding to the candidate rod length parameters is obtained. Based on the pose information corresponding to each group of candidate rod length parameters, a group of candidate rod length parameters that meet the preset constraints is selected from each group of candidate rod length parameters to obtain the rod length parameters that the articulated robot has when it has the target configuration parameters. The preset constraint is that the difference between the pose information corresponding to each group of candidate rod length parameters and the acquired pose information is less than a second preset threshold.
5. The method according to claim 1 or 2, characterized in that, Based on the candidate configuration parameters and the joint angles included in the acquired pose information, the rotation matrix of the end effector is estimated if the articulated robot moves to the target spatial point, thus obtaining the second rotation matrix corresponding to the candidate configuration parameters, including: Based on the candidate configuration parameters and the joint angles included in the acquired pose information, forward kinematics calculation is performed to estimate the rotation matrix of the end effector, thus obtaining the second rotation matrix corresponding to the candidate configuration parameters.
6. The method according to claim 1, characterized in that, The acquisition of pose information obtained when controlling the articulated robot to move to the target spatial point includes: A specified tool is used to control an articulated robot to perform specified operations; wherein, the specified operations include translation and rotation. The pose information of the articulated robot when it moves to the target spatial point is collected from the designated tool.
7. A data acquisition device, characterized in that, The device includes: The acquisition module is used to acquire the pose information obtained when controlling the articulated robot to move to the target spatial point; wherein, the pose information includes joint rotation angles and the first rotation matrix of the end effector; The initial screening module is used to estimate the rotation matrix of the end effector if the articulated robot moves to the target spatial point for each set of candidate configuration parameters, based on the set of candidate configuration parameters and the joint angles included in the acquired pose information, and obtain the second rotation matrix corresponding to the set of candidate configuration parameters; based on the difference between the second rotation matrix corresponding to each set of candidate configuration parameters and the first rotation matrix, the module filters each set of candidate configuration parameters to obtain at least one set of target configuration parameters; The estimation module is used to estimate the link length parameters of the articulated robot when it has the target configuration parameters for each set of target configuration parameters, and obtain the link length parameters corresponding to the target configuration parameters. The filtering module is used to determine the difference between the estimated pose information and the acquired pose information corresponding to each set of target configuration parameters, and use this difference information as the difference information corresponding to the target configuration parameter. The estimated pose information is the pose information generated when the articulated robot moves to the target spatial point with the set of target configuration parameters and the corresponding link length parameters. The target configuration parameter and the corresponding link length parameter with the smallest difference in the corresponding difference information are determined as the current configuration parameters and link length parameters of the articulated robot, thus obtaining the DH parameters of the articulated robot.
8. The apparatus according to claim 7, characterized in that, The primary screening module also includes: The elimination submodule is used to filter each group of candidate configuration parameters based on the difference between the second rotation matrix corresponding to each group of candidate configuration parameters and the first rotation matrix before obtaining at least one group of target configuration parameters. If there is a non-union orthogonal matrix in the second rotation matrix corresponding to each group of candidate configuration parameters, the candidate configuration parameters of that group are eliminated from each group of candidate configuration parameters.
9. The apparatus according to any one of claims 7-8, characterized in that, The number of target spatial points is multiple; The primary screening module is specifically used for: For each set of candidate configuration parameters, the differences corresponding to the candidate configuration parameters in the set are summed to obtain the loss value corresponding to the candidate configuration parameters in the set; wherein, the differences corresponding to the candidate configuration parameters in the set are: the differences between the second rotation matrix corresponding to the candidate configuration parameters in the set and the first rotation matrix respectively; From each set of candidate configuration parameters, select configuration parameters whose loss value is less than the first preset threshold to obtain at least one set of target configuration parameters.
10. The apparatus according to any one of claims 7-8, characterized in that, The methods for predicting the link length parameters of the articulated robot when it has any set of target configuration parameters include: Determine the rod length parameters for each group of candidates; For each set of candidate rod length parameters, based on the target configuration parameters and the candidate rod length parameters, the pose information of the end effector of the articulated robot when it moves to the target spatial point is calculated, and the pose information corresponding to the candidate rod length parameters is obtained. Based on the pose information corresponding to each group of candidate rod length parameters, a group of candidate rod length parameters that meet the preset constraints is selected from each group of candidate rod length parameters to obtain the rod length parameters that the articulated robot has when it has the target configuration parameters. The preset constraint is that the difference between the pose information corresponding to each group of candidate rod length parameters and the acquired pose information is less than a second preset threshold.
11. The apparatus according to claim 7 or 8, characterized in that, Based on the candidate configuration parameters and the joint angles included in the acquired pose information, the rotation matrix of the end effector is estimated if the articulated robot moves to the target spatial point, thus obtaining the second rotation matrix corresponding to the candidate configuration parameters, including: Based on the candidate configuration parameters and the joint angles included in the acquired pose information, forward kinematics calculation is performed to estimate the rotation matrix of the end effector, thus obtaining the second rotation matrix corresponding to the candidate configuration parameters.
12. The apparatus according to claim 7, characterized in that, The acquisition module includes: The control submodule is used to control the articulated robot to perform specified operations using specified tools; wherein, the specified operations include translation and rotation. The acquisition submodule is used to acquire pose information from the specified tool when controlling the articulated robot to move to the target spatial point.
13. An electronic device, characterized in that, include: Memory, used to store computer programs; A processor, when executing a program stored in memory, implements the method of any one of claims 1-6.
14. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program that, when executed by a processor, implements the method described in any one of claims 1-6.
Citation Information
Patent Citations
Method for acquiring geometrical parameters of kinematic model of industrial robot
CN113894809A
Redundant mechanical arm path planning method and system based on optimal target configuration screening
CN115122317A