summaryrefslogtreecommitdiff
path: root/digital
diff options
context:
space:
mode:
Diffstat (limited to 'digital')
-rw-r--r--digital/ai/tools/apbirthday.py10
-rw-r--r--digital/mimot/src/dirty/models.host.c18
-rw-r--r--digital/mimot/tools/mimot/init.py3
3 files changed, 29 insertions, 2 deletions
diff --git a/digital/ai/tools/apbirthday.py b/digital/ai/tools/apbirthday.py
index 500ac22f..be53b84e 100644
--- a/digital/ai/tools/apbirthday.py
+++ b/digital/ai/tools/apbirthday.py
@@ -1,5 +1,7 @@
import asserv
import asserv.init
+import mimot
+import mimot.init
import io_hub
import io_hub.init
@@ -22,7 +24,7 @@ class Robot:
True: (3000 - 650, 2000 - 250, math.radians (90))
}
- client_nb = 3
+ client_nb = 4
tick = 1000
@@ -36,14 +38,18 @@ class Robot:
subprocess.Popen (cmd)
asserv_cmd = ('../../mimot/src/asserv/asserv.host',
'-i{instance}:asserv0', '-m9', 'apbirthday')
+ mimot_cmd = ('../../mimot/src/dirty/dirty.host',
+ '-i{instance}:mimot0', '-m9', 'apbirthday')
io_hub_cmd = ('../../io-hub/src/apbirthday/apbirthday.host',
'-i{instance}:io0')
beacon_stub_cmd = ('../../beacon/src/stub/simu_stub.host',
'-i{instance}:beacon0')
self.asserv = proto (asserv.Proto, asserv_cmd,
asserv.init.host['apbirthday'])
+ self.mimot = proto (mimot.Proto, mimot_cmd,
+ mimot.init.host['guybrush'])
self.io = proto (io_hub.ProtoGuybrush, io_hub_cmd,
io_hub.init.host['apbirthday'])
self.beacon_stub = prog (beacon_stub_cmd)
- self.protos = (self.asserv, self.io)
+ self.protos = (self.asserv, self.mimot, self.io)
diff --git a/digital/mimot/src/dirty/models.host.c b/digital/mimot/src/dirty/models.host.c
index 40586673..521b2b3c 100644
--- a/digital/mimot/src/dirty/models.host.c
+++ b/digital/mimot/src/dirty/models.host.c
@@ -93,6 +93,23 @@ static const struct robot_t guybrush_robot =
NULL,
};
+/* APBirthday, APBTeam 2013. */
+static const struct robot_t apbirthday_robot =
+{
+ /** Auxiliary motors, NULL if not present. */
+ { &motor_model_def_amax32ghp_x16, NULL },
+ /** Motors voltage (V). */
+ 24.0,
+ /** Number of steps for each auxiliary motor encoder. */
+ { 250, 0 },
+ /** Load for auxiliary motors (kg.m^2). */
+ { 1.000 * 0.05 * 0.05, 0 },
+ /** Sensor update function. */
+ NULL,
+ /** Initialisation function. */
+ NULL,
+};
+
/* Table of models. */
static const struct
{
@@ -102,6 +119,7 @@ static const struct
{ "marcel", &marcel_robot },
{ "robospierre", &robospierre_robot },
{ "guybrush", &guybrush_robot },
+ { "apbirthday", &apbirthday_robot },
{ 0, 0 }
};
diff --git a/digital/mimot/tools/mimot/init.py b/digital/mimot/tools/mimot/init.py
index 01511f21..d333ff5c 100644
--- a/digital/mimot/tools/mimot/init.py
+++ b/digital/mimot/tools/mimot/init.py
@@ -23,10 +23,13 @@ target_guybrush = dict (
a0_bd_error_limit = 22, a0_bd_speed_limit = 0x08, a0_bd_counter_limit = 50,
e_sat = 0x3ff, d_sat = 0x1ff,
)
+target_apbirthday = dict (
+ )
target = {
'marcel': target_marcel,
'robospierre': target_robospierre,
'guybrush': target_guybrush,
+ 'apbirthday': target_apbirthday,
}
host = target