(57)【特許請求の範囲】
【請求項１】
制御機器ごとのプロトコルに関する情報がプロファイル化されたプロファイルデータを記憶する記憶部と、
前記制御機器との間で回線データを送受信する通信部と、
前記回線データと前記プロファイルデータとを合成することによって、前記回線データに含まれる各データの属性の意味である属性意味情報と、前記回線データの値の意味である値意味情報と、前記回線データの値と、を対応付けした合成情報を生成する解析部と、
前記合成情報を表示する表示部と、
を備え、
前記プロファイルデータは、データ変換を行うソフトウェアではなく、前記制御機器ごとに異なるプロトコルで決められたフォーマットのデータ列として定義された情報であることを特徴とするプログラマブル表示器。
【請求項２】
前記プロファイルデータは、前記回線データ内に格納されている各データ列の属性を示す属性情報を有し、
前記解析部は、前記属性情報に基づいて前記回線データを属性ごとのデータ列に分割し、分割したデータ列毎に前記合成情報を生成することを特徴とする請求項１に記載のプログラマブル表示器。
【請求項３】
前記表示部は、前記通信部から前記制御機器に送信された送信データと、前記送信データに対する応答データとして前記制御機器から送信されて前記通信部が受信した受信データと、を１組の回線データとして合わせて表示することを特徴とする請求項１または２に記載のプログラマブル表示器。
【請求項４】
前記回線データは、当該回線データを送受信する制御機器を識別する装置識別情報を有し、
前記プロファイルデータは、前記装置識別情報と前記制御機器との対応関係を示す情報を含み、
前記通信部は、前記装置識別情報および前記プロファイルデータに基づいて、ユーザに指定された回線データを抽出し、
前記解析部は、抽出された回線データを用いて前記合成情報を生成することを特徴とする請求項１〜３のいずれか１つに記載のプログラマブル表示器。
【請求項５】
前記プロファイルデータは、エラーの内容、エラーの推定要因およびエラーに対する処置内容の少なくとも１つと、前記回線データ内で用いられるエラーコードと、が対応付けされたエラー定義情報を有し、
前記解析部は、前記回線データ内にエラーに関するエラー情報が含まれている場合、前記エラー定義情報に基づいて、前記エラーの内容、エラーの推定要因およびエラーに対する処置内容の少なくとも１つと、前記エラー情報とを対応付けした合成情報を生成することを特徴とする請求項１〜４のいずれか１つに記載のプログラマブル表示器。 
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御機器に接続されるプログラマブル表示器に関する。
【背景技術】
【０００２】
ＦＡ（Factory  Automation）等の産業分野では、ＰＬＣ（Programmable  Logic  Controller）等の制御機器に関する情報を表示しながら制御機器を管理および設定するプログラマブル表示器が用いられている。プログラマブル表示器と制御機器とを接続する通信Ｉ／Ｆとしては、ＲＳ２３２／ＲＳ４２２／ＲＳ４８５などのシリアル接続や、Ethernet（登録商標）等の複数種類の通信Ｉ／Ｆがある。【０００３】
また、ＦＡシステムの中には、１台のプログラマブル表示器で複数の制御機器の情報を表示するシステム構成を有したものがある。このようなＦＡシステムで用いられる通信プロトコルは、制御機器ごとに固有であり、プログラマブル表示器は制御機器ごとに異なるプロトコルをソフトウェアとして実装している。【０００４】
ＦＡシステムを正常に動作させるためには、プログラマブル表示器側のパラメータおよび制御機器側のパラメータ等の設定を正しく行う必要がある。パラメータ等の設定に不備がある場合には、プログラマブル表示器は正しく制御機器と通信を行うことができないので、プログラマブル表示器は、正しく情報を表示することができない。このような場合、プログラマブル表示器は、画面上に通信が異常であるといったアラームメッセージを表示する。例えば、プログラマブル表示器は、制御機器からの応答がない場合には、アラームメッセージとして「通信タイムアウト」などのアラームメッセージを表示する場合がある。【０００５】
従来のエラー解析方法では、プログラマブル表示器と制御機器との間の通信が異常であることは表示できるが、具体的な異常内容および対策方法についての情報を示すことはできなかった。このため、具体的な異常内容および対策方法を解析する際には、ユーザが、複数種類の通信Ｉ／Ｆを介して回線上を流れているデータを取得し、取得したデータを解析して原因を調査する必要があった。【０００６】
具体的には、まず、回線上のデータから異常となっているパケットデータを抽出するために、ユーザは、制御機器から送られてくる応答パケットデータの中から、正常応答または異常応答の結果が格納されている格納箇所に対してプロトコル仕様を確認する。そして、ユーザは、格納箇所に格納されている値が異常なパケットデータがあるか否かを確認し、制御機器が応答している全てのパケットデータから異常値を抽出する。そして、ユーザは、異常応答のパケットデータに格納されている具体的な異常値の意味を、プロトコル仕様を参照して確認する。さらに、ユーザは、異常の内容が判明した後に、プログラマブル表示器が送信したデータが正常であるか否かを、プロトコル仕様を参照して確認する。プログラマブル表示器が送信したデータが異常である場合には、プログラマブル表示器側の設定が正常であるか否かが確認される。【０００７】
従来から、ＰＣ（Personal  Computer）上のソフトウェアまたはハードウェアによって、シリアル回線またはEthernet（登録商標）回線の回線上に流れるデータを取得して表示するプログラマブル表示器はあった。例えば、Ethernet（登録商標）接続の場合、汎用的なＴＣＰまたはＵＤＰなどにおける、ヘッダ情報と実データ部とを区別して表示するプログラマブル表示器は存在する。【０００８】
ところが、このようなプログラマブル表示器は、制御機器ごとに固有のプロトコル部分については、ただのデータ列としての表示しかしていない。このため、ユーザは、取得した回線上のデータと制御機器ごとのプロトコル仕様とを照合しながらエラー解析を実施する必要があり、非常に時間がかかっていた。また、クリーンルームなどのＰＣを利用できない環境では、エラー解析を行うことが非常に困難であった。【０００９】
また、複数台のプログラマブル表示器が複数台の制御機器と通信している場合には、回線上に各機器のパケットデータ（送受信データ）が混在することになるので、膨大なデータの中から異常となっている通信データを抽出して解析するのに非常に時間がかかっていた。【００１０】
特許文献１に記載の表示器は、プログラマブルコントローラの動作の状態を示すデータの存在位置を示すコードとそのコードに割り当てられた名称情報とを対応させて記憶する記憶手段と、前記データを、記憶手段が記憶している名称情報で表示する表示手段とを備えている。
【先行技術文献】
【特許文献】
【００１１】
【特許文献１】特開２０００−２４２３０６号公報
【発明の概要】
【発明が解決しようとする課題】
【００１２】
しかしながら、上記従来の技術では、制御機器毎にプロトコルが異なる場合に、回線データを用いて各制御機器のエラー解析を行うことはできないという問題があった。【００１３】
本発明は、上記に鑑みてなされたものであって、制御機器毎にプロトコルが異なる場合であっても、各制御機器の解析に用いられる情報を容易に表示することができるプログラマブル表示器を得ることを目的とする。
【課題を解決するための手段】
【００１４】
上述した課題を解決し、目的を達成するために、本発明は、制御機器ごとのプロトコルに関する情報がプロファイル化されたプロファイルデータを記憶する記憶部と、前記制御機器との間で回線データを送受信する通信部と、前記回線データと前記プロファイルデータとを合成することによって、前記回線データに含まれる各データの属性の意味である属性意味情報と、前記回線データの値の意味である値意味情報と、前記回線データの値と、を対応付けした合成情報を生成する解析部と、前記合成情報を表示する表示部と、を備え、前記プロファイルデータは、データ変換を行うソフトウェアではなく、前記制御機器ごとに異なるプロトコルで決められたフォーマットのデータ列として定義された情報であることを特徴とする。
【発明の効果】
【００１５】
本発明によれば、制御機器毎にプロトコルが異なる場合であっても、各制御機器のエラー解析を容易に行うことが可能になるという効果を奏する。
【図面の簡単な説明】
【００１６】
【図１】図１は、実施の形態に係るプログラマブル表示器を備えた制御システムの構成を示す図である。
【図２】図２は、実施の形態に係るプログラマブル表示器の構成を示すブロック図である。
【図３】図３は、ＰＣで使用される一般的な回線データを表示するソフトウェアでのデータ表示例を示す図である。
【図４】図４は、機器プロトコルプロファイルを参照して送信データを作成し、作成したデータを送信する処理の処理手順を示すフローチャートである。
【図５】図５は、機器プロトコルプロファイルを参照して受信データを解析し、解析したデータを表示する処理の処理手順を示すフローチャートである。
【図６】図６は、回線データと機器プロトコルプロファイルとを合成し、合成した情報を表示する処理の処理手順を示すフローチャートである。
【図７】図７は、プロファイルデータと回線データとを合成した情報の第１例を示す図である。
【図８】図８は、プロファイルデータと回線データとを合成した情報の第２例を示す図である。
【図９】図９は、プロファイルデータと回線データとを合成した情報の第３例を示す図である。
【発明を実施するための形態】
【００１７】
以下に、本発明の実施の形態に係るプログラマブル表示器を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
【００１８】
実施の形態
図１は、実施の形態に係るプログラマブル表示器を備えた制御システムの構成を示す図である。制御システム１０１は、通信分析機能を備えたＭ個（Ｍは自然数）のプログラマブル表示器と、通信機能を備えたＮ個（Ｎは自然数）の制御機器と、通信線（回線）９と、を備えている。そして、プログラマブル表示器と制御機器とが通信線９を介して接続されている。この構成により、制御システム１０１では、プログラマブル表示器と制御機器との間でＭ対Ｎの通信形態がとられる。
【００１９】
本実施の形態では、制御システム１０１が、プログラマブル表示器１，２と、制御機器５，６と、を備えている場合について説明する。プログラマブル表示器１，２は、それぞれ制御機器５，６との間で通信を行い、制御機器５，６に関する情報を表示するとともに制御機器５，６への操作を行う。これにより、プログラマブル表示器１，２は、制御機器５，６に関する情報を表示しながら制御機器５，６を管理および設定する。制御機器５，６は、例えば、ＰＬＣ（Programmable  Logic  Controller）等であり、ロボット（図示せず）などの動作を制御する。
【００２０】
図２は、実施の形態に係るプログラマブル表示器の構成を示すブロック図である。プログラマブル表示器１，２は同様の構成を有しているので、ここではプログラマブル表示器１の構成について説明する。
【００２１】
プログラマブル表示器１は、通信部１０と、表示部４０と、機器プロトコルプロファイル２０を記憶する記憶部３と、通信データ解析部３０と、ハードウェアである通信Ｉ／Ｆ（インタフェース）３１と、を有している。
【００２２】
通信部１０は、表示部４０、通信データ解析部３０および記憶部３に接続されている。通信部１０は、通信Ｉ／Ｆ３１を介して制御機器５，６との間でデータの送受信を行う。通信部１０は、解析対象となる制御機器５，６に依存しない、各制御機器５，６に対して共通に用いられるソフトウェアである。
【００２３】
通信管理部１１は、通信関連の各ブロックのスケジューリングを行う。通信部１０は、通信管理部１１と、デバイスドライバ共通部１２と、データ送信部１３と、データ受信部１４とを具備している。通信管理部１１、データ送信部１３およびデータ受信部１４は、それぞれデバイスドライバ共通部１２に接続されている。また、デバイスドライバ共通部１２は、通信データ解析部３０および記憶部３に接続されている。
【００２４】
デバイスドライバ共通部１２は、記憶部３内の機器プロトコルプロファイル２０から制御機器５，６のプロトコル仕様を読み出して、制御機器５，６に送信する回線データ（送信パケットデータ）を作成する。また、デバイスドライバ共通部１２は、通信データ解析部３０との間の通信Ｉ／Ｆとなる。デバイスドライバ共通部１２は、制御機器５，６から送られてくる応答データ（回線データ）を読み出して、データを抽出する。デバイスドライバ共通部１２は、抽出したデータを通信管理部１１に送る。
【００２５】
データ送信部１３は、デバイスドライバ共通部１２で生成した回線データを、通信Ｉ／Ｆ３１を介して制御機器５，６に送信する。データ受信部１４は、制御機器５，６から送られてくる応答データを、通信Ｉ／Ｆ３１を介して受信する。データ受信部１４は、受信した応答データを、デバイスドライバ共通部１２に送る。
【００２６】
表示部４０は、制御機器５，６から取得した情報を表示する。通信Ｉ／Ｆ３１には、ＲＳ２３２／ＲＳ４２２／ＲＳ４８５などのシリアル接続や、Ethernet（登録商標）等の複数種類の通信Ｉ／Ｆがある。
【００２７】
機器プロトコルプロファイル２０は、制御機器５，６ごとに固有な通信プロトコルに関する情報（プロトコル情報）が、ソースコードではなく、プロファイル化されたデータ（プロファイルデータ）として作成されたものである。このように、プログラマブル表示器１は、制御機器５，６ごとに異なるプロトコル情報を、データ変換を行うソフトウェアとして実装せずに、機器プロトコルプロファイル２０として格納しておく。
【００２８】
機器プロトコルプロファイル２０は、制御機器５，６ごとのプロトコルに関する情報がプロファイル化されたプロファイルデータである。機器プロトコルプロファイル２０は、制御機器５，６ごとに異なる通信プロトコルで決められたフォーマットのデータ列として定義されている。機器プロトコルプロファイル２０は、パケットフォーマット２１、属性情報２２、デバイス情報２３、通信コマンド２４、エラー定義情報２５を含んで構成されている。
【００２９】
パケットフォーマット２１は、制御機器５，６の通信プロトコルで決められている回線データ（パケットデータ）のフォーマットに関する情報である。パケットフォーマット２１には、プログラマブル表示器１が制御機器５，６に送信する回線データのフォーマットと、制御機器５，６が応答する際に用いる回線データのフォーマットと、が含まれている。
【００３０】
属性情報２２は、回線データに含まれる各データ列の属性を示す情報である。属性情報２２には、プログラマブル表示器１が制御機器５，６に送信する回線データの属性と、制御機器５，６が応答する際に用いる回線データの属性と、が含まれている。
【００３１】
通信プロトコルの中には、プログラマブル表示器１，２および制御機器５，６などの制御システム１０１内の通信装置を一意に特定（識別）する属性（装置識別情報）を各通信装置に設定するものがある。このような装置識別情報は、例えばネットワーク番号または局番などである。本実施の形態では、このような装置識別情報を回線データおよび属性情報２２に含めておく。これにより、デバイスドライバ共通部１２は、エラー解析する際に、解析対象となる制御機器５，６が送信する回線データのみを容易に抽出することが可能となる。
【００３２】
デバイス情報２３は、制御機器５，６が有するデバイスに関する情報である。デバイス情報２３では、例えば、実デバイス名と、デバイスを識別する情報と、デバイスのアドレスとが、対応付けされている。なお、デバイスを識別する情報とデバイスのアドレスとは、同じデータであってもよい。
【００３３】
通信コマンド２４は、通信を行う際に用いられるコマンドである。通信コマンド２４には、例えば、アドレスが連続するデバイス（データレジスタなど）に対してデータ取得する場合に用いられる連続デバイス取得コマンド（連続読み出しコマンド）、アドレスが非連続なデバイスに対してデータ取得する場合に用いられるランダムデバイス取得コマンドなどがある。
【００３４】
エラー定義情報２５は、エラーに関する情報である。エラー定義情報２５は、制御機器５，６から送られてくる応答データ（パケットデータである回線データ）の中でエラー情報（エラーコード）を格納する位置を定義したエラー位置情報を有している。また、エラー定義情報２５は、エラーコードと、エラーの内容とを対応付けしたエラー対応情報を有している。
【００３５】
通信データ解析部３０は、制御機器５，６との間で送受信される回線データを収集・表示・解析（分析）する。具体的には、通信データ解析部３０は、制御機器５，６から取得した回線データを、機器プロトコルプロファイル２０を用いて解析する。
【００３６】
通信データ解析部３０は、プロトコルに依存せず、各プロトコルに共通して用いられるソフトウェアである。本実施の形態の通信データ解析部３０は、受信した回線データを機器プロトコルプロファイル２０とつき合わせることによって、回線データを属性ごとのデータ列に分割して認識する。
【００３７】
また、通信データ解析部３０は、機器プロトコルプロファイル２０と、制御機器５，６との間で送受信した回線データとを合成することによって、表示部４０に表示させる情報を生成する。これにより、通信データ解析部３０は、回線上の回線データに含まれるデータが異常であるか否かを示す情報を（異常値を示すデータ（エラーデータ）など）を表示部４０に表示させる。このように、本実施の形態の通信データ解析部３０は、機器プロトコルプロファイル２０と回線データとを合成することによって、回線データの解析を行う。
【００３８】
つぎに、ＰＣ（Personal  Computer）等で使用される一般的な回線データを表示するソフトウェア（回線データ表示ソフトウェア）について説明する。図３は、ＰＣで使用される一般的な回線データを表示するソフトウェアでのデータ表示例を示す図である。
【００３９】
回線データ表示ソフトウェアは、プログラマブル表示器１が送信したデータ９０と、制御機器５，６が応答した応答データ９１とを、データ列群９２として表示するものの、各データ列の意味までは表示しない。このため、エラー解析を行う際には、ユーザが、表示された回線上のデータ列と、制御機器５，６ごとのプロトコル仕様と、を照合しながらエラー解析を実施する必要があった。なお、従来のＰＣが備えるハードウェアでも、回線データ表示ソフトウェアと同様に、データ列の意味までは表示していなかった。
【００４０】
本実施の形態では、通信データ解析部３０が、データの解析処理として、プロファイルデータ（機器プロトコルプロファイル２０）と回線データ（送受信データ）とを合成することによって、表示部４０に表示させる情報の生成を行う。
【００４１】
例えば、通信データ解析部３０は、回線データにおいて「４４」と示されているデータ列に対し、機器プロトコルプロファイル２０に基づいて、「４４」と「エラー内容」と「形式不一致」とを対応付けして表示する。これにより、ユーザは、「形式不一致」のエラーコード「４４」が、回線データ内に含まれていることを容易に知ることができる。
【００４２】
つぎに、機器プロトコルプロファイル２０を参照して送信データを作成する処理の処理手順について説明する。図４は、機器プロトコルプロファイルを参照して送信データを作成し、作成したデータを送信する処理の処理手順を示すフローチャートである。ここでは、プログラマブル表示器１が制御機器５に回線データを送信する場合について説明する。
【００４３】
プログラマブル表示器１が制御機器５から取得するデータのうち、「データレジスタ」等の実デバイス名は、一般的にＰＣ上で動作するエンジニアリングソフトウェアを用いてユーザが作成したものを、プログラマブル表示器１へダウンロードしておく。プログラマブル表示器１では、実デバイス名を通信管理部１１内に格納しておく。
【００４４】
通信管理部１１は、デバイスドライバ共通部１２へ、データを取得すべき制御機器（データ取得対象）の実デバイス名を渡す（ステップＳ１０）。デバイスドライバ共通部１２は、機器プロトコルプロファイル２０を参照して、パケットフォーマット２１に従い、パケットの制御機器５に応じたヘッダ・フッタを作成する（ステップＳ１１）。ヘッダおよびフッタは、各制御機器５のプロトコルで規定されたものであり、ユーザが設定した実デバイス名に依存しない。
【００４５】
デバイスドライバ共通部１２は、以下のステップＳ１３の処理を、データ解析するデバイスのデバイス点数の数だけ繰り返す（ステップＳ１２）。デバイスドライバ共通部１２は、機器プロトコルプロファイル２０を参照して、実デバイス名からデバイス情報２３を引き当てて、回線データのヘッダとフッタとの間に追加する（ステップＳ１３）。換言すると、デバイスドライバ共通部１２は、デバイス情報２３の中から実デバイス名に対応付けられたデバイス情報２３を抽出してヘッダとフッタとの間に付加する。
【００４６】
デバイスドライバ共通部１２は、デバイス情報２３の群の並び（アドレス）から使用すべき通信コマンド２４を引き当て、回線データに追加する（ステップＳ１４）。このとき、デバイスドライバ共通部１２は、例えば、デバイス情報２３の群の並びに、アドレスが連続するデータレジスタが存在する場合には、通信コマンド２４として連続デバイス取得コマンドを抽出する。そして、デバイスドライバ共通部１２は、通信コマンド２４に連続デバイス取得コマンドを用いる。
【００４７】
また、デバイスドライバ共通部１２は、デバイス情報２３の群の並び（アドレス）が非連続でとびとびになっている場合には、通信コマンド２４としてランダムデバイス取得コマンドを抽出する。そして、デバイスドライバ共通部１２は、通信コマンド２４にランダムデバイス取得コマンドを用いる。
【００４８】
デバイスドライバ共通部１２は、ヘッダ、フッタ、デバイス情報２３および通信コマンド２４が設定された回線データをデータ送信部１３に渡す（ステップＳ１５）。そして、データ送信部１３が、通信Ｉ／Ｆ３１を介して制御機器５へ回線データを送信する（ステップＳ１６）。
【００４９】
つぎに、機器プロトコルプロファイル２０を参照して受信データを解析する処理の処理手順について説明する。図５は、機器プロトコルプロファイルを参照して受信データを解析し、解析したデータを表示する処理の処理手順を示すフローチャートである。ここでは、プログラマブル表示器１が制御機器５からデータを受信する場合について説明する。
【００５０】
データ受信部１４は、通信Ｉ／Ｆ３１を介して制御機器５からの回線データを受信する（ステップＳ２０）。データ受信部１４は、受信した回線データをデバイスドライバ共通部１２に渡す。
【００５１】
この後、デバイスドライバ共通部１２は、機器プロトコルプロファイル２０を参照する。機器プロトコルプロファイル２０には、エラー情報の回線データ上での位置が定義されたエラー定義情報２５が格納されている。このため、デバイスドライバ共通部１２は、エラー定義情報２５に基づいて、回線データからエラー情報（エラーコード）を抽出する（ステップＳ２１）。
【００５２】
エラー情報にエラー値が設定されていない場合（ステップＳ２２、Ｎｏ）、デバイスドライバ共通部１２は、以下のステップＳ２４の処理を、デバイス点数の数だけ繰り返す（ステップＳ２３）。デバイスドライバ共通部１２は、機器プロトコルプロファイル２０に基づいて、実デバイス名に対応するデバイス値を抽出する（ステップＳ２４）。デバイスドライバ共通部１２は、実デバイス名とデバイス値とのペアを通信管理部１１へ渡す（ステップＳ２５）。
【００５３】
一方、エラー情報にエラー値が設定されている場合（ステップＳ２２、Ｙｅｓ）、デバイスドライバ共通部１２は、エラー情報を通信管理部１１へ渡す（ステップＳ２７）。通信管理部１１は、これにより、表示部４０は、通信管理部１１から渡されたデバイス値またはエラー情報を表示する（ステップＳ２６）。プログラマブル表示器１では、回線データと機器プロトコルプロファイル２０とを合成することによって、エラー情報の意味などをエラー情報とともに表示する。
【００５４】
つぎに、回線データと機器プロトコルプロファイル２０とを合成する処理の処理手順について説明する。図６は、回線データと機器プロトコルプロファイルとを合成し、合成した情報を表示する処理の処理手順を示すフローチャートである。ここでは、プログラマブル表示器１が回線データと機器プロトコルプロファイル２０とを合成する場合について説明する。
【００５５】
通信管理部１１は、通信データ解析部３０に回線データを渡す（ステップＳ３０）。通信データ解析部３０は、以下のステップＳ３２〜３４の処理を、回線データの最初の属性から最後の属性まで繰り返す（ステップＳ３１）。
【００５６】
通信データ解析部３０は、機器プロトコルプロファイル２０のパケットフォーマット２１を参照して、回線データの中の次の属性を抽出する（ステップＳ３２）。そして、通信データ解析部３０は、機器プロトコルプロファイル２０の属性情報２２を参照して、回線データの各属性に各属性の意味に関する情報（意味情報）を追加する（ステップＳ３３）。
【００５７】
ここで、図７〜図９を参照して、機器プロトコルプロファイル２０（プロファイルデータ）と回線データとを合成することによって回線データを解析する処理の具体例について説明する。図７は、プロファイルデータと回線データとを合成した情報の第１例を示す図である。図８は、プロファイルデータと回線データとを合成した情報の第２例を示す図である。図９は、プロファイルデータと回線データとを合成した情報の第３例を示す図である。
【００５８】
図７では、プログラマブル表示器１から制御機器５に送信した送信データ５１と、送信データ５１に対する制御機器５からの応答データである受信データ６１と、からなる１組の合成後回線データ７１を示している。
【００５９】
図８では、プログラマブル表示器１から制御機器６に送信した送信データ５２と、送信データ５２に対する制御機器６からの応答データである受信データ６２と、からなる１組の合成後回線データ７２を示している。
【００６０】
図９では、プログラマブル表示器１から制御機器５に送信した送信データ５３と、送信データ５３に対する制御機器５からの応答データである受信データ６３と、からなる１組の合成後回線データ７３を示している。
【００６１】
機器プロトコルプロファイル２０は、プロトコル毎の、送信データ５１〜５３および受信データ６１〜６３の最上段および中段の情報である。また、回線データは、送信データ５１〜５３および受信データ６１〜６３の最下の情報である。そして、回線データと機器プロトコルプロファイル２０とを合成した合成情報が、図７〜図９の合成後回線データ７１〜７３などである。
【００６２】
通信データ解析部３０は、取得した回線上の回線データ（パケットデータ）と機器プロトコルプロファイル２０（プロファイルデータ）とを合成することによって、回線データの各データ列に、属性ごとの意味情報を合成する。これにより、回線データの各データ列に属性を対応付けて表示することが可能となる。
【００６３】
属性ごとの意味情報（以下、属性意味情報という）は、送信データ５１〜５３および受信データ６１〜６３の最上段の情報である。属性意味情報は、属性内のデータ（値）が何のデータであるかを示す情報（属性名など）である。属性意味情報は、例えば、送信データ５１の「開始」、「相手先」、「ＩＤ」、「通信コマンド」、「デバイス」、「点数」、「終端」にあたる部分である。
【００６４】
次に、通信データ解析部３０は、機器プロトコルプロファイル２０のデバイス情報２３、通信コマンド２４、エラー定義情報２５を参照して、送信データ５１〜５３および受信データ６１〜６３のデータの値に値ごとの意味情報（以下、値意味情報という）を追加する（ステップＳ３４）。値意味情報は、送信データ５１〜５３および受信データ６１〜６３の中段の情報である。値意味情報は、例えば、送信データ５１の「ＳＴＸ」、「局番１」、「１」、「連続読み出し」、「Ｄ０」、「３点」、「ＥＴＸ」にあたる部分である。      
【００６５】
このように、通信データ解析部３０は、回線データと機器プロトコルプロファイル２０とを合成することによって、属性意味情報と、値意味情報と、データの値と、を属性ごとに対応付けした合成情報（合成後回線データ７１〜７３）を生成する。
【００６６】
通信データ解析部３０は、ステップＳ３２〜Ｓ３４の処理を繰り返すことによって、回線データの終端まで合成処理が完了すると、プロファイルデータと回線データとを合成した情報（合成後回線データ７１〜７３など）を表示部４０に渡す。これにより、表示部４０は、合成後回線データ７１〜７３などの表示を行う（ステップＳ３５）。
【００６７】
例えば、合成後回線データ７１では、属性意味情報の「通信コマンド」と、値意味情報の「連続読み出し」と、データの値「１１」とが対応付けされている。したがって、合成後回線データ７１では、コマンド番号の「１１」の連続読み出しコマンドがプログラマブル表示器１から制御機器５に送られたことを示している。
【００６８】
また、合成後回線データ７１では、属性意味情報の「デバイス」と、値意味情報の「Ｄ０」と、データの値「Ｄ０」とが対応付けされている。したがって、合成後回線データ７１では、実デバイス名が「Ｄ０」のデバイスに対してデータ取得処理が行われたことを示している。
【００６９】
また、合成後回線データ７１では、属性意味情報の「デバイス値」と、値意味情報の「１００」と、データの値（デバイス値）「６４」とが対応付けされている。したがって、合成後回線データ７１では、デバイス値の「１００」（１６進数では「６４」）が制御機器５からプログラマブル表示器１に送られたことを示している。
【００７０】
例えば、合成後回線データ７１が表示されることによって、実デバイス名「Ｄ０」に対応するデバイス値が「１」（１６進数では「０１」）であり、実デバイス名「Ｄ１」に対応するデバイス値が「１００」（１６進数では「６４」）であり、実デバイス名「Ｄ２」に対応するデバイス値が「１２０」（１６進数では「７８」）であることを、ユーザは容易に認識することが可能となる。
【００７１】
プログラマブル表示器１に表示されている数値が異常値である場合、ユーザは、合成後回線データ７１〜７３を確認することによって、プログラマブル表示器１からの送信データと、制御機器５，６からの応答データ（受信データ）と、プログラマブル表示器１の表示制御と、のうちの何れに問題があるかを容易に知ることができる。
【００７２】
例えば、図７に示す受信データ６１において、デバイス値などが異常値である場合、ユーザは、送信データ５１のデバイスなどを確認すればよい。例えば、ユーザが本来「Ｄ１００」という実デバイス名を設定すべきところを、番号を間違えて「Ｄ０」と設定していた場合、ユーザは送信データ５１を確認することによって容易にデバイス設定の誤りを知ることができる。このように、プログラマブル表示器１が合成後回線データ７１を表示させるだけで、ユーザは、容易に異常個所を知ることができる。
【００７３】
また、プログラマブル表示器１が制御機器６と通信できない場合には、例えば、プログラマブル表示器１上でアラーム表示が行なわれる。この場合において、従来までは、制御機器６からのエラー応答に応じたエラー内容まで表示することは難しかった。
【００７４】
図８に示す合成後回線データ７２では、制御機器６からのエラー応答中のエラーコードの位置と値と意味とを合わせて表示しているので、通信エラーの内容を容易に明確にすることが可能となる。
【００７５】
例えば、プログラマブル表示器１側の通信形式を制御機器６側の通信形式に合わせ忘れている場合には、合成後回線データ７２のように属性意味情報の「エラー内容」と値意味情報の「形式不一致」とエラーコードの「４４」とが、対応付けされて表示される。したがって、ユーザは、表示されている合成後回線データ７２に基づいて、エラー原因が通信形式の形式不一致であることを直接知ることができる。
【００７６】
また、機器プロトコルプロファイル２０で定義されているエラー定義情報２５が、エラーの推定要因（原因）およびエラーに対する処置内容（対処方法）を含む構成としてもよい。例えば、通信データ解析部３０は、回線データ内のエラー内容と、エラーの推定要因（原因）およびエラーに対する処置内容（対処方法）の少なくとも一方と、を対応付けし、対応付けしたものを表示部４０に表示させる。
【００７７】
この構成により、通信異常が発生した場合であっても、推定原因および処置内容をプログラマブル表示器１に容易に表示することが可能となる。したがって、ユーザは、エラー原因を解決するための方法をさらに容易に知ることができる。
【００７８】
また、複数のプログラマブル表示器１，２と複数の制御機器５，６とが通信している場合には、送信データおよび受信データが回線上に混在する。このため、従来までは、データ解析の対象となる回線データを抽出するのに手間がかかっていた。通信プロトコルの中にはプログラマブル表示器１，２と制御機器５，６との間で通信している回線データ（パケット）にＩＤを付加するものがある。このＩＤ（装置識別情報）は、例えば、パケットを送信するごとにインクリメントされるものである。したがって、本実施の形態では、回線データを一意に特定するためのＩＤを回線データに埋め込むとともに、ＩＤを機器プロトコルプロファイル２０内に定義しておいてもよい。例えば、機器プロトコルプロファイル２０内に、ＩＤと制御機器５，６との対応関係を示す情報を含めておく。
【００７９】
これにより、回線データを解析する際に、ユーザに指定されたプログラマブル表示器および制御機器が送受信した回線データのペアを容易に抽出することが可能となる。例えば、通信データ解析部３０は、回線データの中から合成後回線データ７３のようなＩＤの値が一致する送信データと受信データとを容易に抽出することができる。この結果、解析対象とする送信データと受信データとを容易に表示できるので、ユーザは、エラーに関する情報を容易に知ることができる。
【００８０】
このように、プログラマブル表示器１内では、制御機器５，６ごとに異なるプロトコル情報をソフトウェアとして実装せずに、機器プロトコルプロファイル２０として定義している。
【００８１】
また、プログラマブル表示器１は、通信部１０と通信データ解析部３０とを独立させており、それぞれのソフトウェアが機器プロトコルプロファイル２０を参照して、制御機器５，６との間の通信、回線データの収集・解析・表示を行っている。そして、プログラマブル表示器１は、回線データの表示を行う際に、取得した回線データと機器プロトコルプロファイル２０とを合成することによって、回線データの各データに属性ごとの意味を合成して表示している。
【００８２】
なお、回線上の回線データはプログラマブル表示器１が動作している間は継続的に流れるので、メモリ制約が厳しい場合、プログラマブル表示器１上のメモリをリングバッファとして用いてもよい。この場合、プログラマブル表示器１は、あらかじめ設定したトリガ条件の前後期間の回線データまたはユーザに指定された期間の回線データを表示する。また、プログラマブル表示器１は、通信データ解析部３０での解析結果をＰＣなどで表示可能なテキスト形式またはＣＳＶ形式に変換して外部装置に出力してもよい。
【００８３】
このように、実施の形態によれば、制御機器５，６の接続立上げ時または設備運用時などに発生したトラブルを、ＰＣなどの外部機器（負荷設備）を使用せずに、プログラマブル表示器１のみで回線データの取得・表示・解析が可能になる。これにより、エラーの発生した現場で、プログラマブル表示器１と制御機器５，６との間の通信に関連するトラブルを迅速に解決することが可能になる。また、回線データの各データに属性ごとの意味を合成した情報、問題となっている特定の送信データ・受信データ、解析した結果考えられる推定原因および処置内容などを表示するので、ＰＣなどの外部機器を使用した場合よりも容易に異常の原因を突き止めて対策を施すことが可能になる。したがって、制御機器毎にプロトコルが異なる場合であっても、各制御機器のエラー解析を容易に行うことが可能になる。
【産業上の利用可能性】
【００８４】
以上のように、本発明に係るプログラマブル表示器は、通信異常の解析に適している。
【符号の説明】
【００８５】
１，２  プログラマブル表示器、３  記憶部、５，６  制御機器、１０  通信部、１１  通信管理部、１２  デバイスドライバ共通部、１３  データ送信部、１４  データ受信部、２０  機器プロトコルプロファイル、２１  パケットフォーマット、２２  属性情報、２３  デバイス情報、２４  通信コマンド、２５  エラー定義情報、３０  通信データ解析部、３１  通信Ｉ／Ｆ、４０  表示部、５１〜５３  送信データ、６１〜６３  受信データ、７１〜７３  合成後回線データ、１０１  制御システム。
【図１】
0005866067.tif 000002
【図２】
0005866067.tif 000003
【図３】
0005866067.tif 000004
【図４】
0005866067.tif 000005
【図５】
0005866067.tif 000006
【図６】
0005866067.tif 000007
【図７】
0005866067.tif 000008
【図８】
0005866067.tif 000009
【図９】
0005866067.tif 000010