计算机使用智能体分类English
R07.09.01.06 · 任务小类

机器人描述文件编写

Robot description authoring (URDF/MJCF)

Write and fix URDF/MJCF/USD robot descriptions that load, collide and move correctly (control class).

20 条本项目编写的提案 · 分类 v1.1 · 新增基准运行 0 次。下方验证方式与部分得分规则是设计,不是执行结果。

典型应用
text editor · ROS 2 · MuJoCo · Isaac Sim importer
小类 GUI 需求标签
CL · CLI 足够

任务提案 · 20

展开查看完整原文与建议检查方式;两种界面均保留提案英文原文。

R07.09.01.06-T01 Repair a URDF that fails check_urdf

原始指令

input/arm6.urdf fails to parse: a joint references a missing parent link, two joints share the name 'joint_4', and one inertia tensor is missing. Fix it minimally so check_urdf passes and the tree is base_link -> link_1 -> ... -> tool0, writing out/arm6_fixed.urdf.

平台
lin · Linux
应用
text editor · ROS 2 (check_urdf)
交互表面
term · 终端
GUI 需求 · 任务设定
CL · CLI 足够
GUI 需求 · 普通权限
CL · CLI 足够
交互原语
code · 代码与命令
工作产物
WP06 · 代码 / 工程
条件
未声明
提案难度
2 / 5

建议验证方式

check_urdf succeeds; parsed tree equals expected chain of 8 links; joint names unique with original names elsewhere unchanged; all links with mass > 0 have positive-definite inertia; XML diff vs input limited to the faulty elements (<= 12 changed lines).

建议部分得分

40% parses and tree correct; 25% duplicate joint fixed; 20% inertia added validly; 15% minimal diff

R07.09.01.06-T02 URDF for a two-link planar arm from a spec table

原始指令

Write out/planar2.urdf for the 2-link planar arm in input/spec.md: link lengths 0.40 m and 0.30 m, revolute joints about +Z with limits +/-150 deg and +/-135 deg, cylinder links of given radius and mass (uniform density inertias), and a fixed 'ee' frame at the tip.

平台
lin · Linux mac · macOS win · Windows
应用
text editor · Python (urdfpy/pinocchio)
交互表面
term · 终端
GUI 需求 · 任务设定
CL · CLI 足够
GUI 需求 · 普通权限
CL · CLI 足够
交互原语
code · 代码与命令
工作产物
WP06 · 代码 / 工程
条件
未声明
提案难度
2 / 5

建议验证方式

Grader loads with pinocchio: FK of ee at 20 random joint configs within 1e-6 m of analytic; joint limits exact in radians; inertias equal analytic cylinder values about the right axes within 1e-6.

建议部分得分

45% FK correct; 25% limits and axes; 30% inertial parameters

R07.09.01.06-T03 Mount a parallel gripper on a UR5e via xacro

原始指令

Extend the UR5e description (input/ur5e.urdf.xacro) with the gripper xacro in input/gripper/, attached by a fixed joint 0.15 m along tool0's +Z with the gripper rotated 90 deg about Z, and expose a new frame 'tcp' at the fingertip center. Generate out/ur5e_gripper.urdf.

平台
lin · Linux
应用
xacro · ROS 2
交互表面
term · 终端
GUI 需求 · 任务设定
CL · CLI 足够
GUI 需求 · 普通权限
CL · CLI 足够
交互原语
code · 代码与命令
工作产物
WP06 · 代码 / 工程
条件
未声明
提案难度
3 / 5

建议验证方式

xacro expands without errors; check_urdf passes; transform tool0 -> tcp equals spec (translation and rotation within 1e-6) via tf/pinocchio; gripper links present with original inertias; no self-collision at the UR5e home pose (FCL check).

建议部分得分

30% clean expansion; 40% mount and tcp transform exact; 30% collision-free at home

R07.09.01.06-T04 Convert URDF to MJCF with damping and armature

原始指令

Convert input/panda.urdf to MJCF (out/panda.xml) for MuJoCo 3, setting per-joint damping and armature from input/joint_params.csv, position actuators with kp from the table, and a floor plane. The model must load and hold the home pose under gravity for 5 s.

平台
lin · Linux mac · macOS win · Windows
应用
MuJoCo · Python
交互表面
term · 终端
GUI 需求 · 任务设定
CL · CLI 足够
GUI 需求 · 普通权限
CL · CLI 足够
交互原语
code · 代码与命令
工作产物
WP06 · 代码 / 工程
条件
未声明
提案难度
3 / 5

