summaryrefslogtreecommitdiff
path: root/host/simu/robots/aquajim/model
diff options
context:
space:
mode:
Diffstat (limited to 'host/simu/robots/aquajim/model')
-rw-r--r--host/simu/robots/aquajim/model/bag.py6
-rw-r--r--host/simu/robots/aquajim/model/sorter.py4
2 files changed, 8 insertions, 2 deletions
diff --git a/host/simu/robots/aquajim/model/bag.py b/host/simu/robots/aquajim/model/bag.py
index d8231e6b..6cbc52ef 100644
--- a/host/simu/robots/aquajim/model/bag.py
+++ b/host/simu/robots/aquajim/model/bag.py
@@ -24,6 +24,7 @@
"""AquaJim bag of models."""
from simu.model.switch import Switch
from simu.model.position import Position
+from simu.model.motor_basic import MotorBasic
from simu.model.distance_sensor_sharps import DistanceSensorSharps
from simu.robots.aquajim.model.sorter import Sorter
from math import pi
@@ -34,8 +35,11 @@ class Bag:
self.jack = Switch (link_bag.io.jack)
self.color_switch = Switch (link_bag.io.color_switch)
self.position = Position (link_bag.asserv.position)
+ self.elevator_door = MotorBasic (link_bag.io.pwm[0], scheduler,
+ 2 * pi, 0, pi / 2)
self.sorter = Sorter (table, link_bag.asserv.aux[0],
- link_bag.asserv.aux[1], link_bag.io.servo[0:2])
+ link_bag.asserv.aux[1], link_bag.io.servo[0:2],
+ self.elevator_door)
self.distance_sensor = [
DistanceSensorSharps (link_bag.io.adc[0], scheduler, table,
(150, 150), 0, (self.position, )),
diff --git a/host/simu/robots/aquajim/model/sorter.py b/host/simu/robots/aquajim/model/sorter.py
index 56f1fc3e..5c4a013f 100644
--- a/host/simu/robots/aquajim/model/sorter.py
+++ b/host/simu/robots/aquajim/model/sorter.py
@@ -27,7 +27,8 @@ from math import pi
class Sorter (Observable):
- def __init__ (self, table, arm_motor_link, elevator_motor_link, servo_links):
+ def __init__ (self, table, arm_motor_link, elevator_motor_link,
+ servo_links, elevator_door_model):
Observable.__init__ (self)
self.table = table
self.arm_motor_link = arm_motor_link
@@ -37,6 +38,7 @@ class Sorter (Observable):
self.elevator_motor_link.register (self.__elevator_motor_notified)
self.__elevator_motor_notified ()
self.servo_links = servo_links
+ self.elevator_door = elevator_door_model
def __arm_motor_notified (self):
self.arm_angle = self.arm_motor_link.angle