11套机械臂三维模型,三轴四轴五轴机械臂各种机械臂三维模型,

三轴四轴五轴机械臂三维模型,sw打开,可编辑,可用于机械臂制作,机械臂打印。机械臂机械结构参考。
在这里插入图片描述
11套机械臂三维模型(三轴、四轴、五轴,SW格式,可编辑,可用于3D打印)”,

G

基于 Python (CadQuery) 的代码。
优势:
完全参数化:您可以修改代码中的长度、宽度、电机座尺寸,模型会自动更新。
格式通用:运行后可导出为 .step 或 .stl 格式,SolidWorks 完美支持打开和编辑。
结构清晰:生成了底座、大臂、小臂、关节等基础结构。

前置准备
您需要安装 Python 和 cadquery 库:
pip install cadquery cq-editor

机械臂生成代码 (三轴示例)

import cadquery as cq

================= 配置参数 (可在此处修改尺寸) =================
单位:毫米 (mm)
base_height = 20
base_width = 100
base_depth = 100

joint1_height = 40
joint1_radius = 30

arm1_length = 150
arm1_width = 40
arm1_thickness = 20

arm2_length = 120
arm2_width = 30
arm2_thickness = 15

end_effector_mount_width = 40
end_effector_mount_height = 30

轴承/电机孔半径
shaft_hole_radius = 5

================= 构建模型 =================

创建底座 (Base)
base = cq.Workplane(“XY”).box(base_width, base_depth, base_height)
底座安装孔 (4个角)
base = base.faces(“>Z”).workplane().rect(base_width - 20, base_depth - 20).hole(5) # 简化示例,实际可用循环打4个孔

创建第一轴关节 (Joint 1 - Rotation)
圆柱体作为旋转基座
joint1 = cq.Workplane(“XY”).circle(joint1_radius).extrude(joint1_height)
中心轴孔
joint1 = joint1.faces(“>Z”).workplane().hole(shaft_hole_radius * 2)
将关节1移动到底座上方
assy = base.union(joint1.translate((0, 0, base_height)))

创建大臂 (Arm 1)
简单的矩形臂,一端有连接孔
arm1_profile = cq.Workplane(“YZ”).rect(arm1_thickness, arm1_width).extrude(arm1_length)
在大臂底部切出安装槽或孔
arm1_bottom_hole = cq.Workplane(“YZ”, origin=(0, 0, 0)).circle(shaft_hole_radius * 2 + 2)
arm1 = arm1_profile.cut(arm1_bottom_hole)
旋转大臂使其水平延伸 (绕X轴旋转90度,并调整位置)
这里为了演示简单,直接放置
arm1_pos = arm1.rotate((0,0,0), (1,0,0), 90).translate((0, 0, base_height + joint1_height))
assy = assy.union(arm1_pos)

创建第二轴关节 (Joint 2 - Elbow)
joint2 = cq.Workplane(“XY”).circle(25).extrude(20)
joint2 = joint2.faces(“>Z”).workplane().hole(shaft_hole_radius * 2)
移动到手臂末端
j2_x_offset = arm1_length / 2 # 简化逻辑,实际应根据几何中心计算
assy = assy.union(joint2.translate((0, arm1_length/2, base_height + joint1_height + arm1_thickness/2)))

创建小臂 (Arm 2)
arm2_profile = cq.Workplane(“YZ”).rect(arm2_thickness - 5, arm2_width - 5).extrude(arm2_length)
arm2_bottom_hole = cq.Workplane(“YZ”, origin=(0, 0, 0)).circle(shaft_hole_radius * 2 + 2)
arm2 = arm2_profile.cut(arm2_bottom_hole)
arm2_pos = arm2.rotate((0,0,0), (1,0,0), 90).translate((0, arm1_length/2 + arm2_length/2, base_height + joint1_height + arm1_thickness + 10))
assy = assy.union(arm2_pos)

