産業オートメーションインターフェイスのプログラミング

HMI(Human-Machine-Interface)は、オペレーターが制御するマシンと対話できるようにするエンジニアリングソリューションを含む幅広い概念です。 ヒューマンマシンインターフェイスという用語は、ラジオテープレコーダーからパイロットキャビンまでのコントロールパネル全体を指します。 HMIパネルは、ほぼすべてのエレクトロニクス産業の巨人(Siemens、Motorolla、Mitsubishi)によって生産されています。 Pro-Face GP2301パネルの開発プロセスがどのように見えるかを示します。



ToRの要件が複雑な、ボタンと電球を備えた1つの画面を作成しましょう。 開発はPro-Face GP Proのネイティブ環境で実行されます。プログラムにはすでにバージョン番号7があり、Windowsでのビジュアルプログラミングの経験に基づいて開発を開始できるように、すべてが非常に熟考され洗練されています。



これがプロジェクトマネージャーウィンドウの外観です。今では1つのボタン(スクリーンエディター[スクリーン])だけが必要です。





画面エディタで、ベース画面などの新しい画面を作成します。







新しく作成された画面に5つのボタンを追加します。このボタンを押すと、指定されたアドレス(0100)にビットが反転します。 アドレスを指定するとき、ビットはビットのシリアル番号をアドレスに追加するだけで設定されます。



すべてのアドレス指定は16ビットであり、バイトは手動でレーキする必要があります。







同じアドレスとビットに、特定のビットが0100に設定されたときに点灯する電球を取り付けます。







次に、転送ユーティリティとCOMケーブルを使用して、プロジェクトをパネルに入力します。 注ぐ前にペイントしたものはすべてラスタライズされ(そうです、開発環境のすべてのプリミティブはベクトルであり、あらゆるサイズに完全に伸縮するため)、内部64色表現で表示されます。







充填プロセスとテスト実行はビデオで見ることができます







いつものように、標準コンポーネントは、実際のタスクで使用される場合、何らかの理由で適切ではありません。 それで、今回は起こりました。 作業指示書によると、ボタンはビットを変更せず、その番号0、1、2、3、または4を書き留める必要があります。コンポーネントライブラリにはそのようなボタンがありますが、ビットから点灯するライトのみがあります。



次のように問題を解決します-ボタンは0101に番号を記録し、特別なスクリプトは0101にあるものに従って0100に目的のビットを設定します。画面から既存のボタンを削除しません(クリックする場所を示すためにボタンを残します)。そしてその上に、圧力に敏感な透明な領域を置きます。これはタッチパネル入力と呼ばれます。 ボタンの上の図でわかるように、透明な領域が表示され、ドットのグリッドで示されています。 プロパティでは、多くの興味深いものを選択できますが、16ビットワードを0101に設定するだけです。Constantフィールドで指定された数値がメモリに書き込まれます。







開発環境の機能を使用すると、小さなスクリプトを作成できます。パネルは最もシンプルで、小数に分割する方法すら知らず、整数数学のみに制限されていますが、組み込みの数学プロセッサを備えたモデルがあり、三角法と統計をスクリプトで解決できます。 スクリプトはDスクリプトと呼ばれ、特定の画面がアクティブなときにグローバルまたは実行できます。 スクリプトの追加/編集ウィンドウの左側には非常に便利なツールバーがあり、メモリ内のアドレスを読み取るときに発生し、メモリセルへの呼び出しを正しく作成するのに役立つコードを作成するための小さなヘルパーもあります。







この例では、スクリプトは毎秒タイマーから起動され、0101の値に応じてセル0100のビットを設定します。タイマーに加えて、スクリプトをハングさせることができます。





スクリプトは非常に簡単です。

if ([w:0101]==0) {

[w:0100]=1

}

endif



if ([w:0101]==1) {

[w:0100]=2

}

endif



if ([w:0101]==2) {

[w:0100]=4

}

endif



if ([w:0101]==3) {

[w:0100]=8

}

endif



if ([w:0101]==4) {

[w:0100]=16

}

Endif







原則として、私たちに必要なものはすべて実装されています。 このパネルは、RS232またはRS422規格に従って、COMポートを介してコントローラーと通信します。 通信プロトコル自体はコントローラーに依存し、シーメンスなどのブランドは、パネルがコントローラーに割り込みを送信できるようにし、一般に、コントローラーが見つかるまでパネルは動作しません。 この例では、メモリリンクプロトコルが使用されており、それに応じてコントローラのみがアクティブになります。 このプロトコルにより、コントローラはパネルメモリを読み書きできます。 例えば:

[ESC] R 0100-0100の内容を読み取り、それに応答してパネルから受信します

[ESC] FFFF -FFFFと表示されている場合



書き込みコマンド:

[ESC] W 0100、000F-いかなる影響も受けないため、書き込み制御が必要な場合は強制的に読み取りを行う必要があります。



All Articles