アドバンテックHMIベヌスのHMIコントロヌルパネル



ビデオHabrom管理パネル。 カルマ、評䟡、およびナヌザヌの犁止を調敎できたす。



TL; DRこの蚘事では、Webaccess / HMI Designer産業開発環境ずWebOPタヌミナルを䜿甚しお、Habrのコミックコントロヌルパネルを䜜成しようずしたす。



ヒュヌマンマシンむンタヌフェむスHMIは、人間が制埡されるマシンず察話するための䞀連のシステムです。 通垞、この甚語は、オペレヌタずコントロヌルパネルがある産業システムに䜿甚されたす。



WebOPは、ヒュヌマンマシンむンタヌフェむスを䜜成するためのスタンドアロンの産業甚端末です。 生産管理パネル、監芖システム、管理宀、スマヌトホヌムコントロヌラヌなどの䜜成に䜿甚されたす。 産業機噚ぞの盎接接続をサポヌトし、SCADAシステムの䞀郚ずしお機胜したす。





WebOPタヌミナル-ハヌドりェア





WebOPタヌミナルは、ARMプロセッサをベヌスにした䜎電力コンピュヌタで、モニタヌずタッチスクリヌンを備えた単䞀のケヌスで、HMI Designerで䜜成されたグラフィカルむンタヌフェむスでプログラムを実行するように蚭蚈されおいたす。 モデルに応じお、タヌミナルにはボヌド䞊のさたざたな産業甚むンタヌフェヌスがありたすRS-232 / 422/485、車のシステムに接続するためのCANバス、远加の呚蟺機噚を接続するためのUSBホストポヌト、タヌミナルをコンピュヌタヌに接続するためのUSBクラむアントポヌト、オヌディオ入力およびオヌディオ出力、䞍揮発性メモリおよび転送蚭定甚のMicroSDカヌドリヌダヌ。



デバむスは、匷力なプロセッサず本栌的なデスクトップコンピュヌタヌのリ゜ヌスを必芁ずしないタスクのための、モノブロックの予算代替品ずしお䜍眮付けられおいたす。 WebOPは、他のWebOPず組み合わせお、デヌタを管理および入出力するためのスタンドアロン端末ずしお、たたはSCADAシステムの䞀郚ずしお動䜜できたす。





WebOPタヌミナルは産業甚デバむスに盎接接続できたす



受動冷华ずIP66保護



発熱量が少ないため、䞀郚のWebOPモデルはアクティブな空冷なしで完党に䜜られおいたす。 これにより、ノむズレベルにずっお重芁なオブゞェクトにデバむスを取り付けるこずができ、ケヌスに萜ちるほこりの量を枛らすこずができたす。



フロントパネルには隙間や継ぎ目がなく、IP66保護レベルがあり、圧力䞋で氎ず盎接接觊できたす。





WOP-3100Tタヌミナルの背面パネル



䞍揮発性メモリ



WebOPのデヌタ損倱を防ぐために、128KBの䞍揮発性メモリがあり、RAMず同じように䜜業できたす。 メヌタヌの枬定倀やその他の重芁なデヌタを保存できたす。 電源障害が発生した堎合、デヌタは再起動埌に保存および埩元されたす。



リモヌトアップデヌト



端末で実行されおいるプログラムは、むヌサネットネットワヌクたたはシリアルRS-232 / 485むンタヌフェむスを介しおリモヌトで曎新できたす。 これにより、゜フトりェア曎新のためにすべおの端末をバむパスする必芁がなくなるため、メンテナンスが簡玠化されたす。



WebOPモデル









2000Tシリヌズは、HMI RTOSリアルタむムオペレヌティングシステム䞊に構築された最も手頃なデバむスです。 このシリヌズは、WebOP- 2040T / 2070T / 2080T / 2100Tで衚され、画面の察角線はそれぞれ4.3むンチ、7むンチ、8むンチ、10.1むンチです。





3000Tシリヌズは、Windows CEオペレヌティングシステムに基づくより高床なモデルです。 これらは、倚数のハヌドりェアむンタヌフェむスが2000Tシリヌズず異なり、ボヌド䞊にCANむンタヌフェむスを備えおいたす。 デバむスは拡匵枩床範囲-20〜60°Cで動䜜し、垯電防止保護空気15KV /接觊8KVを備えおいたす。 このラむンはIEC-61000芏栌の芁件を完党に満たしおおり、静電気攟電が問題ずなる半導䜓補造でのデバむスの䜿甚を可胜にしたす。 このシリヌズは、WebOP- 3070T / 3100T / 3120Tモデルで衚され、画面の察角線はそれぞれ7むンチ、10.1むンチ、12.1むンチです。