创建末端法兰 (End Effector Mount)
mount = cq.Workplane(“XY”).rect(end_effector_mount_width, end_effector_mount_width).extrude(end_effector_mount_height)
添加螺丝孔
mount = mount.faces(“>Z”).workplane().rect(20, 20).holes(3)
mount_pos = mount.translate((0, arm1_length/2 + arm2_length, base_height + joint1_height + arm1_thickness + 20))
assy = assy.union(mount_pos)

================= 导出结果 =================
导出为 STEP 格式 (SolidWorks 可直接打开并保留实体特征)
output_filename = “robot_arm_3axis.step”
cq.exporters.export(assy, output_filename)

也可以导出为 STL 用于直接切片打印
cq.exporters.export(assy, “robot_arm_3axis.stl”)

print(f"模型已生成并保存为: {output_filename}")
print(“请使用 SolidWorks 打开该 .step 文件进行编辑或装配。”)

如何使用这段代码?

保存代码:将上面的代码保存为 generate_robot.py。
运行代码:在终端运行 python generate_robot.py。
获取文件:目录下会生成一个 robot_arm_3axis.step 文件。
在 SolidWorks 中打开:
打开 SolidWorks。
点击 文件 -> 打开,选择生成的 .step 文件。
SolidWorks 会将其导入为一个多实体零件 (Multi-body Part)。
您可以使用“另存为”将其拆分为单独的零件(底座、大臂、小臂等),或者直接在装配体中使用。

在这里插入图片描述

八边形底座(带安装孔)
旋转基座关节
大臂、小臂结构(镂空减重设计)
末端法兰接口
整体为 SolidWorks 或类似 CAD 软件渲染的装配体效果

复现图中复杂结构(如镂空筋板、螺栓细节、电机腔等)需要大量参数和几何操作,我将为您提供一个高度简化但结构清晰、可参数化修改、兼容 SolidWorks 的六轴机械臂基础框架代码,使用 cadquery 库实现。

================= 参数配置(单位:mm)=================
BASE_SIDE = 120 # 底座边长
BASE_HEIGHT = 40 # 底座高度
JOINT1_RADIUS = 50 # 第一轴关节半径
JOINT1_HEIGHT = 60 # 第一轴高度
ARM1_LENGTH = 200 # 大臂长度
ARM1_WIDTH = 60 # 大臂宽度
ARM1_THICKNESS = 25 # 大臂厚度
ARM2_LENGTH = 150 # 小臂长度
ARM2_WIDTH = 50 # 小臂宽度
ARM2_THICKNESS = 20 # 小臂厚度
END_MOUNT_SIZE = 80 # 末端法兰尺寸
SHAFT_HOLE_R = 8 # 轴孔半径
BOLT_HOLE_R = 4 # 螺栓孔半径

================= 构建模型 =================

八边形底座
def make_octagon_base(side, height):
# 外接圆半径 ≈ side / (2 * sin(π/8))
radius = side / (2 * 0.3827)
poly = cq.Workplane(“XY”).polygon(8, radius).extrude(height)
# 添加中心轴孔
poly = poly.faces(“>Z”).workplane().hole(SHAFT_HOLE_R * 2 + 2)
# 添加四个角螺栓孔(简化)
positions = [
(-side/2 + 15, -side/2 + 15),
(side/2 - 15, -side/2 + 15),
(side/2 - 15, side/2 - 15),
(-side/2 + 15, side/2 - 15)
]
for x, y in positions:
poly = poly.faces(“>Z”).workplane(offset=height).center(x, y).hole(BOLT_HOLE_R * 2)
return poly

base = make_octagon_base(BASE_SIDE, BASE_HEIGHT)

第一轴旋转关节(圆柱)
joint1 = cq.Workplane(“XY”).circle(JOINT1_RADIUS).extrude(JOINT1_HEIGHT)
joint1 = joint1.faces(“>Z”).workplane().hole(SHAFT_HOLE_R * 2)
assy = base.union(joint1.translate((0, 0, BASE_HEIGHT)))

