Disclosure of Invention
In order to solve the technical problems, the invention provides a rigidity control and compensation method of a continuum robot, wherein the rigidity of a mechanical arm is decoupled, the rigidity of the mechanical arm is divided into joint rigidity and rope rigidity, the influences of rope friction, mechanical arm gravity and the like on the rope rigidity under different configurations are fully considered, a novel high-precision comprehensive rigidity adjusting strategy is developed, the rigidity of the mechanical arm is adjusted on the premise of not adding other elastic elements, the method has the characteristics of simple structure and high generalization capability, and the rigidity of the mechanical arm is adjusted in real time by adjusting the rigidity of a rope, so that the rigidity of the mechanical arm can be obviously improved.
In order to achieve the above object, the present invention provides a stiffness control and compensation method of a continuum robot, comprising:
constructing a kinematic model of the continuum robot, the kinematic model to provide a drive rope length change for the continuum robot;
constructing a statics model of the continuum robot based on the kinematic model;
and constructing a mechanical arm stiffness model of the continuum robot based on the statics model, acquiring the rope stiffness model based on the mechanical arm stiffness model, and adjusting the tension of a rope through the rope stiffness model to complete stiffness control and compensation of the continuum robot.
Optionally, constructing the kinematic model of the continuum robot comprises:
acquiring a track plan of the continuum robot;
acquiring joint angle changes for driving joint motion based on the trajectory planning;
and establishing a kinematic model of the continuum robot based on the joint angle change.
Optionally, constructing the statics model of the continuum robot comprises:
based on the kinematic model, acquiring a sub-model of the length change of the driving rope of the continuum robot under different configurations;
and carrying out static modeling on the continuum robot based on the driving rope length change submodel to obtain the static model.
Optionally, the static model comprises: a friction force sub-model, a gravity force sub-model and an additional force resultant sub-model.
Optionally, the kinematic model is:
wherein,
is the ith joint coordinate system O
i In the i-1 th joint coordinate system O
i-1 I is the ith joint of the manipulator, i =1,2,. 10.
Optionally, the drive rope length variation submodel is:
wherein l i,j The ith joint, the length of the jth rope, m is the number of joints, l m,j For driving the ropes in a local coordinate system O i And { O } i+1 The position vector of.
Optionally, the static model is:
wherein,
is the driving force of the jth rope of the ith joint, < >>
Is the normal pressure of the jth rope of the (i + 1) th joint>
The force received for the central support of each joint i, F
i,e For the force exerted on the ith joint, M
i,e For a moment exerted on the i-th joint, <' >>
Is a position vector from the center of the ith joint universal joint to the jth rope fixing point of the ith joint, and is used for judging whether the position vector is greater than or equal to the reference value>
Is the position vector from the center of the ith joint universal joint to the jth rope fixing point of the (i + 1) th joint.
Optionally, the friction force sub-model is:
wherein,
a driving force provided for the motor;
Is a force acting on the rigid disk of the i-th joint>
Friction force for the entire drive rope from the drive side to the arm side;
the gravity submodel is as follows:
wherein G is i,lower For the ith 2-DoF gateGravity vector of lower part of joint, G i,upper Is the gravity vector of the upper part of the ith 2-DoF joint, m i,lower And m i,upper The mass of the lower part and the upper part of the ith 2-DoF joint respectively, and g is a universal gravitation constant;
the sub-model of the additional force and the resultant force generated by the driving rope is as follows:
wherein,
for the i-th joint to drive the combined force of the ropes, based on the weight of the rope>
The tension of the j rope drive rope for the ith joint, device for selecting or keeping>
Drives the tension of the rope for the j +1 th rope of the ith joint, based on the measured value of the measured value>
The tension of the rope is driven for the j +2 th rope of the ith joint.
Optionally, the mechanical arm stiffness model is:
wherein, W
i Is a static model of the ith joint, s
i As a rotational pose vector of the ith joint, K
i Is the stiffness matrix of the 2-DoF joint, K
i,1 As a model of rope stiffness, K
i,2 For structural rigidity, f
i Is a driving force matrix formed by three ropes,
is Jacobian of the ith jointA matrix;
the rope stiffness model is as follows:
wherein k is i,1 ,k i,2 And k i,3 Stiffness of three drive ropes, J i Is the Jacobian matrix for the ith joint cord.
Compared with the prior art, the invention has the following advantages and technical effects:
1. the invention for the first time attempts to adjust the stiffness of a continuum robot arm by adjusting the tension of the drive cables, providing a convenient and efficient method for adjusting a long continuum robot (in modular sections and multiple drive cables). Using the proposed rope tension adjustment algorithm, additional forces that increase the drive rope tension can be calculated at different configurations of the system and external loads without affecting the balance of the system.
2. The comprehensive statics model of the continuum robot is composed of a friction force (namely a driving cable with a guide system) modeling mode, an induced resultant force (caused by the adjusting tension of the driving cable) modeling mode and an upgraded rigidity model (considering the rigidity and the tension of the driving cable) modeling mode. Through the improved static model, the shape of the continuum robot after deformation can be predicted, and the developed tension adjustment strategy can be evaluated.
3. Aiming at the development of a driving cable tension adjusting algorithm, a comprehensive statics model containing friction, external load and gravity is provided, the influence of the gravity and the friction of the mechanical arm on the rigidity of the mechanical arm can be compensated in real time by controlling the tension of three ropes driving joint movement, and the accuracy of the rigidity control algorithm is improved.
Detailed Description
It should be noted that the embodiments and features of the embodiments in the present application may be combined with each other without conflict. The present application will be described in detail below with reference to the embodiments with reference to the attached drawings.
It should be noted that the steps illustrated in the flowcharts of the figures may be performed in a computer system such as a set of computer-executable instructions and that, although a logical order is illustrated in the flowcharts, in some cases, the steps illustrated or described may be performed in an order different than presented herein.
Examples
The embodiment provides a rigidity control and compensation method of a continuum robot, which comprises the following steps:
constructing a kinematic model of the continuum robot, the kinematic model to provide a drive rope length change for the continuum robot;
constructing a statics model of the continuum robot based on the kinematic model;
and constructing a mechanical arm stiffness model of the continuum robot based on the statics model, acquiring the rope stiffness model based on the mechanical arm stiffness model, and adjusting the tension of a rope through the rope stiffness model to complete stiffness control and compensation of the continuum robot.
Further, constructing the kinematic model of the continuum robot comprises:
acquiring a track plan of the continuum robot;
acquiring joint angle changes for driving joint motion based on the trajectory planning;
and establishing a kinematic model of the continuum robot based on the joint angle change.
Further, constructing the statics model of the continuum robot comprises:
based on the kinematic model, acquiring a sub-model of the length change of the driving rope of the continuum robot under different configurations;
and carrying out static modeling on the continuum robot based on the driving rope length change submodel to obtain the static model.
Further, the statics model includes: a friction force submodel, a gravity submodel and an additional force resultant submodel.
The embodiment will be described in further detail with reference to the accompanying drawings, and as can be seen from a stiffness control flowchart in fig. 1, a joint angle for driving a joint to move is calculated by using trajectory planning, then a change in the length of a rope in a driving space is calculated through a kinematic model to establish a static model of a system, the influence of the change in the joint angle caused by parasitic load of the driving rope and the self weight of a mechanical arm on the stiffness of a robot is fully considered, a stiffness model of the system is established, the comprehensive stiffness of the mechanical arm is decomposed into structural stiffness and rope stiffness, the stiffness of the rope is adjusted in real time by using a developed rope stiffness adjusting algorithm, the actual deformation of the mechanical arm is predicted, the overall stiffness of the mechanical arm is adjusted and compensated, and the accuracy of the robot is improved. The rope rigidity adjusting algorithm is that the tension of a rope changes under the influence of terminal load, so that the rigidity of the rope changes, and the rope variation caused by the rope rigidity change can be compensated according to Hooke's law, so that the terminal position precision of the mechanical arm is improved.
The overall stiffness adjustment strategy of the present embodiment is: and constructing a rigidity model of the robot based on the statics model of the continuum robot. The stiffness model of the robot can be divided into two parts, one part is the structural stiffness of the mechanical arm, and the other part is the stiffness of the flexible rope. Compared with the structural rigidity of the mechanical arm, the rigidity of the flexible rope is smaller, the rigidity of the mechanical arm is mainly influenced by the rigidity of the flexible rope, and the flexible rope has elasticity. Therefore, the rigidity of the rope can be adjusted only by adjusting the tension of the rope to adjust the overall rigidity of the robot, so that the overall rigidity of the mechanical arm is improved. The method can meet the use requirements under different environments, for example, when the robot is operated at high precision, the rigidity of the rope is adjusted, so that the overall rigidity of the robot is improved. On the contrary, if the interaction between the robot or the robot and the environment needs to be improved, the rigidity of the mechanical arm can be reduced by adjusting the tension of the rope.
The method for controlling and compensating the rigidity of the continuum robot provided by the embodiment comprises the following specific implementation steps:
the method comprises the following steps: and establishing a kinematic model of the robot to obtain the length change of the driving rope under different configurations of the given continuum robot, wherein the structure of the continuum robot is shown in FIG. 2.
The kinematics model of the robot was built in conjunction with fig. 3, according to the working principle and the structural design (taking a continuum robot with 20 degrees of freedom as an example), with 10 local coordinate systems ({ O }) i }, i =1,2, 10) are built on the bottom of 10 2-DoF joints, respectively, to define their shape variations. Specifically, one may select from { O } i,j O to i,j+1 The conversion matrix of is defined as follows: first, { O i,j Denotes moving from its origin to O i,j To O i,j+1 Along Z ij Moving the shaft; then { O ij Around Y i,j+1 Axis of rotation theta ij And (4) an angle. Thus, the homogeneous transformation matrix can be represented as:
wherein R is X (θ i,j ) Is from { O i,j+1 The coordinate system is around Y i,j+1 Axis of rotation theta ij Angle-generated rotation matrix,D i,j Is from { O i,j O of ij To O i,j+1 The length vector of (c). Since a universal joint is generally employed as a rotational joint when constructing a continuum robot, it can be further expressed as a rotation θ about two orthogonal axes, respectively i,1 And theta i,2 The rotation matrix of the angle, see the following equation:
wherein, T z (l i,1 ) And T z (l i,2 ) Is along a coordinate system { O } i Z-axis of the z-axis is translated l respectively i,1 And l i,2 The transformation matrix of (2). Wherein l i,1 And l i,2 Respectively the length of the rigid axes of the upper and lower platforms. T is a unit of x (π/2) and T x (- π/2) is the transformation matrix rotated π/2 and- π/2, respectively, along the x-axis. T is y (π/2) and T z (. Pi./2) is defined as the rotation transformation matrix around the y-axis and z-axis, respectively. T is z (θ i,1 ) And T z (θ i,2 ) Respectively defined as rotations theta about the axis of the cross joint i,1 And theta i,2 The transformation matrix of (2).
Transforming the rotation matrix R (theta) of the matrix by substituting the parameters into the equation i,1 ,θ i,2 ) And a position vector P (theta) i,1 ,θ i,2 ) Can be expressed as:
where s θ = sin θ, c θ = cos θ is a concise expression of the trigonometric function.
After obtaining the explicit expression of the ith segment transformation matrix of the continuum robot, the 10 segments of transformation matrices are multiplied to build the whole kinematics model of the multi-segment continuum.
To drive the shape change (i.e., rotation angle θ) of the ith 2-DoF joint i,1 And theta i,2 ) The length of the drive rope needs to be calculated from the inverse kinematics of the system. The closed loop vector of the jth rope for the ith 2-DoF joint can be expressed as:
l i,j =R(θ i,1 ,θ i,2 )(l i,2 +r i,j )+l i,1 -b i,j
wherein l i,j Is the position vector of the driving rope in the mechanical arm coordinate system { O }; l i,1 And l i,2 The position vectors of the upper and lower rigid axes in the coordinate system are respectively; r is i,j Is { O i A coordinate system moves a position vector of a rope fixing point in the platform; b i,j Is fixed at the rope fixing point O i Position vector on the stationary platform in the coordinate system.
Due to the design of a continuum robot with multiple 2-DoF joints, there are two drive strategies: coupled (i.e., sections 1-7) and decoupled (i.e., sections 8-10), the length of the drive rope can be expressed as:
for the coupled 2-DoF section, the change in length of the jth drive cable for the ith joint will be the sum of the changes in length of all the rear section joint cables, since the drive cable for the front section will pass through the rear section; whereas for the decoupled 2-DoF part, since the drive cable is directly connected to the motor through a flexible spring tube (similar to the brake cable of a bicycle), the change in length will be the difference in geometric distance between the moving and stationary platforms.
Step two: static modeling of 20-DoF continuum robot
As shown in FIG. 4, taking the ith 2-DoF joint as an example, due to the characteristic of coupled driving, the rope for driving the (i + 1) th joint to move passes through the ith joint, so that three driving ropes need to be added when the statics equation is established. Wherein, a static coordinate system { O ] is added to the center of the static platform of the ith joint
i }, external load (F)
i And M
i ) Is applied to the moving platform of the ith joint. One end of 3 driving ropes penetrates through the guide hole to be connected to the upper disc, and the other end of the driving ropes is connected with the linear motor. Further, two central shafts extending from the base and the upper plate are connected by a universal joint. Thus, for constructing the statics equation, three drive ropes need to be considered (tension is
And &>
) Three passive actuation ropes (tensioned->
And &>
) And a central support->
The force of (c).
For the ith joint of a multi-segment continuum robot, the static equation can be expressed as:
wherein,
is the driving force of the jth rope of the ith joint>
Is the normal pressure of the jth rope of the (i + 1) th joint>
Is the force received by the center support of the i-th joint>
Is the force exerted on the ith joint, M
i,e For a moment exerted on the i-th joint, <' >>
A position vector from the center of the i-th joint gimbal to the jth rope fixing point of the i-th joint, and->
The position vector from the center of the ith joint universal joint to the jth rope fixing point of the (i + 1) th joint.
Resultant force
Generated by the jth drive rope (one side of the drive force vector is ^ on the rigid disc of section i)>
On the other hand a driving force vector of->
) Can be expressed as:
friction occurs as the drive cable passes and slides along the holes in the rigid disks, thereby impairing the efficiency of the force transfer (from the base to the tip). Therefore, the friction force needs to be analyzed. Since a long continuum robot is generally composed of a plurality of 2-DoF joints, each of which can rotate around two orthogonal axes, the included angle between the driving rope and the rigid disk can change greatly along with different configurations of the continuum robot, and the direction vector of the driving rope needs to be calculated to calculate the magnitude of the friction force.
Wherein
And &>
Respectively is a drive force vector->
And &>
Die length of (2). l
i.j And l
i+1.j Respectively the drive rope in a local coordinate system O
i And { O }
i+1 Position vector in. In order to obtain the magnitude of the friction force, it is necessary to calculate the normal pressure ≥ with respect to the guide bore>
Can be expressed as:
wherein n is i Is a unit normal vector (coordinate system O) of a rigid disk i+1 Plane XOY of).
Frictional force
Can be expressed as:
where mu is the coefficient of friction between the drive cord and the rigid disk. | · | represents the modulo length of the vector. The friction loss of the driving rope from the i-th section to the i + 1-th section can be expressed according to the rope friction calculated by equation (12):
where ± denotes the direction of the friction between the drive cable and the rigid disc. For example, a negative sign is valid when the drive cord is slid in the direction of the tip, and vice versa. Thus, the friction equation for the entire drive cable from the drive side (i.e., the motor) to the arm side (i.e., the fixed point of the rigid disk) can be expressed as:
wherein
A driving force provided for the motor;
Is the force acting on the rigid disc of the ith joint.
Since the continuum robot has an elongated structure, the tension distribution of the drive ropes will be greatly influenced by the load (e.g. internal load: weight of the joints; external load: environmental forces during task completion), resulting in a large deviation of the robot arm from its ideal shape.
Based on the structural design of the multi-degree-of-freedom continuum robot (namely, each 2-DoF joint is composed of two rigid parts and is connected through a rigid universal joint at the center) and the definition of a coordinate system (namely, a motion coordinate system is established at the bottom of each 2-DoF section joint to describe the shape change of the whole continuum robot), in the local coordinate system of the two parts (namely G, G) of the gravity vector i,lower And G i,upper ) Can be expressed as:
wherein m is i,lower And m i,upper Are the masses of the inferior and superior portions of the ith 2-DoF joint. g is the gravitational constant.
By using the transformation matrix, the { O } coordinate system can be represented i In represents the internal mass of the inferior and superior portions of the 2-DoF joint:
wherein
And &>
Is in a local coordinate system { O }
i The lower and upper half of the mass vectors indicated in (j).
And &>
From the coordinate system { O
i Upper portion to { O }
i,joint The transformation matrix of the lower centroid.
Is from the coordinate system { O
i To the joint coordinate system O
i,joint The transformation matrix of.
Likewise, external load (i.e. F) i And M i ) Or in the coordinate system { O } i Expressed as:
wherein,
and &>
Expressed as a local coordinate system O
i External load in (c) }.
Representing a coordinate System { { O { (O) }
i,joint } to a coordinate system O
i+1 The transformation matrix of.
Due to shifting the gravity vector to the local coordinate system O i The accompanying moments will be generated, and they can be expressed as:
wherein
And &>
Is a local coordinate system O
i Lower and upper masses of the 2-DoF joint denoted in (b) }
Likewise, an external force F i The moment generated can be expressed as:
step three: calculating an additional load of the drive rope;
as shown in FIG. 5, the multi-degree-of-freedom continuum robot is formed by connecting a plurality of 2-DoF joints in series. The front-section driving cable can pass through the rear section, so that complex force coupling of the rear section 2 degree-of-freedom section is caused (namely the resultant force of the front-section driving cable can generate additional moment on the rear section 2 degree-of-freedom section), and the kinematic accuracy of the system is greatly influenced.
The ith 2-DoF joint in a given configuration (i.e., θ)
i,1 And theta
i,2 Around which the joint rotates) as an example, three drive cables adjacent the (i + 1) th joint pass through the rigid disc of the (i) th joint. Since the i +1 th 2-DOF joint is not in line with the i-th joint, the drive cables for the i +1 th joint will generate additional force on the i-th joint (i.e., additional force is generated by the drive cables for the i +1 th joint
And &>
):
Since each 2-DoF segment can move independently, the adjacent i +1 th joint may have a different configuration than the ith joint, resulting in a point at which force is applied
Not in the center of the rigid disk. New point of application (in @)>
By way of example) can be calculated by combining the following two equations:
wherein,
and &>
Is the unit vector of the cord attached to the rigid disc.
And &>
The unit vectors of the drive rope at the ith joint and the (i + 1) th joint, respectively.
Resultant of three additional forces generated by the drive rope
Can be expressed as:
by transforming the matrix, resultant of forces
And its corresponding moment in the coordinate system { O }
i Can be expressed as:
wherein
And &>
Is expressed in a coordinate system { O }
i Combined force in }>
Is applied at a point->
Force vector of
And 4, step 4: rope tension adjustment strategy
Since the stiffness (characteristic: small diameter, long length) of the drive ropes is usually lower than that of the rigid parts (such as universal joints and rigid shafts) in the continuum robot, they can be considered as elastic units to set the pretension force that adjusts the stiffness of the system (this method is usually used to increase the stiffness of the continuum robot). However, as mentioned above, the tension of the drive rope may generate an additional moment on the rear portion thereof, resulting in a deterioration of the system movement accuracy. By analyzing the static equations of the individual joints to build a stiffness model of the individual joints, the static equations of the individual joints can be expressed as
Wherein, f j Is the driving force of the jth rope; f. of s Is the force of the central axis (the force vector is the same as the upper central axis); f 1 Is in a coordinate system of the mechanical arm { O } i External force in (1); m 1 Mechanical arm coordinate system { O i External moment in (1); e.g. of the type j Is the position vector from the center point of the ball joint to the jth rope fixing point.
Then expressed in matrix form as:
wherein W is the moment applied to the 2-DoF joint. f is a driving force matrix of three ropes. J is the Jacobian matrix for the 2-DoF joint. Then, the stiffness of the ith 2-DoF joint can be obtained by differentiating the moment W with respect to the rotation configuration s;
wherein, W i As a static model of the ith joint, s i Is the rotation pose vector of the ith joint, and can be expressed as s = [ theta = [ theta ] i,1 θ i,2 ],K i Is a rigidity matrix of the 2-DoF joint and can be divided into the rigidity K of the driving rope i,1 And structural rigidity K i,2 。
K i,1 The stiffness matrix created for the rope elongation, denoted rope stiffness, can be expressed as:
wherein k is i,1 ,k i,2 And k i,3 Is the stiffness of the three drive ropes.
K i,2 The stiffness matrix generated for the 2-DoF joint, denoted as structural stiffness, can be expressed as:
wherein,
and &>
Are respectively>
And &>
Is determined by the skew-symmetric matrix of (a).
Is the unit vector of the normal of the j-th driving rope of the ith joint. As can be seen from the above formula, the rigidity of the 2-DoF jointThe degree component is closely related to the tension of the drive rope (i.e. </or >>
). Therefore, adjusting the tension of the drive cable can actively adjust the stiffness of the 2-degree-of-freedom joint, and thus the stiffness of the entire continuous robot having a plurality of 2-degree-of-freedom joints can be adjusted.
To maintain the balance of the 2 degree-of-freedom joint, the adjustment tension of the drive cable should satisfy the initial static equation of the system. In particular, since each 2-DoF joint has two rigid central axes (connected by a universal joint), the net resultant force of the drive cable should be aligned with the upper central axis direction, which can be expressed as:
wherein Reg Is the solution space for the adjusted cable tension. f. of i Is the initial force of the drive rope. f. of i,s Is the net tension change of the drive rope. η is the adjustment coefficient that defines the adjustment level.
With drive rope tension adjustment (usually increasing tension to increase stiffness), additional load (i.e. stiffness)
And &>
) May be increased, resulting in a decrease in the accuracy of the movement. To investigate the degree of influence on kinematic accuracy, the total external load applied to the ith 2-DoF joint of the n anterior joints was calculated and expressed as:
angular change of the 2-DoF joint under all loads (i.e., Δ θ) i,1 And Δ θ i,2 ) Can be calculated as:
using the same principle, the angular change of all 2-degree-of-freedom joints under a given external load, gravitational load and additional load can be calculated. Then, the calculated angle change is substituted into a kinematic model of the continuous robot, and the real shape of the system can be obtained. If the deformation of the mechanical arm needs to be reduced, the tension of the rope is only required to be increased, the rigidity of the rope is enabled to be as large as possible, and therefore the rigidity of the whole mechanical arm is improved.
The above description is only for the preferred embodiment of the present application, but the scope of the present application is not limited thereto, and any changes or substitutions that can be easily conceived by those skilled in the art within the technical scope of the present application should be covered within the scope of the present application. Therefore, the protection scope of the present application shall be subject to the protection scope of the claims.