(57)【特許請求の範囲】
【請求項１】
プログラマブルコントローラ（ＰＬＣ）ユニットと、該ＰＬＣユニットの設定を行う周辺装置とを備えるプログラマブルコントローラシステムにおいて、
ＰＬＣユニットは、自身の形名およびバージョンを識別する識別情報と、自身が使用する命令を定義する情報を含む固有情報とを記憶する記憶部を有し、
前記周辺装置は、
ＰＬＣユニットの形名およびバージョンを識別する識別情報毎に、命令を定義する情報を含む固有情報が記憶される固有情報データベース手段と、
接続されたＰＬＣユニットに記憶された識別情報と前記固有情報データベース手段に記憶された識別情報との比較に基づき、前記固有情報データベース手段に記憶された固有情報が接続されたＰＬＣユニットで使用可能か否かを判定し、使用可能でないと判定した場合、接続されたＰＬＣユニットから固有情報を取得して前記固有情報データベース手段の記憶データを更新するデータベース更新手段と、
前記固有情報データベース手段から前記接続されたＰＬＣユニットに対応する固有情報を読み出し、該読み出した固有情報に基づいて接続されたＰＬＣユニットの設定処理を行う設定アプリケーションソフトウェア手段と、
を備えることを特徴とするプログラマブルコントローラシステム。
【請求項２】
前記データベース更新手段は、ＰＬＣユニットが接続されたとき、前記固有情報データベース手段に記憶された識別情報と比較する前記接続されたＰＬＣユニットの識別情報を参照する要求である、ＰＬＣユニットの形名およびバージョンに依存しない参照要求を送信し、
前記参照要求を受信した前記ＰＬＣユニットは、前記記憶部に記憶する識別情報を前記データベース更新手段に送信する、
ことを特徴とする請求項１に記載のプログラマブルコントローラシステム。
【請求項３】
前記データベース更新手段は、前記ＰＬＣユニットから固有情報を取得する際、ＰＬＣユニットの形名およびバージョンに依存しない取得要求を送信し、
前記取得要求を受信した前記ＰＬＣユニットは、前記記憶部に記憶する識別情報および固有情報を前記データベース更新手段に送信する、
ことを特徴とする請求項１または２に記載のプログラマブルコントローラシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラマブルコントローラ（以下、ＰＬＣという）を構成するＰＬＣユニットと、該ＰＬＣユニットの設定を行う周辺装置とを備えるＰＬＣシステムに関するものである。
【背景技術】
【０００２】
ＰＬＣを構成するＰＬＣユニット、例えばＣＰＵユニットの設定を行うとき、パソコンなどの周辺装置を該ＣＰＵユニットに接続し、周辺装置にインストールされているＣＰＵユニット設定用の設定アプリケーションソフトウェアを実行してＣＰＵユニットの設定を行う。
【０００３】
このシステムにおいて、設定アプリケーションソフトウェアが未対応の新規のＣＰＵユニット、例えば新しい形名のＣＰＵユニットや、同じ形名であっても仕様に変更が加えられた新しいバージョンのＣＰＵユニットを導入する際、該導入する新規のＣＰＵユニットに対応させるために設定アプリケーションソフトウェアをバージョンアップさせる必要がある。このとき、バージョンアップソフトウェアをインターネット経由でダウンロードするか、記憶媒体に格納されているバージョンアップソフトウェアを導入するＣＰＵユニットのメーカから入手することによって、入手したバージョンアップソフトウェアを設定アプリケーションソフトウェアに適用してバージョンアップを行う方法が一般的である。
【０００４】
しかしながら、インターネットに接続できる環境が整っていない現場などではインターネット経由でのバージョンアップソフトウェアの入手は出来ず、また、バージョンアップソフトウェアが格納されている記憶媒体を入手する方法では、入手まで時間がかかったり、別の周辺装置にインストールされている設定アプリケーションソフトウェアをバージョンアップさせる場合などに備えて記憶媒体を保管しておく必要があり、何れもユーザフレンドリーな方法とは言い難い。
【０００５】
これに対して、特許文献１によれば、ＰＬＣのメモリにプログラミング制御用ソフトを格納し、接続されたプログラミング装置に該プログラミング制御用ソフトを転送し、プログラミング装置は転送されてきたプログラミング制御用ソフトを立ち上げてＰＬＣの設定を行う技術が開示されている。
【０００６】
【特許文献１】特開２０００−２９３２０９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、特許文献１の技術によれば、設定アプリケーションソフトウェア自体をＰＬＣのメモリに格納するので、高機能な設定アプリケーションソフトウェアが使用される場合は非常に大きなサイズのメモリを必要とし、ＰＬＣのコストアップにつながるという問題があった。さらに、設定アプリケーションソフトウェアを周辺装置に転送するので、この転送に時間がかかるという問題があった。
【０００８】
本発明は、上記に鑑みてなされたものであって、ＰＬＣユニットの形名およびバージョンに関わらず周辺装置にて設定可能なＰＬＣシステムを得ることを目的とする。
【課題を解決するための手段】
【０００９】
上述した課題を解決し、目的を達成するために、本発明は、ＰＬＣユニットと、該ＰＬＣユニットの設定を行う周辺装置とを備えるプログラマブルコントローラシステムにおいて、ＰＬＣユニットは、自身の形名およびバージョンを識別する識別情報と、自身が使用する命令を定義する情報を含む固有情報とを記憶する記憶部を有し、前記周辺装置は、ＰＬＣユニットの形名およびバージョンを識別する識別情報毎に、命令を定義する情報を含む固有情報が記憶される固有情報データベース手段と、接続されたＰＬＣユニットに記憶された識別情報と前記固有情報データベース手段に記憶された識別情報との比較に基づき、前記固有情報データベース手段に記憶された固有情報が接続されたＰＬＣユニットで使用可能か否かを判定し、使用可能でないと判定した場合、接続されたＰＬＣユニットから固有情報を取得して前記固有情報データベース手段の記憶データを更新するデータベース更新手段と、前記固有情報データベース手段から前記接続されたＰＬＣユニットに対応する固有情報を読み出し、該読み出した固有情報に基づいて接続されたＰＬＣユニットの設定処理を行う設定アプリケーションソフトウェア手段と、を備えることを特徴とする。
【発明の効果】
【００１０】
この発明によれば、ＰＬＣの形名およびバージョンに関わらず周辺装置にて設定可能なＰＬＣシステムを得ることができる。
【発明を実施するための最良の形態】
【００１１】
以下に、本発明にかかるＰＬＣシステムの実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
【００１２】
実施の形態．
ＰＬＣは、ＰＬＣ全体の制御と産業用装置の制御とを行うＣＰＵユニットと、用途に合わせて選択されるいくつかのオプションユニットと、が同一のバス上に配置されて構成される。オプションユニットとしては、温度制御ユニットやＤ/Ａ変換を行うアナログユニットなど、前記するＣＰＵユニットとは異なる独自のＣＰＵにより動作し、ＣＰＵユニットの機能を拡張するユニットであるインテリジェントユニットがある。本実施の形態のＰＬＣシステムは、周辺装置と該周辺装置が設定する設定対象とで構成されるが、ＣＰＵユニットおよびインテリジェントユニット等を本実施の形態における設定対象の適用対象としており、これらを総称してＰＬＣユニットという。このうち、ＣＰＵユニットに適用する場合について説明する。
【００１３】
図１は、本発明の実施の形態にかかるＰＬＣシステムの概略的な構成を示す図である。図１において、本実施の形態のＰＬＣシステムは、ＣＰＵユニット１と、該ＣＰＵユニット１の設定やモニタを行う周辺装置２とを有する。
【００１４】
ＣＰＵユニット１は、ユニット主要部１１と、メモリ１２と、メモリ１２に記憶される固有情報１３と、通信インタフェース１４と、転送制御部１５とをさらに備える。また、周辺装置２は、周辺装置制御部２１と、メモリ２２と、メモリ２２に保持される設定アプリケーションソフトウェア２３、データベース更新ソフトウェア２４、および固有情報データベース２５と、通信インタフェース２６と、表示部２７と、入力部２８とをさらに備える。
【００１５】
ユニット主要部１１は、ＣＰＵユニット１が図示しない産業用装置の制御を実行するための、中央演算装置等により構成される主要部である。ユニット主要部１１は、周辺装置２により作成された実行プログラムを内部に保持し、該実行プログラムに基づいて産業用装置の制御を実行する。メモリ１２は、固有情報１３を記憶するための、ＲＯＭ等により構成される記憶装置である。
【００１６】
固有情報１３は、ＣＰＵユニット１の形名とバージョン情報、実行プログラムの生成に必要な、ユニット主要部１１が使用する命令およびデバイスの種別を定義する定義情報、および自ＣＰＵユニット１のモニタに使用される通信コマンドを定義する定義情報を含む情報が記述されている。ここでＣＰＵユニット１の形名とは、ＣＰＵユニット１のタイプを示す情報であり、形名が異なるＣＰＵユニット１同士の固有情報１３は互いに互換性はないものとする。各種定義情報は、メーカによるＣＰＵユニット１の改良などによって変更されることがあるため、同じ形名のＣＰＵユニット１であっても異なることがある。バージョン情報は、このような変更が有るたびに昇順に付与される値である。すなわち、同じ形名を有する固有情報１３同士でバージョン情報を比較すると、どちらのＣＰＵユニット１および固有情報１３が新しいかを判定することができる。ここでは、ＣＰＵユニット１は、該ＣＰＵユニット１のバージョンと同じか、より新しいバージョンの固有情報１３に記述される定義情報を使用可能とするような、いわゆる上位互換性があるとして説明する。
【００１７】
図２は、固有情報１３の具体例を説明する図である。本実施の形態においては、実行プログラムに使用する命令を定義する情報と、デバイスの種別を定義する情報と、ＣＰＵユニット１のモニタに使用する通信コマンドを定義する情報と、該通信コマンドの引数として使用するパラメータの情報とを、夫々、命令テーブル（Ｉｎｓｔｒｕｃｔｉｏｎ  Ｔａｂｌｅ）、デバイステーブル（Ｄｅｖｉｃｅ  Ｔａｂｌｅ）、通信コマンドテーブル（Ｃｏｍｍｕｎｉｃａｔｉｏｎ  Ｃｏｍｍａｎｄ  Ｔａｂｌｅ）、パラメータテーブル（Ｐａｒａｍｅｔｅｒ  Ｔａｂｌｅ）によって管理するとしている。本具体例の固有情報１３は、＜Ｍａｉｎ＞＜／Ｍａｉｎ＞に区切られる部分において、ＣＰＵユニット１の形名（Ｔｙｐｅ  Ｎａｍｅ）が「ＴｙｐｅＱ０１」、固有情報１３のバージョン情報（Ｖｅｒｓｉｏｎ）が「Ｃ」であることを示し、上述する４つのテーブルのテーブル名を形名と同じ「ＴｙｐｅＱ０１」とすることを示している。また、固有情報１３は、命令テーブルおよびデバイステーブルの内容を、夫々＜Ｉｎｓｔｒｕｃｔｉｏｎ＞＜／Ｉｎｓｔｒｕｃｔｉｏｎ＞で区切られる部分および＜Ｄｅｖｉｃｅ＞＜／Ｄｅｖｉｃｅ＞で区切られる部分において定義している。ここでは、命令テーブルにおいて、命令「ＬＤ」と「ＯＵＴ」が、夫々「１２０００００１」、「２２０００００１」というユニット主要部１１が使用するマシン語（Ｍａｃｈｉｎｅ  Ｃｏｄｅ）に対応するということが定義されている。また、デバイステーブルにおいて、デバイスの種別「Ｘ」と「Ｙ」が、夫々「１０１」、「２０１」というマシン語に対応するということが定義されている。
【００１８】
図１に戻り、通信インタフェース１４は、ＣＰＵユニット１と周辺装置２との間の通信を行うためのインタフェースである。該通信は、通信インタフェース１４と周辺装置２が備える通信インタフェース２６とを通して行われる。該通信の通信方式は特に限定されるものではなく、例えば、ＲＳ（Ｒｅｃｏｍｍｅｎｄｅｄ  Ｓｔａｎｄａｒｄ）、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）、Ｅｔｈｅｒｎｅｔ（登録商標）などであってよい。また、無線方式であってもよい。
【００１９】
転送制御部１５は各種データの転送を制御する制御部である。転送制御部１５は、さらに、周辺装置１から参照コマンドを受け付けたとき、固有情報１３に記述される形名およびバージョン情報を読み出して周辺装置２に送信し、取得コマンドを受け付けたとき、固有情報１３を読み出して周辺装置２に送信する。ここで、転送制御部１５は、形名およびバージョンが異なるどのＣＰＵユニット１に搭載されるものであっても共通の参照および取得コマンドを受け付けて、該夫々のコマンドに応じて受信および応答の動作を実行可能なように構成される。
【００２０】
周辺装置制御部２１は、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）などの制御プログラム、各種の処理手順などを規定したプログラムを実行することによって周辺装置２の動作を制御する制御部であり、特に本発明の実施の形態に密接に関連する事柄としては、メモリ２２に保持される設定アプリケーションソフトウェア２３およびデータベース更新ソフトウェア２４を読み出して実行する動作を行う。
【００２１】
メモリ２２は、ＲＯＭ、ＲＡＭ、ハードディスクドライブなどにより構成される記憶装置であり、設定アプリケーションソフトウェア２３、データベース更新ソフトウェア２４、および固有情報データベース２５を記憶する。
【００２２】
固有情報データベース２５は、固有情報１３と同様の情報構成を有する固有情報をテーブル形式で記憶するデータベースである。固有情報データベース２５の具体例を図３に示す。図３の具体例において、図２に示す固有情報１３の内容における＜Ｍａｉｎ＞＜／Ｍａｉｎ＞に区切られる部分の情報がメインテーブルのＩＤが１の行に記憶されている。さらに、テーブル名「ＴｙｐｅＱ０１」の命令テーブルに、固有情報１３の＜Ｉｎｓｔｒｕｃｔｉｏｎ＞＜／Ｉｎｓｔｒｕｃｔｉｏｎ＞で区切られる部分に記述されている情報が記憶されている。同様に、テーブル名「ＴｙｐｅＱ０１」のデバイステーブルに、＜Ｄｅｖｉｃｅ＞＜／Ｄｅｖｉｃｅ＞で区切られる部分に記述されている情報が記憶されている。メインテーブルのＩＤが２の行には、異なる形名のＣＰＵユニット１の固有情報１３の内容が記憶されている。
【００２３】
データベース更新ソフトウェア２４は、周辺装置制御部２１によって実行されることによって動作するソフトウェアであり、接続されているＣＰＵユニット１の転送制御部１５に参照コマンドを送信し、転送制御部１５に、固有情報１３に記述されている形名とバージョン情報とを送信させる。そして、データベース更新ソフトウェア２４は、送信されてきた形名と同じ形名を有する固有情報が固有情報データベース２５に記憶されているか否かを判定し、記憶されていると判定した場合、該記憶されている固有情報のバージョン情報と取得したバージョン情報とを比較し、記憶されている固有情報が固有情報１３より古いか否かを判定する。
【００２４】
そして、データベース更新ソフトウェア２４は、取得した形名と同じ形名を有する固有情報が固有情報データベース２５に記憶されていないと判定した場合、転送制御部１５に取得コマンドを送信して固有情報１３を送信させ、送信されてきた固有情報１３を固有情報データベース２５に加える。また、データベース更新ソフトウェア２４は、固有情報データベース２５に記憶されている固有情報のバージョンが固有情報１３から取得したバージョンより古いと判定した場合、同様に取得コマンドを送信して固有情報１３を取得し、固有情報データベース２５に記憶されている同じ形名を有する固有情報を上書きする。
【００２５】
すなわち、データベース更新ソフトウェア２４は、接続されたＣＰＵユニット１の固有情報１３と固有情報データベース２５に記憶される固有情報とを比較し、必要に応じて固有情報データベース２５の内容を更新し、固有情報データベース２５に記憶される固有情報で前記する接続されたＣＰＵユニット１に対応できるようにする。
【００２６】
設定アプリケーションソフトウェア２３は、既にデータベース更新ソフトウェア２４による処理済みの固有情報データベース２５を検索して、ＣＰＵユニット１の形名の固有情報を選択し、該固有情報において定義されている命令およびデバイスの種別を用いて実行プログラムを生成する設定動作を行う。また、設定アプリケーションソフトウェア２３は、選択した固有情報に定義されている通信コマンドおよびパラメータを用いることによって、ＣＰＵユニット１の動作のモニタを行う。
【００２７】
因みに、設定アプリケーションソフトウェア２３が、データベース更新ソフトウェア２４による処理が行われていない固有情報データベース２５を使用し、固有情報１３よりも古い固有情報を選択した場合、接続されたＣＰＵユニット１の設定動作やモニタの動作を正しく実行できない。
【００２８】
通信インタフェース２６は、ＣＰＵユニット１と通信を行うためのインタフェースである。表示部２７は、周辺装置制御部２１により出力される情報を使用者に表示する例えばＬＣＤからなる表示装置である。入力部２８は、例えばキーボードやスイッチ類などの入力手段を備えた、周辺装置制御部２１に対する入力インタフェースである。
【００２９】
次に、以上のように構成される実施の形態のＰＬＣシステムの動作を説明する。まず、ＣＰＵユニット１が接続されたとき、データベース更新ソフトウェア２４が固有情報データベース２５に記憶される固有情報で接続されたＣＰＵユニット１に対応できるようにする動作を説明する。図４は、該動作を説明するフローチャートである。
【００３０】
図４において、データベース更新ソフトウェア２４は、参照コマンドを転送制御部１５に送信し、固有情報１３から形名とバージョン情報を取得する（ステップＳ１）。次に、データベース更新ソフトウェア２４は、固有情報データベース２５に取得した形名の固有情報が記憶されているか否かを判定する（ステップＳ２）。固有情報が記憶されていると判定した場合（ステップＳ２、Ｙｅｓ）、データベース更新ソフトウェア２４は、該記憶されている固有情報のバージョン情報と取得したバージョン情報とを比較し、該記憶されている固有情報が固有情報１３より古いか否かを判定し（ステップＳ３）、否と判定した場合、固有情報データベース２５を更新しなくても、接続されたＣＰＵユニット１に対応できるので、データベース更新ソフトウェア２４の動作を終了する。
【００３１】
ステップＳ２において、データベース更新ソフトウェア２４が、取得した形名の固有情報は固有情報データベース２５に記憶されていないと判定した場合（ステップＳ２、Ｎｏ）、データベース更新ソフトウェア２４は、取得コマンドを転送制御部１５に送信し、固有情報１３を取得する（ステップＳ４）。そして、データベース更新ソフトウェア２４は、該取得した固有情報１３を固有情報データベース２５に加えることによって固有情報データベース２５を更新する（ステップＳ５）。
【００３２】
ステップＳ３において、データベース更新ソフトウェア２４が、固有情報データベース２５に記憶されている固有情報の方が固有情報１３より古いと判定した場合（ステップＳ３、Ｙｅｓ）、データベース更新ソフトウェア２４は、固有情報１３を取得し（ステップＳ５）、該取得した固有情報１３を前記する固有情報データベース２５に記憶されている同じ形名の固有情報に上書きすることによって固有情報データベース２５を更新する（ステップＳ５）。
【００３３】
図２および図３に示す具体例においては、固有情報データベース２５は、図２に示す固有情報１３と同じ形名「ＴｙｐｅＱ０１」のバージョン情報「Ｃ」の固有情報を記憶しているが、固有情報データベース２５が記憶する該固有情報のバージョンが古い、すなわちバージョン情報が「Ａ」〜「Ｂ」である場合、上記したデータベース更新ソフトウェア２４の動作により、該記憶される形名「ＴｙｐｅＱ０１」の固有情報はバージョン情報が「Ｃ」になるように更新される。また、固有情報データベース２５が形名「ＴｙｐｅＱ０１」の固有情報を記憶していない場合、データベース更新ソフトウェア２４の動作により、固有情報データベース２５は固有情報１３が加えられることによって更新される。
【００３４】
このように、ＣＰＵユニット１は、自ユニット１が使用する定義情報をまとめた固有情報１３を記憶し、必要に応じて該固有情報１３を周辺装置２に送信することによって周辺装置２による自ユニット１の設定および参照を可能にするように構成したので、特許文献１に開示される技術のように大きなサイズのメモリをＣＰＵユニット１に搭載する必要がなく、また、更新のための転送処理にかかる時間も少なくて済む。
【００３５】
次に、上記するデータベース更新ソフトウェア２４の動作が実行された後、設定アプリケーションソフトウェア２３によって実行プログラムを生成する動作を説明する。図５は、実行プログラムを生成する動作を説明するフローチャートである。
【００３６】
図５において、
ＬＤ  Ｘ０
ＯＵＴ  Ｙ１０
ＥＮＤ
というソースプログラムをマシン語に変換して実行プログラムを生成する場合、最初に、設定アプリケーションソフトウェア２３は、ＣＰＵユニット１の形名を検索キーとして固有情報データベース２５を検索し、使用する命令テーブルおよびデバイステーブルを決定する（ステップＳ１１）。図２および図３の具体例にて説明した形名が「ＴｙｐｅＱ０１」のＣＰＵユニット１の実行プログラムを生成する場合、図３の固有情報データベース２５のメインテーブルのＩＤが１の行に示されている固有情報が検索結果となり、設定アプリケーションソフトウェア２３は命令テーブル「ＴｙｐｅＱ０１」とデバイステーブル「ＴｙｐｅＱ０１」とを使用するテーブルとして選択する。
【００３７】
続いて、設定アプリケーションソフトウェア２３は、本例のプログラムに使用されている命令コマンドである「ＬＤ」、「ＯＵＴ」、および「ＥＮＤ」に対応するマシン語を、選択した命令テーブルから取得する（ステップＳ１２）。そして、設定アプリケーションソフトウェア２３は、ソースプログラム中で使用されているデバイス種別「Ｘ」および「Ｙ」に対応するマシン語を、選択したデバイステーブルから取得する（ステップＳ１３）。最後に、設定アプリケーションソフトウェア２３は、取得したマシン語を使用して実行プログラムを生成する（ステップＳ１４）。
【００３８】
このように生成された実行プログラムは、接続されたＣＰＵユニット１に記憶される固有情報１３と等しいか該固有情報１３より新しい固有情報に基づいて生成されているので、接続されたＣＰＵユニット１のユニット主要部１１によって正しく実行される。
【００３９】
ところで、設定アプリケーションソフトウェア２３は、機能毎に複数の細分化されてパッケージ化され、夫々個別のソフトウェアとして開発される場合が考えられる。この場合、固有情報データベース２５にアクセスする部分のプログラムを共通ミドルウェアとし、パッケージ化された個別の設定アプリケーションソフトウェアはこの共通ミドルウェアから各種定義情報を得るように構成するとよい。
【００４０】
図６は、該構成を説明する図である。図６において、設定アプリケーションソフトウェア２３は、夫々個別の機能を実現する第一〜第三の設定アプリケーションソフトウェア２３ａ〜２３ｃと、固有情報データベース２５にアクセスするアクセス専用プログラムである共通ミドルウェア２９とを有している。このように固有情報データベース２５にアクセスする部分を共通ミドルウェア２９として一本化すると、固有情報データベース２５が有する固有情報の状態を意識することなく第一〜第三の設定アプリケーションソフトウェア２３ａ〜２３ｃを開発できるようになる。
【００４１】
図７は、このように固有情報データベース２５にアクセスする共通ミドルウェア２９を有する場合において、設定アプリケーションソフトウェア２３を実行した例を説明する図である。図７において、新しい実行プログラムを作成するために新規プロジェクトを開始する機能の設定アプリケーションプログラムのウインドウ２３ｄにおいては、共通ミドルウェア２９に、固有情報データベース２５のメインテーブルから形名の一覧を取得させて、該一覧を表示している。また、ソースプログラムから実行プログラムを生成する機能を有する設定アプリケーションプログラムのウインドウ２３ｅは、共通ミドルウェア２９に、図示しないソースプログラムに使用されている命令およびデバイス種別を命令テーブルおよびデバイステーブルから取得させて変換する様子を図示している。このように、固有情報データベース２５にアクセスする部分を共通ミドルウェア化すると、各細分化された設定アプリケーションソフトウェアは固有情報データベース２５の状態を意識する必要がなくなる。
【００４２】
以上のように、本実施の形態によれば、ＰＬＣのＣＰＵユニットは、自身の形名およびバージョンを識別する識別情報と自身が使用する命令を定義する情報を含む固有情報とを有し、周辺装置は、接続されたＰＬＣから識別情報を参照し、予め自装置内に有する固有情報で接続されたＰＬＣに対応可能か否か判定し、対応できないと判定した場合、ＰＬＣに記憶される固有情報を取得するようにしたので、ＣＰＵユニットの形名およびバージョンに関わらず周辺装置にて設定可能なＰＬＣシステムを得ることができる。また、メーカはバージョンアップソフトウェアを記憶媒体に記憶させて配布する必要がないので、省資源化に貢献できる。また、設定アプリケーションソフトウェアはＣＰＵユニットの形名およびバージョンに依存しないようにしたので、設定アプリケーションソフトウェアは長期間変更されることなく使用可能となる。
【００４３】
なお、本実施の形態によれば、固有情報１３は上位互換性があるとして説明したが、上位互換性がなくてもかまわない。その場合、図４のステップＳ３において、取得したバージョン情報と固有情報データベース２５に記憶されている固有情報のバージョン情報とが異なるか否か判定し、異なるとき、ステップＳ３、Ｙｅｓに移行し、等しいとき、ステップＳ３、Ｎｏに移行するようにすればよい。要は、周辺装置は、接続されたＣＰＵユニットから識別情報を参照し、予め自装置内に有する固有情報で接続されたＣＰＵユニットに対応可能か否か判定し、対応できないと判定した場合、ＣＰＵユニットに記憶される固有情報を取得するようにすればよい。
【００４４】
また、以上の説明においては、ＣＰＵユニットに本実施の形態を適用する場合について説明したが、既に説明したようにインテリジェントユニットに適用してもよい。インテリジェントユニットは、自ユニットが接続されているバス、該バスに接続されているＣＰＵユニット、および周辺装置２の通信インタフェース２６を介して周辺装置２と通信を行う。インテリジェントユニットは、デバイスの種別に関する情報をＣＰＵユニットから取得して使用するので、インテリジェントユニットに本実施の形態のＰＬＣシステムを適用する場合、インテリジェントユニットは前記説明したＣＰＵユニットの固有情報に含まれるようなデバイス種別を定義する情報を削除したような固有情報を自ユニットのメモリに記憶するように構成するとよい。
【産業上の利用可能性】
【００４５】
以上のように、本発明にかかるＰＬＣシステムは、ＰＬＣユニットと、ＰＬＣユニットの設定を行う周辺装置とを備えるＰＬＣシステムに適用して好適である。
【図面の簡単な説明】
【００４６】
【図１】本発明の実施の形態にかかるＰＬＣシステムの概略的な構成を示す図である。
【図２】固有情報の具体例を説明する図である。
【図３】固有情報データベースの具体例を説明する図である。
【図４】データベース更新ソフトウェアの動作を説明するフローチャートである。
【図５】実行プログラムを生成する動作を説明するフローチャートである。
【図６】パッケージ化された個別の設定アプリケーションソフトウェアはこの共通ミドルウェアから各種定義情報を得る構成を説明する図である。
【図７】設定アプリケーションソフトウェアを実行した例を説明する図である。
【符号の説明】
【００４７】
１  ＣＰＵユニット
２  周辺装置
１１  ユニット主要部
１２  メモリ
１３  固有情報
１４  通信インタフェース
２１  周辺装置制御部
２２  メモリ
２３、２３ａ〜ｅ  設定アプリケーションソフトウェア
２４  データベース更新ソフトウェア
２５  固有情報データベース
２６  通信インタフェース
２７  表示部
２８  入力部
２９  共通ミドルウェア
１０００  ＰＬＣシステム
【図１】
0005025562.tif 000002
【図２】
0005025562.tif 000003
【図３】
0005025562.tif 000004
【図４】
0005025562.tif 000005
【図５】
0005025562.tif 000006
【図６】
0005025562.tif 000007
【図７】
0005025562.tif 000008