建议验证方式

mujoco.MjModel loads; per-joint damping/armature equal CSV; 7 position actuators with kp; simulating 5 s with ctrl = home keeps every joint within 0.02 rad of home; meshes resolved.

建议部分得分

25% loads with meshes; 35% joint parameters exact; 20% actuators; 20% holds pose

R07.09.01.06-T05 Compute correct inertias from meshes

原始指令

The inertial blocks in input/rover.urdf are placeholders (mass 1, identity inertia). Compute mass, COM and inertia tensor for each of the 9 links from their collision meshes in input/meshes/ and the densities in input/materials.csv, and write out/rover_inertial.urdf.

平台
lin · Linux mac · macOS win · Windows
应用
Python (trimesh) · text editor
交互表面
term · 终端 api · API / SDK
GUI 需求 · 任务设定
CL · CLI 足够
GUI 需求 · 普通权限
CL · CLI 足够
交互原语
code · 代码与命令
工作产物
WP06 · 代码 / 工程
条件
未声明
提案难度
4 / 5

建议验证方式

Grader recomputes with trimesh: masses within 1 pct, COMs within 1 mm, inertia tensors (in the link frame, origin rpy handled) within 2 pct Frobenius; all tensors positive definite and satisfy triangle inequalities.

建议部分得分

30% masses; 30% COMs; 40% inertia tensors in correct frames

R07.09.01.06-T06 Primitive collision geometry that avoids false self-collisions

原始指令

input/humanoid_arm.urdf uses dense meshes for collision, causing slow sim and self-collision at rest. Replace each link's collision with capsules/boxes so total collision volume is within 15 pct of the mesh volume, no self-collision occurs at the 5 poses in input/poses.yaml, and adjacent links still collide when folded past joint limits.

平台
lin · Linux
应用
Python (pybullet/FCL) · text editor
交互表面
term · 终端
GUI 需求 · 任务设定
CL · CLI 足够
GUI 需求 · 普通权限
CL · CLI 足够
交互原语
code · 代码与命令
工作产物
WP06 · 代码 / 工程
条件
未声明
提案难度
4 / 5

建议验证方式

Grader: only primitive collision geoms; per-link volume ratio 0.85-1.15; FCL reports no collisions at the 5 poses (excluding adjacent pairs if declared disabled); folded test pose produces contact; visual meshes unchanged.

建议部分得分

30% primitives with volume fit; 40% no collisions at poses; 30% contact still detected when folded

R07.09.01.06-T07 Mimic joints in URDF and equality constraints in MJCF

原始指令

Make the two-finger gripper in input/gripper.urdf use one actuated joint: the right finger mimics the left with multiplier -1 in URDF, and in the MJCF conversion (out/gripper.xml) use an equality joint constraint so closing moves both fingers symmetrically.

平台
lin · Linux mac · macOS win · Windows
应用
text editor · MuJoCo · ROS 2
交互表面
term · 终端
GUI 需求 · 任务设定
CL · CLI 足够
GUI 需求 · 普通权限
CL · CLI 足够
交互原语
code · 代码与命令
工作产物
WP06 · 代码 / 工程
条件
未声明
提案难度
3 / 5

建议验证方式

URDF: mimic tag with joint, multiplier -1, offset 0; robot_state_publisher shows symmetric finger poses; MJCF: equality joint with polycoef [0 -1 0 0 0]; MuJoCo sim of actuator ramp gives finger positions symmetric within 1e-3 m throughout.

建议部分得分

40% URDF mimic correct; 40% MJCF equality correct; 20% symmetric in simulation

R07.09.01.06-T08 Tendon-driven finger in MJCF reaching a target pose

原始指令

Author out/finger.xml: a 3-phalanx planar finger with hinge joints, a spatial tendon routed over sites on each phalanx driving flexion, a passive extensor spring per joint, and a motor on the tendon. With ctrl = 0.6 the fingertip must settle within 3 mm of the target in input/target.json.

平台
lin · Linux mac · macOS win · Windows
应用
MuJoCo · Python
交互表面
term · 终端
GUI 需求 · 任务设定
CL · CLI 足够
GUI 需求 · 普通权限
CL · CLI 足够
交互原语
code · 代码与命令
工作产物
WP06 · 代码 / 工程
条件
未声明
提案难度
5 / 5

建议验证方式

