Skip to content

Commit f1fc80a

Browse files
committed
feat: car roll, pitch yaw anglse added
1 parent 24f20e2 commit f1fc80a

File tree

1 file changed

+20
-2
lines changed

1 file changed

+20
-2
lines changed

gym_donkeycar/envs/donkey_sim.py

Lines changed: 20 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -123,6 +123,11 @@ def __init__(self, conf):
123123
self.vel_z = 0.0
124124
self.lidar = []
125125

126+
# car in Unity lefthand coordinate system: roll is Z, pitch is X and yaw is Y
127+
self.roll = 0.0
128+
self.pitch = 0.0
129+
self.yaw = 0.0
130+
126131
def on_connect(self, client):
127132
logger.debug("socket connected")
128133
self.client = client
@@ -260,6 +265,11 @@ def reset(self):
260265
self.vel_z = 0.0
261266
self.lidar = []
262267

268+
# car
269+
self.roll = 0.0
270+
self.pitch = 0.0
271+
self.yaw = 0.0
272+
263273
def get_sensor_size(self):
264274
return self.camera_img_size
265275

@@ -285,6 +295,7 @@ def observe(self):
285295
"accel": (self.accel_x, self.accel_y, self.accel_z),
286296
"vel": (self.vel_x, self.vel_y, self.vel_z),
287297
"lidar": (self.lidar),
298+
"car": (self.roll, self.pitch, self.yaw),
288299
}
289300

290301
# self.timer.on_frame()
@@ -344,6 +355,12 @@ def on_telemetry(self, data):
344355
self.vel_y = data["vel_y"]
345356
self.vel_z = data["vel_z"]
346357

358+
if "roll" in data:
359+
self.roll = data["roll"]
360+
self.pitch = data["pitch"]
361+
self.yaw = data["yaw"]
362+
print(self.roll, self.pitch, self.yaw)
363+
347364
# Cross track error not always present.
348365
# Will be missing if path is not setup in the given scene.
349366
# It should be setup in the 4 scenes available now.
@@ -358,9 +375,10 @@ def on_telemetry(self, data):
358375

359376
try:
360377
self.lidar = data["lidar"]
361-
logger.info("reading lidar in telemetry package DONE.")
378+
# logger.info("reading lidar in telemetry package DONE.")
362379
except:
363-
logger.info("reading lidar in telemetry package FAILED.")
380+
pass
381+
# logger.info("reading lidar in telemetry package FAILED.")
364382

365383
self.determine_episode_over()
366384

0 commit comments

Comments
 (0)