Exemplo n.º 1
0
class RightHandMouvBehave(pypot.primitive.LoopPrimitive):

    def __init__(self, robot, freq):
        pypot.primitive.LoopPrimitive.__init__(self, robot, freq)
        
        self.my_sinus = Sinus(self.robot, 50, [self.robot.r_elbow_y], amp=20, freq=1, offset=-40)
        self.my_cosinus = Cosinus(self.robot, 50, [self.robot.r_arm_z], amp=20, freq=1, offset=-20)
        
    def setup(self):
        robot = self.robot

        for m in robot.r_arm:
            m.compliant = False
        
        robot.r_shoulder_x.goto_position(-20, 1, wait=False)
        robot.r_shoulder_y.goto_position(-30, 1, wait=False)
        robot.r_arm_z.goto_position(100, 2, wait=False)
        robot.r_elbow_y.goto_position(-100, 2, wait=True)

        self.my_sinus.start()
        self.my_cosinus.start()

    def teardown(self):
        robot = self.robot

        self.my_sinus.stop()
        self.my_cosinus.stop()

        for m in robot.r_arm:
            m.compliant = True

        time.sleep(1)

    def update(self):
        pass
Exemplo n.º 2
0
    def setup(self):
        self.idle = IdlePosture(self.robot, 1.0)
        self.idle.start()
        self.idle.wait_to_stop()

        self.sinus = [
            Sinus(self.robot,
                  10., [
                      self.robot.m3,
                  ],
                  amp=5,
                  freq=.1,
                  offset=self.robot.m3.present_position),
            Sinus(self.robot,
                  10., [self.robot.m5],
                  amp=10,
                  freq=.1,
                  offset=self.robot.m5.present_position,
                  phase=3.14),
        ]
        import time
        time.sleep(2)
        [s.start() for s in self.sinus]

        for m in self.robot.motors:
            m.led = 'blue'
Exemplo n.º 3
0
    def __init__(self, robot):
        LoopPrimitive.__init__(self, robot, 1)

        self.freq = 0.1

        self.sinus = [
            Sinus(self.robot,
                  50, [self.robot.shoulder_pitch],
                  amp=30,
                  freq=self.freq,
                  offset=15),
            Sinus(self.robot,
                  50, [self.robot.shoulder_roll],
                  amp=30,
                  freq=self.freq,
                  offset=30),
            Sinus(self.robot,
                  50, [self.robot.elbow_pitch],
                  amp=30,
                  freq=self.freq,
                  offset=30),
            Sinus(self.robot,
                  50, [self.robot.arm_yaw],
                  amp=30,
                  freq=self.freq,
                  offset=40),
        ]
Exemplo n.º 4
0
class WaveBehave(pypot.primitive.LoopPrimitive):

    def __init__(self, robot, freq):
        pypot.primitive.LoopPrimitive.__init__(self, robot, freq)

        self.my_sinus = Sinus(self.robot, 50, [self.robot.l_elbow_y, ], amp=30, freq=1, offset=-90)

    def setup(self):
        robot = self.robot

        for m in robot.l_arm:
            m.compliant = False

        robot.l_arm_z.goto_position(90, 1, wait=False)
        robot.l_shoulder_x.goto_position(90,1, wait=True)

        self.my_sinus.start()

    def teardown(self):
        robot = self.robot

        self.my_sinus.stop()

        self.robot.normal_behave.start()
    def update(self):
        pass
Exemplo n.º 5
0
class ComeMouvBehave(pypot.primitive.LoopPrimitive):
    def __init__(self, robot, freq):
        pypot.primitive.LoopPrimitive.__init__(self, robot, freq)

        self.my_sinus = Sinus(self.robot,
                              50, [self.robot.r_elbow_y, self.robot.r_arm_z],
                              amp=20,
                              freq=1,
                              offset=-20)

    def setup(self):
        robot = self.robot

        for m in robot.r_arm:
            m.compliant = False

        robot.r_shoulder_x.goto_position(-20, 1, wait=False)
        robot.r_shoulder_y.goto_position(-30, 1, wait=False)
        robot.r_arm_z.goto_position(100, 2, wait=False)
        robot.r_elbow_y.goto_position(-100, 2, wait=True)

        self.my_sinus.start()

    def teardown(self):
        robot = self.robot

        self.my_sinus.stop()

        for m in robot.r_arm:
            m.goto_position(0, 1, wait=False)

        time.sleep(1)

    def update(self):
        pass
