Classical algorithm engineer¶
For engineers who keep their own vision, planning, or visual-servoing stack and need a stable Python / ROS 2 interface to the robot.
1. Workspace and a moving robot¶
Install Environment — Ubuntu 24.04, ROS 2 Jazzy.
open-deploy-ws Setup or a lean-branch how-to if you are on a single public robot.
Run Mock Demo — confirm FSM / motion before hardware.
Switch Robot —
robot:=key and end-effectortype/left_type/right_type.
2. Install the Python interface¶
fa-py-libraries —
./init.sh all(Python 3.12).Python Interface —
ROS2RobotInterface, handlers, read state.ros2_robot_interface — API names used on those pages.
Entry is the fa-py-libraries env, not pip install ros2-robot-interface on system Python.
3. Hook your own vision or servoing¶
This site does not document a vision-guided or visual-servoing pipeline (no camera calibration how-to, no servo gain list).
Use the interface as the robot side of your loop:
Cartesian:
left_arm_handler.send_target_stamped/get_poseon ros2_robot_interfaceJoints:
left_arm_handler.send_joint_positions/get_joint_stateBlocking MoveL / MoveJ:
execute_movel_action/execute_joint_trajectory_action(Action, not the topic rows)FSM: FSM and Topics (
/fsm_commandisstd_msgs/Int32; WBC/mode_commandneeds 全身)
Camera plugins under lerobot_ros2 (lerobot_camera_ros2) are for dataset recording, not a visual-servo controller.
4. Optional: see the robot while you debug¶
ros2-viser — ./run.sh viser after the stack is up.