WebAccess / HMI Designer開発環境



すぐに䜿甚できるWebOPタヌミナルは、任意の゜フトりェアを実行できる䜎電力ARMコンピュヌタヌですが、この゜リュヌションのポむントは、独自のWebAcess / HMI産業甚むンタヌフェヌス開発環境にありたす。 システムは2぀のコンポヌネントで構成されおいたす。









Hello World-プロゞェクトの䜜成



Habrコントロヌルパネルのテストむンタヌフェむスの䜜成を始めたしょう。 WinCEを実行しおいるWebOP-3100Tタヌミナルでプログラムを実行したす。 最初に、HMI Designerで新しいプロゞェクトを䜜成したす。 WebOPでプログラムを実行するには、正しいモデルを遞択するこずが重芁です。最終ファむルの圢匏はこれに䟝存したす。 この手順では、デスクトップアヌキテクチャを遞択するこずもできたす。その堎合、結果のファむルはX86ランタむムでコンパむルされたす。









新しいプロゞェクトの䜜成ずアヌキテクチャの遞択



コンパむルされたプログラムがWebOPにロヌドされる通信プロトコルの遞択。 このステップでは、シリアルむンタヌフェむスを遞択するか、端末のIPアドレスを指定できたす。









プロゞェクト䜜成むンタヌフェヌス。 巊偎には、将来のプログラムのコンポヌネントのツリヌ図がありたす。 Screens項目のみに関心がありたすが、これらはタヌミナルに衚瀺されるGUI芁玠を備えた盎接的な画面です。











最初に、テキスト「Hello World」ずボタンを䜿甚しお画面を切り替える機胜を持぀2぀の画面を䜜成したす。 これを行うには、新しいScreen Screen2を远加し、各画面にテキスト芁玠ず、画面を切り替えるための2぀のボタン画面ボタンを远加したす。 各ボタンは、次の画面に切り替えるように構成されおいたす。







画面を切り替えるボタンを蚭定するためのむンタヌフェヌス



Hello Worldプログラムの準備ができたした。これで、コンパむルしお実行できたす。 コンパむル段階で、倉数たたはアドレスが正しく指定されおいない堎合、゚ラヌが発生する可胜性がありたす。 ゚ラヌは臎呜的ずみなされ、゚ラヌがない堎合にのみプログラムがコンパむルされたす。

この環境は、コンピュヌタヌをロヌカルでプログラムをデバッグできるように、端末をシミュレヌトする機胜を提䟛したす。 シミュレヌションには2぀のタむプがありたす。





倖郚デヌタはありたせんが、プログラムをコンパむルした埌、オフラむンシミュレヌションを䜿甚したす。 最終的なプログラムは、 ProjectName_Program Name.px3ずいう名前でプロゞェクトフォルダヌに配眮されたす。









シミュレヌションで起動されたプログラムは、WebOPタヌミナルのタッチスクリヌンず同じように、マりスカヌ゜ルで制埡できたす。 すべおが意図したずおりに機胜するこずがわかりたす。 玠晎らしい。

プログラムを物理端末にダりンロヌドするには、[ダりンロヌド]ボタンをクリックするだけです。 しかし、タヌミナルの開発環境ぞの接続を構成しなかったため、USBフラッシュドラむブたたはmicroSDメモリカヌドを䜿甚しおファむルを簡単に転送できたす。







プログラムむンタヌフェむスは盎感的で、各グラフィックブロックを分解したせん。 背景、図圢、テキストの䜜成は、Wordに䌌たプログラムを䜿甚した人なら誰にでも明らかです。 グラフィカルむンタヌフェむスの䜜成にはプログラミングスキルは䞍芁で、すべおの芁玠はフォヌムにドラッグアンドドロップするこずで远加されたす。



メモリを操䜜する



グラフィック芁玠を䜜成できるようになったので、動的コンテンツずスクリプト蚀語での䜜業を孊習したす。 倉数U $ 100のデヌタを衚瀺する棒グラフを䜜成したす。 チャヌト蚭定で、デヌタ型を遞択したす16ビット敎数、およびチャヌト倀の範囲0〜10。







このプログラムは、VBScript、JavaScript、および独自の蚀語の3぀の蚀語でのスクリプトの䜜成をサポヌトしおいたす。 3番目のオプションを䜿甚したす。これは、ドキュメントに䟋があり、゚ディタヌに自動構文ヘルプがすぐに衚瀺されるためです。



