Mechanical arm motion control method and device based on norm correction, medium and program
Through the norm correction method, the joint angular momentum and position error of the robotic arm are obtained, and iterative formulas are designed to calculate the joint end position at the next moment, which solves the problem of poor real-time and accuracy in the tracking of the movement trajectory, and effectively tracking movements in a limited time.
Patent Information
- Application Number
- CN202411593448.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-08
- Publication Date
- 2025-03-11
- Estimated Expiration
- 2044-11-08
AI Technical Summary
During the tracking of the motion trajectory of the robotic arm, the model complexity and calculation cost are high, resulting in poor real-time and accuracy, and the tracking motion cannot be completed within a limited time.
By obtaining the joint angular momentum of the robotic arm, extracting the expected and actual joint end positions, calculating the error function and its derivatives, designing an iterative formula to calculate the joint end positions at the next moment, and sending control instructions to complete trajectory tracking.
Reduces hardware costs and complexity, improves the ability of the robotic arm to track motion for a limited time, and enhances real-time and accuracy.
Smart Images

Figure CN119589661A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of robotic arm technology, and in particular to a robotic arm motion control method, device, medium and program based on norm correction. Background Art
[0002] Robotics is a high-tech technology that integrates multiple disciplines such as computers, cybernetics, structural science, information and sensor technology, artificial intelligence, etc. Currently, research on robotics is very active and is increasingly being applied to a wide range of fields.
[0003] Since the control of the robot system has high real-time requirements, the control of the manipulator needs to have high real-time performance. Many current studies are based on the optimization and improvement of dynamic neural network algorithms to make the control model have high accuracy and real-time performance. Most studies tend to use nonlinear excitation functions or integrator operations to achieve finite-time control, which will significantly increase hardware costs and computational complexity. At the same time, most models involve matrix inversion calculations. In the process of the manipulator tracking the motion trajectory, the model has high complexity and computational cost, poor real-time performance and accuracy, and cannot complete the manipulator tracking movement within a limited time.
[0004] The above contents are only used to assist in understanding the technical solution of the present application and do not constitute an admission that the above contents are prior art. Summary of the invention
[0005] The main purpose of this application is to provide a robot arm motion control method, device, medium and program based on norm correction, aiming to solve the technical problems that in the process of the robot arm tracking the motion trajectory, the model complexity and calculation cost are high, the real-time performance and accuracy are poor, and the robot arm tracking movement cannot be completed within a limited time.
[0006] To achieve the above objectives, the present application proposes a robot arm motion control method based on norm correction, the method comprising:
[0007] Obtain the joint angular momentum of the robot arm and extract the expected and actual joint end positions at the current moment;
[0008] Calculating an error function, a transpose of the error function, and a time derivative of the error function based on the desired and actual joint end positions;
[0009] Calculate the transpose of the Jacobian matrix of the forward kinematics of the robot arm according to the joint angular momentum;
[0010] According to the error function, the transpose of the error function, the time derivative of the error function and the transpose of the Jacobian matrix, an iterative formula is designed to calculate the joint end position at the next moment;
[0011] According to the joint end position at the next moment, a control instruction is sent to the robot arm to control the movement of the robot arm until the given trajectory tracking task is completed.
[0012] In one embodiment, the step of obtaining the joint angular momentum of the robot arm and extracting the expected and actual joint end positions at the current moment includes:
[0013] Initialize the sensor and obtain the angle data of each joint of the robotic arm;
[0014] The joint angular velocity is calculated based on the acquired joint angle data;
[0015] Calculating the joint angular acceleration according to the joint angular velocity;
[0016] The joint angular momentum of the robot arm is calculated according to the joint angle data, the joint angular velocity and the joint angular acceleration.
[0017] In one embodiment, the step of obtaining the joint angular momentum of the robot arm and extracting the expected and actual joint end positions at the current moment further includes:
[0018] Calculate the expected joint end position at the current moment according to the preset motion trajectory or target position;
[0019] The actual joint end position at the current moment is calculated through the current joint angular momentum and forward kinematics.
[0020] In one embodiment, the step of calculating the error function, the transpose of the error function and the time derivative of the error function according to the expected and actual joint end positions comprises:
[0021] Get the expected joint end position and actual joint end position at the current moment;
[0022] An error function is calculated based on the difference between the expected and actual joint end positions, and the error function is transposed;
[0023] The time rate of change of the error function is calculated to obtain the time derivative of the error function.
[0024] In one embodiment, the step of calculating the transpose of the Jacobian matrix of the forward kinematics of the robot arm according to the joint angular momentum comprises:
[0025] Initialize the joint parameters and link parameters of the robot;
[0026] The angle data of each joint of the robotic arm is obtained in real time through sensors;
[0027] According to the joint parameters, link parameters and joint angle data, the position and posture of the end of the robotic arm are obtained through forward kinematics calculation of the robotic arm;
[0028] The Jacobian matrix of the robotic arm is calculated according to the position and posture of the end of the robotic arm;
[0029] The Jacobian matrix is transposed.
[0030] In one embodiment, the step of designing an iterative formula and calculating the joint end position at the next moment according to the error function, the transpose of the error function, the time derivative of the error function and the transpose of the Jacobian matrix includes:
[0031] Get the error function at the current moment, the transpose of the error function, the time derivative of the error function, and the transpose of the Jacobian matrix;
[0032] Constructing a state space model of the robotic arm, inputting the error function at the current moment, the transpose of the error function, the time derivative of the error function and the transpose of the Jacobian matrix, and outputting the joint angular momentum of the robotic arm online;
[0033] According to a preset iterative formula, the joint end position at the next moment is iteratively calculated based on the joint angular momentum of the robot arm until the preset iterative formula converges.
[0034] In one embodiment, the step of sending a control instruction to the robot arm to control the movement of the robot arm according to the joint end position at the next moment until the given trajectory tracking task is completed includes:
[0035] Obtaining an error value of the error function;
[0036] Calculate the second norm value of the error value;
[0037] Determine whether the second norm value of the error value is greater than an error threshold;
[0038] If the second norm value of the error value is less than or equal to the error threshold, the joint angular momentum remains unchanged;
[0039] If the binary norm value of the error value is greater than the error threshold, iterating based on a preset iterative formula to obtain a new joint angular momentum;
[0040] The joint end position at the next moment is updated according to the joint angular momentum.
[0041] In addition, to achieve the above purpose, the present application also proposes a robot arm motion control device based on norm correction, and the robot arm motion control device based on norm correction includes:
[0042] The data acquisition module is used to obtain the joint angular momentum of the robot arm and extract the expected and actual joint end positions at the current moment;
[0043] The first calculation module is used to obtain the joint angular momentum of the robot arm and extract the expected and actual joint end positions at the current moment;
[0044] A second calculation module is used to calculate the transpose of the Jacobian matrix of the forward kinematics of the robot arm according to the joint angular momentum;
[0045] A position prediction module, used to design an iterative formula and calculate the joint end position at the next moment according to the error function, the transpose of the error function, the time derivative of the error function and the transpose of the Jacobian matrix;
[0046] The motion control module is used to send a control instruction to the robot arm to control the movement of the robot arm according to the joint end position at the next moment until the given trajectory tracking task is completed.
[0047] In addition, to achieve the above-mentioned purpose, the present application also proposes a robotic arm motion control device based on norm correction, the device comprising: a memory, a processor, and a computer program stored on the memory and executable on the processor, the computer program being configured to implement the steps of the robotic arm motion control method based on norm correction as described above.
[0048] In addition, to achieve the above-mentioned purpose, the present application also proposes a storage medium, which is a computer-readable storage medium, and a computer program is stored on the storage medium. When the computer program is executed by the processor, the steps of the robot arm motion control method based on norm correction as described above are implemented.
[0049] In addition, to achieve the above-mentioned purpose, the present application also provides a computer program product, which includes a computer program, and when the computer program is executed by a processor, it implements the steps of the robot arm motion control method based on norm correction as described above.
[0050] One or more technical solutions proposed in this application have at least the following technical effects:
[0051] The invention obtains the joint angular momentum of the robot arm and extracts the expected and actual joint end positions at the current moment; calculates the error function, the transpose of the error function and the time derivative of the error function according to the expected and actual joint end positions; calculates the transpose of the Jacobian matrix of the forward kinematics of the robot arm according to the joint angular momentum; designs an iterative formula and calculates the joint end positions at the next moment according to the error function, the transpose of the error function, the time derivative of the error function and the transpose of the Jacobian matrix; sends a control instruction to the robot arm to control the movement of the robot arm according to the joint end positions at the next moment until the given trajectory tracking task is completed, thereby solving the technical problems that in the process of the robot arm tracking the motion trajectory, the model complexity and calculation cost are high, the real-time performance and accuracy are poor, and the robot arm tracking movement cannot be completed within a limited time. Compared with the prior art, the invention is conducive to reducing hardware cost, reducing hardware complexity, and completing the robot arm tracking movement within a limited time. BRIEF DESCRIPTION OF THE DRAWINGS
[0052] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present application and, together with the description, serve to explain the principles of the present application.
[0053] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, for ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative labor.
[0054] Figure 1 A flow chart of the first embodiment of the robot arm motion control method based on norm correction provided in the present application;
[0055] Figure 2 A flow chart of the second embodiment of the robot arm motion control method based on norm correction provided in the present application;
[0056] Figure 3 A flow chart of the third embodiment of the robot arm motion control method based on norm correction provided in the present application;
[0057] Figure 4 A flow chart of a fourth embodiment of a robot arm motion control method based on norm correction provided in the present application;
[0058] Figure 5 A flowchart diagram of a fifth embodiment of a robot arm motion control method based on norm correction provided in the present application;
[0059] Figure 6 A flow chart of a sixth embodiment of a method for controlling a robot arm motion based on norm correction according to the present application;
[0060] Figure 7 A flow chart of the seventh embodiment of the robot arm motion control method based on norm correction provided in the present application;
[0061] Figure 8 This is a schematic diagram of the module structure of a robot arm motion control device based on norm correction according to an embodiment of the present application;
[0062] Fig. 9 Schematic diagram of the device structure of the hardware operating environment involved in the robot arm motion control method based on norm correction in the embodiment of the present application.
[0063] The purpose, features and advantages of this application will be further described in conjunction with the embodiments and with reference to the accompanying drawings. DETAILED DESCRIPTION
[0064] It should be understood that the specific embodiments described herein are only used to explain the technical solutions of the present application and are not used to limit the present application.
[0065] In order to better understand the technical solution of the present application, a detailed description will be given below in conjunction with the accompanying drawings and specific implementation methods.
[0066] In the process of tracking the motion trajectory of the robot arm in the existing technology, the model has high complexity and calculation cost, and the real-time performance and accuracy are poor, and the robot arm tracking movement cannot be completed within a limited time.
[0067] The present application provides a solution to obtain the joint angular momentum of a robotic arm and extract the expected and actual joint end positions at the current moment; calculate the error function, the transpose of the error function and the time derivative of the error function according to the expected and actual joint end positions; calculate the transpose of the Jacobian matrix of the forward kinematics of the robotic arm according to the joint angular momentum; design an iterative formula and calculate the joint end position at the next moment according to the error function, the transpose of the error function, the time derivative of the error function and the transpose of the Jacobian matrix; send a control instruction to the robotic arm to control the movement of the robotic arm according to the joint end position at the next moment until a given trajectory tracking task is completed, thereby effectively reducing hardware costs, reducing hardware complexity, and completing the tracking movement of the robotic arm within a limited time.
[0068] Based on this, the embodiment of the present application provides a robot arm motion control method based on norm correction, referring to Figure 1 , Figure 1 This is a flow chart of the first embodiment of the robot arm motion control method based on norm correction of the present application.
[0069] In this embodiment, the robot arm motion control method based on norm correction includes steps S10 to S50:
[0070] Step S10, obtaining the joint angular momentum of the robot arm, and extracting the expected and actual joint end positions at the current moment;
[0071] It should be noted that the joint angular momentum is related to the angular velocity and torque data of the joint; the expected joint end position is usually a predefined path point or a target position calculated in real time; ensure that the expected and actual joint end position data are collected at the same time.
[0072] Specifically, the joint angular momentum of the robot arm is collected through sensors or control systems, and the expected joint end position is obtained from the motion planning or control system of the robot arm. Encoders or other position feedback devices can be used to measure the actual joint end position of the robot arm, and the expected and actual joint end positions are compared to calculate the position error for feedback control or performance analysis.
[0073] Step S20, calculating an error function, a transpose of the error function, and a time derivative of the error function according to the expected and actual joint end positions;
[0074] It should be noted that, first of all, the forward kinematics equation of the end effector of the robot arm can be expressed as Where θ represents the joint angular momentum. Based on the forward kinematics equation, the error function expression between the actual joint end position and the expected joint end position is: That is, f(t) = r d -r a ; If the error function is a column vector, then its transpose f(t) T is a row vector; the time derivative of the error function represents the rate of change of the error over time where r d represents the desired joint end position, r a Indicates the actual joint end position.
[0075] Step S30, calculating the transpose of the Jacobian matrix of the forward kinematics of the robot arm according to the joint angular momentum;
[0076] It should be noted that the Jacobian matrix is a matrix that describes the mapping from joint space to operation space, which converts joint velocity into end effector velocity. For a robotic arm, each column of the Jacobian matrix represents the influence of the corresponding joint velocity on the end effector velocity. The elements of the Jacobian matrix J(θ(t)) can be calculated by taking the partial derivatives of the end effector position vector with respect to each joint angle. The transpose of the Jacobian matrix J(θ(t)) T is a matrix that maps the end effector velocity back to the joint velocities.
[0077] Step S40, designing an iterative formula and calculating the joint end position at the next moment according to the error function, the transpose of the error function, the time derivative of the error function and the transpose of the Jacobian matrix;
[0078] It should be noted that this iterative formula is usually used in feedback control systems to adjust the joint angle to reduce the position error of the end effector. The iterative formula is
[0079]
[0080] Among them, the parameter τ represents the sampling interval, the subscript θ represents the kth iteration, f(t) represents the error value between the desired joint end position and the actual joint end position, ν and λ represent positive experimental parameters, Represents the bi-norm value of the error value, θ k Represents the joint angle vector at the current moment.
[0081] Step S50, sending a control instruction to the robot arm to control the movement of the robot arm according to the joint end position at the next moment, until the given trajectory tracking task is completed;
[0082] It should be noted that the control instruction is generated by calculating the joint angle adjustment amount at the next moment through a designed iterative formula, and applying this joint angle adjustment amount to the current joint angle to obtain the target joint angle at the next moment.
[0083] Specifically, the calculated target joint angle at the next moment is converted into an instruction format that can be understood by the robot arm, and the control instruction is sent to each joint driver of the robot arm through the control system. The joint driver of the robot arm adjusts the joint angle according to the received instruction. During the movement of the robot arm, the joint angle, angular velocity and position data of the end effector are collected in real time, the error between the actual end position and the expected end position is calculated, and the control instruction is adjusted as needed to reduce the error. At the same time, the above steps are repeated until the end effector of the robot arm completes the predetermined trajectory tracking task. An error threshold is set to determine whether the task is completed. When the binary norm value of the error value is less than the error threshold, the task is considered to be completed.
[0084] This embodiment provides a robot arm motion control method based on norm correction, which obtains the joint angular momentum of the robot arm and extracts the expected and actual joint end positions at the current moment; calculates the error function, the transpose of the error function and the time derivative of the error function according to the expected and actual joint end positions; calculates the transpose of the Jacobian matrix of the forward kinematics of the robot arm according to the joint angular momentum; designs an iterative formula and calculates the joint end position at the next moment according to the error function, the transpose of the error function, the time derivative of the error function and the transpose of the Jacobian matrix; sends a control instruction to the robot arm to control the movement of the robot arm according to the joint end position at the next moment until the given trajectory tracking task is completed, which is beneficial to reduce hardware costs, reduce hardware complexity, and complete the robot arm tracking movement within a limited time.
[0085] Further, refer to Figure 2 The second embodiment of the robot arm motion control method based on norm correction of the present application provides a flow chart. Figure 2 The embodiment shown further refines the step S10 of "obtaining the joint angular momentum of the robot arm and extracting the expected and actual joint end positions at the current moment", including steps A201 to A204:
[0086] Step A201, initializing the sensor and obtaining the angle data of each joint of the robotic arm;
[0087] It should be noted that it is necessary to ensure that all joint angle sensors, such as encoders, have been correctly installed and calibrated, and collect angle data of each joint of the robotic arm in real time from the sensors.
[0088] Step A202, calculating the joint angular velocity according to the acquired joint angle data;
[0089] It should be noted that a finite difference method or other numerical methods may be used to calculate the angular velocity, or a filter (a low-pass filter and a high-pass filter) may be used to smooth the angular velocity data to reduce the influence of noise.
[0090] Step A203, calculating the joint angular acceleration according to the joint angular velocity;
[0091] It should be noted that a finite difference method or other numerical methods may be used to calculate the angular acceleration, or a filter may be used to smooth the angular acceleration data to reduce the influence of noise.
[0092] Step A204, calculating the joint angular momentum of the robot arm according to the joint angle data, the joint angular velocity and the joint angular acceleration.
[0093] It should be noted that the torque of each joint can be calculated using a dynamic equation, and the joint angular momentum of the robotic arm can be calculated based on the joint angle data, joint angular velocity and joint angular acceleration, and the calculation can be repeated to obtain the joint angular momentum of the entire robotic arm.
[0094] In this embodiment, joint angle data is acquired through sensors, joint angular velocity and angular acceleration are calculated, and the joint angular momentum of the robotic arm is obtained based on forward kinematics. This can more accurately control the movement of the robotic arm, evaluate the performance of the robotic arm, and adjust the control strategy accordingly to improve the overall performance.
[0095] In another feasible implementation, step S10 further includes:
[0096] Calculate the expected joint end position at the current moment according to the preset motion trajectory or target position;
[0097] It should be noted that motion planning algorithms, such as linear interpolation, circular interpolation, or more complex trajectory planning algorithms, can be used to calculate the desired joint end positions at the current moment;
[0098] The actual joint end position at the current moment is calculated through the current joint angular momentum and forward kinematics.
[0099] It should be noted that, through the forward kinematics model of the robotic arm, the joint angles, angular velocities and angular accelerations are converted into actual end positions in the operating space, and the parameters in the joint space can be mapped to the position and posture in the Cartesian space.
[0100] Further, refer to Figure 3 The second embodiment of the robot arm motion control method based on norm correction of the present application provides a flow chart. Figure 3 In the embodiment shown, the step S20 of "calculating the error function, the transpose of the error function and the time derivative of the error function according to the expected and actual joint end positions" is further refined to include steps A301 to A303:
[0101] Step A301, obtaining the expected joint end position and the actual joint end position at the current moment;
[0102] Step A302, calculating an error function according to the difference between the expected and actual joint end positions, and performing a transposition operation on the error function;
[0103] It should be noted that the joint end position error vector is obtained by calculating the difference between the expected joint end position and the actual joint end position; the transposed error function is a row vector.
[0104] Step A303, calculating the time rate of change of the error function to obtain the time derivative of the error function;
[0105] It should be noted that the time derivative of the error function is calculated by performing time differentiation on the error function; the time derivative of the error function represents the rate of change of the joint position error over time and is used to evaluate the dynamic characteristics of the error.
[0106] Specifically, in a simple linear motion robot, assume that a one-degree-of-freedom robot moves on a linear trajectory and its desired end position r d is a function that increases linearly with time, for example r d (t) = 2t (unit: meter), where t is time (unit: second);
[0107] Actual end position r a Measured by the encoder, for example, r a (t) = 2t + 0.1;
[0108] Calculate the error function: f(t) = r d -r a =2t-(2t+0.1)=-0.1, which is a constant error;
[0109] Compute the transpose of the error function: f(t) T =-0.1, the error function after transposition is still a constant;
[0110] Compute the time derivative of the error function: That is because the error does not change with time.
[0111] In this embodiment, by calculating the position error of the end effector of the robot arm, as well as the transpose and time derivative of the error, the control system is helpful to adjust the joint angle of the robot arm to reduce the position error and improve the tracking accuracy.
[0112] Further, refer to Figure 4 The second embodiment of the robot arm motion control method based on norm correction of the present application provides a flow chart. Figure 4 In the embodiment shown, the "calculating the transpose of the Jacobian matrix of the forward kinematics of the robot arm according to the joint angular momentum" in step S30 is further refined, including steps A401 to A405:
[0113] Step A401, initializing the joint parameters and link parameters of the robot arm;
[0114] It should be noted that before data processing, it is necessary to determine the joint type of the robotic arm, such as rotating joints, sliding joints, etc., as well as the physical parameters of the joints, such as limit joints, friction, etc.; define the connecting rod parameters of the robotic arm by initialization, including connecting rod length, mass, moment of inertia, etc., and input these parameters into the control system of the robotic arm.
[0115] Step A402, obtaining angle data of each joint of the robotic arm in real time through sensors;
[0116] Step A403, obtaining the position and posture of the end of the robotic arm through forward kinematics calculation of the robotic arm according to the joint parameters, link parameters and angle data of the joints;
[0117] It should be noted that the front-line kinematic model of the robotic arm is used to convert the joint angle data into the position and posture of the end of the robotic arm, and calculate the position (x, y, z) and posture (such as rotation matrix or quaternion) of the end effector in the Cartesian coordinate system.
[0118] Step A404, calculating the Jacobian matrix of the robotic arm according to the position and posture of the end of the robotic arm;
[0119] It should be noted that the Jacobian matrix describes the relationship between the joint velocity and the end effector velocity of the robot arm.
[0120] Step A405, transpose the Jacobian matrix.
[0121] Specifically, for the tracking path control of an industrial robot arm, it is assumed that there is an industrial robot arm with six degrees of freedom, whose joint types include revolute joints and sliding joints; the joint parameters include the maximum speed and torque limit of each joint, and the link parameters include the link length, mass and moment of inertia; the angle data of each joint is acquired in real time through a calibrated encoder; the Cartesian coordinate position and posture of the end effector are calculated using a forward kinematics model in combination with the joint angle data and the link parameters; based on the current state of the end effector of the robot arm, the Jacobian matrix is calculated to describe the relationship between the joint velocity and the end effector velocity; the Jacobian matrix is transposed for use in a feedback controller, for example, for calculating the joint torque to track the desired path.
[0122] In this embodiment, by initializing the parameters of the robotic arm, acquiring joint angle data in real time, calculating the end position and posture, and obtaining the Jacobian matrix and its transpose, it is helpful to more accurately calculate the end position and posture of the robotic arm, reduce the jitter and overshoot of the robotic arm during movement, enable the robotic arm to adapt to complex working environments and task requests, and improve overall performance and safety.
[0123] Further, refer to Figure 5The second embodiment of the robot arm motion control method based on norm correction of the present application provides a flow chart. Figure 5 In the embodiment shown, the step S40 of "designing an iterative formula and calculating the joint end position at the next moment according to the error function, the transpose of the error function, the time derivative of the error function and the transpose of the Jacobian matrix" is further refined, including steps A501 to A503:
[0124] Step A501: Obtain the error function at the current moment, the transpose of the error function, the time derivative of the error function and the transpose of the Jacobian matrix;
[0125] Step A502, constructing a state space model of the robotic arm, inputting the error function at the current moment, the transpose of the error function, the time derivative of the error function and the transpose of the Jacobian matrix, and obtaining the joint angular momentum of the robotic arm by online output;
[0126] It should be noted that the state space model of the robotic arm is expressed as
[0127]
[0128] Where f(t) represents the desired joint end position r d and the actual position r of the joint end a The error function is expressed as r d -r a , r d represents the desired joint end position, r a represents the actual joint end position, J(θ(t)) represents the kinematic Jacobian matrix, is the joint angular momentum, which corresponds to the control input of the robot arm, ν and λ are positive experimental parameters; ν should be set as small as possible so that the denominator is not 0 and can be as close to the theoretical value as possible; λ should be set as large as possible to ensure that the model converges faster; the joint angular momentum is calculated through the state space model by taking the error function at the current moment, the transpose of the error function, the time derivative of the error function and the transpose of the Jacobian matrix as input.
[0129] Step A503, according to a preset iterative formula, iteratively calculate the joint end position at the next moment based on the joint angular momentum of the robot arm until the preset iterative formula converges.
[0130] It should be noted that an iterative formula, such as a PID control law or a more advanced control strategy, is used in combination with the joint angular momentum to calculate the joint acceleration; the joint angle is updated according to the joint acceleration and the current joint velocity, and the updated joint angle is used to calculate the new joint end position through forward kinematics; the above iterative process is repeated until the error of the end position reaches a predetermined error threshold and the iterative formula converges; if the task is completed, stop sending control instructions, and perform operations such as status update, data recording, data analysis, and system reset.
[0131] Specifically, when two robotic arms perform the task of collaboratively moving a large object in Cartesian space, the error function, the transpose of the error function, the time derivative of the error function, and the transpose of the Jacobian matrix at the current moment are obtained in the control system or control module, and then input into the state space model constructed by the dynamic models of the two robotic arms to calculate the joint angular momentum. A collaborative control strategy, such as master-slave control or shared control, is used to calculate the joint acceleration in combination with the joint angular momentum. The joint angle is updated according to the joint acceleration and the current joint velocity. The updated joint angle is used to calculate the new joint end position through forward kinematics. The above iterative process is repeated until the error of the end position reaches a predetermined error threshold and the iterative formula converges.
[0132] In this embodiment, by designing an iterative formula, the joint end position at the next moment can be calculated based on the error function at the current moment and the transpose of the Jacobian matrix, which helps to achieve precise control and dynamic adjustment of the robotic arm to track the desired trajectory or reach the target position.
[0133] Further, refer to Figure 6 The second embodiment of the robot arm motion control method based on norm correction of the present application provides a flow chart. Figure 6 In the embodiment shown, before the step S50 of "sending a control instruction to the robot arm to control the movement of the robot arm according to the joint end position at the next moment until the given trajectory tracking task is completed" includes steps A601 to A606:
[0134] Step A601, obtaining the error value of the error function;
[0135] Step A602, calculating the binary norm of the error value;
[0136] It should be noted that the second norm value of the error value is expressed as That is, the Euclidean norm of the error vector, which quantifies the magnitude of the overall error.
[0137] Step A603, determining whether the second norm value of the error value is greater than an error threshold;
[0138] Step A604, if the second norm value of the error value is less than or equal to the error threshold, the joint angular momentum remains unchanged;
[0139] Step A605, if the second norm value of the error value is greater than the error threshold, iterate based on a preset iterative formula to obtain a new joint angular momentum;
[0140] Step A606, updating the joint end position at the next moment according to the joint angular momentum.
[0141] It should be noted that the new joint angular momentum is used to update the joint angle, and then the joint end position at the next moment is obtained through forward kinematics calculation; based on the joint end position at the next moment, the inverse kinematics algorithm can be used to calculate the required joint angle. Commonly used inverse kinematics algorithms include analytical methods and numerical methods (such as the Newton-Raphson method), which convert the joint end position and posture into joint angles to ensure that the robotic arm can reach the specified position, and generate control instructions based on the calculated joint angles. The control instructions can be set values for the joint angles or set values for the joint speeds, depending on the control strategy.
[0142] Specifically, suppose there is a robotic arm tracking a complex trajectory in Cartesian space, where the preset error threshold is 0.001 meters, which is used to determine whether the error between the end position of the robotic arm and the expected trajectory is within an acceptable range; compare the calculated second norm values The error threshold is 0.001 meters. meters, the error is within the acceptable range and the current joint angular momentum remains unchanged; if If the error is too large, use a pre-set iterative formula, such as PID control law or a more advanced control strategy, combined with the error function f(t), the transpose of the error function (f(t)) T , time derivative of the error function and the transpose of the Jacobian matrix J(θ(t)) T To calculate the new joint angular momentum θ(t); use the new joint angular momentum θ(t) to update the joint angle θ k+1 , and then the joint end position at the next moment is calculated through forward kinematics; the above steps are repeated until the error between the end position of the robot arm and the expected trajectory reaches the preset error threshold of 0.001 meters, or the given trajectory tracking task is completed.
[0143] By comparing the binary norm of the error value with the error threshold, this embodiment can adjust the movement of the robotic arm according to the current error situation and track the given trajectory as accurately as possible, so that the robotic arm can adaptively respond to external disturbances and model uncertainties, thereby improving the performance and reliability of the robotic arm.
[0144] In another embodiment, if Figure 7 As shown in the figure, a joint robot based on norm correction is shown. Taking the PUMA560 robot as an example, let θ = [θ1, θ2, θ3, θ4, θ5, θ6] T , represents the joint angular momentum of the robot, let r = [r x ,r y ,r z ] T , represents the coordinates of the end effector of the robot arm, and at the same time, extracts the expected joint end position r at the current moment d =[r dx ,r dy ,r dz ] T , calculate the actual joint end position r according to the function φ(θ) a =[r ax ,r ay ,r az ] T ; Set the state space model of the robot arm to
[0145]
[0146] Set the parameters λ = 2, ν = 0.00001. Knowing the joint angular momentum θ at the current moment, the forward kinematics Jacobian matrix J(θ) and the Jacobian matrix time derivative can be calculated. Therefore, the robot can be further expressed as
[0147]
[0148] According to the Jacobian matrix J(θ), the joint angular momentum θ of the robot at the current moment, and the error function f(θ) = r d -r a =[r x ,r y ,r z ] T , the expected joint end position r at the current moment d and the actual joint end position r a , calculate the joint angular momentum; according to this application, initialize the joint angular momentum θ so that θ(0) = [-2π / 5, -π / 2, 7π / 10, 3π / 5, π / 3, π / 2] T , so the joint angle vector of the robot can be output online through the following iterative formula:
[0149]
[0150] The sampling interval τ is set to 0.01s, so the k+1th joint angular momentum can be output according to the kth iteration, and then the end of the robot arm can be controlled to track the given motion trajectory within a limited time.
[0151] It should be noted that the above examples are only used to understand the present application and do not constitute a limitation on the robot arm motion control method based on norm correction of the present application. More forms of simple transformations based on this technical concept are all within the scope of protection of the present application.
[0152] In addition, the present application also provides a robot arm motion control device based on norm correction, please refer to Figure 8 , the robot arm motion control device based on norm correction includes:
[0153] Step 10: Data acquisition module, used to obtain the joint angular momentum of the robot arm and extract the expected and actual joint end positions at the current moment;
[0154] Step 20: A first calculation module is used to obtain the joint angular momentum of the robot arm and extract the expected and actual joint end positions at the current moment;
[0155] Step 30: a second calculation module, used to calculate the transpose of the Jacobian matrix of the forward kinematics of the robot arm according to the joint angular momentum;
[0156] Step 40: a position prediction module, used to design an iterative formula and calculate the joint end position at the next moment according to the error function, the transpose of the error function, the time derivative of the error function and the transpose of the Jacobian matrix;
[0157] Step 50: A motion control module is used to send a control instruction to the robot arm to control the movement of the robot arm according to the joint end position at the next moment, until the given trajectory tracking task is completed.
[0158] The robot arm motion control device based on norm correction provided by the present application adopts the robot arm motion control method based on norm correction in the above-mentioned embodiment, which can solve the technical problems that in the process of the robot arm tracking the motion trajectory, the model complexity and calculation cost are high, the real-time performance and accuracy are poor, and the robot arm tracking movement cannot be completed within a limited time. Compared with the prior art, the beneficial effects of the robot arm motion control device based on norm correction provided by the present application are the same as the beneficial effects of the robot arm motion control method based on norm correction provided by the above-mentioned embodiment, and the other technical features of the robot arm motion control device based on norm correction are the same as the features disclosed in the above-mentioned embodiment method, which will not be repeated here.
[0159] In addition, the present application also provides a robotic arm motion control device based on norm correction, and the robotic arm motion control device based on norm correction includes: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions that can be executed by at least one processor, and the instructions are executed by at least one processor so that at least one processor can execute the robotic arm motion control method based on norm correction in the above-mentioned embodiment one.
[0160] Reference below Fig. 9 , which shows a schematic diagram of the structure of a robot arm motion control device based on norm correction suitable for implementing the embodiment of the present application. The robot arm motion control device based on norm correction in the embodiment of the present application may include but is not limited to mobile terminals such as mobile phones, laptop computers, digital broadcast receivers, PDAs (Personal Digital Assistants), PADs (Portable Application Descriptions), PMPs (Portable Media Players), vehicle-mounted terminals (such as vehicle-mounted navigation terminals), etc., and fixed terminals such as digital TVs, desktop computers, etc. Fig. 9 The robot arm motion control device based on norm correction shown is only an example and should not bring any limitation to the functions and scope of use of the embodiments of the present application.
[0161] like Fig. 9As shown, the robot arm motion control device based on norm correction may include a processing device 1001 (such as a central processing unit, a graphics processing unit, etc.), which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM: Read Only Memory) 1002 or a program loaded from a storage device 1003 to a random access memory (RAM: Random Access Memory) 1004. In RAM1004, various programs and data required for the operation of xxx equipment are also stored. The processing device 1001, ROM1002 and RAM1004 are connected to each other through a bus 1005. An input / output (I / O) interface 1006 is also connected to the bus. Typically, the following systems can be connected to the I / O interface 1006: input devices 1007 including, for example, a touch screen, a touchpad, a keyboard, a mouse, an image sensor, a microphone, an accelerometer, a gyroscope, etc.; output devices 1008 including, for example, a liquid crystal display (LCD), a speaker, a vibrator, etc.; storage devices 1003 including, for example, a magnetic tape, a hard disk, etc.; and communication devices 1009. The communication device 1009 can allow the robot motion control device based on norm correction to communicate with other devices wirelessly or by wire to exchange data. Although the robot motion control device based on norm correction with various systems is shown in the figure, it should be understood that it is not required to implement or have all the systems shown. More or fewer systems may be implemented or have instead.
[0162] In particular, according to the embodiments disclosed in the present application, the process described above with reference to the flowchart can be implemented as a computer software program. For example, the embodiments disclosed in the present application include a computer program product, which includes a computer program carried on a computer-readable medium, and the computer program includes a program code for executing the method shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from a network through a communication device, or installed from a storage device 1003, or installed from a ROM 1002. When the computer program is executed by the processing device 1001, the above-mentioned functions defined in the method of the embodiment disclosed in the present application are executed.
[0163] The robot arm motion control device based on norm correction provided by the present application adopts the robot arm motion control method based on norm correction in the above embodiment, which can solve the technical problems that in the process of the robot arm tracking the motion trajectory, the model complexity and calculation cost are high, the real-time performance and accuracy are poor, and the robot arm tracking movement cannot be completed within a limited time. Compared with the prior art, the beneficial effects of the robot arm motion control device based on norm correction provided by the present application are the same as the beneficial effects of the robot arm motion control method based on norm correction provided by the above embodiment, and the other technical features of the robot arm motion control device based on norm correction are the same as the features disclosed in the method of the previous embodiment, which will not be repeated here.
[0164] It should be understood that the various parts disclosed in this application can be implemented by hardware, software, firmware or a combination thereof. In the description of the above embodiments, specific features, structures, materials or characteristics can be combined in any one or more embodiments or examples in a suitable manner.
[0165] The above is only a specific implementation of the present application, but the protection scope of the present application is not limited thereto. Any person skilled in the art who is familiar with the present technical field can easily think of changes or substitutions within the technical scope disclosed in the present application, which should be included in the protection scope of the present application. Therefore, the protection scope of the present application should be based on the protection scope of the claims.
[0166] In addition, the present application also provides a computer-readable storage medium having computer-readable program instructions (ie, computer program) stored thereon, and the computer-readable program instructions are used to execute the robot arm motion control method based on norm correction in the above-mentioned embodiment.
[0167] The computer-readable storage medium provided in the present application may be, for example, a USB flash drive, but is not limited to electrical, magnetic, optical, electromagnetic, infrared, or semiconductor systems, systems or devices, or any combination of the above. More specific examples of computer-readable storage media may include, but are not limited to: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above. In this embodiment, the computer-readable storage medium may be any tangible medium containing or storing a program that can be used by or in combination with an instruction execution system, system or device. The program code contained on the computer-readable storage medium may be transmitted using any appropriate medium, including but not limited to: wires, optical cables, RF (Radio Frequency), etc., or any suitable combination of the above.
[0168] The computer-readable storage medium may be included in the robot arm motion control device based on norm correction; or may exist independently without being assembled into the robot arm motion control device based on norm correction.
[0169] The above-mentioned computer-readable storage medium carries one or more programs. When the above-mentioned one or more programs are executed by a robotic arm motion control device based on norm correction, the robotic arm motion control device based on norm correction enables: to obtain the joint angular momentum of the robotic arm, and extract the expected and actual joint end positions at the current moment; to calculate the error function, the transpose of the error function and the time derivative of the error function according to the expected and actual joint end positions; to calculate the transpose of the Jacobian matrix of the forward kinematics of the robotic arm according to the joint angular momentum; to design an iterative formula and calculate the joint end position at the next moment according to the error function, the transpose of the error function, the time derivative of the error function and the transpose of the Jacobian matrix; and to send a control instruction to the robotic arm to control the movement of the robotic arm according to the joint end position at the next moment until a given trajectory tracking task is completed.
[0170] Computer program code for performing the operations of the present application may be written in one or more programming languages or a combination thereof, including object-oriented programming languages such as Java, Smalltalk, C++, and conventional procedural programming languages such as "C" or similar programming languages. The program code may be executed entirely on the user's computer, partially on the user's computer, as a separate software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computer (e.g., via the Internet using an Internet service provider).
[0171] The flow chart and block diagram in the accompanying drawings illustrate the possible architecture, function and operation of the system, method and computer program product according to various embodiments of the present application. In this regard, each box in the flow chart or block diagram can represent a module, a program segment or a part of a code, and the module, the program segment or a part of the code contains one or more executable instructions for realizing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the box can also occur in a sequence different from that marked in the accompanying drawings. For example, two boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram and / or flow chart, and the combination of the boxes in the block diagram and / or flow chart can be implemented with a dedicated hardware-based system that performs the specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.
[0172] The modules involved in the embodiments of the present application may be implemented by software or hardware, wherein the name of the module does not limit the unit itself in some cases.
[0173] The readable storage medium provided by the present application is a computer-readable storage medium, which stores computer-readable program instructions (i.e., computer programs) for executing the above-mentioned robot arm motion control method based on norm correction, and can solve the technical problems that the model complexity and calculation cost are high, the real-time performance and accuracy are poor, and the robot arm tracking motion cannot be completed within a limited time during the robot arm tracking motion trajectory. Compared with the prior art, the beneficial effects of the computer-readable storage medium provided by the present application are the same as the beneficial effects of the robot arm motion control method based on norm correction provided by the above-mentioned embodiment, and will not be repeated here.
[0174] In addition, the present application also provides a computer program product, including a computer program, which, when executed by a processor, implements the steps of the above-mentioned robot arm motion control method based on norm correction.
[0175] The computer program product provided by the present application can solve the technical problems that, in the process of tracking the motion trajectory of the robot arm, the model has high complexity and computational cost, poor real-time performance and accuracy, and cannot complete the robot arm tracking motion within a limited time. Compared with the prior art, the beneficial effects of the computer program product provided by the present application are the same as the beneficial effects of the robot arm motion control method based on norm correction provided by the above embodiment, and will not be repeated here.
[0176] The above descriptions are only some embodiments of the present application, and are not intended to limit the patent scope of the present application. All equivalent structural changes made using the contents of the present application specification and drawings under the technical concept of the present application, or direct / indirect applications in other related technical fields are included in the patent protection scope of the present application.
Claims
1. A robot arm motion control method based on norm correction, characterized in that: The method comprises: Obtain the joint angular momentum of the robot arm and extract the expected and actual joint end positions at the current moment; Calculating an error function, a transpose of the error function, and a time derivative of the error function based on the desired and actual joint end positions; Calculate the transpose of the Jacobian matrix of the forward kinematics of the robot arm according to the joint angular momentum; According to the error function, the transpose of the error function, the time derivative of the error function and the transpose of the Jacobian matrix, an iterative formula is designed to calculate the joint end position at the next moment; According to the joint end position at the next moment, a control instruction is sent to the robot arm to control the movement of the robot arm until the given trajectory tracking task is completed.
2. The method according to claim 1, characterized in that The steps of obtaining the joint angular momentum of the robot arm and extracting the expected and actual joint end positions at the current moment include: Initialize the sensor and obtain the angle data of each joint of the robotic arm; The joint angular velocity is calculated based on the acquired joint angle data; Calculating the joint angular acceleration according to the joint angular velocity; The joint angular momentum of the robot arm is calculated according to the joint angle data, the joint angular velocity and the joint angular acceleration.
3. The method according to claim 2, characterized in that The step of obtaining the joint angular momentum of the robot arm and extracting the expected and actual joint end positions at the current moment also includes: Calculate the expected joint end position at the current moment according to the preset motion trajectory or target position; The actual joint end position at the current moment is calculated through the current joint angular momentum and forward kinematics.
4. The method according to claim 3, characterized in that The step of calculating the error function, the transpose of the error function and the time derivative of the error function according to the expected and actual joint end positions comprises: Get the expected joint end position and actual joint end position at the current moment; An error function is calculated based on the difference between the expected and actual joint end positions, and the error function is transposed; The time rate of change of the error function is calculated to obtain the time derivative of the error function.
5. The method according to claim 4, characterized in that The step of calculating the transpose of the Jacobian matrix of the forward kinematics of the robot arm according to the joint angular momentum comprises: Initialize the joint parameters and link parameters of the robot; The angle data of each joint of the robotic arm is obtained in real time through sensors; According to the joint parameters, link parameters and joint angle data, the position and posture of the end of the robotic arm are obtained through forward kinematics calculation of the robotic arm; The Jacobian matrix of the robotic arm is calculated according to the position and posture of the end of the robotic arm; The Jacobian matrix is transposed.
6. The method according to claim 5, characterized in that The step of designing an iterative formula and calculating the joint end position at the next moment according to the error function, the transpose of the error function, the time derivative of the error function and the transpose of the Jacobian matrix comprises: Get the error function at the current moment, the transpose of the error function, the time derivative of the error function, and the transpose of the Jacobian matrix; Constructing a state space model of the robotic arm, inputting the error function at the current moment, the transpose of the error function, the time derivative of the error function and the transpose of the Jacobian matrix, and outputting the joint angular momentum of the robotic arm online; According to a preset iterative formula, the joint end position at the next moment is iteratively calculated based on the joint angular momentum of the robot arm until the preset iterative formula converges.
7. The method according to claim 6, characterized in that The step of sending a control instruction to the robot arm to control the movement of the robot arm according to the joint end position at the next moment until the given trajectory tracking task is completed includes: Obtaining an error value of the error function; Calculate the second norm value of the error value; Determine whether the second norm value of the error value is greater than an error threshold; If the second norm value of the error value is less than or equal to the error threshold, the joint angular momentum remains unchanged; If the binary norm value of the error value is greater than the error threshold, iterating based on a preset iterative formula to obtain a new joint angular momentum; The joint end position at the next moment is updated according to the joint angular momentum.
8. A robot arm motion control device based on norm correction, characterized in that: The device comprises: a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the computer program is configured to implement the steps of the robot arm motion control method based on norm correction as described in any one of claims 1 to 7.
9. A storage medium, characterized in that: The storage medium is a computer-readable storage medium, and a computer program is stored on the storage medium. When the computer program is executed by a processor, the steps of the robot arm motion control method based on norm correction as described in any one of claims 1 to 7 are implemented.
10. A computer program product, characterized in that The computer program product comprises a computer program, and when the computer program is executed by a processor, the steps of the robot arm motion control method based on norm correction as claimed in any one of claims 1 to 7 are implemented.
Citation Information
Patent Citations
Neutral network theory-based non-linear system adaptive proportional integral control method
CN106647271A
Method for planning repetitive motion of redundant manipulator based on new numerical solver
CN107066698A
Self-adaptive control method and system for redundant mechanical arm based on neurodynamics
CN118493373A
Position control method of robot with high accuracy
JP1984000704A
Cited By
Kinematic error correction method and system of explosion-proof robot
CN120516724A