@@ -105,9 +105,13 @@ def compute(self, state : VehicleState, component : Component = None):
105105 else :
106106 desired_x ,desired_y = self .path .eval (des_parameter )
107107 desired_yaw = np .arctan2 (desired_y - curr_y ,desired_x - curr_x )
108- #print("Desired point",(desired_x,desired_y)," with lookahead distance",self.look_ahead + self.look_ahead_scale * speed)
109- #print("Current yaw",curr_yaw,"desired yaw",desired_yaw)
110-
108+
109+ print ("Desired point" ,(desired_x ,desired_y )," with lookahead distance" ,self .look_ahead + self .look_ahead_scale * speed )
110+ print ("Current x" ,curr_x ,"Current y" ,curr_y )
111+ print ("Current yaw" ,curr_yaw ,"Desired yaw" ,desired_yaw )
112+ print ("Parameter : " , self .current_path_parameter )
113+ print ("Last index : " , self .path .domain ()[1 ])
114+
111115 # distance between the desired point and the vehicle
112116 L = transforms .vector2_dist ((desired_x ,desired_y ),(curr_x ,curr_y ))
113117
@@ -142,6 +146,7 @@ def compute(self, state : VehicleState, component : Component = None):
142146 #past the end, just stop
143147 desired_speed = 0.0
144148 feedforward_accel = - 2.0
149+ f_delta = 0
145150 else :
146151 if self .desired_speed_source == 'path' :
147152 current_trajectory_time = self .trajectory .parameter_to_time (self .current_path_parameter )
@@ -165,6 +170,17 @@ def compute(self, state : VehicleState, component : Component = None):
165170 else :
166171 #decay speed when crosstrack error is high
167172 desired_speed *= np .exp (- abs (ct_error )* 0.4 )
173+
174+ if len (self .trajectory .points ) < 2 or self .current_path_parameter >= self .path .domain ()[1 ]:
175+ if component is not None :
176+ component .debug_event ('Past the end of trajectory' )
177+ #past the end, just stop
178+ desired_speed = 0.0
179+ feedforward_accel = - 2.0
180+ f_delta = 0
181+
182+
183+
168184 if desired_speed > self .speed_limit :
169185 desired_speed = self .speed_limit
170186 output_accel = self .pid_speed .advance (e = desired_speed - speed , t = t , feedforward_term = feedforward_accel )
0 commit comments