ROS node setup
An overview of the current ROS node setups for the various robot heads can be found here. Some of that content is duplicated below.
- 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
- 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.
rosrun basic_head_api head_ctrl.py roslaunch rosbridge_server rosbridge_websocket.launch cd path/to/ros_motors_webui && python3 -m http.server
Note: robo_blender can then connect to pau2motors, but this setup is sufficient to see tracking in Blender space.
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
- Open arrow heads - asynchronous ROS topic messages.
- Solid arrow heads - synchronous ROS service calls
- Dashed lines with solid arrow heads - ROS service replies