MuJoCo loads; model has 3 hinges, one spatial tendon through >= 6 sites, joint stiffness > 0, one tendon actuator; after 3 s sim with ctrl 0.6 fingertip site within 3 mm of target and velocity < 1e-3; with ctrl 0 finger returns near straight.

建议部分得分

30% structure valid; 20% tendon routing; 35% target reached; 15% passive return

R07.09.01.06-T09 Parametric xacro generating three arm variants

原始指令

Refactor input/arm.urdf into out/arm.urdf.xacro with args reach (0.6/0.8/1.0 m), payload_class (light/heavy) controlling link radius and motor mass via a properties table, and prefix for multi-robot use. Generate out/arm_{060,080,100}.urdf with prefixes a_, b_, c_.

平台
lin · Linux
应用
xacro · ROS 2
交互表面
term · 终端
GUI 需求 · 任务设定
CL · CLI 足够
GUI 需求 · 普通权限
CL · CLI 足够
交互原语
code · 代码与命令
工作产物
WP06 · 代码 / 工程
条件
未声明
提案难度
3 / 5

建议验证方式

xacro with each arg set expands; reach (max FK distance) equals arg within 1 mm; link/joint names carry prefixes; heavy variant inertial masses per table; default args reproduce the original URDF numerically.

建议部分得分

30% three variants generated; 30% reach correct; 20% prefixes; 20% defaults reproduce original

R07.09.01.06-T10 Differential-drive base with ros2_control tags

原始指令

Write out/diffbot.urdf.xacro for a differential-drive base (wheel radius 0.05 m, separation 0.30 m, caster) with a ros2_control system using gz_ros2_control, two velocity-command wheel joints, and a controller YAML for diff_drive_controller. In headless Gazebo it must drive 1.0 m forward at 0.2 m/s within 5 pct.

平台
lin · Linux
应用
ROS 2 · Gazebo · xacro
交互表面
term · 终端
GUI 需求 · 任务设定
CL · CLI 足够
GUI 需求 · 普通权限
CL · CLI 足够
交互原语
code · 代码与命令
工作产物
WP06 · 代码 / 工程
条件
未声明
提案难度
4 / 5

建议验证方式

Grader launches gz sim headless with the agent's launch file: controller_manager lists diff_drive_controller active; publishing cmd_vel 0.2 m/s for 5 s yields odometry and ground-truth displacement 1.0 +/-0.05 m with heading drift < 3 deg.

建议部分得分

25% URDF and ros2_control valid; 25% controllers load; 50% driving test passes

R07.09.01.06-T11 Fix joint axes so positive motion matches the datasheet

原始指令

On input/scara.urdf, joints 1, 2 and 4 rotate the wrong way and joint 3 (prismatic) moves up instead of down for positive values, compared with input/datasheet.pdf conventions. Fix axes/origins (not limits) so FK matches the 6 reference poses in input/ref_poses.csv.

平台
lin · Linux mac · macOS win · Windows
应用
text editor · Python (pinocchio)
交互表面
term · 终端
GUI 需求 · 任务设定
CL · CLI 足够
GUI 需求 · 普通权限
CL · CLI 足够
交互原语
code · 代码与命令
工作产物
WP06 · 代码 / 工程
条件
未声明
提案难度
3 / 5

建议验证方式

FK of the tool frame at the 6 reference joint vectors within 0.5 mm and 0.1 deg; joint limits unchanged; only axis/origin elements modified (XML diff).

建议部分得分

70% FK matches all reference poses; 15% limits unchanged; 15% minimal edits

R07.09.01.06-T12 Add a camera link with an optical frame (REP 103/105)

原始指令

Add a depth camera to input/mobile_base.urdf: link 'camera_link' mounted 0.20 m forward, 0.30 m up, pitched down 15 deg from base_link, plus 'camera_optical_frame' following the optical convention (z forward, x right, y down).

平台
lin · Linux
应用
text editor · ROS 2
交互表面
term · 终端
GUI 需求 · 任务设定
CL · CLI 足够
GUI 需求 · 普通权限
CL · CLI 足够
交互原语
code · 代码与命令
工作产物
WP06 · 代码 / 工程
条件
未声明
提案难度
2 / 5

建议验证方式

tf from base_link to camera_link equals spec within 1e-6; camera_link -> optical frame rotation equals rpy(-pi/2, 0, -pi/2); check_urdf passes; a point 1 m along optical +z maps to a point ahead and below the camera in base_link.

