@@ -18,7 +18,7 @@ We assume a one-dimensional robot motion :math:`x(t)` at time :math:`t` is
18
18
formulated as a quintic polynomials based on time as follows:
19
19
20
20
.. math :: x(t) = a_0+a_1t+a_2t^2+a_3t^3+a_4t^4+a_5t^5
21
- :label: eq1
21
+ :label: quintic_eq1
22
22
23
23
:math: `a_0 , a_1 . a_2 , a_3 , a_4 , a_5 ` are parameters of the quintic polynomial.
24
24
@@ -31,44 +31,44 @@ End position, velocity, and acceleration are :math:`x_e, v_e, a_e` respectively.
31
31
So, when time is 0.
32
32
33
33
.. math :: x(0) = a_0 = x_s
34
- :label: eq2
34
+ :label: quintic_eq2
35
35
36
- Then, differentiating the equation :eq: `eq1 ` with t,
36
+ Then, differentiating the equation :eq: `quintic_eq1 ` with t,
37
37
38
38
.. math :: x'(t) = a_1+2a_2t+3a_3t^2+4a_4t^3+5a_5t^4
39
- :label: eq3
39
+ :label: quintic_eq3
40
40
41
41
So, when time is 0,
42
42
43
43
.. math :: x'(0) = a_1 = v_s
44
- :label: eq4
44
+ :label: quintic_eq4
45
45
46
- Then, differentiating the equation :eq: `eq3 ` with t again,
46
+ Then, differentiating the equation :eq: `quintic_eq3 ` with t again,
47
47
48
48
.. math :: x''(t) = 2a_2+6a_3t+12a_4t^2
49
- :label: eq5
49
+ :label: quintic_eq5
50
50
51
51
So, when time is 0,
52
52
53
53
.. math :: x''(0) = 2a_2 = a_s
54
- :label: eq6
54
+ :label: quintic_eq6
55
55
56
- so, we can calculate :math: `a_0 , a_1 , a_2 ` with eq. :eq: `eq2 `, :eq: `eq4 `, :eq: `eq6 ` and boundary conditions.
56
+ so, we can calculate :math: `a_0 , a_1 , a_2 ` with eq. :eq: `quintic_eq2 `, :eq: `quintic_eq4 `, :eq: `quintic_eq6 ` and boundary conditions.
57
57
58
- :math: `a_3 , a_4 , a_5 ` are still unknown in eq :eq: `eq1 `.
58
+ :math: `a_3 , a_4 , a_5 ` are still unknown in eq :eq: `quintic_eq1 `.
59
59
60
- We assume that the end time for a maneuver is :math: `T`, we can get these equations from eq :eq: `eq1 `, :eq: `eq3 `, :eq: `eq5 `:
60
+ We assume that the end time for a maneuver is :math: `T`, we can get these equations from eq :eq: `quintic_eq1 `, :eq: `quintic_eq3 `, :eq: `quintic_eq5 `:
61
61
62
62
.. math :: x(T)=a_0+a_1T+a_2T^2+a_3T^3+a_4T^4+a_5T^5=x_e
63
- :label: eq7
63
+ :label: quintic_eq7
64
64
65
65
.. math :: x'(T)=a_1+2a_2T+3a_3T^2+4a_4T^3+5a_5T^4=v_e
66
- :label: eq8
66
+ :label: quintic_eq8
67
67
68
68
.. math :: x''(T)=2a_2+6a_3T+12a_4T^2+20a_5T^3=a_e
69
- :label: eq9
69
+ :label: quintic_eq9
70
70
71
- From eq :eq: `eq7 `, :eq: `eq8 `, :eq: `eq9 `, we can calculate :math: `a_3 , a_4 , a_5 ` to solve the linear equations: :math: `Ax=b`
71
+ From eq :eq: `quintic_eq7 `, :eq: `quintic_eq8 `, :eq: `quintic_eq9 `, we can calculate :math: `a_3 , a_4 , a_5 ` to solve the linear equations: :math: `Ax=b`
72
72
73
73
.. math :: \begin{bmatrix} T^3 & T^4 & T^5 \\ 3T^2 & 4T^3 & 5T^4 \\ 6T & 12T^2 & 20T^3 \end{bmatrix}\begin{bmatrix} a_3\\ a_4\\ a_5\end{bmatrix}=\begin{bmatrix} x_e-x_s-v_sT-0.5a_sT^2\\ v_e-v_s-a_sT\\ a_e-a_s\end{bmatrix}
74
74
@@ -80,10 +80,10 @@ Quintic polynomials for two dimensional robot motion (x-y)
80
80
If you use two quintic polynomials along x axis and y axis, you can plan for two dimensional robot motion in x-y plane.
81
81
82
82
.. math :: x(t) = a_0+a_1t+a_2t^2+a_3t^3+a_4t^4+a_5t^5
83
- :label: eq10
83
+ :label: quintic_eq10
84
84
85
85
.. math :: y(t) = b_0+b_1t+b_2t^2+b_3t^3+b_4t^4+b_5t^5
86
- :label: eq11
86
+ :label: quintic_eq11
87
87
88
88
It is assumed that terminal states (start and end) are known as boundary conditions.
89
89
0 commit comments