発表日: 2017年05月29日 |
Len Gasior、トレーニングエンジニア、dSPACE Inc.
ControlDeskは、ホストPCをdSPACEプラットフォームに接続するための強力なフロントエンドツールです。タスクレベルでは、主にプラットフォームを登録し、プロジェクトや試験を作成したりする場合に使用します。その多くの利点の中でも、ビルトイン機能を備え、すぐに使える計器ライブラリは便利であり、これを使用すると非常にすばやくカスタマイズされた試験を作成することができます。
ユーザは時に試験/計器に機能を追加したい場合や、サードパーティ製アプリケーションを使用してControlDeskを自動化したい場合があります。
これらが追求したい属性である場合は、それ以上を求めてはなりません。ControlDeskのツール自動化インターフェースを使用すると、タスクの自動化、計器のカスタマイズ、サードパーティ製ツールの使用が可能になり、時間と労力を節減することができます。
ControlDeskのツール自動化インターフェース(電子制御ユニットのHILテストの自動化を目的としたAutomationDeskソフトウェアと混同しないこと)は、COMオブジェクトモデルとして実装されるアプリケーションプログラミングインターフェース(API)です。
APIには、.NETプログラミング言語(Visual BasicおよびC#など)およびCOM/DCOMベースのプログラミング言語(PythonやC++など)でアクセスすることができます。
ControlDeskでは、次のような外部スクリプトを使用して、その機能の多くにアクセスできます。
スクリプトを使用すると、反復作業を自動化し、カスタム設定でプロジェクトやエクスペリメントを作成するなどの複雑なワークフローを即座に実行できます。
ControlDeskのツール自動化インターフェースには、さまざまな方法でアクセスすることができます。
またこのAPIでは、個々の機能を実装して、ControlDeskを既存の開発プロセスに完全に統合することができます
実装へのアプローチをより完全に理解できるようにするため、ControlDeskの観点から高いレベルで実装方法の概要を説明します。以下に、単純なブロック線図でコンセプトを示します。
直接アプローチ
直接アプローチでは、スクリプトがControlDeskの内部インタープリタに実装されており、3つの方法でPythonコードを使用できます。
第1の方法では、ControlDeskが提供する簡単な方法を利用して、プラットフォームの登録や試験の作成など、制御固有のイベントにPythonコードを関連付けます。ControlDeskのリボンでアクセス可能なイベントハンドラのテンプレートを使用することにより、Pythonコードをシームレスに追加して、制御したいイベントに対して目的の操作を実装することができます。
既存の計器の機能を拡張したい場合は第2の方法を使用して、Pythonコードを計器に直接割り当てることにより、カスタム計器を作成することができます。スクリプトは計器に保存され、計器が初期化されるたびに自動的に実行されます。
第3の方法では、ControlDeskのインタープリタを使用して、イベントまたは計器スクリプトなしで直接ソフトウェアを制御することができます。ControlDeskのインタープリタでPythonスクリプトを実行すると、Pythonコマンドを自動的に実行して、プロジェクトの作成や特定のエレメントの妥当性確認などのタスクを実施できます。イベントや計器に束縛されることがないため、これは最も強力な方法です。
間接アプローチ
サードパーティ製ツールまたは独自のアプリケーションを使用すると、ControlDeskを間接的に自動化することができます。スクリプトまたはカスタムフロントエンドアプリケーションを以前に作成している場合は、わずかな微調整により、これらを実装してControlDeskを自動化できるため、再利用の目的には非常に役立ちます。このため、ControlDeskのツール自動化インターフェースは、目標や目的に基づいて、他のサードパーティ製ツールや独自のコードを利用するための便利な方法を提供します。
ControlDeskでは、数多くのPythonおよびC#デモスクリプトを用意しています。さらに、着手の際に役立つドキュメントも含まれています。ホストPCのハードドライブにインストールされるデモアプリケーションライブラリには、ControlDeskで通常手作業で実行する基本手順の大半の例が含まれています。
これを活用すると、ControlDeskプロジェクトでツール自動化の実装方法を習得することができます。シンプルな実装の場合、最小限のコーディングスキルを持ったエンドユーザであれば、デモアプリケーションを確認してコードの内部動作を知ることにより、ツール自動化を活用することができます。
高度なコーディングスキル備えたユーザであれば、可能性は無限大です。結局、それはすべてお客様の創造性とそれを実現させるための努力に帰着します。時間の節約や機能の追加、ツールの効率性向上の面からも、追加作業によるコードの実装は、行うだけの価値があります。
お客様が体感するであろう能力の向上は、ControlDeskの使用において大きなメリットとなり、お客様のプロジェクトを次のレベルへと引き上げることにつながります。
最新の技術開発動向をつかんで、イノベーションを加速。
メールマガジンの購読希望・変更/配信停止手続き