summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNicolas Schodet2011-05-07 00:30:10 +0200
committerNicolas Schodet2011-05-07 00:43:56 +0200
commit8ed9fb23f3ab93374d9bcbe6560e84c6c1de1b2a (patch)
tree7529e399cafa97ec9d85c2f5d941314ffbd765be
parent2cd5319ff81c25e4ee773a00862d26666ef2ced6 (diff)
digital/{ai,io-hub}, host/simu: use io-hub for simu
-rw-r--r--digital/ai/tools/robospierre.py10
-rw-r--r--digital/ai/tools/test_simu_control_robospierre.py4
-rw-r--r--digital/io-hub/src/robospierre/main.c1
-rw-r--r--host/simu/robots/robospierre/link/bag.py4
-rw-r--r--host/simu/robots/robospierre/model/bag.py23
-rw-r--r--host/simu/robots/robospierre/view/bag.py2
6 files changed, 21 insertions, 23 deletions
diff --git a/digital/ai/tools/robospierre.py b/digital/ai/tools/robospierre.py
index 23fb19a3..59023184 100644
--- a/digital/ai/tools/robospierre.py
+++ b/digital/ai/tools/robospierre.py
@@ -9,8 +9,8 @@ import asserv
import asserv.init
import mimot
import mimot.init
-import io
-import io.init
+import io_hub
+import io_hub.init
from proto.popen_io import PopenIO
import math
@@ -25,13 +25,13 @@ class Robot:
self.robot_view = simu.robots.robospierre.view.bag
asserv_cmd = ('../../asserv/src/asserv/asserv.host', '-m9', 'marcel')
mimot_cmd = ('../../mimot/src/dirty/dirty.host', '-m9', 'marcel')
- io_cmd = ('../../io/src/io.host')
+ io_hub_cmd = ('../../io-hub/src/robospierre/io_hub.host')
self.asserv = asserv.Proto (PopenIO (asserv_cmd), proto_time,
**asserv.init.host)
self.mimot = mimot.Proto (PopenIO (mimot_cmd), proto_time,
**mimot.init.host)
- self.io = io.Proto (PopenIO (io_cmd), proto_time,
- **io.init.host)
+ self.io = io_hub.Proto (PopenIO (io_hub_cmd), proto_time,
+ **io_hub.init.host)
self.robot_start_pos = {
False: (700, 2100 - 250, math.radians (-270)),
True: (3000 - 700, 2100 - 250, math.radians (-270))
diff --git a/digital/ai/tools/test_simu_control_robospierre.py b/digital/ai/tools/test_simu_control_robospierre.py
index 9da57196..5300918a 100644
--- a/digital/ai/tools/test_simu_control_robospierre.py
+++ b/digital/ai/tools/test_simu_control_robospierre.py
@@ -78,9 +78,9 @@ class TestSimuControl (TestSimu):
def clamp_command (self):
if self.clamp_var.get ():
- self.io.pwm_set (-0x7fff, 255)
+ self.io.pwm_set_timed (0, -0x3ff, 255, 0)
else:
- self.io.pwm_set (0x7fff, 255)
+ self.io.pwm_set_timed (0, 0x3ff, 255, 0)
def elevation_up_command (self):
self.mimot.speed_pos ('a0', self.ELEVATION_STROKE / 2)
diff --git a/digital/io-hub/src/robospierre/main.c b/digital/io-hub/src/robospierre/main.c
index bbc9bdb9..980ab138 100644
--- a/digital/io-hub/src/robospierre/main.c
+++ b/digital/io-hub/src/robospierre/main.c
@@ -60,6 +60,7 @@ main_init (void)
sei ();
/* Main timer */
timer_init ();
+ timer_wait ();
/* TWI communications */
asserv_init ();
mimot_init ();
diff --git a/host/simu/robots/robospierre/link/bag.py b/host/simu/robots/robospierre/link/bag.py
index 2760aec0..ac68889a 100644
--- a/host/simu/robots/robospierre/link/bag.py
+++ b/host/simu/robots/robospierre/link/bag.py
@@ -22,7 +22,7 @@
#
# }}}
"""Robospierre bag of links."""
-import io.mex
+import io_hub.mex
import asserv.mex
import mimot.mex
@@ -30,6 +30,6 @@ class Bag:
def __init__ (self, node):
self.asserv = asserv.mex.Mex (node)
- self.io = io.mex.Mex (node)
+ self.io_hub = io_hub.mex.Mex (node)
self.mimot = mimot.mex.Mex (node)
diff --git a/host/simu/robots/robospierre/model/bag.py b/host/simu/robots/robospierre/model/bag.py
index e6810e18..ce55f997 100644
--- a/host/simu/robots/robospierre/model/bag.py
+++ b/host/simu/robots/robospierre/model/bag.py
@@ -32,26 +32,25 @@ from math import pi
class Bag:
def __init__ (self, scheduler, table, link_bag):
- self.jack = Switch (link_bag.io.jack)
- self.color_switch = Switch (link_bag.io.color_switch)
- self.contact = [ Switch (contact) for contact in link_bag.io.contact ]
+ self.color_switch = Switch (link_bag.io_hub.contact[0])
+ self.jack = Switch (link_bag.io_hub.contact[1])
+ self.contact = [ Switch (contact)
+ for contact in link_bag.io_hub.contact[2:] ]
self.position = Position (link_bag.asserv.position)
- self.clamping_motor = MotorBasic (link_bag.io.pwm[0], scheduler,
+ self.clamping_motor = MotorBasic (link_bag.io_hub.pwm[0], scheduler,
2 * pi, 0, pi)
self.clamp = Clamp (table, self.position, link_bag.mimot.aux[0],
link_bag.mimot.aux[1], self.clamping_motor)
self.distance_sensor = [
- DistanceSensorSensopart (link_bag.io.adc[0], scheduler, table,
+ DistanceSensorSensopart (link_bag.io_hub.adc[0], scheduler, table,
(20, -20), -pi * 10 / 180, (self.position, ), 2),
- DistanceSensorSensopart (link_bag.io.adc[1], scheduler, table,
+ DistanceSensorSensopart (link_bag.io_hub.adc[1], scheduler, table,
(20, 20), pi * 10 / 180, (self.position, ), 2),
- DistanceSensorSensopart (link_bag.io.adc[2], scheduler, table,
+ DistanceSensorSensopart (link_bag.io_hub.adc[2], scheduler, table,
(-20, 20), pi - pi * 10 / 180, (self.position, ), 2),
- DistanceSensorSensopart (link_bag.io.adc[3], scheduler, table,
+ DistanceSensorSensopart (link_bag.io_hub.adc[3], scheduler, table,
(-20, -20), pi + pi * 10 / 180, (self.position, ), 2),
]
- link_bag.io.adc[4].value = 0
- link_bag.io.adc[5].value = 0
- self.path = link_bag.io.path
- self.pos_report = link_bag.io.pos_report
+ for adc in link_bag.io_hub.adc[4:]:
+ adc.value = 0
diff --git a/host/simu/robots/robospierre/view/bag.py b/host/simu/robots/robospierre/view/bag.py
index 361c79d3..0b5a85ad 100644
--- a/host/simu/robots/robospierre/view/bag.py
+++ b/host/simu/robots/robospierre/view/bag.py
@@ -43,6 +43,4 @@ class Bag:
ClampSide.height), model_bag.clamp))
self.distance_sensor = [DistanceSensorUS (self.robot, ds)
for ds in model_bag.distance_sensor]
- self.path = Path (table, model_bag.path)
- self.pos_report = PosReport (table, model_bag.pos_report)