(57)【特許請求の範囲】
【請求項１】
プログラム名称およびプログラム更新レベルを有するプログラムプロパティとプログラム本体とからなるプログラムを格納するプログラムライブラリと、
プログラムプロパティとプログラム本体とを生成して実行用プログラムとし、上記実行用プログラムをプログラマブルコントローラに出力する第１の機能と、
上記プログラマブルコントローラから実行プログラムを取得し、上記プログラムライブラリ内に格納されているプログラムのプログラムプロパティを取得する第２の機能と、
上記プログラマブルコントローラから取得した実行プログラムのプログラムプロパティ中に含まれているプログラム名称と上記プログラムライブラリ内から取得したプログラムのプログラムプロパティ中に含まれているプログラム名称とを比較することにより、上記プログラムライブラリ内から上記実行プログラムと同一プログラム名称のプログラムを探索する第３の機能と、
上記探索の結果、一つでも同一プログラム名称のプログラムがあった場合は、そのプログラムのプログラムプロパティ中に含まれているプログラム更新レベルと上記プログラマブルコントローラから取得した実行プログラムのプログラムプロパティ中に含まれているプログラム更新レベルとを比較することにより、その実行プログラムが最新バージョンであるかどうかを判定する第４の機能と、
上記判定の結果、実行プログラムが最新バージョンでない場合は、最新バージョンの実行プログラムがプログラマブルコントローラに格納されていない旨を表示する第５の機能と、を有することを特徴とするプログラム作成支援装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、ＦＡ工場等に用いられるプログラマブルコントローラ、プログラマブルコントローラ用のプログラム作成支援装置及びプログラム作成支援方法に関する。
【０００２】
【従来の技術】
プログラマブルコントローラにおいては、ユーザが使用するプログラムを予めパソコン等のプログラム作成支援装置で作成し、作成したプログラムを、必要に応じて、実行形式のオブジェクトコード（実行用プログラム）にコンパイルし、このプログラム作成支援装置をプログラマブルコントローラのＣＰＵユニットに接続して、この実行用プログラムをプログラマブルコントローラにインストールして使用する。この実行用プログラムは、通常、サイクリックに起動されて、その処理に応じて、プログラマブルコントローラの外部に接続されたユニットとの間でデータの送受信を行う。
【０００３】
そして、プログラマブルコントローラにインストールされた実行用プログラムの内容を調べるには、その実行用プログラムをプログラム作成支援装置に呼び出し、プログラム全体を元のソースプログラムに変換してその内容を全部表示する。もし、そのプログラムが更新され、内容が変わっている場合は、更に、そのプログラムの最新バージョンのソースプログラムと上記の変換したソースプログラムとを、逐一目視で克明に比較して相違の有無を調べ、相違がなければ最新のもの、相違があれば古い実行用プログラムと判断して、インストールされている実行用プログラムが最新のものかどうかを調べる。
【０００４】
【発明が解決しようとする課題】
しかし、このように、プログラマブルコントローラが解読して実行できるオブジェクトコードのみで構成されている実行用プログラム全体を、元のソースに変換してその内容を全部表示し、これを調べることは、作業能率がきわめて悪く、しかも、変換したプログラムの更新日時が表示できないので、誤って古いバージョンを使用するおそれがあった。
【０００５】
更に、プログラム作成支援装置側のプログラムライブラリに格納されたプログラムのプログラム名称およびプログラム更新日時の一覧表も表示できないので、ライブラリ上のプログラムを使用することが困難であった。
【０００６】
この発明は、上述の課題を解決し、プログラマブルコントローラ内、あるいは、プログラムライブラリ内に格納されたプログラムのプロパティをプログラム作成支援装置に表示することのできるプログラム作成支援装置を提供するものである。
【０００７】
【課題を解決するための手段】
上述の課題を解決するために、本発明に係るプログラム作成支援装置は、プログラム名称およびプログラム更新レベルを有するプログラムプロパティとプログラム本体とからなるプログラムを格納するプログラムライブラリと、プログラムプロパティとプログラム本体とを生成して実行用プログラムとし、上記実行用プログラムをプログラマブルコントローラに出力する第１の機能と、上記プログラマブルコントローラから実行プログラムを取得し、上記プログラムライブラリ内に格納されているプログラムのプログラムプロパティを取得する第２の機能と、上記プログラマブルコントローラから取得した実行プログラムのプログラムプロパティ中に含まれているプログラム名称と上記プログラムライブラリ内から取得したプログラムのプログラムプロパティ中に含まれているプログラム名称とを比較することにより、上記プログラムライブラリ内から上記実行プログラムと同一プログラム名称のプログラムを探索する第３の機能と、上記探索の結果、一つでも同一プログラム名称のプログラムがあった場合は、そのプログラムのプログラムプロパティ中に含まれているプログラム更新レベルと上記プログラマブルコントローラから取得した実行プログラムのプログラムプロパティ中に含まれているプログラム更新レベルとを比較することにより、その実行プログラムが最新バージョンであるかどうかを判定する第４の機能と、上記判定の結果、実行プログラムが最新バージョンでない場合は、最新バージョンの実行プログラムがプログラマブルコントローラに格納されていない旨を表示する第５の機能と、を有することを特徴とする。
【００１２】
この発明における「プログラム名称」とは、プログラムの内容や目的等を短い字数で簡略に表現し、あるいは、連想させる名称を意味する。また、「プログラム更新レベル」とは、プログラムを新規に作成し、あるいは、更新した回数または時刻、いいかえれば、作成、更新の時系列のレベルを現し、新旧を識別できる数字等の記号を意味する。例えば、作成、更新の年月日時刻（ソースプログラムを仕上げた日時またはコンパイルしたプログラム作成日時）、更新レベル番号等が「プログラム更新レベル」の代表的例である。
【００１３】
【発明の実施の形態】
この発明の実施の形態を、以下、図面を参照して説明する。
【００１４】
図１は、この発明の一実施の形態を示すブロック図である。１はプログラム作成支援装置、２はプログラマブルコントローラである。図１は、この発明に関連する部分のみを示して、他は省略してあるが、上記プログラム作成支援装置は、通常使用されるパソコンにプログラマブルコントローラ用プログラムの作成支援ソフトを組み込んだものである。また、プログラマブルコントローラも、ＦＡ工場等で通常使用されるものである。
【００１５】
上記プログラム作成支援装置１の表示画面３には、プログラム作成支援装置１側に設けられたプログラムライブラリ（図示省略）に格納されているプログラムのプログラムプロパティ領域に格納されたプログラムプロパティ（プログラム名称およびプログラム作成日時）を表形式で表示するプログラムライブラリ表示欄４、プログラマブルコントローラ２に格納されている実行用プログラムのプログラムプロパティを表示するＰＣプログラム表示欄５およびアラーム表示欄６が配置されている。なお、プログラムライブラリに格納されているプログラムはソースプログラムの形で格納してあるが、オブジェクトコードで格納しておくこともできる。
【００１６】
上記のプログラムプロパティとしては、プログラムの内容、目的等を少ない字数で簡潔に表現したり、連想させたりするプログラム名称と、そのプログラムを作成した年月日・時刻を記録したプログラム作成日時が用いられる。ここで、プログラム作成日時としては、一般に、プログラムをプログラムライブラリやプログラマブルコントローラ２のプログラム格納領域７に格納した日時を採用して記録する。従って、ひとつのプログラムに修正を加え、これを格納した場合、新しいプログラム作成日時のプログラムとして格納される。格納に際して、この実施の形態のように、コンパイラでコンパイルするならば、そのコンパイルの日時を採用してもよい。このプログラム作成日時によって、同一名称のプログラム間の新旧の識別ができる。
【００１７】
上記アラーム表示欄６には、後に説明するように、プログラマブルコントローラの実行用プログラムのプログラム作成日時が、プログラムライブラリに格納されている同名のプログラムの中の最新のプログラム作成日時よりも古いとき、最新バージョンがプログラマブルコントローラ２側にインストールされていない旨の警告が表示される。
【００１８】
上記プログラム格納領域７のプログラム本体（オブジェクトコード）格納領域７−１の先頭には、プログラムプロパティ領域７−２が設けられ、このプログラムプロパティ領域７−１にプログラムプロパティ、すなわち、プログラム名称７ｎおよびプログラム作成日時７ｄを格納してある。ここに格納されるプログラムは、上記プログラム作成支援装置１で、ソースプログラムが作成され、そのコンパイルにより生成された実行用プログラム（オブジェクトコード）がプログラマブルコントローラ２のプログラム格納領域７に出力されて格納されるものである。
【００１９】
プログラム格納領域７に格納されているプログラムの内容を確認する場合は、プログラム作成支援装置１をプログラマブルコントローラ２に接続して、プログラム格納領域７のプログラムをプログラム作成支援装置１に読み出して取得し、そのプログラムプロパティを上記ＰＣプログラム表示欄５に表示する。これにより、プログラム格納領域７に格納されているプログラムの内容を確認できる。更に、プログラム作成支援装置１側のプログラムライブラリを参照して、その内容との比較もすることができる。
【００２０】
プログラム作成支援装置１が、プログラム格納領域７に格納されているプログラムを取得し、プログラムライブラリと参照しながら表示画面３に表示する処理フローを、図２に示す。図２において、先ず、ステップ２０１で、プログラマブルコントローラ２のプログラム読み出しのコマンドが入力されると、プログラムを読み出して取得する。次のステップ２０２では、プログラムライブラリに格納されているプログラムのプログラムプロパティを全部読み出す。
【００２１】
そして、次のステップ２０３で、プログラマブルコントローラ２から取得したプログラム（以下、ＰＣプログラムという）のプログラムプロパティを、プログラムライブラリのプログラム（以下、ライブラリプログラムという）のプログラムプロパティと比較していく。比較の順序は以下のように行われる。
【００２２】
すなわち、先ず、ＰＣプログラムのプログラム名称（図１では、Body3-5 Painting）と同一のプログラム名称のライブラリプログラムのプログラムプロパティを探して集める（ステップ２０３）。もしなければ（なし）、ステップ２０６へ移る。ひとつでも同一のプログラム名称のライブラリプログラムがあれば（あり）、集めたプログラムプロパティ（図１の場合、全てプログラム名称Body3-5 Painting）のプログラム作成日時とＰＣプログラムのプログラム作成日時とを比較し（ステップ２０４）、もし、ＰＣプログラムのプログラム作成日時＜ライブラリプログラムのプログラム作成日時のものがひとつもなければ、すなわち、ＰＣプログラムのプログラム作成日時が最新のものであれば（なし）、最も新しいバージョンのプログラムがプログラマブルコントローラ２で使われていると判断し、アラームは必要ないので、ステップ２０６へ移る。
【００２３】
ステップ２０４において、「ＰＣプログラムのプログラム作成日時＜ライブラリプログラムのプログラム作成日時」のものがあれば（図１の場合、ＰＣプログラム：1998年３月13日10:12:15＜ライブラリプログラム1998年３月13日20:12:56（あり））、プログラマブルコントローラ２で使われているプログラムよりも新しいバージョンがプログラムライブラリにあるのであるから、ステップ２０５へ進んで、図１のアラーム表示欄６に示すようなアラームを編集する。
【００２４】
次のステップ２０６では、ＰＣプログラムのプログラムプロパティをオブジェクトから変換して文字表示可能なコードに戻し、ステップ２０７で、ＰＣプログラムのプログラムプロパティをＰＣプログラム表示欄５、ライブラリプログラムのプログラムプロパティをプログラムライブラリ表示欄４にそれぞれ表示し、また、ステップ２０５でアラームを編集した場合は、これをアラーム欄６に表示する。
【００２５】
なお、このプログラム作成支援装置においては、更に、この表示結果からプログラムを選択してソースプログラムを表示画面３に表示し、プログラムの修正等を行うことができる。
【００２６】
この発明におけるプログラムライブラリは、プログラム作成支援装置１内に内蔵しても、外付けにしてもよい。プログラマブルコントローラ２のメモリに格納するプログラムプロパティやプログラムライブラリに格納するプログラムプロパティは、上述の実施の形態におけるプログラマブルコントローラ２内のプログラムプロパティのように、ソースプログラムとともにコンパイルしてもよいが、例えば、表示画面３に表示されたままの文字・符号をコンパイルしないでそのまま格納することもできる。
【００２７】
プログラムプロパティのプログラム更新レベルとしては、上述の実施の形態のプログラム作成日時の他、レベル番号、バージョン記号等を使用することができる。
【００２８】
また、この発明によれば、プログラムライブラリなしで、プログラム作成支援装置１とプログラマブルコントローラ２とを接続して、プログラマブルコントローラ２内のプログラムプロパティをプログラム作成支援装置１に表示するだけでも、プログラマブルコントローラ２内のプログラムを容易に知ることができ、一方、プログラマブルコントローラ２なしで、プログラム作成支援装置１とプログラムライブラリとを接続して、プログラムライブラリ内のプログラムのプログラムプロパティの一覧表をプログラム作成支援装置１に表示し、この一覧表から、必要なプログラムを容易に選択して、修正を加えることができる。
【００２９】
【発明の効果】
以上の説明から理解されるように、この発明によれば、プログラマブルコントローラの実行用プログラムに、本来のプログラム領域の他に、プログラムプロパティ領域が設け、上記プログラムプロパティ領域にプログラム名称およびプログラム更新レベルを格納して、プログラム作成支援装置が、この実行用プログラムを読み出したとき、プログラムプロパティ領域のプログラム名称およびプログラム更新レベルを表示することができるるから、ソースプログラムを全部表示させて調べることなく、容易に、ごく短時間で、プログラマブルコントローラにインストールされているプログラムの内容を知ることができる。
【００３０】
また、プログラム作成支援装置側のプログラムライブラリに格納されたプログラムのプログラム名称およびプログラム更新レベルを、上記実行用プログラムのプログラムプロパティ領域のプログラム名称およびプログラム更新レベルとともに表示可能とすれば、プログラマブルコントローラにインストールされているプログラムとプログラムライブラリのプログラムとを容易に比較することができ、プログラムのバージョンを確認することができ、バージョンの履歴管理が容易となり、誤ってバージョンの古いプログラムを使用することを回避できる。
【００３１】
また、プログラムライブラリに格納されたプログラムに、プログラム名称およびプログラム更新レベルを格納するプログラムプロパティ領域を設け、上記プログラム名称およびプログラム更新レベルを表示できるようにすれば、プログラムライブラリの内容、バージョンを理解しやすい一覧表にまとめられ、プログラムの活用、プログラムの部品化が促進される。
【図面の簡単な説明】
【図１】この発明の一実施の形態を示すブロック図。
【図２】図１におけるプログラム作成支援方法の処理フローを示すフローチャート。
【符号の説明】
１  プログラム作成支援装置
２  プログラマブルコントローラ
３  表示画面
４  プログラムライブラリ表示欄
５  ＰＣプログラム表示欄
６  アラーム表示欄
７  プログラム格納領域
７−１  プログラムプロパティ領域
７ｎ  プログラム名称
７ｄ  プログラム作成日時（プログラム更新レベル）
【図１】
0003861959.tif 000002
【図２】
0003861959.tif 000003