Exemplo n.º 6
0
    def setup(self):
        for m in self.robot.motors:
            m.compliant = False

        self.sinus = [
            Sinus(self.robot, 25., [self.robot.m1], amp=90., freq=0.25),
            Sinus(self.robot,
                  25., [self.robot.m4],
                  amp=90.,
                  freq=0.25,
                  phase=180.),
            Sinus(self.robot, 25., [self.robot.m5], amp=30, freq=.8),
            Sinus(self.robot, 25., [self.robot.m6], amp=30, freq=.8,
                  phase=180),
            Sinus(self.robot, 25., self.robot.motors, amp=10, freq=.1)
        ]

        init_pos = dict([(m.name, 0.0) for m in self.robot.motors])
        self.robot.goto_position(init_pos, 3., wait=True)

        for m in self.robot.motors:
            m.moving_speed = 150.

        for m in self.robot.motors:
            m.led = 'green'

        [s.start() for s in self.sinus]
Exemplo n.º 7
0
    def setup(self):
        for m in self.robot.motors:
            m.compliant = False

        pos = {m.name: 0 for m in self.robot.motors}
        pos['elbow_pitch'] = 30
        self.robot.goto_position(pos, 2.0, wait=True)

        for m in self.robot.motors:
            m.moving_speed = 50.0

        self.sinus = [
            Sinus(self.robot,
                  50.0, [self.robot.elbow_pitch],
                  amp=15,
                  freq=0.25,
                  offset=30),
            Sinus(self.robot,
                  50.0, [self.robot.shoulder_roll],
                  amp=10,
                  freq=0.1,
                  offset=10),
            Sinus(self.robot, 50.0, [self.robot.arm_yaw], amp=3, freq=0.12)
        ]

        for s in self.sinus:
            s.start()
Exemplo n.º 8
0
class WaveBehave(pypot.primitive.LoopPrimitive):

    def __init__(self, robot, freq):
        pypot.primitive.LoopPrimitive.__init__(self, robot, freq)

        self.my_sinus = Sinus(self.robot, 50, [self.robot.l_elbow_y, ], amp=30, freq=1, offset=-90)

    def setup(self):
        robot = self.robot

        for m in robot.l_arm:
            m.compliant = False

        robot.l_arm_z.goto_position(90, 1, wait=False)
        robot.l_shoulder_x.goto_position(90,1, wait=True)

        self.my_sinus.start()

    def teardown(self):
        robot = self.robot

        self.my_sinus.stop()

        self.robot.normal_behave.start()
    def update(self):
        pass
Exemplo n.º 9
0
    def __init__(self, poppy_robot, freq):
        pypot.primitive.LoopPrimitive.__init__(self, poppy_robot, freq)

        self.poppy_robot = poppy_robot
        self.head = [
            Sinus(self.poppy_robot,
                  50, [
                      self.poppy_robot.head_z,
                  ],
                  amp=20,
                  freq=0.05),
            Sinus(self.poppy_robot,
                  50, [
                      self.poppy_robot.head_z,
                  ],
                  amp=15,
                  freq=0.01),
            Sinus(self.poppy_robot,
                  50, [
                      self.poppy_robot.head_y,
                  ],
                  amp=20,
                  freq=0.04),
            Sinus(self.poppy_robot,
                  50, [
                      self.poppy_robot.head_y,
                  ],
                  amp=5,
                  freq=0.09),
        ]
Exemplo n.º 10
0
    def __init__(self, robot, freq):
        pypot.primitive.LoopPrimitive.__init__(self, robot, freq)

        self.my_sinus = Sinus(self.robot,
                              50, [self.robot.r_elbow_y, self.robot.r_arm_z],
                              amp=20,
                              freq=1,
                              offset=-20)
Exemplo n.º 11
0
    def __init__(self, robot, freq):
        pypot.primitive.LoopPrimitive.__init__(self, robot, freq)

        self.my_sinus = Sinus(self.robot,
                              50, [
                                  self.robot.head_y,
                              ],
                              amp=8,
                              freq=1,
                              offset=10)