大臂(带镂空减重槽)
arm1_profile = cq.Workplane(“YZ”).rect(ARM1_THICKNESS, ARM1_WIDTH).extrude(ARM1_LENGTH)
切出中间减重槽
cutout = cq.Workplane(“YZ”, origin=(0, 0, ARM1_LENGTH/2)).rect(ARM1_THICKNESS - 10, ARM1_WIDTH - 20).extrude(ARM1_LENGTH - 20)
arm1 = arm1_profile.cut(cutout)
底部轴孔
arm1 = arm1.faces(“Z”).workplane().hole(SHAFT_HOLE_R * 2)
j2_offset = ARM1_LENGTH / 2
assy = assy.union(joint2.translate((0, j2_offset, BASE_HEIGHT + JOINT1_HEIGHT + ARM1_THICKNESS/2)))

小臂(同样镂空)
arm2_profile = cq.Workplane(“YZ”).rect(ARM2_THICKNESS, ARM2_WIDTH).extrude(ARM2_LENGTH)
cutout2 = cq.Workplane(“YZ”, origin=(0, 0, ARM2_LENGTH/2)).rect(ARM2_THICKNESS - 8, ARM2_WIDTH - 15).extrude(ARM2_LENGTH - 15)
arm2 = arm2_profile.cut(cutout2)
arm2 = arm2.faces(“Z”).workplane().hole(SHAFT_HOLE_R * 2)
j3_offset = j2_offset + ARM2_LENGTH
assy = assy.union(joint3.translate((0, j3_offset, BASE_HEIGHT + JOINT1_HEIGHT + ARM1_THICKNESS + ARM2_THICKNESS + 20)))

末端法兰(方形,带4个螺栓孔)
mount = cq.Workplane(“XY”).rect(END_MOUNT_SIZE, END_MOUNT_SIZE).extrude(20)
bolt_positions = [
(-END_MOUNT_SIZE/2 + 15, -END_MOUNT_SIZE/2 + 15),
(END_MOUNT_SIZE/2 - 15, -END_MOUNT_SIZE/2 + 15),
(END_MOUNT_SIZE/2 - 15, END_MOUNT_SIZE/2 - 15),
(-END_MOUNT_SIZE/2 + 15, END_MOUNT_SIZE/2 - 15)
]
for x, y in bolt_positions:
mount = mount.faces(“>Z”).workplane().center(x, y).hole(BOLT_HOLE_R * 2)
mount_pos = mount.translate((0, j3_offset, BASE_HEIGHT + JOINT1_HEIGHT + ARM1_THICKNESS + ARM2_THICKNESS + 30))
assy = assy.union(mount_pos)

================= 导出 =================
output_step = “robot_arm_6axis_concept.step”
cq.exporters.export(assy, output_step)

步骤 1:安装依赖
pip install cadquery

步骤 2:保存并运行
将上述代码保存为 robot_arm.py,然后运行:
python robot_arm.py

步骤 3:在 SolidWorks 中打开
打开 SolidWorks
文件 > 打开 → 选择生成的 robot_arm_6axis_concept.step
它会自动导入为一个多实体零件
您可以:
右键每个实体 → “插入到新零件” 拆分成独立部件
添加倒角、圆角、螺纹孔、材料属性
创建工程图、爆炸视图、动画
导出 STL 用于 3D 打印

🔧 进阶建议

使用 SolidWorks 手动建模(最灵活)
或在 GrabCAD 搜索关键词:
“6 axis robot arm solidworks assembly”
“industrial manipulator step file”

推荐模型:
KUKA KR6 R900 sixx
Universal Robots UR5

三轴 SCARA
四轴 Delta
五轴 articulated
六轴 industrial
协作机器人 cobot
并联机器人 parallel
etc.
在这里插入图片描述
在这里插入图片描述

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