Files
step2urdf/data/handtuned_arm.json
sunxianghui 93773f3887 Initial commit: step2urdf tool with handtuned JSON import.
Includes FastAPI backend, vendored step2urdf frontend, and A7 handtuned arm JSON for URDF generation.
2026-08-26 15:32:47 +08:00

222 lines
4.7 KiB
JSON
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{
"robot_name": "handtuned_arm",
"source": "manual UI screenshots 2026-08-26",
"unit_linear": "m",
"unit_angular": "rad",
"notes": [
"xyz/rpy 来自属性面板:相对 parent link,线性单位米、角度弧度。",
"旋转关节默认绕关节局部 Zaxis=[0,0,1]),姿态由 origin_rpy 决定。",
"导入时:线性量 ×1000→mm;挂在 base_link 下的关节会烘焙成 STEP 世界坐标(页面 FK 从世界原点起步)。"
],
"base_link": {
"name": "base_link",
"solid_names": ["Solid_56", "Solid_55"],
"origin_xyz": [0.1135, 0.6081, 0.0071],
"origin_rpy": [0.0, 0.0, 0.0],
"up_axis": "Z+"
},
"links": [
{
"name": "base_link",
"solid_names": ["Solid_56", "Solid_55"]
},
{
"name": "Link_1",
"solid_names": [
"Solid_54",
"Solid_53",
"Solid_52",
"Solid_48",
"Solid_47",
"Solid_51",
"Solid_49",
"Solid_50"
]
},
{
"name": "Link_2",
"solid_names": [
"Solid_41",
"Solid_42",
"Solid_45",
"Solid_46",
"Solid_43",
"Solid_40"
]
},
{
"name": "Link_3",
"solid_names": [
"Solid_44",
"Solid_39",
"Solid_33",
"Solid_29",
"Solid_38",
"Solid_37",
"Solid_35",
"Solid_36"
]
},
{
"name": "Link_4",
"solid_names": [
"Solid_26",
"Solid_32",
"Solid_24",
"Solid_23",
"Solid_34",
"Solid_30",
"Solid_25",
"Solid_31",
"Solid_28",
"Solid_27",
"Solid_22"
]
},
{
"name": "Link_5",
"solid_names": [
"Solid_21",
"Solid_15",
"Solid_17",
"Solid_16",
"Solid_20"
]
},
{
"name": "Link_6",
"solid_names": [
"Solid_11",
"Solid_12",
"Solid_8",
"Solid_13",
"Solid_9",
"Solid_14",
"Solid_19",
"Solid_18"
]
},
{
"name": "Link_7",
"solid_names": [
"Solid_6",
"Solid_5",
"Solid_2",
"Solid_10",
"Solid_1",
"Solid_4",
"Solid_3",
"Solid_7",
"Solid_0"
]
}
],
"joints": [
{
"name": "Joint_1",
"joint_type": "revolute",
"parent": "base_link",
"child": "Link_1",
"origin_xyz": [-0.048, 0.001, 0.0],
"origin_rpy": [0.0, 1.57, 0.0],
"axis": [0.0, 0.0, 1.0],
"limits": {
"lower": -3.142,
"upper": 3.142,
"effort": 10.0,
"velocity": 1.0
}
},
{
"name": "Joint_2",
"joint_type": "revolute",
"parent": "Link_1",
"child": "Link_2",
"origin_xyz": [0.0, -0.001, -0.062],
"origin_rpy": [0.0, 1.57, 0.0],
"axis": [0.0, 0.0, 1.0],
"limits": {
"lower": -3.142,
"upper": 3.142,
"effort": 10.0,
"velocity": 1.0
}
},
{
"name": "Joint_3",
"joint_type": "revolute",
"parent": "Link_2",
"child": "Link_3",
"origin_xyz": [0.0, -0.121, 0.0],
"origin_rpy": [1.57, 0.0, 0.0],
"axis": [0.0, 0.0, 1.0],
"limits": {
"lower": -3.142,
"upper": 3.142,
"effort": 10.0,
"velocity": 1.0
}
},
{
"name": "Joint_4",
"joint_type": "revolute",
"parent": "Link_3",
"child": "Link_4",
"origin_xyz": [0.003, 0.0, 0.159],
"origin_rpy": [0.0, 1.57, 0.0],
"axis": [0.0, 0.0, 1.0],
"limits": {
"lower": -3.142,
"upper": 3.142,
"effort": 10.0,
"velocity": 1.0
}
},
{
"name": "Joint_5",
"joint_type": "revolute",
"parent": "Link_4",
"child": "Link_5",
"origin_xyz": [-0.128, 0.0, 0.0],
"origin_rpy": [0.0, 1.57, 0.0],
"axis": [0.0, 0.0, 1.0],
"limits": {
"lower": -3.142,
"upper": 3.142,
"effort": 10.0,
"velocity": 1.0
}
},
{
"name": "Joint_6",
"joint_type": "revolute",
"parent": "Link_5",
"child": "Link_6",
"origin_xyz": [0.0, -0.001, -0.089],
"origin_rpy": [0.0, 1.57, 0.0],
"axis": [0.0, 0.0, 1.0],
"limits": {
"lower": -3.142,
"upper": 3.142,
"effort": 10.0,
"velocity": 1.0
}
},
{
"name": "Joint_7",
"joint_type": "revolute",
"parent": "Link_6",
"child": "Link_7",
"origin_xyz": [0.065, 0.0, 0.0],
"origin_rpy": [1.57, 0.0, 0.0],
"axis": [0.0, 0.0, 1.0],
"limits": {
"lower": -3.142,
"upper": 3.142,
"effort": 10.0,
"velocity": 1.0
}
}
]
}