Exemplo n.º 12
0
    def __init__(self, robot, freq):
        pypot.primitive.LoopPrimitive.__init__(self, robot, freq)

        sinus_args = [{
            'motor_list': [
                self.robot.head_z,
            ],
            'amp': 20,
            'freq': 0.05
        }, {
            'motor_list': [
                self.robot.head_z,
            ],
            'amp': 15,
            'freq': 0.1
        }, {
            'motor_list': [
                self.robot.head_y,
            ],
            'amp': 20,
            'freq': 0.04
        }, {
            'motor_list': [
                self.robot.head_y,
            ],
            'amp': 5,
            'freq': 0.09
        }]

        self.head_sinus = [Sinus(self.robot, 50, **s) for s in sinus_args]
Exemplo n.º 13
0
class NoBehave(pypot.primitive.LoopPrimitive):

    def __init__(self, robot, freq):
        pypot.primitive.LoopPrimitive.__init__(self, robot, freq)
        
        self.my_sinus = Sinus(self.robot, 50, [self.robot.head_z, ], amp=20, freq=0.9, offset=0, phase=0)

    def setup(self):
        self.robot.head_y.compliant = False

        self.my_sinus.start()

    def teardown(self):
        self.my_sinus.stop()

    def update(self):
        pass
Exemplo n.º 14
0
class YesBehave(pypot.primitive.LoopPrimitive):

    def __init__(self, robot, freq):
        pypot.primitive.LoopPrimitive.__init__(self, robot, freq)

        self.my_sinus = Sinus(self.robot, 50, [self.robot.head_y, ], amp=8, freq=1, offset=10)

    def setup(self):
        self.robot.head_y.compliant = False

        self.my_sinus.start()

    def teardown(self):
        self.my_sinus.stop()

    def update(self):
        pass
Exemplo n.º 15
0
    def run(self):
        self.robot.goto_position({
            'm21': 120,
            'm22': 45,
            'm23': 0,
            'm24': 30,
            }, 1, wait=True)

        self.robot.m24.moving_speed = 0
        s = Sinus(self.robot, 25., [self.robot.m24], amp=50, offset=30, freq=0.75)
        s.start()
        time.sleep(3)
        s.stop()

        self.robot.goto_position({
            'm21': 0,
            'm22': 0,
            'm23': 0,
            'm24': 0,
            }, 1, wait=True)
Exemplo n.º 16
0
    def __init__(self, poppy_robot, swing_frequency=0.5):
        pypot.primitive.LoopPrimitive.__init__(self, poppy_robot, 10)
        self.poppy_robot = poppy_robot

        amp = 50
        offset = 60

        motors_list = [self.poppy_robot.l_knee_y, self.poppy_robot.r_knee_y]

        self.legs_sinus = [Sinus(self.poppy_robot, 50, motors_list, amp, swing_frequency, offset),
                    ]
Exemplo n.º 17
0
    def run(self):
        self.robot.goto_position({
            'r_shoulder_x': 120,
            'r_shoulder_motor_y': 45,
            'r_upper_arm_z': 0,
            'r_forearm_y': 30,
            }, 1, wait=True)

        self.robot.r_forearm_y.moving_speed = 0
        s = Sinus(self.robot, 25., [self.robot.r_forearm_y], amp=50, offset=30, freq=0.75)
        s.start()
        time.sleep(3)
        s.stop()

        self.robot.goto_position({
            'r_shoulder_x': 0,
            'r_shoulder_motor_y': 0,
            'r_upper_arm_z': 0,
            'r_forearm_y': 0,
            }, 1, wait=True)
Exemplo n.º 18
0
    def run(self):
        self.robot.goto_position(
            {
                'r_shoulder_x': 120,
                'r_shoulder_motor_y': 45,
                'r_upper_arm_z': 0,
                'r_forearm_y': 30,
            },
            1,
            wait=True)

        self.robot.r_forearm_y.moving_speed = 0
        s = Sinus(self.robot,
                  25., [self.robot.r_forearm_y],
                  amp=50,
                  offset=30,
                  freq=0.75)
        s.start()
        time.sleep(3)
        s.stop()

        self.robot.goto_position(
            {
                'r_shoulder_x': 0,
                'r_shoulder_motor_y': 0,
                'r_upper_arm_z': 0,
                'r_forearm_y': 0,
            },
            1,
            wait=True)
