@@ -65,12 +65,13 @@ def calc_second_derivative(self, t):
65
65
xt = 2 * self .a2 + 6 * self .a3 * t + 12 * self .a4 * t ** 2 + 20 * self .a5 * t ** 3
66
66
67
67
return xt
68
-
68
+
69
69
def calc_third_derivative (self , t ):
70
70
xt = 6 * self .a3 + 24 * self .a4 * t + 60 * self .a5 * t ** 2
71
71
72
72
return xt
73
73
74
+
74
75
def quinic_polynomials_planner (sx , sy , syaw , sv , sa , gx , gy , gyaw , gv , ga , max_accel , max_jerk , dt ):
75
76
"""
76
77
quinic polynomial planner
@@ -112,7 +113,7 @@ def quinic_polynomials_planner(sx, sy, syaw, sv, sa, gx, gy, gyaw, gv, ga, max_a
112
113
xqp = quinic_polynomial (sx , vxs , axs , gx , vxg , axg , T )
113
114
yqp = quinic_polynomial (sy , vys , ays , gy , vyg , ayg , T )
114
115
115
- time , rx , ry , ryaw , rv , ra , rj = [], [], [], [], [], [], []
116
+ time , rx , ry , ryaw , rv , ra , rj = [], [], [], [], [], [], []
116
117
117
118
for t in np .arange (0.0 , T + dt , dt ):
118
119
time .append (t )
@@ -131,12 +132,11 @@ def quinic_polynomials_planner(sx, sy, syaw, sv, sa, gx, gy, gyaw, gv, ga, max_a
131
132
a = np .hypot (ax , ay )
132
133
if len (rv ) >= 2 and rv [- 1 ] - rv [- 2 ] < 0.0 :
133
134
a *= - 1
134
- pass
135
135
ra .append (a )
136
136
137
137
jx = xqp .calc_third_derivative (t )
138
138
jy = yqp .calc_third_derivative (t )
139
- j = np .hypot (ax , ay )
139
+ j = np .hypot (jx , jy )
140
140
if len (ra ) >= 2 and ra [- 1 ] - ra [- 2 ] < 0.0 :
141
141
j *= - 1
142
142
rj .append (j )
@@ -155,14 +155,16 @@ def quinic_polynomials_planner(sx, sy, syaw, sv, sa, gx, gy, gyaw, gv, ga, max_a
155
155
plot_arrow (rx [i ], ry [i ], ryaw [i ])
156
156
plt .title ("Time[s]:" + str (time [i ])[0 :4 ] +
157
157
" v[m/s]:" + str (rv [i ])[0 :4 ] +
158
- " a[m/ss]:" + str (ra [i ])[0 :4 ])
158
+ " a[m/ss]:" + str (ra [i ])[0 :4 ] +
159
+ " jerk[m/sss]:" + str (rj [i ])[0 :4 ],
160
+ )
159
161
plt .pause (0.001 )
160
162
161
163
return time , rx , ry , ryaw , rv , ra , rj
162
164
163
165
164
166
def plot_arrow (x , y , yaw , length = 1.0 , width = 0.5 , fc = "r" , ec = "k" ):
165
- u """
167
+ """
166
168
Plot arrow
167
169
"""
168
170
0 commit comments