在 SolidWorks(SW)中导出 STP(STEP)文件后,不能直接在 ROS(机器人操作系统)中使用,因为 ROS 本身不原生支持 STP 格式的三维模型。但可以通过以下流程间接实现:核心思路
将 STP 模型转换为 ROS 支持的格式(如 URDF 或 Xacro),再导入 ROS 环境进行仿真或可视化。
实现步骤
从 SolidWorks 导出 STP 文件
打开 SolidWorks 装配体或零件。
点击 文件 → 另存为。
在“保存类型”中选择 STEP AP214 (.stp) 或 STEP AP203 (.stp)。
保存文件
将 STP 转换为 ROS 可用格式(URDF/Xacro)
方法一(推荐):使用 sw_urdf_exporter 插件直接从 SolidWorks 导出 URDF
该插件由 ROS 社区维护,可直接基于 SolidWorks 装配体生成 URDF 文件,包含连杆、关节、惯性参数等信息
下载地址:ROS Wiki - sw_urdf_exporter。
方法二:通过中间格式转换(如 STL + 手动编写 URDF)
将 STP 转换为 STL(可通过 FreeCAD、Fusion 360 等工具)。
手动编写 URDF 文件,引用 STL 模型作为视觉/碰撞几何。
此方法丢失装配关系和物理属性,需手动配置,适用于简单模型。
在 ROS 中加载 URDF 模型
使用 robot_state_publisher 和 joint_state_publisher 发布机器人状态。
在 RViz 或 Gazebo 中加载 URDF 进行可视化或仿真
注意事项STP 本身不包含运动学或动力学信息,仅保留几何和装配结构,因此必须通过 URDF 补充关节、质量、惯性等参数。
若需物理仿真(如 Gazebo),建议直接通过 sw_urdf_exporter 导出 URDF,避免手动转换误差
总结:SW 输出 STP 后,需经由 URDF 中转才能在 ROS 中使用,推荐直接使用 sw_urdf_exporter 插件从 SolidWorks 生成 URDF,避免 STP 转换环节的兼容性问题。
武汉格发信息技术有限公司 | 许可分析,许可优化,许可管理,许可授权,软件授权