From 07b458aa45c0e6255e86e1e0a88a986cdebd5ea4 Mon Sep 17 00:00:00 2001 From: Nicolas Schodet Date: Tue, 3 Mar 2009 00:58:57 +0100 Subject: * host/inter: - use asserv mex interface. --- host/inter/inter_node.py | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) (limited to 'host/inter') diff --git a/host/inter/inter_node.py b/host/inter/inter_node.py index 329c9977..d371920d 100644 --- a/host/inter/inter_node.py +++ b/host/inter/inter_node.py @@ -32,6 +32,8 @@ from Tkinter import * from mex.node import Node from mex.msg import Msg +import asserv + class InterNode (Inter): """Inter, coupled with a mex Node.""" @@ -48,8 +50,9 @@ class InterNode (Inter): def __init__ (self): Inter.__init__ (self) self.node = Node () - self.node.register (0xa0, self.handle_asserv_0) - self.node.register (0xa8, self.handle_asserv_8) + self.asserv_link = asserv.Mex (self.node) + self.asserv_link.position.register (self.notify_position) + self.asserv_link.aux[0].register (self.notify_aux0) self.node.register (self.IO_JACK, self.handle_IO_JACK) self.node.register (self.IO_COLOR, self.handle_IO_COLOR) self.node.register (self.IO_SERVO, self.handle_IO_SERVO) @@ -137,15 +140,13 @@ class InterNode (Inter): else: self.step () - def handle_asserv_0 (self, msg): - x, y, a = msg.pop ('hhl') - self.tableview.robot.pos = (x, y) - self.tableview.robot.angle = float (a) / 1024 + def notify_position (self): + self.tableview.robot.pos = self.asserv_link.position.pos + self.tableview.robot.angle = self.asserv_link.position.angle self.update (self.tableview.robot) - def handle_asserv_8 (self, msg): - a, = msg.pop ('l') - self.actuatorview.arm.angle = float (a) / 1024 + def notify_aux0 (self): + self.actuatorview.arm.angle = self.asserv_link.aux[0].angle self.update (self.actuatorview.arm) def handle_IO_JACK (self, msg): -- cgit v1.2.3