ROS node setup

From Hanson Robotics Wiki
Jump to: navigation, search

An overview of the current ROS node setups for the various robot heads can be found here. Some of that content is duplicated below.

Minimal Dmitry

Note:

  • ros_pololu_servo and dynamixel_controllers nodes require having motors plugged into the computer.
  • All topics pau2motors subscribes and publishes to, are defined in robots_config


Minimal Webui

Note:

  • rosbridge extends ROS topic and service access to websockets, to which ros_motors_webui connect.
  • ros_motors_webui is being rewritten by Henrikas at the moment and might now connect to nodes like tts_speech and robo_blender.

Run:

rosrun basic_head_api head_ctrl.py
roslaunch rosbridge_server rosbridge_websocket.launch
cd path/to/ros_motors_webui && python3 -m http.server

Face Tracking

Note: robo_blender can then connect to pau2motors, but this setup is sufficient to see tracking in Blender space.

Run:

roslaunch ros2opencv uvc_cam.launch device:=/dev-host/video0
roslaunch pi_face_tracker face_tracker_uvc_cam.launch
rosrun eva_behavior general_behavior.py
cd path/to/robo_blender/src && blender robo.blend
#Then press 'Run Script' inside Blender


Notation

  • Open arrow heads - asynchronous ROS topic messages.
  • Solid arrow heads - synchronous ROS service calls
  • Dashed lines with solid arrow heads - ROS service replies

Diagrams on stackedit

the diagrams can be viewed here