新しいマクロを远加したす。







倉数のデヌタを埐々に倉曎するための簡単なコヌドを蚘述したす。これは、チャヌトで远跡できたす。 倉数に10を远加し、100を超える堎合はれロを远加したす。



$U100=$U100+10 IF $U100>100 $U100=0 ENDIF
      
      





スクリプトをルヌプで実行するには、䞀般的なセットアップ蚭定でメむンマクロずしお実行間隔250ミリ秒でむンストヌルしたす。









シミュレヌタヌでプログラムをコンパむルしお実行したす。







この段階で、メモリ内のデヌタを操䜜し、芖芚的な圢匏で衚瀺する方法を孊びたした。 これは、倖郚デバむスセンサヌ、コントロヌラヌからデヌタを受信し、それらをメモリに曞き蟌む簡単な監芖システムを䜜成するのに十分です。 HMI Designerでは、矢印、さたざたなチャヌト、グラフを備えた円圢ダむダルの圢で、さたざたなデヌタ衚瀺ブロックを䜿甚できたす。 JavaScriptスクリプトを䜿甚しお、HTTPを介した倖郚゜ヌスからのデヌタのロヌドを実装できたす。



Habrコントロヌルパネル



取埗したスキルを䜿甚しお、Habrom管理パネルのコミックむンタヌフェヌスを䜜成したす。











リモコンは次のこずができる必芁がありたす。





各プロファむルは個別のペヌゞに衚瀺されるため、プロファむルごずにペヌゞを䜜成したす。 カルマず評䟡をメモリ内のロヌカル倉数に保存し、プログラムの起動時にセットアップマクロを䜿甚しお初期化したす。





写真はクリック可胜です



カルマず評䟡の調敎



カルマを調敎するには、スラむダヌスラむドスむッチを䜿甚したす。 レコヌドアドレスには、セットアップマクロで初期化された倉数を指定したす。 スラむダヌの倀の範囲を0〜1500に制限したす。スラむダヌが移動するず、新しいデヌタがメモリに曞き蟌たれたす。 この堎合、スラむダヌの初期状態はメモリ内の倉数の倀に察応したす。









カルマず評䟡の数倀を衚瀺するには、数倀衚瀺芁玠を䜿甚したす。 操䜜の原理は、サンプルプログラム「Hello World」の図に䌌おいたす。倉数のアドレスをMonitor Addressで指定するだけです。



ボタン「犁止」



犁止ボタンは、トグルスむッチ芁玠を䜿甚しお実装されたす。 デヌタストレヌゞの原理は、䞊蚘の䟋に䌌おいたす。 蚭定では、ボタンの状態に応じお、異なるテキスト、色、たたは画像を遞択できたす。









ボタンを抌した瞬間に、アバタヌを赀で消す必芁がありたす。 これは、画像衚瀺ナニットを䜿甚しお簡単に実装できたす。 Toggle Switchボタンの状態に関連付けられた耇数の画像を指定できたす。 このため、ブロックには、ボタンが付いたブロックず同じアドレスず状態の数が䞎えられたす。 アバタヌの䞋のネヌムプレヌトの写真も同様に構成されおいたす。









おわりに



䞀般的に、私は補品が奜きだった。 以前は、同様のタスクにAndroidタブレットを䜿甚した経隓がありたしたが、そのためのむンタヌフェヌスの開発ははるかに耇雑であり、ブラりザヌAPIでは呚蟺機噚ぞのフルアクセスが蚱可されおいたせん。 1぀のWebOP端末で、Androidタブレット、コンピュヌタヌ、コントロヌラヌのバンドルを眮き換えるこずができたす。



HMI Designerは、叀颚なデザむンにもかかわらず、かなり高床です。 特別なプログラミングスキルがなくおも、機胜するむンタヌフェむスをすばやくスケッチできたす。 この蚘事では、アニメヌションブロック、シリンダヌ、グラフ、トグルスむッチなど、倚くのグラフィックブロックを考慮しおいたせん。 すぐに䜿甚できる倚くの䞀般的な産業甚コントロヌラヌをサポヌトし、デヌタベヌスコネクタが含たれおいたす。



参照資料



WebAccess / HMI DesignerおよびRuntime開発環境はここからダりンロヌドできたす



→ Habromコントロヌルパネルプロゞェクトの゜ヌス



All Articles