建议部分得分

45% camera mount transform; 45% optical frame convention; 10% parses

R07.09.01.06-T13 URDF to USD with physics properties for Isaac Sim

原始指令

Convert input/ur10e.urdf to out/ur10e.usd using the Isaac Sim URDF importer in headless Python (no GUI), with fixed base, joint drive stiffness/damping from input/drives.csv, convex-decomposition collisions, and self-collision disabled. The USD must load in a stage and hold its pose.

平台
lin · Linux
应用
Isaac Sim importer (Python) · USD
交互表面
term · 终端 api · API / SDK
GUI 需求 · 任务设定
AP · API 足够
GUI 需求 · 普通权限
CL · CLI 足够
交互原语
code · 代码与命令
工作产物
WP06 · 代码 / 工程
条件
未声明
提案难度
4 / 5

建议验证方式

pxr reads out/ur10e.usd: ArticulationRootAPI on the robot, fixed base joint, 6 revolute joints with DriveAPI stiffness/damping equal CSV, collision approximation convexDecomposition; headless sim 3 s keeps joints within 0.01 rad of initial.

建议部分得分

30% valid articulation; 35% drive parameters; 20% collision settings; 15% stable sim

R07.09.01.06-T14 Tune MJCF contacts so a grasp holds without slip

原始指令

In input/grasp_scene.xml, a parallel gripper drops a 0.3 kg block after 1 s. Tune friction, condim, solref/solimp and gripper actuator force (not the block mass or geometry) so the lifted block stays held for 5 s with slip below 2 mm, and the sim remains stable at timestep 0.002.

平台
lin · Linux mac · macOS win · Windows
应用
MuJoCo · Python
交互表面
term · 终端
GUI 需求 · 任务设定
CL · CLI 足够
GUI 需求 · 普通权限
CL · CLI 足够
交互原语
code · 代码与命令
工作产物
WP06 · 代码 / 工程
条件
未声明
提案难度
5 / 5

建议验证方式

Grader runs the provided lift script: block z-displacement relative to fingers <= 2 mm over 5 s; no NaNs or energy blow-up; block mass/geometry unchanged; penetration depth < 1 mm.

建议部分得分

50% block held 5 s; 25% slip under threshold; 25% stable and physical (no penetration, params plausible)

R07.09.01.06-T15 Gazebo world SDF with robot and objects

原始指令

Write out/warehouse.sdf: ground plane, sun, 3 boxes (0.5 m cubes, 5 kg) at the poses in input/boxes.yaml, a shelf model from input/models/shelf, and the robot from input/diffbot.urdf spawned at (1, 0, 0) facing +Y, with the sensors and contact system plugins enabled. It must load in headless gz sim.

平台
lin · Linux
应用
Gazebo · SDFormat
交互表面
term · 终端
GUI 需求 · 任务设定
CL · CLI 足够
GUI 需求 · 普通权限
CL · CLI 足够
交互原语
code · 代码与命令
工作产物
WP11 · 游戏 / 仿真状态
条件
未声明
提案难度
3 / 5

建议验证方式

gz sdf -k passes; headless gz sim loads; entity tree contains 3 boxes at poses within 1e-3, shelf, robot pose with yaw pi/2; box inertial masses 5 kg; plugins listed in world.

建议部分得分

25% valid SDF; 35% boxes and shelf placed; 25% robot spawned correctly; 15% plugins

R07.09.01.06-T16 Apply kinematic calibration to joint origins

原始指令

A calibration run produced input/calib.yaml with corrected joint origin offsets (xyz, rpy) for the 6 joints of input/arm6.urdf. Apply them to the URDF and verify: FK error vs the 30 measured tool poses in input/measured.csv must drop below 0.5 mm RMS.

平台
lin · Linux mac · macOS win · Windows
应用
Python (pinocchio) · text editor
交互表面
term · 终端
GUI 需求 · 任务设定
CL · CLI 足够
GUI 需求 · 普通权限
CL · CLI 足够
交互原语
code · 代码与命令
工作产物
WP06 · 代码 / 工程
条件
未声明
提案难度
4 / 5

建议验证方式

Grader computes FK RMS position error over measured poses: < 0.5 mm (original 4.1 mm); orientation RMS < 0.05 deg; only joint origin elements changed.

建议部分得分

60% position RMS under threshold; 25% orientation RMS; 15% only origins changed

