From a309ae5825b179a0c77c8e7572f16f06fd058e10 Mon Sep 17 00:00:00 2001 From: Nicolas Schodet Date: Tue, 31 May 2011 09:43:01 +0200 Subject: digital/mimot: add simulated robospierre contact --- digital/mimot/src/dirty/models.host.c | 2 +- digital/mimot/src/dirty/simu.host.c | 9 +++++++++ digital/mimot/src/dirty/simu.host.h | 3 +++ 3 files changed, 13 insertions(+), 1 deletion(-) (limited to 'digital/mimot') diff --git a/digital/mimot/src/dirty/models.host.c b/digital/mimot/src/dirty/models.host.c index b1141748..db4152e0 100644 --- a/digital/mimot/src/dirty/models.host.c +++ b/digital/mimot/src/dirty/models.host.c @@ -91,7 +91,7 @@ static const struct robot_t robospierre_robot = /** Number of steps for each auxiliary motor encoder. */ { 256, 250 }, /** Sensor update function. */ - NULL, + simu_sensor_update_robospierre, }; /* Table of models. */ diff --git a/digital/mimot/src/dirty/simu.host.c b/digital/mimot/src/dirty/simu.host.c index af07d744..8afd73ca 100644 --- a/digital/mimot/src/dirty/simu.host.c +++ b/digital/mimot/src/dirty/simu.host.c @@ -152,6 +152,15 @@ simu_sensor_update_marcel (void) { } +/** Update sensors for Robospierre. */ +void +simu_sensor_update_robospierre (void) +{ + PINC = 0; + if (simu_aux_model[0].th < 120.0 * 5.0 / 6.0 * simu_aux_model[0].m.i_G) + PINC |= IO_BV (CONTACT_AUX0_ZERO_IO); +} + /** Do a simulation step. */ static void simu_step (void) diff --git a/digital/mimot/src/dirty/simu.host.h b/digital/mimot/src/dirty/simu.host.h index 6250bed1..87a728b6 100644 --- a/digital/mimot/src/dirty/simu.host.h +++ b/digital/mimot/src/dirty/simu.host.h @@ -45,4 +45,7 @@ simu_sensor_update_aquajim (void); void simu_sensor_update_marcel (void); +void +simu_sensor_update_robospierre (void); + #endif /* simu_host_h */ -- cgit v1.2.3