Skip to content

Commit a408a71

Browse files
committed
changed launch ctrl to gem
1 parent e4e4914 commit a408a71

3 files changed

Lines changed: 24 additions & 17 deletions

File tree

GEMstack/knowledge/defaults/current.yaml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,10 @@
1616
lookahead_scale: 2.0
1717
crosstrack_gain: 0.3
1818
desired_speed: trajectory #racing
19-
launch_control: 0 # to enable racing features put launch_control to 1
19+
launch_control:
20+
enabled: false
21+
stage_duration: 0.5
22+
2023
longitudinal_control:
2124
pid_p: 0.8
2225
pid_i: 0.03

GEMstack/onboard/interface/gem_hardware.py

Lines changed: 19 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -326,17 +326,26 @@ def send_command(self, command : GEMVehicleCommand):
326326
self.accel_cmd.clear = False
327327
self.accel_cmd.ignore = False
328328

329-
# Launch control
329+
enable_launch_control = settings.get('control.launch_control.enable', False)
330+
stage_duration = 0.5
330331
currTime = rospy.get_time() - self.start_time
331-
if currTime < 5:
332-
self.brake_cmd.f64_cmd = maxbrake
333-
self.accel_cmd.f64_cmd = 0
334-
elif currTime < 6:
335-
self.brake_cmd.f64_cmd = maxbrake
336-
self.accel_cmd.f64_cmd = maxacc
337-
elif currTime < 10:
338-
self.brake_cmd.f64_cmd = 0
339-
self.accel_cmd.f64_cmd = maxacc
332+
333+
334+
# Launch control
335+
if enable_launch_control:
336+
total_stage_time = 3 * stage_duration
337+
if currTime < total_stage_time:
338+
if currTime < stage_duration:
339+
self.brake_cmd.f64_cmd = maxbrake
340+
self.accel_cmd.f64_cmd = 0
341+
elif currTime < 2 * stage_duration:
342+
self.brake_cmd.f64_cmd = maxbrake
343+
self.accel_cmd.f64_cmd = maxacc
344+
else:
345+
self.brake_cmd.f64_cmd = 0
346+
self.accel_cmd.f64_cmd = maxacc
347+
else:
348+
enable_launch_control = False
340349

341350
# self.brake_cmd.f64_cmd = maxbrake
342351
# self.accel_cmd.f64_cmd = 0

GEMstack/onboard/planning/pure_pursuit.py

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ def __init__(self, lookahead = None, lookahead_scale = None, crosstrack_gain = N
1919
self.wheelbase = settings.get('vehicle.geometry.wheelbase')
2020
self.wheel_angle_range = [settings.get('vehicle.geometry.min_wheel_angle'),settings.get('vehicle.geometry.max_wheel_angle')]
2121
self.steering_angle_range = [settings.get('vehicle.geometry.min_steering_angle'),settings.get('vehicle.geometry.max_steering_angle')]
22-
self.launch_control = settings.get('control.pure_pursuit.launch_control')
22+
# self.launch_control = settings.get('control.pure_pursuit.launch_control')
2323

2424
if desired_speed is not None:
2525
self.desired_speed_source = desired_speed
@@ -201,11 +201,6 @@ def compute(self, state : VehicleState, component : Component = None):
201201

202202
output_accel = self.pid_speed.advance(e = desired_speed - speed, t = t, feedforward_term=feedforward_accel)
203203

204-
205-
if self.launch_control:
206-
if t < 4:
207-
output_accel = self.max_accel
208-
209204
# self.brake_cmd.f64_cmd = maxbrake
210205
# self.accel_cmd.f64_cmd = 0
211206

0 commit comments

Comments
 (0)