(57)【要約】【課題】多数の変数で構成される、構造体変数のモニタを行う際に構造体のモニタをしやすいモニタ装置を提供する。【解決手段】モニタ装置は、通信部を介して制御装置の変数の値を取得し、ディスプレイ上に表示する。表示対象の変数が構造体型の変数であった場合には、構造体のメンバと配列要素の行または列にそれぞれ配置した行列の形式で表示を行う表示制御部を有する。【選択図】図３
2016018250.tif 000002
【特許請求の範囲】
【請求項１】
制御装置とデータの送受信が可能なように接続され、前記制御装置の変数の値を取得し、表示可能に構成されたモニタリング装置であって、
前記モニタリング装置は、
前記制御装置との間で通信を行い、前記制御装置の変数の値を周期的に取得する通信部と、
前記制御装置で用いられる前記変数についてのデータ型、要素名を含む変数の定義情報を記憶する記憶部と、
前記取得された変数の値を、ディスプレイ上で前記定義情報で定義された情報と対応づけて表示する表示制御部と、を備え、
前記表示制御部は、
前記表示対象の変数が構造体型の変数である場合に、前記構造体型の変数における要素名を行及び列に展開した表形式に並べ、前記取得した変数の値を前記要素に対応するように表示するよう制御する、
ことを特徴とするモニタリング装置。
【請求項２】
前記モニタリング装置は、
前記表示対象の要素について指定をさせる入力部をさらに備え、
前記表示制御部は、前記入力部から表示対象の前記要素についての指定を受け付けると、前記指定された、前記要素についてのみ表示するように制御する、
請求項１に記載のモニタリング装置。
【請求項３】
前記モニタリング装置は、
書き換え対象の変数を指定及び書き換える変数の値を入力する入力部をさらに備え、
前記表示制御部は、前記入力部から前記変数の要素または変数の値につき書き換えの入力を受け付けると、前記入力された変数の値と、前記変数の現在値とを比較可能な容態でディスプレイ上に表示し、
前記通信部は、前記入力部から入力された変数の値を通信部を介して制御装置に送信する、
請求項１に記載のモニタリング装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、機械や設備の制御に用いられる制御装置のモニタリング装置に関する。
【背景技術】
【０００２】
制御装置において制御プログラムに用いられる、変数のモニタを行う技術が知られている（例えば、特開２００２−３１２１９７号公報）。特開２００２−３１２１９７号公報では、プログラミング装置においてソースプログラムがなくとも制御プログラムに用いられる変数のモニタを行う技術が開示されている。
【０００３】
製造現場においては、当該モニタ機能は、制御装置が制御する機械の動作を当該変数の現在値を確認しながら、その値を変更し機械が正常に動作するかどうかを確認するためのデバッグのシーンや、機械が異常動作をした際には、当該モニタ装置を介して当該変数の値を確認及び修正を行い機械が正常に動作するように異常状態の解析に用いられる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００２−３１２１９７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
制御プログラムにおいて構造体を用いる場合がある。構造体は異なる型のデータを一括して扱うことができ、プログラミングの利便性を向上させるため制御装置を動作させるプログラムにおいてしばしば用いられる。
【０００６】
上述したようなシーンで構造体型の変数のモニタを行う場合、数多くの変数が存在する場合は、モニタを行う場合には表示される領域が画面上に収まり切らない場合があり、比較表示を行うことに関してユーザに不便を強いていた。
【課題を解決するための手段】
【０００７】
モニタリング装置は、制御装置とデータの送受信が可能なように接続され、制御装置の変数の値を取得し、表示可能に構成される。記モニタリング装置は、記制御装置との間で通信を行い、制御装置の変数の値を周期的に取得する通信部と、記制御装置で用いられる変数についてのデータ型、要素名を含む変数の定義情報を記憶する記憶部と、取得された変数の値を、ディスプレイ上で定義情報で定義された情報と対応づけて表示する表示制御部と、を備える。表示制御部は、表示対象の変数が構造体型の変数である場合に、構造体型の変数における要素名を行及び列に展開した表形式に並べ、取得した変数の値を前記要素に対応するように表示するよう制御する。
【０００８】
好ましくは、モニタリング装置は、表示対象の要素について指定をさせる入力部をさらに備える。表示制御部は、入力部から表示対象の前記要素についての指定を受け付けると、指定された、要素についてのみ表示するように制御する。
【０００９】
好ましくは、モニタリング装置は、書き換え対象の変数を指定及び書き換える変数の値を入力する入力部をさらに備える。表示制御部は、入力部から変数の要素または変数の値につき書き換えの入力を受け付けると、入力された変数の値と、変数の現在値とを比較可能な容態でディスプレイ上に表示する。通信部は、入力部から入力された変数の値を通信部を介して制御装置に送信する。
【発明の効果】
【００１０】
上記の発明によれば，制御プログラムに用いられる構造体のモニタをマトリックス形式で表示することで、変数の値を比較検討しながら変数の値の修正を行うことが可能となる。
【図面の簡単な説明】
【００１１】
【図１】本発明の実施の形態に係るＰＬＣシステムを示す模式図である。
【図２】コントローラサポート装置のモニタ機能のユーザインターフェースを示す図である。
【図３】コントローラサポート装置のモニタ機能のユーザインターフェースを示す図である。特に構造体配列型の変数を用いた場合のモニタ機能のユーザインタフェースを示す図である。
【図４】構造体配列型の変数の表示するためのユーザインターフェースを示す図である。
【図５】選択されたメンバを表示する図である。
【図６】本発明の実施形態について機能構成を示す図である。
【図７】本発明の実施形態について動作の流れを説明するフローチャートである。
【図８】コントローラサポート装置のハードウェアブロック図を示す模式図である。
【発明を実施するための形態】
【００１２】
＜Ａ．システム全体構成＞
まず、コントローラサポート装置によって使用および運用を支援されるＰＬＣを含むシステムについて説明する。
【００１３】
図は、本発明の実施の形態に係るＰＬＣシステムＳＹＳを示す模式図である。本実施の形態に係るＰＬＣシステムＳＹＳは、ＥｔｈｅｒＣＡＴ（登録商標）を介して互いに通信可能に接続されたＰＬＣ１と、情報処理装置としてのコントローラサポート装置１００を含む。
【００１４】
各ＰＬＣ１は、典型的には、プログラムを実行する主体であるＣＰＵユニット１０と、ＣＰＵユニット１０などへ電力を供給する電源ユニット１２と、フィールドからの信号を遣り取りするＩＯ（Input/Output）ユニット１４とを含む。ＩＯユニット１４は、ＣＰＵユニット１０とシステムバス１１を介して接続されている。典型的には、ＩＯユニット１４は、フィールド機器である検出センサ６から入力信号を取得し、またＣＰＵユニット１０でのプログラムの実行結果に応じてフィールド機器であるリレー７を駆動する。
【００１５】
表示器５は、タッチパネルなどの操作部と液晶ディスプレイなどの表示部とＣＰＵユニット１０と通信する通信部と各部を制御する制御部とを備える。ＰＬＣ１は、表示器５の操作部による操作に応じて各種の設定の変更が可能であり、ＰＬＣ１の所定の情報を表示器５に表示させることが可能である。
【００１６】
コントローラサポート装置１００は、ＰＬＣ１で実行されるプログラムおよび設定情報を生成する機能とともに、接続先のＰＬＣ１の運転状態や各種データの値などをモニタする機能を有している。さらに、コントローラサポート装置１００は、ユーザによる実行可能プログラムの生成を支援するため、デバック機能やシミュレーション機能を有していてもよい。サポート装置１００は、一例として、接続ケーブル１３によって、ＰＬＣ１のＣＰＵユニット１０に接続される。なお、コントローラサポート装置１００は、典型的には、パーソナルコンピュータで実現される。
【００１７】
以下では、コントローラサポート装置を用いて、ＰＬＣシステムＳＹＳの動作状態をモニタする機能に関して説明をする。
【００１８】
＜Ｂ．処理の概要＞
コントローラサポート装置１００は、例えばイーサネット（登録商標）やＵＳＢ等汎用のインターフェースを介してＰＬＣ１に接続される。
【００１９】
コントローラサポート装置１００は、“オンライン接続”等の指令を受け付けると、接続されているＰＬＣ１とのコマンドの送受信を行い、ＰＬＣ１のメモリに格納されているユーザプログラムの修正や変数のダウンロード乃至はアップロードか可能なオンライン状態に遷移する。
【００２０】
コントローラサポート装置１００は、オフライン状態とオンライン状態では異なる容態でユーザに表示する等の機能を備えていても良い。
【００２１】
ＰＬＣ１は、ユーザプログラムを実行することで制御対象を制御する。ＰＬＣ１は、コントローラサポート装置１００とオンライン状態となっている場合、コントローラサポート装置１００から変数値の取得に関するコマンドを受信すると、メモリに格納されている変数の値を通信インターフェースを介してコントローラサポート装置１００に転送する。
【００２２】
コントローラサポート装置１００は、通信インターフェースを介してＰＬＣ１から転送された変数の値を受信し、メモリに格納する。コントローラサポート装置１００は、定期的にコマンドを送信し、ＰＬＣ１の変数の現在値を取得することにより、変数のモニタ機能を実現する。
【００２３】
図２を参照して、コントローラサポート装置１００における変数のモニタ機能について説明する。コントローラサポート装置１００は、モニタを行う対象の変数の登録を受け付ける。図はモニタを行う変数を登録するユーザインターフェースを説明する図である。コントローラサポート装置１００における変数のモニタを行うユーザインターフェース（以後ウォッチウインドウとも称する）は、“Name”，“Online value”, “Modify”, “Comment”, “Data type”, “AT”, “Display format”から構成される。“Name”の項目には、モニタを行う変数が登録される。
【００２４】
モニタを行う変数はキーボード等の外部の入力を介して変数名を入力し、確定操作を行うことで登録がなされる。
【００２５】
コントローラサポート装置１００は、モニタを行う変数が登録されるとメモリから当該変数における現在値を読出し、“Online value”の項目に表示する。
【００２６】
“AT”の項目には、割り付け先が表示される。“Data type”には変数の型が表示され
る。“Display format”には現在値、変更値名等の表示する値の表示形式が表示される。
【００２７】
ウォッチウインドウは、ＰＬＣ１の変数を書き換える機能を有する。“Modify”の項目には、キーボード等の外部の入力を受け付けて修正したい変数の値を入力する。変数が入力されると、コントローラサポート装置１００は、ＰＬＣ１が演算する変数の値を入力された値に書き換えるコマンドを送信する。ＰＬＣ１はコントローラサポート装置１００から当該コマンドを受信すると、メモリ上の変数の値の書き換えを実行する。
【００２８】
コントローラサポート装置１００は変数の現在値を読み出すコマンドをＰＬＣ１に対して送信する。ＰＬＣ１は現在値を読み出すコマンドを受信すると、メモリに格納されてい
る変数の値をコントローラサポート装置１００に対して送信する。コントローラサポート装置１００は変数の値を受信するとメモリに格納するとともに、ウォッチウインドウにおける“Online value”の項目に表示する。
【００２９】
図３を参照して、構造体型の変数のモニタ機能を説明する。ウォッチウインドウは“Name”、“Index”、“Modify”、“Comment”、”Data type”、“AT”、“Display format”の項目及び構造体型の変数の値を表示する“Online value（Table）”から構成される。
【００３０】
“Name”の項目に構造体配列型の変数が登録される。ウォッチウインドウは、キーボード等の外部入力機器からの入力を受け付けて構造体配列の変数が入力され、確定の入力がなされると構造体型の変数が登録される。
【００３１】
構造体型の変数が登録されると、ウォッチウインドウはメモリ上の変数の値を読出し“Online value（Table）”に表示をする。“Index”は“Online value（Table）”上のコ
ンソールで指定されている構造体配列型の変数のメンバ名を表示する。“Comment”はコ
ンソールで指定されている変数に関連づけられて登録されている情報を表示する。
【００３２】
図３では、構造体配列型の変数“gStr”について、現在値を表示している例を示している。“Online value(Table)”においては、“gStr”における構造体のメンバ名を及び変
数の型を表示している。BOOL型の変数、メンバ名“param1”、INT型の変数、メンバ名“param2”、STRING型の変数、メンバ名“param3”、WORD型の変数、メンバ名“param4”、REAL型の変数、メンバ名“param5”を横軸として、当該メンバの変数を縦に表示している
。
【００３３】
このように構造体配列型の変数について表示させるように制御しているため、多数の変数が存在する場合であっても、比較を行いながらモニタを行うことができる。
【００３４】
“Modify”の項目には、キーボード等の外部の入力を受け付けて修正したい変数の値を入力する。変数が入力されると、コントローラサポート装置１００は、ＰＬＣ１が演算する変数の値を入力された値に書き換えるコマンドを送信する。ＰＬＣ１はコントローラサポート装置１００から当該コマンドを受信すると、メモリ上の変数の値の書き換えを実行する。
【００３５】
コントローラサポート装置１００は変数の現在値を読み出すコマンドをＰＬＣ１に対して送信する。ＰＬＣ１は現在値を読み出すコマンドを受信すると、メモリに格納されている変数の値をコントローラサポート装置１００に対して送信する。コントローラサポート装置１００は変数の値を受信するとメモリに格納するとともに、ウォッチウインドウにおける“Online value”の項目に表示する。
【００３６】
このように、変数に書き込む値と変数の現在値を分けて表示していることにより、ユーザは入力をした値が反映がなされたか否かを容易に確認することができる。
【００３７】
次に図４を参照して、ウォッチウインドウの“Online value(Table)”で表示される構
造体配列型の変数名を選択する例について説明をする。
【００３８】
図４は、表示をさせる構造体配列側のメンバを選択するユーザインターフェースを示す。構造体配列型の変数について、当該構造体配列型の変数に含まれるメンバ名を選択可能なインターフェースとして表示する。図では、構造体配列型メンバに“param1”、“param2”、“param3”、“param4”、“param5”・・・とチェックボックスが表示される。外部の入力機器から選択入力を受け付けて、確定操作の入力がなされると、ウォッチウインドウの“Online value(Table)”上では、選択されたメンバ名の変数のみが表示される。
【００３９】
図５では、図４で選択されたメンバが表示される例を示す。
【００４０】
このように構成することにより、ユーザが“Online value（Table）”上で表示される
変数を選択することができ、多数の変数が含まれる場合であっても一覧としてモニタを行うとが可能となる。
【００４１】
＜Ｃ．機能的構成＞
図６はコントローラサポート装置１００における機能構成を説明する図である。コントローラサポート装置１００は、“操作部１１１”と“表示部１１２”と“通信処理部１１３”と“表示制御部１１４”と“記憶部１１５”とを備える。
【００４２】
操作部１１１は、ユーザからの操作を受け付けるためのユーザインターフェースである。操作部１１１はキーボード、マウス等の入力手段に対応する。操作部１１１が受け付けた操作は、表示制御部１１４において、ユーザからの命令として受けつけられる。
【００４３】
表示部１１２は、各種の情報表示するためのインターフェースである。ディスプレイに対応する。通信処理部１１３はＰＬＣ１と通信を行うためのインターフェースである。記憶部１１５は情報を記憶するためのメモリである。
【００４４】
記憶部１１５は、通信インターフェースを介して受信した変数の現在値をメンバと対応づけて記憶するするメンバ現在値１１６、操作部１１１を介して入力された書き込み値をメンバと対応づけて記憶するメンバ書込値１１７、表示制御部１１４が表示を制御するための情報である表示列テーブル１１８を記憶する。
【００４５】
表示制御部１１４は、表示部１１２における表示を制御するユーザインターフェースのプログラムである。
【００４６】
表示制御部１１４は、コントローラサポート装置１００とＰＬＣ１がオンライン状態となるような命令を受け付けると、ＰＬＣ１との間でコマンドの送受信を行い、ＰＬＣ１のメモリに格納されているユーザプログラムの修正や変数のダウンロード乃至はアップロードか可能なオンライン状態遷移した状態を表示部１１２を介して通知する。
【００４７】
表示制御部１１４は、操作部１１１からの入力を受け付けてモニタ対象の変数が登録されると、記憶部１１５から該当する変数の状態を読出すとともに、表示列テーブル１１８で指定された情報に基づき、変数の現在値を表示させる。構造体配列型の変数が表示対象として登録された場合は、構造体のメンバ名と配列要素をマトリックス形式で表示をさせる。
【００４８】
また、表示制御部１１４は操作部１１１からの入力を受け付けて、変数の書き込みの命令を受け付けると、通信処理部１１３を介して書き込みを受け付けた値について通信処理部１１３を介してＰＬＣ１のメモリに対して書き込む動作を実行する。
【００４９】
図７を参照して、モニタ機能に関するコントローラサポート装置１００における制御の流れを説明する。
【００５０】
Ｓ１において、コントローラとの接続を受け付けるとコントローラサポート装置１００
は、ＰＬＣ１との通信を行い、オンライン状態へ遷移する。
【００５１】
Ｓ２において、コントローラサポート装置１００は、モニタ対象の変数名の登録を受け付ける。
【００５２】
Ｓ３において、コントローラとの切断の命令を受け付けると、オンライン状態からオフライン状態に遷移する。
【００５３】
Ｓ４において、Ｓ２において登録されたモニタ対象の変数名につき、メモリから変数名の現在値を取得する。
【００５４】
Ｓ５において、取得した値を行う制御を行う。登録された対象が構造体配列型の変数である場合については、メンバ名の配列要素をマトリックス状に表示するような制御を行う。
【００５５】
Ｓ６において、書き込みたいセルの値の選択を受付、Ｓ７において書き込みたい変数の値が入力されると、Ｓ７においてＰＬＣ１へ値を書き込む。
【００５６】
Ｓ１１において、非表示・表示のパラメータの選択を受け付けると、Ｓ１２において記憶部１１５に格納されている、表示列テーブル１１８の情報を書き換える。
【００５７】
＜Ｄ．コントローラサポート装置のハードウェア構成＞
図８は、本発明の実施の形態に係るコントローラサポート装置１００のハードウェア構成を示す模式図である。図を参照して、コントローラサポート装置１００は、典型的には、汎用のコンピュータで構成される。なお、メンテナンス性の観点からは、可搬性に優れたノート型のパーソナルコンピュータが好ましい。
【００５８】
コントローラサポート装置１００は、オペレーティングシステム（ＯＳ）を含む各種プログラムを実行するＣＰＵ１０１と、ＢＩＯＳや各種データを格納するＲＯＭ（Read Only Memory）１０２と、ＣＰＵ１０１でのプログラムの実行に必要なデータを格納するための作業領域を提供するメモリＲＡＭ１０３と、ＣＰＵ１０１で実行されるプログラムなどを不揮発的に格納するハードディスク（ＨＤＤ）１０４とを含む。
【００５９】
コントローラサポート装置１００は、さらに、ユーザからの操作を受け付けるキーボード１０５およびマウス１０６と、情報をユーザに提示するためのディスプレイ１０７とを含む。コントローラサポート装置１００は、ＰＬＣ１（ＣＰＵユニット１０）などと通信するための通信インターフェイス（ＩＦ）１０９を含む。
【００６０】
後述するように、コントローラサポート装置１００で実行される各種プログラムは、ＤＶＤ−ＲＯＭ９００に格納されて流通する。このＤＶＤ−ＲＯＭ９００に格納されたプログラムは、ＤＶＤ−ＲＯＭ駆動装置１０８によって読取られ、ハードディスク（ＨＤＤ）１０４などへ格納される。あるいは、上位のホストコンピュータなどからネットワークを通じてプログラムをダウンロードするように構成してもよい。
【符号の説明】
【００６１】
１：ＰＬＣ
５：表示器
６：検出センサ
７：リレー
１０：ＣＰＵユニット
１１：システムバス
１２：電源ユニット
１３：接続ケーブル
１４：ＩＯユニット
１００：コントローラサポート装置
１０１：ＣＰＵ
１０２：ＲＯＭ
１０３：ＲＡＭ
１０４：ＨＤＤ
１０５：キーボード
１０６：マウス
１０７：ディスプレイ
１０８：ＤＶＤ−ＲＯＭ駆動装置
１０９：通信ＩＦ
１１１：操作部
１１２：表示部
１１３：通信処理部
１１４：表示制御部
１１５：記憶部
１１６：メンバ現在値
１１７：メンバ書込値
１１８：表示列テーブル
ＳＹＳ：ＰＬＣシステム
【図１】
2016018250.tif 000003
【図２】
2016018250.tif 000004
【図３】
2016018250.tif 000005
【図４】
2016018250.tif 000006
【図５】
2016018250.tif 000007
【図６】
2016018250.tif 000008
【図７】
2016018250.tif 000009
【図８】
2016018250.tif 000010