Robot control method and device, electronic equipment and computer readable storage medium
By extending the three-joint sub-problem using a PoE model-based approach, determining the objective function relationship, and solving the inverse kinematics problem of the RRT three-joint robotic arm, we achieve efficient and precise robot motion control, which is applicable to minimally invasive surgical robots.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- HANGZHOU WISEKING MEDICAL ROBOT CO LTD
- Filing Date
- 2023-03-28
- Publication Date
- 2026-06-09
AI Technical Summary
Existing technologies are insufficient to effectively solve the inverse kinematics problem of RRT three-joint robotic arms, especially in minimally invasive surgical robots, where traditional methods suffer from low efficiency and insufficient precision.
Using a PoE model-based approach, the two-joint sub-problem is extended to a three-joint sub-problem. By determining the objective function relationship of the three-joint robot arm under the positional relationship of each joint axis, the inverse kinematics solution is performed, including the construction of the initial function relationship and the constraint function relationship, to obtain the accurate joint angles and movement distances.
Precise motion control of the RRT three-joint robotic arm has been achieved, improving the efficiency and accuracy of inverse kinematics and making it suitable for robotic arm control in minimally invasive surgical robots.
Smart Images

Figure CN116423506B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of automatic control technology, and more specifically, to a robot control method, apparatus, electronic device, and computer-readable storage medium. Background Technology
[0002] RRT three-joint robotic arm refers to a robotic arm composed of a rotary joint, a kinetic joint and a linear joint connected in sequence. The motion control of a robot containing an RRT three-joint robotic arm can usually be achieved through the inverse kinematics of the robotic arm. Inverse kinematics means that given the end-effector pose of the robot, the motion position of each joint can be solved.
[0003] Currently, how to solve the inverse kinematics problem of the RRT three-joint robotic arm has become an urgent problem to be solved in the field of robot control. Summary of the Invention
[0004] The purpose of this application is to address the shortcomings of the prior art by providing a robot control method, device, electronic device, and computer-readable storage medium to facilitate the inverse kinematics analysis of an RRT three-joint robotic arm.
[0005] To achieve the above objectives, the technical solutions adopted in the embodiments of this application are as follows:
[0006] In a first aspect, embodiments of this application provide a robot control method applied to an electronic device in a robot control system. The system includes an electronic device and a robot body. The robot body includes a three-joint robotic arm, which includes a first rotary joint, a second rotary joint, and a kinetic joint connected sequentially. The method includes:
[0007] Obtain the command point to be reached by the end effector of the robot body;
[0008] Based on the positional relationship of the joint axes of each joint in the three-joint robotic arm, determine the objective function relationship corresponding to the positional relationship;
[0009] Based on the target function relationship, the values of the first joint angle of the first rotary joint, the second joint angle of the second rotary joint, and the movement distance of the movable joint are determined respectively. The target function relationship is obtained by transforming the basic function relationship. The basic function relationship is constructed based on the initial function relationship of the intermediate point and the constraint function relationship of the intermediate point. The initial function relationship is constructed based on the intermediate point and joint-related parameters. The joint-related parameters include: the current starting point of the robot body's end effector, the command point, the reference point on the joint axis of the first rotary joint, the first joint angle of the first rotary joint, the direction vector of the joint axis of the first rotary joint, the movement distance of the movable joint, and the direction vector of the joint axis of the movable joint. The intermediate point includes the designated point traversed by the robot body's end effector during its movement from the initial point to the command point.
[0010] Based on the value of the first joint angle of the first rotary joint, the value of the second joint angle of the second rotary joint, and the movement distance of the movable joint, the movement of the three-joint robotic arm is controlled so that the end of the robot body moves from the initial point to the command point.
[0011] Optionally, determining the objective function relationship corresponding to the positional relationship based on the positional relationship of the joint axes of each joint in the three-joint robotic arm includes:
[0012] Based on the positional relationship between the first joint axis of the first rotary joint, the second joint axis of the second rotary joint, and the third joint axis of the movable joint, determine the target equation relationship between the first direction vector of the first joint axis, the second direction vector of the second joint axis, and the third direction vector of the movable joint under the positional relationship;
[0013] The functional relationship corresponding to the target equation is taken as the target functional relationship.
[0014] Optionally, the initial functional relationship includes: a first functional relationship corresponding to the first intermediate point and a second functional relationship corresponding to the second intermediate point;
[0015] The first functional relationship is used to characterize the relationship between the first intermediate point and the initial point, the movement distance and the third direction vector, wherein the movement distance characterizes the movement distance of the moving joint and the third direction vector characterizes the direction vector of the joint axis of the moving joint;
[0016] The second functional relationship is used to characterize the relationship between the second intermediate point and the command point, the first reference point, the first joint angle, and the first direction vector; the first reference point characterizes the reference point on the joint axis of the first rotary joint, the first joint angle characterizes the joint angle of the first rotary joint, and the first direction vector characterizes the direction vector of the joint axis of the first rotary joint.
[0017] Optionally, if the second joint axis of the second rotary joint is perpendicular to the third joint axis of the movable joint, and the second joint axis of the second rotary joint is parallel to the first joint axis of the first rotary joint, then the objective function relationship is the first function relationship;
[0018] The step of determining the first joint angle of the first rotary joint, the second joint angle of the second rotary joint, and the movement distance of the movable joint according to the objective function relationship includes:
[0019] The position vector of the first intermediate point when the functional relationship between the first joint angle and the moving distance in the basic functional relationship has a unique solution;
[0020] The movement distance of the moving joint is determined based on the objective function relationship and the position vector of the first intermediate point;
[0021] The value of the first joint angle is determined based on the travel distance and the functional relationship related to the first joint angle of the first rotary joint in the basic functional relationship;
[0022] The values of the first intermediate point and the second intermediate point are determined based on the value of the first joint angle, the movement distance, the first functional relationship, and the second functional relationship, respectively.
[0023] The value of the second joint angle is determined based on the value of the first intermediate point, the value of the second intermediate point, and the preset motion function relationship of the spatial point around the joint axis.
[0024] Optionally, if the second joint axis of the second rotary joint is perpendicular to the third joint axis of the movable joint, and the second joint axis of the second rotary joint is not parallel to the first joint axis of the first rotary joint, then the target function relationship is the function relationship related to the first joint angle in the basic function relationship;
[0025] The step of determining the first joint angle of the first rotary joint, the second joint angle of the second rotary joint, and the movement distance of the movable joint according to the objective function relationship includes:
[0026] The value of the first joint angle is determined based on the objective function relationship;
[0027] The movement distance is determined based on the value of the first joint angle and the functional relationship between the first joint angle and the movement distance in the basic functional relationship;
[0028] The values of the first intermediate point and the second intermediate point are determined based on the value of the first joint angle, the movement distance, the first functional relationship, and the second functional relationship, respectively.
[0029] The value of the second joint angle is determined based on the value of the first intermediate point, the value of the second intermediate point, and the preset motion function relationship of the spatial point around the joint axis.
[0030] Optionally, if the second joint axis of the second rotary joint is not perpendicular to the third joint axis of the movable joint, and the second joint axis of the second rotary joint is parallel to the first joint axis of the first rotary joint, then the target function relationship is the function relationship related to the movement distance in the basic function relationship;
[0031] The step of determining the first joint angle of the first rotary joint, the second joint angle of the second rotary joint, and the movement distance of the movable joint according to the objective function relationship includes:
[0032] The movement distance is determined based on the objective function relationship;
[0033] The value of the first joint angle is determined based on the travel distance and the functional relationship between the first joint angle and the travel distance in the basic functional relationship;
[0034] The values of the first intermediate point and the second intermediate point are determined based on the value of the first joint angle, the movement distance, the first functional relationship, and the second functional relationship, respectively.
[0035] The value of the second joint angle is determined based on the value of the first intermediate point, the value of the second intermediate point, and the preset motion function relationship of the spatial point around the joint axis.
[0036] Optionally, if the second joint axis of the second rotary joint is not perpendicular to the third joint axis of the movable joint, and the second joint axis of the second rotary joint is not parallel to the first joint axis of the first rotary joint; simultaneously, the first joint axis and the second joint axis intersect, and the first reference point on the first joint axis and the second reference point on the second joint axis are not intersection points; then the target function relationship is the function relationship related to the first joint angle in the basic function relationship.
[0037] The step of determining the first joint angle of the first rotary joint, the second joint angle of the second rotary joint, and the movement distance of the movable joint according to the objective function relationship includes:
[0038] Based on the objective function relationship and the half-angle function, the objective function relationship is transformed to obtain a new function relationship;
[0039] Based on the new functional relationship, determine the value of the first joint angle;
[0040] The movement distance is determined based on the value of the first joint angle and the functional relationship between the first joint angle and the movement distance in the basic functional relationship;
[0041] The values of the first intermediate point and the second intermediate point are determined based on the value of the first joint angle, the movement distance, the first functional relationship, and the second functional relationship, respectively.
[0042] The value of the second joint angle is determined based on the value of the first intermediate point, the value of the second intermediate point, and the preset motion function relationship of the spatial point around the joint axis.
[0043] Secondly, this application also provides a robot control device, applied to an electronic device in a robot control system. The system includes an electronic device and a robot body. The robot body includes a three-joint robotic arm, which includes a first rotary joint, a second rotary joint, and a kinetic joint connected in sequence. The device includes: an acquisition module, a determination module, and a control module.
[0044] The acquisition module is used to acquire the command point to be reached by the end of the robot body;
[0045] The determining module is used to determine the target function relationship corresponding to the positional relationship based on the positional relationship of the joint axes of each joint in the three-joint robotic arm;
[0046] The determining module is used to determine the value of the first joint angle of the first rotary joint, the value of the second joint angle of the second rotary joint, and the movement distance of the movable joint according to the target function relationship. The target function relationship is obtained by transforming the basic function relationship. The basic function relationship is constructed based on the initial function relationship of the intermediate point and the constraint function relationship of the intermediate point. The initial function relationship is constructed based on the intermediate point and joint-related parameters. The joint-related parameters include: the current starting point of the end effector of the robot body, the command point, the reference point on the joint axis of the first rotary joint, the first joint angle of the first rotary joint, the direction vector of the joint axis of the first rotary joint, the movement distance of the movable joint, and the direction vector of the joint axis of the movable joint. The intermediate point includes the designated point passed by the end effector of the robot body during its movement from the initial point to the command point.
[0047] The control module is used to control the movement of the three-joint robotic arm based on the value of the first joint angle of the first rotary joint, the value of the second joint angle of the second rotary joint, and the movement distance of the movable joint, so that the end of the robot body moves from the initial point to the command point.
[0048] Optionally, the determining module is specifically used to determine, based on the positional relationship between the first joint axis of the first rotary joint, the second joint axis of the second rotary joint, and the third joint axis of the movable joint, a target equation relationship between the first direction vector of the first joint axis, the second direction vector of the second joint axis, and the third direction vector of the movable joint under the positional relationship.
[0049] The functional relationship corresponding to the target equation is taken as the target functional relationship.
[0050] Optionally, the initial functional relationship includes: a first functional relationship corresponding to the first intermediate point and a second functional relationship corresponding to the second intermediate point;
[0051] The first functional relationship is used to characterize the relationship between the first intermediate point and the initial point, the movement distance and the third direction vector, wherein the movement distance characterizes the movement distance of the moving joint and the third direction vector characterizes the direction vector of the joint axis of the moving joint;
[0052] The second functional relationship is used to characterize the relationship between the second intermediate point and the command point, the first reference point, the first joint angle, and the first direction vector; the first reference point characterizes the reference point on the joint axis of the first rotary joint, the first joint angle characterizes the joint angle of the first rotary joint, and the first direction vector characterizes the direction vector of the joint axis of the first rotary joint.
[0053] Optionally, if the second joint axis of the second rotary joint is perpendicular to the third joint axis of the movable joint, and the second joint axis of the second rotary joint is parallel to the first joint axis of the first rotary joint, then the objective function relationship is the first function relationship;
[0054] The determining module is specifically used to determine the position vector of the first intermediate point when the functional relationship between the first joint angle and the moving distance in the basic functional relationship has a unique solution.
[0055] The movement distance of the moving joint is determined based on the objective function relationship and the position vector of the first intermediate point;
[0056] The value of the first joint angle is determined based on the travel distance and the functional relationship related to the first joint angle of the first rotary joint in the basic functional relationship;
[0057] The values of the first intermediate point and the second intermediate point are determined based on the value of the first joint angle, the movement distance, the first functional relationship, and the second functional relationship, respectively.
[0058] The value of the second joint angle is determined based on the value of the first intermediate point, the value of the second intermediate point, and the preset motion function relationship of the spatial point around the joint axis.
[0059] Optionally, if the second joint axis of the second rotary joint is perpendicular to the third joint axis of the movable joint, and the second joint axis of the second rotary joint is not parallel to the first joint axis of the first rotary joint, then the target function relationship is the function relationship related to the first joint angle in the basic function relationship;
[0060] The determining module is specifically used to determine the value of the first joint angle based on the target function relationship;
[0061] The movement distance is determined based on the value of the first joint angle and the functional relationship between the first joint angle and the movement distance in the basic functional relationship;
[0062] The values of the first intermediate point and the second intermediate point are determined based on the value of the first joint angle, the movement distance, the first functional relationship, and the second functional relationship, respectively.
[0063] The value of the second joint angle is determined based on the value of the first intermediate point, the value of the second intermediate point, and the preset motion function relationship of the spatial point around the joint axis.
[0064] Optionally, if the second joint axis of the second rotary joint is not perpendicular to the third joint axis of the movable joint, and the second joint axis of the second rotary joint is parallel to the first joint axis of the first rotary joint, then the target function relationship is the function relationship related to the movement distance in the basic function relationship;
[0065] The determining module is specifically used to determine the moving distance based on the objective function relationship;
[0066] The value of the first joint angle is determined based on the travel distance and the functional relationship between the first joint angle and the travel distance in the basic functional relationship;
[0067] The values of the first intermediate point and the second intermediate point are determined based on the value of the first joint angle, the movement distance, the first functional relationship, and the second functional relationship, respectively.
[0068] The value of the second joint angle is determined based on the value of the first intermediate point, the value of the second intermediate point, and the preset motion function relationship of the spatial point around the joint axis.
[0069] Optionally, if the second joint axis of the second rotary joint is not perpendicular to the third joint axis of the movable joint, and the second joint axis of the second rotary joint is not parallel to the first joint axis of the first rotary joint; simultaneously, the first joint axis and the second joint axis intersect, and the first reference point on the first joint axis and the second reference point on the second joint axis are not intersection points; then the target function relationship is the function relationship related to the first joint angle in the basic function relationship.
[0070] The determining module is specifically used to transform the target function relationship based on the target function relationship and the half-angle function to obtain a new function relationship;
[0071] Based on the new functional relationship, determine the value of the first joint angle;
[0072] The movement distance is determined based on the value of the first joint angle and the functional relationship between the first joint angle and the movement distance in the basic functional relationship;
[0073] The values of the first intermediate point and the second intermediate point are determined based on the value of the first joint angle, the movement distance, the first functional relationship, and the second functional relationship, respectively.
[0074] The value of the second joint angle is determined based on the value of the first intermediate point, the value of the second intermediate point, and the preset motion function relationship of the spatial point around the joint axis.
[0075] Thirdly, embodiments of this application provide an electronic device, including: a processor, a storage medium, and a bus. The storage medium stores machine-readable instructions executable by the processor. When the electronic device is running, the processor communicates with the storage medium via the bus, and the processor executes the machine-readable instructions to perform the steps of the robot control method provided in the first aspect.
[0076] Fourthly, embodiments of this application provide a computer-readable storage medium storing a computer program that, when executed by a processor, performs the steps of the robot control method provided in the first aspect.
[0077] The beneficial effects of this application are:
[0078] This application provides a robot control method, device, electronic device, and computer-readable storage medium. The method uses an inverse kinematics solution to obtain the motion parameters of each joint by determining the objective function relationship of a three-joint robotic arm under the positional relationship of each joint axis. Based on these motion parameters, the movement of each joint is controlled, thus achieving robot motion control. The objective function relationship is derived from a transformation of a fundamental function relationship, which is constructed from an initial function relationship and constraint function relationships. Given a fixed structure for the three-joint robotic arm, since each joint is unique and its parameters are also unique, the initial and constraint function relationships can be uniquely determined based on the joint parameters of the first, second, and prismatic joints. Based on these unique initial and constraint function relationships, a unique fundamental function relationship can be obtained. This allows for the accurate determination of the objective function relationship of the three-joint robotic arm under the positional relationship of each joint axis. The first joint angle, second joint angle, and movement distance are obtained with high accuracy through the objective function relationship analysis. The motion control of the robotic arm is then performed based on these angles and distances, effectively solving the inverse kinematics problem for three-joint robotic arms. Attached Figure Description
[0079] To more clearly illustrate the technical solutions of the embodiments of this application, the accompanying drawings used in the embodiments will be briefly introduced below. It should be understood that the following drawings only show some embodiments of this application and should not be regarded as a limitation of the scope. For those skilled in the art, other related drawings can be obtained based on these drawings without creative effort.
[0080] Figure 1 A schematic diagram of a mathematical model of a three-joint robotic arm provided for an embodiment of this application;
[0081] Figure 2 Flowchart of the robot control method provided in the embodiments of this application Figure 1 ;
[0082] Figure 3 Flowchart of the robot control method provided in the embodiments of this application Figure 2 ;
[0083] Figure 4 Flowchart of the robot control method provided in the embodiments of this application Figure 3 ;
[0084] Figure 5 A schematic diagram of a mathematical model of a three-joint robotic arm with a unique solution to a function, provided for an embodiment of this application;
[0085] Figure 6 A schematic diagram of a mathematical model of a three-joint robotic arm with infinite solutions to a function, provided for an embodiment of this application;
[0086] Figure 7 Flowchart of the robot control method provided in the embodiments of this application Figure 4 ;
[0087] Figure 8 Flowchart of the robot control method provided in the embodiments of this application Figure 5 ;
[0088] Figure 9 Flowchart of the robot control method provided in the embodiments of this application Figure 6 ;
[0089] Figure 10 A schematic diagram of a simulation result provided for an embodiment of this application;
[0090] Figure 11 This application provides a schematic diagram of the structure of an 8-DOF robotic arm.
[0091] Figure 12 This is another simulation result diagram provided for an embodiment of this application;
[0092] Figure 13 A schematic diagram of a robot control device provided in an embodiment of this application;
[0093] Figure 14 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application. Detailed Implementation
[0094] To make the objectives, technical solutions, and advantages of the embodiments of this application clearer, the technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. It should be understood that the accompanying drawings in this application are for illustrative and descriptive purposes only and are not intended to limit the scope of protection of this application. Furthermore, it should be understood that the schematic drawings are not drawn to scale. The flowcharts used in this application illustrate operations implemented according to some embodiments of this application. It should be understood that the operations in the flowcharts may not be implemented in sequence, and steps without logical contextual relationships may be reversed or implemented simultaneously. In addition, those skilled in the art, guided by the content of this application, may add one or more other operations to the flowcharts, or remove one or more operations from the flowcharts.
[0095] Furthermore, the described embodiments are merely some, not all, of the embodiments of this application. The components of the embodiments of this application described and illustrated herein can typically be arranged and designed in various different configurations. Therefore, the following detailed description of the embodiments of this application provided in the accompanying drawings is not intended to limit the scope of the claimed application, but merely to illustrate selected embodiments of the application. All other embodiments obtained by those skilled in the art based on the embodiments of this application without inventive effort are within the scope of protection of this application.
[0096] First, a brief explanation of the relevant background technologies involved in this solution will be provided:
[0097] Minimally invasive surgery refers to surgical procedures performed inside the human body using modern medical instruments and equipment such as laparoscopes and thoracoscopes. Compared to traditional surgical methods, minimally invasive surgery has advantages such as less trauma, less pain, and faster recovery. However, the limitations imposed by the incision size on minimally invasive instruments significantly increase the difficulty of the procedure, and the fatigue and tremors experienced by the surgeon during prolonged operations are amplified. These factors have become key constraints on the development of minimally invasive surgical techniques. With the development of robotics technology, a new technology in the field of minimally invasive medicine—minimally invasive surgical robot technology—has emerged, overcoming these shortcomings while inheriting the advantages.
[0098] Common minimally invasive surgical robots consist of a surgeon's console, a patient surgical platform, and a display device. The surgeon operates the input device on the surgeon's console and transmits the input to the patient surgical platform, which is connected to remotely operated surgical instruments. The patient surgical platform consists of a multi-joint robotic arm. For the control of a multi-joint robotic arm, solving the inverse kinematics (IK) is a crucial step. Since robot control requires accuracy and real-time performance, it is desirable that the IK solutions be analytical solutions. In solving the IK solutions, the Denavit-Hartenberg (DH) parameter method is commonly used to model the kinematics of the robotic arm; however, the geometric meaning of this method is not readily apparent. One approach is to use numerical iteration and elimination methods to solve the IK solutions. While this yields the IK solutions, it is time-consuming, reduces the efficiency of IK solution solving, and cannot guarantee the completeness, convergence, and robustness of the IK solutions. Another approach is to solve the IK solutions using approximate solutions. A simple calculation yields an explicit expression for the inverse kinematics, but the resulting solution is an approximation of the analytical solution. Furthermore, due to factors such as the rigidity of the robotic arm and actual assembly, the actual values of the calibrated structural parameters and angular relationships deviate from the theoretical values, adding additional difficulties to the inverse kinematics of the robotic arm.
[0099] Methods based on the PoE (Product of Exponential) model are not subject to the above limitations. Compared to the traditional DH method, which requires extensive derivation for inverse solutions of different structures, the Paden-Kahan subproblem method based on the PoE model only needs to select a few suitable subproblems to solve the inverse problem of the robotic arm.
[0100] However, the analytical solution based on the PoE model only includes two-joint sub-problems and cannot be applied to the inverse solution of three-joint sub-problems, thus it cannot be applied to the robotic arm control of existing surgical robots.
[0101] Based on this, this solution extends the two-joint sub-problem to a three-joint sub-problem on the basis of the PoE model, so as to effectively solve the inverse solution of the three-joint sub-problem of the RRT configuration robotic arm, and thus apply it to the motion control of the robotic arm of surgical robots.
[0102] It should be noted that the term "comprising" will be used in the embodiments of this application to indicate the presence of the features declared thereafter, but does not exclude the addition of other features.
[0103] Figure 1 A mathematical model diagram of a three-joint robotic arm provided in this application embodiment; as shown Figure 1The image shows a mathematical model of a three-jointed robotic arm with a Revolute-Resistant-Transverse (RRT) configuration. The RRT configuration refers to a robotic arm composed of a series of revolute joints connected sequentially. Circle 1 represents the first revolute joint, circle 2 represents the second revolute joint, ξ1 represents the joint axis of the first revolute joint, θ1 represents the joint angle of the first revolute joint, p1 represents the reference point on the first revolute joint, ξ2 represents the joint axis of the second revolute joint, θ2 represents the joint angle of the second revolute joint, p2 represents the reference point on the second revolute joint, ξ3 represents the translator joint, and θ3 represents the distance traveled by the translator joint. Point p represents the starting point, which is the current position of the robot's end effector, and point q represents the command point, which is the position the robot's end effector is to move to.
[0104] c and d represent intermediate points. By setting intermediate points, the solution of the three-joint robot arm can be decomposed into a combination of several sub-problems. The process of the robot's end effector moving from the starting point to the command point can be decomposed into moving from the starting point to intermediate point c, then from intermediate point c to intermediate point d, and finally from intermediate point d to the command point. Thus, the inverse solution of the three-joint robot arm with RRT configuration can be effectively realized on the basis of the PoE model.
[0105] In practical applications, the RRT configuration and the TRR configuration are equivalent. The TRR configuration refers to a robotic arm composed of a series of moving joints, rotating joints, and rotating joints connected in sequence. This method is also applicable to the inverse kinematics analysis of a three-joint robotic arm with a TRR configuration.
[0106] In the process of controlling the end effector of the robot body to move from the starting point to the command point, the values of the first joint angle of the first rotary joint, the second joint angle of the second rotary joint, and the moving distance of the locating joint can be obtained by inverse kinematics of the three-joint robotic arm. The locating joint can be controlled to move from the starting point p to the midpoint c on the second rotary joint, the second rotary joint can be rotated from the midpoint c to the midpoint d on the first rotary joint, and the first rotary joint can be rotated from the midpoint d to the command point q. Thus, the movement of the end effector of the robot body from the starting point p to the command point q is realized.
[0107] Figure 2 Flowchart of the robot control method provided in the embodiments of this application Figure 1 This method can be applied to electronic devices in a robot control system. The robot control system may include electronic devices and a robot body. The robot body may include a three-joint robotic arm with an RRT configuration. The three-joint robotic arm includes a first rotary joint, a second rotary joint, and a prismatic joint connected in sequence. The electronic devices may be independent of the robot body or may be processing devices configured within the robot body. Figure 2 As shown, the method may include:
[0108] S201. Obtain the command point to be reached by the end effector of the robot body.
[0109] Optionally, the command point can be input by the user through the interactive interface of the central control terminal on the robot itself, or it can be input through the interactive interface of a terminal device independent of the robot itself. The input method can be to click on the command point on the displayed robot running trajectory map, or it can be to directly input the coordinate information of the command point.
[0110] S202. Based on the positional relationship of the joint axes of each joint in the three-joint robotic arm, determine the objective function relationship corresponding to the positional relationship.
[0111] Typically, the positional relationships of the joint axes of the first rotary joint, the second rotary joint, and the prismatic joint in a three-joint RRT robotic arm with different configurations can vary. However, when the three-joint robotic arm structure is fixed, the positional relationships of each joint axis can be obtained accordingly. Under different positional relationships of each joint axis, there can be corresponding objective function relationships, which are used to perform inverse kinematics of each joint.
[0112] S203. Based on the objective function relationship, determine the value of the first joint angle of the first rotary joint, the value of the second joint angle of the second rotary joint, and the movement distance of the translation joint; the objective function relationship is obtained by transforming the basic function relationship.
[0113] The basic function relationship is constructed based on the initial function relationship and the constraint function relationship of the intermediate point. The initial function relationship is constructed based on the intermediate point and the joint-related parameters. The joint-related parameters include: the current starting point of the robot body's end effector, the command point, the reference point on the joint axis of the first rotary joint, the first joint angle of the first rotary joint, the direction vector of the joint axis of the first rotary joint, the movement distance of the movable joint, and the direction vector of the joint axis of the movable joint. The intermediate point includes the designated point that the robot body's end effector passes through during its movement from the initial point to the command point.
[0114] Optionally, based on the objective function relationship corresponding to the determined joint axis position relationship of each joint in the three-joint robotic arm, function analysis can be performed to obtain the value of the first joint angle θ1 of the first rotary joint, the value of the second joint angle θ2 of the second rotary joint, and the movement distance θ3 of the movable joint.
[0115] It is worth noting that the terms "first" and "second" here do not have any actual physical meaning; they are merely used to distinguish between different rotational joints and joint angles.
[0116] The parameter θ is not limited to representing angles; when the joint is a moving joint, θ can be used to represent a distance vector.
[0117] Optionally, the objective function relation can be derived from the transformation of the basic function relation, which is constructed based on the initial function relation and the constraint function relation.
[0118] In the above Figure 1 Assuming the mathematical model shown holds true, the initial point p moves θ3 along joint axis ξ3 to the intermediate point c, the intermediate point c rotates θ2 around joint axis ξ2 to the intermediate point d, and the intermediate point d rotates θ1 around joint axis ξ1 to the command point q. Furthermore, reference point p1 is any point on joint axis ξ1, reference point p2 is any point on joint axis ξ2, and joint axis ξ3 is a moving joint, requiring no reference point. Therefore, the initial functional relationship of the intermediate points can be constructed.
[0119] The initial functional relationship is constructed based on the intermediate point and the relevant parameters of each joint. In the three-joint robotic arm structure of this scheme, the relevant parameters of each joint may include the reference point on the joint axis of the first rotary joint, the first joint angle of the first rotary joint, the direction vector of the joint axis of the first rotary joint, the movement distance of the moving joint, and the direction vector of the joint axis of the moving joint. That is, based on the determined three-joint robotic arm configuration, the initial functional relationship can be uniquely determined.
[0120] Similarly, the constraint function relationship of the intermediate point is also uniquely determined under the above conditions. The constraint function relationship here can include geometric constraint functions and algebraic constraint functions.
[0121] Based on the uniquely determined initial and constraint function relationships, a unique fundamental function relationship can be obtained. This allows for the accurate determination of the objective function relationship of the three-joint robotic arm under the positional relationship of each joint axis. Thus, the motion parameters of each joint with high accuracy can be obtained through the analysis of the objective function relationship, effectively solving the inverse kinematics problem of the three-joint robotic arm.
[0122] S204. Based on the value of the first joint angle of the first rotary joint, the value of the second joint angle of the second rotary joint, and the movement distance of the movable joint, control the movement of the three-joint robotic arm so that the end of the robot body moves from the initial point to the command point.
[0123] Optionally, the mobile joint can be controlled to move according to the moving distance, the first rotary joint can be controlled to move according to the value of the first joint angle, and the second rotary joint can be controlled to move according to the value of the second joint angle, thereby moving the end of the robot body from the starting point to the command point and realizing one motion control.
[0124] In summary, the robot control method provided in this embodiment, through inverse kinematics solution of the objective function relationship of the three-joint manipulator under the determined positional relationship of each joint axis, can accurately obtain the motion parameters of each joint, thereby controlling the movement of each joint based on the motion parameters and realizing the motion control of the robot. The objective function relationship is derived from the transformation of the basic function relationship, which is constructed based on the initial function relationship and the constraint function relationship. Given a fixed structure for the three-joint manipulator, since each joint is unique and its parameters are also unique, the initial function relationship and constraint function relationship can be uniquely determined based on the joint parameters of the first rotary joint, the second rotary joint, and the translational joint. Based on the uniquely determined initial function relationship and constraint function relationship, a unique basic function relationship can be obtained. This allows for the accurate determination of the objective function relationship of the three-joint manipulator under the positional relationship of each joint axis, thereby obtaining highly accurate first joint angles, second joint angles, and movement distances through the objective function relationship analysis. The motion control of the manipulator is then performed based on these angles and distances, effectively solving the inverse kinematics problem of the three-joint manipulator.
[0125] Figure 3 Flowchart of the robot control method provided in the embodiments of this application Figure 2 Optionally, in step S202, determining the objective function relationship corresponding to the positional relationship based on the positional relationship of the joint axes of each joint in the three-joint robotic arm may include:
[0126] S301. Based on the positional relationship between the first joint axis of the first rotary joint, the second joint axis of the second rotary joint, and the third joint axis of the movable joint, determine the target equation relationship between the first direction vector of the first joint axis, the second direction vector of the second joint axis, and the third direction vector of the movable joint under the positional relationship.
[0127] When the configuration of a three-joint robotic arm is different, the positional relationship between the axes of the first rotary joint, the second rotary joint, and the movable joint will be different. Under different positional relationships, there will be corresponding target equations that always hold true.
[0128] For example, for two joints, if the first joint axis of the first joint is parallel to the second joint axis of the second joint, then the product of the transpose of the direction vector of the first joint axis and the antisymmetric matrix of the direction vector of the second joint axis is 0. For any two joints, if the first joint axis of the first joint is perpendicular to the second joint axis of the second joint, then the product of the direction vector of the first joint axis and the direction vector of the second joint axis is 0.
[0129] S302. Take the functional relationship corresponding to the objective equation as the objective functional relationship.
[0130] Based on the established target equation relationship, the functional relationship corresponding to the target equation relationship can be determined as the target functional relationship.
[0131] Because the positional relationship of the joint axes is different, the corresponding target equation relationship is different, and different target equation relationships correspond to different functional relationships, thus the target functional relationship under a specific joint axis positional relationship can be uniquely determined.
[0132] Optionally, the initial functional relationship may include: the first functional relationship corresponding to the first intermediate point and the second functional relationship corresponding to the second intermediate point.
[0133] Assume the initial point p moves θ3 along joint axis ξ3 to the intermediate point c, the intermediate point c rotates θ2 around joint axis ξ2 to the intermediate point d, the intermediate point d rotates θ1 around joint axis ξ1 to the command point q, and the reference point p1 is any point on joint axis ξ1, the reference point p2 is any point on joint axis ξ2, and joint axis ξ3 is a moving joint, requiring no reference point. Then we can obtain... Established.
[0134] Where c = θ³v³ + p is the first functional relationship corresponding to the first intermediate point c. This represents the second functional relationship corresponding to the second intermediate point d.
[0135] The first functional relationship is used to characterize the relationship between the first intermediate point c and the initial point p, the movement distance θ3, and the third-direction vector v3 of the moving joint. The movement distance characterizes the movement distance of the moving joint, and the third-direction vector characterizes the direction vector of the joint axis of the moving joint.
[0136] The second functional relationship is used to characterize the relationship between the second intermediate point and the command point q, the first reference point p1, the first joint angle θ1, and the first direction vector ω1; the first reference point characterizes the reference point on the joint axis of the first rotary joint, the first joint angle characterizes the joint angle of the first rotary joint, and the first direction vector characterizes the direction vector of the joint axis of the first rotary joint.
[0137] Continue as Figure 1 As shown, both intermediate points c and d lie on circle 2, which is perpendicular to the second joint axis ξ2. Therefore, the geometric constraint function can be expressed as formula (1):
[0138] ω2 T (dc)=0 (1)
[0139] The algebraic constraint function can be expressed as formula (2):
[0140] ||c-p2||=||d-p2|| (2)
[0141] Based on geometric constraint functions, algebraic constraint functions, and the first and second functional relationships, the fundamental functional relationships can be determined.
[0142] Optionally, the first and second functional relationships can be substituted into formulas (1) and (2), and the squares of both sides of the equality in formula (2) can be taken. By replacing them with the corresponding Rodrigues formula, formulas (1) and (2) can be transformed into formulas (3) and (4) respectively:
[0143] x1sinθ1+y1cosθ1+λ1θ3+z1=0 (3)
[0144]
[0145] The parameters in the formula are λ1=-ω2 T v3, λ2 = -1, λ3 = -2(p - p2) T v3,
[0146]
[0147] Therefore, the basic functional relationships include formulas (3) and (4).
[0148] Next, based on the different configurations of the three-joint robotic arm, we will discuss different cases and provide analytical explanations of the inverse solution for each case.
[0149] Figure 4 Flowchart of the robot control method provided in the embodiments of this application Figure 3 Case 1: ξ2⊥ξ3 and ξ2∥ξ1, that is, the second joint axis of the second rotary joint is perpendicular to the third joint axis of the movable joint, and the second joint axis of the second rotary joint is parallel to the first joint axis of the first rotary joint. Then the objective function relationship is the first function relationship.
[0150] When the second joint axis ξ2 is parallel to the first joint axis ξ1 and the second joint axis ξ2 is perpendicular to the third joint axis ξ3, the target equation relationship can be determined. and ω2 TIf v3 = 0, then points c, d, p1, and p2 are all located in the same plane P1, which passes through points p and q and is perpendicular to the joint axis ξ2. Here, ω1 represents the direction vector of the first joint axis, ω2 represents the direction vector of the second joint axis, and v3 represents the direction vector of the third joint axis. Therefore, x1 = y1 = λ1 = z1 = 0, and formula (3) in the basic function relationship always holds. Formula (4) contains two unknown variables, namely joint angles θ1 and θ3, thus there are two possibilities: a unique solution and an infinite solution.
[0151] Optionally, in step S203, determining the first joint angle of the first rotary joint, the second joint angle of the second rotary joint, and the movement distance of the movable joint according to the objective function relationship may include:
[0152] S401. Determine the position vector of the first intermediate point when the functional relationship between the first joint angle and the moving distance in the basic functional relationship has a unique solution.
[0153] Figure 5 This is a schematic diagram of a mathematical model of a three-joint robotic arm with a unique solution to a function, provided as an embodiment of this application. Figure 5 As shown, when the joint angles θ1 and θ3 in formula (4) of the basic functional relationship have a unique solution, let l 12 =||p1-p2||, representing the length of the common perpendicular between the two joint axes; l 23 =||c-p2||, representing the perpendicular distance between point p2 and the joint axis ξ3 passing through point p; δ1 =||q-p1||, representing the perpendicular distance between point q and the joint axis ξ1. The premise for having one and only one solution is that point c must be the point of tangency between circle 2 and the joint axis ξ3 passing through point p, i.e., satisfying l 23 =l 12 +δ1, and the position of point c is c=p+v3v3 T (p2-p).
[0154] Based on this, it can be determined that in the basic function relationship formula (4), when the joint angles θ1 and θ3 have a unique solution, the position vector of the first intermediate point is c = p + v3v3. T (p2-p).
[0155] S402. Determine the movement distance of the moving joint based on the objective function relationship and the position vector of the first intermediate point.
[0156] In case 1, the objective function relationship is the first objective function relationship, which is: c = θ³v³ + p. Therefore, the position vector of the first intermediate point is c = p + v³v³. TSubstituting (p2-p) into the objective function relationship, we can obtain the value of the moving distance θ3 of the moving joint.
[0157] Alternatively, when there is only one unique solution for the movement distance θ3, a simpler solution relationship is θ3=-λ3 / (2λ2), which can be used to solve for the value of the movement distance θ3 of the moving joint.
[0158] S403. Determine the value of the first joint angle based on the travel distance and the functional relationship related to the first joint angle of the first rotary joint in the basic functional relationship.
[0159] In one feasible approach, the value of the moving distance θ3 of the moving joint is substituted into formula (3) or formula (4) in the basic function relationship to obtain the value of the first joint angle θ1 analytically.
[0160] In another feasible approach, given that the distance θ3 has a unique solution, formula (5) can be obtained:
[0161] λ3 2 -4λ2(x2sinθ1+y2cosθ1+z2)=0 (5)
[0162] The value of the first joint angle θ1 can be obtained analytically by using formula (5) and combining it with trigonometric functions.
[0163] S404. Based on the value of the first joint angle, the moving distance, the first functional relationship, and the second functional relationship, determine the value of the first intermediate point and the value of the second intermediate point respectively.
[0164] In some embodiments, the value of the first joint angle θ1 and the second functional relationship corresponding to the second intermediate point are used. The value of the second intermediate point d can be obtained analytically; based on the value of the moving distance θ3 and the first functional relationship c = θ3v3 + p corresponding to the first intermediate point, the value of the first intermediate point c can be obtained analytically.
[0165] S405. Determine the value of the second joint angle based on the value of the first intermediate point, the value of the second intermediate point, and the preset motion function relationship of the spatial point around the joint axis.
[0166] Here, we first explain the motion function relationship of a pre-defined spatial point about a joint axis. The Paden-Kahan subproblem is expressed as spatial point p rotating about joint axis ξ by an angle θ to spatial point q, i.e. Converting homogeneous coordinates to spatial coordinates, we obtain formula (6):
[0167]
[0168] When point p in formula (6) indicates the first intermediate point c and point q indicates the second intermediate point d, then θ indicates the second joint angle θ2 and ω indicates the direction vector of the second joint axis. Therefore, the value of the second joint angle θ2 can be obtained analytically based on the value of the first intermediate point c, the value of the second intermediate point d and formula (6).
[0169] Figure 6 This is a schematic diagram of a mathematical model of a three-joint robotic arm with infinite solutions to a function, provided as an embodiment of this application. Figure 6 As shown, point c' is the foot of the perpendicular from point p2 to the joint axis ξ3 passing through point p. Similarly, l 23 ′=||c'-p2||, representing the perpendicular distance between point p2 and the joint axis ξ3 passing through point p; l 23 =||c-p2||, representing the distance from point p2 to point c. When l 23 ′ <l 12 When +δ1, the joint angles θ1 and θ3 have infinite solutions, and the range of infinite solutions is max(l 12 -δ1,0)≤l 23 <l 12 +δ1.
[0170] Figure 7 Flowchart of the robot control method provided in the embodiments of this application Figure 4 Case 2: ξ2⊥ξ3 and That is, if the second joint axis of the second rotary joint is perpendicular to the third joint axis of the movable joint, and the second joint axis of the second rotary joint is not parallel to the first joint axis of the first rotary joint, then the objective function relationship is the function relationship related to the first joint angle in the basic function relationship.
[0171] When the joint axis ξ2 is not parallel to ξ1 but perpendicular to ξ3, the target equation relationship remains unchanged. and ω2 T If v3 = 0, then λ1 = 0. Therefore, formula (3) in the fundamental function relationship is transformed into formula (7) as follows:
[0172] x1sinθ1+y1cosθ1+z1=0 (7)
[0173] Therefore, the objective function relationship is expressed as: x1sinθ1+y1cosθ1+z1=0.
[0174] Optionally, in step S203, determining the first joint angle of the first rotary joint, the second joint angle of the second rotary joint, and the movement distance of the movable joint according to the objective function relationship may include:
[0175] S701. Determine the value of the first joint angle based on the objective function relationship.
[0176] Since the objective function is a linear equation in one variable about the first joint angle θ1, the value of the first joint angle θ1 can be obtained by solving the objective function and trigonometric functions.
[0177] S702. Determine the movement distance based on the value of the first joint angle and the functional relationship between the first joint angle and the movement distance in the basic functional relationship.
[0178] Substituting the value of the first joint angle θ1 into formula (4) in the basic function relationship, the value of the moving distance θ3 of the moving joint can be obtained by solving the quadratic equation.
[0179] S703. Based on the value of the first joint angle, the moving distance, the first functional relationship, and the second functional relationship, determine the value of the first intermediate point and the value of the second intermediate point respectively.
[0180] Optionally, based on the value of the first joint angle θ1 and the second functional relationship corresponding to the second intermediate point. The value of the second intermediate point d can be obtained analytically; based on the value of the moving distance θ3 and the first functional relationship c = θ3v3 + p corresponding to the first intermediate point, the value of the first intermediate point c can be obtained analytically.
[0181] S704. Determine the value of the second joint angle based on the value of the first intermediate point, the value of the second intermediate point, and the preset motion function relationship of the spatial point around the joint axis.
[0182] Similarly, the value of the second joint angle θ2 can be obtained analytically based on the value of the first intermediate point c, the value of the second intermediate point d, and formula (6).
[0183] Figure 8 Flowchart of the robot control method provided in the embodiments of this application Figure 5 Case 3: ξ2 is not perpendicular to ξ3 and ξ2∥ξ1, that is, the second joint axis of the second rotary joint is not perpendicular to the third joint axis of the traversing joint, and the second joint axis of the second rotary joint is parallel to the first joint axis of the first rotary joint. Then the objective function relationship is the function relationship related to the movement distance in the basic function relationship.
[0184] When joint axis ξ2 is parallel to ξ1 but not perpendicular to ξ3, the target equation relationship is... and ω2 T If v3≠0 holds true, then x1=y1=0. Therefore, formula (3) in the basic functional relationship is transformed into the following formula (8):
[0185] λ1θ3+z1=0 (8)
[0186] Therefore, the objective function relationship is expressed as: λ1θ3+z1=0.
[0187] Optionally, in step S203, determining the first joint angle of the first rotary joint, the second joint angle of the second rotary joint, and the movement distance of the movable joint according to the objective function relationship may include:
[0188] S801. Determine the moving distance based on the objective function relationship.
[0189] Optionally, since the objective function is a linear equation in one variable concerning the distance θ3, the value of the distance θ3 can be obtained by solving the objective function.
[0190] S802. Determine the value of the first joint angle based on the movement distance and the functional relationship between the first joint angle and the movement distance in the basic function relationship.
[0191] Substituting the value of the moving distance θ3 into formula (4) in the basic function relationship, and solving the quadratic equation, the value of the first joint angle θ1 can be obtained.
[0192] S803. Based on the value of the first joint angle, the moving distance, the first functional relationship, and the second functional relationship, determine the value of the first intermediate point and the value of the second intermediate point respectively.
[0193] Based on the value of the first joint angle θ1 and the second function relationship corresponding to the second intermediate point The value of the second intermediate point d can be obtained analytically; based on the value of the moving distance θ3 and the first functional relationship c = θ3v3 + p corresponding to the first intermediate point, the value of the first intermediate point c can be obtained analytically.
[0194] S804. Determine the value of the second joint angle based on the value of the first intermediate point, the value of the second intermediate point, and the preset motion function relationship of the spatial point around the joint axis.
[0195] The value of the second joint angle θ2 can be obtained analytically based on the value of the first intermediate point c, the value of the second intermediate point d, and formula (6).
[0196] Figure 9 Flowchart of the robot control method provided in the embodiments of this application Figure 6 Case 4: ξ2 is not perpendicular to ξ3 and That is, the second joint axis of the second rotary joint is not perpendicular to the third joint axis of the locating joint, and the second joint axis of the second rotary joint is not parallel to the first joint axis of the first rotary joint.
[0197] When the joint axis ξ2 is neither parallel to ξ1 nor perpendicular to ξ3, the target equation relationship remains unchanged. and ω2T v3≠0 holds true, meaning that the coefficients in formulas (3) and (4) of the basic function relationship are not 0. In this case, to derive the general case, if the first joint axis and the second joint axis intersect, and the first reference point on the first joint axis and the second reference point on the second joint axis are not intersection points; there are two unknown variables, joint angles θ1 and θ3, in formulas (3) and (4). In order to solve the unknowns, the joint angle θ3 in formula (3) can be transformed into θ3=-(x1sinθ1+y1cosθ1+z1) / λ1 and substituted into formula (4), so as to obtain the following formula (9):
[0198] a1sin 2 θ1+a2cos 2 θ1+a3sinθ1cosθ1+a4sinθ1+a5cosθ1+a6=0 (9)
[0199] Therefore, the objective function relationship is expressed as: a1sin 2 θ1+a2cos 2 θ1+a3sinθ1cosθ1+a4sinθ1+a5cosθ1+a6=0.
[0200] The coefficients of each term are a1 = λ2x1 2 a2=λ2y1 2 a3 = 2λ2x1y1, a4 = λ1 2 x2+2λ2x1z1-λ1λ3x1, a5=λ1 2 y2+2λ2y1z1-λ1λ3y1, a6=λ2z1 2 -λ1λ3z1+λ1 2 z2.
[0201] When the first reference point p1 and the second reference point p2 are chosen as the intersection point, the fundamental function relationship has no solution.
[0202] Optionally, in step S203, determining the first joint angle of the first rotary joint, the second joint angle of the second rotary joint, and the movement distance of the movable joint according to the objective function relationship may include:
[0203] S901. Based on the objective function relationship and the half-angle function, the objective function relationship is transformed to obtain a new function relationship.
[0204] Optionally, the objective function is a univariate trigonometric equation about the first joint angle θ1. For ease of solution, the trigonometric functions are transformed. Let t = tanθ12, then we can obtain sinθ1 = 2t / (1+t) 2 ) and cosθ1=(1-t 2) / (1+t 2 Therefore, by transforming the objective function relationship using this formula, a new functional relationship can be obtained, expressed as formula (10):
[0205] m1t 4 +m2t 3 +m3t 2 +m4t+m5=0 (10)
[0206] The parameters in the formula are m1=a2-a5+a6, m2=2(a4-a3), m3=2(2a1-a2+a6), m4=2(a3+a4), and m5=a2+a5+a6.
[0207] S902. Determine the value of the first joint angle based on the new functional relationship.
[0208] Since the new functional relationship formula (10) is a quartic equation with variable t, the variable t can be solved using the Ferrari method. Therefore, the value of the first joint angle θ1 can be solved by θ1 = 2arctant.
[0209] S903. Determine the movement distance based on the value of the first joint angle and the functional relationship between the first joint angle and the movement distance in the basic functional relationship.
[0210] Substituting the value of the first joint angle θ1 into formula (3) in the basic function relationship, the value of the moving distance θ3 of the moving joint can be further solved.
[0211] S904. Based on the value of the first joint angle, the moving distance, the first functional relationship, and the second functional relationship, determine the value of the first intermediate point and the value of the second intermediate point respectively.
[0212] Based on the value of the first joint angle θ1 and the second function relationship corresponding to the second intermediate point The value of the second intermediate point d can be obtained analytically; based on the value of the moving distance θ3 and the first functional relationship c = θ3v3 + p corresponding to the first intermediate point, the value of the first intermediate point c can be obtained analytically.
[0213] S905. Determine the value of the second joint angle based on the value of the first intermediate point, the value of the second intermediate point, and the preset motion function relationship of the spatial point around the joint axis.
[0214] The value of the second joint angle θ2 can be obtained analytically based on the value of the first intermediate point c, the value of the second intermediate point d, and formula (6).
[0215] Based on the discussion of the above four cases, the inverse kinematics analysis process of the RRT three-joint manipulator under each case is explained in detail. This method can effectively solve the inverse kinematics of the RRT three-joint manipulator, and the method can be applied to the inverse kinematics of RRT three-joint manipulators with arbitrary configurations.
[0216] The following specific examples illustrate the application of this method to the inverse solution of RRT subproblems and its application to the inverse kinematics solution and simulation verification of robotic arms.
[0217] First, let's explain the basic mathematical knowledge involved:
[0218] The physical meaning of the three-joint kinematic model based on spinor theory is clear: it represents the rotation or movement of a spatial point about the joint axis, as shown below:
[0219]
[0220] Under the same joint axis, by reversing the sequence of movements and changing the positions of the starting and ending points, formula (4-1) can be transformed into:
[0221]
[0222] Spatial point p rotates by an angle θ around the joint axis ξ to spatial point q, i.e. Converting homogeneous coordinates to spatial coordinates, we obtain formula (4-3):
[0223]
[0224] It is worth noting that formula (4-3) is the same as formula (6) mentioned above.
[0225] Where vector r represents any point r on the joint axis ξ. Rodriguez formula Substituting into formula (4-3), we get:
[0226] xsinθ+ycosθ+z=0 (4-4)
[0227] in Because x T y=0 and x T x = y T The properties of y, the rotation angle θ can be obtained through and Please provide a solution.
[0228] The distance invariance principle is commonly applied when solving for the angles of revolute joints, often accompanied by squaring both sides of the equation. For example, if the distance between vectors s and t is δ, i.e., ||st||=δ, then squaring both sides of the equation easily yields ||s||.2 +||t|| 2 +2t T s=δ 2 .
[0229] First: Simulation verification of the analytical inverse solution of the RRT subproblems
[0230] Figure 10 This is a schematic diagram of a simulation result provided for an embodiment of this application. The previous section analyzed in detail the possible forms of the RRT subproblem and all analytical inverse solution methods. Here, case 4 is selected: the general case where joint axis ξ2 is neither parallel to ξ1 nor perpendicular to ξ3, and simulation is performed to verify the correctness of the analytical solution. Given a set of joint rotations and reference point positions that satisfy the joint axis relationships, the direction vectors of the three joint axes are ω1 = [1 0 1]. T ω2=[0 1 1] T v3 = [2 1 0] T The reference point position vectors for the two rotational joints are p1 = [0 0 0]. T p2 = [5 0 0] T The initial position vector of point p is p = [5 -10 -5]. T Given the range of motion of the three joints as follows: and Based on the given range of motion, 51 sets of data points are uniformly sampled. The position of point q after point p moves around each joint is calculated using formula (4-1). The inverse kinematics (IK) of the three joints is then calculated based on the position of point q, and the angle values of the IK are compared with the given sampled data points. It is important to note that the direction vector of each moving joint needs to be normalized before calculation, i.e., ω = ω / ||ω||. After obtaining the IK values of the joints, the IK values need to be evaluated; if they do not meet the range constraints, they are discarded. The sampling points and IK values of the joints are as follows: Figure 10 As shown, the symbol "o" represents the sampling point of each joint, the symbol "+" represents the inverse kinematics value of each joint, the curve marked with a triangle represents the joint angle θ1, the curve marked with a square represents the joint angle θ2, and the curve marked with a circle represents the joint angle θ3. Figure 10 It can be seen that the sampling point is consistent with the inverse solution value, and there is no error in the theoretical calculation, which verifies the correctness of the analytical solution of the proposed RRT subproblem.
[0231] Second: Solving and Simulation Verification of Inverse Kinematics of the Robotic Arm
[0232] Figure 11 This is a schematic diagram of an 8-DOF robotic arm provided as an embodiment of this application. Figure 11As shown, the robotic arm has 8 degrees of freedom, including 4 position adjustment joints, 3 attitude adjustment joints, and 1 degree of freedom for adjusting the rotation angle. Figure 4 As shown, by establishing the screw coordinate system of the robotic arm, the following relationship can be obtained:
[0233]
[0234] The reference points for the axes of each rotary joint are:
[0235]
[0236] The initial pose matrix of the robotic arm's tool coordinate system relative to the base coordinate system is:
[0237] g ste (0) = [I 3×3 (a 2e +a 3e +d 5e cosα 4e 0 d 1e -d 5e sinα 4e ) T ;0 3×1 1] (4-7)
[0238] The pose transformation after rigid body motion is as follows:
[0239]
[0240] Since the distal point remains unchanged, the first four degrees of freedom remain stationary during the operation. The movement of the distal end around its own axis is separated from the posture adjustment, and the corresponding joint angles can be read by the encoder. Formula (4-8) can be transformed into:
[0241]
[0242] The right side of formula (4-9) is the product of three joint transformation matrices, multiplied by the homogeneous coordinates of a point p not on the axis on both sides of formula (4-9). make Formula (4-9) is converted to:
[0243]
[0244] Formula (4-10) is the form of an RRT subproblem. Here, the telecentric mechanism has joints 5 and 6 intersecting perpendicularly, and joints 6 and 7 perpendicular to each other. The second case of the RRT subproblem can be applied to solve the angle values of joints 5, 7, and 6 in sequence.
[0245] Figure 12This is a schematic diagram of another simulation result provided for an embodiment of this application. To verify the correctness of the inverse solution method, the structural parameter value of the robotic arm is given as d. 1e =1000mm, a 2e =300mm, a 3e =300mm, α 4e =5π / 18rad, d 5e =800mm. Given the angle values of the passive joints of the robotic arm as θ1=200mm, θ2=π / 9rad, θ3=-π / 18rad, θ4=-π / 18rad, θ8=0rad, the range of motion of the active joints is θ5∈[-π / 2,π / 2]rad, θ6∈[-π / 4,π / 2]rad, θ7∈[100,300]mm, and the motion curve of the active joint is... θ7 = 4(x-1) + 100mm. As shown in Figure 12, the symbol "o" represents the sampling point of each joint, the symbol "+" represents the inverse solution value of each joint, curve 1 represents the joint angle θ5, curve 2 represents the joint angle θ6, and curve 3 represents the joint angle θ7. From Figure 12, it can be seen that the sampling points and inverse solution values of the active joints of the robotic arm are consistent, and there is no error in the theoretical calculation, verifying the correctness of the application of the analytical solution of the RRT subproblem in the inverse solution of the robotic arm joints.
[0246] In summary, the robot control method provided in this embodiment, through inverse kinematics solution of the objective function relationship of the three-joint manipulator under the determined positional relationship of each joint axis, can accurately obtain the motion parameters of each joint, thereby controlling the movement of each joint based on the motion parameters and realizing the motion control of the robot. The objective function relationship is derived from the transformation of the basic function relationship, which is constructed based on the initial function relationship and the constraint function relationship. Given a fixed structure for the three-joint manipulator, since each joint is unique and its parameters are also unique, the initial function relationship and constraint function relationship can be uniquely determined based on the joint parameters of the first rotary joint, the second rotary joint, and the translational joint. Based on the uniquely determined initial function relationship and constraint function relationship, a unique basic function relationship can be obtained. This allows for the accurate determination of the objective function relationship of the three-joint manipulator under the positional relationship of each joint axis, thereby obtaining highly accurate first joint angles, second joint angles, and movement distances through the objective function relationship analysis. The motion control of the manipulator is then performed based on these angles and distances, effectively solving the inverse kinematics problem of the three-joint manipulator.
[0247] The following describes the apparatus, equipment, and storage medium used to execute the robot control method provided in this application. The specific implementation process and technical effects are described above and will not be repeated below.
[0248] Figure 13 This is a schematic diagram of a robot control device provided in an embodiment of this application. The functions implemented by this robot control device correspond to the steps executed by the above-described method. This device can be understood as the aforementioned electronic device, or the processor of an electronic device, such as... Figure 13 As shown, the device may include: an acquisition module 110, a determination module 120, and a control module 130;
[0249] The acquisition module 110 is used to acquire the command point to be reached by the end of the robot body;
[0250] The determination module 120 is used to determine the objective function relationship corresponding to the positional relationship based on the positional relationship of the joint axes of each joint in the three-joint robotic arm.
[0251] The determination module 120 is used to determine the values of the first joint angle of the first rotary joint, the second joint angle of the second rotary joint, and the movement distance of the movable joint according to the objective function relationship. The objective function relationship is obtained by transforming the basic function relationship. The basic function relationship is constructed based on the initial function relationship of the intermediate point and the constraint function relationship of the intermediate point. The initial function relationship is constructed based on the intermediate point and joint-related parameters. The joint-related parameters include: the current starting point and command point of the robot body's end effector, the reference point on the joint axis of the first rotary joint, the first joint angle of the first rotary joint, the direction vector of the joint axis of the first rotary joint, the movement distance of the movable joint, and the direction vector of the joint axis of the movable joint. The intermediate point includes the specified point traversed by the robot body's end effector during its movement from the initial point to the command point.
[0252] The control module 130 is used to control the movement of the three-joint robotic arm based on the value of the first joint angle of the first rotary joint, the value of the second joint angle of the second rotary joint, and the movement distance of the movable joint, so that the end of the robot body moves from the initial point to the command point.
[0253] Optionally, the determining module 120 is specifically used to determine the target equation relationship between the first direction vector of the first joint axis, the second direction vector of the second joint axis, and the third direction vector of the movable joint under the positional relationship, based on the positional relationship between the first joint axis of the first rotary joint, the second joint axis of the second rotary joint, and the third joint axis of the movable joint.
[0254] The functional relationship corresponding to the objective equation is taken as the objective functional relationship.
[0255] Optionally, the initial functional relationship includes: the first functional relationship corresponding to the first intermediate point and the second functional relationship corresponding to the second intermediate point;
[0256] The first functional relationship is used to characterize the relationship between the first intermediate point and the initial point, the movement distance, and the third direction vector. The movement distance characterizes the movement distance of the moving joint, and the third direction vector characterizes the direction vector of the joint axis of the moving joint.
[0257] The second functional relationship is used to characterize the relationship between the second intermediate point and the command point, the first reference point, the first joint angle, and the first direction vector; the first reference point characterizes the reference point on the joint axis of the first rotary joint, the first joint angle characterizes the joint angle of the first rotary joint, and the first direction vector characterizes the direction vector of the joint axis of the first rotary joint.
[0258] Optionally, if the second joint axis of the second rotary joint is perpendicular to the third joint axis of the movable joint, and the second joint axis of the second rotary joint is parallel to the first joint axis of the first rotary joint, then the objective function relationship is the first function relationship;
[0259] Module 120 is specifically used to determine the position vector of the first intermediate point when the functional relationship between the first joint angle and the moving distance in the basic functional relationship has a unique solution.
[0260] Based on the objective function relationship and the position vector of the first intermediate point, determine the movement distance of the moving joint;
[0261] The value of the first joint angle is determined based on the distance traveled and the functional relationship related to the first joint angle of the first rotary joint in the basic functional relationship;
[0262] Based on the value of the first joint angle, the moving distance, and the first and second functional relationships, the values of the first and second intermediate points are determined respectively.
[0263] The value of the second joint angle is determined based on the values of the first intermediate point, the second intermediate point, and the preset motion function relationship of the spatial point around the joint axis.
[0264] Optionally, if the second joint axis of the second rotary joint is perpendicular to the third joint axis of the movable joint, and the second joint axis of the second rotary joint is not parallel to the first joint axis of the first rotary joint, then the objective function relationship is the function relationship related to the first joint angle in the basic function relationship;
[0265] Module 120 is specifically used to determine the value of the first joint angle based on the objective function relationship;
[0266] The movement distance is determined based on the value of the first joint angle and the functional relationship between the first joint angle and the movement distance in the basic functional relationship;
[0267] Based on the value of the first joint angle, the moving distance, and the first and second functional relationships, the values of the first and second intermediate points are determined respectively.
[0268] The value of the second joint angle is determined based on the values of the first intermediate point, the second intermediate point, and the preset motion function relationship of the spatial point around the joint axis.
[0269] Optionally, if the second joint axis of the second rotary joint is not perpendicular to the third joint axis of the movable joint, and the second joint axis of the second rotary joint is parallel to the first joint axis of the first rotary joint, then the objective function relationship is the function relationship related to the movement distance in the basic function relationship;
[0270] Module 120 is specifically used to determine the movement distance based on the objective function relationship;
[0271] The value of the first joint angle is determined based on the movement distance and the functional relationship between the first joint angle and the movement distance in the basic functional relationship;
[0272] Based on the value of the first joint angle, the moving distance, and the first and second functional relationships, the values of the first and second intermediate points are determined respectively.
[0273] The value of the second joint angle is determined based on the values of the first intermediate point, the second intermediate point, and the preset motion function relationship of the spatial point around the joint axis.
[0274] Optionally, if the second joint axis of the second rotary joint is not perpendicular to the third joint axis of the movable joint, and the second joint axis of the second rotary joint is not parallel to the first joint axis of the first rotary joint; at the same time, the first joint axis and the second joint axis intersect, and the first reference point on the first joint axis and the second reference point on the second joint axis are not intersection points; then the objective function relationship is the function relationship related to the first joint angle in the basic function relationship.
[0275] Module 120 is specifically used to transform the objective function relationship based on the objective function relationship and the half-angle function to obtain a new function relationship;
[0276] Based on the new functional relationship, determine the value of the first joint angle;
[0277] The movement distance is determined based on the value of the first joint angle and the functional relationship between the first joint angle and the movement distance in the basic functional relationship;
[0278] Based on the value of the first joint angle, the moving distance, and the first and second functional relationships, the values of the first and second intermediate points are determined respectively.
[0279] The value of the second joint angle is determined based on the values of the first intermediate point, the second intermediate point, and the preset motion function relationship of the spatial point around the joint axis.
[0280] The above-described device is used to execute the method provided in the foregoing embodiments, and its implementation principle and technical effect are similar, so they will not be described again here.
[0281] These modules can be one or more integrated circuits configured to implement the above methods, such as one or more Application Specific Integrated Circuits (ASICs), one or more digital signal processors (DSPs), or one or more Field Programmable Gate Arrays (FPGAs). Alternatively, when a module is implemented using processing element scheduler code, the processing element can be a general-purpose processor, such as a Central Processing Unit (CPU) or other processor capable of calling program code. Furthermore, these modules can be integrated together as a system-on-a-chip (SOC).
[0282] The modules described above can be connected or communicate with each other via wired or wireless connections. Wired connections can include metal cables, optical fibers, hybrid cables, or any combination thereof. Wireless connections can include connections via LAN, WAN, Bluetooth, ZigBee, or NFC, or any combination thereof. Two or more modules can be combined into a single module, and any module can be divided into two or more units. Those skilled in the art will understand that, for the sake of convenience and brevity, the specific working processes of the systems and devices described above can be referred to the corresponding processes in the method embodiments, and will not be repeated here.
[0283] Figure 14 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application, such as... Figure 14 As shown, the device may include: a processor 801 and a storage medium 802.
[0284] Storage medium 802 is used to store programs, and processor 801 calls the programs stored in storage medium 802 to execute the above method embodiments. The specific implementation and technical effects are similar, and will not be described in detail here.
[0285] The storage medium 802 stores program code, which, when executed by the processor 801, causes the processor 801 to perform various steps in the methods according to various exemplary embodiments of this application described in the "Exemplary Methods" section above.
[0286] The processor 801 can be a general-purpose processor, such as a central processing unit (CPU), digital signal processor (DSP), application-specific integrated circuit (ASIC), field-programmable gate array (FPGA), or other programmable logic device, discrete gate or transistor logic device, or discrete hardware component, capable of implementing or executing the methods, steps, and logic block diagrams disclosed in the embodiments of this application. The general-purpose processor can be a microprocessor or any conventional processor. The steps of the methods disclosed in the embodiments of this application can be directly manifested as being executed by a hardware processor, or executed by a combination of hardware and software modules within the processor.
[0287] Storage medium 802, as a non-volatile computer-readable storage medium, can be used to store non-volatile software programs, non-volatile computer-executable programs, and modules. The storage medium can include at least one type of storage medium, such as flash memory, hard disk, multimedia card, card-type storage medium, random access memory (RAM), static random access memory (SRAM), programmable read-only memory (PROM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), magnetic storage medium, magnetic disk, optical disk, etc. The storage medium is any other medium capable of carrying or storing desired program code in the form of instructions or data structures that can be accessed by a computer, but is not limited thereto. In the embodiments of this application, storage medium 802 can also be a circuit or any other device capable of implementing storage functions for storing program instructions and / or data.
[0288] Optionally, this application also provides a program product, such as a computer-readable storage medium, including a program that, when executed by a processor, performs the above-described method embodiments.
[0289] In the several embodiments provided in this application, it should be understood that the disclosed apparatus and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection between apparatuses or units may be electrical, mechanical, or other forms.
[0290] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0291] Furthermore, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or in a combination of hardware and software functional units.
[0292] The integrated units implemented as software functional units described above can be stored in a computer-readable storage medium. These software functional units, stored in a storage medium, include several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) or processor to execute some steps of the methods described in the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.
Claims
1. A robot control method, characterized in that, An electronic device used in a robot control system, the system comprising an electronic device and a robot body, the robot body comprising a three-joint robotic arm, the three-joint robotic arm comprising a first rotary joint, a second rotary joint, and a kinetic joint connected sequentially; the method comprising: Obtain the command point to be reached by the end effector of the robot body; Based on the positional relationship of the joint axes of each joint in the three-joint robotic arm, determine the objective function relationship corresponding to the positional relationship; Based on the target function relationship, the values of the first joint angle of the first rotary joint, the second joint angle of the second rotary joint, and the movement distance of the movable joint are determined respectively. The target function relationship is obtained by transforming the basic function relationship. The basic function relationship is constructed based on the initial function relationship of the intermediate point and the constraint function relationship of the intermediate point. The initial function relationship is constructed based on the intermediate point and joint-related parameters. The joint-related parameters include: the current initial point of the robot body's end effector, the command point, the reference point on the joint axis of the first rotary joint, the first joint angle of the first rotary joint, the direction vector of the joint axis of the first rotary joint, the movement distance of the movable joint, and the direction vector of the joint axis of the movable joint. The intermediate point includes the designated point traversed by the robot body's end effector during its movement from the initial point to the command point. Based on the value of the first joint angle of the first rotary joint, the value of the second joint angle of the second rotary joint, and the movement distance of the movable joint, the movement of the three-joint robotic arm is controlled so that the end of the robot body moves from the initial point to the command point.
2. The method according to claim 1, characterized in that, The step of determining the target function relationship corresponding to the positional relationship of each joint axis in the three-joint robotic arm includes: Based on the positional relationship between the first joint axis of the first rotary joint, the second joint axis of the second rotary joint, and the third joint axis of the movable joint, determine the target equation relationship between the first direction vector of the first joint axis, the second direction vector of the second joint axis, and the third direction vector of the movable joint under the positional relationship; The functional relationship corresponding to the target equation is taken as the target functional relationship.
3. The method according to claim 1, characterized in that, The initial functional relationship includes: the first functional relationship corresponding to the first intermediate point and the second functional relationship corresponding to the second intermediate point; The first functional relationship is used to characterize the relationship between the first intermediate point and the initial point, the movement distance and the third direction vector, wherein the movement distance characterizes the movement distance of the moving joint and the third direction vector characterizes the direction vector of the joint axis of the moving joint; The second functional relationship is used to characterize the relationship between the second intermediate point and the command point, the first reference point, the first joint angle, and the first direction vector; the first reference point characterizes the reference point on the joint axis of the first rotary joint, the first joint angle characterizes the joint angle of the first rotary joint, and the first direction vector characterizes the direction vector of the joint axis of the first rotary joint.
4. The method according to claim 3, characterized in that, If the second joint axis of the second rotary joint is perpendicular to the third joint axis of the movable joint, and the second joint axis of the second rotary joint is parallel to the first joint axis of the first rotary joint, then the objective function relationship is the first function relationship. The step of determining the first joint angle of the first rotary joint, the second joint angle of the second rotary joint, and the movement distance of the movable joint according to the objective function relationship includes: The position vector of the first intermediate point when the functional relationship between the first joint angle and the moving distance in the basic functional relationship has a unique solution; The movement distance of the moving joint is determined based on the objective function relationship and the position vector of the first intermediate point; The value of the first joint angle is determined based on the travel distance and the functional relationship related to the first joint angle of the first rotary joint in the basic functional relationship; The values of the first intermediate point and the second intermediate point are determined based on the value of the first joint angle, the movement distance, the first functional relationship, and the second functional relationship, respectively. The value of the second joint angle is determined based on the value of the first intermediate point, the value of the second intermediate point, and the preset motion function relationship of the spatial point around the joint axis.
5. The method according to claim 3, characterized in that, If the second joint axis of the second rotary joint is perpendicular to the third joint axis of the movable joint, and the second joint axis of the second rotary joint is not parallel to the first joint axis of the first rotary joint, then the target function relationship is the function relationship related to the first joint angle in the basic function relationship; The step of determining the first joint angle of the first rotary joint, the second joint angle of the second rotary joint, and the movement distance of the movable joint according to the objective function relationship includes: The value of the first joint angle is determined based on the objective function relationship; The movement distance is determined based on the value of the first joint angle and the functional relationship between the first joint angle and the movement distance in the basic functional relationship; The values of the first intermediate point and the second intermediate point are determined based on the value of the first joint angle, the movement distance, the first functional relationship, and the second functional relationship, respectively. The value of the second joint angle is determined based on the value of the first intermediate point, the value of the second intermediate point, and the preset motion function relationship of the spatial point around the joint axis.
6. The method according to claim 3, characterized in that, If the second joint axis of the second rotary joint is not perpendicular to the third joint axis of the movable joint, and the second joint axis of the second rotary joint is parallel to the first joint axis of the first rotary joint, then the target function relationship is the function relationship related to the movement distance in the basic function relationship; The step of determining the first joint angle of the first rotary joint, the second joint angle of the second rotary joint, and the movement distance of the movable joint according to the objective function relationship includes: The movement distance is determined based on the objective function relationship; The value of the first joint angle is determined based on the travel distance and the functional relationship between the first joint angle and the travel distance in the basic functional relationship; The values of the first intermediate point and the second intermediate point are determined based on the value of the first joint angle, the movement distance, the first functional relationship, and the second functional relationship, respectively. The value of the second joint angle is determined based on the value of the first intermediate point, the value of the second intermediate point, and the preset motion function relationship of the spatial point around the joint axis.
7. The method according to claim 3, characterized in that, If the second joint axis of the second rotary joint is not perpendicular to the third joint axis of the movable joint, and the second joint axis of the second rotary joint is not parallel to the first joint axis of the first rotary joint; simultaneously, the first joint axis and the second joint axis intersect, and the first reference point on the first joint axis and the second reference point on the second joint axis are not intersection points; then the target function relationship is the function relationship related to the first joint angle in the basic function relationship. The step of determining the first joint angle of the first rotary joint, the second joint angle of the second rotary joint, and the movement distance of the movable joint according to the objective function relationship includes: Based on the objective function relationship and the half-angle function, the objective function relationship is transformed to obtain a new function relationship; Based on the new functional relationship, determine the value of the first joint angle; The movement distance is determined based on the value of the first joint angle and the functional relationship between the first joint angle and the movement distance in the basic functional relationship; The values of the first intermediate point and the second intermediate point are determined based on the value of the first joint angle, the movement distance, the first functional relationship, and the second functional relationship, respectively. The value of the second joint angle is determined based on the value of the first intermediate point, the value of the second intermediate point, and the preset motion function relationship of the spatial point around the joint axis.
8. A robot control device, characterized in that, An electronic device used in a robot control system, the system including an electronic device and a robot body, the robot body including a three-joint robotic arm, the three-joint robotic arm including a first rotary joint, a second rotary joint and a kinetic joint connected in sequence; the device includes: an acquisition module, a determination module and a control module; The acquisition module is used to acquire the command point to be reached by the end of the robot body; The determining module is used to determine the target function relationship corresponding to the positional relationship based on the positional relationship of the joint axes of each joint in the three-joint robotic arm; The determining module is used to determine the value of the first joint angle of the first rotary joint, the value of the second joint angle of the second rotary joint, and the movement distance of the movable joint according to the target function relationship. The target function relationship is obtained by transforming the basic function relationship. The basic function relationship is constructed based on the initial function relationship of the intermediate point and the constraint function relationship of the intermediate point. The initial function relationship is constructed based on the intermediate point and joint-related parameters. The joint-related parameters include: the current initial point of the robot body's end effector, the command point, the reference point on the joint axis of the first rotary joint, the first joint angle of the first rotary joint, the direction vector of the joint axis of the first rotary joint, the movement distance of the movable joint, and the direction vector of the joint axis of the movable joint. The intermediate point includes the designated point traversed by the robot body's end effector during its movement from the initial point to the command point. The control module is used to control the movement of the three-joint robotic arm based on the value of the first joint angle of the first rotary joint, the value of the second joint angle of the second rotary joint, and the movement distance of the movable joint, so that the end of the robot body moves from the initial point to the command point.
9. An electronic device, characterized in that, include: The device includes a processor, a storage medium, and a bus, wherein the storage medium stores program instructions executable by the processor, and when the electronic device is running, the processor communicates with the storage medium via the bus, and the processor executes the program instructions to perform the steps of the robot control method as described in any one of claims 1 to 7.
10. A computer-readable storage medium, characterized in that, The storage medium stores a computer program, which, when executed by a processor, performs the steps of the robot control method as described in any one of claims 1 to 7.