(57)【特許請求の範囲】
【請求項１】
産業用コントローラで実行される制御プログラムの動作状態に合わせて値が変化するデータを取得するデータ取得部と、
前記制御プログラムの動作状態を前記データに基づいて表示する動作状態表示部と、
前記動作状態表示部が前記動作状態を表示する際の表示形式の定義情報を、前記データ取得部が取得するデータごとに保持する表示形式定義情報保持部と、
を備え、
前記動作状態表示部は、前記表示形式の定義情報が示す条件を前記データが満たす場合、前記表示形式の定義情報が示す条件を前記データが満たさない場合とは異なる形式であり、前記表示形式の定義情報が示す形式で前記動作状態を表示することを特徴とするプログラム作成装置。
【請求項２】
前記動作状態表示部は、前記動作状態を表す画面として、前記データの表示を含んだ画面を表示し、前記表示形式の定義情報が示す条件を満たしていないデータを予め決められた形式で表示し、前記条件を満たしているデータを前記表示形式の定義情報が示す形式で表示する、
ことを特徴とする請求項１に記載のプログラム作成装置。
【請求項３】
前記動作状態表示部は、前記制御プログラムおよび前記データを表示する、
ことを特徴とする請求項１または２に記載のプログラム作成装置。
【請求項４】
前記動作状態表示部は、前記データのリストを表示する、
ことを特徴とする請求項１から３のいずれか一つに記載のプログラム作成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御プログラムの開発に用いられるプログラム作成装置に関する。
【背景技術】
【０００２】
工場の生産設備の制御では、一般にプログラマブルロジックコントローラ（Programmable  Logic  Controller：ＰＬＣ）と呼ばれる産業用コントローラが用いられている。【０００３】
産業用コントローラで実行される制御プログラムとしてのシーケンスプログラムはプログラム作成装置を用いて作成される。シーケンスプログラムは、主に変数、デバイス、数値を用いて記述される。【０００４】
ここで、デバイスとは、シーケンスプログラムを実行するプログラマブルロジックコントローラ（以下、ＰＬＣという）とそれが接続する制御対象機器との間で入出力されるデータを格納する領域を指す。デバイスは、ＰＬＣが有するメモリのアドレスに割りつけられる。また、デバイスの割り付けはシーケンスプログラムに従って行われる。ＰＬＣでは、例えば、入力をＸデバイス、出力をＹデバイス、内部的に使用するビット型のデータをＭデバイス、ワード型のデータをＤデバイス、というように、データ種別によってデバイス文字が予め決められている。デバイスは、デバイス文字とアドレスとにより表記され、入力デバイスのアドレス０のものは「Ｘ０」と表記される。【０００５】
プログラム作成装置は、一般的にはパーソナルコンピュータ（以下、パソコンという）上で動作するソフトウェアツールとして提供される。プログラム作成装置は、ＰＬＣが生産設備の制御を行うためのシーケンスプログラムの作成および編集を支援する他、ＰＬＣをパソコンに接続して、ＰＬＣで実行されているシーケンスプログラムの動作状態の確認およびパソコンで編集したシーケンスプログラムをＰＬＣへ転送する機能といった各種機能を有する。【０００６】
シーケンスプログラムは、その制御対象の機器の制御を行うために作成されるプログラムであり、ユーザは作成したプログラムが期待通りに動作しているかを検証するために、デバイスの値を確認して判断を行っている。このデバイスの値の確認を目的として、プログラム作成装置にはモニタ機能が備わっている。このモニタ機能は、ユーザによる検証の観点の違いに対応するために、作成したプログラム上にデバイスの値を表記するプログラム情報表示部、デバイスの値を一覧の形式で表示することができるデバイス情報表示部等、複数の確認手段を提供することで効率の良い検証環境を提供している。【０００７】
また、モニタ機能では、デバイスの値の判断を容易にするために、デバイスの値が０または１を取るビットというデータ型のデバイスについては、値に従って表示形式を変更するなど、視認性向上の取り組みが行われている。【０００８】
従来のモニタ機能では、デバイスの情報を表示する際、０または１を取るビット、数値情報および文字情報を表現できるワード、といったデータ型の区分ごとにデバイスの表示形式を指定することができる。しかし、ＰＬＣで使用するデバイスに対して、ユーザはデバイス毎に異なる目的を設定してプログラミングを行うため、データ型が同じ複数のデバイスで同じ値が得られた場合でも、デバイス毎にその意味するところは異なる。このため、ユーザは、ＰＬＣの現在の状況を判断するために、デバイス文字とアドレスとで表されるデバイスの識別情報およびデバイスに設定されたコメントといった情報から、デバイスの利用目的を把握した上で、表示されているデバイスの値について判断を行う必要があった。すなわち、従来のモニタ機能は、シーケンスプログラムの現在の動作状況を即時に判断するのが難しいという問題が存在する。【０００９】
この問題に対して、特許文献１では、プログラマブル表示器用の画面作成ソフトウェアを利用して、スイッチ、ランプ、テンキー、メータ表示器およびグラフ表示器といった各種部品の制御画面を作成し、制御画面に表示された部品の表示色を、対応するデバイスの値の変化に合わせて変更する発明が提案されている。
【先行技術文献】
【特許文献】
【００１０】
【特許文献１】特開２００３−４４２７７号公報
【発明の概要】
【発明が解決しようとする課題】
【００１１】
しかしながら、特許文献１に記載の発明においては、ユーザが、デバイスの情報を確認するためのモニタ画面を作成する必要がある。モニタ画面の作成では、表示用の画面の編集およびデバイスの割り当てといった作業が必要となり、本来のプログラミングとは異なる作業が発生するという問題があった。また、デバイスの利用目的またはデバイスの取りうる値の意味する値域が変わるなど、デバイスの変更が発生した場合、一度作成したモニタ画面を更新する作業が必要となる。【００１２】
本発明は、上記に鑑みてなされたものであって、制御プログラムの開発効率を向上させることが可能なプログラム作成装置を得ることを目的とする。
【課題を解決するための手段】
【００１３】
上述した課題を解決し、目的を達成するために、本発明にかかるプログラム作成装置は、産業用コントローラで実行される制御プログラムの動作状態に合わせて値が変化するデータを取得するデータ取得部と、制御プログラムの動作状態をデータに基づいて表示する動作状態表示部と、を備える。また、プログラム作成装置は、動作状態表示部が動作状態を表示する際の表示形式の定義情報を、データ取得部が取得するデータごとに保持する表示形式定義情報保持部を備える。動作状態表示部は、表示形式の定義情報が示す条件をデータが満たす場合、表示形式の定義情報が示す条件をデータが満たさない場合とは異なる形式であり、表示形式の定義情報が示す形式で動作状態を表示する。
【発明の効果】
【００１４】
本発明にかかるプログラム作成装置は、制御プログラムの開発効率を向上させることができるという効果を奏する。
【図面の簡単な説明】
【００１５】
【図１】プログラム作成装置の構成例を示す図
【図２】プログラム作成装置がＰＬＣからデバイス情報を取得する前の状態を示す図
【図３】プログラム作成装置がＰＬＣからデバイス情報を取得した後の状態を示す図
【図４】プログラム作成装置が表示形式定義情報の入力を受け付けた後の状態を示す図
【図５】プログラム作成装置が表示形式定義情報の入力をユーザから受け付ける動作を説明するための図
【図６】プログラム作成装置がデバイス情報リストを更新した後の状態を示す図
【図７】プログラム作成装置がデバイス情報リストを更新する動作の一例を示すフローチャート
【図８】プログラム作成装置が表示するプログラムモニタ画面の一例を示す図
【図９】プログラム作成装置が表示するデバイスモニタ画面の一例を示す図
【図１０】プログラムモニタ情報表示部の動作の一例を示すフローチャート
【図１１】デバイスモニタ情報表示部の動作の一例を示すフローチャート
【図１２】プログラム作成装置を実現するハードウェアの構成例を示す図
【発明を実施するための形態】
【００１６】
以下に、本発明の実施の形態にかかるプログラム作成装置を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
【００１７】
実施の形態．
図１は、本発明の実施の形態にかかるプログラム作成装置の構成例を示す図である。本実施の形態にかかるプログラム作成装置２は、産業用コントローラであるＰＬＣ１と接続することが可能である。プログラム作成装置２は、接続されているＰＬＣ１からデバイスの情報を取得し、取得したデバイスの情報を表示する機能を有する。デバイスの情報は、デバイスの種類を表すデバイス文字とアドレスを表す数字とを組み合わせた情報と、デバイスの現在の値とを含む。以下の説明においては、デバイスの情報をデバイス情報と記載し、デバイスの種類を表すデバイス文字とアドレスを表す数字とを組み合わせた情報をデバイス識別情報と記載し、デバイスの現在の値をデバイス値と記載する。すなわち、デバイス情報は、デバイス識別情報およびデバイス値で構成されている。デバイス値は、制御プログラムがＰＬＣ１で実行されている間は適宜更新される情報であり、制御プログラムの動作状態に合わせて値が変化するデータに該当する。ユーザはデバイス値を確認することにより制御プログラムの動作状況を知ることができる。
【００１８】
プログラム作成装置２は、記憶部２１、デバイス情報取得部２２、表示形式決定部２３、表示形式定義情報保持部２４、プログラムモニタ情報表示部２５、デバイスモニタ情報表示部２６、入力部２７およびプログラム作成部２８を備える。記憶部２１は、プログラム保持部２１Ａおよびデバイス情報保持部２１Ｂを備える。なお、表示形式定義情報保持部２４が記憶部２１に含まれている構成としてもよい。また、プログラムモニタ情報表示部２５およびデバイスモニタ情報表示部２６は動作状態表示部２０を構成する。なお、動作状態表示部２０は、プログラムモニタ情報表示部２５およびデバイスモニタ情報表示部２６の少なくともいずれか一方を含んでいればよい。
【００１９】
記憶部２１のプログラム保持部２１Ａは、後述するプログラム作成部２８が作成したシーケンスプログラムを保持する。プログラム保持部２１Ａが保持するシーケンスプログラムは、ＰＬＣ１で実行される制御プログラムである。
【００２０】
記憶部２１のデバイス情報保持部２１Ｂは、ＰＬＣ１から取得したデバイス情報を保持する。デバイス情報保持部２１Ｂが保持するデバイス情報は、ＰＬＣ１が実行しているシーケンスプログラムに含まれるデバイスのデバイス情報である。
【００２１】
データ取得部であるデバイス情報取得部２２は、制御プログラムの動作状態に合わせて値が変化するデータであるデバイス値を含んだデバイス情報をＰＬＣ１から取得する。なお、ＰＬＣ１においてはデバイス情報管理部１１がデバイス情報を管理している。デバイス情報取得部２２は、ＰＬＣ１のデバイス情報管理部１１で管理されている全てのデバイス情報を取得し、取得したデバイス情報をデバイス情報保持部２１Ｂに受け渡す。
【００２２】
表示形式決定部２３は、デバイス情報保持部２１Ｂが保持している各デバイス情報について、デバイス情報ごとの表示形式を決定する。表示形式とは、デバイス情報を表示する際の文字の色、フォント、背景色などが該当する。なお、表示形式をこれらに限定するものではない。表示形式決定部２３は、表示形式定義情報保持部２４が保持している表示形式定義情報とデバイス情報に含まれるデバイス値とに基づいて、デバイス情報の表示形式を決定する。
【００２３】
表示形式定義情報保持部２４は、デバイス情報が特定の条件を満たした場合に適用する表示形式を示す表示形式定義情報を保持する。表示形式定義情報の詳細については後述する。
【００２４】
プログラムモニタ情報表示部２５は、ＰＬＣ１で実行されるシーケンスプログラムおよびデバイス値を表示する。ユーザは、プログラムモニタ情報表示部２５に表示されたシーケンスプログラムおよびデバイス値を確認することによりシーケンスプログラムの動作状態を知ることができる。
【００２５】
デバイスモニタ情報表示部２６は、ＰＬＣ１から取得したデバイス情報を表示する。
【００２６】
入力部２７は、マウス、キーボードなどで構成され、ユーザからの操作を受け付ける。ユーザから受け付ける操作には、シーケンスプログラムの作成および編集のための操作、表示形式定義情報を入力するための操作、デバイス情報保持部２１Ｂが保持しているデバイス情報の更新を指示する操作、シーケンスプログラムおよびデバイス値の表示を指示する操作、デバイス情報の表示を指示する操作、などが該当する。
【００２７】
プログラム作成部２８は、入力部２７を介してユーザから受け付けた操作に従いシーケンスプログラムの作成および編集を行う。
【００２８】
次に、プログラム作成装置２がＰＬＣ１からデバイス情報を取得して表示する動作について、図２から図６を用いて説明する。図２〜図６は、プログラム作成装置２の動作を説明するための図である。
【００２９】
図２は、プログラム作成装置２がＰＬＣ１からデバイス情報を取得する前の状態を示す図である。なお、図２では、デバイス情報を取得して表示する動作に関連する構成要素についてのみ記載し、その他の構成要素の記載を省略している。図２に示した状態では、ＰＬＣ１のデバイス情報管理部１１がデバイス情報リスト１１１を保持し、プログラム作成装置２はデバイス情報を保持していない。デバイス情報リスト１１１の「デバイス」と記された欄にはデバイス識別情報が登録され、「現在値」と記された欄には現在のデバイス値が登録される。図２に示したデバイス情報リスト１１１は、デバイス識別子Ｄ０に対応するデバイス値が１００であることを示すデバイス情報と、デバイス識別子Ｄ１に対応するデバイス値が９０であることを示すデバイス情報と、デバイス識別子Ｄ１０に対応するデバイス値が１００であることを示すデバイス情報と、デバイス識別子Ｄ１１に対応するデバイス値が９０であることを示すデバイス情報と、デバイス識別子Ｄ１００に対応するデバイス値が１０であることを示すデバイス情報と、デバイス識別子Ｄ１１０に対応するデバイス値が１０であることを示すデバイス情報と、を含んで構成されている。
【００３０】
図２に示した状態においてプログラム作成装置２のデバイス情報取得部２２がＰＬＣ１からデバイス情報を取得すると、図３に示した状態となる。すなわち、デバイス情報保持部２１Ｂがデバイス情報リスト２１１を保持した状態となる。図３は、プログラム作成装置２がＰＬＣ１からデバイス情報を取得した後の状態を示す図である。デバイス情報リスト２１１は、「デバイス」と記された欄、「現在値」と記された欄および「表示形式」と記された欄を含み、それぞれの欄に情報が登録される。「デバイス」と記された欄および「現在値」と記された欄には、ＰＬＣ１のデバイス情報管理部１１が保持しているデバイス情報リスト１１１の「デバイス」と記された欄および「現在値」と記された欄に登録されている情報と同じ情報が登録された状態となっている。また、「表示形式」と記された欄に情報が登録されていない状態となっている。
【００３１】
図３に示した状態において、プログラム作成装置２は、表示形式定義情報保持部２４で保持する表示形式定義情報の入力をユーザから受け付ける。その結果、図４に示した状態となる。すなわち、表示形式定義情報保持部２４が表示形式定義リスト２４１を保持した状態となる。図４は、プログラム作成装置２が表示形式定義情報の入力を受け付けた後の状態を示す図である。表示形式定義リスト２４１は、「実行」と記された欄、「デバイス」と記された欄、「条件」と記された欄、「指定値」と記された欄および「表示形式」と記された欄を含む。「実行」と記された欄には、デバイス情報の表示形式を変更する機能を有効とするか否かを示す情報が登録される。「デバイス」と記された欄には、デバイス識別情報が登録される。「条件」と記された欄には、デバイス値と「指定値」と記された欄に登録された指定値との比較条件を示す情報が登録される。「指定値」と記された欄には、デバイス値と比較される値が登録される。デバイス値と指定値の関係が比較条件を満たす場合、デバイス情報の表示形式の変更条件が満たされることになる。例えば、表示形式定義リスト２４１のデバイス識別子Ｄ０に対応する条件が“≧”であり指定値が“１００”である。また、「実行」と記された欄が“する”となっている。この場合、プログラム作成装置２は、デバイス識別子Ｄ０のデバイス値が１００以上であればデバイス情報の表示形式を変更する。変更後の表示形式では背景がピンク色となる。なお、プログラム作成装置２は、デバイス識別子Ｄ０に対応する「実行」と記された欄が“しない”の場合、デバイス識別子Ｄ０のデバイス値が１００以上であっても表示形式を変更しない。これにより、登録した表示形式を適用しないことも可能となり、表示性能を考慮した部分的な適用も可能となる。
【００３２】
ここで、プログラム作成装置２が表示形式定義情報の入力をユーザから受け付ける動作を、図５を参照しながら説明する。図５は、プログラム作成装置２が表示形式定義情報の入力をユーザから受け付ける動作を説明するための図である。プログラム作成装置２は、図５に示した実行欄５１、デバイス欄５２、条件欄５３、指定値欄５４および表示形式欄５５についての入力をユーザから受け付ける。実行欄５１および条件欄５３については、プルダウンメニューにより、予め用意されている選択肢の中の１つを選択する構成とする。実行欄５１の入力に対しては選択肢５１１が用意され、条件欄５３の入力に対しては選択肢５３１が用意されている。図５に示した例では、条件欄５３に対して、比較条件の入力を行わないことも可能としている。比較条件の入力を行わない場合、ユーザは、選択肢５３１の中の“なし”を指定する。デバイス欄５２および指定値欄５４については、数値等を直接入力する構成とする。表示形式欄５５については、まず、プルダウンメニューにより、背景の表示形式を変更するのか文字の表示形式を変更するのかを選択し、次に、選択した表示形式の詳細、具体的には色、フォントなどを指定する構成とする。表示形式欄５５の入力に対しては選択肢５５１が用意されている。なお、図５に示した入力方法は一例であり、他の方法としても構わない。実行欄５１、条件欄５３、指定値欄５４および表示形式欄５５の入力を受け付けると、デバイス識別子Ｄ０に対応する表示形式定義情報５０が完成となる。また、同じデバイスすなわちデバイス識別情報に対して異なる条件および表示形式を設定可能とする。プログラム作成装置２は、例えば、図５に示した表示形式定義情報５０に加えて、実行欄５１、デバイス欄５２、条件欄５３、指定値欄５４および表示形式欄５５の各々が、“する”、“Ｄ０”、“≦”、“８０”および“背景：青色”である表示形式定義情報の入力を別途受け付けてもよい。この場合、プログラム作成装置２は、Ｄ０のデバイス値が１００以上の場合は表示の背景をピンク色に変更し、Ｄ０のデバイス値が８０以下の場合は表示の背景を青色に変更する。
【００３３】
プログラム作成装置２は、図５に示した実行欄５１、デバイス欄５２、条件欄５３、指定値欄５４および表示形式欄５５についての入力をユーザから繰り返し受け付けることにより、図４に示した表示形式定義リスト２４１を作成する。なお、プログラム作成装置２は、表示形式定義リスト２４１の作成を、ＰＬＣ１からデバイス情報を取得する前に行うようにしてもよい。また、プログラム作成装置２は、過去に作成した表示形式定義リスト２４１を保持している場合、表示形式定義リスト２４１をあらためて作成しなくてもよい。
【００３４】
図４に示した状態において、プログラム作成装置２の表示形式決定部２３は、表示形式定義情報保持部２４が保持している表示形式定義リスト２４１に基づいて、デバイス情報保持部２１Ｂが保持しているデバイス情報リスト２１１を更新する。
【００３５】
表示形式決定部２３がデバイス情報リスト２１１を更新する動作について具体的に説明する。表示形式決定部２３は、まず、表示形式定義リスト２４１に基づいて、デバイス情報リスト２１１に含まれているデバイス情報のうち、表示形式を変更するデバイス情報を特定する。表示形式決定部２３は、デバイス情報リスト２１１に登録されているデバイス値と、これに対応する表示形式定義リスト２４１の指定値とを比較し、デバイス値と指定値との関係が表示形式定義リスト２４１に登録されている比較条件を満たしている場合、表示形式を変更するデバイス情報に該当すると判断する。図４に示した表示形式定義リスト２４１の一番上の行は、Ｄ０のデバイス値が１００以上の場合に、背景をピンク色に変更することを示す内容が登録されている。一方、図４に示したデバイス情報リスト２１１の一番上の行には、Ｄ０の現在のデバイス値が１００であることを示す内容が登録されている。よって、Ｄ０の現在のデバイス値が条件を満たしており、表示形式決定部２３は、表示形式を変更するデバイス情報に該当すると判断する。表示形式決定部２３は、同様の手順で、表示形式定義リスト２４１に登録されている各指定値を対応するデバイス値と比較する。その結果、表示形式決定部２３は、デバイス識別子Ｄ１のデバイス情報は表示形式を変更するデバイス情報に該当しないと判断し、デバイス識別子Ｄ１００のデバイス情報は表示形式を変更するデバイス情報に該当すると判断する。表示形式決定部２３は、次に、変更後の表示形式の情報を、デバイス情報リスト２１１に含まれているデバイス情報の表示形式欄に登録する。変更後の表示形式の情報は、表示形式定義情報保持部２４が保持している表示形式定義リスト２４１の表示形式欄に登録されている情報である。よって、表示形式決定部２３は、デバイス情報リスト２１１のデバイス識別子Ｄ０に対応する表示形式欄に“背景：ピンク色”を登録し、デバイス情報リスト２１１のデバイス識別子Ｄ１００に対応する表示形式欄に“背景：水色、斜線”を登録する。
【００３６】
表示形式決定部２３によりデバイス情報リスト２１１が更新されると、図６に示した状態となる。図６は、プログラム作成装置２がデバイス情報リスト２１１を更新した後の状態を示す図である。
【００３７】
図２〜図６を用いて説明した動作をフローチャートで表すと、図７に示したものとなる。図７は、プログラム作成装置２がデバイス情報リスト２１１を更新する動作の一例を示すフローチャートである。なお、図７は、表示形式定義情報保持部２４が表示形式定義リスト２４１を保持している場合の動作を示している。プログラム作成装置２は、デバイス情報リスト２１１の更新を指示する操作をユーザから受け付けた場合に、図７に示した動作を実行する。
【００３８】
デバイス情報リスト２１１の更新を指示する操作をユーザから受け付けた場合、プログラム作成装置２は、まず、ＰＬＣ１からデバイス情報を取得する（ステップＳ１１）。具体的には、デバイス情報取得部２２が、ＰＬＣ１のデバイス情報管理部１１から、デバイス情報リスト１１１に登録されているデバイス情報を取得する。また、デバイス情報取得部２２は、取得したデバイス情報、すなわちデバイス識別情報およびデバイス値をデバイス情報保持部２１Ｂが保持しているデバイス情報リスト２１１に登録する。
【００３９】
プログラム作成装置２は、次に、ステップＳ１２〜Ｓ１４に示した処理をデバイス情報リスト２１１に登録されているデバイス情報分だけ繰り返し実行してデバイス情報リスト２１１を更新する。ステップＳ１２〜Ｓ１４の処理は表示形式決定部２３により実行される。すなわち、表示形式決定部２３は、デバイス情報リスト２１１に登録されているデバイス情報の中の１つを選択し、選択したデバイス情報に対応する表示形式定義情報が存在するか否かを確認する（ステップＳ１２）。具体的には、表示形式決定部２３は、選択したデバイス情報と、表示形式定義情報保持部２４が保持している各表示形式定義情報とを比較し、表示形式定義情報の中に、選択したデバイス情報に含まれるデバイス識別情報と同じデバイス識別情報を含んだ表示形式定義情報が存在するか否かを確認する。以下、説明の便宜上、表示形式決定部２３が選択したデバイス情報に含まれるデバイス識別情報と同じデバイス識別情報を含んだ表示形式定義情報を「対応定義情報」と称する。対応定義情報が存在しない場合（ステップＳ１２：Ｎｏ）、表示形式決定部２３は、デバイス情報リスト２１１に登録されているデバイス情報の中から、選択していないもの、すなわち、ステップＳ１２〜Ｓ１４の処理を実行していないものを１つ選択し、新たに選択したデバイス情報に対してステップＳ１２〜Ｓ１４の処理を実行する。なお、表示形式決定部２３は、デバイス情報リスト２１１に登録されている全てのデバイス情報に対してステップＳ１２〜Ｓ１４の処理が完了した場合、デバイス情報リスト２１１の更新動作を終了する。
【００４０】
対応定義情報が存在する場合（ステップＳ１２：Ｙｅｓ）、表示形式決定部２３は、選択したデバイス情報が対応定義情報に含まれる条件を満たしているか否かを確認する（ステップＳ１３）。具体的には、表示形式決定部２３は、選択したデバイス情報に含まれるデバイス値と、対応定義情報に含まれる指定値との関係が、対応定義情報に含まれる条件を満たしているか否かを確認する。選択したデバイス情報が対応定義情報に含まれる条件を満たしていない場合（ステップＳ１３：Ｎｏ）、表示形式決定部２３は、デバイス情報リスト２１１に登録されているデバイス情報の中から、選択していないものを１つ選択し、新たに選択したデバイス情報に対してステップＳ１２〜Ｓ１４の処理を実行する。
【００４１】
選択したデバイス情報が対応定義情報に含まれる条件を満たしている場合（ステップＳ１３：Ｙｅｓ）、表示形式決定部２３は、選択したデバイス情報に表示形式情報を設定する（ステップＳ１４）。具体的には、表示形式決定部２３は、対応定義情報から表示形式情報を読み出し、選択したデバイス情報に設定する。例えば、表示形式決定部２３が、図４に示したデバイス情報リスト２１１からデバイス識別子Ｄ０を含んだデバイス情報を選択した場合、このデバイス情報は、表示形式定義リスト２４１内の対応定義情報に含まれる条件を満たしている。そのため、表示形式決定部２３は、対応定義情報に含まれる“背景：ピンク色”という表示形式情報を読み出し、読み出した表示形式情報を、選択したデバイス情報の表示形式に設定する。
【００４２】
表示形式決定部２３は、ステップＳ１４の処理が終了すると、デバイス情報リスト２１１に登録されているデバイス情報の中から、選択していないものを１つ選択し、新たに選択したデバイス情報に対してステップＳ１２〜Ｓ１４の処理を実行する。
【００４３】
プログラムモニタ情報表示部２５が図６に示したデバイス情報リスト２１１に従ってプログラムモニタ画面を表示する場合、その内容は図８に示したものとなる。また、デバイスモニタ情報表示部２６が図６に示したデバイス情報リスト２１１に従ってデバイスモニタ画面を表示する場合、その内容は図９に示したものとなる。
【００４４】
プログラムモニタ情報表示部２５は、図８に示したように、シーケンスプログラムおよびデバイス値の表示画面であるプログラムモニタ画面２５１を表示する。図８に示した例では、シーケンスプログラムをラダー形式で表示するようにしているが、表示方法をこれに限定するものではない。デバイス値の表示形式は図６に示したデバイス情報リスト２１１の表示形式に従う。デバイス識別子Ｄ０およびＤ１００の表示形式欄に表示形式の情報が登録されているため、プログラムモニタ情報表示部２５は、デバイス識別子Ｄ０に対応するデバイス値およびデバイス識別子Ｄ１００に対応するデバイス値の表示形式を変更する。
【００４５】
図１０は、プログラムモニタ情報表示部２５の動作の一例を示すフローチャートである。プログラム作成装置２がプログラムモニタ情報の表示を指示する操作、すなわちシーケンスプログラムおよびデバイス値の表示を指示する操作をユーザから受け付けた場合、プログラムモニタ情報表示部２５は図１０に示した動作を実行する。なお、プログラムモニタ情報表示部２５は、図７に示した動作に続いて、すなわちデバイス情報リスト２１１が更新された後、図１０に示した動作を続けて行うようにしてもよい。
【００４６】
プログラムモニタ情報の表示を指示する操作を受け付けるなど、プログラムモニタ情報の表示を開始する条件が満たされた場合、プログラムモニタ情報表示部２５は、まず、プログラム保持部２１Ａからシーケンスプログラムを取得し、プログラムモニタ情報を表示する（ステップＳ２１）。すなわち、プログラムモニタ情報表示部２５は、プログラム保持部２１Ａから取得したシーケンスプログラムに基づいてプログラムモニタ画面を生成し、表示する。次に、プログラムモニタ情報表示部２５は、デバイス情報保持部２１Ｂからデバイス情報リスト２１１を取得し（ステップＳ２２）、取得したデバイス情報リスト２１１に登録されているデバイス情報に基づいて、対象のデバイスの位置を特定し、さらに、プログラムモニタ情報の表示属性を更新する（ステップＳ２３）。対象のデバイスとは、表示属性を更新する対象のデバイスであり、表示形式情報が含まれるデバイス情報に対応するデバイスが対象のデバイスに該当する。プログラムモニタ情報表示部２５は、ステップＳ２３の処理が終了すると、プログラムモニタ情報の表示を、表示属性に従って更新する（ステップＳ２４）。この結果、プログラムモニタ情報表示部２５は、図８に示した内容のプログラムモニタ画面を表示する。
【００４７】
デバイスモニタ情報表示部２６は、図９に示したように、デバイス情報の表示画面であるデバイスモニタ画面２６１を表示する。デバイス情報の表示形式は図６に示したデバイス情報リスト２１１の表示形式に従う。デバイス識別子Ｄ０およびＤ１００の表示形式欄に表示形式の情報が登録されているため、デバイスモニタ情報表示部２６は、デバイス識別子Ｄ０に対応するデバイス情報およびデバイス識別子Ｄ１００に対応するデバイス情報の表示形式を変更する。
【００４８】
図１１は、デバイスモニタ情報表示部２６の動作の一例を示すフローチャートである。プログラム作成装置２がデバイスモニタ情報の表示を指示する操作をユーザから受け付けた場合、デバイスモニタ情報表示部２６は図１１に示した動作を実行する。なお、デバイスモニタ情報表示部２６は、図７に示した動作に続いて、すなわちデバイス情報リスト２１１が更新された後、図１１に示した動作を続けて行うようにしてもよい。
【００４９】
デバイスモニタ情報の表示を指示する操作を受け付けるなど、デバイスモニタ情報の表示を開始する条件が満たされた場合、デバイスモニタ情報表示部２６は、デバイス情報保持部２１Ｂからデバイス情報リスト２１１を取得する（ステップＳ３１）。デバイスモニタ情報表示部２６は、次に、デバイス情報リスト２１１に含まれる各デバイス情報の表示形式情報に従ってデバイスモニタ情報を表示する（ステップＳ３２）。すなわち、デバイスモニタ情報表示部２６は、デバイス情報リスト２１１に含まれる各デバイス情報の表示形式情報に従った形式でデバイス情報を表示するデバイスモニタ画面を生成し、表示する。この結果、デバイスモニタ情報表示部２６は、図９に示した内容のデバイスモニタ画面を表示する。
【００５０】
なお、プログラム作成装置２は、プログラムモニタ画面とデバイスモニタ画面とを同時に表示できる構成とするが、これらの画面を常に同時に表示する必要は無く、いずれか一方の画面だけを表示してもよい。また、プログラムモニタ情報表示部２５およびデバイスモニタ情報表示部２６は、デバイス情報リスト２１１に表示形式情報が設定されていないデバイス値については、予め設定されている標準の表示形式で表示を行う。
【００５１】
以上のように、本実施の形態にかかるプログラム作成装置２は、デバイス値を表示する際に表示形式を変更する条件、すなわちデバイス値の表示形式を変更する条件と、変更後の表示形式の情報とを含んだ表示形式定義情報を保持し、ＰＬＣ１から取得したデバイス値の表示を、表示形式定義情報に基づいて行う。表示形式定義情報はユーザから取得する。これにより、特定の条件を満たしたデバイス値を他のデバイス値とは異なる形式で表示することが可能となる。すなわち、シーケンスプログラムの開発者は、デバイス値の確認作業を効率的に行うことが可能となり、シーケンスプログラムの動作状況を容易に理解できるようになる。この結果、シーケンスプログラムの開発効率が向上する。また、プログラム作成装置２は、プログラムモニタ情報表示部２５およびデバイスモニタ情報表示部２６において、共通的に特定のデバイスの表示形式を変更することが可能となり、シーケンスプログラムの視認性が大幅に改善される。また、将来的にシーケンスプログラムが編集され、プログラム上に存在するデバイスの場所およびデバイスモニタ上に存在するデバイスの場所に変更が発生した場合も、プログラムモニタ情報表示部２５およびデバイスモニタ情報表示部２６を修正することなく継続してデバイス値を表示することができる。また、デバイスに対して個々に表示形式を指定することが可能なため、異なる目的で利用するデバイスをユーザが容易に判別できるようになる。さらに、デバイス値に応じて表示形式を変更することにより、ユーザは、ＰＬＣ１の動作状況を視覚的に把握することができるようになる。すなわち、ユーザがＰＬＣ１の動作状況を容易に把握できるようになり、デバッグ環境が向上する。
【００５２】
次に、プログラム作成装置２を実現するハードウェアの構成について説明する。図１２は、プログラム作成装置２を実現するハードウェアの構成例を示す図である。プログラム作成装置２は、プロセッサ１０１、メモリ１０２、表示装置１０３、通信インタフェース１０４および入力装置１０５により実現される。
【００５３】
プロセッサ１０１は、ＣＰＵ（Central  Processing  Unit、中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサ、ＤＳＰ（Digital  Signal  Processor）ともいう）等である。メモリ１０２は、ＲＡＭ（Random  Access  Memory）、ＲＯＭ（Read  Only  Memory）、フラッシュメモリー、等の、不揮発性または揮発性の半導体メモリ、磁気ディスク等である。メモリ１０２は、プロセッサ１０１がプログラム作成装置２として動作するためのプログラムを保持する。メモリ１０２は、プロセッサ１０１が各種処理を実行する際のワーク用メモリとしても使用される。また、メモリ１０２は、記憶部２１および表示形式定義情報保持部２４を構成する。
【００５４】
入力装置１０５は、マウス、キーボード、タッチパネルなどであり、図１に示した入力部２７を構成する。表示装置１０３は、液晶モニタ、ディスプレイなどであり、図８に示したプログラムモニタ画面、図９に示したデバイスモニタ画面などの各種画面を表示する。通信インタフェース１０４は、ネットワークインタフェースカードなどであり、プログラム作成装置２がＰＬＣ１と通信する際に使用される。  
【００５５】
図１２に示したプロセッサ１０１およびメモリ１０２を用いてプログラム作成装置２のデバイス情報取得部２２、表示形式決定部２３、プログラムモニタ情報表示部２５、デバイスモニタ情報表示部２６およびプログラム作成部２８を実現する場合、これら各部の機能を実現するためのプログラムをメモリ１０２が記憶しておき、メモリ１０２が記憶しているプログラムをプロセッサ１０１が読み出して実行する。プログラムモニタ情報表示部２５およびデバイスモニタ情報表示部２６を実現する際には表示装置１０３も利用される。
【００５６】
以上の実施の形態に示した構成は、本発明の内容の一例を示すものであり、別の公知の技術と組み合わせることも可能であるし、本発明の要旨を逸脱しない範囲で、構成の一部を省略、変更することも可能である。
【符号の説明】
【００５７】
１  プログラマブルロジックコントローラ（ＰＬＣ）、２  プログラム作成装置、１１  デバイス情報管理部、２０  動作状態表示部、２１  記憶部、２１Ａ  プログラム保持部、２１Ｂ  デバイス情報保持部、２２  デバイス情報取得部、２３  表示形式決定部、２４  表示形式定義情報保持部、２５  プログラムモニタ情報表示部、２６  デバイスモニタ情報表示部、２７  入力部、２８  プログラム作成部、５０  表示形式定義情報、１１１，２１１  デバイス情報リスト、２４１  表示形式定義リスト。
【要約】
プログラム作成装置（２）は、産業用コントローラ（１）で実行される制御プログラムの動作状態に合わせて値が変化するデータを取得するデバイス情報取得部（２２）と、制御プログラムの動作状態をデータに基づいて表示する動作状態表示部（２０）と、動作状態表示部（２０）が動作状態を表示する際の表示形式の定義情報を、デバイス情報取得部（２２）が取得するデータごとに保持する表示形式定義情報保持部（２４）と、を備える。【図１】
0006407481.tif 000002
【図２】
0006407481.tif 000003
【図３】
0006407481.tif 000004
【図４】
0006407481.tif 000005
【図５】
0006407481.tif 000006
【図６】
0006407481.tif 000007
【図７】
0006407481.tif 000008
【図８】
0006407481.tif 000009
【図９】
0006407481.tif 000010
【図１０】
0006407481.tif 000011
【図１１】
0006407481.tif 000012
【図１２】
0006407481.tif 000013