class Pr2(AbstractRobot): """ This class instanciates a Pr2 robot. """ OperationalPoints = ['right-wrist','left-wrist','waist','gaze','chest','left-ankle'] SpecialLinks = ['BODY', 'l_wrist', 'r_wrist', 'l_gripper', 'r_gripper', 'gaze','torso','l_ankle'] SpecialNames = ['base_link', 'l_wrist_roll_link', 'r_wrist_roll_link', 'l_gripper_palm_link', 'r_gripper_palm_link', 'head_tilt_link','torso_lift_link','base_link'] tracedSignals = { 'dynamic': ["com", "position", "velocity", "acceleration"], 'device': ['control', 'state'] } def specifySpecialLinks(self): if len(self.SpecialLinks) == len(self.SpecialNames): for i in range(0,len(self.SpecialLinks)): self.dynamic.addJointMapping(self.SpecialLinks[i], self.SpecialNames[i]) else: print 'No Special joints added : SpecialLinks.size != SpecialJoints.size' def __init__(self, name, device = None, tracer = None): AbstractRobot.__init__ (self, name, tracer) self.device = device self.dynamic = RosSotRobotModel("{0}_dynamic".format(name)) self.specifySpecialLinks() self.dynamic.loadFromParameterServer() self.dimension = self.dynamic.getDimension() self.halfSitting = (0.,) * self.dimension self.initializeRobot()
class RobotBuilder(AbstractHumanoidRobot): """ This class instanciates a robot. """ #OperationalPoints = ['right-wrist','left-wrist','waist','right-ankle','left-ankle'] #OperationalPoints = ['right-wrist','left-wrist','waist','gaze'] tracedSignals = { 'dynamic': ["com", "zmp", "position", "velocity", "acceleration"], 'device': ['zmp', 'control', 'state'] } def __init__(self, name, device=None, tracer=None, ns='sot_controller'): AbstractHumanoidRobot.__init__ (self, name, tracer) self.device = device self.dynamic = RosSotRobotModel("{0}_dynamic".format(name)) self.dynamic.setNamespace(ns) self.dynamic.loadFromParameterServer() self.halfSitting = self.dynamic.curConf() self.dimension = self.dynamic.getDimension() self.initializeRobot()
class RobotBuilder(AbstractHumanoidRobot): """ This class instanciates a robot. """ #OperationalPoints = ['right-wrist','left-wrist','waist','right-ankle','left-ankle'] #OperationalPoints = ['right-wrist','left-wrist','waist','gaze'] tracedSignals = { 'dynamic': ["com", "zmp", "position", "velocity", "acceleration"], 'device': ['zmp', 'control', 'state'] } def __init__(self, name, device=None, tracer=None, ns='sot_controller'): AbstractHumanoidRobot.__init__(self, name, tracer) self.device = device self.dynamic = RosSotRobotModel("{0}_dynamic".format(name)) self.dynamic.setNamespace(ns) self.dynamic.loadFromParameterServer() self.halfSitting = self.dynamic.curConf() self.dimension = self.dynamic.getDimension() self.initializeRobot()