基于 MATLAB 与 PLCnext 的双轴龙门免示教路径规划
📌 作者:Roman Mayer, Markus Hoser 📌 公司:maku engineering GmbH 📌 联系:rommayer@maku-engineering.com, marhoser@maku-engineering.com 📌 技术:MATLAB/Simulink, Simscape, Phoenix Contact PLCnext, Siemens 驱动, Peter Corke 机器人工具箱
动机:为何免示教路径规划?
工业自动化中双轴龙门广泛应用——从数控机床、拾取放置机器人到物料搬运系统。这些龙门编程常通过示教:操作员手动移动系统到期望位置,保存为路径点,定义轨迹。
问题:
- 示教耗时且易出错。
- 环境或系统变化需重新示教。
- 自动化方案常昂贵且需复杂集成。
我们的解决方案:开发免示教路径规划系统,消除手动示教过程。智能算法自动生成无碰撞轨迹。
目标:
- 双轴龙门自动路径规划
- 用 MATLAB/Simulink & Simscape 建模仿真
- 为 Phoenix Contact PLC (AXC F 3152) 生成代码
- 通过 Profinet 集成 Siemens SINAMICS S210 驱动
📌 图片/可视化见最后部分!
技术实现
路径规划系统利用 MATLAB mobileRobotPRM 算法生成路径点。意味着:
🟢 自动路径规划
- 环境表示为地图(矩阵)。
- 检测并避开障碍物。
- 计算最短无碰撞路径。
🟢 MATLAB/Simulink 建模
- Simscape Multibody 物理仿真龙门系统
- Simscape Electrical 集成 Siemens 伺服电机
- Peter Corke 机器人工具箱用于路径规划 [https://github.com/petercorke/robotics-toolbox-matlab]
🟢 代码生成与控制
- 规划路径用 Simulink Coder & Embedded Coder 转为 Phoenix Contact PLC 可执行代码。
- PLC 通过 Profinet 向 Siemens 驱动发送轨迹点。
优势:整个系统可先仿真再直接转移到真实硬件。
此外,我们成功在无额外许可证情况下在 Phoenix Contact 支持下集成 Siemens 电机。通过使用 Siemens 变频器设备描述文件 (GSDML) 实现 Profinet 通信。
扩展潜力
系统模块化,配合相应工作可扩展:
🔹 替换机械模型与调整驱动
- 若有必要工具箱,可用 CAD 数据替换机械模型。
- 基于期望动态性能,驱动配置可预仿真优化性能。
🔹 动态环境更新
- 当前静态地图可替换为图像处理系统。
- 可用相机或激光雷达传感器进行环境检测。
- 执行过程中持续更新地图以应对移动障碍物。
🔹 扩展到多轴系统
- 当前系统针对 2 轴运动 (X/Y)。
- 扩展到 3 轴 (X/Y/Z) 可能。需: * 调整机械模型 * 集成第三驱动并纳入路径规划算法
结论与展望
免示教路径规划实现:✔ 节省时间——无需手动示教 ✔ 灵活性——自动考虑环境变化 ✔ 易实施——直接为 Phoenix Contact PLC 生成代码
下一步?
项目部分基于开源仓库免费提供。我们的增强和程序可按要求免费提供。当然也欢迎来电讨论。
视本博客文章关注度,我们计划:
- 通过此博客条目作为免费应用提供此解决方案
- 在 MathWorks 平台发布
有疑问、建议或想法?欢迎留言或直接联系!
硬件设置 / 印象 / 结果
硬件设置包含:
- Phoenix Contact AXC F 3152 PLC 控制
- 两个 Siemens 电机驱动
- 完全虚拟机械——整个机械系统在 MATLAB/Simulink & Simscape 仿真
执行/创建用以下地图:
障碍物宽度按工具调整。此外显示从起点到目标点自动生成的红色支撑点。
存储路径点需平滑以实现不同加速阶段无缝过渡。且路径必须可微分以防电机减速至零速。
两电机运动同步,加速阶段协调确保平滑运行。
最后是路径规划子模型成功代码生成图像。生成对象集成可完全遵循 Phoenix Contact 提供的描述!
注意:
Makers Blog 展示社区成员应用和用户故事,未经 Phoenix Contact 测试或审核。使用风险自负。
工业技术