Files
SWdata-texttoCAD/1.1.1/joint_module_assembly.schema.json
T

842 lines
37 KiB
JSON
Raw 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.
{
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "schemas/joint_module_assembly.schema.json",
"title": "完整关节模组装配JSON - 填写规范 + 行星关节实例",
"description": "前部分是Schema填写规范,后部分是具体数据实例",
"metadata": {
"author": "设计团队",
"source": "SolidWorks 2025",
"version": "1.0",
"notes": "行星关节模组完整实例,包含joints、verification_rules、power_flow"
},
"field_definitions": {
"_comment_schema": "========== 以下是字段定义(填写说明) ==========",
"design_id": {
"type": "string",
"pattern": "^[A-Z0-9_]+$",
"required": true,
"description": "设计唯一标识符",
"example": "PJ_NGW_S2_090_T80_001",
"rule": "必须大写字母+数字+下划线"
},
"module_type": {
"type": "string",
"enum": [
"planetary",
"harmonic"
],
"required": true,
"description": "减速器类型",
"example": "planetary",
"rule": "planetary=行星齿轮,harmonic=谐波减速"
},
"global_frame": {
"type": "object",
"required": true,
"description": "定义全局坐标系的参考基准。程序读取此字段后,将指定零件的坐标系作为全局坐标系,所有'frame':'global'的关节都基于此坐标系计算运动",
"example": {
"reference_part": "Main_case",
"coordinate_system_name": "MAIN_CSYS",
"description": "以Main_case零件中的MAIN_CSYS坐标系作为全局坐标系基准"
},
"fields": {
"reference_part": {
"type": "string",
"required": true,
"description": "作为全局坐标系基准的零件id,该零件的坐标系将被映射为全局坐标系"
},
"coordinate_system_name": {
"type": "string",
"required": true,
"description": "该零件STEP文件中定义的坐标系名称(在SolidWorks中命名),程序从STEP文件中读取此坐标系"
},
"description": {
"type": "string",
"description": "说明文字"
}
}
},
"units": {
"type": "object",
"required": true,
"description": "全局单位声明,所有数值字段必须使用这些单位",
"example": {
"length": "mm",
"angle": "deg",
"torque": "N_m",
"mass": "kg",
"speed": "rpm"
},
"fields": {
"length": {
"enum": [
"mm",
"m",
"cm"
],
"default": "mm"
},
"angle": {
"enum": [
"deg",
"rad"
],
"default": "deg"
},
"torque": {
"enum": [
"N_m",
"N_mm",
"kgf_m"
],
"default": "N_m"
},
"mass": {
"enum": [
"kg",
"g",
"lb"
],
"default": "kg"
},
"speed": {
"enum": [
"rpm",
"rad_s",
"deg_s"
],
"default": "rpm"
}
}
},
"parts": {
"type": "array",
"required": true,
"description": "零件列表,每个零件一个对象。每个零件对应一个STEP文件,通过coordinate_system字段指定该STEP文件中定义的坐标系名称",
"minItems": 1,
"item_fields": {
"id": {
"type": "string",
"required": true,
"pattern": "^[a-zA-Z][a-zA-Z0-9_]*$",
"description": "零件唯一标识,其他字段(如constraints、joints)通过此id引用该零件"
},
"role": {
"type": "string",
"required": true,
"enum": [
"stator",
"rotor",
"sun_gear",
"planet_gear",
"ring_gear",
"planet_carrier",
"housing",
"end_cap",
"output_flange",
"bearing",
"motor_assembly",
"coupling",
"shaft",
"controller_mount",
"magnet_holder",
"magnet",
"bearing_retainer",
"other"
],
"description": "零件功能角色,用于验证程序识别零件的功能类型"
},
"file": {
"type": "string",
"required": true,
"description": "STEP文件路径,相对于JSON文件的路径"
},
"coordinate_system": {
"type": "string",
"required": true,
"description": "该零件STEP文件中定义的坐标系名称。程序加载STEP文件时,会读取此名称对应的坐标系作为该零件的局部坐标系。多个零件可引用同一个STEP文件(如多个行星轮),此时应使用相同的坐标系名称",
"example": "PLANET_CSYS"
},
"material": {
"type": "object",
"required": true,
"fields": {
"class": {
"enum": [
"steel",
"aluminum",
"plastic",
"copper",
"magnet",
"other"
]
},
"subclass": {
"type": "string",
"description": "材料子类,如20CrMnTi、6061-T6"
}
}
},
"gear": {
"type": "object",
"description": "齿轮参数(齿轮件必填)",
"fields": {
"teeth": {
"type": "integer",
"minimum": 1
},
"module_mm": {
"type": "number",
"minimum": 0
},
"face_width_mm": {
"type": "number",
"minimum": 0
},
"pressure_angle_deg": {
"type": "number",
"default": 20
},
"helix_angle_deg": {
"type": "number",
"default": 0
},
"gear_type": {
"enum": [
"external_gear",
"internal_gear"
]
}
}
},
"notes": {
"type": "string",
"description": "备注说明"
}
}
},
"constraints": {
"type": "array",
"required": true,
"description": "几何装配约束,程序根据这些约束将分散的STEP零件拼装成完整的模组。约束中的a和b字段可带面名(如'Main_case:Top_Face')以指定具体几何特征",
"minItems": 1,
"item_fields": {
"type": {
"enum": [
"fixed_to_ground",
"coaxial",
"coincident",
"distance",
"parallel",
"bearing_support",
"bolt_pattern",
"shaft_hub",
"keyed"
],
"required": true,
"description": "约束类型:fixed_to_ground=固定于大地,coaxial=同轴,coincident=面贴合,distance=保持距离,parallel=平行,bearing_support=轴承支承,bolt_pattern=螺栓连接,shaft_hub=轴毂连接,keyed=键连接"
},
"a": {
"type": "string",
"required": true,
"description": "第一个零件id,可带面名,如'sun_gear:Top_Face'"
},
"b": {
"type": "string",
"required": true,
"description": "第二个零件id,可带面名"
},
"value_mm": {
"type": "number",
"description": "距离类约束的数值(mm)"
},
"source": {
"enum": [
"sw_mate",
"manual"
],
"description": "约束来源:sw_mate=来自SolidWorks配合,manual=人工添加"
},
"mate_name": {
"type": "string",
"description": "SolidWorks配合名称,用于溯源"
},
"semantic_hint": {
"type": "string",
"description": "自然语言描述约束意图"
}
}
},
"meshes": {
"type": "array",
"required": true,
"description": "齿轮啮合副(减速器核心),明确声明哪两个齿轮咬合传力。验证程序据此检查中心距、齿侧间隙、干涉等",
"minItems": 1,
"item_fields": {
"pair": {
"type": "array",
"minItems": 2,
"maxItems": 2,
"required": true,
"items": {
"type": "string"
},
"description": "啮合的两个齿轮id"
},
"type": {
"enum": [
"external_gear",
"internal_gear"
],
"required": true,
"description": "外啮合或内啮合"
},
"center_distance_mm": {
"type": "number",
"minimum": 0,
"required": true,
"description": "中心距(mm),两个齿轮轴心之间的距离"
},
"backlash_mm": {
"type": "number",
"minimum": 0,
"description": "齿侧间隙(mm)"
},
"source": {
"enum": [
"sw_mate",
"manual"
],
"description": "啮合来源"
},
"semantic_hint": {
"type": "string",
"description": "自然语言描述啮合关系"
}
}
},
"joints": {
"type": "array",
"required": true,
"description": "运动副定义 - 告诉程序零件之间如何相对运动。每个joint定义一对零件之间的相对运动关系,frame字段指定运动轴基于哪个坐标系",
"minItems": 1,
"item_fields": {
"id": {
"type": "string",
"required": true,
"description": "运动副唯一标识"
},
"type": {
"enum": [
"revolute",
"fixed",
"cylindrical",
"prismatic"
],
"required": true,
"description": "运动副类型:revolute=旋转副,fixed=固定副(无相对运动),cylindrical=圆柱副(旋转+移动),prismatic=移动副"
},
"a": {
"type": "string",
"required": true,
"description": "主动件id(运动件)"
},
"b": {
"type": "string",
"required": true,
"description": "从动件/支架id(参考件)"
},
"axis": {
"enum": [
"x",
"y",
"z"
],
"description": "旋转轴方向,基于frame指定的坐标系。与axis_vector二选一使用,优先使用axis_vector"
},
"axis_vector": {
"type": "array",
"minItems": 3,
"maxItems": 3,
"items": {
"type": "number"
},
"description": "方向向量 [x, y, z],基于frame指定的坐标系。与axis二选一使用,当轴方向不是标准XYZ轴时使用此字段"
},
"frame": {
"type": "string",
"default": "global",
"description": "坐标系引用:'global'=使用global_frame定义的全局坐标系;或指定零件id,使用该零件在STEP中定义的坐标系(需在parts中配置coordinate_system字段)"
},
"description": {
"type": "string",
"description": "自然语言描述运动关系"
}
}
},
"kinematics": {
"type": "object",
"required": true,
"description": "传动计算参数,定义减速器的类型和传动比。验证程序据此校核传动比是否与齿数自洽",
"fields": {
"type": {
"enum": [
"planetary",
"harmonic"
],
"required": true,
"description": "减速器类型"
},
"planet_count": {
"type": "integer",
"minimum": 1,
"description": "行星轮数量(行星专用)"
},
"fixed_member": {
"enum": [
"ring_gear",
"carrier",
"sun_gear"
],
"description": "固定件(行星专用):ring_gear=齿圈固定,carrier=行星架固定,sun_gear=太阳轮固定"
},
"ratio_claimed": {
"type": "number",
"minimum": 0,
"required": true,
"description": "声称的传动比(输入转速/输出转速)"
},
"ratio_formula": {
"type": "string",
"description": "传动比计算公式说明(人类可读)"
},
"ratio_derived": {
"type": "object",
"description": "机器可读的派生计算,程序可据此自动校验传动比",
"fields": {
"formula": {
"type": "string",
"description": "表达式,引用parts中的齿轮参数,如'(ring_gear.teeth + sun_gear.teeth) / sun_gear.teeth'"
},
"input_params": {
"type": "array",
"items": {
"type": "string"
},
"description": "表达式中引用的零件id列表"
}
}
},
"notes": {
"type": "string",
"description": "备注"
}
}
},
"verification_rules": {
"type": "object",
"required": true,
"description": "程序可执行的验证规则。程序解析expression字段中的表达式,计算出结果后与expected或compare_to对比,判断设计是否合理",
"fields": {
"ratio": {
"type": "array",
"description": "传动比验证规则",
"item_fields": {
"rule_id": {
"type": "string",
"description": "规则唯一标识"
},
"expression": {
"type": "string",
"description": "计算公式,引用parts中的齿轮参数"
},
"expected": {
"type": "number",
"description": "期望值"
},
"tolerance": {
"type": "number",
"default": 0.01,
"description": "允许偏差"
},
"description": {
"type": "string",
"description": "规则说明"
}
}
},
"torque": {
"type": "array",
"description": "扭矩验证规则",
"item_fields": {
"rule_id": {
"type": "string"
},
"expression": {
"type": "string",
"description": "扭矩计算公式"
},
"compare_to": {
"type": "string",
"description": "对比目标字段,如'targets.rated_torque_nm'"
},
"description": {
"type": "string"
}
}
},
"geometry": {
"type": "array",
"description": "几何验证规则,如中心距校验、齿数关系校验",
"item_fields": {
"rule_id": {
"type": "string"
},
"expression": {
"type": "string",
"description": "几何计算公式"
},
"compare_to": {
"type": "string",
"description": "对比目标"
},
"tolerance": {
"type": "number",
"description": "允许偏差"
},
"description": {
"type": "string"
}
}
}
}
},
"power_flow": {
"type": "object",
"required": true,
"description": "动力传输路径,声明动力从哪个零件输入、经过哪些零件、最终输出到哪个零件",
"fields": {
"path": {
"type": "array",
"items": {
"type": "string"
},
"description": "动力流经的零件id顺序"
},
"efficiency": {
"type": "number",
"minimum": 0,
"maximum": 1,
"description": "传输效率(0~1)"
},
"coupling_type": {
"enum": [
"direct",
"coupling",
"keyed",
"spline"
],
"description": "连接方式"
},
"notes": {
"type": "string",
"description": "备注"
}
}
},
"io": {
"type": "object",
"required": true,
"description": "输入/输出/固定定义,明确整机的动力流向和约束边界",
"fields": {
"ground": {
"type": "array",
"items": {
"type": "string"
},
"description": "相对大地固定的零件id列表"
},
"input": {
"type": "string",
"description": "动力输入零件id"
},
"output": {
"type": "string",
"description": "动力输出零件id"
},
"dof_expected": {
"type": "string",
"description": "期望的自由度描述,如'输出法兰绕Z轴旋转'"
},
"notes": {
"type": "string",
"description": "备注"
}
}
},
"motor_spec": {
"type": "object",
"required": true,
"description": "电机规格参数,用于扭矩、功率、气隙等验证。早期可填估算值,但必须注明来源",
"fields": {
"motor_type": {
"type": "string",
"description": "电机类型,如bldc、pmsm"
},
"rated_torque_nm": {
"type": "number",
"description": "电机额定扭矩(N·m)"
},
"peak_torque_nm": {
"type": "number",
"description": "电机峰值扭矩(N·m)"
},
"rated_speed_rpm": {
"type": "number",
"description": "电机额定转速(rpm)"
},
"pole_pairs": {
"type": "integer",
"description": "电机极对数"
},
"air_gap_target_mm": {
"type": "number",
"description": "气隙目标值(mm)"
},
"air_gap_tol_mm": {
"type": "number",
"description": "气隙允许公差(mm)"
},
"voltage_v": {
"type": "number",
"description": "额定电压(V)"
},
"max_current_a": {
"type": "number",
"description": "最大电流(A)"
},
"assumption_notes": {
"type": "string",
"description": "参数来源说明,如'待台架标定'、'参考手册'等"
}
}
},
"targets": {
"type": "object",
"required": true,
"description": "整机性能及格线,是验证程序判断设计是否通过的标准",
"fields": {
"rated_torque_nm": {
"type": "number",
"description": "输出端额定扭矩目标(N·m)"
},
"peak_torque_nm": {
"type": "number",
"description": "输出端峰值扭矩目标(N·m)"
},
"ratio": {
"type": "number",
"description": "目标传动比"
},
"max_od_mm": {
"type": "number",
"description": "最大外径限制(mm)"
},
"max_length_mm": {
"type": "number",
"description": "最大长度限制(mm)"
},
"max_mass_kg": {
"type": "number",
"description": "最大重量限制(kg)"
},
"max_temp_rise_c": {
"type": "number",
"description": "允许最大温升(°C)"
}
}
}
},
"_comment_data_start": "========== 以下是具体数据实例(行星关节模组) ==========",
"design_id": "PJ_NGW_S2_090_T80_001",
"module_type": "planetary",
"version": "1.0",
"created_date": "2026-08-07",
"global_frame": {
"reference_part": "gear_housing",
"coordinate_system_name": "HOUSING_CSYS",
"description": "以减速器壳体HOUSING_CSYS作为全局坐标系基准"
},
"units": {
"length": "mm",
"angle": "deg",
"torque": "N_m",
"mass": "kg",
"speed": "rpm"
},
"requirement_text": "行星齿轮模组,包含电机、行星减速器、外壳,输出端目标扭矩80N·m,最大外径≤150mm,总长≤120mm,总重≤2kg",
"parts": [
{"id": "motor_stator", "role": "motor_stator", "file": "零件/motor_stator.step", "coordinate_system": "STATOR_CSYS", "material": {"class": "aluminum"}, "notes": "电机定子,坐标系定义在定子轴线上"},
{"id": "motor_rotor", "role": "motor_rotor", "file": "零件/motor_rotor.step", "coordinate_system": "ROTOR_CSYS", "material": {"class": "steel"}, "notes": "电机转子,坐标系定义在转子输出轴线上"},
{"id": "sun_gear", "role": "sun_gear", "file": "零件/sun_gear.step", "coordinate_system": "SUN_CSYS", "material": {"class": "steel"}, "gear": {"teeth": 19, "module_mm": 2.5, "face_width_mm": 8, "pressure_angle_deg": 20, "helix_angle_deg": 0, "gear_type": "external_gear"}, "notes": "太阳轮,坐标系定义在分度圆中心"},
{"id": "planet_gear_1", "role": "planet_gear", "file": "零件/planet_gear.step", "coordinate_system": "PLANET_CSYS", "material": {"class": "steel"}, "gear": {"teeth": 17, "module_mm": 2.5, "face_width_mm": 4, "pressure_angle_deg": 20, "helix_angle_deg": 0, "gear_type": "external_gear"}, "notes": "行星轮1,坐标系定义在自转轴线上"},
{"id": "planet_gear_2", "role": "planet_gear", "file": "零件/planet_gear.step", "coordinate_system": "PLANET_CSYS", "material": {"class": "steel"}, "gear": {"teeth": 17, "module_mm": 2.5, "face_width_mm": 4, "pressure_angle_deg": 20, "helix_angle_deg": 0, "gear_type": "external_gear"}, "notes": "行星轮2,坐标系定义在自转轴线上"},
{"id": "planet_gear_3", "role": "planet_gear", "file": "零件/planet_gear.step", "coordinate_system": "PLANET_CSYS", "material": {"class": "steel"}, "gear": {"teeth": 17, "module_mm": 2.5, "face_width_mm": 4, "pressure_angle_deg": 20, "helix_angle_deg": 0, "gear_type": "external_gear"}, "notes": "行星轮3,坐标系定义在自转轴线上"},
{"id": "ring_gear", "role": "ring_gear", "file": "零件/ring_gear.step", "coordinate_system": "RING_CSYS", "material": {"class": "steel"}, "gear": {"teeth": 53, "module_mm": 2.5, "face_width_mm": 4, "pressure_angle_deg": 20, "helix_angle_deg": 0, "gear_type": "internal_gear"}, "notes": "内齿圈,坐标系定义在齿圈自转轴线上"},
{"id": "planet_gear_bearing_1", "role": "bearing", "file": "零件/planet_gear_bearing.step", "coordinate_system": "BEARING_CSYS", "material": {"class": "steel"}, "notes": "行星轮1轴承,坐标系定义在轴承中轴线"},
{"id": "planet_gear_bearing_2", "role": "bearing", "file": "零件/planet_gear_bearing.step", "coordinate_system": "BEARING_CSYS", "material": {"class": "steel"}, "notes": "行星轮2轴承,坐标系定义在轴承中轴线"},
{"id": "planet_gear_bearing_3", "role": "bearing", "file": "零件/planet_gear_bearing.step", "coordinate_system": "BEARING_CSYS", "material": {"class": "steel"}, "notes": "行星轮3轴承,坐标系定义在轴承中轴线"},
{"id": "carrier", "role": "carrier", "file": "零件/carrier.step", "coordinate_system": "CARRIER_CSYS", "material": {"class": "steel"}, "notes": "行星架,坐标系定义在输出轴线上"},
{"id": "carrier_bearing", "role": "bearing_seat", "file": "零件/carrier_bearing.step", "coordinate_system": "CARRIER_BEARING_CSYS", "material": {"class": "other"}, "notes": "行星架主轴承,坐标系定义在轴承中轴线上"},
{"id": "gear_housing", "role": "gear_housing", "file": "零件/gear_housing.step", "coordinate_system": "HOUSING_CSYS", "material": {"class": "aluminum"}, "notes": "减速器壳体,坐标系HOUSING_CSYS作为全局基准"},
{"id": "back_plate", "role": "output_flange", "file": "零件/back_plate.step", "coordinate_system": "BACKPLATE_CSYS", "material": {"class": "aluminum"}, "notes": "后端盖/输出法兰,坐标系定义在端盖中心"},
{"id": "seal_cover", "role": "seal_cover", "file": "零件/seal_cover.step", "coordinate_system": "SEAL_COVER_CSYS", "material": {"class": "aluminum"}, "notes": "密封盖,坐标系定义在密封盖中心"}
],
"constraints": [
{"type": "fixed_to_ground", "a": "gear_housing", "source": "sw_mate", "semantic_hint": "电机外壳固定于机座"},
{"type": "coaxial", "a": "motor_rotor:Outer_Cyl", "b": "motor_stator:Outer_Cyl", "source": "sw_mate", "mate_name": "Rotor_Stator_Coaxial", "semantic_hint": "转子外圆柱面与定子外圆柱面同轴"},
{"type": "coincident", "a": "motor_rotor:Bottom_Face", "b": "motor_stator:Bottom_Step", "source": "sw_mate", "mate_name": "Rotor_Stator_Coincident", "semantic_hint": "转子下平面与定子下台阶面重合"},
{"type": "coincident", "a": "motor_stator:Top_Face", "b": "back_plate:Bottom_Face", "source": "sw_mate", "mate_name": "Motor_BackPlate_Coincident", "semantic_hint": "电机上平面与后盖下平面重合"},
{"type": "coaxial", "a": "motor_stator:Threaded_Hole_1", "b": "back_plate:Threaded_Hole_1", "source": "sw_mate", "mate_name": "Motor_BackPlate_Hole1_Coaxial", "semantic_hint": "电机与后盖螺纹孔1同轴"},
{"type": "coaxial", "a": "back_plate:Outer_Cyl", "b": "gear_housing:Outer_Cyl", "source": "sw_mate", "mate_name": "BackPlate_Housing_Coaxial", "semantic_hint": "后盖外圆柱面与壳体外圆柱面同轴"},
{"type": "coincident", "a": "back_plate:Top_Face", "b": "gear_housing:Top_Face", "source": "sw_mate", "mate_name": "BackPlate_Housing_Top_Coincident", "semantic_hint": "后盖上平面与壳体上平面重合"},
{"type": "coaxial", "a": "back_plate:Side_Hole_1", "b": "gear_housing:Side_Hole_1", "source": "sw_mate", "mate_name": "BackPlate_Housing_SideHole1_Coaxial", "semantic_hint": "后盖与壳体侧边螺纹孔1同轴"},
{"type": "coaxial", "a": "sun_gear:Inner_Cyl", "b": "motor_rotor:Output_Shaft_Outer_Cyl", "source": "sw_mate", "mate_name": "SunGear_Rotor_Coaxial", "semantic_hint": "太阳轮内圆柱面与电机转子输出轴外圆柱面同轴"},
{"type": "coincident", "a": "sun_gear:Bottom_Face", "b": "motor_rotor:Output_Shaft_Bottom_Face", "source": "sw_mate", "mate_name": "SunGear_Rotor_Coincident", "semantic_hint": "太阳轮下平面与电机转子输出轴下平面重合"},
{"type": "coaxial", "a": "ring_gear:Outer_Cyl", "b": "gear_housing:Inner_Cyl", "source": "sw_mate", "mate_name": "RingGear_Motor_Coaxial", "semantic_hint": "齿圈外圆柱面与电机壳体内圆柱面重合"},
{"type": "coincident", "a": "ring_gear:Bottom_Face", "b": "gear_housing:Step_Face", "source": "sw_mate", "mate_name": "RingGear_Motor_Step_Coincident", "semantic_hint": "齿圈下平面与电机外壳台阶面重合"},
{"type": "coaxial", "a": "ring_gear:Threaded_Hole_1", "b": "motor_stator:Threaded_Hole_1", "source": "sw_mate", "mate_name": "RingGear_Motor_Hole_Coaxial", "semantic_hint": "齿圈螺纹孔与电机定子螺纹孔同轴"},
{"type": "coaxial", "a": "planet_gear_bearing_1:Outer_Cyl", "b": "planet_gear_1:Inner_Cyl", "source": "sw_mate", "mate_name": "Bearing1_Gear1_Coaxial", "semantic_hint": "行星轮1轴承外圆柱面与行星轮1内圆柱面重合"},
{"type": "coincident", "a": "planet_gear_bearing_1:Step_Face", "b": "planet_gear_1:Step_Face", "source": "sw_mate", "mate_name": "Bearing1_Gear1_Step_Coincident", "semantic_hint": "行星轮1轴承台阶面与行星轮1台阶面重合"},
{"type": "coaxial", "a": "planet_gear_bearing_1:Inner_Cyl", "b": "carrier:Small_Cyl_1", "source": "sw_mate", "mate_name": "Bearing1_Carrier_Coaxial", "semantic_hint": "行星轮1轴承内圆柱面与行星架小圆柱面1同心"},
{"type": "coincident", "a": "planet_gear_bearing_1:Bottom_Face", "b": "carrier:Top_Face", "source": "sw_mate", "mate_name": "Bearing1_Carrier_Coincident", "semantic_hint": "行星轮1轴承下平面与行星架上平面1重合"},
{"type": "coaxial", "a": "planet_gear_bearing_2:Outer_Cyl", "b": "planet_gear_2:Inner_Cyl", "source": "sw_mate", "mate_name": "Bearing2_Gear2_Coaxial", "semantic_hint": "行星轮2轴承外圆柱面与行星轮2内圆柱面重合"},
{"type": "coincident", "a": "planet_gear_bearing_2:Step_Face", "b": "planet_gear_2:Step_Face", "source": "sw_mate", "mate_name": "Bearing2_Gear2_Step_Coincident", "semantic_hint": "行星轮2轴承台阶面与行星轮2台阶面重合"},
{"type": "coaxial", "a": "planet_gear_bearing_2:Inner_Cyl", "b": "carrier:Small_Cyl_2", "source": "sw_mate", "mate_name": "Bearing2_Carrier_Coaxial", "semantic_hint": "行星轮2轴承内圆柱面与行星架小圆柱面2同心"},
{"type": "coincident", "a": "planet_gear_bearing_2:Bottom_Face", "b": "carrier:Top_Face", "source": "sw_mate", "mate_name": "Bearing2_Carrier_Coincident", "semantic_hint": "行星轮2轴承下平面与行星架上平面2重合"},
{"type": "coaxial", "a": "planet_gear_bearing_3:Outer_Cyl", "b": "planet_gear_3:Inner_Cyl", "source": "sw_mate", "mate_name": "Bearing3_Gear3_Coaxial", "semantic_hint": "行星轮3轴承外圆柱面与行星轮3内圆柱面重合"},
{"type": "coincident", "a": "planet_gear_bearing_3:Step_Face", "b": "planet_gear_3:Step_Face", "source": "sw_mate", "mate_name": "Bearing3_Gear3_Step_Coincident", "semantic_hint": "行星轮3轴承台阶面与行星轮3台阶面重合"},
{"type": "coaxial", "a": "planet_gear_bearing_3:Inner_Cyl", "b": "carrier:Small_Cyl_3", "source": "sw_mate", "mate_name": "Bearing3_Carrier_Coaxial", "semantic_hint": "行星轮3轴承内圆柱面与行星架小圆柱面3同心"},
{"type": "coincident", "a": "planet_gear_bearing_3:Bottom_Face", "b": "carrier:Top_Face", "source": "sw_mate", "mate_name": "Bearing3_Carrier_Coincident", "semantic_hint": "行星轮3轴承下平面与行星架上平面3重合"},
{"type": "coaxial", "a": "carrier_bearing:Outer_Cyl", "b": "gear_housing:Bearing_Inner_Cyl", "source": "sw_mate", "mate_name": "CarrierBearing_Motor_Coaxial", "semantic_hint": "行星架轴承外圆柱面与电机外壳内圆柱面重合"},
{"type": "coincident", "a": "carrier_bearing:Top_Face", "b": "gear_housing:Bottom_Step", "source": "sw_mate", "mate_name": "CarrierBearing_Motor_Coincident", "semantic_hint": "行星架轴承上平面与电机外壳下台阶面重合"},
{"type": "coaxial", "a": "carrier:Outer_Cyl", "b": "carrier_bearing:Inner_Cyl", "source": "sw_mate", "mate_name": "Carrier_CarrierBearing_Coaxial", "semantic_hint": "行星架外圆柱面与行星架轴承内圆柱面重合"},
{"type": "coincident", "a": "planet_gear_1:Top_Face", "b": "ring_gear:Top_Face", "source": "sw_mate", "mate_name": "PlanetGear1_RingGear_Coincident", "semantic_hint": "行星轮1上平面与齿圈上平面重合"},
{"type": "coincident", "a": "seal_cover:Top_Face", "b": "gear_housing:Bottom_Face", "source": "sw_mate", "mate_name": "SealCover_Motor_Coincident", "semantic_hint": "密封盖上平面与电机外壳下平面重合"},
{"type": "coaxial", "a": "seal_cover:Outer_Cyl", "b": "gear_housing:Outer_Cyl", "source": "sw_mate", "mate_name": "SealCover_Motor_Coaxial", "semantic_hint": "密封盖外圆柱面与电机外壳外圆柱面同轴"},
{"type": "coaxial", "a": "seal_cover:Threaded_Hole_1", "b": "gear_housing:Bottom_Hole_1", "source": "sw_mate", "mate_name": "SealCover_Motor_Hole1_Coaxial", "semantic_hint": "密封盖与电机外壳螺纹孔1同轴"}
],
"meshes": [
{"pair": ["sun_gear", "planet_gear_1"], "type": "external_gear", "center_distance_mm": 45, "source": "sw_mate", "semantic_hint": "太阳轮与行星轮1外啮合"},
{"pair": ["sun_gear", "planet_gear_2"], "type": "external_gear", "center_distance_mm": 45, "source": "sw_mate", "semantic_hint": "太阳轮与行星轮2外啮合"},
{"pair": ["sun_gear", "planet_gear_3"], "type": "external_gear", "center_distance_mm": 45, "source": "sw_mate", "semantic_hint": "太阳轮与行星轮3外啮合"},
{"pair": ["ring_gear", "planet_gear_1"], "type": "internal_gear", "center_distance_mm": 45, "source": "sw_mate", "semantic_hint": "齿圈与行星轮1内啮合"},
{"pair": ["ring_gear", "planet_gear_2"], "type": "internal_gear", "center_distance_mm": 45, "source": "sw_mate", "semantic_hint": "齿圈与行星轮2内啮合"},
{"pair": ["ring_gear", "planet_gear_3"], "type": "internal_gear", "center_distance_mm": 45, "source": "sw_mate", "semantic_hint": "齿圈与行星轮3内啮合"}
],
"joints": [
{"id": "joint_sun_gear", "type": "revolute", "a": "sun_gear", "b": "gear_housing", "axis": "z", "frame": "global", "description": "太阳轮相对于壳体绕全局Z轴旋转"},
{"id": "joint_carrier_output", "type": "revolute", "a": "carrier", "b": "gear_housing", "axis": "z", "frame": "global", "description": "行星架(输出端)相对于壳体绕全局Z轴旋转"},
{"id": "joint_carrier_planet_1", "type": "revolute", "a": "planet_gear_1", "b": "gear_housing", "axis": "z", "frame": "global", "description": "行星轮1随行星架绕全局Z轴公转"},
{"id": "joint_carrier_planet_2", "type": "revolute", "a": "planet_gear_2", "b": "gear_housing", "axis": "z", "frame": "global", "description": "行星轮2随行星架绕全局Z轴公转"},
{"id": "joint_carrier_planet_3", "type": "revolute", "a": "planet_gear_3", "b": "gear_housing", "axis": "z", "frame": "global", "description": "行星轮3随行星架绕全局Z轴公转"},
{"id": "joint_planet_1", "type": "revolute", "a": "planet_gear_1", "b": "carrier", "axis": "z", "frame": "PLANET_CSYS", "description": "行星轮1相对于行星架绕自身Z轴自转"},
{"id": "joint_planet_2", "type": "revolute", "a": "planet_gear_2", "b": "carrier", "axis": "z", "frame": "PLANET_CSYS", "description": "行星轮2相对于行星架绕自身Z轴自转"},
{"id": "joint_planet_3", "type": "revolute", "a": "planet_gear_3", "b": "carrier", "axis": "z", "frame": "PLANET_CSYS", "description": "行星轮3相对于行星架绕自身Z轴自转"},
{"id": "joint_fixed_ring", "type": "fixed", "a": "ring_gear", "b": "gear_housing", "axis": "z", "frame": "global", "description": "齿圈固定于主框架,不旋转"}
],
"kinematics": {
"type": "planetary",
"planet_count": 3,
"fixed_member": "ring_gear",
"ratio_claimed": 3.7895,
"ratio_formula": "(ring_gear_teeth + sun_gear_teeth) / sun_gear_teeth = (100 + 20) / 20 = 6.0",
"ratio_derived": {
"formula": "(ring_gear.teeth + sun_gear.teeth) / sun_gear.teeth",
"input_params": [
"ring_gear",
"sun_gear"
]
},
"notes": "齿圈固定(T80),太阳轮输入(约T20),行星架输出,理论传动比3.7895:1"
},
"verification_rules": {
"ratio": [
{
"rule_id": "ratio_check",
"expression": "(ring_gear.teeth + sun_gear.teeth) / sun_gear.teeth",
"expected": 3.7895,
"tolerance": 0.01,
"description": "齿圈固定时,传动比=(Zr+Zs)/Zs"
}
],
"torque": [
{
"rule_id": "torque_output_check",
"expression": "motor_spec.rated_torque_nm * kinematics.ratio_claimed * power_flow.efficiency",
"compare_to": "targets.rated_torque_nm",
"description": "输出扭矩=电机扭矩×传动比×效率"
}
],
"geometry": [
{
"rule_id": "center_distance_check",
"expression": "(sun_gear.gear.teeth + planet_gear_1.gear.teeth) * sun_gear.gear.module_mm / 2",
"compare_to": "meshes[0].center_distance_mm",
"tolerance": 0.05,
"description": "理论中心距=(Zs+Zp)×m/2"
},
{
"rule_id": "ring_gear_teeth_check",
"expression": "sun_gear.gear.teeth + 2 * planet_gear_1.gear.teeth",
"compare_to": "ring_gear.gear.teeth",
"description": "齿圈齿数=Zs+2×Zp"
}
]
},
"power_flow": {
"path": [
"motor",
"motor_to_sun_gear_coupling",
"sun_gear"
],
"efficiency": 0.97,
"coupling_type": "coupling",
"notes": "电机→联轴器→太阳轮,效率按97%估算"
},
"io": {
"ground": [
"motor_stator",
"ring_gear",
"gear_housing"
],
"input": "motor_rotor",
"output": "carrier",
"dof_expected": "行星架绕Z轴旋转",
"notes": "电机转子驱动太阳轮,行星架输出;定子、齿圈、壳体固定"
},
"motor_spec": {
"motor_type": "bldc",
"rated_torque_nm": 20,
"peak_torque_nm": 35,
"rated_speed_rpm": 3000,
"pole_pairs": 7,
"air_gap_target_mm": 0.5,
"air_gap_tol_mm": 0.1,
"voltage_v": 24,
"max_current_a": 15,
"assumption_notes": "3500电机:额定扭矩2.0N·m@3000rpm,峰值4.0N·m,气隙0.5mm"
},
"targets": {
"rated_torque_nm": 80,
"peak_torque_nm": 100,
"ratio": 3.7895,
"max_od_mm": 150,
"max_length_mm": 120,
"max_mass_kg": 2,
"max_temp_rise_c": 60
}
}