CN105773620B - The trajectory planning control method of industrial robot free curve based on Double quaternions - Google Patents
The trajectory planning control method of industrial robot free curve based on Double quaternions Download PDFInfo
- Publication number
- CN105773620B CN105773620B CN201610266117.3A CN201610266117A CN105773620B CN 105773620 B CN105773620 B CN 105773620B CN 201610266117 A CN201610266117 A CN 201610266117A CN 105773620 B CN105773620 B CN 105773620B
- Authority
- CN
- China
- Prior art keywords
- mrow
- msub
- mover
- mfrac
- mtd
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1664—Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Numerical Control (AREA)
- Manipulator (AREA)
- Other Investigation Or Analysis Of Materials By Electrical Means (AREA)
Abstract
The invention discloses a kind of trajectory planning control method of the industrial robot free curve based on Double quaternions, space free curve profile is described using the control point data of cartesian space, NURBS interpolations densification is carried out using the A Dangmusi differential equations simultaneously to calculate, and with largest contours error, peak acceleration is that constraints adaptively adjusts interpolation rate, then short straight line section obtained by interpolation is changed the robot location in cartesian space and posture to space-time using Double quaternions, rotated with hypersphere and spherical linear interpolation is carried out to the movement locus of robot, finally realize industrial robot NURBS free curve trajectory plannings.
Description
Technical field
The present invention relates to a kind of trajectory planning control method of the industrial robot free curve based on Double quaternions, belong to
Robot trajectory planning's technical field.
Background technology
Requirement of the modern manufacturing industry to robot performance also more and more higher, and robot is calculated in the trajectory planning of task space
Method occupies critical role in robot control system, directly affects robot end's exercise performance and efficiency.And robot
In motion control, basic straight line, arc track curve can not meet the application demand of industrial processes, and conventional B-spline
Curve, Bézier curve, Clothoid curves, can not with a kind of accurate unified method for expressing description standard analytic curve and
Free curve.
Under normal circumstances, the desired trajectory of robot is the point of a series of Descartes given in advance or joint space, and
Given speed or the time of point-to-point transmission by the point, can also limit the maximal rate of robot motion's permission, then divide in addition
The position trajectory planning and posture trajectory planning of end effector of robot are not realized, and industrial robot posture trajectory planning is logical
Interpolation is carried out to posture frequently with Euler's horn cupping, equivalent method of principal axes, but there is the defect of universal deadlock in Eulerian angles, and equivalent method of principal axes is in rotation
Turn the problem of presence can not determine rotary shaft when amount is 0.Although robot pose locus interpolation can be solved using Quaternion Method
Above mentioned problem, but the position interpolation of track then needed using other interpolation algorithms, and operand is big, and influence control system is advised to track
The requirement of real-time drawn.
The content of the invention
The technical problems to be solved by the invention are to overcome the defect of prior art there is provided a kind of work based on Double quaternions
Industry robot nurbs curve trajectory planning control method, can realize that free curve trajectory planning provides one for industrial robot
Plant efficient, high-precision control method.
In order to solve the above technical problems, the technical solution adopted by the present invention is as follows:
The trajectory planning control method of industrial robot free curve based on Double quaternions, comprises the following steps:
1) mathematical modeling for setting up the end effector of robot spatial pose based on Double quaternions is held with robot end
The free curve mathematical modeling that row device is described in task space NURBS;
2) control point sequence D of the end effector of robot in the task space NURBS free curves described is given, and
Dominating pair of vertices answers posture R;
The control point sequence D is expressed as:D={ d0, d1..., dn, n is control point number;
The dominating pair of vertices answers posture to use posture spin matrix R3×3Represent;
3) solve the step 2 according to hartley-Judd's method) control point sequence in the corresponding knot vector U in control point,
Detailed process is as follows:
For given control point di, i=0,1 ..., n predefine a k non-homogeneous B spline curve, while really
Its fixed knot vector U=[u0,u1,…,un+k+1] in specific nodal value, the solution of nodal value is as follows:
The multiplicity of two end nodes is taken as k+1, the domain of definition of curve specification parameter field is taken into, i.e.,
u∈[uk,un+1]=[0,1], then u0=u1=...=uk=0, un+1=un+2=...=un+k+1=1, remaining section
Point value need to calculate solution, as follows:
Calculation formula is as follows:
In formula, ljFor each length of side of controlling polygon, lj=| dj-dj-1|,
It can be obtained by formula (4):
Then can must be all nodal value;
Wherein, u is the densification nodal value between the two neighboring nodes of knot vector U, ui, i=0,1 ... ..., n+k+1 are represented
Some specific nodal value in knot vector U;
4) densification process is carried out to knot vector U according to Adams differential equations theoretical algorithm, detailed process is as follows:
It is expressed as using the implicit schemes of the three step quadravalence Adams differential equations:
Wherein, T is interpolation cycle,Respectively ui-2、ui-1、ui、ui+1First derivative;
WillAbove formula is substituted into, can be obtained:
ΔLiRepresent control point diFeeding step-length;
Being combined using forward and backward difference replaces the method for differential to be simplified:
Backward difference,Forward difference,
Forward difference,Forward difference
Above formula is substituted into formula (7), obtained:
And then the Adams differential equation interpolation algorithm iterative formulas after being simplified:
Then densification deutomerite point vector can be obtained, wherein,Represent ui+1Discreet value;
5) according to step 1) in end effector of robot spatial pose mathematical modeling, and use adaptive speed control
Algorithm processed is modified processing to the knot vector after densification, finally obtains optimal densification knot vector, correcting process process
It is as follows:
By parameterNURBS equations are substituted into as the discreet value of parameter interpolation, obtain corresponding estimating interpolated point:
Represent discreet valueEstimate interpolated point,
It is so as to obtain corresponding feeding step-length of estimating:
Estimate feeding step-lengthWith feeding step delta LiBetween the deviation that exists, use relative error δiTo represent:
As relative error δiWhen in allowed band, thenFor required p (ui+1), otherwise it is modified as the following formula, directly
To reaching δiIn allowed band:
Finally obtain optimal densification knot vector;
6) utilize step 5) optimal densification knot vector, and according to step 1) in end effector of robot in task
The free curve mathematical modeling of space NURBS descriptions, the final interpolated point position obtained on curve;
7) according to the interpolated point position of adjacent space curve and attitude data, Double quaternions conversion is carried out, specific steps are such as
Under:
7-1) for each robot end's pose homogeneous transform matrixBTE, it is as follows:
First by posture spin matrix R3×3, the transformational relation of rotated matrix and quaternary number obtains posture spin matrix pair
The rotation quaternary number Q answered, while obtaining translation vector P=[px(u),py(u),pz(u)]T;
The translation vector P of three dimensions 7-2) is converted into the quaternary number of space-time, conversion formula is as follows:
Dp=cos (ψ/2)+sin (ψ/2) v (16)
In formula, RlFor the big radius of a ball of space-time, ψ=| P |/Rl, v is the unit vector on translation vector, v=P/ | P
|;When | P | when=0, v is zero vector;
7-3) by below equation, calculating obtains robot end's pose and changed to the Double quaternions space bit of space-time
AppearanceG portions and H portions;
In formula,For quaternary number DpConjugation;
7-4) the dual rotary track of Double quaternions carries out discretization and obtains a series of interpolation Double quaternions points, it is necessary to by its turn
Change rotation quaternary number and translation vector into, transfer algorithm is as follows:
Q=(G+H)/(2cos ψ) (17)
In formula,
8) inverse kinematics processing is carried out to end effector of robot pose obtained by interpolation, obtains joint angles, and drive
Joint motions.
Foregoing step 1) in,
The mathematical modeling of end effector of robot spatial pose based on Double quaternions is:
Wherein,End effector of robot Double quaternions spatial pose is represented, ξ and η meet ξ2=ξ, η2=η, ξ+η=
1, ξ η=0, G and H are unit quaternion;
End effector of robot is in the task space NURBS free curve mathematical modelings described:Any one k times
Nurbs curve is represented as a Piecewise Rational multinomial vector function:
Wherein, p (u) represents position vector of the end effector of robot in the task space NURBS free curves described,
ωiReferred to as weight factor;diFor free curve control point;N is control point number;Ni,k(u) it is by knot vector U=[u0,u1,…,
un+k+1] determine B-spline basic function, represented by De Buer-Cox recursive definition formula:
In formula, regulationU is the densification nodal value between the two neighboring nodes of knot vector U, ui, i=0,1 ... ..., n
+ k+1, represents some specific nodal value in knot vector U.
The beneficial effect that the present invention is reached:
The present invention can be the trajectory planning of realizing industrial robot in the NURBS free curves of cartesian space there is provided
It is a kind of to effectively improve industrial machine task efficiency and work quality, velocity perturbation be reduced, improve the work of robot
The control method of environment.
Brief description of the drawings
Fig. 1 is the trajectory planning control method flow signal of the industrial robot free curve of the invention based on Double quaternions
Figure;
Fig. 2 is times quaternary of the trajectory planning control method of the industrial robot free curve of the invention based on Double quaternions
The schematic diagram of number statement space line fragment position;
Fig. 3 is times quaternary of the trajectory planning control method of the industrial robot free curve of the invention based on Double quaternions
The direction of arrow is the rotating vector axle that posture is represented with quaternary number in the schematic diagram of number statement space line section posture, figure.
Embodiment
The invention will be further described below in conjunction with the accompanying drawings.Following examples are only used for clearly illustrating the present invention
Technical scheme, and can not be limited the scope of the invention with this.
The proposition of free curve concept is exactly in order to describe more complicated geometry, to improve adding for industrial robot
Work efficiency rate and precision.And non-uniform rational B-spline (NURBS, Non-Uniform Rational B-Spline) curve, can be with
Accurately perceive the control point distribution characteristics of curve modeling, it is possible to which the effective data point that solves equally distributed can not lack
Point.
Double quaternions are a kind of new mathematical modeling instruments based on Clifford algebraically, are sent out on the basis of quaternary number
Exhibition.The position in cartesian space and posture can be changed into space-time, can either distinguished using Double quaternions
The position in representation space and posture are obtained, the position in space and posture can be also indicated with a kind of unified mode, from
And the pose of terminal in space-time is rotated with hypersphere spherical linear interpolation is carried out to the movement locus of robot.
As shown in figure 1, the trajectory planning control method of the industrial robot free curve based on Double quaternions of the present invention
Comprise the following steps:
Step 1: setting up mathematical modeling and the robot end of the end effector of robot spatial pose based on Double quaternions
The free curve mathematical modeling that end actuator is described in task space NURBS;
The mathematical modeling of end effector of robot spatial pose based on Double quaternions is:
In formula,End effector of robot Double quaternions spatial pose is represented, ξ and η meet ξ2=ξ, η2=η, ξ+η=
1, ξ η=0, G and H are unit quaternion.
End effector of robot is in the task space NURBS free curve mathematical modelings described:Any one k times
Nurbs curve is represented by a Piecewise Rational multinomial vector function:
In formula, p (u) represents position vector of the end effector of robot in the task space NURBS free curves described,
That is p (u)=[px(u),py(u),pz(u)]T;diFor free curve control point, i.e. di=[xi,yi,zi], then control point sequence D=
{d0, d1..., dn(i=0,1 ..., n), n is control point number;ωiReferred to as weight factor, ωiRespectively with control point di(i=0,
1 ..., n) it is associated, works as ωi=1 (i=0,1 ..., when n), a k nurbs curve deteriorates to a k B-spline curves;
Ni,k(u) it is by knot vector U=[u0,u1,…,un+k+1] determine B-spline basic function, by widely used moral
Boolean-Cox (De Boor-Cox) recursive definition formula is represented:
In formula, regulationU is the densification nodal value between the two neighboring nodes of knot vector U, ui, i=0,1 ... ..., n
+ k+1, represents some specific nodal value in knot vector U.
Then the three-dimensional coordinate form of NURBS free curves is:
Step 2: control point sequence of the given end effector of robot in the task space NURBS free curves described
D, and free curve space dominating pair of vertices answer posture R;
The control point sequence D of given robot task space free curve is:D={ d0, d1..., dn(i=0,1 ...,
N), n is control point number;
Correspondence posture uses posture spin matrix R3×3Representation;
Step 3: solving the corresponding section in free curve control point of task space NURBS descriptions according to hartley-Judd's method
Point vector U;
It is the control point d of the free curve of given NURBS descriptions in this stepi, i=0,1 ..., n, predefine one k times
Non-uniform rational B-spline (NURBS) curve, while must determine its knot vector U=[u0,u1,…,un+k+1] in it is specific
Nodal value.
For ease of having preferable control in the behavior of endpoint curve to curve, the present invention is taken as in the multiplicity of two end nodes
K+1, generally takes into specification parameter field, i.e. u ∈ [u by the domain of definition of curvek,un+1]=[0,1], then u0=u1=...=uk=
0, un+1=un+2=...=un+k+1=1, remaining interior nodes need to calculate solution, and method is as follows:
The hartley that this step is used-Judd's method is unrelated with the parity of degree of curve, public using unified calculating
Formula, computational methods have more reasonability, and its calculation formula is as follows:
In formula, ljFor each length of side of controlling polygon, i.e. lj=| dj-dj-1|.It can be obtained by formula (4):
Then all nodal values in the corresponding knot vector in control point can be obtained.
Step 4: carrying out densification process to knot vector U according to Adams differential equations theoretical algorithm;
Parameter densification refers to by the mapping in three-dimensional track space to one-dimensional parameter space, under parametrization interpolation mode,
The densification of data is the densification for showing as parameter, i.e., by the feeding step delta L of trajectory range be mapped to parameter space with
Ask for parameter increment Delta u and next parameter coordinate:ui+1=ui+Δui。
This step uses get A Dangmusi (Adams) differential equations to carry out densification to cross variable, and calculation formula is as follows:
It is expressed as using the implicit schemes of the three step quadravalence A Dangmusi differential equations:
In formula, T is interpolation cycle,Respectively ui-2、ui-1、ui、ui+1First derivative;
WillAbove formula is substituted into, can be obtained:
ΔLiRepresent control point diFeeding step-length.
To ensure the requirement of high speed nurbs curve direct interpolation, it is ensured that the calculating speed of real-time interpolation, using forward and backward
Difference (being shown below), which is combined, replaces the method for differential to simplify the algorithm:
(backward difference),(forward difference),
(forward difference),(forward difference)
Above formula is substituted into formula (7), obtained:
And then the A Dangmusi differential equation interpolation algorithm iterative formulas after being simplified:
Then densification deutomerite point vector can be obtained, wherein,Represent ui+1Discreet value.
Step 5: the free curve mathematics described according to end effector of robot in step one in task space NURBS
Model, is modified processing to the knot vector after densification using adaptive-feedrate adjustment algorithm, finally obtains optimal densification
Knot vector;
By parameterNURBS equations are substituted into as the discreet value of parameter interpolation, obtain corresponding estimating interpolated point:
It is to estimate interpolated point,
So as to obtain corresponding estimating feeding step-lengthFor:
Feeding step-length is estimated using what preestimating method was obtainedThe deviation existed between feeding step delta L, can use relative miss
Difference is evaluated:
δiRepresent control point diThe relative error at place.
As relative error δiWhen in allowed band, then it is believed thatFor required p (ui+1), otherwise repaiied as the following formula
Just, until reaching δiIn allowed band:
Densification knot vector after finally being optimized.
Step 6: using the densification knot vector of optimization, and it is empty in task according to end effector of robot in step one
Between the free curve mathematical modelings that describe of NURBS, the final interpolated point position obtained on curve.
Step 7: according to the interpolated point position of adjacent space curve and attitude data, carrying out Double quaternions conversion;
Pose homogeneous transform matrix is converted into Double quaternions, the computational accuracy δ of position auto―control in given three dimensionsm
During with the maximum boundary L of robot working space, formula can be passed through:
Obtain the big ball i.e. radius R of super large ball of space-timel。
Pose homogeneous transform matrix is converted into Double quaternions, its transfer algorithm is as follows:
7-1) for each robot end's pose homogeneous transform matrixBTE, i.e. robot end's ring flange center coordinate
It is homogeneous transform matrix of the E relative to basis coordinates system B, it is as follows:
First by posture spin matrix R3×3, the transformational relation of rotated matrix and quaternary number obtains posture spin matrix pair
The rotation quaternary number Q answered, while obtaining translation vector P=[px(u),py(u),pz(u)]T;
7-2) the approximate quaternary number that the translation vector P of three dimensions is converted into space-time, conversion formula is as follows:
Dp=cos (ψ/2)+sin (ψ/2) v (16)
In formula, ψ=| P |/Rl, v is the unit vector on translation vector, v=P/ | P |;When | P | when=0, v is zero vector;
7-3) by below equation, calculating obtains robot end's pose and changed to the Double quaternions space bit of space-time
AppearanceG portions and H portions;
In formula,For quaternary number DpConjugation;
7-4) the dual rotary track of Double quaternions carries out discretization and obtains a series of interpolation Double quaternions points, it is necessary to by its turn
Change rotation quaternary number and translation vector into, transfer algorithm is as follows:
Q=(G+H)/(2cos ψ) (17)
In formula,
Step 8: carrying out inverse kinematics processing to end effector of robot pose obtained by interpolation, joint angles are obtained, and
Drive joint motions.
Specific method is:Adjacent interpolated point in robot task space is considered as terminal, then terminal posture can be revolved
Torque battle array RsWith corresponding translation vector Ps, posture spin matrix ReWith corresponding translation vector PeData, change at double four respectively
First number space pose:
Wherein,For posture spin matrix RsCorresponding Double quaternions spatial pose, GsAnd HsForCorresponding unit quaternary
Number,For posture spin matrix ReCorresponding Double quaternions spatial pose, GeAnd HeForCorresponding unit quaternion.
G portions and H portions respectively to terminal Double quaternions spatial pose carries out spherical linear interpolation, can obtain:
In formula, G (t) represents the spherical linear interpolation in the G portions of terminal Double quaternions spatial pose, and H (t) represents terminal
The spherical linear interpolation in the H portions of Double quaternions spatial pose, α=arccos (Gs·Ge), β=arccos (Hs·He)(Gs·Ge、
Hs·HeRespectively GsWith Ge、HsWith HeThe dot product of two quaternary numbers), l (t) ∈ [0,1] can be obtained by normalizing interpolation cycle.
According to above formula, the spherical linear interpolation of Double quaternions spatial pose is represented by:
The formula is a kind of method for expressing of Double quaternions spherical linear interpolation, comprising again during actual interpolation calculation
The G portions of quaternary number and the spherical linear interpolation of two, H portions part, pass through G portions and the spherical linear of the unit quaternion in H portions respectively
Interpolation completes the spherical linear interpolation of Double quaternions, obtains the Double quaternions of interpolation intermediate point, Double quaternions spherical linear interpolation
Double quaternions as shown in Figures 2 and 3, are then converted into by the position of space line section with posture difference by the inverse process of step 7
The pose homogeneous transform matrix T of interpolation intermediate point.Handled finally by the inverse kinematics of robot model, obtain real-time joint angle
Degree, and drive each joint motions.
Described above is only the preferred embodiment of the present invention, it is noted that for the ordinary skill people of the art
For member, without departing from the technical principles of the invention, some improvement and deformation can also be made, these improve and deformed
Also it should be regarded as protection scope of the present invention.
Claims (2)
1. the trajectory planning control method of the industrial robot free curve based on Double quaternions, it is characterised in that including following
Step:
1) mathematical modeling and end effector of robot of the end effector of robot spatial pose based on Double quaternions are set up
The free curve mathematical modeling described in task space NURBS;
2) control point sequence D of the end effector of robot in the task space NURBS free curves described, and control are given
Point correspondence posture R;
The control point sequence D is expressed as:D={ d0, d1..., dn, n is control point number;
The dominating pair of vertices answers posture to use posture spin matrix R3×3Represent;
3) solve the step 2 according to hartley-Judd's method) control point sequence in the corresponding knot vector U in control point, specifically
Process is as follows:
For given control point di, i=0,1 ..., n predefine a k non-homogeneous B spline curve, while determining its
Knot vector U=[u0,u1,…,un+k+1] in specific nodal value, the solution of nodal value is as follows:
The multiplicity of two end nodes is taken as k+1, the domain of definition of curve is taken into specification parameter field, i.e. u ∈ [uk,un+1]=[0,
1], then u0=u1=...=uk=0, un+1=un+2=...=un+k+1=1, remaining nodal value need to calculate solution, as follows:
Calculation formula is as follows:
<mrow>
<msub>
<mi>u</mi>
<mi>i</mi>
</msub>
<mo>-</mo>
<msub>
<mi>u</mi>
<mrow>
<mi>i</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
</msub>
<mo>=</mo>
<mfrac>
<mrow>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>j</mi>
<mo>=</mo>
<mi>i</mi>
<mo>-</mo>
<mi>k</mi>
</mrow>
<mrow>
<mi>i</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
</munderover>
<msub>
<mi>l</mi>
<mi>j</mi>
</msub>
</mrow>
<mrow>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>s</mi>
<mo>=</mo>
<mi>k</mi>
<mo>+</mo>
<mn>1</mn>
</mrow>
<mrow>
<mi>n</mi>
<mo>+</mo>
<mn>1</mn>
</mrow>
</munderover>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>j</mi>
<mo>=</mo>
<mi>s</mi>
<mo>-</mo>
<mi>k</mi>
</mrow>
<mrow>
<mi>s</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
</munderover>
<msub>
<mi>l</mi>
<mi>j</mi>
</msub>
</mrow>
</mfrac>
<mo>,</mo>
<mi>i</mi>
<mo>=</mo>
<mi>k</mi>
<mo>+</mo>
<mn>1</mn>
<mo>,</mo>
<mo>...</mo>
<mo>,</mo>
<mi>n</mi>
<mo>+</mo>
<mn>1</mn>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>4</mn>
<mo>)</mo>
</mrow>
</mrow>
In formula, ljFor each length of side of controlling polygon, lj=| dj-dj-1|,
It can be obtained by formula (4):
<mrow>
<msub>
<mi>u</mi>
<mi>i</mi>
</msub>
<mo>=</mo>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>s</mi>
<mo>=</mo>
<mi>k</mi>
<mo>+</mo>
<mn>1</mn>
</mrow>
<mi>i</mi>
</munderover>
<mrow>
<mo>(</mo>
<msub>
<mi>u</mi>
<mi>s</mi>
</msub>
<mo>-</mo>
<msub>
<mi>u</mi>
<mrow>
<mi>s</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
</msub>
<mo>)</mo>
</mrow>
<mo>=</mo>
<mfrac>
<mrow>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>s</mi>
<mo>=</mo>
<mi>k</mi>
<mo>+</mo>
<mn>1</mn>
</mrow>
<mi>i</mi>
</munderover>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>j</mi>
<mo>=</mo>
<mi>s</mi>
<mo>-</mo>
<mi>k</mi>
</mrow>
<mrow>
<mi>s</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
</munderover>
<msub>
<mi>l</mi>
<mi>j</mi>
</msub>
</mrow>
<mrow>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>s</mi>
<mo>=</mo>
<mi>k</mi>
<mo>+</mo>
<mn>1</mn>
</mrow>
<mrow>
<mi>n</mi>
<mo>+</mo>
<mn>1</mn>
</mrow>
</munderover>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>j</mi>
<mo>=</mo>
<mi>s</mi>
<mo>-</mo>
<mi>k</mi>
</mrow>
<mrow>
<mi>s</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
</munderover>
<msub>
<mi>l</mi>
<mi>j</mi>
</msub>
</mrow>
</mfrac>
<mo>,</mo>
<mi>i</mi>
<mo>=</mo>
<mi>k</mi>
<mo>+</mo>
<mn>1</mn>
<mo>,</mo>
<mo>...</mo>
<mo>,</mo>
<mi>n</mi>
<mo>+</mo>
<mn>1</mn>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>5</mn>
<mo>)</mo>
</mrow>
</mrow>
Then can must be all nodal value;
Wherein, u is the densification nodal value between the two neighboring nodes of knot vector U, ui, i=0,1 ... ..., n+k+1 represent node
Some specific nodal value in vector U;
4) densification process is carried out to knot vector U according to Adams differential equations theoretical algorithm, detailed process is as follows:
It is expressed as using the implicit schemes of the three step quadravalence Adams differential equations:
<mrow>
<msub>
<mi>u</mi>
<mrow>
<mi>i</mi>
<mo>+</mo>
<mn>1</mn>
</mrow>
</msub>
<mo>=</mo>
<msub>
<mi>u</mi>
<mi>i</mi>
</msub>
<mo>+</mo>
<mfrac>
<mi>T</mi>
<mn>24</mn>
</mfrac>
<mrow>
<mo>(</mo>
<mn>9</mn>
<msub>
<mover>
<mi>u</mi>
<mo>&CenterDot;</mo>
</mover>
<mrow>
<mi>i</mi>
<mo>+</mo>
<mn>1</mn>
</mrow>
</msub>
<mo>+</mo>
<mn>19</mn>
<msub>
<mover>
<mi>u</mi>
<mo>&CenterDot;</mo>
</mover>
<mi>i</mi>
</msub>
<mo>-</mo>
<mn>5</mn>
<msub>
<mover>
<mi>u</mi>
<mo>&CenterDot;</mo>
</mover>
<mrow>
<mi>i</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
</msub>
<mo>+</mo>
<msub>
<mover>
<mi>u</mi>
<mo>&CenterDot;</mo>
</mover>
<mrow>
<mi>i</mi>
<mo>-</mo>
<mn>2</mn>
</mrow>
</msub>
<mo>)</mo>
</mrow>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>6</mn>
<mo>)</mo>
</mrow>
</mrow>
Wherein, T is interpolation cycle,Respectively ui-2、ui-1、ui、ui+1First derivative;
WillAbove formula is substituted into, can be obtained:
<mrow>
<msub>
<mi>u</mi>
<mrow>
<mi>i</mi>
<mo>+</mo>
<mn>1</mn>
</mrow>
</msub>
<mo>=</mo>
<msub>
<mi>u</mi>
<mi>i</mi>
</msub>
<mo>+</mo>
<mfrac>
<mn>1</mn>
<mn>24</mn>
</mfrac>
<mrow>
<mo>(</mo>
<mfrac>
<mrow>
<mn>9</mn>
<msub>
<mi>&Delta;L</mi>
<mrow>
<mi>i</mi>
<mo>+</mo>
<mn>1</mn>
</mrow>
</msub>
</mrow>
<msqrt>
<mrow>
<msubsup>
<mover>
<mi>x</mi>
<mo>&CenterDot;</mo>
</mover>
<mrow>
<mi>i</mi>
<mo>+</mo>
<mn>2</mn>
</mrow>
<mn>2</mn>
</msubsup>
<mo>+</mo>
<msubsup>
<mover>
<mi>y</mi>
<mo>&CenterDot;</mo>
</mover>
<mrow>
<mi>i</mi>
<mo>+</mo>
<mn>1</mn>
</mrow>
<mn>2</mn>
</msubsup>
<mo>+</mo>
<msubsup>
<mover>
<mi>z</mi>
<mo>&CenterDot;</mo>
</mover>
<mrow>
<mi>i</mi>
<mo>+</mo>
<mn>1</mn>
</mrow>
<mn>2</mn>
</msubsup>
</mrow>
</msqrt>
</mfrac>
<mo>+</mo>
<mfrac>
<mrow>
<mn>9</mn>
<msub>
<mi>&Delta;L</mi>
<mi>i</mi>
</msub>
</mrow>
<msqrt>
<mrow>
<msubsup>
<mover>
<mi>x</mi>
<mo>&CenterDot;</mo>
</mover>
<mi>i</mi>
<mn>2</mn>
</msubsup>
<mo>+</mo>
<msubsup>
<mover>
<mi>y</mi>
<mo>&CenterDot;</mo>
</mover>
<mi>i</mi>
<mn>2</mn>
</msubsup>
<mo>+</mo>
<msubsup>
<mover>
<mi>z</mi>
<mo>&CenterDot;</mo>
</mover>
<mi>i</mi>
<mn>2</mn>
</msubsup>
</mrow>
</msqrt>
</mfrac>
<mo>-</mo>
<mfrac>
<mrow>
<mn>5</mn>
<msub>
<mi>&Delta;L</mi>
<mrow>
<mi>i</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
</msub>
</mrow>
<msqrt>
<mrow>
<msubsup>
<mover>
<mi>x</mi>
<mo>&CenterDot;</mo>
</mover>
<mrow>
<mi>i</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
<mn>2</mn>
</msubsup>
<mo>+</mo>
<msubsup>
<mover>
<mi>y</mi>
<mo>&CenterDot;</mo>
</mover>
<mrow>
<mi>i</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
<mn>2</mn>
</msubsup>
<mo>+</mo>
<msubsup>
<mover>
<mi>z</mi>
<mo>&CenterDot;</mo>
</mover>
<mrow>
<mi>i</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
<mn>2</mn>
</msubsup>
</mrow>
</msqrt>
</mfrac>
<mo>+</mo>
<mfrac>
<mrow>
<msub>
<mi>&Delta;L</mi>
<mrow>
<mi>i</mi>
<mo>-</mo>
<mn>2</mn>
</mrow>
</msub>
</mrow>
<msqrt>
<mrow>
<msubsup>
<mover>
<mi>x</mi>
<mo>&CenterDot;</mo>
</mover>
<mrow>
<mi>i</mi>
<mo>-</mo>
<mn>2</mn>
</mrow>
<mn>2</mn>
</msubsup>
<mo>+</mo>
<msubsup>
<mover>
<mi>y</mi>
<mo>&CenterDot;</mo>
</mover>
<mrow>
<mi>i</mi>
<mo>-</mo>
<mn>2</mn>
</mrow>
<mn>2</mn>
</msubsup>
<mo>+</mo>
<msubsup>
<mover>
<mi>z</mi>
<mo>&CenterDot;</mo>
</mover>
<mrow>
<mi>i</mi>
<mo>-</mo>
<mn>2</mn>
</mrow>
<mn>2</mn>
</msubsup>
</mrow>
</msqrt>
</mfrac>
<mo>)</mo>
</mrow>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>7</mn>
<mo>)</mo>
</mrow>
</mrow>
ΔLiRepresent control point diFeeding step-length;
Being combined using forward and backward difference replaces the method for differential to be simplified:
Backward difference,Forward difference,
Forward difference,Forward difference
Above formula is substituted into formula (7), obtained:
<mrow>
<msub>
<mi>u</mi>
<mrow>
<mi>i</mi>
<mo>+</mo>
<mn>1</mn>
</mrow>
</msub>
<mo>=</mo>
<msub>
<mi>u</mi>
<mi>i</mi>
</msub>
<mo>+</mo>
<mfrac>
<mi>T</mi>
<mn>24</mn>
</mfrac>
<mrow>
<mo>(</mo>
<mn>9</mn>
<msub>
<mover>
<mi>u</mi>
<mo>&CenterDot;</mo>
</mover>
<mrow>
<mi>i</mi>
<mo>+</mo>
<mn>1</mn>
</mrow>
</msub>
<mo>+</mo>
<mn>19</mn>
<msub>
<mover>
<mi>u</mi>
<mo>&CenterDot;</mo>
</mover>
<mi>i</mi>
</msub>
<mo>-</mo>
<mn>5</mn>
<msub>
<mover>
<mi>u</mi>
<mo>&CenterDot;</mo>
</mover>
<mrow>
<mi>i</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
</msub>
<mo>+</mo>
<msub>
<mover>
<mi>u</mi>
<mo>&CenterDot;</mo>
</mover>
<mrow>
<mi>i</mi>
<mo>-</mo>
<mn>2</mn>
</mrow>
</msub>
<mo>)</mo>
</mrow>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>8</mn>
<mo>)</mo>
</mrow>
</mrow>
And then the Adams differential equation interpolation algorithm iterative formulas after being simplified:
<mrow>
<msub>
<mover>
<mi>u</mi>
<mo>~</mo>
</mover>
<mrow>
<mi>i</mi>
<mo>+</mo>
<mn>1</mn>
</mrow>
</msub>
<mo>=</mo>
<mfrac>
<mn>1</mn>
<mn>4</mn>
</mfrac>
<mrow>
<mo>(</mo>
<mn>9</mn>
<msub>
<mi>u</mi>
<mi>i</mi>
</msub>
<mo>-</mo>
<mn>6</mn>
<msub>
<mi>u</mi>
<mrow>
<mi>i</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
</msub>
<mo>+</mo>
<msub>
<mi>u</mi>
<mrow>
<mi>i</mi>
<mo>-</mo>
<mn>2</mn>
</mrow>
</msub>
<mo>)</mo>
</mrow>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>9</mn>
<mo>)</mo>
</mrow>
</mrow>
Then densification deutomerite point vector can be obtained, wherein,Represent ui+1Discreet value;
5) according to step 1) in end effector of robot spatial pose mathematical modeling, and using adaptive-feedrate adjustment calculate
Method is modified processing to the knot vector after densification, finally obtains optimal densification knot vector, and correcting process process is as follows:
By parameterNURBS equations are substituted into as the discreet value of parameter interpolation, obtain corresponding estimating interpolated point:
<mrow>
<mover>
<mi>p</mi>
<mo>~</mo>
</mover>
<mrow>
<mo>(</mo>
<msub>
<mi>u</mi>
<mrow>
<mi>i</mi>
<mo>+</mo>
<mn>1</mn>
</mrow>
</msub>
<mo>)</mo>
</mrow>
<mo>=</mo>
<mi>p</mi>
<mrow>
<mo>(</mo>
<msub>
<mover>
<mi>u</mi>
<mo>~</mo>
</mover>
<mrow>
<mi>i</mi>
<mo>+</mo>
<mn>1</mn>
</mrow>
</msub>
<mo>)</mo>
</mrow>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>10</mn>
<mo>)</mo>
</mrow>
</mrow>
Represent discreet valueEstimate interpolated point,
It is so as to obtain corresponding feeding step-length of estimating:
<mrow>
<mi>&Delta;</mi>
<msub>
<mover>
<mi>L</mi>
<mo>~</mo>
</mover>
<mi>i</mi>
</msub>
<mo>=</mo>
<mo>|</mo>
<mover>
<mi>p</mi>
<mo>~</mo>
</mover>
<mrow>
<mo>(</mo>
<msub>
<mi>u</mi>
<mrow>
<mi>i</mi>
<mo>+</mo>
<mn>1</mn>
</mrow>
</msub>
<mo>)</mo>
</mrow>
<mo>-</mo>
<mi>p</mi>
<mrow>
<mo>(</mo>
<msub>
<mi>u</mi>
<mi>i</mi>
</msub>
<mo>)</mo>
</mrow>
<mo>|</mo>
<mo>=</mo>
<msqrt>
<mrow>
<msup>
<mrow>
<mo>(</mo>
<msub>
<mover>
<mi>x</mi>
<mo>~</mo>
</mover>
<mrow>
<mi>i</mi>
<mo>+</mo>
<mn>1</mn>
</mrow>
</msub>
<mo>-</mo>
<msub>
<mi>x</mi>
<mi>i</mi>
</msub>
<mo>)</mo>
</mrow>
<mn>2</mn>
</msup>
<mo>+</mo>
<msup>
<mrow>
<mo>(</mo>
<msub>
<mover>
<mi>y</mi>
<mo>~</mo>
</mover>
<mrow>
<mi>i</mi>
<mo>+</mo>
<mn>1</mn>
</mrow>
</msub>
<mo>-</mo>
<msub>
<mi>x</mi>
<mi>i</mi>
</msub>
<mo>)</mo>
</mrow>
<mn>2</mn>
</msup>
<mo>+</mo>
<msup>
<mrow>
<mo>(</mo>
<msub>
<mover>
<mi>z</mi>
<mo>~</mo>
</mover>
<mrow>
<mi>i</mi>
<mo>+</mo>
<mn>1</mn>
</mrow>
</msub>
<mo>-</mo>
<msub>
<mi>x</mi>
<mi>i</mi>
</msub>
<mo>)</mo>
</mrow>
<mn>2</mn>
</msup>
</mrow>
</msqrt>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>11</mn>
<mo>)</mo>
</mrow>
</mrow>
Estimate feeding step-lengthWith feeding step delta LiBetween the deviation that exists, use relative error δiTo represent:
<mrow>
<msub>
<mi>&delta;</mi>
<mi>i</mi>
</msub>
<mo>=</mo>
<mfrac>
<mrow>
<mo>|</mo>
<mrow>
<msub>
<mi>&Delta;L</mi>
<mi>i</mi>
</msub>
<mo>-</mo>
<mi>&Delta;</mi>
<msub>
<mover>
<mi>L</mi>
<mo>~</mo>
</mover>
<mi>i</mi>
</msub>
</mrow>
<mo>|</mo>
</mrow>
<mrow>
<msub>
<mi>&Delta;L</mi>
<mi>i</mi>
</msub>
</mrow>
</mfrac>
<mo>&times;</mo>
<mn>100</mn>
<mi>%</mi>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>12</mn>
<mo>)</mo>
</mrow>
</mrow>
As relative error δiWhen in allowed band, thenFor required p (ui+1), otherwise it is modified as the following formula, until reaching
To δiIn allowed band:
<mrow>
<msub>
<mi>u</mi>
<mrow>
<mi>i</mi>
<mo>+</mo>
<mn>1</mn>
</mrow>
</msub>
<mo>=</mo>
<msub>
<mi>u</mi>
<mi>i</mi>
</msub>
<mo>+</mo>
<mfrac>
<mrow>
<msub>
<mi>&Delta;L</mi>
<mi>i</mi>
</msub>
</mrow>
<mrow>
<mi>&Delta;</mi>
<msub>
<mover>
<mi>L</mi>
<mo>~</mo>
</mover>
<mi>i</mi>
</msub>
</mrow>
</mfrac>
<mrow>
<mo>(</mo>
<msub>
<mover>
<mi>u</mi>
<mo>~</mo>
</mover>
<mrow>
<mi>i</mi>
<mo>+</mo>
<mn>1</mn>
</mrow>
</msub>
<mo>-</mo>
<msub>
<mi>u</mi>
<mi>i</mi>
</msub>
<mo>)</mo>
</mrow>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>13</mn>
<mo>)</mo>
</mrow>
</mrow>
Finally obtain optimal densification knot vector;
6) utilize step 5) optimal densification knot vector, and according to step 1) in end effector of robot in task space
The free curve mathematical modeling of NURBS descriptions, the final interpolated point position obtained on curve;
7) according to the interpolated point position of adjacent space curve and attitude data, Double quaternions conversion is carried out, is comprised the following steps that:
7-1) for each robot end's pose homogeneous transform matrixBTE, it is as follows:
<mrow>
<msup>
<mrow></mrow>
<mi>B</mi>
</msup>
<msub>
<mi>T</mi>
<mi>E</mi>
</msub>
<mo>=</mo>
<mfenced open = "[" close = "]">
<mtable>
<mtr>
<mtd>
<mi>R</mi>
</mtd>
<mtd>
<mi>P</mi>
</mtd>
</mtr>
<mtr>
<mtd>
<mn>0</mn>
</mtd>
<mtd>
<mn>1</mn>
</mtd>
</mtr>
</mtable>
</mfenced>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>15</mn>
<mo>)</mo>
</mrow>
</mrow>
First by posture spin matrix R3×3, the transformational relation of rotated matrix and quaternary number obtains posture spin matrix corresponding
Quaternary number Q is rotated, while obtaining translation vector P=[px(u),py(u),pz(u)]T;
The translation vector P of three dimensions 7-2) is converted into the quaternary number of space-time, conversion formula is as follows:
Dp=cos (ψ/2)+sin (ψ/2) v (16)
In formula, ψ=| P |/Rl, RlFor the big radius of a ball of space-time, v is the unit vector on translation vector, v=P/ | P |;When |
P | when=0, v is zero vector;
7-3) by below equation, calculating obtains robot end's pose and changed to the Double quaternions spatial pose of space-time
G portions and H portions;
<mrow>
<mi>G</mi>
<mo>=</mo>
<msub>
<mi>D</mi>
<mi>p</mi>
</msub>
<mi>Q</mi>
<mo>,</mo>
<mi>H</mi>
<mo>=</mo>
<msubsup>
<mi>D</mi>
<mi>p</mi>
<mo>*</mo>
</msubsup>
<mi>Q</mi>
</mrow>
In formula,For quaternary number DpConjugation;
7-4) the dual rotary track of Double quaternions carries out discretization and obtains a series of interpolation Double quaternions points, it is necessary to convert thereof into
Quaternary number and translation vector are rotated, transfer algorithm is as follows:
Q=(G+H)/(2cos ψ) (17)
<mrow>
<mi>P</mi>
<mo>=</mo>
<mfenced open = "{" close = "">
<mtable>
<mtr>
<mtd>
<mrow>
<mfrac>
<mrow>
<msub>
<mi>R</mi>
<mi>l</mi>
</msub>
<mi>&psi;</mi>
</mrow>
<mrow>
<mi>s</mi>
<mi>i</mi>
<mi>n</mi>
<mi>&psi;</mi>
</mrow>
</mfrac>
<mrow>
<mo>(</mo>
<mi>G</mi>
<mo>-</mo>
<mi>H</mi>
<mo>)</mo>
</mrow>
<msup>
<mi>Q</mi>
<mo>*</mo>
</msup>
</mrow>
</mtd>
<mtd>
<mrow>
<mo>(</mo>
<mi>&psi;</mi>
<mo>&NotEqual;</mo>
<mn>0</mn>
<mo>)</mo>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mn>0</mn>
</mtd>
<mtd>
<mrow>
<mo>(</mo>
<mi>&psi;</mi>
<mo>=</mo>
<mn>0</mn>
<mo>)</mo>
</mrow>
</mtd>
</mtr>
</mtable>
</mfenced>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>18</mn>
<mo>)</mo>
</mrow>
</mrow>
In formula,
8) inverse kinematics processing is carried out to end effector of robot pose obtained by interpolation, obtains joint angles, and drive joint
Motion.
2. the trajectory planning control method of the industrial robot free curve according to claim 1 based on Double quaternions,
Characterized in that, the step 1) in,
The mathematical modeling of end effector of robot spatial pose based on Double quaternions is:
<mrow>
<mover>
<mi>G</mi>
<mo>~</mo>
</mover>
<mo>=</mo>
<mi>&xi;</mi>
<mi>G</mi>
<mo>+</mo>
<mi>&eta;</mi>
<mi>H</mi>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>1</mn>
<mo>)</mo>
</mrow>
</mrow>
Wherein,End effector of robot Double quaternions spatial pose is represented, ξ and η meet ξ2=ξ, η2=η, ξ+η=1, ξ η
=0, G and H are unit quaternion;
End effector of robot is in the task space NURBS free curve mathematical modelings described:Any one k NURBS
Curve is represented as a Piecewise Rational multinomial vector function:
<mrow>
<mi>p</mi>
<mrow>
<mo>(</mo>
<mi>u</mi>
<mo>)</mo>
</mrow>
<mo>=</mo>
<mfrac>
<mrow>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>i</mi>
<mo>=</mo>
<mn>0</mn>
</mrow>
<mi>n</mi>
</munderover>
<msub>
<mi>&omega;</mi>
<mi>i</mi>
</msub>
<msub>
<mi>d</mi>
<mi>i</mi>
</msub>
<msub>
<mi>N</mi>
<mrow>
<mi>i</mi>
<mo>,</mo>
<mi>k</mi>
</mrow>
</msub>
<mrow>
<mo>(</mo>
<mi>u</mi>
<mo>)</mo>
</mrow>
</mrow>
<mrow>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>i</mi>
<mo>=</mo>
<mn>0</mn>
</mrow>
<mi>n</mi>
</munderover>
<msub>
<mi>&omega;</mi>
<mi>i</mi>
</msub>
<msub>
<mi>N</mi>
<mrow>
<mi>i</mi>
<mo>,</mo>
<mi>k</mi>
</mrow>
</msub>
<mrow>
<mo>(</mo>
<mi>u</mi>
<mo>)</mo>
</mrow>
</mrow>
</mfrac>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>2</mn>
<mo>)</mo>
</mrow>
</mrow>
Wherein, p (u) represents end effector of robot in the position vector of the task space NURBS free curves described, ωiClaim
For weight factor;diFor free curve control point;N is control point number;Ni,k(u) it is by knot vector
The B-spline basic function of decision, is represented by De Buer-Cox recursive definition formula:
<mrow>
<mfenced open = "{" close = "">
<mtable>
<mtr>
<mtd>
<mrow>
<msub>
<mi>N</mi>
<mrow>
<mi>i</mi>
<mo>,</mo>
<mn>0</mn>
</mrow>
</msub>
<mo>=</mo>
<mfenced open = "{" close = "">
<mtable>
<mtr>
<mtd>
<mn>1</mn>
</mtd>
<mtd>
<mtable>
<mtr>
<mtd>
<mrow>
<mi>i</mi>
<mi>f</mi>
</mrow>
</mtd>
<mtd>
<mrow>
<mo>(</mo>
<msub>
<mi>u</mi>
<mi>i</mi>
</msub>
<mo>&le;</mo>
<mi>u</mi>
<mo>&le;</mo>
<msub>
<mi>u</mi>
<mrow>
<mi>i</mi>
<mo>+</mo>
<mn>1</mn>
</mrow>
</msub>
<mo>)</mo>
</mrow>
</mtd>
</mtr>
</mtable>
</mtd>
</mtr>
<mtr>
<mtd>
<mn>0</mn>
</mtd>
<mtd>
<mrow>
<mi>o</mi>
<mi>t</mi>
<mi>h</mi>
<mi>e</mi>
<mi>r</mi>
<mi>w</mi>
<mi>i</mi>
<mi>s</mi>
<mi>e</mi>
</mrow>
</mtd>
</mtr>
</mtable>
</mfenced>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<msub>
<mi>N</mi>
<mrow>
<mi>i</mi>
<mo>,</mo>
<mi>k</mi>
</mrow>
</msub>
<mo>=</mo>
<mfrac>
<mrow>
<mi>u</mi>
<mo>-</mo>
<msub>
<mi>u</mi>
<mi>i</mi>
</msub>
</mrow>
<mrow>
<msub>
<mi>u</mi>
<mrow>
<mi>i</mi>
<mo>+</mo>
<mi>k</mi>
</mrow>
</msub>
<mo>-</mo>
<msub>
<mi>u</mi>
<mi>i</mi>
</msub>
</mrow>
</mfrac>
<msub>
<mi>N</mi>
<mrow>
<mi>i</mi>
<mo>,</mo>
<mi>k</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
</msub>
<mrow>
<mo>(</mo>
<mi>u</mi>
<mo>)</mo>
</mrow>
<mo>+</mo>
<mfrac>
<mrow>
<msub>
<mi>u</mi>
<mrow>
<mi>i</mi>
<mo>+</mo>
<mi>k</mi>
<mo>+</mo>
<mn>1</mn>
</mrow>
</msub>
<mo>-</mo>
<mi>u</mi>
</mrow>
<mrow>
<msub>
<mi>u</mi>
<mrow>
<mi>i</mi>
<mo>+</mo>
<mi>k</mi>
<mo>+</mo>
<mn>1</mn>
</mrow>
</msub>
<mo>-</mo>
<msub>
<mi>u</mi>
<mrow>
<mi>i</mi>
<mo>+</mo>
<mn>1</mn>
</mrow>
</msub>
</mrow>
</mfrac>
<msub>
<mi>N</mi>
<mrow>
<mi>i</mi>
<mo>,</mo>
<mi>k</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
</msub>
<mrow>
<mo>(</mo>
<mi>u</mi>
<mo>)</mo>
</mrow>
</mrow>
</mtd>
</mtr>
</mtable>
</mfenced>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>3</mn>
<mo>)</mo>
</mrow>
</mrow>
In formula, regulationU is the densification nodal value between the two neighboring nodes of knot vector U, ui, i=0,1 ... ..., n+k+
1, represent some specific nodal value in knot vector U.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610266117.3A CN105773620B (en) | 2016-04-26 | 2016-04-26 | The trajectory planning control method of industrial robot free curve based on Double quaternions |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610266117.3A CN105773620B (en) | 2016-04-26 | 2016-04-26 | The trajectory planning control method of industrial robot free curve based on Double quaternions |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105773620A CN105773620A (en) | 2016-07-20 |
CN105773620B true CN105773620B (en) | 2017-09-12 |
Family
ID=56399369
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610266117.3A Expired - Fee Related CN105773620B (en) | 2016-04-26 | 2016-04-26 | The trajectory planning control method of industrial robot free curve based on Double quaternions |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105773620B (en) |
Families Citing this family (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107053176B (en) * | 2017-04-09 | 2019-07-12 | 北京工业大学 | A kind of error modeling method of six-DOF robot end spaces curvilinear path |
CN107263472A (en) * | 2017-06-16 | 2017-10-20 | 广东工业大学 | A kind of robot motion's curve processing method and system |
CN107807612B (en) * | 2017-12-12 | 2020-09-22 | 科德数控股份有限公司 | Numerical control machine tool spherical surface machining method based on quaternion spiral spherical surface interpolation method |
CN108646667B (en) * | 2018-03-05 | 2019-11-05 | 北京华航唯实机器人科技股份有限公司 | Orbit generation method and device, terminal |
CN108614569B (en) * | 2018-06-22 | 2021-01-15 | 北京敏捷动力科技有限公司 | Method for tracking and controlling controlled moving object |
CN108942943B (en) * | 2018-08-16 | 2020-03-17 | 居鹤华 | Positive kinematics calculation method of multi-axis robot based on axis invariants |
CN109531573B (en) * | 2018-12-25 | 2022-03-29 | 珞石(山东)智能科技有限公司 | Robot posture smooth path generation method based on sample lines |
CN109664303B (en) * | 2019-02-28 | 2021-10-12 | 武汉工程大学 | Error-controllable B-spline transition type smooth trajectory generation method for four-axis industrial robot |
CN110757454B (en) * | 2019-10-12 | 2022-08-16 | 广州中国科学院先进技术研究所 | Path planning method and device for cooperative rotation of double robots |
JP7262373B2 (en) * | 2019-11-19 | 2023-04-21 | 株式会社日立製作所 | Trajectory plan generation device, trajectory plan generation method, and trajectory plan generation program |
CN111897216B (en) * | 2020-07-16 | 2021-07-02 | 华中科技大学 | Multi-motion-segment speed planning and interpolation method |
CN111913441B (en) * | 2020-08-06 | 2021-11-09 | 南京工程学院 | Corner smooth transition method based on track mode |
CN112318499A (en) * | 2020-10-16 | 2021-02-05 | 西安工程大学 | Special-shaped prefabricated body robot needling forming path planning method |
CN112269356B (en) * | 2020-10-27 | 2022-03-18 | 南京溧航仿生产业研究院有限公司 | NURBS track interpolation method for robot |
CN112419415B (en) * | 2020-12-08 | 2022-06-17 | 浙江德尚韵兴医疗科技有限公司 | Ultrasonic scanning method for realizing pose planning based on CRS curve fitting |
CN112698623B (en) * | 2020-12-29 | 2021-11-05 | 南京埃斯顿自动化股份有限公司 | Multi-axis contour control method for multi-axis contour application occasion |
CN113211433B (en) * | 2021-04-21 | 2022-09-20 | 山东科技大学 | Separated visual servo control method based on composite characteristics |
CN113103240B (en) * | 2021-04-29 | 2022-08-23 | 哈尔滨工业大学 | Method, device and system for realizing C2 continuous robot trajectory planning |
CN113103241B (en) * | 2021-04-29 | 2022-08-23 | 哈尔滨工业大学 | Method, device and system for realizing G2 continuous robot double-NURBS track interpolation |
CN113103239B (en) * | 2021-04-29 | 2022-09-13 | 哈尔滨工业大学 | Robot attitude trajectory generation method and device and storage medium |
CN113733099A (en) * | 2021-09-28 | 2021-12-03 | 广州大学 | Robot smooth track planning method, computer and storage medium |
CN113997157A (en) * | 2021-11-11 | 2022-02-01 | 吉林大学 | Multi-surface common-body optical curved surface polishing machine tool and method based on macro-micro composite driving |
CN116197917B (en) * | 2023-04-28 | 2023-08-01 | 苏州艾利特机器人有限公司 | Self-adaptive maximum acceleration calculation method and device, storage medium and electronic equipment |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS60262213A (en) * | 1984-06-06 | 1985-12-25 | Nippei Toyama Corp | Movement control method of industrial robot |
JPH05185386A (en) * | 1992-01-16 | 1993-07-27 | Fujitsu Ltd | Linear motion control system for robot finger |
US9517556B2 (en) * | 2012-06-29 | 2016-12-13 | Mitsubishi Electric Corporation | Robot control apparatus and robot control method |
CN102825602B (en) * | 2012-08-21 | 2015-03-25 | 华北电力大学(保定) | PSD (Position Sensitive Detector)-based industrial robot self-calibration method and device |
CN103568012B (en) * | 2013-10-24 | 2015-10-21 | 安徽埃夫特智能装备有限公司 | A kind of planing method of arc welding robot biplane swinging arc track |
CN104635762B (en) * | 2015-01-13 | 2017-06-06 | 北京航空航天大学 | A kind of autokinesis angle computational methods towards SRS copy man arms |
CN104965517B (en) * | 2015-07-07 | 2018-01-26 | 张耀伦 | A kind of planing method of robot cartesian space track |
CN105269565B (en) * | 2015-10-30 | 2017-04-05 | 福建长江工业有限公司 | A kind of six axle grinding and polishing industrial robot off-line programings and modification method |
-
2016
- 2016-04-26 CN CN201610266117.3A patent/CN105773620B/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CN105773620A (en) | 2016-07-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105773620B (en) | The trajectory planning control method of industrial robot free curve based on Double quaternions | |
CN108000501B (en) | Novel trajectory planning method for series robot | |
CN106647282B (en) | Six-degree-of-freedom robot trajectory planning method considering tail end motion error | |
Gong et al. | Analytical inverse kinematics and self-motion application for 7-DOF redundant manipulator | |
JP3207728B2 (en) | Control method of redundant manipulator | |
Chen et al. | An approach to the path planning of tube–sphere intersection welds with the robot dedicated to J-groove joints | |
CN105856231B (en) | A kind of motion control method of particular configuration six-shaft industrial robot | |
CN108237534A (en) | A kind of space collision free trajectory method of continuous type mechanical arm | |
CN111459160B (en) | Large-scale track smoothing method for unmanned washing and sweeping vehicle on open road | |
WO2023024317A1 (en) | Robot obstacle avoidance method and apparatus, and robot | |
CN112975992B (en) | Error-controllable robot track synchronous optimization method | |
CN110653137B (en) | Spraying method for keeping spray head vertical to spraying surface | |
Tarokh et al. | Real-time motion tracking of robot manipulators using adaptive genetic algorithms | |
CN111791234A (en) | Anti-collision control algorithm for working positions of multiple robots in narrow space | |
CN106844951B (en) | Method and system for solving inverse kinematics of super-redundant robot based on segmented geometric method | |
CN115213905B (en) | Method and system for controlling position and pose of redundant mechanical arm and robot | |
CN116061173A (en) | Six-degree-of-freedom redundant task track planning method for mechanical arm for live working | |
CN110561419A (en) | arm-shaped line constraint flexible robot track planning method and device | |
CN109366486B (en) | Flexible robot inverse kinematics solving method, system, equipment and storage medium | |
CN104070523A (en) | Method for interpolating circular arcs in real time for industrial robots on basis of space coordinate transformation | |
CN114147720A (en) | Universal inverse kinematics solving method and device for multi-degree-of-freedom mechanical arm | |
CN116330267A (en) | Control method based on industrial robot wrist singular point calculation | |
CN111515954B (en) | Method for generating high-quality motion path of mechanical arm | |
CN111958602A (en) | Real-time inverse solution method for wrist offset type 6-axis robot | |
CN112276940A (en) | Six-degree-of-freedom non-spherical wrist robot inverse kinematics solving method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20170912 |