robot_control
Control physical and virtual robots through a unified interface. Perform actions like movement, status checks, emergency stops, and synchronization between robot types.
Instructions
Unified robot control (works for both physical bot and virtual bot).
This portmanteau tool provides a unified interface for controlling both physical robots (via ROS) and virtual robots (via Unity/VRChat). The tool automatically routes commands to the appropriate handler based on robot type.
Args: robot_id: Robot identifier (e.g., "scout_01", "vbot_scout_01"). action: Operation to perform: - "get_status": Get robot status (battery, position, state) - "move": Control movement (linear/angular velocity) - "stop": Emergency stop - "return_to_dock": Return to charging dock (physical bot only) - "stand": Stand up (Unitree G1, physical bot only) - "sit": Sit down (Unitree G1, physical bot only) - "walk": Walking gait (Unitree, physical bot only) - "sync_vbot": Sync virtual bot with physical bot state linear: Linear velocity (m/s) for move action. angular: Angular velocity (rad/s) for move action. duration: Movement duration (seconds). **kwargs: Additional action-specific parameters.
Returns: Dictionary containing operation result.
Examples: Get robot status: result = await robot_control(robot_id="scout_01", action="get_status")
Move robot forward:
result = await robot_control(
robot_id="scout_01",
action="move",
linear=0.2,
angular=0.0
)
Stop robot:
result = await robot_control(robot_id="scout_01", action="stop")Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| robot_id | Yes | ||
| action | Yes | ||
| linear | No | ||
| angular | No | ||
| duration | No |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||