Control method and device of robotic arm and computer storage medium
By obtaining the angle data between the base coordinate system of the robotic arm and the direction of gravity, using the dynamic parameter library to determine the target control parameter set, and combining inertia, coupling and gravity compensation forces, the problem of precise control of the robotic arm under environmental changes is solved, and higher-precision robotic arm control is achieved.
Patent Information
- Application Number
- CN202311093726.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-08-28
- Publication Date
- 2025-09-09
- Estimated Expiration
- 2043-08-28
AI Technical Summary
Existing methods for identifying the dynamic control parameters of robotic arms cannot achieve precise control in the actual working environment of the robotic arm, especially when the angle between the gravity direction and the Z-axis of the robotic arm base coordinate system changes.
By obtaining the current position of the target robotic arm, the angle data between the base coordinate system and the direction of gravity, and using the pre-established dynamic parameter library to determine the target control parameter set, precise control of the robotic arm is achieved by combining the inertia compensation force, coupling force compensation force, gravity compensation force and friction compensation force.
It reduces the system error caused by environmental factors, achieves more precise control of the robotic arm, and is suitable for robotic arm systems with changing environments.
Smart Images

Figure CN119526372B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the technical field of medical devices, and in particular to a control method and device for a robotic arm and a computer storage medium. Background Art
[0002] With the widespread application of robotic arms, the requirements for the control accuracy of robotic arms have become increasingly stringent. Currently, more precise control of robotic arms is generally achieved by accurately identifying the dynamic control parameters of the robotic arms.
[0003] Existing methods for identifying the dynamic control parameters of a manipulator arm use known manipulator DH control parameters, including X-axis rotation control parameters, X-axis translation control parameters, Z-axis rotation control parameters, and Z-axis translation control parameters, to establish a corresponding dynamic model. Based on this model, the output control parameters required for dynamic control parameter identification are determined. During the data acquisition phase, two or more appropriate excitation trajectories are used to collect motion data. This data is then processed using methods such as least squares to determine the optimal set of dynamic control parameters, completing dynamic control parameter identification.
[0004] However, in the actual working environment of the robotic arm, the angle between the direction of gravity and the Z-axis of the robotic arm base coordinate system will change. At this time, the above method cannot achieve precise control of the robotic arm. Summary of the Invention
[0005] The purpose of the embodiments of the present application is to provide a control method, device and computer storage medium for a robotic arm to solve the problem of being unable to achieve precise control of the robotic arm.
[0006] To solve the above technical problems, this specification provides a control method for a robotic arm, comprising:
[0007] Obtaining a current position, a target position, an expected angular velocity corresponding to the target position, and a first control force required to control the target manipulator to perform a first motion, wherein the first motion includes the target manipulator moving from the current position to the target position;
[0008] Acquire the joint angle of the target manipulator when it is in the current position and first angle data between the base coordinate system of the target manipulator and the gravity direction;
[0009] Determining a target control parameter set that matches the joint angle, the desired angular velocity, and the first angle data through a pre-established dynamic parameter library, wherein the target control parameter set includes target control parameters of the target robotic arm and target control parameter data corresponding to the target control parameters;
[0010] determining, based on the target control parameter set, a second control force required for the target robotic arm to perform the first motion;
[0011] Based on the first control force and the second control force, controlling the target robotic arm to perform the first motion;
[0012] The second control force includes at least one of the following: an inertia compensation force, a coupling force compensation force, a gravity compensation force, and a friction compensation force.
[0013] In some embodiments, the kinetic parameter library is established as follows:
[0014] Determining an excitation trajectory of the target manipulator, and collecting identification data of the target manipulator under the excitation trajectory, the identification data including: multiple sets of joint data of the target manipulator collected when controlling the target manipulator to move along the excitation trajectory;
[0015] Acquire second angle data between a base coordinate system of the target manipulator and a gravity direction when the target manipulator moves along the excitation trajectory, and compensate the identification data based on the second angle data;
[0016] determining, based on the compensated identification data, at least one control parameter set of the target robotic arm, wherein the dynamic control parameter subset includes control parameters and control parameter data corresponding to the control parameters, the at least one dynamic control parameter set including at least one of a control parameter set of a gravity term related to gravity and the second angle data, a control parameter set of an inertia term related to inertia force, a control parameter set of a coupling force term related to coupling force, and a control parameter set of a friction term related to friction force, wherein the control parameters and the control parameter data are used to calculate the second control force;
[0017] The dynamic parameter library is constructed based on the at least one control parameter set, the second angle data, and the multiple groups of joint data.
[0018] In some embodiments, determining the excitation trajectory of the target robotic arm and collecting identification data of the target robotic arm under the excitation trajectory includes:
[0019] Determine the excitation trajectory corresponding to the inertia term and the coupling force term, the excitation trajectory corresponding to the gravity term, and the excitation trajectory corresponding to the friction term respectively;
[0020] Collecting identification data of the target robotic arm under each excitation trajectory;
[0021] The excitation trajectory corresponding to the inertia term and the coupling force term is a high-speed Fourier-level excitation trajectory, the excitation trajectory corresponding to the gravity term is a low-speed forward and reverse excitation trajectory, and the excitation trajectory corresponding to the friction term is a uniform-speed excitation trajectory.
[0022] In some embodiments, compensating the identification data based on the second angle data includes:
[0023] The identification data of the target robotic arm under the excitation trajectory corresponding to the gravity term is compensated based on the second angle data.
[0024] In some embodiments, the joint data includes joint angle data, joint force data, joint angular velocity data, and joint angular acceleration data;
[0025] Accordingly, based on the first compensated identification data, at least one control parameter set of the target robotic arm is determined, including:
[0026] Determining a control parameter set of a gravity term of the target robotic arm based on the compensated joint angle data, the second angle data, and the joint force data;
[0027] Determining a control parameter set of a friction term of the target robotic arm based on the compensated joint force data;
[0028] Based on the compensated joint angle data, joint angular velocity data, joint angular acceleration data, joint force data, gravity item control parameter set and friction item control parameter set, the inertia item control parameter set and coupling force item control parameter set of the target robotic arm are determined.
[0029] In some embodiments, the at least one control parameter set further includes a control parameter set of a coupling force compensation item related to a speed of change of the second angle data and a control parameter set of an inertia compensation item related to an acceleration of change of the second angle data.
[0030] Accordingly, before determining at least one control parameter set of the target robotic arm based on the compensated identification data, the method further includes:
[0031] Based on the second angle data, determining angle change speed data and angle change acceleration data corresponding to the second angle data;
[0032] Inertia compensation and coupling force compensation are performed on the identified data based on the angle change speed data and the angle change acceleration.
[0033] In some embodiments, after determining the excitation trajectory of the target robotic arm, the method further includes:
[0034] Determining an identification time of the target robotic arm based on the excitation trajectory;
[0035] The physical parameters of the target robotic arm are acquired, and the physical parameters, excitation trajectory, identification duration, and the second angle data of the target robotic arm are used as an identification parameter set of the target robotic arm, and the identification parameter set is stored in an identification parameter library.
[0036] In some embodiments, after storing the identification parameter set in the identification parameter library, the method further includes:
[0037] Obtain the physical parameters of the current robotic arm and the third angle data between the base coordinate system of the current robotic arm and the direction of gravity;
[0038] In the identification parameter library, determining a target identification parameter set that matches the third angle data and the physical parameters of the current robotic arm and has the shortest identification time;
[0039] Optimizing the excitation trajectory in the target identification parameter set, and collecting the current identification time of the current manipulator under the optimized excitation trajectory;
[0040] When it is determined that the current identification time is less than the identification time in the target identification parameter set, the excitation trajectory in the target identification parameter set is replaced with the optimized excitation trajectory.
[0041] This specification also provides a control device for a robotic arm, comprising:
[0042] a data acquisition module, configured to acquire a current position, a target position, an expected angular velocity corresponding to the target position, and a first control force required to control the target manipulator to perform a first motion, wherein the first motion comprises the target manipulator moving from the current position to the target position;
[0043] An angle acquisition module, used to obtain the joint angle of the target manipulator when it is in the current position and the first angle data between the base coordinate system of the target manipulator and the gravity direction;
[0044] a parameter determination module, configured to determine, through a pre-established dynamic parameter library, a target control parameter set that matches the joint angle, the desired angular velocity, and the first angle data, wherein the target control parameter set includes target control parameters of the target robotic arm and target control parameter data corresponding to the target control parameters;
[0045] a compensation determination module, configured to determine, based on the target control parameter set, a second control force required for the target robotic arm to perform the first motion;
[0046] A robotic arm control module is configured to control the target robotic arm to perform the first motion based on the first control force and the second control force.
[0047] This specification also provides a computer storage medium, which stores computer program instructions. When the computer program instructions are executed, the steps of the control method of the robotic arm described in any one of the above items are implemented.
[0048] The control method of the manipulator provided in the embodiment of this specification, after determining the first control force required to control the target manipulator to move from the current position to the target position, before controlling the target manipulator based on the first control force, obtains the joint angle of the target manipulator when it is in the current position and the first angle data between the base coordinate system of the target manipulator and the direction of gravity, determines the target control parameter set that matches the joint angle, the expected angular velocity and the first angle data through a pre-established dynamic parameter library, the target control parameter set includes the target control parameters of the target manipulator and the target control parameter data corresponding to the target control parameters, determines the second control force required for the target manipulator to perform the first movement based on the determined target control parameter set, and controls the target manipulator to perform the first movement based on the first control force and the second control force. The second control force in the embodiment of the present application is used to perform dynamic compensation for the first control force, and when determining the second control force, combined with the first angle data between the base coordinate system of the target manipulator and the direction of gravity, it can reduce the system error caused by environmental factors when controlling the target manipulator, and achieve more precise control of the target manipulator. BRIEF DESCRIPTION OF THE DRAWINGS
[0049] In order to more clearly illustrate the implementation methods of the present application or the technical solutions in the prior art, the following briefly introduces the drawings required for use in the implementation methods or the description of the prior art. Obviously, the drawings described below are only some implementation methods recorded in this application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative labor.
[0050] Figure 1 The figure shows a schematic diagram of an application scenario of a robotic arm provided by this embodiment;
[0051] Figure 2 FIG2 is a flow chart of a method for constructing a kinetic parameter library provided in an embodiment of the present application;
[0052] Figure 3 Shown is a structural schematic diagram of a kinetic model provided in an embodiment of the present application;
[0053] Figure 4 FIG2 is a schematic diagram of a processing flow of data collected by a gravity sensor provided in an embodiment of the present application;
[0054] Figure 5 Schematic diagram of a curve of a stribeck model provided in an embodiment of the present application is shown;
[0055] Figure 6 Shown is a structural schematic diagram of another kinetic model provided in an embodiment of the present application;
[0056] Figure 7 Schematic diagram of an excitation trajectory of a multi-period cosine function superposition provided by an embodiment of the present application;
[0057] Figure 8 FIG2 is a flow chart of an identification method for a dynamic control parameter identification network provided by an embodiment of the present application;
[0058] Figure 9 FIG2 is a schematic diagram of the structure of an identification parameter library provided in an embodiment of the present application;
[0059] Figure 10 The figure shows a comparative diagram of recognition time provided by an embodiment of the present application;
[0060] Figure 11 FIG2 is a flow chart of a method for controlling a robotic arm provided in an embodiment of the present application;
[0061] Figure 12 Schematic diagram of a program module of a control device for a robotic arm provided in an embodiment of the present application;
[0062] Figure 13 Shown is a principle block diagram of an electronic device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0063] In order to enable those skilled in the art to better understand the technical solutions in this application, the following will clearly and completely describe the technical solutions in the embodiments of this application in conjunction with the drawings in the embodiments of this application. Obviously, the described embodiments are only part of the embodiments of this application, not all of the embodiments. Based on the embodiments of this application, all other embodiments obtained by ordinary technicians in this field without making creative efforts should fall within the scope of protection of this application.
[0064] As previously mentioned, conventional methods for controlling a robotic arm utilize dynamic control parameter identification methods to establish a corresponding dynamic model for the robotic arm. Based on this model, the output control parameters required for dynamic control parameter identification are determined. During the data acquisition phase, two or more appropriate excitation trajectories are used to collect motion data. This data is then processed using methods such as the least squares method to determine the optimal set of dynamic control parameters, completing dynamic control parameter identification.
[0065] However, in the actual working environment of the robot arm, the environmental factors of the robot arm will change, for example, the angle between the base coordinate system of the robot arm and the direction of gravity changes. Figure 1 As shown in the figure, the coordinate system xyz is the world coordinate system, and XYZ is the base coordinate system of the manipulator. Under normal circumstances, the two coordinate systems (especially the Z axis and the z axis) coincide. The dynamic control parameter identification results at this time are conventional control parameters, which are applicable to most common scenarios. When the angle between the position of the manipulator and the direction of gravity changes, that is, Figure 1 As shown in , the two coordinate systems no longer overlap, generating a three-dimensional vector Euler angle ζ = [α, β, γ]′, and defining the intersection of the xy plane and the XY plane as the intersection line N. α is the angle between the x-axis and the intersection line, β is the angle between the z-axis and the Z-axis, and γ is the angle between the intersection line and the X-axis. ζ is a three-dimensional vector containing information about each angle. At this time, due to the generation of the three-dimensional vector Euler angle, the gravity environment of the robotic arm changes, and continuing to use conventional control parameters cannot achieve precise control of the target robotic arm. Therefore, when controlling the robotic arm, the embodiment of the present application considers the impact of the change in the angle between the base coordinate system of the robotic arm and the direction of gravity on the control accuracy of the robotic arm.
[0066] Based on the above ideas, the present application provides a method for controlling a robotic arm. The method for controlling a robotic arm provided in the embodiment of this specification, after determining the first control force required to control the target robotic arm to move from the current position to the target position, before controlling the target robotic arm based on the first control force, obtains the joint angle of the target robotic arm when it is in the current position and the first angle data between the base coordinate system of the target robotic arm and the direction of gravity, and determines a target control parameter set that matches the joint angle, expected angular velocity and first angle data through a pre-established dynamic parameter library, the target control parameter set including the target control parameters of the target robotic arm and target control parameter data corresponding to the target control parameters, and determines the second control force required for the target robotic arm to perform the first movement based on the determined target control parameter set, so as to control the target robotic arm to perform the first movement based on the first control force and the second control force.
[0067] The second control force in the embodiment of the present application is used to dynamically compensate for the first control force, and when determining the second control force, combined with the first angle data between the base coordinate system of the target robotic arm and the direction of gravity, the system error caused by environmental factors when controlling the target robotic arm can be reduced, thereby achieving more precise control of the target robotic arm.
[0068] It can be understood that the above method provided in the embodiment of the present application can be used to control a serial robotic arm, and the robotic arm is equipped with a sensor for detecting gravity. Based on this sensor, it can be used to obtain the angle data between the base coordinate system of the robotic arm and the direction of gravity when the robotic arm is in the current position.
[0069] In some embodiments, a gravity sensor (g-Sensor) can be used to detect changes in the angle between the base coordinate system of the target manipulator and the direction of gravity. The g-Sensor is mainly used to collect the angle ζ of the manipulator relative to the Z axis in the world coordinate system, or the angle ζ of the manipulator relative to the Z axis in the world coordinate system and its change trend (i.e., the change rate of the angle ζ). and changing acceleration ). Furthermore, in some embodiments, the arrangement direction of the g-Sensor can satisfy that its Z axis coincides with the Z axis of the robot. In addition, in order to simplify the coordinate conversion process, the X axis and Y axis of the g-Sensor's body coordinate system can also coincide with the X axis and Y axis of the robot's body-based coordinate system. Since it is necessary to collect the changing trend of the angle ζ, it is necessary to rely on the g-Sensor to perform real-time sensing of the dynamic change parameters of the angle. In some scenarios of the embodiments of the present application, a g-Sensor with a specification of ±2g can be used to meet the requirements for the sensor measurement range in the embodiments of the present application.
[0070] It can be understood that the above method provided in this application can be applied to a robotic arm control system, such as a proportional integral derivative (PID) control system. Of course, the above method can also be applied to any other electronic device with data calculation, processing and storage capabilities, such as PC (Personal Computer), tablet computer, smart phone, wearable device, intelligent robot, etc., and this application does not impose any restrictions on this.
[0071] Before introducing the control method of the robotic arm provided in the embodiment of the present application, the construction method of the dynamic parameter library in the embodiment of the present application is first introduced with reference to the accompanying drawings. It can be understood that the construction process of the dynamic parameter library can include the dynamic control parameter identification process and the library construction process.
[0072] Figure 2 FIG. 1 is a flow chart of a method for constructing a kinetic parameter library provided in an embodiment of the present application. Figure 2 As shown, the method may include:
[0073] S201: Determine an excitation trajectory of the target robotic arm, and collect identification data of the target robotic arm under the excitation trajectory, wherein the identification data includes: multiple sets of joint data of the target robotic arm collected when controlling the target robotic arm to move along the excitation trajectory.
[0074] Among them, the excitation trajectory can be understood as the motion trajectory of each joint of the designed target robotic arm, so as to collect relevant data of the target robotic arm (i.e., identification data) when the target robotic arm moves along the trajectory, and identify the dynamic characteristics of the target robotic arm based on the collected data.
[0075] In some embodiments, before executing step S201, it is necessary to first determine the minimum inertia parameter set of the target manipulator to determine the excitation trajectory of the target manipulator. The process of determining the minimum inertia parameter set may specifically include the following steps:
[0076] Based on the DH parameters of the target manipulator, a dynamic model of the target manipulator is constructed; based on the constructed dynamic model, the dynamic control parameters of the target manipulator that affect its movement are determined as the minimum inertia control parameter set of the target manipulator; based on the minimum inertia control parameter set, the excitation trajectory of the target manipulator is designed. Furthermore, in step S201, the excitation trajectory of the target manipulator can be determined. It can be understood that the inertia control parameters are control parameters corresponding to the joint information (i.e., joint parameters, such as joint angles, joint angular velocities, joint angular accelerations, etc.) of the manipulator in the dynamic model, that is, coefficients corresponding to the joint information. The manipulator can include multiple connecting rods, and the dynamic control parameters of the connecting rods can include elements such as mass, center of mass position, friction parameters, and rotor inertia.
[0077] In some embodiments, the kinetic model can be Figure 3 As shown in a in , the operation of the target manipulator is related to its gravity, friction, inertia and coupling forces. The dynamic parameter information is included in the terms related to gravity, friction, inertia and coupling forces in the constructed dynamic model. The dynamic model is a nonlinear equation. Figure 3 As shown in a, the inertia term Joint angle q and joint angular acceleration with the target manipulator Related, coupled force terms Joint angle q and joint angular velocity of the target manipulator The gravity term G(q) is related to the joint angle q of the target manipulator, based on the inertia term Coupled force term The gravity term G(q) and the friction term f can be used to obtain the joint force τ of the target manipulator. In order to more conveniently determine the minimum inertial control parameter set θ of the target manipulator, after establishing the dynamic model, it is necessary to perform a linear transformation on the dynamic model and convert the dynamic model into an equation containing joint information and linearly related to the inertial control parameter set, that is, the joint force You can refer to Figure 3 As shown in b in . It is understandable that not every parameter in the inertial control parameter set θ affects the dynamic model. Therefore, it can be simplified according to the actual configuration of the manipulator, and the control parameters related to the motion of the target manipulator are obtained as the minimum inertial control parameter set θ for subsequent identification.
[0078] In some embodiments, after determining the minimum inertia parameter set, the control parameters in the minimum inertia control parameter set can be decoupled based on the motion characteristics of the target manipulator, and the control parameters can be decomposed into items related to gravity, friction items related to friction, inertia items related to inertia, and coupling force items related to coupling forces, so as to provide the input and output quantities required for reference in the dynamic control parameter identification process. Furthermore, considering the influence of the angle ζ between the base coordinate system of the target manipulator and the direction of gravity (i.e., the second angle data in step S202) on the gravity of the target manipulator, the items related to gravity in the control parameters can be compensated for by a gravity term G(q,ζ) related to gravity and the angle ζ.
[0079] In some embodiments, in step S201, the excitation trajectory of the target robotic arm is determined, and identification data of the target robotic arm under the excitation trajectory is collected, including: respectively determining the excitation trajectory corresponding to the inertia term and the coupling force term, the excitation trajectory corresponding to the gravity term, and the excitation trajectory corresponding to the friction term; collecting identification data of the target robotic arm under each excitation trajectory; the excitation trajectory corresponding to the inertia term and the coupling force term is a high-speed Fourier-level excitation trajectory, the excitation trajectory corresponding to the gravity term is a low-speed forward and reverse excitation trajectory, and the excitation trajectory corresponding to the friction term is a uniform-speed excitation trajectory.
[0080] It can be understood that the purpose of dynamic parameter identification is to obtain a unique dynamic control parameter set that is suitable for the current robot, namely the minimum inertia control parameter set θ. Figure 3 The mathematical correlation characteristics of the parameters in the dynamic model shown in a in FIG, show that when the joint angular velocity When the joint angular acceleration and the joint angular acceleration are both close to 0, the identification object only includes the gravity term G(q,ζ)) and the friction term f. Therefore, it can be proved that under the condition of low and uniform speed, the gravity term of the joint when the angle ζ is fixed (under fixed ζ value) can be identified, and the relationship between the friction term and the joint angle q can be preliminarily identified. After introducing the variable ζ, the linear equation related to the gravity term G and cosζ can be fitted by the least squares method. When the joint angular acceleration is When θ is large, that is, during high-speed motion of the manipulator's joints, inertia and coupling force terms dominate. Therefore, the inertia and coupling force terms can be identified using a high-speed Fourier series trajectory after the gravity and friction terms have been identified. Since the joint angle q and the sinζ or cosζ parameters can each be fitted with a linear equation for the gravity term, the gravity term G(q,ζ) can be identified after compensating the collected identification data based on the angle ζ.
[0081] In some embodiments, the gravity term and the friction term may be identified based on the low-speed uniform forward and reverse excitation trajectory, that is, the excitation trajectory corresponding to the gravity term and the friction term is the low-speed uniform forward and reverse excitation trajectory.
[0082] In some embodiments, a high-speed periodic Fourier series excitation trajectory can be used to identify the inertia term and the coupling force term. The high-speed periodic Fourier series excitation trajectory can be expressed by the following formula:
[0083]
[0084]
[0085] Among them, ω f can represent the fundamental frequency, t can represent the time step, a j,l 、b j,l represents the coefficient, q j (t) represents the joint angle of the j-th link of the target manipulator at time t, represents the joint angular velocity of the j-th link of the target manipulator at time t, represents the joint angular acceleration of the jth link of the target manipulator at time t. Formula (2) can be understood as the constraint condition of the high-speed periodic Fourier series excitation trajectory in formula (1).
[0086] S202: Acquire second angle data between a base coordinate system of the target robotic arm and a gravity direction when the target robotic arm moves along the excitation trajectory, and compensate the identification data based on the second angle data.
[0087] It can be understood that when the target manipulator moves along the excitation trajectory, there is an angle ζ between the base coordinate system of the target manipulator and the direction of gravity, for example Figure 1 In some embodiments, the second angle data may include the angle ζ between the base coordinate system of the target manipulator and the direction of gravity (where ζ is a three-dimensional Euler angle vector in a Cartesian coordinate system). In other embodiments, the second angle data may include the angle ζ between the base coordinate system of the target manipulator and the direction of gravity, the speed of change of the angle, Acceleration of angle change Among them, the angle ζ can be used to compensate for the gravity term, and the changing speed of the angle is Can be used to compensate for the coupling force term, the acceleration of the angle change It can be used to compensate for inertia.
[0088] In some embodiments, in step S202 , compensating the identification data based on the second angle data includes: compensating the identification data of the target robotic arm under the excitation trajectory corresponding to the gravity term based on the second angle data.
[0089] It can be understood that when there is a second angle, that is, there is an angle ζ between the world coordinate system and the base coordinate system direction of the target manipulator, each axis of the world coordinate system in the base coordinate system has a projection relationship related to the cosine function of the angle ζ, and when identifying the relevant parameters of the gravity term, gravity is related to the sine function of the angle ζ. Since the joint angle q and the sinζ or cosζ parameters can be fitted with linear equations with the gravity term respectively, the control parameters corresponding to the angle ζ and the joint angle q in the gravity term can be identified at the same time, that is, the equation corresponding to G(q,ζ) is obtained by fitting the identification data.
[0090] In some embodiments, compensating the identification data based on the second angle data may include: adding the second angle data to the identification data, and adding the force of gravity acting on the robotic arm in the direction of the base coordinate system to the identification data under the excitation trajectory corresponding to the gravity term, thereby obtaining compensated identification data.
[0091] In some embodiments, the second angle data can be collected by a gravity sensor. Further, in order to obtain more accurate data with less noise, the data collected by the gravity sensor can be processed. The processing process can be as follows: Figure 4 shown.
[0092] like Figure 4 As shown, in some embodiments, the data collected by the gravity sensor can be processed in the following manner:
[0093] S401: Acquire data collected by the gravity sensor.
[0094] S402: Perform averaging processing on the collected data to improve the signal-to-noise ratio.
[0095] S403: Processing the averaged data using a zero-order holder to process the pulse sequence data into a continuous step signal.
[0096] It can be understood that the sampling result of the gravity sensor is a discrete signal. In order to maintain the continuity of the signal, a zero-order holder can be used to process the averaged data, so that the sampling signal is converted into a signal that remains constant between two consecutive sampling instants, and the sampling signal value of the previous moment is maintained until the instant before the next moment, thereby converting the pulse sequence into a continuous step signal.
[0097] S404: Filter out high-frequency noise in the continuous step signal using a low-pass filter to obtain second angle data.
[0098] The above method can be used to denoise the data collected by the gravity sensor, reduce the influence of the noise signal on the second angle data, and thus improve the accuracy of the recognition result.
[0099] S203: Determine at least one control parameter set of the target robotic arm based on the compensated identification data.
[0100] In which, the dynamic control parameter subset includes control parameters and control parameter data corresponding to the control parameters, and the at least one dynamic control parameter set includes at least one of a control parameter set of a gravity term related to gravity and the second angle data, a control parameter set of an inertia term related to inertia force, a control parameter set of a coupling force term related to coupling force, and a control parameter set of a friction term related to friction force, wherein the control parameters and the control parameter data are used to calculate the second control force.
[0101] In some embodiments, the control parameters of the target manipulator corresponding to the excitation trajectory can be determined based on different excitation trajectories. For example, the control parameter set of the gravity term of the target manipulator can be determined based on the low-speed forward and reverse excitation trajectories. The control parameter set can include the control parameters of the gravity term and the control parameter data corresponding to each control parameter. The control parameter set of the friction term of the target manipulator can be determined based on the uniform-speed excitation trajectory and the control parameter set of the gravity term. The control parameter set can include the control parameters of the friction term and the control parameter data corresponding to each control parameter. The control parameter set of the inertia term and the control parameter set of the coupling force term of the target manipulator can be determined based on the high-speed Fourier-level excitation trajectory and the identified control parameter set of the gravity term and the control parameter set of the friction term. The control parameter set of the inertia term and the control parameter set of the coupling force term can include the control parameters of the coupling force term and the control parameter data corresponding to each control parameter.
[0102] In some embodiments, the joint data includes joint angle data, joint force data, joint angular velocity data, and joint angular acceleration data;
[0103] Accordingly, based on the first compensated identification data, at least one control parameter set of the target robotic arm is determined, including:
[0104] Determining a control parameter set of a gravity term of the target robotic arm based on the compensated joint angle data, the second angle data, and the joint force data;
[0105] Determining a control parameter set of a friction term of the target robotic arm based on the compensated joint force data;
[0106] Based on the compensated joint angle data, joint angular velocity data, joint angular acceleration data, joint force data, gravity item control parameter set and friction item control parameter set, the inertia item control parameter set and coupling force item control parameter set of the target robotic arm are determined.
[0107] Continue to refer Figure 1 As shown, in some embodiments, each axis of the world coordinate system in the base coordinate system has a projection relationship related to the cosine function of the angle ζ, and when identifying the relevant control parameters of the gravity term, the force of gravity acting on the robot arm along the direction of the base coordinate system satisfies the following relationship:
[0108] G base =T(ζ)*G world Formula (3)
[0109] Among them, G world Can represent the gravity of the world coordinate system, G base It can represent the force of gravity acting on the manipulator in the direction of the base coordinate system, and T(ζ) can represent the transfer matrix between the world coordinate system and the base coordinate system of the target manipulator.
[0110] Based on the above formula (3), it can be seen that the trigonometric function of gravity and angle ζ is linearly related. When identifying the control parameter set of the gravity term G(q,ζ), the linear equation corresponding to the gravity term G(q,ζ) can be fitted based on the joint angle q, angle ζ, and corresponding joint force in the compensated identification data obtained when the target manipulator moves along the low-speed forward and reverse excitation trajectory. Then, the control parameter set of the gravity term G(q,ζ) can be obtained. Furthermore, the least squares method can be used for fitting.
[0111] In some embodiments, the identification of the control parameter set of the gravity term can be achieved through a method of identification, that is, the influence of various variables on the dynamic control parameters can be fully calibrated before the robot is officially used.
[0112] In some embodiments, the speed can be limited to a low-speed uniform motion range, and the motion trajectory can be set to a reciprocating motion with sufficient travel as the excitation trajectory when identifying the control parameter set of the gravity term and the friction term. In addition, under this excitation trajectory, the angle between the base coordinate system of the target manipulator and the direction of gravity is zero. During the motion process, the corner mark of the target manipulator can be defined as positive when moving forward and negative when moving backward. The joint force collected under this excitation trajectory can include T positive and T negative The joint force under this excitation trajectory is related to the joint angle q and satisfies the following relationship:
[0113] T(q)=G(q)+f(q) Formula (4)
[0114] Where G represents the gravity of the target manipulator, and f represents the friction force of the target manipulator. It can be understood that at the same joint angle q, the positive and negative friction forces have the same magnitude and opposite signs, while the positive and negative gravity forces have the same magnitude and the same sign, thus yielding the following formula (5).
[0115]
[0116] Based on the above formulas (4) and (5), at a given joint angle q, the following relationship can be obtained:
[0117]
[0118] It can be understood that based on the above formula (6), the joint angular velocity can be obtained The mapping relationship between the friction force and the gravity can be further analyzed. The friction term can be fitted based on the obtained mapping relationship to obtain a control parameter set of the friction term.
[0119] In some embodiments, the joint angular velocity is obtained based on the above formulas (4) to (6): After mapping the relationship between friction and gravity, the linear equation corresponding to the friction term can be fitted through the Stribeck model, and then the control parameter set of the friction term can be identified. The Stribeck model can be expressed as follows Figure 5 The curve shown, the abscissa of the curve Can represent the joint angular velocity of the target robotic arm The vertical axis can represent the friction torque. t It can be expressed as the total friction torque of the target manipulator, T c It can represent the Coulomb friction torque of the target manipulator, C s Can represent the Stribeck coefficient, C v It can represent viscous friction. Specifically, when fitting the linear equation corresponding to the friction term, the joint angular velocity can be obtained The mapping relationship with the friction force is substituted into the Stribeck model for fitting to obtain accurate identification results of the friction term, which is used as the control parameter set of the friction term.
[0120] In some embodiments, control parameters can be represented by parameter identifiers. For example, any item of control parameter data can be represented by a set or matrix, and the control parameter can be the position coordinates of the control parameter data within the set or matrix. In other words, a control parameter set contains a series of control parameter data, and the control parameter data at the same position in the same control parameter set for different robotic arms represents the value of the same control parameter.
[0121] S204: Constructing the dynamic parameter library based on the at least one control parameter set, the second angle data, and the multiple groups of joint data.
[0122] It can be understood that the dynamic parameter library may include a control parameter set, and joint data and second angle data corresponding to the control parameter set. The control parameter sets corresponding to different joint data and second angle data may be the same or different.
[0123] The method for constructing a dynamic parameter library provided in the embodiment of the present application can adaptively match the current ground angle of the manipulator, and is applicable to a serial manipulator system equipped with a device for collecting the angle between the base coordinate system of the target manipulator and the direction of gravity. The constructed dynamic parameter library can enable the manipulator to work normally in scenarios where the ground angle is constantly changing, such as a shaking hull or car, etc., which can reduce the working environment restrictions of the manipulator and expand the scope of application. In addition, when the control parameters in the dynamic parameter library are used to control the manipulator, the system error caused by environmental factors when controlling the manipulator can be reduced, thereby achieving more precise control of the target manipulator.
[0124] In some embodiments, in an environment where the ground angle is constantly changing, when the manipulator is moving, the angle ζ between the base coordinate system of the target manipulator and the direction of gravity is constantly changing, and the speed of the angle change is and the acceleration of the angle change It is also constantly changing, and the speed of the angle change and the acceleration of the angle change It will affect the inertia term and coupling force term of the target manipulator. At this time, the inertia term has been changed to the inertia term Acceleration with angle change The new inertia term multiplied The coupled force term is changed to the coupled force term The speed of change of the angle The new coupling force term multiplied Therefore, an additional inertia term and an additional coupling force term are added to the control parameter set, namely the target manipulator inertia compensation term M′(ζ) and the coupling force compensation term For inertia and coupling force terms Furthermore, when identifying the dynamic control parameters, the identification of the control parameter set of the inertia compensation term and the coupling force compensation term can be added to increase the accuracy of the dynamic control parameters of the target manipulator in a dynamic environment, achieving a more precise control effect in a shaking environment.
[0125] In some embodiments, the at least one control parameter set further includes a control parameter set of a coupling force compensation term related to the speed of change of the second angle data and a control parameter set of an inertia compensation term related to the acceleration of change of the second angle data. Accordingly, Figure 2 Before the corresponding step S203, that is, before determining at least one control parameter set of the target robotic arm based on the compensated identification data, it can also include: determining the angle change speed data and angle change acceleration data corresponding to the second angle data based on the second angle data; and performing inertia compensation and coupling force compensation on the identification data based on the angle change speed data and the angle change acceleration.
[0126] In some embodiments, inertia compensation and coupling force compensation can be performed by increasing the target manipulator's angle ζ and the speed of change of the angle ζ when at least one control parameter set corresponding to each angle ζ is known. and the acceleration of the angle change The mobile platform changes and the corresponding excitation trajectory is set for inertia compensation The control parameter set and coupling force compensation term The identification of the control parameter set, at this time the dynamic model corresponding to the target manipulator can be Figure 6 As shown. At this time, the joint force τ of the target manipulator can be expressed by the following formula:
[0127]
[0128] Among them, N T The parameter supplementary matrix that can represent the inertia term, B′ T The parameter supplementary matrix M′ can represent the coupling force term T It can be expressed as the transpose of the inertia compensation term M′, C′ T It can be expressed as the transpose of the coupling force compensation term C′. T and B′ T It is used to supplement the dynamic equation after adding the angle parameter, and its specific value can be obtained through the identification of the dynamic control parameters.
[0129] Specifically, in the control parameter set of the inertia compensation term M′(ζ) and the coupling force compensation term When identifying the control parameter set of the target robot arm, the change speed of the joint data and angle can be calculated when the target robot arm moves along the excitation trajectory. and the acceleration of the angle change Perform real-time collection. Figure 1 As shown in the figure, the angle ζ is represented by the angle between the base coordinate system of the target manipulator and the direction of gravity. At this time, the angle ζ = [α, β, γ]′. When the change speed of the angle is and the acceleration of the angle change , the base coordinate system of the target manipulator is also constantly changing. The angle ζ can include the angle between the base coordinate system and the direction of gravity, as well as the change in the position of the base coordinate system, i.e., angle ζ = [x, y, z, α, β, γ]′, where each parameter represents the change between the corresponding quantity and the original position. For example, in this embodiment, x represents the change between the x-axis of the current base coordinate system of the target manipulator and the x-axis of the previous position.
[0130] In some embodiments, the control parameter set for the inertia compensation term M′(ζ) and the coupling force compensation term The control parameter set is identified. The included angle ζ affects the entire robotic arm, which can be treated as a linkage mechanism for inertial identification. The excitation trajectory can be designed as a superposition of multi-periodic cosine functions. Furthermore, to reduce the complexity of the excitation trajectory, the superposition of these multi-periodic cosine functions is limited to no more than five different periodic functions.
[0131] In some embodiments, the excitation trajectory determined in step S201 may also include an excitation trajectory superimposed by a multi-period cosine function, which is used to control the control parameter set of the inertia compensation term M′(ζ) and the coupling force compensation term The control parameter set is identified. Considering that the overall rotation speed and acceleration of the robot arm should not be too large, the change speed of the angle can be and the acceleration of the angle change The excitation trajectory of the superposition of multi-periodic cosine functions can be expressed as Figure 7 As shown. The target robot can be controlled along Figure 7 The excitation trajectory shown in the figure moves and collects relevant joint data and the speed of change of the angle and the acceleration of the angle change
[0132] In some embodiments, the speed of change of the angle and the acceleration of the angle change It can be obtained by differentiating the angle ζ with respect to time, that is, by dζ, the changing speed of the angle can be obtained. Through ddζ, the acceleration of the angle change can be obtained
[0133] In some embodiments, after determining the excitation trajectory of the target robotic arm, it also includes: determining the identification time of the target robotic arm based on the excitation trajectory; obtaining the physical parameters of the target robotic arm, and using the physical parameters, excitation trajectory, identification time, and the second angle data of the target robotic arm as the identification parameter set of the target robotic arm, and storing the identification parameter set in an identification parameter library.
[0134] It can be understood that the identification time may be the time consumed by the target robotic arm to move along the excitation trajectory, and the physical parameters may include parameters such as the size, weight, and position of the target robotic arm.
[0135] It can be understood that each manipulator in the serial manipulator system needs to perform dynamic control parameter identification. The identification process and identification results of each manipulator can be fully utilized to build a dynamic control parameter identification network based on big data. In this network, the excitation trajectories and the control parameter sets obtained by identification between the manipulators can learn from each other and transfer to each other, so that the manipulators form a form of mutual learning and joint updating, which can improve the identification speed and convergence speed of a manipulator of a certain configuration in the large-scale dynamic control parameter identification process. Mutual learning and joint updating between manipulators can be achieved by transmitting the excitation trajectory and the identification time corresponding to the excitation trajectory. That is, when the target manipulator identifies at least one control parameter set, an identification parameter library is constructed based on the excitation trajectory, identification time corresponding to the at least one control parameter set, and the physical parameters of the target manipulator.
[0136] In some embodiments, after storing the identification parameter set in the identification parameter library, the method further includes:
[0137] Obtain the physical parameters of the current robotic arm and the third angle data between the base coordinate system of the base coordinate system of the current robotic arm and the direction of gravity; determine in the identification parameter library a target identification parameter set that matches the third angle data and the physical parameters of the current robotic arm and has the shortest identification time; optimize the excitation trajectory in the target identification parameter set, and collect the current identification time of the current robotic arm under the optimized excitation trajectory; when it is determined that the current identification time is less than the identification time in the target identification parameter set, replace the excitation trajectory in the target identification parameter set with the optimized excitation trajectory.
[0138] It can be understood that for the identification of the dynamic control parameters of a single robotic arm (i.e., a single machine), the principle of reading the excitation trajectory and angle ζ in the identification parameter library can be given priority to determine whether there is an identification parameter set that meets the current environment and has the shortest identification time. If so, it is applied to the single machine that is about to perform the dynamic control parameter identification, and the excitation trajectory in the identification parameter set is optimized and deployed, thereby reducing the convergence speed of the single machine identification process. After the identification is completed, the identification time corresponding to the latest identification trajectory is compared with the identification time corresponding to the identification parameter set recorded in the identification parameter library. If the identification time corresponding to the latest identification trajectory is shorter, the identification parameter set of the current robotic arm is recorded in the remote database for reference by the identification process of the remaining robotic arms, shortening the identification time. If there is no matching identification parameter set, the excitation trajectory adapted to the current environment is replanned, and the identification completion time is recorded. After the identification is completed, the identification parameters are uploaded to the identification parameter library. In an embodiment of the present application, under the dynamic control parameter identification network, when the identification process of the robotic arm is scaled up, the identification parameter set recorded in the identification parameter library can greatly help the subsequent identification process of the robotic arm, improve the convergence speed of the dynamic parameter identification, and reduce the amount of calculation.
[0139] In some embodiments, a fitting index can also be used to evaluate whether the excitation trajectory corresponding to the dynamic control parameter identification result is optimal. Specifically, the current fit of the current robotic arm can be determined based on a series of predicted joint forces obtained by fitting various control parameters under the corresponding excitation trajectory, as well as a series of measured joint forces in the identification data obtained under the excitation trajectory. When it is determined that the current fit has reached a preset target fit, the dynamic control parameter identification has met the criteria, and the fitting index can be stored in the identification parameter library.
[0140] In some embodiments, the fit index can be calculated using the following formula:
[0141]
[0142] Among them, R can represent the fitting index. Based on formula (8), the current fitting degree can be calculated, y i It can represent the predicted joint force, that is, the joint force obtained based on the linear relationship between the control parameters fitted under a certain excitation trajectory. Represents the measured joint force, that is, the joint force actually collected from the identification data obtained under a certain excitation trajectory. The fitting index of the robot arm needs to satisfy R>R T , where R T Indicates the target fit.
[0143] In some embodiments, when optimizing and updating the excitation trajectory in the identification parameter library, the excitation trajectory in the target identification parameter set can be replaced with the optimized excitation trajectory if it is determined that the current identification duration is less than the identification duration in the target identification parameter set and the current fitting index meets the target fitting degree.
[0144] The following combination Figure 8 and Figure 9 , further introduces a method for identifying a dynamic control parameter identification network provided in an embodiment of the present application.
[0145] Figure 8 The figure shows a flow chart of an identification method of a dynamic control parameter identification network provided in an embodiment of the present application.
[0146] Figure 9 Shown is a structural diagram of an identification parameter library provided in an embodiment of the present application.
[0147] like Figure 8 As shown, the identification method of the dynamic control parameter identification network may include:
[0148] S801: Determine whether the identification parameter library contains an identification parameter set that matches the physical parameters of the current manipulator. If not, this indicates that the configuration corresponding to the current manipulator is being identified for the first time. It is necessary to determine the excitation trajectory of the current manipulator and, based on this excitation trajectory, identify the dynamic control parameters of the current manipulator, i.e., execute step S802. Otherwise, this indicates that the configuration corresponding to the current manipulator is not being identified for the first time. In this case, the identification parameter set in the identification parameter library can be learned and updated, i.e., execute step S807.
[0149] S802: Determine whether the first excitation trajectory of the current robotic arm traverses the entire trajectory, the identification time meets a preset time threshold, and the identified fitting index meets a preset fitting degree.
[0150] It can be understood that the first excitation trajectory of the robot arm of the same configuration will traverse the entire system by default, with a longer identification time and accurate results. Step S802 can be understood as initializing the first excitation trajectory.
[0151] S803: Identify the dynamic control parameters of the current robotic arm based on the determined first excitation trajectory.
[0152] S804: Determine the recognition duration and fitting degree corresponding to the first excitation trajectory of the current robotic arm.
[0153] S805: Iteratively optimize the first excitation trajectory of the current robot arm based on the identification duration, and obtain a first optimal excitation trajectory after the iterative optimization.
[0154] In some embodiments, the iterative optimization of the first excitation trajectory may be determined as follows:
[0155] Determine the encoding form of the first excitation trajectory and perform binary encoding on it; set the evaluation function and objective function of the excitation trajectory; calculate and record the identification time of the encoded excitation trajectory, compare it with the optimal population identification time, iterate the excitation trajectory on the current robotic arm until the number of iterations reaches the set iteration upper limit, obtain the current optimal excitation trajectory, and upload the optimal excitation trajectory to the identification parameter library.
[0156] S806: Uploading the first optimal excitation trajectory of the current robotic arm, the identification time and fitting degree corresponding to the first optimal excitation trajectory, and the physical parameters of the current robotic arm as the identification parameter set of the current robotic arm to the identification parameter library.
[0157] In some embodiments, the identification parameter library can be as follows Figure 9 It is understood that the identification parameter library may include multiple robotic arms and the corresponding single-machine physical parameters, single-machine optimal excitation trajectory, single-machine fitting degree, and single-machine identification time of each robotic arm.
[0158] The optimal excitation trajectory of a single machine is used to record the excitation trajectory, facilitating the subsequent deployment of additional manipulators, enabling mutual learning and collaborative updates between the manipulators. The individual machine's fit can be used as a fitting metric for evaluating the excitation trajectory. The physical parameters of a single machine are used to match subsequent manipulators. If the physical parameters are similar, the optimal excitation trajectory of that manipulator is prioritized. The individual machine's identification duration is used to evaluate the excitation trajectory, with the shortest identification duration being the objective function for the excitation trajectory iteration.
[0159] S807: Determine a target excitation trajectory of a target identification parameter set in the identification parameter library that matches the physical parameters of the current robotic arm, has the shortest identification time, and has a fitting degree that meets the target fitting degree, optimize the matched target excitation trajectory to obtain a second excitation trajectory, and identify the current robotic arm based on the second excitation trajectory.
[0160] S808: Determine the recognition duration and the fitting degree corresponding to the second excitation trajectory, and iteratively optimize the second excitation trajectory based on the recognition duration and the fitting degree corresponding to the second excitation trajectory to obtain a second optimal excitation trajectory.
[0161] S809: Determine whether the identification time of the second optimal excitation trajectory is less than the identification time of the target excitation trajectory, and whether the fitting degree of the second optimal excitation trajectory satisfies the target fitting degree.
[0162] S810: Optimizing the target identification parameter set based on the second optimal excitation trajectory, the identification duration corresponding to the second excitation trajectory, and the fitting degree.
[0163] Specifically, the target excitation trajectory can be replaced with the second-optimal excitation trajectory, the identification duration corresponding to the target excitation trajectory can be replaced with the identification duration of the second-optimal excitation trajectory, and the fitting degree corresponding to the target excitation trajectory can be replaced with the fitting degree of the second-optimal excitation trajectory.
[0164] To better illustrate the positive effects of the excitation trajectory iterative optimization process in the embodiments of the present application, the identification duration of the embodiments of the present application and the identification duration of the existing solutions will be further described below in combination with Figure 10 the identification duration of the embodiments of the present application and the identification duration of the existing solutions will be further described below in combination with
[0165] As Figure 10 shown, it is set that the total time for completing the identification and fitting process and the total identification time of the single-machine excitation trajectory in the embodiments of the present application are The total time for completing the identification of the control parameters of n robotic arms is t all ; the single-machine identification time of the existing solution is t unit0 , and the total time for completing the identification of the control parameters of n robotic arms is t all0 ; then t all and t unit0 satisfy the following formula:
[0166]
[0167] It can be understood that in the embodiments of the present application, since the single-machine excitation trajectory is not required to be optimized, the time-consuming of the first optimization result is However, since the excitation trajectory of each robotic arm to be identified is optimized based on the optimization results of the previous robotic arms, making it conform to the physical parameter changes between different machines, the single-machine time-consuming will gradually decrease, that is When n is large (that is, the number of robotic arms to be identified is large), there exists j (1 < j < n), such that Then when n is large enough, t all < t all0 ; and since each single machine has an optimization process that adapts to the physical parameters of the machine itself, the overall average fitting degree will also be higher than the traditional single-machine excitation trajectory optimization method.
[0168] For the optimization iteration process of a single machine in the embodiments of the present application, a relatively low iteration limit and iteration index will be set to reduce the single-machine optimization time-consuming, and the optimization iteration process will be decomposed and carried out on multiple machines of the same type but with slight physical parameter differences, so as to ensure that the single-machine excitation trajectory is close to the optimal, the excitation trajectories of multiple machines are overall optimal, and the optimization process and the verification process are carried out simultaneously, which can ensure the reliability of the optimization. During the optimization process, after the identification and optimization of each single machine are completed, the current optimal excitation trajectory and related optimization parameters will be uploaded to the database in real time. When the next single machine conducts identification, the optimal excitation trajectory in the database will be used as the initial trajectory to continue the adaptive optimization, thus greatly reducing the optimization iteration time-consuming.
[0169] The following combination Figure 11 The control method of the robotic arm provided in an embodiment of the present application is introduced.
[0170] Figure 11 FIG. 1 is a flow chart of a control method for a robotic arm provided in an embodiment of the present application. Figure 11 As shown, the method may include:
[0171] S1101: Obtain the current position, target position, expected angular velocity corresponding to the target position, and a first control force required to control the target robotic arm to perform a first movement, wherein the first movement includes the target robotic arm moving from the current position to the target position.
[0172] It can be understood that the first control force of step S1101 can be calculated by the robotic arm control system that executes the robotic arm control method based on the acquired data after obtaining the current position, target position, and expected angular velocity corresponding to the target position of the target robotic arm.
[0173] S1102: Acquire the joint angle of the target robotic arm when it is in the current position and first angle data between the base coordinate system of the target robotic arm and the gravity direction.
[0174] S1103: Determine a target control parameter set that matches the joint angle, the desired angular velocity and the first angle data through a pre-established dynamic parameter library, wherein the target control parameter set includes target control parameters of the target robotic arm and target control parameter data corresponding to the target control parameters.
[0175] It can be understood that the construction process of the dynamic parameter library can refer to the previous Figure 1 The relevant description is not repeated here.
[0176] S1104: Determine a second control force required for the target robotic arm to perform the first motion based on the target control parameter set.
[0177] The second control force includes at least one of the following: an inertia compensation force, a coupling force compensation force, a gravity compensation force, and a friction compensation force.
[0178] In some embodiments, after determining the target control parameter set, the control parameters, control parameter data, and Figure 3 The dynamic model shown in a is used to obtain the inertia compensation force, coupling compensation force, gravity compensation force and friction compensation force of the target manipulator, and then calculate the second control force (i.e., joint force τ).
[0179] In some embodiments, the change speed of the first angle can also be obtained based on the first angle data between the base coordinate system of the target manipulator and the gravity direction. and changing acceleration The target control parameter set obtained by matching can also include a control parameter set of a coupling force compensation term and an inertia compensation term. Furthermore, when calculating the second control force, the calculation can be performed based on the formula (7) above.
[0180] S1105: Based on the first control force and the second control force, control the target robotic arm to perform the first motion.
[0181] An embodiment of the present application also provides a control device for a robotic arm. Figure 12 The figure shows a program module diagram of a control device for a robotic arm provided by an embodiment of the present application. Figure 12 As shown, the control device 1200 of the robotic arm may include:
[0182] Data acquisition module 1201 is configured to acquire a current position of a target manipulator, a target position, a desired angular velocity corresponding to the target position, and a first control force required to control the target manipulator to perform a first motion, wherein the first motion comprises moving the target manipulator from the current position to the target position.
[0183] The angle acquisition module 1202 is configured to acquire the joint angle of the target robotic arm when the target robotic arm is at the current position and first angle data between the base coordinate system of the target robotic arm and the gravity direction.
[0184] The parameter determination module 1203 is used to determine a target control parameter set that matches the joint angle, the expected angular velocity and the first angle data through a pre-established dynamic parameter library, wherein the target control parameter set includes the target control parameters of the target robotic arm and the target control parameter data corresponding to the target control parameters.
[0185] The compensation determination module 1204 is configured to determine, based on the target control parameter set, a second control force required for the target robotic arm to perform the first motion.
[0186] A manipulator control module 1205 is configured to control the target manipulator to perform the first motion based on the first control force and the second control force;
[0187] The second control force includes at least one of the following: an inertia compensation force, a coupling force compensation force, a gravity compensation force, and a friction compensation force.
[0188] The description and functions of the above units can be understood by referring to the content of the control method of the robotic arm, which will not be repeated here.
[0189] This specification also provides a computer storage medium, which stores computer program instructions. When the computer program instructions are executed, the steps of the above-mentioned method for controlling the robotic arm are implemented.
[0190] This specification also provides a computer program product, which includes a computer program, and when the computer program is executed by a processor, the steps of the above-mentioned control method of the robotic arm are implemented.
[0191] The embodiment of the present invention further provides an electronic device, such as Figure 13 As shown, the electronic device may include a processor 1301 and a memory 1302, wherein the processor 1301 and the memory 1302 may be connected via a bus or other means. Figure 13 The bus connection is taken as an example.
[0192] The processor 1301 may be a central processing unit (CPU). The processor 1301 may also be other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field-programmable gate arrays (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, or a combination of the above chips.
[0193] The memory 1302 is a non-transitory computer-readable storage medium that can be used to store non-transitory software programs, non-transitory computer executable programs and modules, such as program instructions / modules corresponding to the control method of the robotic arm in the embodiment of the present invention (for example, Figure 12 The processor 1301 executes the non-transitory software programs, instructions, and modules stored in the memory 1302 to perform various functional applications and data processing of the processor, thereby implementing the control method of the robotic arm in the above-mentioned method embodiment.
[0194] The memory 1302 may include a program storage area and a data storage area, wherein the program storage area may store an operating system and application programs required for at least one function; the data storage area may store data created by the processor 1301, etc. In addition, the memory 1302 may include a high-speed random access memory, and may also include a non-volatile memory, such as at least one disk storage device, a flash memory device, or other non-volatile solid-state storage device. In some embodiments, the memory 1302 may optionally include a memory remotely located relative to the processor 1301, and these remote memories may be connected to the processor 1301 via a network. Examples of the above-mentioned network include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof.
[0195] The one or more modules are stored in the memory 1302 and when executed by the processor 1301, perform the following steps: Figure 11 The control method of the robotic arm in the illustrated embodiment.
[0196] The specific details of the above electronic device can be understood by referring to the corresponding descriptions and effects in the above method embodiments, and will not be repeated here.
[0197] This specification also provides a computer storage medium, which stores computer program instructions. When the computer program instructions are executed, the steps of the above-mentioned method for controlling the robotic arm are implemented.
[0198] This specification also provides a computer program product, which includes a computer program, and when the computer program is executed by a processor, the steps of the above-mentioned control method of the robotic arm are implemented.
[0199] Those skilled in the art will appreciate that all or part of the processes in the above-mentioned embodiments can be implemented by instructing the relevant hardware through a computer program. The program can be stored in a computer-readable storage medium. When the program is executed, it can include the processes of the embodiments of the above-mentioned methods. The storage medium can be a magnetic disk, an optical disk, a read-only memory (ROM), a random access memory (RAM), a flash memory, a hard disk drive (HDD), or a solid-state drive (SSD). The storage medium can also include a combination of the above-mentioned types of memory.
[0200] The various embodiments in this specification are described in a progressive manner, and the same or similar parts between the various embodiments can be referred to each other. Each embodiment focuses on the differences from other embodiments.
[0201] The systems, devices, modules or units described in the above embodiments may be implemented by computer chips or entities, or by products with certain functions.
[0202] For the convenience of description, the above devices are described as being divided into various units according to their functions. Of course, when implementing this application, the functions of each unit can be implemented in the same or multiple software and / or hardware.
[0203] Through the description of the above embodiments, it can be seen that those skilled in the art can clearly understand that the present application can be implemented by means of software plus the necessary general hardware platform. Based on this understanding, the technical solution of the present application, or the part that contributes to the prior art, can be embodied in the form of a software product. The computer software product can be stored in a storage medium, such as ROM / RAM, a magnetic disk, an optical disk, etc., and includes a number of instructions for enabling a computer device (which can be a personal computer, a server, or a network device, etc.) to execute certain parts of the methods of each embodiment of the present application.
[0204] The present application can be used in a wide variety of general-purpose or specialized computer system environments or configurations, such as personal computers, server computers, handheld or portable devices, tablet devices, multiprocessor systems, microprocessor-based systems, set-top boxes, programmable consumer electronics, network PCs, minicomputers, mainframe computers, and distributed computing environments that include any of the above.
[0205] The present application may be described in the general context of computer-executable instructions executed by a computer, such as program modules. Generally, program modules include routines, programs, objects, components, data structures, etc. that perform specific tasks or implement specific abstract data types. The present application may also be practiced in distributed computing environments where tasks are performed by remote processing devices connected through a communications network. In a distributed computing environment, program modules may be located in local and remote computer storage media, including storage devices.
[0206] Although the present application has been described through embodiments, those skilled in the art will appreciate that there are many modifications and variations to the present application without departing from the spirit of the present application. It is intended that the appended claims include these modifications and variations without departing from the spirit of the present application.
Claims
1. A method for controlling a robotic arm, characterized in that: include: Obtaining a current position, a target position, an expected angular velocity corresponding to the target position, and a first control force required to control the target manipulator to perform a first motion, wherein the first motion includes the target manipulator moving from the current position to the target position; Acquire the joint angle of the target manipulator when it is in the current position and first angle data between the base coordinate system of the target manipulator and the gravity direction; Determining a target control parameter set that matches the joint angle, the desired angular velocity, and the first angle data through a pre-established dynamic parameter library, wherein the target control parameter set includes target control parameters of the target robotic arm and target control parameter data corresponding to the target control parameters; determining, based on the target control parameter set, a second control force required for the target robotic arm to perform the first motion; Based on the first control force and the second control force, the target robotic arm is controlled to perform the first movement; the second control force includes at least one of the following: inertia compensation force, coupling force compensation force, gravity compensation force and friction compensation force.
2. The method according to claim 1, characterized in that The kinetic parameter library was established as follows: Determining an excitation trajectory of the target manipulator, and collecting identification data of the target manipulator along the excitation trajectory, the identification data including: multiple sets of joint data of the target manipulator collected when controlling the target manipulator to move along the excitation trajectory; acquiring second angle data between a base coordinate system of the target manipulator and a gravity direction when the target manipulator moves along the excitation trajectory, and compensating the identification data based on the second angle data; determining, based on the compensated identification data, at least one control parameter set of the target robotic arm, the control parameter set including control parameters and control parameter data corresponding to the control parameters, the at least one control parameter set including at least one of a control parameter set of a gravity term related to gravity and the second angle data, a control parameter set of an inertia term related to inertia force, a control parameter set of a coupling force term related to coupling force, and a control parameter set of a friction term related to friction force, wherein the control parameter and the control parameter data are used to calculate the second control force; The dynamic parameter library is constructed based on the at least one control parameter set, the second angle data, and the multiple groups of joint data.
3. The method according to claim 2, characterized in that Determining an excitation trajectory of the target manipulator and collecting identification data of the target manipulator under the excitation trajectory includes: Determine the excitation trajectory corresponding to the inertia term and the coupling force term, the excitation trajectory corresponding to the gravity term, and the excitation trajectory corresponding to the friction term respectively; Collecting identification data of the target robotic arm under each excitation trajectory; The excitation trajectory corresponding to the inertia term and the coupling force term is a high-speed Fourier-level excitation trajectory, the excitation trajectory corresponding to the gravity term is a low-speed forward and reverse excitation trajectory, and the excitation trajectory corresponding to the friction term is a uniform-speed excitation trajectory.
4. The method according to claim 2 or 3, characterized in that Compensating the identification data based on the second angle data includes: The identification data of the target robotic arm under the excitation trajectory corresponding to the gravity term is compensated based on the second angle data.
5. The method according to claim 2, characterized in that The joint data includes joint angle data, joint force data, joint angular velocity data, and joint angular acceleration data; Accordingly, based on the first compensated identification data, at least one control parameter set of the target robotic arm is determined, including: Determining a control parameter set of a gravity term of the target robotic arm based on the compensated joint angle data, the second angle data, and the joint force data; Determining a control parameter set of a friction term of the target robotic arm based on the compensated joint force data; Based on the compensated joint angle data, joint angular velocity data, joint angular acceleration data, joint force data, gravity item control parameter set and friction item control parameter set, the inertia item control parameter set and coupling force item control parameter set of the target robotic arm are determined.
6. The method according to claim 2, characterized in that The at least one control parameter set further includes a control parameter set of a coupling force compensation item related to a change speed of the second angle data and a control parameter set of an inertia compensation item related to a change acceleration of the second angle data. Accordingly, before determining at least one control parameter set of the target robotic arm based on the compensated identification data, the method further includes: Based on the second angle data, determining angle change speed data and angle change acceleration data corresponding to the second angle data; Inertia compensation and coupling force compensation are performed on the identified data based on the angle change speed data and the angle change acceleration.
7. The method according to claim 2, characterized in that After determining the excitation trajectory of the target manipulator, the method further includes: Determining an identification time of the target robotic arm based on the excitation trajectory; The physical parameters of the target robotic arm are acquired, and the physical parameters, excitation trajectory, identification duration, and the second angle data of the target robotic arm are used as an identification parameter set of the target robotic arm, and the identification parameter set is stored in an identification parameter library.
8. The method according to claim 7, characterized in that After storing the identification parameter set in the identification parameter library, the method further includes: Obtain the physical parameters of the current robotic arm and the third angle data between the base coordinate system of the current robotic arm and the direction of gravity; In the identification parameter library, determining a target identification parameter set that matches the third angle data and the physical parameters of the current robotic arm and has the shortest identification time; Optimizing the excitation trajectory in the target identification parameter set, and collecting the current identification time of the current manipulator under the optimized excitation trajectory; When it is determined that the current identification time is less than the identification time in the target identification parameter set, the excitation trajectory in the target identification parameter set is replaced with the optimized excitation trajectory.
9. A control device for a robotic arm, characterized in that: include: a data acquisition module, configured to acquire a current position, a target position, an expected angular velocity corresponding to the target position, and a first control force required to control the target manipulator to perform a first motion, wherein the first motion comprises the target manipulator moving from the current position to the target position; An angle acquisition module, used to obtain the joint angle of the target manipulator when it is in the current position and the first angle data between the base coordinate system of the target manipulator and the gravity direction; a parameter determination module, configured to determine, through a pre-established dynamic parameter library, a target control parameter set that matches the joint angle, the desired angular velocity, and the first angle data, wherein the target control parameter set includes target control parameters of the target robotic arm and target control parameter data corresponding to the target control parameters; a compensation determination module, configured to determine, based on the target control parameter set, a second control force required for the target robotic arm to perform the first motion; a manipulator control module, configured to control the target manipulator to perform the first motion based on the first control force and the second control force; The second control force includes at least one of the following: an inertia compensation force, a coupling force compensation force, a gravity compensation force, and a friction compensation force.
10. A computer storage medium, characterized in that The computer storage medium stores computer program instructions, and when the computer program instructions are executed, the steps of the method according to any one of claims 1 to 8 are implemented.
Citation Information
Patent Citations
Robot direct teaching control method based on moment balance
CN103425100A
Mechanical arm friction identification method and device, apparatus and storage medium
CN107423515A