Detailed Description
The present invention will be described in detail below with reference to the accompanying drawings and examples.
A redundant robot full-joint obstacle avoidance track optimization method considering motion stability comprises the following implementation steps,
step (1) establishing a redundancy robot inverse solution model;
as shown in fig. 1, since the eight-axis robot has two redundant joints, in order to establish an inverse solution model,first the angular displacement theta of the joints 1 and 21And theta2An initial value is taken, and then based on the initial condition, the problem is converted into an inverse solution problem of the six-axis robot.
a. Solving for theta3、θ4And theta5;
Taking the intersection point of the axes of the joints 6, 7 and 8 as a nominal end, and taking the initial position vector as qs=[L4 -L1 -L3 -L5]The target position vector of the end is given as q according to the task requirementse=[x y z]Then, the movement around the joints 3, 4 and 5 based on the rotational theoretical end is described as follows,
in the formula
Index coordinate form for expressing motion rotation of joint i, and rotation vector omega is rotated by initial unit of joint i
iAnd the coordinate q of a point on the axis
iThe values are obtained by calculation and are shown in formulas (2) and (3). q. q.s
s' and q
e1' are respectively represented by q
s′=[q
s 1]
TAnd
wherein q is
e′=[q
e 1]
T.
In the diagram of the rotational movement (FIG. 2) c1And c2Representing the track intersection point of the tail end in the rotation process according to the geometrical relation of three rotation tracks (vector line segment around the axis)When rotating, the length of the rotating shaft is unchanged; the plane of the rotation trajectory is perpendicular to the rotation vector), the following system of equations is obtained,
let c1And c2The vector of the position of the point is c1=[x1 y1 z1]And c2=[x2 y2 z2]The variable x is represented by the simultaneous system of equations (4)1,y1,z1,x2,y2And z2The solution is as follows,
formula (III) A, B, A1And B1Is a constant associated with the motion parameter and the target position vector,
A=(L2+L3)/L4;
B=[xe1 2+(L1+ye1)2+(L2-ze1)2-L2 2-L5 2+L4 2+L3 2]/(2L4);A1=A2+1;
B1=2(AB-L2);C1=B2+L2 2-xe1 2-(L1+ye1)2-(L2-ze1)2。
the inverse solution problem for joints 3, 4 and 5 translates into 3 Paden-Kahan subproblems 1,
angular displacement (theta) of joints 3, 4 and 5 based on the solution method of sub-problem 13、θ4And theta5) The solution is as follows,
b. solving for theta6And theta7
The rotational movement of the joints 6, 7 and 8 is shown as,
Get a point qs2=[0 -L1 -L3 -L5]This point is on the joint axis 8 and outside the joint axes 6 and 7, thus rotating around the joints 6 and 7 to qe2(qe2′=g1qs2') the motion is described as follows,
in the diagram of the rotational movement (FIG. 3) c3Representing point qs2The following system of equations is obtained from the geometrical knowledge about the intersection of the rotational trajectories of the joints 6 and 7,
the coordinate vector of the track intersection point is obtained by solving
The movements around the joints 6 and 7 are indicated as follows,
in a similar way, based on the solution method of the Pasen-Kahan subproblem 1, theta6And theta7The solution is as follows,
c. solving for theta8
Taking a point q outside the joint shaft 8s3=[L4 0 -L3 -L5]The rotational movement of the point about the axis 8 is then expressed as,
Then based on the problem of 1, theta of the Paden-Kahan son8As indicated by the general representation of the,
θ8=atan2[L1(ze3+L3+L5),L1(ye3+L1)] (14)
step (2) obtaining a joint space track by utilizing quintic polynomial interpolation;
solving the target angular displacement theta of the joint i corresponding to the end target pose through the above inverse solution modeli. Secondly, based on the quintic polynomial interpolation, the angular displacement, the angular velocity and the angular acceleration of the joint i are expressed as follows,
in order to ensure the continuity of the angular velocity and the angular acceleration of each joint and prevent the joint from vibrating due to the sudden change of joint variables when the joint is started or stopped, the following equation set is obtained,
in the formula teRepresenting the movement time.
By solving for the parameter a1,i,a2,i,a3,i,a4,i,a5,i,a6,iThe value of (a) is as follows,
finally, the angular displacement of the joint which can ensure the motion stability of each joint is expressed as follows,
θi(t)=6θit5/te 5-15θit4/te 4+10θit3/te 3 (18)
calculating the position of a motion path point of the central line end point of each cylinder;
according to the eight-axis robot diagram (fig. 1), the robot can be equivalent to a mechanical structure consisting of five arms, and the arm i is equivalent to a radius Ri(mm) cylinders, the position coordinates at time t based on the momentum theory from the initial position of the centerline end of each cylinder are calculated as follows,
wherein Ji(t) and Ji+1(t) respectively represents the current position coordinates of the center line end point of the ith cylinder, and i is more than or equal to 1 and less than or equal to 5. Step (4), establishing a minimum distance model between the robot and the obstacle;
avoiding spherical obstacle, and setting the radius of the spherical obstacle as Ro(mm) with a coordinate of center position of O ═ xo yo zo]Taking obstacle center O at the center line J of the arm lever iiJi+1The upper vertical foot is O', the step (3) is takenCalculated centerline endpoint JiAnd Ji+1Respectively, is Ji=[xJ,i yJ,i zJ,i]And Ji+1=[xJ,i+1 yJ,i+1 zJ,i+1]Then straight line JiJi+1The parametric equation of (a) is expressed as follows,
wherein the parameter 0 ≦ η ≦ 1 indicates that the point is in the line segment JiJi+1Upper, otherwise, the point is outside the line segment.
Let the coordinate position of the foot O 'be O' ═ xo′ yo′ zo′]The following equation is used to obtain,
when the foot falls on the center line segment JiJi+1Above, let O' ═ xo′ yo′ zo′]At this time, the minimum distance between the arm i and the obstacle is represented as,
when the foot is not dropped on the center line segment JiJi+1The minimum distance between the arm i and the obstacle is expressed as,
the minimum distance between the robot and the obstacle is expressed as,
d=min[di|1≤i≤5] (24)
step (5) optimizing problem description;
in the obstacle avoidance trajectory planning problem, redundant joints are usedAngular displacement theta1,θ2And time of movement teFor optimizing variables, kinematic constraints (the available range of angular displacement, angular velocity and angular acceleration of each joint) and obstacle space constraints (i.e. the minimum distance d between the robot and the obstacle should not be less than the safety threshold d required by the task) are considered at the same timetWith the goal of minimizing the motion time as an optimization, the optimization problem can be described as follows,
in the formula [ theta ]
i,min,θ
i,maxFor each of the joint angular displacement limit values,
and
respectively represents the maximum allowable value of angular velocity and angular acceleration of each joint, and i is more than or equal to 1 and less than or equal to 8.
Optimizing the track;
the following initial conditions are set, and the particle swarm algorithm is adopted to search the optimal track so as to ensure the motion performance.
a. The pose of the end target of the robot is taken as follows,
b. 3 spherical obstacles with center position coordinates O1=[300 -500 -200]; O2=[500 -500 50]And O3=[500 100 -50]The radii were all 10 mm. Taking a safety threshold dt=10mm。
c. The values of the kinematic parameters of the robot and the radius of the equivalent cylinder of the arm lever are shown in table 1,
table 18 axis robot related parameters
Parameter(s)
|
L1 |
L2 |
L3 |
L4 |
L5 |
L6 |
R1~R3 |
R4 |
R5 |
Value (mm)
|
300
|
300*tan15°
|
409-L2 |
55
|
364
|
30
|
25
|
20
|
10 |
d. The values of parameters in the optimization constraints are shown in table 2,
TABLE 2 optimization of constraint parameters
Based on the above initial conditions, an optimized course of the movement time, an optimized trajectory (as shown in fig. 4 and 5), and a variation curve of the minimum distance between each obstacle and the robot with the movement time (as shown in fig. 6) can be obtained. Table 3 shows the optimization results for each joint variable. Secondly, the optimal movement time is 4.4416s, and the minimum distance between the robot and the obstacle is 20 mm.
TABLE 3 optimization results of variables of each joint
Joint
|
1
|
2
|
3
|
4
|
5
|
6
|
7
|
8
|
Angular displacement (degree)
|
-25.836
|
-48.37
|
68.485
|
-131.532
|
105.209
|
-108.979
|
3.667
|
35.519
|
Maximum angular velocity (°/s)
|
10.906
|
20.419
|
28.91
|
55.525
|
44.413
|
46.004
|
1.5479
|
14.994
|
Maximum angular acceleration (°/s)2)
|
7.5433
|
14.123
|
19.996
|
38.403
|
30.718
|
31.818
|
1.0706
|
10.37 |