R07.09.01.06-T17 Quadruped MJCF actuators that stand stably

原始指令

Complete input/quad.xml (12-DoF quadruped, actuators missing): add position actuators with gear, ctrlrange and forcerange from input/motor_spec.csv and kp/kv per joint, set joint armature, and a keyframe 'stand'. Starting from the keyframe, the robot must stand for 10 s without falling.

平台
lin · Linux mac · macOS win · Windows
应用
MuJoCo · Python
交互表面
term · 终端
GUI 需求 · 任务设定
CL · CLI 足够
GUI 需求 · 普通权限
CL · CLI 足够
交互原语
code · 代码与命令
工作产物
WP06 · 代码 / 工程
条件
未声明
提案难度
5 / 5

建议验证方式

Model loads; 12 actuators with spec values; keyframe exists; 10 s sim holding ctrl = stand keyframe: torso height within 3 cm of initial, roll/pitch < 5 deg, no actuator exceeds forcerange; ctrlrange respected.

建议部分得分

35% actuator parameters exact; 15% keyframe; 50% stands 10 s stably

R07.09.01.06-T18 Fix package URIs after moving a description package

原始指令

The robot description moved from package 'old_bot_description' to 'acme_bot_description' and meshes now live in meshes/visual and meshes/collision. Update input/acme_bot.urdf.xacro and its includes so all mesh and include references resolve, the model loads in RViz-equivalent tools and in MuJoCo via the converter.

平台
lin · Linux
应用
xacro · ROS 2 · MuJoCo
交互表面
term · 终端
GUI 需求 · 任务设定
CL · CLI 足够
GUI 需求 · 普通权限
CL · CLI 足够
交互原语
code · 代码与命令
工作产物
WP06 · 代码 / 工程
条件
未声明
提案难度
3 / 5

建议验证方式

Grader in a fresh workspace with only acme_bot_description: xacro expands; every package:// URI resolves to an existing file; no 'old_bot_description' string remains; MuJoCo compiles the converted model with all 23 meshes loaded.

建议部分得分

40% all URIs resolve; 20% no stale references; 40% loads in both toolchains

R07.09.01.06-T19 Merge fixed links and lump inertias

原始指令

input/manipulator.urdf has 11 fixed-joint helper links (flanges, covers) that slow down the solver. Merge each into its parent movable link, lumping mass, COM and inertia correctly (parallel-axis theorem) and keeping visual/collision geometry, except keep frames 'tool0' and 'camera_optical' as fixed links.

平台
lin · Linux mac · macOS win · Windows
应用
Python (urdfpy/pinocchio) · text editor
交互表面
term · 终端 api · API / SDK
GUI 需求 · 任务设定
CL · CLI 足够
GUI 需求 · 普通权限
CL · CLI 足够
交互原语
code · 代码与命令
工作产物
WP06 · 代码 / 工程
条件
未声明
提案难度
4 / 5

建议验证方式

Link count reduced by 11 with tool0 and camera_optical kept; total mass equal; each composite body's COM and inertia (in a common frame) equal to the original subtree within 1e-6; FK of kept frames identical; visuals preserved.

建议部分得分

25% correct links removed and kept; 45% mass properties preserved; 20% FK unchanged; 10% geometry kept

R07.09.01.06-T20 Humanoid leg with a closed-loop knee linkage in MJCF

原始指令

Model the leg in input/leg_drawing.pdf in MJCF (out/leg.xml): hip, thigh, a four-bar knee linkage closed with an equality connect constraint, shank and ankle. Driving the knee actuator through its range must produce the knee-angle curve in input/knee_curve.csv within 1 deg.

平台
lin · Linux mac · macOS win · Windows
应用
MuJoCo · Python
交互表面
term · 终端
GUI 需求 · 任务设定
CL · CLI 足够
GUI 需求 · 普通权限
CL · CLI 足够
交互原语
code · 代码与命令
工作产物
WP06 · 代码 / 工程
条件
未声明
提案难度
5 / 5

建议验证方式

Model loads; equality connect constraint violation < 1e-4 m during the sweep; knee angle vs actuator input matches the CSV within 1 deg at all 25 points; link lengths equal drawing within 0.5 mm.

建议部分得分

25% topology with closed loop; 20% dimensions; 15% constraint holds; 40% knee curve matches

已有研究映射

以下沿用研究目录中的基准与小类映射,不是逐题标注、执行记录或产品背书。

同工作流族的小类