summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--digital/io/src/radar.c3
-rw-r--r--digital/io/src/radar.h4
2 files changed, 7 insertions, 0 deletions
diff --git a/digital/io/src/radar.c b/digital/io/src/radar.c
index 294a4558..7c9557c4 100644
--- a/digital/io/src/radar.c
+++ b/digital/io/src/radar.c
@@ -98,6 +98,9 @@ radar_update (vect_t robot_pos, uint16_t robot_a, vect_t *obs_pos)
robot_a + radar_sensors[i].a);
vect_translate (&hit[i], &ray);
valid[i] = radar_valid (hit[i]);
+ vect_from_polar_uf016 (&ray, RADAR_OBSTACLE_RADIUS_MM,
+ robot_a + radar_sensors[i].a);
+ vect_translate (&hit[i], &ray);
}
else
valid[i] = 0;
diff --git a/digital/io/src/radar.h b/digital/io/src/radar.h
index b602b69d..a1c5fe54 100644
--- a/digital/io/src/radar.h
+++ b/digital/io/src/radar.h
@@ -35,6 +35,10 @@
* - determining if an obstacle should make the robot stop.
*/
+/** Estimated obstacle radius. As the sensors detect obstacle edge, this is
+ * added to position obstacle center. */
+#define RADAR_OBSTACLE_RADIUS_MM 150
+
/** Update radar view. Return the number of obstacles found. Obstacles
* positions are returned in obs_pos. */
uint8_t