Exemplo n.º 19
0
    def __init__(self, robot, freq):
        pypot.primitive.LoopPrimitive.__init__(self, robot, freq)

        sinus_args = [{
            'motor_list': [
                self.robot.abs_z,
            ],
            'amp': 4,
            'freq': 0.2
        }, {
            'motor_list': [
                self.robot.bust_x,
            ],
            'amp': 4,
            'freq': 0.1
        }]

        self.head_sinus = [Sinus(self.robot, 50, **s) for s in sinus_args]
Exemplo n.º 20
0
    def __init__(self, robot, freq):
        pypot.primitive.LoopPrimitive.__init__(self, robot, freq)

        sinus_args = [{
            'motor_list': [
                self.robot.r_shoulder_x,
            ],
            'amp': 2,
            'freq': 0.2,
            'offset': 0,
            'phase': 66
        }, {
            'motor_list': [
                self.robot.r_shoulder_x,
            ],
            'amp': 0.8,
            'freq': 0.5,
            'offset': 0,
            'phase': 66
        }, {
            'motor_list': [
                self.robot.r_elbow_y,
            ],
            'amp': 2,
            'freq': 0.5,
            'offset': 0,
            'phase': 75
        }, {
            'motor_list': [
                self.robot.r_elbow_y,
            ],
            'amp': 0.3,
            'freq': 0.2,
            'phase': 75
        }, {
            'motor_list': [
                self.robot.r_arm_z,
            ],
            'amp': 3,
            'freq': 0.2,
            'phase': 78
        }]

        self.all_sinus = [Sinus(self.robot, 50, **s) for s in sinus_args]
Exemplo n.º 21
0
    def setup(self):
        for m in self.robot.motors:
            m.compliant = False

        self.move_freq = 0.5
        self.sinus = [
            Sinus(self.robot, 25., [self.robot.m6], amp=30., freq=self.move_freq),
            Sinus(self.robot, 25., [self.robot.m5], amp=30., freq=self.move_freq),
            Sinus(self.robot, 25., [self.robot.m4], amp=15., freq=self.move_freq),
            Sinus(self.robot, 25., [self.robot.m3], amp=5., freq=self.move_freq),
            Sinus(self.robot, 25., [self.robot.m2], amp=10., freq=self.move_freq),
            Sinus(self.robot, 25., [self.robot.m1], amp=15., freq=self.move_freq),

            # Sinus(self.robot, 25., [self.robot.m5], amp=30, freq=.8),
            # Sinus(self.robot, 25., [self.robot.m6], amp=30, freq=.8, phase=180),

            # Sinus(self.robot, 25., self.robot.motors, amp=10, freq=.1)
        ]

        self.init_pos = {
            'm1': 0.0,
            'm2': -110.,
            'm3': 65.0,
            'm4': 0.0,
            'm5': 34.0,
            'm6': 20.0,
        }

        #dict([(m.name, 0.0) for m in self.robot.motors])
        self.robot.goto_position(self.init_pos, 1., wait=True)

        for m in self.robot.motors:
            m.moving_speed = 10.#15.

        for m in self.robot.motors:
            m.led = 'green'

        [s.start() for s in self.sinus]
Exemplo n.º 22
0
 def __init__(self, robot, freq):
     pypot.primitive.LoopPrimitive.__init__(self, robot, freq)
     
     self.my_sinus = Sinus(self.robot, 50, [self.robot.r_elbow_y], amp=20, freq=1, offset=-40)
     self.my_cosinus = Cosinus(self.robot, 50, [self.robot.r_arm_z], amp=20, freq=1, offset=-20)
Exemplo n.º 23
0
    def __init__(self, robot, freq):
        pypot.primitive.LoopPrimitive.__init__(self, robot, freq)

        self.my_sinus = Sinus(self.robot, 50, [self.robot.l_elbow_y, ], amp=30, freq=1, offset=-90)
