(57)【要約】【課題】  特定のＰＬＣが管理するデータやステータスなどの情報を、ユーザプログラムを介在させる手法のみならず、ユーザプログラムを介在させない手法によっても、他のＰＬＣなどの通信ノードに容易に送信させること。【解決手段】  ユーザプログラム実行処理には、ユーザプログラム中に所定のプログラムが存在するとき、それを実行することにより、ユーザプログラムにて指定された送信用データを送信バッファ上に生成する第１の送信用データ生成処理が含まれており、かつシステムサービス処理には、書換可能な不揮発性メモリに格納された送信用データ指定テーブルの内容に従って、指定された送信用データを送信バッファ上に生成する第２の送信用データ生成処理を含む。【選択図】    図１０
2006301886.tif 000002
【特許請求の範囲】
【請求項１】
入出力更新処理と、ユーザプログラム実行処理と、システムサービス処理とをサイクリックに実行しつつ、ユーザプログラムで規定された制御仕様を実現すると共に、送信用バッファ上に生成された送信用データを指定された送信先ノードに所定のタイミングで送信するように構成されたプログラマブル・コントローラであって、
前記プログラマブル・コントローラには、
書換可能な不揮発性メモリが設けられると共に、この不揮発性メモリには、コンフィグレータを介してユーザにより書換が可能な送信用データ指定テーブルが格納されており、さらに、
前記ユーザプログラム実行処理には、ユーザプログラム中に所定のプログラムが存在するとき、それを実行することにより、ユーザプログラムにて指定された送信用データを送信バッファ上に生成する第１の送信用データ生成処理が含まれており、かつ
前記システムサービス処理には、前記書換可能な不揮発性メモリに格納された送信用データ指定テーブルの内容にしたがって、指定された送信用データを送信バッファ上に生成する第２の送信用データ生成処理が含まれている、ことを特徴とするプログラマブル・コントローラ。
【請求項２】
送信データ指定テーブルは、送信すべきデータの送信順番と、送信すべきデータの種別とにより、各送信すべきデータを特定するものである、ことを特徴とする請求項１に記載のプログラマブル・コントローラ。
【請求項３】
送信対象としてユーザに開放されたデータの一覧を示す開放データリストを内蔵すると共に、前記第２の送信用データ生成処理は、前記送信用データ指定テーブルと前記開放データリストとを参照することにより、第２の送信用データを生成する、ことを特徴とする請求項１又は２に記載のプログラマブル・コントローラ。
【請求項４】
セーフティ仕様として実現されている、ことを特徴とする請求項１〜３のいずれかに記載のプログラマブル・コントローラ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、自己が管理するデータやステータス等の情報のうちで、ユーザにより指定された情報を、他の通信ノードに送信する機能を有するプログラマブル・コントローラ（以下、ＰＬＣと言う）に関するものである。
【背景技術】
【０００２】
自己が管理するデータやステータス等の情報のうちで、ユーザにより指定された情報を、他の通信ノードに送信する機能を有するＰＬＣは、従来より種々に知られている。この種のＰＬＣは、入出力更新処理と、ユーザプログラム実行処理と、システムサービス処理とをサイクリックに実行しつつ、ユーザプログラムで規定された制御仕様を実現すると共に、送信用バッファ上に生成された送信用データを指定された送信先ノードに所定のタイミングで送信するように構成される（例えば、特許文献１参照）。
【０００３】
送信用バッファ上に送信用データを生成するための手法としては、ユーザにより作成されるユーザプログラムに、送信用データ生成機能を組み込むのが通例である。工場内における生産機器の制御等に使用されるＰＬＣとしては、スタンダード型のもの（スタンダードＰＬＣ）とセーフティ型のもの（セーフティＰＬＣ）とが知られているが、いずれにしても、ユーザプログラムの記述のための言語としては、回路図に対応する言語が採用される。
【０００４】
すなわち、スタンダードＰＬＣのためには、所謂ラダー図（回路図）に対応するプログラム言語が採用される一方、セーフティＰＬＣ（セーフティマスタ）のためには、図１３及び図１４に示されるように、所謂ファンクションブロック（回路図）に対応するプログラム言語が採用される。
【０００５】
なお、図１３に示されるセーフティＰＬＣのユーザプログラムは、基本的には、入力タグ（ＴＡＧ−ＩＮ）と、ファンクションブロック（ＦＢ）と、出力タグ（ＴＡＧ−ＯＵＴ）とを含んで構成される。図１４に示されるように、入力タグ（ＴＡＧ−ＩＮ）及び出力タグ（ＴＡＧ−ＯＵＴ）は、ノードアドレスａと、ビットアドレスｂと、登録したＩ／Ｏコメントｃとを含んでいる。
【特許文献１】特開２００３−２９５９１３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、このような従来のＰＬＣにあっては、作成されたユーザプログラムをユーザプログラム実行手段が解読実行することで、初めて、送信バッファ上に送信用データが生成されるものであるため、ラダー図やファンクションブロックに関する知識の乏しい一般の技術者にとっては、些か使い勝手が悪く、特定のＰＬＣが管理するデータやステータス等の情報を、他のＰＬＣ等の通信ノードに取り込ませることは、必ずしも容易なことではなかった。
【０００７】
この発明は、上述の問題点に着目してなされたものであり、その目的とするところは、特定のＰＬＣが管理するデータやステータス等の情報を、ユーザプログラムを介在させる手法のみならず、ユーザプログラムを介在させない手法によっても、他のＰＬＣ等の通信ノードに容易に送信させることができるプログラマブル・コントローラを提供することにある。
【０００８】
この発明のさらに他の目的並びに作用効果については、明細書の以下の記述を参照する殊により、当業者であれば容易に理解されるであろう。
【課題を解決するための手段】
【０００９】
この発明のプログラマブル・コントローラは、入出力更新処理と、ユーザプログラム実行処理と、システムサービス処理とをサイクリックに実行しつつ、ユーザプログラムで規定された制御仕様を実現すると共に、送信用バッファ上に生成された送信用データを指定された送信先ノードに所定のタイミングで送信するように構成されている。
【００１０】
このプログラマブル・コントローラには、書換可能な不揮発性メモリが設けられると共に、この不揮発性メモリには、コンフィグレータを介してユーザにより書換が可能な送信用データ指定テーブルが格納されている。
【００１１】
さらに、前記ユーザプログラム実行処理には、ユーザプログラム中に所定のプログラムが存在するとき、それを実行することにより、ユーザプログラムにて指定された送信用データを送信バッファ上に生成する第１の送信用データ生成処理が含まれている。
【００１２】
また、前記システムサービス処理には、前記書換可能な不揮発メモリに格納された送信用データ指定テーブルの内容に従って、指定された送信用データを送信バッファ上に生成する第２の送信用データ生成処理が含まれている。
【００１３】
このような構成によれば、従前同様に、ユーザプログラム中に所定のプログラムを組み込んでおけば、第１の送信用データ生成処理がそれを実行することにより、ユーザプログラムにて指定された送信用データを送信バッファ上に生成することができる。
【００１４】
一方、不揮発性メモリ上の送信用データ指定テーブルをコンフィグレータを介して適切に記述しておけば、第２の送信用データ生成処理が送信用データ指定テーブルの内容に従って、指定された送信用データを送信バッファ上に生成する。そのため、本発明によれば、特定のＰＬＣが管理するデータやステータスなどの情報を、ユーザプログラムを介在させる手法のみならず、ユーザプログラムを介在させない手法によっても、他のＰＬＣなどの通信ノードに容易に送信させることができる。そのため、ラダー図やファンクションブロックに関する知識に詳しい技術者にあっては、従前通りにユーザプログラムを介在させる手法によって所望の送信用データを送信バッファ上に生成することができる一方、それらの知識に乏しい一般の技術者にあっては、コンフィグレータを用いて送信用データ指定テーブルの内容を直接書き換える手法を介して、所望の送信用データを送信バッファ上に生成させ、ユーザプログラムを全く介在させることなく、特定のＰＬＣが管理するデータやステータスなどの情報を、他のＰＬＣなどの通信ノードに容易に取り込ませることができる。
【００１５】
本発明の好ましい実施の形態においては、送信データ指定テーブルは、送信すべきデータの送信順番と、送信すべきデータの種別とにより、各送信すべきデータを特定するようにしてもよい。
【００１６】
このような構成によれば、送信順番と種別とを指定するだけで、任意の送信用データを所望の順番で、送信させることができる。
【００１７】
この発明の好ましい実施の形態においては、送信対象としてユーザに開放されたデータの一覧を示す開放データリストを内蔵すると共に、前記第２の送信用データ生成処理は、前記送信用データ指定テーブルと前記開放データリストとを参照することにより、送信用データを生成するようにしてもよい。
【００１８】
このような構成によれば、対象となる特定ＰＬＣの側で、ユーザに開放したデータリストの範囲内においてのみ、ユーザに対して自由に外部へのデータ送信を許すことができる。
【００１９】
本発明のプログラマブル・コントローラは、セーフティ仕様として実現するようにしてもよい。昨今、工場内の生産機器などにおいては、スタンダードＰＬＣとセーフティＰＬＣとを混在させる一方、セーフティＰＬＣの下には多数のスレーブユニットを接続して、階層構造を形成する例が増加しているが、このような場合、それらのシステム全体を、スタンダードＰＬＣにおいて統括管理したいという要望がある。このようなときに、スタンダードＰＬＣから末端のセーフティスレーブをアクセスすることは安全管理の点から好ましくなく、そのような場合、セーフティスレーブの上位に存在するセーフティＰＬＣの側から、セーフティ制御システム全体の管理データを取得することが好ましく、このような場合に、セーフティＰＬＣからスタンダードＰＬＣへのデータやステータスの送信に、本発明は特に好適なものである。
【発明の効果】
【００２０】
本発明によれば、特定のＰＬＣが管理するデータやステータス等の情報を、ユーザプログラムを介在させる手法のみならず、ユーザプログラムを介在させない手法によっても、他のＰＬＣ等の通信ノードに容易に送信させることができるという利点がある。
【発明を実施するための最良の形態】
【００２１】
以下に、本発明に係るＰＬＣを安全仕様のＰＬＣとして実現した例を、図１以下の図面を参照しながら詳細に説明する。
【００２２】
本発明が適用されたセーフティ／スタンダード混在システムの構成図が図１に示されている。同図に示されるように、このセーフティ／スタンダード混在システムは、１台のセーフティＰＬＣ（セーフティマスタ）１と、２台のセーフティスレーブ２，２と、１台のスタンダードＰＬＣ３とをネットワーク４を介して結んで構成されている。なお、図において符号５はパソコンで構成されたコンフィグレータである。
【００２３】
後に詳細に説明するように、コンフィグレータ５は、セーフティＰＬＣ１内の不揮発性メモリ１０１に格納された送信用データ指定テーブルを書換えするためなどに利用される。
【００２４】
セーフティＰＬＣはいわゆる安全仕様に設定されたＰＬＣであって、通常のスタンダードＰＬＣの機能に加え、入出力に関する高度の自己診断機能を備え、何らかの異常が発生した場合、常に入出力を安全側に切り替える機能を備えている。なお、このようなセーフティＰＬＣの機能に関しては、本出願人より提案された特開２００４−２９７９９７号公報などに詳しい。
【００２５】
セーフティスレーブ２は、セーフティ入力スレーブ、セーフティ出力スレーブ、セーフティ入出力スレーブなどが含まれており、いずれもセーフティＰＬＣ１との間でサイクリックに通信を行うことにより、セーフティスレーブ２から吸い上げられた入力データをセーフティＰＬＣ１で制御に利用したり、セーフティＰＬＣ１から出力される出力データを、セーフティスレーブ２を介して外部へと出力するなどの制御を実現する。なお、セーフティスレーブ２についても、常に自己診断を行い、何らかの異常が発見されれば、常に安全側へと制御を切り換えるようになされている。
【００２６】
スタンダードＰＬＣ３は、当業者にはよく知られたものであって、この例では、ＣＰＵユニットと、Ｉ／Ｏユニットと、各種高機能ユニットなどを備えたビルディング・ブロックタイプのものが示されている。
【００２７】
次に、セーフティマスタの電気的ハードウェア構成を概略的に示すブロック図が図２に示されている。同図に示されるように、セーフティマスタ１内には、ＣＰＵ部１００と、不揮発性メモリ１０１と、内部メモリ１０２と、通信部１０３とが含まれている。
【００２８】
ＣＰＵ部１００は、マイクロプロセッサ、ＲＯＭ、ＲＡＭなどを主体として構成されており、セーフティＰＬＣ全体を統括管理する。
【００２９】
不揮発性メモリ１０１内には、後に詳細に説明する送信用データ指定テーブルが格納されている。この送信用データ指定テーブルの内容は、コンフィグレータ５を介して適宜書換えが可能となされている。
【００３０】
内部メモリ１０２は、ＣＰＵ部１００と通信部１０２との間を中継するものであって、その内部には本発明に係る送信用バッファが格納される。この送信用バッファには、後述する第１の送信用データ生成処理または第２の送信用データ生成処理にて生成された送信用データが格納される。
【００３１】
通信部１０２は送受信回路で構成され、内部メモリ１０２内の送信用バッファに格納された送信用データを、この例にあっては、スタンダードＰＬＣ３に宛てて送信すると共に、他のノード（例えば、セーフティスレーブ２、スタンダードＰＬＣ３など）からの送信データを受信して、これを内部メモリ１０２内の受信バッファに格納する。こうして内部メモリ１０２内の受信バッファに格納された受信用データは、適当なタイミングでＣＰＵ部１００から読み出され、ユーザプログラムの実行に利用される。また、内部メモリ内の送信用バッファに格納された送信用データも、適当なタイミングで、通信部１０３から読み出され、この例にあっては、スタンダードＰＬＣ３へと宛ててネットワーク４上に送信される。
【００３２】
次に、セーフティマスタが実行する制御処理の全体を概略的に示すゼネラルフローチャートが図３に示されている。同図において、電源投入により処理が開始されると、ステップ３０１においては、内部ＲＡＭの初期化並びに各種初期設定が行われる。続くステップ３０２においては、電源投入時の診断処理が行われる。この診断処理においては、セーフティＰＬＣの入力部並びに出力部に異常の有無が診断され、異常の場合には、所定の安全化処理が行われる。
【００３３】
続くステップ３０３においては、設定モード突入のコマンドの有無を判定する。ここで、設定モード突入のコマンドが存在しなければ（ステップ３０３ＮＯ）、通常モード（ステップ３０４）への移行が行われるのに対し、判定処理（ステップ３０３）において、設定モード突入のコマンドありと判定されれば（ステップ３０３ＹＥＳ）、設定モードへの移行が行われる（ステップ３０５）。
【００３４】
設定モードにて実行される制御プログラムの全体を示すフローチャートが図４に示されている。同図において処理が開始されると、コマンドの有無を待機する状態となる。この状態において、何らかのコマンドが受信されると（ステップ４０１ＹＥＳ）、コマンドの解析処理並びに不揮発性メモリ１０１であるＥＥＰＲＯＭへの書込処理が行われる（ステップ４０２）。続くステップ４０３においては、受信されたコマンドに対するレスポンス処理が行われる。一方、何らかのコマンドが受信されない場合には（ステップ４０１ＮＯ）、それらのステップ４０２，４０３はスキップされ、受信待機状態が維持される。
【００３５】
コマンド解析／ＥＥＰＲＯＭ書込処理の詳細を示すフローチャートが図５に示されている。同図において処理が開始されると、まず、ステップ５０１においては、受信データの読出を行う。続くステップ５０２においては、コマンドの種別が、ＥＥＰＲＯＭ書込命令であるか、その他の命令であるかの判定が行われる。ここでその他の命令であればその他の処理へ移行するのに対し、読み出されたコマンドがＥＥＰＲＯＭ書込命令であれば、続くステップ５０３において、受信データはＥＥＰＲＯＭへと書き込まれる。この書込処理（ステップ５０３）において、後述する送信用データ指定テーブルの書換、書込などが可能となる。
【００３６】
一方、通常モードにて実行される制御プログラムの全体を示すフローチャートが図６に示されている。同図において処理が開始されると、まずエラーの有無が判定され（ステップ６０１）、エラーありとされた場合には（ステップ６０１ＹＥＳ）、ロックアウトされる。
【００３７】
これに対して、エラーなしとされる場合には（ステップ６０１ＮＯ）、まず、ステップ６０２において、入力リフレッシュ処理が実行される。この入力リフレッシュ処理においては、装置内部のメモリに格納された入力データが、外部から取り込まれた入力データによって更新される。このとき、セーフティ仕様のＰＬＣの場合、入力診断処理が行われ、いずれかの入力端子に関して異常が判定されれば、所定の安全化処理が実行されて、当該入力端子から取り込まれた入力データの値は安全側に切り換えられる。
【００３８】
続くステップ６０３においては、ユーザプログラム実行処理が行われる。先に、図１３及び図１４を参照して説明したように、この種のセーフティＰＬＣにおいては、入力タグ（ＴＡＧ−ＩＮ）、ファンクションブロック（ＦＢ）、出力タグ（ＴＡＧ−ＯＵＴ）に対応するユーザプログラム言語を用いてユーザプログラムが作成記憶されており、このユーザプログラム実行処理においては、こうして得られたユーザプログラムを一定の順序で入出力データを参照しつつ実行することにより、出力データの内容を確定する。なお、このユーザプログラム実行処理には、第１の送信用データ生成処理が含まれている。
【００３９】
よく知られているように、この第１の送信用データ生成処理においては、ユーザプログラム中に所定のプログラムが存在するとき、それを実行することにより、ユーザプログラムにて指定された送信用データを送信バッファ上に生成する機能を実現する。この第１の送信用データ生成処理が存在することによって、ユーザはユーザプログラム中に所定のプログラムを記述することによって、内部メモリ１０２内の送信用バッファに送信用データを生成させることができる。こうして、内部メモリ１０２内の送信用バッファに格納された送信データは、タイマなどで規定される所定のタイミングで、通信部１０３から読み出され、ネットワーク４上に送信される。
【００４０】
続くステップ６０４においては、出力リフレッシュ処理が実行され、ユーザプログラム実行処理（ステップ６０３）において生成された出力データは、この出力リフレッシュ処理６０４において、図示しない外部出力端子へと送り出される。なお、この出力リフレッシュ処理（ステップ６０４）においても、セーフティＰＬＣである以上、出力診断処理が実行され、何らかの異常が発生した出力に関しては、制御から切り離すなどの処置が行われる。
【００４１】
続くステップ６０５においては、システムサービス処理が実行される。このシステムサービス処理（ステップ６０５）には、本発明の要部であるところの、第２の送信用データ生成処理が含まれている。
【００４２】
送信用データ指定テーブルの一例を示す構成図が図８に、開放データリストの一例を示す構成図が図９にそれぞれ示されている。
【００４３】
図８を参照して明らかなように、送信用データ指定テーブルには、「メンバー番号」、「データ種別」、「データサイズ」、「データ名称（文字列）」からなる４つの項目が含まれている。「メンバー番号」は送信されるべきデータの送信順番を示している。「データ種別」は送信すべきデータの種別を表している。「データサイズ」は送信されるべきデータのサイズを示している。「データ名称（文字列）」は送信されるべきデータの文字列を表している。
【００４４】
すなわち、図８の例であれば、第１番目に、データ種別「４」で指定されるデータを、データサイズ「１」分だけ送信する。第２番目には、データ種別「２」で指定されるデータを、データサイズ「２」で指定されるサイズだけ送信する。第３番目には、データ種別「１１」で指定されるデータを、データサイズ「１」で指定されるサイズ分だけ送信する。なお、この実施形態では、送信用データ指定テーブルに「データサイズ」が含んでいるが、データ種別毎のデータサイズが予め一義に決まっている場合には、データ種別を指定するだけでデータサイズを指定しなくても済むので、送信用データ指定テーブルから「データサイズ」を省略することができる。
【００４５】
次に、開放データリストの一例を示す構成図が図９に示されている。この開放データリストは、この例にあっては、不揮発性メモリ１０１に格納されている。但し、この不揮発性メモリ１０１に格納された開放データリストは、ユーザからは書換えができないように構成されている。
【００４６】
この開放データリストに格納された１４種のデータは、このセーフティＰＬＣ１がユーザに対して外部への送信を許可したものである。すなわち、このセーフティＰＬＣ１にあっては、この開放データリストに掲げられた１４種のデータに関して、ネットワーク上の他のノードへの送信を許容している。そして、後に詳細に説明するように、何らかの送信用データ指定テーブルが作成されたならば、第２の送信用データ生成処理にあっては、送信用データ指定テーブルに格納されたデータ種別をこの開放データリストを参照して実データにアクセスすることにより、送信用バッファ上に該当するデータを指定されたデータサイズ分だけコピーすることによって、送信用バッファ上に送信用データを生成するのである。
【００４７】
次に、第２の送信用データ生成処理を示すフローチャートが図７に示されている。同図において処理が開始されると、まずステップ７０１においては、メンバー番号Ｎ及びオフセットアドレスＡの初期設定（Ｎ＝１，Ａ＝０）が行われる。
【００４８】
続くステップ７０２においては、メンバー番号Ｎの値をメンバーの最終番号と大小比較することにより、送信用データ指定テーブルの最終データまで処理を行ったかの判定を行う。ここでメンバー番号の最終まで到達していなければ（ステップ７０２ＮＯ）、ステップ７０３へ移行して、オフセットアドレスＡにメンバー番号Ｎのデータを指定サイズ分だけコピーする処理を実行する。
【００４９】
続くステップ７０４においては、メンバー番号Ｎを＋１更新すると共に、オフセットアドレスＡについてもデータサイズ分だけ更新を行う。
【００５０】
以後、以上の動作（ステップ７０３，７０４）を、メンバー番号Ｎがメンバーの最終に至るまで繰り返し実行する。そして、メンバー番号Ｎがメンバーの最終まで達したならば（ステップ７０２ＹＥＳ）、データ更新を完了して（ステップ７０５）、処理を終了する。
【００５１】
図７に示される処理が実行された結果、送信用データ指定テーブルから送信用データが生成されるまでの送信用データ生成処理の作用説明図が図１０に示されている。
【００５２】
同図に示されるように、セーフティＰＬＣ１内の所定記憶エリアには、ステータスデータ分（ステータスＡ，ステータスＢ，ステータスＣ）、情報群（情報Ａ，情報Ｂ）、データ群（データＡ，データＢ，データＣ，データＤ）がそれぞれ所定の順番で格納されている。
【００５３】
これに対して、図３に示される第２の送信用データ生成処理が実行されると、図中右側に示されるように、送信用データの内容は、ステータスＣ、ステータスＡ、ステータスＢ、ステータスＤを順番に並べた状態に変換される。このとき、コピー方法はコンフィグレーションにて決定される。
【００５４】
しかる後、送信用データ（ステータスＣ、ステータスＡ、情報Ｂ、データＤ）は、送信部１０３の作用によって、ネットワーク４上へと送信される。
【００５５】
次に、より具体的な例を挙げて、原データから送信用データを生成する過程を、図１１及び図１２を参照しながら説明する。いま仮に、送信用データ指定テーブルの内容が図１１に示されるものであると仮定する。
【００５６】
すると、まず、書込アドレスはＡ1＝０とされ、メンバー番号Ｎ＝１のデータが２バイト分だけコピーされる［１」。続いて、オフセットは＋２だけ更新される［２］。続いて、書込アドレスはＡ2＝２とされ、メンバー番号Ｎ＝２のデータが１バイト分だけコピーされる［３］。続いて、オフセットは＋１だけ更新される［４］。続いて、書込アドレスはＡ3＝３とされ、メンバー番号Ｎ＝３のデータが２バイト分だけコピーされる［５］。続いて、オフセットアドレスは＋２だけ更新される［６］。続いて、書込アドレスはＡ4＝５とされ、メンバー番号Ｎ＝４のデータが２バイト分だけコピーされる［７］。以上により、図１１に示される送信用データ指定テーブルに従って、送信バッファ上には、該当するデータが順に並べられて、送信用データが完成する。
【００５７】
以後、こうして得られた送信バッファ上の送信用データは、通信部１０３の作用によって、ネットワーク４上に送出される。
【００５８】
なお、送出のタイミングについては、予めタイマによりサイクリックに設定しておいてもよいし、イベント的に送信するものであってもよいし、さらには、何らかの論理条件の成立に基づいて、送信されるようにしてもよい。いずれにしても、この図７に示される第２の送信用データ生成処理を有することから、ユーザは、回路図に由来する複雑なプログラム言語を用いて、送信用データ生成処理をユーザプログラムに組み込まなくても、単に図１１に示されるように、メンバー番号、データ種別、データサイズ、データ名称（文字列）の４種類の情報を指定するだけで、図１０に示されるように、必要なデータを必要な順番で組み合わせた送信用データを生成することができ、これを別途指定された送信先へと所望のタイミングで送出させることができるのである。
【００５９】
そのため、この実施例のセーフティＰＬＣ１によれば、それに接続されたセーフティスレーブ２，２との間でＩ／Ｏ通信を適宜行いつつ、必要なタイミングの到来と共に、セーフティＰＬＣ１内に設定された送信用データ指定テーブルに従って、該当する一連のデータを、セーフティＰＬＣ１からスタンダードＰＬＣ３へと送信させることができる。特に、セーフティＰＬＣ１からスタンダードＰＬＣ３に対するデータ送信を可能とするためには、複雑なプログラム言語を使用する必要がないため、従前の方式に比べ、セーフティＰＬＣの使い勝手が著しく向上する。しかも、この方法によれば、セーフティＰＬＣとセーフティスレーブ２とはセーフティシステムを構成する一方、スタンダードＰＬＣはさらにその上位に位置して、システム全体の情報を適宜収集することができるため、この種のセーフティ／スタンダード混在システムにおける信頼性を向上させることができる。
【００６０】
なお、以上説明した実施の形態においては、本発明をセーフティＰＬＣとして実現させたが、本発明の適用はこれに限られるものではなく、スタンダードＰＬＣに適用してもよいことは勿論である。
【産業上の利用可能性】
【００６１】
本発明によれば、特定のＰＬＣが管理するデータやステータスなどの情報を、ユーザプログラムを介在させる手法のみならず、ユーザプログラムを介在させない手法によっても、他のＰＬＣなどの通信ノードに容易に送信させることができる利点がある。
【図面の簡単な説明】
【００６２】
【図１】本発明が適用されたセーフティ／スタンダード混在システムの構成図である。
【図２】セーフティマスタの電気的ハードウェア構成を概略的に示すブロック図である。
【図３】セーフティマスタが実行する制御処理の全体を概略的に示すゼネラルフローチャートである。
【図４】設定モードにて実行される制御プログラムの全体を示すフローチャートである。
【図５】コマンド／ＥＥＰＲＯＭ書込処理の詳細を示すフローチャートである。
【図６】通常モードにて実行される制御プログラムの全体を示すフローチャートである。
【図７】第２の送信用データ生成処理を示すフローチャートである。
【図８】送信用データ指定テーブルの一例を示す構成図である。
【図９】開放データリストの一例を示す構成図である。
【図１０】第２の送信用データ生成処理の作用説明図である。
【図１１】送信用データ指定テーブルの作成例を示す図である。
【図１２】図１のテーブルに従って、送信用データを生成する手順を示す説明図である。
【図１３】セーフティＰＬＣのユーザプログラムの回路図表記の例を示す図である。
【図１４】入力及び出力タグの説明図である。
【符号の説明】
【００６３】
１    セーフティＰＬＣ（セーフティマスタ）
２    セーフティスレーブ
３    スタンダードＰＬＣ
４    ネットワーク
５    コンフィグレータ
１００  ＣＰＵ部
１０１  不揮発性メモリ
１０２  内部メモリ
１０３  通信部
【図１】
2006301886.tif 000003
【図２】
2006301886.tif 000004
【図３】
2006301886.tif 000005
【図４】
2006301886.tif 000006
【図５】
2006301886.tif 000007
【図６】
2006301886.tif 000008
【図７】
2006301886.tif 000009
【図８】
2006301886.tif 000010
【図９】
2006301886.tif 000011
【図１０】
2006301886.tif 000012
【図１１】
2006301886.tif 000013
【図１２】
2006301886.tif 000014
【図１３】
2006301886.tif 000015
【図１４】
2006301886.tif 000016