You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 

1.2 KiB

Motion Commands in ROS2

Quickstart

Sending motion commands is as easy as:

  1. Launch the ROS2 driver in a terminal:
    ros2 launch stretch_core stretch_driver.launch.py
    
  2. Open iPython and type the following code, one line at a time:
    import hello_helpers.hello_misc as hm
    node = hm.HelloNode.quick_create('temp')
    node.move_to_pose({'joint_lift': 0.4}, blocking=True)
    node.move_to_pose({'joint_wrist_yaw': 0.0, 'joint_wrist_roll': 0.0}, blocking=True)
    

Writing a node

You can also write a ROS2 node to send motion commands:

import hello_helpers.hello_misc as hm

class MyNode(hm.HelloNode):
    def __init__(self):
        hm.HelloNode.__init__(self)

    def main(self):
        hm.HelloNode.main(self, 'my_node', 'my_node', wait_for_first_pointcloud=False)

        # my_node's main logic goes here
        self.move_to_pose({'joint_lift': 0.6}, blocking=True)
        self.move_to_pose({'joint_wrist_yaw': -1.0, 'joint_wrist_pitch': -1.0}, blocking=True)

node = MyNode()
node.main()

Copy the above into a file called "example.py" and run it using:

python3 example.py