Exemplo n.º 24
0
    def __init__(self, robot, freq):
        pypot.primitive.LoopPrimitive.__init__(self, robot, freq)

        self.my_sinus = Sinus(self.robot, 50, [self.robot.head_y, ], amp=8, freq=1, offset=10)
Exemplo n.º 25
0
    def __init__(self, poppy_robot, freq):
        pypot.primitive.LoopPrimitive.__init__(self, poppy_robot, freq)

        self.poppy_robot = poppy_robot
        self.body = [
            Sinus(self.poppy_robot,
                  50, [
                      self.poppy_robot.abs_z,
                  ],
                  amp=3,
                  freq=0.2),
            Sinus(self.poppy_robot,
                  50, [
                      self.poppy_robot.abs_z,
                  ],
                  amp=0.8,
                  freq=0.5),
            Sinus(self.poppy_robot,
                  50, [
                      self.poppy_robot.l_shoulder_x,
                  ],
                  amp=2,
                  freq=0.2,
                  offset=5),
            Sinus(self.poppy_robot,
                  50, [
                      self.poppy_robot.l_shoulder_x,
                  ],
                  amp=0.8,
                  freq=0.5),
            Sinus(self.poppy_robot,
                  50, [
                      self.poppy_robot.r_shoulder_x,
                  ],
                  amp=2,
                  freq=0.2,
                  offset=-5,
                  phase=66),
            Sinus(self.poppy_robot,
                  50, [
                      self.poppy_robot.r_shoulder_x,
                  ],
                  amp=0.8,
                  freq=0.5,
                  phase=66),
            Sinus(self.poppy_robot,
                  50, [
                      self.poppy_robot.l_shoulder_y,
                  ],
                  amp=3,
                  freq=0.2,
                  offset=15),
            Sinus(self.poppy_robot,
                  50, [
                      self.poppy_robot.l_shoulder_y,
                  ],
                  amp=0.8,
                  freq=0.5),
            Sinus(self.poppy_robot,
                  50, [
                      self.poppy_robot.r_shoulder_y,
                  ],
                  amp=3,
                  freq=0.1,
                  offset=15,
                  phase=123),
            Sinus(self.poppy_robot,
                  50, [
                      self.poppy_robot.r_shoulder_y,
                  ],
                  amp=0.8,
                  freq=0.5,
                  phase=123),
            Sinus(self.poppy_robot,
                  50, [
                      self.poppy_robot.l_elbow_y,
                  ],
                  amp=2,
                  freq=0.5,
                  offset=-25),
            Sinus(self.poppy_robot,
                  50, [
                      self.poppy_robot.l_elbow_y,
                  ],
                  amp=0.3,
                  freq=0.2),
            Sinus(self.poppy_robot,
                  50, [
                      self.poppy_robot.r_elbow_y,
                  ],
                  amp=2,
                  freq=0.5,
                  offset=-25,
                  phase=75),
            Sinus(self.poppy_robot,
                  50, [
                      self.poppy_robot.r_elbow_y,
                  ],
                  amp=0.3,
                  freq=0.2,
                  phase=75),
            Sinus(self.poppy_robot,
                  50, [
                      self.poppy_robot.l_arm_z,
                  ],
                  amp=3,
                  freq=0.2),
            Sinus(self.poppy_robot,
                  50, [
                      self.poppy_robot.r_arm_z,
                  ],
                  amp=3,
                  freq=0.2,
                  phase=78)
        ]
Exemplo n.º 26
0
 def setup(self):
     self.all_sinus = [Sinus(self.robot, 50, **s) for s in self.sinus_args]
     [all_sinus.start() for all_sinus in self.all_sinus]
Exemplo n.º 27
0
    def __init__(self, robot, freq):
        pypot.primitive.LoopPrimitive.__init__(self, robot, freq)

        self.my_sinus = Sinus(self.robot, 50, [self.robot.l_elbow_y, ], amp=30, freq=1, offset=-90)
Exemplo n.º 28
0
 def __init__(self, robot, freq):
     pypot.primitive.LoopPrimitive.__init__(self, robot, freq)
     
     self.my_sinus = Sinus(self.robot, 50, [self.robot.head_z, ], amp=20, freq=0.9, offset=0, phase=0)