Adaptation Requirements
Preparing the URDF File
Please prepare the URDF file for your robot with the following requirements:
- Ensure joint limits in the URDF match the physical robot's joint limits to avoid self-collision.
- Include all degrees of freedom (DOF) you wish to control, set as "revolute" or "prismatic" joints. This includes but is not limited to: arms, grippers, dexterous hands, head, lifting torso, waist, chassis.
- Use appropriately sized mesh files in the URDF. The total size of all meshes should not exceed 50MB.
Joint Feedback Interface Testing
Obtain joint position feedback for all DOFs you wish to control, such as:
- Arms
- Grippers or dexterous hands
- Head
- Waist
- Lifting torso
Publish the feedback as a JointState message to the /io_teleop/joint_states
topic via ROS1 or ROS2.
- Ensure
JointState.name
matches the joint names in the URDF. - Populate
JointState.position
with joint angles (in radians). - Update the header timestamp.
Verify using:
rostopic hz /io_teleop/joint_states
(ROS1)ros2 topic hz /io_teleop/joint_states
(ROS2)
Ensure stable frequency and that the values match the robot's actual joint angles dynamically.
While no specific frequency is required, ensure the feedback interface does not block control calls. For training embodied intelligence models, a feedback frequency of 15Hz or higher is recommended.
Control Interface Testing
TeleXperience publishes control commands at 100Hz. Ensure the robot's modules can respond at this frequency.
1. Robotic Arm
TeleXperience provides two types of control commands:
a. (Recommended) Joint Space:
TeleXperience's built-in controller:
- Converts VR end-effector pose commands and follower joint references into smooth joint space commands (in radians).
- Ensures the arm responds even to unreachable commands by moving to the closest achievable pose within limits.
Use this tool to test your joint space control interface. Follow the README for guidance.
Ensure safety during testing!
b. End-Effector Cartesian Space:
If using Cartesian space control, ensure:
- The interface supports 100Hz real-time response without blocking.
- The arm responds to unreachable commands by moving to the closest achievable pose, avoiding sudden stops or jumps.
2. End-Effectors
For grippers or dexterous hands, a 100Hz control interface is ideal. If not feasible, reduce the control frequency during real-world operation.
3. Chassis and Lifting Torso
Provide a 100Hz velocity control interface. If not feasible, reduce the control frequency during real-world operation.
4. Head, Waist, and Other DOFs
Provide a 100Hz joint position control interface. If not feasible, reduce the control frequency during real-world operation.
Image Feedback Interface Testing
TeleXperience supports image synchronization. To display robot perception images in VR, publish image data in ROS1 or ROS2 CompressedImage format with the following specifications:
- Resolutions: 1920x1080, 1440x1080, 1280x720, 960x720, 640x480
- Frame rates: 30fps, 15fps, 10fps
- Up to 4 simultaneous image streams supported
Use rostopic hz
or ros2 topic hz
to verify stable image frequency.
Industrial PC Environment Requirements
Prepare a host machine with a ROS environment to deploy the robot's industrial PC node.
You may use ROS1 or ROS2, but ROS2 versions above Humble are not supported.
If the robot's onboard computer allows, deploy the industrial PC node directly on it. Otherwise, prepare an additional computer with a ROS environment to deploy the node and enable communication between TeleXperience and the robot.