3T、モデルベースデザインを使用してロボット緊急ブレーキシステムを開発
課題
最小限のハードウェアテストによるロボット緊急ブレーキシステムの設計および実装
ソリューション
SimulinkおよびHDL Coderでのモデルベースデザインの使用によるコントローラーのモデル化、検証および実装
結果
- クリーンルームでの時間を数週間から数日に短縮
- 直前の要件変更を迅速に実装
- 複雑なバグを1日で解決
水平多関節ロボット(SCARA)アセンブリは、大部分のウエハーハンドリング動作が行われる水平面での動作に優れているため半導体製造で幅広く利用されています。高速で動作する高圧電流機械と同様に、SCARAロボットが誤動作すると、独自のコンポーネントや周辺機械に大きな損傷をもたらす可能性があります。そのようなことが発生しないように、3TのエンジニアはSCARAロボット向けの緊急ブレーキシステムを設計しました。
プロジェクトの開始時には、3Tのチームは、ロボット自体に損傷を与えず衝突を回避してすぐに停止させるブレーキシステムを設計できるかどうか見出せずにいました。3TのエンジニアはMATLAB®およびSimulink®でモデルベースデザイン (モデルベース開発、MBD)を使用して、フィジビリティスタディの実行、ソリューションの特定およびリアルタイムブレーキシステムのコントローラーのFPGAでの実装を行いました。
「モデルベースデザインにより、さまざまな制御アプローチを迅速に試して、動作するものとしないものを確認できました。」と3TのシステムエンジニアであるRonald van der Meer氏は述べています。「クリーンルームでのハードウェアテストおよびデバッグを最小限にするために、ソリューションのテストと改良をSimulinkでのシミュレーションを通じて行い、HDL Coderのコード生成を使用して、検証後に実装しました。」
課題
3Tのお客様である、半導体製造装置を生産するオランダの主要なメーカーには、ブレーキシステムに関する厳しい要件がありました。被害が甚大な衝突の可能性を回避するために、制御システムは、ロボットを破損させずにミリメートルの精度で0.5秒以内にロボットを停止する必要がありました。最初に、3Tもお客様も、これらの要件を満たすブレーキシステムの設計が可能なのかどうか見出せずにいました。
クリーンルームでのテストや実機やプロトタイプでの作業には費用がかかります。さらに、実機によるブレーキシステムのテストでは、高価な装置が破損する可能性がありました。このため、3Tのエンジニアはハードウェアの初期実装の前にブレーキ設計を検証する必要がありました。以前のプロジェクトで行ったようにVHDL®コードをハンドコーディングすると、プロジェクトの後半のクリーンルームでのテストおよびデバッグに時間がかかりすぎることを認識していました。
ソリューション
3Tは、MATLAB、SimulinkおよびHDL Coder™でモデルベースデザインを使用して、SCARA緊急ブレーキシステムコントローラーの設計および実装を行いました。
半導体製造会社は、3TのエンジニアチームにSimulinkで作成されたロボットのメカモデルを提供しました。
3Tチームは、Simulinkで作成した基本的なコントローラーモデルと、Simscape Electrical™で作成された電気のモデルの2つのモデルを追加してこのメカモデルを完成させました。次に、完成したシステムモデルをシミュレーションして、モデルおよび初期のシミュレーション結果をお客様と共有しました。この交換により、お客様はメカモデルを改善し、コントローラーの強化を提案する機会が得られます。
3Tチームは、設計の実行可能性が確認されるまで、コントローラーモデルをSimulinkで改善および改良し続けて、数十個のシナリオおよびパラメーター感度をシミュレーションしました。
大部分のFPGAは、制御アルゴリズムを固定小数点実装することにより最も効率的に動作するため、Fixed-Point Designer™を使用してコントローラーモデルの固定小数点表現を開発し、語長およびスケーリングを決定する際の参考としました。
次に、Simulinkのモデル参照機能を使用して、システムモデルの浮動小数点コントローラーモデルを固定小数点のバージョンに置き換えて、シミュレーションを使用して固定小数点の実装を検証しました。
また、HDL Coderを使用して、固定小数点コントローラーモデルからアルゴリズムであるVHDLコードを生成しました。
HDL Verifier™を使用して、FPGAベンダーのサードパーティIPコアを自分たちの設計に統合し、Mentor Graphics® ModelSim®を使用してVHDLコードの検証のためのテストベンチを生成しました。
ハードウェアの初期テストの次に、モデルを改良し、追加のシミュレーションを実行してこの修正内容をテストして、最終的なブレーキシステムのVHDLコードを再生成しました。これが現在、お客様が量産環境で使用しているものです。
3Tのエンジニアは、ラピッドプロトタイピングおよびハードウェアインザループテストのために、3Tの新しいSoCマルチインターフェイス開発ボードであるMINTでモデルベースデザインを使用して、同様のプロジェクトを完了しています。
結果
- クリーンルームでの時間を数週間から数日に短縮。「モデルベースデザインを使用すると、作成した設計の大半を開発の初期段階で検証でき、欠陥のないVHDLを生成できました。」とvan der Meer 氏は述べています。「結果として、クリーンルームでは、数週間ではなく数日かかるだけでした。ブレーキシステムは初回のテストでほぼうまく機能していたので、必要なのは小さな調整だけでした。」
- 直前の要件変更を迅速に実装。「最終テスト時に、最大減速の制限に関する新しい要件が発生しました。」とvan der Meer氏は述べています。「Simulinkで、パルス幅変調を使用してこの要件に対応する方法が見つかりました。SimulinkおよびHDL Coderを使用すると、数日中にソリューションを実装でき、プロジェクトが失敗に向かって進むことを回避できました。」
- 複雑なバグを1日で解決。「好ましくない設計ロジックのバグに直面しましたが、この特定と修正に何か月とは言わないまでも数週間は容易に費やすことになる可能性がありました。」とvan der Meer氏は述べています。「私たちは、ログに記録されたデータをMATLABで解析し、このデータをSimulinkシミュレーションで再生することで、問題を迅速に診断しました。修正をモデルに実装し、VHDLを再生成すると、次の日には更新版の準備が整っていました。」