Musculoskeletal robotic arm control method and device
By kinematic and dynamic modeling of musculoskeletal robotic arms and combining biological hypotheses, high-precision target point arrival motion and environmental interference resistance are achieved, and the problems of high control frequency and poor accuracy in the existing technology are solved. Applications in the fields of industrial and intelligent services.
Patent Information
- Application Number
- CN202210687339.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-06-16
- Publication Date
- 2024-12-27
- Estimated Expiration
- 2042-06-16
AI Technical Summary
The existing musculoskeletal robotic arms have high control frequency, poor control accuracy, and are easily affected by environmental interference, making it difficult to meet the requirements of robotic arms in the fields of industrial production and intelligent services.
Through kinematics and skeletal dynamics models based on the musculoskeletal robot arm, joint angles, muscle lengths and muscle force are determined, combined with the muscle contraction dynamics model, precise control of the musculoskeletal robot arm can be achieved so that it can be performed without any effect at the target position. Trajectory movement and strong resistance to environmental interference.
It achieves high-precision target point arrival motion, enhances environmental interference resistance, is suitable for task execution in unstructured environments, and provides flexibility and stability, providing possibilities for human-computer collaborative tasks.
Smart Images

Figure CN115070760B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of bionic robots, and in particular to a musculoskeletal mechanical arm control method and device. Background Art
[0002] In recent years, inspired by the human's ability to complete various complex and changeable operational tasks flexibly, compliantly and with high precision, a large number of scientists in the fields of biology, neuroscience, robotics, etc. have conducted in-depth research on the biological mechanisms related to motion control of the human body, including the proprioceptive musculoskeletal system, motor control nervous system, sensory cognitive information processing system, etc. A large number of scientists in the field of robotics have established applicable mathematical models based on biological neural mechanisms for analysis and proof, and have extracted the core mechanisms of human dexterity, compliance, anti-interference robustness, and high operational precision. They hope to apply them to the field of robotics to form a new generation of robotic systems with human-like motion characteristics and operational precision.
[0003] In the field of robotics, robotic arms are widely used in various automated production and assembly tasks. Existing robotic arms have poor flexibility and compliance, making it difficult to complete delicate operation tasks. Humanoid musculoskeletal robotic arms can be realized through bionic structures, drawing on human structural characteristics and muscle drive characteristics to achieve compliance and flexibility. However, existing musculoskeletal robotic arms have high rigidity, weight, high control frequency, and are easily affected by environmental interference, making it difficult to meet the requirements of industrial production and intelligent service fields for the flexibility and lightness of robotic arms. Summary of the invention
[0004] The present invention provides a musculoskeletal mechanical arm control method and device, which are used to solve the technical problems of the existing musculoskeletal mechanical arm having high control frequency, poor control accuracy and being easily affected by environmental interference.
[0005] The present invention provides a musculoskeletal mechanical arm control method, comprising:
[0006] Determining target joint angles of each joint module in the musculoskeletal robotic arm based on a target position of an active end of the musculoskeletal robotic arm and a kinematic model of the musculoskeletal robotic arm;
[0007] Determining the muscle length of each muscle module based on the target joint angle of each joint module and the kinematic model of the musculoskeletal robotic arm;
[0008] Determining the muscle force of each muscle module based on the target joint angle of each joint module and the skeletal dynamics model of the musculoskeletal robotic arm;
[0009] Determine the muscle control signal of each muscle module in the musculoskeletal mechanical arm based on the muscle force and muscle length of each muscle module and the muscle contraction dynamics model, and control the active end of the musculoskeletal mechanical arm to move to the target position based on the muscle control signal of each muscle module;
[0010] The musculoskeletal robotic arm includes a plurality of joint modules and muscle modules attached to the joint modules.
[0011] According to the musculoskeletal mechanical arm control method provided by the present invention, the kinematic model of the musculoskeletal mechanical arm includes:
[0012] P=G l (Θ)
[0013] L m =G m (Θ)
[0014]
[0015] Where P is the spatial position of the active end of the musculoskeletal manipulator, θ is the joint angle vector composed of the joint angles of each joint module, and G l is the mapping function obtained by performing DH parameter modeling on the musculoskeletal mechanical arm, L m is the muscle length of each muscle module, G m is the mapping function between muscle length and joint angle derived from the geometric relationship between the muscle module attachment point and the joint angle of the joint module. is the muscle length of the nth muscle module.
[0016] According to the musculoskeletal mechanical arm control method provided by the present invention, the target joint angle of each joint module in the musculoskeletal mechanical arm is determined based on the target position of the active end of the musculoskeletal mechanical arm and the kinematic model of the musculoskeletal mechanical arm, including:
[0017] P t =G l (Θ t )
[0018] P t =[x t y t z t ]
[0019] Θ t =[θ1 θ2…θ m ]
[0020] Where P t is the target position of the active end of the musculoskeletal manipulator at time t, xt ,y t and z t is the spatial coordinate of the active end at time t, Θ t is the target joint angle vector composed of the target joint angles of each joint module at time t, θ m is the target joint angle of the mth joint module.
[0021] According to the musculoskeletal manipulator control method provided by the present invention, the muscle length of each muscle module is determined based on the target joint angle of each joint module and the kinematic model of the musculoskeletal manipulator, including:
[0022] L m t =G m (Θ t )
[0023] Where, L m t is the muscle length of each muscle module at time t.
[0024] According to the musculoskeletal manipulator control method provided by the present invention, the muscle force of each muscle module is determined based on the target joint angle of each joint module and the skeletal dynamics model of the musculoskeletal manipulator, including:
[0025] Performing dynamic modeling on the musculoskeletal mechanical arm to obtain a skeletal dynamic model of the musculoskeletal mechanical arm;
[0026] Based on the skeletal dynamics model, determining the muscle force of each muscle module;
[0027] The skeleton dynamics model is:
[0028]
[0029] τ=WF
[0030] Wherein, Θ is the joint angle vector composed of the joint angles of each joint module, M is the inertia matrix of the musculoskeletal manipulator, C is the Coriolis force and centrifugal force matrix, G is the gravity change matrix, W is the Jacobian matrix between the muscle velocity of the muscle module and the joint angular velocity of the joint module, F is the vector composed of the muscle force of each muscle module, and τ is the joint torque of the joint module.
[0031] According to the musculoskeletal mechanical arm control method provided by the present invention, the muscle force of each muscle module is determined based on the skeletal dynamics model, including:
[0032] F=W -1 (Θ t )G(Θ t )
[0033]
[0034] In the formula, is the muscle force of the nth muscle module.
[0035] According to the musculoskeletal mechanical arm control method provided by the present invention, the muscle control signal of each muscle module in the musculoskeletal mechanical arm is determined based on the muscle force and muscle length of each muscle module and the muscle contraction dynamics model, including:
[0036]
[0037] Where a(t) is the muscle control signal of the muscle module at time t, F TD is the muscle force of the muscle module, l M (t) is the muscle fiber length of the muscle module at time t, F PE is the force generated by the passive extension of the muscle fibers in the muscle module, i M (t) is the muscle velocity of the muscle module at time t, f l is the correlation coefficient between muscle force and muscle fiber length, f v is the correlation coefficient between muscle force and muscle velocity.
[0038] The present invention provides a musculoskeletal mechanical arm control device, comprising:
[0039] a joint angle determination unit, configured to determine a target joint angle of each joint module in the musculoskeletal mechanical arm based on a target position of an active end of the musculoskeletal mechanical arm and a kinematic model of the musculoskeletal mechanical arm;
[0040] A muscle length determination unit, configured to determine the muscle length of each muscle module based on the target joint angle of each joint module and the kinematic model of the musculoskeletal mechanical arm;
[0041] A muscle force determination unit, used to determine the muscle force of each muscle module based on the target joint angle of each joint module and the skeletal dynamics model of the musculoskeletal mechanical arm;
[0042] A control unit, for determining a muscle control signal of each muscle module in the musculoskeletal mechanical arm based on the muscle force and muscle length of each muscle module and a muscle contraction dynamics model, and controlling the movable end of the musculoskeletal mechanical arm to move to the target position based on the muscle control signal of each muscle module;
[0043] The musculoskeletal robotic arm includes a plurality of joint modules and muscle modules attached to the joint modules.
[0044] The present invention provides an electronic device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the musculoskeletal mechanical arm control method is implemented when the processor executes the program.
[0045] The present invention provides a non-transitory computer-readable storage medium having a computer program stored thereon, wherein the computer program implements the musculoskeletal robotic arm control method when executed by a processor.
[0046] The musculoskeletal mechanical arm control method and device provided by the present invention have the following beneficial effects:
[0047] (1) By performing kinematic and dynamic modeling on the musculoskeletal manipulator and combining the motion control equilibrium point hypothesis proposed by biology, the motion control of the musculoskeletal manipulator is realized with the target position as the equilibrium position, so that the manipulator can perform target point reaching motion without trajectory constraints.
[0048] (2) Utilizing the cyclic dynamics of the musculoskeletal system, high-precision target point reaching motion task control with sparse control frequency is achieved. It also exhibits strong resistance to and elimination of environmental interference, is suitable for achieving reaching tasks in unstructured environments, and has strong flexibility, providing possibilities for human-machine collaborative tasks. BRIEF DESCRIPTION OF THE DRAWINGS
[0049] In order to more clearly illustrate the technical solutions in the present invention or the prior art, the following briefly introduces the drawings required for use in the embodiments or the description of the prior art. Obviously, the drawings described below are some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.
[0050] Figure 1 A schematic flow chart of a musculoskeletal mechanical arm control method provided by the present invention;
[0051] Figure 2 A schematic diagram of the structure of the musculoskeletal mechanical arm provided by the present invention;
[0052] Figure 3 A model diagram of the musculoskeletal mechanical arm control method provided by the present invention;
[0053] Figure 4 A schematic diagram of the structure of the musculoskeletal mechanical arm control device provided by the present invention;
[0054] Figure 5 A schematic diagram of the working of the musculoskeletal mechanical arm control device provided by the present invention;
[0055] Figure 6A schematic diagram of the motion trajectory of the musculoskeletal mechanical arm provided by the present invention;
[0056] Figure 7 This is a schematic structural diagram of an electronic device provided by the present invention.
[0057] Reference numerals:
[0058] 210: joint module; 220: skeletal connecting rod; 230: motor; 240: fixed pulley block; 250: transmission line; 260: angle sensor. DETAILED DESCRIPTION
[0059] In order to make the purpose, technical solution and advantages of the present invention clearer, the technical solution of the present invention will be clearly and completely described below in conjunction with the drawings of the present invention. Obviously, the described embodiments are part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.
[0060] It should be noted that the terms "first", "second", etc. in the present invention are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchanged where appropriate, so that the embodiments of the present invention described herein can be implemented in an order other than those illustrated or described herein. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions, for example, a process, method, system, product or device that includes a series of steps or units is not necessarily limited to those steps or units that are clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.
[0061] Figure 1 A schematic diagram of a flow chart of a musculoskeletal mechanical arm control method provided by the present invention, such as Figure 1 As shown, the method includes step 110 , step 120 , step 130 and step 140 .
[0062] Step 110, based on the target position of the active end of the musculoskeletal robotic arm and the kinematic model of the musculoskeletal robotic arm, determine the target joint angles of each joint module in the musculoskeletal robotic arm; wherein the musculoskeletal robotic arm includes multiple joint modules and muscle modules attached to the joint modules.
[0063] Specifically, the musculoskeletal mechanical arm in the embodiment of the present invention is constructed based on the structural and driving characteristics of human arms, and may include multiple joint modules and muscle modules attached to the joint modules. Each joint module is driven by muscle modules attached to both sides of the joint module to generate movement.
[0064] Figure 2 A schematic diagram of the structure of the musculoskeletal mechanical arm provided by the present invention, such as Figure 2 As shown, the musculoskeletal mechanical arm includes two joint modules 210, four muscle modules and two skeleton links 220. Each joint module 210 uses an angle sensor 260 to collect the joint angle. Each muscle module is driven by a motor 230 to extend or shorten the transmission line 250 through a fixed pulley set 240, and the transmission is transmitted to the skeleton link 220 to generate movement.
[0065] The force output characteristics of the muscle module are completely consistent with the dynamic characteristics of the biological muscle model, and the distribution of the two muscle modules driving the same joint module obeys the distribution of the biological muscle-skeletal structure. The above-mentioned musculoskeletal manipulator has two degrees of freedom.
[0066] The active end of the musculoskeletal manipulator is the free end of the entire musculoskeletal manipulator, which can move within the free space determined by the joint module. The target position is the position to which the active end needs to move. The joint angle is the angle formed by the two skeletal links connected to the joint module. The target joint angle of the joint module is the joint angle of the joint module when the active end moves to the target position.
[0067] Since the musculoskeletal manipulator is driven by the muscle module, which drives the joint module to change the joint angle, so that the movable end moves. Therefore, there is a corresponding relationship between the target position of the movable end and the target joint angle of each joint module. This corresponding relationship can be described by the kinematic model of the musculoskeletal manipulator.
[0068] The kinematic model of the musculoskeletal manipulator is a model obtained by modeling the motion of each module in the musculoskeletal manipulator. For example, the DH (Denavit-Hartenberg) parameter model is used to perform kinematic modeling on the musculoskeletal manipulator to obtain the DH parameter model of the musculoskeletal manipulator.
[0069] Therefore, by inputting the target position of the active end of the musculoskeletal robotic arm into the kinematic model of the musculoskeletal robotic arm, the target joint angles of each joint module in the musculoskeletal robotic arm can be obtained.
[0070] Step 120: Determine the muscle length of each muscle module based on the target joint angle of each joint module and the kinematic model of the musculoskeletal robotic arm.
[0071] Specifically, the kinematic model of the musculoskeletal manipulator is also used to describe the relationship between the muscle length of the muscle module and the joint angle of the joint module. Therefore, the target joint angle of each joint module can be input into the kinematic model of the musculoskeletal manipulator to obtain the muscle length of each muscle module.
[0072] Step 130: Determine the muscle force of each muscle module based on the target joint angle of each joint module and the skeletal dynamics model of the musculoskeletal robotic arm.
[0073] Specifically, the skeletal dynamics model of the musculoskeletal mechanical arm is a model obtained by modeling each module in the musculoskeletal mechanical arm through skeletal dynamics. The target joint angle of each joint module can be input into the skeletal dynamics model to obtain the muscle force of each muscle module.
[0074] Step 140: Based on the muscle force and muscle length of each muscle module and the muscle contraction dynamics model, determine the muscle control signal of each muscle module in the musculoskeletal robotic arm, and based on the muscle control signal of each muscle module, control the active end of the musculoskeletal robotic arm to move to the target position.
[0075] Specifically, the muscle contraction dynamics model is used to describe the relationship between the muscle force and muscle length of the muscle module in the musculoskeletal mechanical arm. The muscle contraction dynamics model in the embodiment of the present invention can adopt the Thelen2003 muscle contraction dynamics model.
[0076] By inputting the muscle force and muscle length of each muscle module into the muscle contraction dynamics model, the muscle control signal of each muscle module in the musculoskeletal robotic arm can be obtained.
[0077] Figure 3 A model diagram of the musculoskeletal mechanical arm control method provided by the present invention, such as Figure 3 As shown in the figure, combined with the hypothesis of motion control balance point proposed by biology, the target position can be used as the balance position of the musculoskeletal manipulator, and the muscle control signals of each muscle module can be obtained by solving the above kinematic model, skeletal dynamics model and muscle contraction dynamics model. Then, through the muscle control signals of each muscle module, each muscle module can be open-loop controlled so that the active end moves to the target position, thereby realizing the control of the musculoskeletal manipulator.
[0078] Based on the above embodiment, the kinematic model of the musculoskeletal robotic arm includes:
[0079] P=G l (Θ)
[0080] L m =G m (Θ)
[0081]
[0082] Where P is the spatial position of the active end of the musculoskeletal manipulator, θ is the joint angle vector composed of the joint angles of each joint module, and G l is the mapping function obtained by DH parameter modeling of the musculoskeletal robot arm, L m is the muscle length of each muscle module, G m is the mapping function between muscle length and joint angle derived from the geometric relationship between the muscle module attachment point and the joint angle of the joint module. is the muscle length of the nth muscle module.
[0083] Specifically, the spatial position P of the active end of the musculoskeletal manipulator can be expressed as:
[0084] P = [xyz]
[0085] In the formula, x, y, and z are the spatial coordinates of the active end in three-dimensional space.
[0086] The joint angle vector Θ can be expressed as:
[0087] θ=[θ1 θ2…θ m ]
[0088] In the formula, θ m is the joint angle of the mth joint module.
[0089] The mapping function G obtained by DH parameter modeling of the musculoskeletal robot l , we can get:
[0090] P=G l (Θ)
[0091] By taking the derivative of the above formula, we can get the velocity of the active end of the robot arm and joint angular velocity The functional relationship between them is:
[0092]
[0093] In the formula, J l ∈R 3×m is the Jacobian matrix.
[0094] According to the attachment of the muscle module to the skeletal link, the mapping relationship from the joint space state to the muscle motion state can be calculated through geometric relationships:
[0095] L m =G m (Θ)
[0096]
[0097] In the formula, G m It is the mapping function between muscle length and joint angle derived from the geometric relationship formed by the muscle module attachment point and the joint angle of the joint module.
[0098] By taking the derivative of the above formula, we can get the speed of muscle length change and joint angular velocity The relationship between:
[0099]
[0100] Where W is the Jacobian matrix between the muscle velocity of the muscle module and the joint angular velocity of the joint module, and T is the transpose operator.
[0101] On this basis, the kinematic mapping relationship between the muscle motion state and the robot end position can be obtained as follows:
[0102]
[0103]
[0104] Based on any of the above embodiments, step 110 includes:
[0105] P t =G l (Θ t )
[0106] P t =[x t y t z t ]
[0107] Θ t =[θ1 θ2…θ m ]
[0108] Where P t is the target position of the active end of the musculoskeletal manipulator at time t, x t ,y t and z t is the spatial coordinate of the active end at time t, Θ t is the target joint angle vector composed of the target joint angles of each joint module at time t, θ m is the target joint angle of the mth joint module.
[0109] Specifically, if the active end of the musculoskeletal manipulator moves to the target position P at time t t , then the target position P tThe equilibrium position of the active end is set, and the above relationship is obtained according to the dynamic model in the above embodiment.
[0110] Based on any of the above embodiments, step 120 includes:
[0111] L m t =G m (Θ t )
[0112] Where, L m t is the muscle length of each muscle module at time t.
[0113] Specifically, the target joint angle vector θ composed of the target joint angles of each joint module at time t t By inputting into the kinetic model in the aforementioned embodiment, the above relationship can be obtained.
[0114] Based on any of the above embodiments, step 130 includes:
[0115] Perform dynamic modeling on the musculoskeletal robotic arm to obtain a skeletal dynamic model of the musculoskeletal robotic arm;
[0116] Determine the muscle force of each muscle module based on the skeletal dynamics model;
[0117] The skeletal dynamics model is:
[0118]
[0119] τ=WF
[0120] Where Θ is the joint angle vector composed of the joint angles of each joint module, M is the inertia matrix of the musculoskeletal manipulator, C is the Coriolis force and centrifugal force matrix, G is the gravity change matrix, W is the Jacobian matrix between the muscle velocity of the muscle module and the joint angular velocity of the joint module, F is the vector composed of the muscle force of each muscle module, and τ is the joint torque of the joint module.
[0121] Specifically, the joint angular velocity can be obtained by differentiating Θ Taking the second derivative of Θ gives the joint angular acceleration Since the active end is at the target position (equilibrium position), the joint angular velocity and joint angular acceleration are all zero, then according to the skeletal dynamics model we can get:
[0122] G(Θ t )=W(Θ t )F
[0123] From this we can get:
[0124] F=W -1 (Θ t )G(Θ t )
[0125] In the formula, is the muscle force of the nth muscle module.
[0126] Based on any of the above embodiments, step 140 includes:
[0127]
[0128] Where a(t) is the muscle control signal of the muscle module at time t, F TD is the muscle force of the muscle module at time t, l M (t) is the muscle fiber length of the muscle module at time t, F PE is the force generated by the passive elongation of the muscle fibers in the muscle module, is the muscle velocity of the muscle module at time t, f l is the correlation coefficient between muscle force and muscle fiber length, f v is the correlation coefficient between muscle force and muscle velocity, l TD is the tendon length of the muscle module.
[0129] Specifically, the muscle contraction dynamics model can adopt the Thelen2003 muscle contraction dynamics model, which is expressed as:
[0130]
[0131] In the formula, l MT is the muscle length of the muscle module, l M is the muscle fiber length of the muscle module, l TD is the tendon length of the muscle module. TD (l TD ), F PE (l M (t))、f l (l M (t)) and In Thelen2003 muscle contraction dynamics model, the muscle force F can be solved according to the functional relationship. TD and tendon length l TD Directly related, the muscle fiber contraction speed is calculated by the muscle contraction dynamics model and used to calculate the muscle fiber length at the next moment. Muscle dynamics has a cyclic characteristic.
[0132] Through the muscle contraction dynamics model, the expression of the muscle control signal of the muscle module at time t can be obtained.
[0133] When the active end is at the target position (balanced position), the muscle velocity (speed of change of muscle fiber length) is 0, that is, F TD (l TD ) is a constant value that is independent of time, then the expression of the muscle control signal a(t) of the muscle module at time t can be expressed as:
[0134]
[0135] In the above embodiment, through the skeletal dynamics analysis of the musculoskeletal robotic arm, the control stability of the musculoskeletal robotic arm is guaranteed by the musculoskeletal system. The following proves that the musculoskeletal robotic arm can still maintain stability and error convergence after environmental interference is applied.
[0136] Assume that the state error caused by environmental interference is:
[0137] z1=Θ1-Θ t
[0138]
[0139] Where z1 is the joint angle position error of the musculoskeletal manipulator, z2(ω1) is the joint angular velocity error of the musculoskeletal manipulator, and θ1 is the joint angle vector of the musculoskeletal manipulator after environmental interference.
[0140] Then the dynamic equation with error (θ1, ω1) as the state quantity is:
[0141]
[0142] Design the Lyapunov function, the Lyapunov exponent is V, which is expressed as follows:
[0143]
[0144] It is easy to know that V>0 holds; according to the properties of skew-symmetric matrices, the derivative of the above formula yields:
[0145]
[0146] In order to make Available
[0147] τ(Θ1)<-z1+G(Θ1)-Kz2
[0148] Where K is the gain coefficient.
[0149] Since in the target state (Θ t ,0), the system remains stable, then:
[0150] τ(Θ t )=G(Θt )
[0151] Substituting into the above formula, we can get:
[0152]
[0153] The following discusses the response of muscle dynamics to the joint angular position error z1 and the joint angular velocity error z2 in a musculoskeletal robot arm.
[0154] From muscle dynamics, we know that the muscle force F TD It is related to tendon length and muscle velocity; the reconstructed muscle force output equation is as follows:
[0155]
[0156] Where k1 is the first coefficient of the reconstructed muscle force output equation, k2 is the second coefficient of the reconstructed muscle force output equation, and g t is a function of muscle force and tendon length, g v is a function of muscle force and muscle velocity.
[0157] According to the muscle contraction dynamics model of Thelen2003, F TD With l TD , If they are all positively correlated, then k1, k2>0. Taking the total differential of the above formula, we get:
[0158]
[0159]
[0160]
[0161] According to the Hill-Type muscle model, K1 and K2 are positive coefficients.
[0162] From the musculoskeletal coupling geometric relationship, we can get:
[0163] l MT = l TD +l M
[0164] The muscle state can be approximated by the following relationship:
[0165] Δl TD =k l W T ΔΘ
[0166]
[0167] In the formula, k l is the correlation coefficient between tendon length and joint angle, kv is the correlation coefficient between muscle velocity and joint angular velocity.
[0168] Bring in:
[0169]
[0170] According to the dynamics of the musculoskeletal system, the torque change response to ΔΘ is as follows:
[0171] Define ΔΘ=z1 to represent the angle error, represents the angular velocity error, then
[0172] Δτ=-WΔF TD =-K l WW T z1-K v WW T z2
[0173] After analysis, it can be concluded that this dynamic response satisfies the stability response of the connecting rod dynamics to the environmental error, and the system stability is proved. The system stability ensures that this system can adopt the open-loop equilibrium point control method to achieve stable and high-precision target point arrival tasks at a lower control frequency.
[0174] In summary, the musculoskeletal mechanical arm control method provided by the embodiment of the present invention has the following beneficial effects:
[0175] (1) By performing kinematic and dynamic modeling on the musculoskeletal manipulator and combining the motion control equilibrium point hypothesis proposed by biology, the motion control of the musculoskeletal manipulator is realized with the target position as the equilibrium position, so that the manipulator can perform target point reaching motion without trajectory constraints.
[0176] (2) Utilizing the cyclic dynamics of the musculoskeletal system, high-precision target point reaching motion task control with sparse control frequency is achieved. It also exhibits strong resistance to and elimination of environmental interference, is suitable for achieving reaching tasks in unstructured environments, and has strong flexibility, providing possibilities for human-machine collaborative tasks.
[0177] Based on any of the above embodiments, Figure 4 The schematic diagram of the structure of the musculoskeletal mechanical arm control device provided by the present invention is as follows: Figure 4 As shown, the device comprises:
[0178] The joint angle determination unit 410 is used to determine the target joint angle of each joint module in the musculoskeletal mechanical arm based on the target position of the active end of the musculoskeletal mechanical arm and the kinematic model of the musculoskeletal mechanical arm;
[0179] A muscle length determination unit 420, for determining the muscle length of each muscle module based on the target joint angle of each joint module and the kinematic model of the musculoskeletal manipulator;
[0180] A muscle force determination unit 430, for determining the muscle force of each muscle module based on the target joint angle of each joint module and the skeletal dynamics model of the musculoskeletal manipulator;
[0181] A control unit 440 is used to determine a muscle control signal of each muscle module in the musculoskeletal mechanical arm based on the muscle force and muscle length of each muscle module and the muscle contraction dynamics model, and control the active end of the musculoskeletal mechanical arm to move to a target position based on the muscle control signal of each muscle module;
[0182] The musculoskeletal robotic arm includes a plurality of joint modules and muscle modules attached to the joint modules.
[0183] Specifically, Figure 5 The working diagram of the musculoskeletal mechanical arm control device provided by the present invention is as follows: Figure 5 As shown, the musculoskeletal robotic arm control device 510 is connected to the musculoskeletal robotic arm 520. The musculoskeletal robotic arm control device 510 inputs the target position and outputs the muscle control signals of each muscle module. The musculoskeletal robotic arm 520 receives the muscle control signals of each muscle module to move the active end to the target position.
[0184] Figure 6 The motion trajectory diagram of the musculoskeletal mechanical arm provided by the present invention is as follows: Figure 6 As shown, the musculoskeletal robotic arm control device uses multiple target positions as balance points, and the dotted line is the motion trajectory of the active end of the robotic arm. It calculates the muscle activation signals in each state and transmits the data to the hardware system of the musculoskeletal robotic arm to achieve the target position arrival task. It has the effect of achieving high control accuracy with low control frequency and has a high ability to resist environmental interference.
[0185] Based on any of the above embodiments, Figure 7 A schematic diagram of the structure of an electronic device provided by the present invention, such as Figure 7 As shown, the electronic device may include: a processor (Processor) 710, a communication interface (Communications Interface) 720, a memory (Memory) 730 and a communication bus (Communications Bus) 740, wherein the processor 710, the communication interface 720, and the memory 730 communicate with each other through the communication bus 740. The processor 710 may call the logic command in the memory 730 to execute the following method:
[0186] Based on the target position of the active end of the musculoskeletal robotic arm and the kinematic model of the musculoskeletal robotic arm, determine the target joint angle of each joint module in the musculoskeletal robotic arm; based on the target joint angle of each joint module and the kinematic model of the musculoskeletal robotic arm, determine the muscle length of each muscle module; based on the target joint angle of each joint module and the skeletal dynamics model of the musculoskeletal robotic arm, determine the muscle force of each muscle module; based on the muscle force and muscle length of each muscle module and the muscle contraction dynamics model, determine the muscle control signal of each muscle module in the musculoskeletal robotic arm, and based on the muscle control signal of each muscle module, control the active end of the musculoskeletal robotic arm to move to the target position;
[0187] The musculoskeletal robotic arm includes a plurality of joint modules and muscle modules attached to the joint modules.
[0188] In addition, the logic commands in the above-mentioned memory 730 can be implemented in the form of software functional units and can be stored in a computer-readable storage medium when sold or used as an independent product. Based on such an understanding, the technical solution of the present invention, in essence, or the part that contributes to the prior art or the part of the technical solution, can be embodied in the form of a software product, which is stored in a storage medium and includes several commands to enable a computer device (which can be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the method described in each embodiment of the present invention. The aforementioned storage medium includes: various media that can store program codes, such as a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a disk or an optical disk.
[0189] The processor in the electronic device provided in the embodiment of the present invention can call the logic instructions in the memory to implement the above method. Its specific implementation method is consistent with the implementation method of the aforementioned method and can achieve the same beneficial effects, which will not be repeated here.
[0190] An embodiment of the present invention further provides a non-transitory computer-readable storage medium on which a computer program is stored. When the computer program is executed by a processor, the method provided in the above embodiments is implemented.
[0191] When the computer program stored on the non-transitory computer-readable storage medium provided by the embodiment of the present invention is executed, the above method is implemented. Its specific implementation method is consistent with the implementation method of the aforementioned method and can achieve the same beneficial effects, which will not be repeated here.
[0192] The device embodiments described above are merely illustrative, wherein the units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, they may be located in one place, or they may be distributed on multiple network units. Some or all of the modules may be selected according to actual needs to achieve the purpose of the scheme of this embodiment. Ordinary technicians in this field can understand and implement it without paying creative labor.
[0193] Through the description of the above implementation methods, those skilled in the art can clearly understand that each implementation method can be implemented by means of software plus a necessary general hardware platform, and of course, by hardware. Based on this understanding, the above technical solution is essentially or the part that contributes to the prior art can be embodied in the form of a software product, which can be stored in a computer-readable storage medium, such as ROM / RAM, a disk, an optical disk, etc., including a number of commands to enable a computer device (which can be a personal computer, a server, or a network device, etc.) to execute the methods described in each embodiment or some parts of the embodiments.
[0194] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit it. Although the present invention has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. However, these modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present invention.
Claims
1. A musculoskeletal robotic arm control method, characterized in that: include: Determining target joint angles of each joint module in the musculoskeletal robotic arm based on a target position of an active end of the musculoskeletal robotic arm and a kinematic model of the musculoskeletal robotic arm; Determining the muscle length of each muscle module based on the target joint angle of each joint module and the kinematic model of the musculoskeletal robotic arm; Determining the muscle force of each muscle module based on the target joint angle of each joint module and the skeletal dynamics model of the musculoskeletal robotic arm; Determine the muscle control signal of each muscle module in the musculoskeletal mechanical arm based on the muscle force and muscle length of each muscle module and the muscle contraction dynamics model, and control the active end of the musculoskeletal mechanical arm to move to the target position based on the muscle control signal of each muscle module; Wherein, the musculoskeletal mechanical arm comprises a plurality of joint modules, and a muscle module attached to the joint modules; The determining of the muscle force of each muscle module based on the target joint angle of each joint module and the skeletal dynamics model of the musculoskeletal mechanical arm includes: Performing dynamic modeling on the musculoskeletal mechanical arm to obtain a skeletal dynamic model of the musculoskeletal mechanical arm; Based on the skeletal dynamics model, determining the muscle force of each muscle module; The skeleton dynamics model is: ; In the formula, is the joint angle vector composed of the joint angles of each joint module, is the inertia matrix of the musculoskeletal manipulator, is the Coriolis force and centrifugal force matrix, is the gravity change matrix, is the Jacobian matrix between the muscle velocity of the muscle module and the joint angular velocity of the joint module, is the vector composed of the muscle forces of each muscle module, is the joint torque of the joint module; Determining the muscle force of each muscle module based on the skeletal dynamics model includes: ; In the formula, For the The muscle strength of each muscle module, for The target joint angle vector composed of the target joint angles of each joint module at the moment; The kinematic model of the musculoskeletal manipulator includes: ; In the formula, is the spatial position of the active end of the musculoskeletal manipulator, is the joint angle vector composed of the joint angles of each joint module, is a mapping function obtained by performing DH parameter modeling on the musculoskeletal mechanical arm, is the muscle length of each muscle module, is the mapping function between muscle length and joint angle derived from the geometric relationship between the muscle module attachment point and the joint angle of the joint module. For the The muscle length of each muscle module; The step of determining the target joint angles of each joint module in the musculoskeletal mechanical arm based on the target position of the active end of the musculoskeletal mechanical arm and the kinematic model of the musculoskeletal mechanical arm comprises: ; In the formula, The active end of the musculoskeletal mechanical arm is The target position at the moment, and For the active end The spatial coordinates of the time, for The target joint angle vector composed of the target joint angles of each joint module at the moment, For the The target joint angles of each joint module; The determining of the muscle length of each muscle module based on the target joint angle of each joint module and the kinematic model of the musculoskeletal mechanical arm comprises: ; In the formula, for The muscle length of each muscle module at the moment; The determining of the muscle control signals of each muscle module in the musculoskeletal mechanical arm based on the muscle force and muscle length of each muscle module and the muscle contraction dynamics model comprises: ; In the formula, for The muscle control signal of the muscle module at each moment, is the muscle force of the muscle module, for The muscle fiber length of the muscle module at that moment, is the force generated by the passive elongation of the muscle fibers in the muscle module, for The muscle speed of the muscle module at that moment, is the correlation coefficient between muscle force and muscle fiber length, is the correlation coefficient between muscle force and muscle velocity.
2. A musculoskeletal robotic arm control device, characterized in that: include: a joint angle determination unit, configured to determine a target joint angle of each joint module in the musculoskeletal mechanical arm based on a target position of an active end of the musculoskeletal mechanical arm and a kinematic model of the musculoskeletal mechanical arm; A muscle length determination unit, configured to determine the muscle length of each muscle module based on the target joint angle of each joint module and the kinematic model of the musculoskeletal mechanical arm; A muscle force determination unit, used to determine the muscle force of each muscle module based on the target joint angle of each joint module and the skeletal dynamics model of the musculoskeletal mechanical arm; A control unit, for determining a muscle control signal of each muscle module in the musculoskeletal mechanical arm based on the muscle force and muscle length of each muscle module and a muscle contraction dynamics model, and controlling the movable end of the musculoskeletal mechanical arm to move to the target position based on the muscle control signal of each muscle module; Wherein, the musculoskeletal mechanical arm comprises a plurality of joint modules, and a muscle module attached to the joint modules; The determining of the muscle force of each muscle module based on the target joint angle of each joint module and the skeletal dynamics model of the musculoskeletal mechanical arm includes: Performing dynamic modeling on the musculoskeletal mechanical arm to obtain a skeletal dynamic model of the musculoskeletal mechanical arm; Based on the skeletal dynamics model, determining the muscle force of each muscle module; The skeleton dynamics model is: ; In the formula, is the joint angle vector composed of the joint angles of each joint module, is the inertia matrix of the musculoskeletal manipulator, is the Coriolis force and centrifugal force matrix, is the gravity change matrix, is the Jacobian matrix between the muscle velocity of the muscle module and the joint angular velocity of the joint module, is the vector composed of the muscle forces of each muscle module, is the joint torque of the joint module; Determining the muscle force of each muscle module based on the skeletal dynamics model includes: ; In the formula, For the The muscle strength of each muscle module, for The target joint angle vector composed of the target joint angles of each joint module at the moment; The kinematic model of the musculoskeletal manipulator includes: ; In the formula, is the spatial position of the active end of the musculoskeletal manipulator, is the joint angle vector composed of the joint angles of each joint module, is a mapping function obtained by performing DH parameter modeling on the musculoskeletal mechanical arm, is the muscle length of each muscle module, is the mapping function between muscle length and joint angle derived from the geometric relationship between the muscle module attachment point and the joint angle of the joint module. For the The muscle length of each muscle module; The step of determining the target joint angles of each joint module in the musculoskeletal mechanical arm based on the target position of the active end of the musculoskeletal mechanical arm and the kinematic model of the musculoskeletal mechanical arm comprises: ; In the formula, The active end of the musculoskeletal mechanical arm is The target position at the moment, and For the active end The spatial coordinates of the time, for The target joint angle vector composed of the target joint angles of each joint module at the moment, For the The target joint angles of each joint module; The determining of the muscle length of each muscle module based on the target joint angle of each joint module and the kinematic model of the musculoskeletal mechanical arm comprises: ; In the formula, for The muscle length of each muscle module at the moment; The determining of the muscle control signals of each muscle module in the musculoskeletal mechanical arm based on the muscle force and muscle length of each muscle module and the muscle contraction dynamics model comprises: ; In the formula, for The muscle control signal of the muscle module at each moment, is the muscle force of the muscle module, for The muscle fiber length of the muscle module at that moment, is the force generated by the passive elongation of the muscle fibers in the muscle module, for The muscle speed of the muscle module at that moment, is the correlation coefficient between muscle force and muscle fiber length, is the correlation coefficient between muscle force and muscle velocity.
3. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that: When the processor executes the program, the musculoskeletal robotic arm control method as claimed in claim 1 is implemented.
4. A non-transitory computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the musculoskeletal robotic arm control method as claimed in claim 1 is implemented.
