plan_to_joints
Plans a joint-space motion from the current state to target joint positions without moving the robot; validates the trajectory against the safety envelope and returns a plan ID for execution.
Instructions
Plan (do NOT move) a joint-space motion from the current state to joint_positions [rad]. Returns a plan summary validated against the safety envelope; if status is not 'rejected', pass plan_id to execute_plan. Scaling above the policy cap is clamped.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| joint_positions | Yes | Target joint positions [rad], one per joint in the order ['fr3_joint1', 'fr3_joint2', 'fr3_joint3', 'fr3_joint4', 'fr3_joint5', 'fr3_joint6', 'fr3_joint7'] | |
| velocity_scaling | No | Fraction of max joint speed (0, 1] | |
| acceleration_scaling | No | Fraction of max joint accel (0, 1] |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| kind | Yes | ||
| notes | No | ||
| status | Yes | rejected plans can never be executed; needs_approval requires a human to approve | |
| dry_run | Yes | ||
| plan_id | Yes | ||
| duration_s | Yes | ||
| executable | Yes | ||
| expires_at | No | ISO-8601 UTC expiry of the plan handle | |
| violations | No | ||
| final_ee_pose | Yes | ||
| num_waypoints | Yes | ||
| force_monitoring | Yes | Whether the backend currently provides an external wrench estimate. Without one the server cannot enforce the contact force limit, and execute_plan refuses to move unless the policy sets force.require_wrench: false | |
| velocity_scaling | Yes | ||
| requires_approval | Yes | ||
| tcp_path_length_m | Yes | ||
| acceleration_scaling | Yes | ||
| max_joint_travel_rad | Yes | ||
| final_joint_positions | Yes | ||
| start_joint_positions | Yes | ||
| max_joint_velocity_ratio | Yes | Peak joint speed as a fraction of the joint limit | |
| max_joint_acceleration_ratio | Yes | Peak joint acceleration (estimated from the waypoint timing) as a fraction of the joint limit |