(57)【要約】      （修正有）【課題】デバイスデータ収集において把握すべきデバイスのイベントを効率よく認識できるようにする。【解決手段】プログラマブル・ロジック・コントローラと通信を行なうプログラム開発支援装置１００であって、収集対象とするデバイスの指定と、デバイスのデバイスデータに関するイベントの検出条件の設定を受け付けるデバイスデータ収集設定受付部１２０と、プログラマブル・ロジック・コントローラのデバイスデータ収集の実行時に、指定したデバイスのデバイスデータを時系列で取得するデバイスデータ取得部１３０と、取得した時系列のデバイスデータから検出条件を満たすイベントを検出し、対応するデバイスデータを参照するためのマーキング情報を記録するイベント検出部１４０と、マーキング情報を、時系列のデバイスデータのグラフとともに表示する表示制御部１５０とを備えたプログラム開発支援装置。【選択図】図１
2015076049.tif 000002
【特許請求の範囲】
【請求項１】
プログラマブル・ロジック・コントローラと通信を行なうプログラム開発支援装置であって、
収集対象とするデバイスの指定と、前記デバイスのデバイスデータに関するイベントの検出条件の設定を受け付けるデバイスデータ収集設定受付部と、
前記プログラマブル・ロジック・コントローラのデバイスデータ収集の実行時に、指定したデバイスのデバイスデータを時系列で取得するデバイスデータ取得部と、
取得した時系列のデバイスデータから前記検出条件を満たすイベントを検出し、対応するデバイスデータを参照するためのマーキング情報を記録するイベント検出部と、
前記マーキング情報を、前記時系列のデバイスデータのグラフとともに表示する表示制御部とを備えたことを特徴とするプログラム開発支援装置。
【請求項２】
前記表示制御部は、前記マーキング情報の指定を受け付けると、指定されたマーキング情報に対応するデバイスデータを参照する表示を行なうことを特徴とする請求項１に記載のプログラム開発支援装置。
【請求項３】
前記デバイスデータを参照する表示は、前記マーキング情報に係るイベントが発生したタイミングを示す線分であることを特徴とする請求項２に記載のプログラム開発支援装置。
【請求項４】
情報処理装置を、プログラマブル・ロジック・コントローラと接続するプログラム開発支援装置として機能させるコンピュータプログラムであって、
収集対象とするデバイスの指定と、前記デバイスのデバイスデータに関するイベントの検出条件の設定を受け付けるデバイスデータ収集設定受付部と、
前記プログラマブル・ロジック・コントローラのデバイスデータ収集の実行時に、指定したデバイスのデバイスデータを時系列で取得するデバイスデータ取得部と、
取得した時系列のデバイスデータから前記検出条件を満たすイベントを検出し、対応するデバイスデータを参照するためのマーキング情報を記録するイベント検出部と、
前記マーキング情報を、前記時系列のデバイスデータのグラフとともに表示する表示制御部として前記情報処理装置を機能させることを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラマブル・ロジック・コントローラで実行するプログラムを開発するプログラム開発支援技術に関し、特に、デバイスデータ収集の利便性を向上させるための技術に関する。
【背景技術】
【０００２】
工場等におけるシーケンス制御に広く用いられているプログラマブル・ロジック・コントローラ（ＰＬＣ）は、制御対象機器のシーケンス制御の手順を規定したラダープログラムにしたがって動作を行なう。一般に、ラダープログラムは、ラダープログラム開発支援ソフトウェアをインストールしたパーソナルコンピュータ（ＰＣ）上で作成され、ＰＬＣにダウンロードされる。以降では、ラダープログラム開発支援ソフトウェアを実行するＰＣをプログラム開発支援装置と称する。
【０００３】
プログラムの開発時や試験運用時には、プログラムの不具合等を修正するためのデバッグ作業が行なわれるが、ＰＬＣおよびプログラム開発支援装置には、デバッグ作業を支援するための機能としてデバイスデータ収集機能が備えられている。
【０００４】
デバイスデータ収集は、ラダープログラム実行中の内部データの変化を記録し、プログラム開発支援装置上でグラフ表示等を行なうものである。内部データには、１ビットで表わされるリレー接点の状態や数値データで表わされるレジスタ値等があり、これらの内部データを総称してデバイスと呼び、内部データの状態や値をデバイスデータと呼んでいる。
【０００５】
デバイスデータ収集の実行に際しては、プログラム開発支援装置を利用して、記録対象とするデバイスや終了条件等を指定し、必要に応じて記録開始のトリガとなるトリガ条件を設定する。そして、これらのデバイスデータ収集設定情報をプログラム開発支援装置からＰＬＣに送信する。
【０００６】
ＰＬＣは、記録対象として設定されたデバイスデータをラダープログラム実行中に繰り返し収集して内部のメモリに記録する。トリガ条件が設定されている場合には、トリガ条件の成立前後のデバイスデータが記録される。この結果、ＰＬＣの内部メモリには変化するデバイスデータが時系列で記録されることになる。デバイスデータの時系列データは、一般に、リングバッファ形式で格納されるため、過去の時系列データは順次上書きされていく。
【０００７】
ラダープログラムの実行が終了すると、プログラム開発支援装置がＰＬＣから時系列データを取得し、グラフ表示等を行なう。図６は、デバイスデータの時系列データのグラフ表示の一例を示している。本図の例では、記録対象のデバイスとして、デバイス１、デバイス２、デバイス３、デバイス４が設定されている。これらのうち、１ビットで表わされるデバイス１、デバイス２は、ビットデバイスと称し、数値データで表わされるデバイス３、デバイス４は、ワードデバイスと称する。
【０００８】
エラー発生や期待通りの結果が得られない等のプログラミング上の問題が生じている場合に、デバイスデータ収集を利用したプログラム修正作業は、一般に図７に示すような手順で行なわれる。
【０００９】
すなわち、プログラム開発者が、不具合に関するプログラムの解析を行ない（Ｓ１０１）、プログラム開発支援装置の編集機能を利用してプログラムの修正を行なう（Ｓ１０２）。そして、修正後のプログラムをＰＬＣにダウンロードする（Ｓ１０３）。
【００１０】
プログラム開発支援装置でデバイスデータ収集の設定を行ない（Ｓ１０４）、ＰＬＣにデバイスデータ収集の実行を指示すると、ＰＬＣがダウンロードされたプログラムを実行し、デバイスデータ収集が行なわれる（Ｓ１０５）。デバイスデータ収集では、設定にしたがってデバイスデータの収集が行なわれる。
【００１１】
デバイスデータ収集が終了すると（Ｓ１０６）、プログラム開発支援装置がＰＬＣに記録されたデバイスデータの時系列データを取得し（Ｓ１０７）、図６に示したようなグラフ表示を行なう（Ｓ１０８）。このグラフをプログラム開発者が確認し、問題等が発見されると（Ｓ１０９：Ｙｅｓ）、再度、プログラムの解析を行なう（Ｓ１０１）。
【００１２】
また、取得できる時系列データにはサイズの上限があるため、異なる条件等でデバイスデータ収集を再実行する場合（Ｓ１１０：Ｙｅｓ）は、デバイスデータ収集の設定に戻る（Ｓ１０４）。
【００１３】
一方、グラフを確認した結果、問題が解決されていれば、デバイスデータ収集を利用したプログラム修正作業を終了する。
【００１４】
なお、特許文献１に記載されているように、近年では、デバイスデータ収集の実行中にプログラム開発支援装置がＰＬＣから順次時系列データを取得してグラフ表示することも行なわれている。
【先行技術文献】
【特許文献】
【００１５】
【特許文献１】特開２００８−２８７５５９号公報
【発明の概要】
【発明が解決しようとする課題】
【００１６】
プログラム開発者は、デバイスデータ収集の結果であるデバイスデータのグラフを参照して、ラダープログラムの不具合を発見したり、修正後の確認をしたりする。このときに、特定のデバイスのデバイスデータに関するイベントに着目して解析を行ないたい場合がある。例えば、図６におけるデバイス４のａ値、ｂ値、ｃ値発生等である。また、デバイス３のｄ値とデバイス４のｂ値とが同時に発生したポイントＴａを参照したい場合等もある。
【００１７】
従来、このようなデバイスのイベントを把握するためには、デバイスデータ収集の終了後に、グラフを表示させ、スクロール等をさせながら目視で探し出さなければならなかった。また、デバイスデータ収集実行中にリアルタイムでグラフを表示させたとしても、注目したいデバイスのイベントを認識するのは容易でなかった。このため、問題点の認識から再修正までに時間を要し、デバッグ作業の効率が十分とはいえなかった。
【００１８】
そこで、本発明は、デバイスデータ収集において把握すべきデバイスのイベントを効率よく認識できるようにすることを目的とする。
【課題を解決するための手段】
【００１９】
上記課題を解決するため、本発明の第１の態様であるプログラム開発支援装置は、プログラマブル・ロジック・コントローラと通信を行なうプログラム開発支援装置であって、収集対象とするデバイスの指定と、前記デバイスのデバイスデータに関するイベントの検出条件の設定を受け付けるデバイスデータ収集設定受付部と、前記プログラマブル・ロジック・コントローラのデバイスデータ収集の実行時に、指定したデバイスのデバイスデータを時系列で取得するデバイスデータ取得部と、取得した時系列のデバイスデータから前記検出条件を満たすイベントを検出し、対応するデバイスデータを参照するためのマーキング情報を記録するイベント検出部と、前記マーキング情報を、前記時系列のデバイスデータのグラフとともに表示する表示制御部とを備えたことを特徴とする。
ここで、前記表示制御部は、前記マーキング情報の指定を受け付けると、指定されたマーキング情報に対応するデバイスデータを参照する表示を行なうようにすることができる。
このとき、前記デバイスデータを参照する表示は、前記マーキング情報に係るイベントが発生したタイミングを示す線分とすることができる。
上記課題を解決するため、本発明の第２の態様であるコンピュータプログラムは、情報処理装置を、プログラマブル・ロジック・コントローラと接続するプログラム開発支援装置として機能させるコンピュータプログラムであって、収集対象とするデバイスの指定と、前記デバイスのデバイスデータに関するイベントの検出条件の設定を受け付けるデバイスデータ収集設定受付部と、前記プログラマブル・ロジック・コントローラのデバイスデータ収集の実行時に、指定したデバイスのデバイスデータを時系列で取得するデバイスデータ取得部と、取得した時系列のデバイスデータから前記検出条件を満たすイベントを検出し、対応するデバイスデータを参照するためのマーキング情報を記録するイベント検出部と、前記マーキング情報を、前記時系列のデバイスデータのグラフとともに表示する表示制御部として前記情報処理装置を機能させることを特徴とする。
【発明の効果】
【００２０】
本発明によれば、デバイスデータ収集において把握すべきデバイスのイベントを効率よく認識できるようになる。
【図面の簡単な説明】
【００２１】
【図１】本実施形態に係るラダープログラム開発システムの構成を示すブロック図である。
【図２】ユーザマーカ設定メニューの例を示す図である。
【図３】ユーザマーカの表示例を示す図である。
【図４】ユーザマーカからデバイスデータを参照する例を示す図である。
【図５】本実施形態に係るラダープログラム開発システムにおけるプログラム修正作業の流れを説明するフローチャートである。
【図６】従来のデバイスデータのグラフ表示例を示す図である。
【図７】従来のプログラム修正作業の流れを説明するフローチャートである
【発明を実施するための形態】
【００２２】
本発明の実施の形態について図面を参照して説明する。図１は、本実施形態に係るラダープログラム開発システムの構成を示すブロック図である。本図に示すように、ラダープログラム開発システム１０は、ラダープログラムの開発支援を行なうプログラム開発支援装置１００とプログラマブル・ロジック・コントローラ（ＰＬＣ）２００とを備えて構成される。ただし、本発明は、ＰＬＣ２００が解釈可能なラダープログラム以外のプログラミング言語にも適用することができる。
【００２３】
プログラム開発支援装置１００は、ラダープログラム開発支援ソフトウェアをインストールしたパーソナルコンピュータ（ＰＣ）等の汎用的な情報処理装置で構成することができる。すなわち、汎用的な情報処理装置は、ラダープログラム開発支援ソフトウェアを実行することでプログラム開発支援装置１００として機能することになる。もちろん、プログラム開発支援装置１００は専用装置として構成してもよい。
【００２４】
本図に示すように、プログラム開発支援装置１００は、プログラム作成支援部１１０、デバイスデータ収集設定受付部１２０、デバイスデータ取得部１３０、イベント検出部１４０、表示制御部１５０、ＰＬＣ２００との通信を制御する通信部１６０を備えている。
【００２５】
ＰＬＣ２００は、入出力制御部２１０、プログラム格納部２２０、プログラム実行部２３０、デバイスデータ収集実行部２４０、デバイスデータ格納部２５０、プログラム開発支援装置１００との通信を制御する通信部２６０を備えている。
【００２６】
まず、プログラム開発支援装置１００の各ブロックについて説明する。プログラム作成支援部１１０は、プログラム編集機能等を提供することで、ラダープログラムの作成を支援するブロックである。プログラム作成支援部１１０により作成、編集されたラダープログラムは、ＰＬＣ２００にダウンロードされ、プログラム格納部２２０に格納される。
【００２７】
デバイスデータ収集設定受付部１２０は、デバイスデータ収集を行なう際の各種設定を受け付ける。デバイスデータ収集設定受付部１２０が受け付けるデバイスデータ収集の設定には、従来のデバイスの指定、終了条件設定、トリガ設定等に加え、ユーザマーカ設定を含めることができる。
【００２８】
ここで、ユーザマーカは、デバイスデータ収集に際し、着目したいデバイスデータに関するイベントを参照するための情報である。ユーザマーカ設定では、ユーザマーカを付するイベントの検出条件の設定を受け付ける。ユーザマーカには、デバイスデータ収集で収集されたデバイスデータのうち、検出条件を満たすイベントが発生したタイミングが記録されることになる。
【００２９】
イベントの検出条件は、特定デバイスの波形の立ち上がりタイミング、立ち下がりタイミング、特定のデバイスデータが設定値と一致したこと、設定値を超えたこと、設定値以下となったこと等とすることができる。
【００３０】
このため、デバイスデータ収集設定受付部１２０は、ユーザマーカ設定メニューにより、イベントの検出条件として、デバイスと成立条件と設定値とを設定できるようにしている。例えば、図２（ａ）では、「デバイス１の波形立ち上がり」がイベントの検出条件として設定されている。また、図２（ｂ）は、「デバイス１のデバイスデータ＝１２」がイベントの検出条件として設定されている。ここで、成立条件を「≧」に変更すれば「デバイス１のデバイスデータ≧１２」がイベントの検出条件として設定されることになる。
【００３１】
さらに、図２（ｃ）に示すように、「デバイス１の波形立ち下がり＆デバイス２のデバイスデータ≧１６」という具合に複数のデバイスの成立条件を組み合わせてイベントの検出条件とすることも可能である。成立条件の組み合わせは、３つ以上であってもよく、ＡＮＤ条件、ＯＲ条件、括弧等を用いて設定することができる。また、ユーザマーカを異なるイベント検出条件で複数個設定できるようにしてもよい。
【００３２】
デバイスデータ収集設定受付部１２０が受け付けたデバイスデータ収集の設定におけるデバイスの指定、終了条件、トリガ設定等は、ＰＬＣ２００のデバイスデータ収集実行部２４０に送信され、設定内容にしたがってデバイスデータ収集が実行される。ユーザマーカ設定は、ＰＬＣ２００に送信する必要はない。
【００３３】
デバイスデータ取得部１３０は、ＰＬＣ２００がデバイスデータ収集設定にしたがってデバイスデータ収集を実行すると、収集された時系列のデバイスデータをＰＬＣ２００からリアルタイムで取得する。すなわち、プログラム開発支援装置１００は、ＰＬＣ２００のデバイスデータ収集実行中に、デバイスデータを取得することになる。
【００３４】
イベント検出部１４０は、リアルタイムで取得した時系列のデバイスデータから検出条件を満たすイベントを検出し、その発生タイミングをユーザマーカ情報として内部のメモリに順次記録する。記録する内容は、例えば、デバイスデータのデータ番号、発生時刻、デバイスデータ収集実行開始からの経過時間等である。また、上限値が定められた成立条件のように、条件成立から条件解除までの期間を有するイベントの場合は、「成立」「解除」等の状態も記録する。
【００３５】
表示制御部１５０は、デバイスデータ収集中にリアルタイムで取得したデバイスデータをグラフ表示するとともに、イベント検出部１４０により記録されたユーザマーカ情報を表示する、もちろん、デバイスデータ収集終了後に、取得済みのデバイスデータおよびユーザマーカ情報を過去に遡って表示することもできる。
【００３６】
図３は、デバイスデータのグラフとともに表示されるユーザマーカ情報の表示例を示す図である。本図の例では、ユーザマーカ発生状況ウィンドウにユーザマーカ情報を表示している。ユーザマーカ発生状況ウィンドウには、ユーザマーカ毎に、「解除」「成立」を示す状態と、データ番号と、経過時間と、日時がリスト形式で表示される。
【００３７】
ユーザマーカ発生状況ウィンドウは、検出条件を満たすイベントが検出され、ユーザマーカ情報が記録される毎に更新される。グラフ内の矩形Ｑのようにイベントが検出された期間を示す情報を表示してもよい。
【００３８】
表示制御部１５０は、ユーザマーカ発生状況ウィンドウで、特定のユーザマーカが選択されると、図４に示すように、ユーザマーカに対応するデバイスデータを参照するための情報をグラフ上に表示する。本図の例では、イベントが発生したタイミングを示す線Ｕが表示されている。
【００３９】
このようにユーザマーカに関する情報をデバイスデータ収集中にリアルタイムで表示することより、プログラム開発者は、把握すべきデバイスのイベントを効率よく認識できるようになる。
【００４０】
次に、ＰＬＣ２００の各ブロックについて説明する。入出力制御部２１０は、ＰＬＣ２００に接続される測定機器、制御機器等との入出力処理の制御を行なう。
【００４１】
プログラム格納部２２０は、プログラム開発支援装置１００からダウンロードされるラダープログラムおよびデバイスデータ収集実行用プログラムを格納する。
【００４２】
プログラム実行部２３０は、プログラム格納部２２０に格納されたラダープログラムを実行する。デバイスデータ収集実行部２４０は、プログラム開発支援装置１００からの指示に基づいてデバイスデータ収集を実行し、収集対象となっているデバイスデータをデバイスデータ格納部２５０に記録する。
【００４３】
本実施形態のラダープログラム開発システム１０におけるデバイスデータ収集を利用したプログラム修正作業の手順について図５のフローチャートを参照して説明する。
【００４４】
エラー発生や期待通りの結果が得られない等のプログラミング上の問題が生じている場合には、プログラム開発者が不具合に関するプログラムの解析を行ない（Ｓ１１）、プログラム作成支援部１１０を利用してプログラムの修正を行なう（Ｓ１２）。そして、修正後のプログラムをＰＬＣ２００のプログラム格納部２２０にダウンロードする（Ｓ１３）。
【００４５】
プログラム開発支援装置１００のデバイスデータ収集設定受付部１２０を利用してデバイスデータ収集の設定を行ない（Ｓ１４）、ＰＬＣ２００にデバイスデータ収集の実行を指示すると、プログラム実行部２３０がダウンロードされたプログラムを実行し、デバイスデータ収集実行部２４０がデバイスデータ収集を実行する（Ｓ１５）。デバイスデータ収集実行部２４０は、収集したデバイスデータを逐次デバイスデータ格納部２５０に記録する。
【００４６】
デバイスデータ収集実行中に、プログラム開発支援装置１００のデバイスデータ取得部１３０が、デバイスデータ格納部２５０に記録された時系列のデバイスデータを随時取得し、表示制御部１５０がグラフ表示を行なう（Ｓ１６）。時系列のデバイスデータの取得、グラフ表示は、デバイスデータ収集が終了するまで繰り返し行なう（Ｓ２１）。
【００４７】
また、デバイスデータ収集実行中に、イベント検出部１４０が、リアルタイムで取得した時系列のデバイスデータから検出条件を満たすイベントの発生を検出すると（Ｓ１７：Ｙｅｓ）、イベントが発生したタイミングについてユーザマーカ情報を記録する（Ｓ１８）。そして、表示制御部１５０が、記録されたユーザマーカ情報をリスト形式で表示する（Ｓ１９）。
【００４８】
プログラム開発者が、ユーザマーカ情報を参照して、再解析が必要であると判断すれば（Ｓ２０：Ｙｅｓ）、再度、プログラムの解析を行なう（Ｓ１０１）。この際に、デバイスデータ収集を中断させることもできる。
【００４９】
すなわち、本実施形態のラダープログラム開発システム１０では、プログラム開発者は、ユーザマーカ情報を参照することで、デバイスデータ収集の終了を待つことなく、プログラム再解析を即座に開始することができる。また、グラフから着目したいイベントを目視で探し出す必要もない。このため、プログラム修正のための時間を節約することができ、デバッグ作業の効率が向上することになる。
【００５０】
なお、本発明は、データロギングシステムにおけるアラームイベントに対するユーザマーカ記録、アナライザ機能を持つシステムにおけるイベントに対するユーザマーカ記録等に適用することも可能である。また、ユーザマーカにより参照されるイベントを元に、ラダープログラムの逆解析を行なうシステムへの応用も期待される。例えば、イベント発生前後のデバイスデータを利用したプログラムシミュレートや、イベント発生をトリガとして用いたＰＬＣ特定動作条件の起動等に応用することが考えられる。
【符号の説明】
【００５１】
１０…ラダープログラム開発システム、１００…プログラム開発支援装置、１１０…プログラム作成支援部、１２０…デバイスデータ収集設定受付部、１３０…デバイスデータ取得部、１４０…イベント検出部、１５０…表示制御部、１６０…通信部、２００…ＰＬＣ、２１０…入出力制御部、２２０…プログラム格納部、２３０…プログラム実行部、２４０…デバイスデータ収集実行部、２５０…デバイスデータ格納部、２６０…通信部
【図１】
2015076049.tif 000003
【図２】
2015076049.tif 000004
【図３】
2015076049.tif 000005
【図４】
2015076049.tif 000006
【図５】
2015076049.tif 000007
【図６】
2015076049.tif 000008
【図７】
2015076049.tif 000009