MATLAB と PLCnext を使用した 2 軸ガントリーのティーチフリー パス プランニング
📌 著者:Roman Mayer、Markus Hoser📌 会社名:maku Engineering GmbH📌 連絡先:rommayer@maku-engineering.com、marhoser@maku-engineering.com📌 テクノロジー:MATLAB/Simulink、Simscape、Phoenix Contact PLCnext、Siemens Drives、Peter Corke's Robotic Toolbox
動機:なぜ指導不要のパス計画を行うのか?
産業オートメーションでは、2 軸ガントリーは CNC マシンやピックアンドプレースロボットからマテリアルハンドリングシステムまで幅広く使用されています。これらのガントリーのプログラミングはティーチングによって行われることが多く、オペレーターが手動でシステムを目的の位置に移動し、それらをウェイポイントとして保存し、軌道を定義します。
問題:
- 指導には時間がかかり、間違いが発生しやすくなります。
- 環境やシステムの変化には再学習が必要です。
- 自動化されたソリューションは高価であることが多く、複雑な統合が必要です。
当社のソリューション:当社は、手動による教育プロセスの必要性を排除する、ティーチフリーのパス計画システムを開発しました。代わりに、インテリジェントなアルゴリズムが衝突のない軌道を自動的に生成します。
目的:
- 2 軸ガントリーの自動パス計画
- モデリングとシミュレーションのための 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 ドライブに送信します。
利点:最初にシステム全体をシミュレートし、次に実際のハードウェアに直接転送できます。
さらに、追加のライセンスを必要とせずに、シーメンスモーターとフエニックス・コンタクトのサポートを統合することに成功しました。これは、Siemens インバータ デバイス記述ファイル (GSDML ファイル) を使用して Profinet 通信を可能にすることで可能になりました。
拡大の可能性
私たちのシステムはモジュール式であり、適切な努力で拡張できます。
🔹 メカニカルモデルの交換とドライブの調整
- 必要なツールボックスが利用可能な場合、機械モデルは CAD データを使用して置き換えることができます。
- 必要なダイナミクスに基づいてドライブ構成を事前にシミュレートし、パフォーマンスを最適化できます。
🔹 動的な環境の更新
- 現在の静的地図は画像処理システムで置き換えることができます。
- カメラや LiDAR センサーは環境検出に使用できる可能性があります。
- 移動する障害物を考慮して、実行中にマップを継続的に更新できます。
🔹 多軸システムへの拡張
- 現在、システムは 2 軸モーション(X/Y)用に設計されています。
- 3 軸システム (X/Y/Z) への拡張が可能です。これには以下が必要です。* 機械モデルの適応* パス プランニング アルゴリズムに組み込む必要がある 3 番目のドライブの統合
結論と展望
当社のティーチフリーのパス計画により、次のことが可能になります:✔ 時間の節約 – 手動ティーチングは不要✔ 柔軟性 – 環境の変化が自動的に考慮されます✔ 簡単な実装 – フエニックス・コンタクト PLC 用の直接コード生成
次は何ですか?
このプロジェクトの一部はオープンソース リポジトリに基づいており、無料で利用できます。リクエストに応じて、拡張機能とプログラムを無料で提供できます。もちろん、必要に応じて電話も受け付けます。
このブログ投稿への関心に応じて、次のことを計画しています。
- このブログ エントリを通じて、このソリューションを無料アプリとして提供する
- MathWorks プラットフォームで公開する
ご質問、ご提案、アイデアがありましたら、お気軽にコメントを残すか、直接お問い合わせください。
ハードウェアのセットアップ / 印象 / 結果
私たちのハードウェア設定は次のもので構成されていました:
- 制御用 Phoenix Contact AXC F 3152 PLC
- 作動用の 2 つの Siemens モーター
- 完全仮想メカニック – 機械システム全体が MATLAB/Simulink および Simscape でシミュレーションされました
次のマップは実行/作成に使用されました:
障害物の幅はツールに応じて調整されます。さらに、開始点から目標点までの自動生成されたサポート ポイントは赤色で表示されます。
異なる加速フェーズ間のシームレスな移行を実現するには、保存されたウェイポイントを平滑化する必要があります。さらに、モーターがゼロ速度に減速するのを防ぐために、パスが微分可能であることが重要です。
両方のモーターの動きは同期され、スムーズな動作を保証するために加速フェーズが調整されます。
最後に、パス計画用のサブモデルのコード生成が成功した画像を示します。生成されたオブジェクトの統合は、フエニックス・コンタクトの説明に従って 1 対 1 で実行できます。
注:
Makers Blog には、フエニックス・コンタクトによってテストまたはレビューされていないアプリケーションとコミュニティ メンバーのユーザー ストーリーが表示されます。ご自身の責任で使用してください。
産業技術