JP2008152532A - Plc分散制御システム - Google Patents

Plc分散制御システム Download PDF

Info

Publication number
JP2008152532A
JP2008152532A JP2006339822A JP2006339822A JP2008152532A JP 2008152532 A JP2008152532 A JP 2008152532A JP 2006339822 A JP2006339822 A JP 2006339822A JP 2006339822 A JP2006339822 A JP 2006339822A JP 2008152532 A JP2008152532 A JP 2008152532A
Authority
JP
Japan
Prior art keywords
plc
output
station number
control system
schedule definition
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2006339822A
Other languages
English (en)
Other versions
JP4952228B2 (ja
Inventor
Tsutomu Araki
力 荒木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
JTEKT Corp
Original Assignee
JTEKT Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by JTEKT Corp filed Critical JTEKT Corp
Priority to JP2006339822A priority Critical patent/JP4952228B2/ja
Priority to US12/519,881 priority patent/US8321037B2/en
Priority to PCT/JP2007/074164 priority patent/WO2008075631A1/ja
Priority to EP07859838.0A priority patent/EP2098927B1/en
Publication of JP2008152532A publication Critical patent/JP2008152532A/ja
Application granted granted Critical
Publication of JP4952228B2 publication Critical patent/JP4952228B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • G05B19/058Safety, monitoring
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/10Plc systems
    • G05B2219/12Plc mp multi processor system
    • G05B2219/1204Multiprocessing, several plc's, distributed logic control
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/10Plc systems
    • G05B2219/15Plc structure of the system
    • G05B2219/15026Detection of data transmission faults

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Programmable Controllers (AREA)

Abstract

【課題】既存プログラムの再利用性を効果的に向上させるとともに、各PLCが出力する個々の出力変数の識別を、該システムのSEや運用管理者に対して容易にすること。
【解決手段】 表示フィールドw5に表示されている局番は、このパソコンが接続されているPLCの局番と一致している。また、表示フィールドw1には各出力変数のビットアドレスが表示されている。例えば、出力変数の番地が00L1Eで、その送信先のPLC局番が2であるチェックボックスに対応する対応ビットは、第1の記憶手段TBL1上に格納される出力予定定義フレームRF02中の出力予定定義ビットRb1Eであるので、この出力予定定義ビットRb1Eの値は0(:出力予定無し)と定義される。OKボタンw4をクリックすると、正しく定義された各出力予定定義フレームが、PLC10に転送されて、第1の記憶手段TBL1上にそれぞれ格納される。
【選択図】図4

Description

本発明は、通信手段を有するPLC(プログラマブルコントローラ)を複数台接続することによって構成されるPLC分散制御システムに関する。本発明は、例えば、国際安全規格に準拠する安全システム等を構築する際などに特に有用である。
所定の安全規格に準拠する安全システムを構成するために、記憶手段や演算処理部などを多重化したPLC分散制御システムに関する従来技術としては、例えば下記の特許文献1に記載されている安全コントローラなどが公知である。また、複数の機械設備を同時に並列制御するファクトリーオートメーションにおいては、各機械設備を制御する個々のPLCを相互に接続して、分散制御システムを構成することがある。そして、近年、この様な分散制御システムにおいては、各PLC間の通信回線などをも更に多重並列化することによって、各PLC間の通信処理に関する信頼性をも十分に確保すべきとする安全指向の要請が強くなりつつある。
また、この様な分散制御システムにおける安全通信を実現するための、通信制御に係わる信頼性が十分に高いインターロック機構を容易かつ効率よく構成したいと言うニーズが高まりつつあり、また、分散制御システム内における安全処理シーケンスを分かり易く表した表現形式によって、当該システムを効率的に運用管理したいと言うニーズも、近年ますます高まりつつある。
特開2002−358106号公報
しかしながら、上記の様な信頼性の高い安全通信を実現するには、システムの実稼働前に、各PLC上の各ラダーダイアグラムの実行によって発生する個々の通信が、各通信回線を介してそれぞれ正しく行なわれるか否かを予め各回線毎に全てテストしておく必要が生じる。このため、システム生成時やラダーダイアグラム(シーケンスプログラム)の入れ換え時などに、当該システムの運用効率が、著しく低下すると言う問題が発生する。
また、安全システムに限定されない一般のPLC分散制御システムにおいても、同一または類似のロジック(アルゴリズム)を有するラダーダイアグラムを相異なる複数台のPLC上において同時に並列に動作させたいと言うケースがある。この様な場合に、各PLCにおいては、それらのロジックを同様に具現する既存プログラムをそれぞれ同様に適用すること(即ち、既存プログラムの再利用)によって、オブジェクトプログラムの生産性が大幅に向上する。しかし、それと同時に、この様な場合には、ネットワークを構成する当該分散制御システムのシステム構成が複雑となるため、それらの各PLCの各出力変数を論理的に識別し易く体系化し直して、各出力変数をそれぞれ分かり易く見易い形式でラダー図上などに表示したいと言う、新たな運用管理上のニーズが発生する。
本発明は、上記の課題を解決するために成されたものであり、その目的は、PLC分散制御システムにおいて、信頼性の高い安全通信を実現するとともに、通信回線のテストなどに係わる運用効率を効果的に向上させることである。
また、本発明のその他の目的は、PLC分散制御システムにおいて、既存プログラムの再利用性を効果的に向上させるとともに、該PLC分散制御システムを構成する各PLCが出力する個々の出力変数の識別を、該システムのSEや運用管理者に対して容易にすることである。
上記の課題を解決するためには、以下の手段が有効である。
即ち、本発明の第1の手段は、通信手段を有するPLCを複数台接続することによって構成されるブロードキャスト型又はマルチキャスト型のPLC分散制御システムにおいて、上記の各PLCに、自PLC上において実行されるラダーダイアグラム中の出力コイルを模擬する各出力変数の他のPLCに対する出力予定の有無をその各出力変数毎に定義する出力予定定義情報からなる出力予定定義フレームを他の各PLC対応にそれぞれ記憶する第1の記憶手段と、他のPLC上において実行されるラダーダイアグラム中の出力コイルを模擬する各出力変数に対する参照予定の有無をその各出力変数毎に定義する参照予定定義情報からなる参照予定定義フレームを他の各PLC対応にそれぞれ記憶する第2の記憶手段と、上記の出力予定定義フレームまたは参照予定定義フレームを他の各PLCに送信する送信手段と、上記の出力予定定義フレームまたは参照予定定義フレームを他の各PLCから受信する受信手段と、それらの出力予定定義フレームと参照予定定義フレームとを各対応フレーム毎にそれぞれ照合する照合手段と、この照合手段による照合結果に基づいて当該PLC分散制御システムにおける通常通信の開始の是非を判定する通常通信開始判定手段とを備えることである。
ただし、上記の各PLCには、各処理が二重化された安全PLCを用いることが望ましい。また、上記のラダーダイアグラムを記述するためのプログラミング言語は、特に限定されず、グラフィック形言語を用いてもテキスト形言語をもちいてもよい。また、1つの出力変数に対する上記の出力予定定義情報や上記の参照予定定義情報は、何れも1ビット情報として取り扱うことが望ましく、この場合には、上記の各定義フレームは、それらのビット列データで構成される。
また、これらの各手段は、システムの構成時、起動時、または再起動時に、動作させることが望ましいが、更に、定期的に動作させてもよい。
また、ブロードキャスト型又はマルチキャスト型の通信を実現するために各PLCを繋げる通信配線は、必ずしも二重化しなくてもよい。また、例えばパケットの二重化などによって、少なくとも、論理的に通信回線を二重化することによって、本発明に基づいて、所望の安全通信を実現することができる。
また、物理的な通信配線は、リング形かバス形に構成することが望ましく、更には、二重化しておくことがより望ましい。
また、本発明の第2の手段は、上記の第1の手段において、送信すべき目的の送信データに自PLCの局番を付与する局番付与手段を上記の送信手段に設け、更に、上記の出力予定定義情報の入力を受け付ける定義情報入力手段と、この定義情報入力手段によって入力された入力情報に基づいて上記の出力予定定義フレームを上記の第1の記憶手段上にそれぞれ生成する第1のフレーム生成手段とを各PLCに設けることである。
ただし、上記の本発明の第2の手段の代わりに、以下の本発明の第3の手段と略同様の手段によって、ラダーダイアグラムのソースプログラム中から抽出された抽出情報に基づいて、上記の出力予定定義フレームを上記の第1の記憶手段上にそれぞれ生成する様にしてもよく、かつ、その様な手段を備えたPLCを用いて、本発明のPLC分散制御システムを構成してもよい。
次に、本発明の第3の手段は、上記の第1又は第2の手段の各PLCにおいて、自PLC上において実行されるラダーダイアグラムのソースプログラム中から、上記の参照予定定義情報を抽出する定義情報抽出手段と、この定義情報抽出手段によって抽出された抽出情報に基づいて、上記の参照予定定義フレームを上記の第2の記憶手段上にそれぞれ生成する第2のフレーム生成手段とを備えることである。
ただし、上記の定義情報抽出手段は、上記のソースプログラムをコンパイルするコンパイラの例えば拡張機能などとして構成してもよいし、コンパイラとは独立のツール(コード解析プログラム)によって実現してもよい。
また、本発明の第4の手段は、通信手段を有するPLCを複数台接続することによって構成されるPLC分散制御システムにおいて、送信すべき目的の送信データに自PLCの局番を付与して他の各前記PLCに送信する送信手段を設け、更に、上記の各PLCに、自PLC上で実行されるラダーダイアグラムの動作内容を所定の画面上または紙面上に表示するダイアグラム編集表示手段を設け、このダイアグラム編集表示手段に、当該PLC分散制御システムにおける自PLCの局番を取得する局番取得手段と、上記のラダーダイアグラムを具現するオブジェクトプログラム上において出力コイルを模擬する各出力変数のアドレスコードを、取得された上記の局番を含む形式の論理的なアドレスコードに書き換える表示アドレスコード編集手段とを備えることである。
ただし、本発明の第4の手段における上記のPLCは、各種の二重化などによって安全処理が図られた安全PLCに限定されるものではない。
また、上記のラダーダイアグラムを記述するためのプログラミング言語は、特に限定されず、グラフィック形言語を用いてもテキスト形言語をもちいてもよい。また、ダイアグラム編集表示手段の出力結果に関する編集表示形態についても同様の任意性を有する。また、上記の局番取得手段は、所定のユーザーインターフェイスを介して、ユーザーに局番を直接入力させる手段でもよいし、例えば診断命令などの問い合わせコマンド等を用いて、自動的に取得する様に構成してもよい。
なお、上記の局番を含む形式の論理アドレスコードが、SEや運用管理者に対して認識(目視)させるための運用管理上のアドレスコードとなる。
また、本発明の第5の手段は、上記の第1乃至第3の何れか1つの手段において、送信すべき目的の送信データに前記自PLCの局番を付与する局番付与手段を上記の送信手段に設け、更に、上記の各PLCに、自PLC上で実行されるラダーダイアグラムの動作内容を所定の画面上または紙面上に表示するダイアグラム編集表示手段を設け、このダイアグラム編集表示手段に、当該PLC分散制御システムにおける自PLCの局番を取得する局番取得手段と、上記のラダーダイアグラムを具現するオブジェクトプログラム上において出力コイルを模擬する各出力変数のアドレスコードを、取得された上記の局番を含む形式の論理的なアドレスコードに書き換える表示アドレスコード編集手段とを備えることである。
ただし、上記のラダーダイアグラムを記述するためのプログラミング言語は、特に限定されず、グラフィック形言語を用いてもテキスト形言語をもちいてもよい。また、ダイアグラム編集表示手段の出力結果に関する編集表示形態についても同様の任意性を有する。また、上記の局番取得手段は、所定のユーザーインターフェイスを介して、ユーザーに局番を直接入力させる手段でもよいし、例えば診断命令などの問い合わせコマンド等を用いて、自動的に取得する様に構成してもよい。
なお、上記の局番を含む形式の論理アドレスコードが、SEや運用管理者に対して認識(目視)させるための運用管理上のアドレスコードとなる。
以上の本発明の手段により、前記の課題を効果的、或いは合理的に解決することができる。
以上の本発明の手段によって得られる効果は以下の通りである。
即ち、本発明の第1の手段によれば、上記の定義フレーム(即ち、出力予定定義フレームまたは参照予定定義フレーム)は各PLC間の各通信回線においてそれぞれ双方向にて送受信され、上記の照合処理は各PLCにおいてそれぞれ実施されるので、これによって、各PLC間における少なくとも論理的な各通信回線の状態を全回線にわたって双方向に自動的にそれぞれテストすることができる。また、これによって、各相手局の送受信状態がそれぞれ正常であるか否かについても同時にテストされる。
更に、この照合処理では、各PLC間における個々の出力変数について、各対応フレーム毎に入力条件と出力条件とが一致することがチェックされる。このため、各PLC間で入出力すべき各出力変数の送受信が、それぞれ正しく実行される状態にあるか否かを、送受信されるべき各出力変数について、全て漏れなく自動的に判定することができる。
また、上記と同様の通信方式に基づいて、即ち、上記の出力予定定義フレームと同一形式の送信データフレームを、各PLC間においてそれぞれ送受信する通信方式を採用することによって、通常通信実行時においても勿論、同様のブロードキャスト型又はマルチキャスト型の通信を安全に実施することができる。
したがって、本発明の第1の手段によれば、マスタースレーブ方式を採用する従来の分散制御システムにおけるマスターPLCの様な、子局間の通信に関する中継機能を奏する中継局(マスター局)を設置することなく、安全通信を容易に実現することができる。このため、少なくとも通信制御処理に関しては、メモリーオーバーヘッドやCPUオーバーヘッドが大きくプログラム構成が複雑となるマスターPLCを設ける必要がなくなる。或いは、ある特定のPLCに何らかのマスター機能を付与したとしても、この第1の手段の構成に従えば、ブロードキャスト型又はマルチキャスト型の通信方式により、通信系におけるシステムトポロジー(ネットワーク構造)の対称性は高く維持できるので、そのPLCの通信制御処理オーバーヘッドをも効果的に軽減することができる。
したがって、本発明の第1の手段によれば、安全通信を具現するための通信制御に係わるインターロック制御機構を非常に容易かつ確実に構成することができ、これによって、所望のPLC分散制御システムにおいて信頼性の高い安全通信を非常に容易に実現することができる。
また、本発明の第2の手段によれば、ユーザーは、ある1台のPLCの分散制御システム上の既存プログラムを他のPLCに流用する場合に、自PLCの出力変数(コイル出力)のアドレスを修正せず、その代わりに、上記の定義情報入力手段から上記の出力予定定義情報を入力するだけで、上記のアドレス修正手続きと等価な所望の流用手続きを完了することができる。即ち、本発明の第2の手段によれば、上記の様な既存プログラムの流用作業時に、ソースプログラム上の出力変数のアドレスを修正する代わりに、上記の定義情報入力手段から上記の出力予定定義情報を入力するだけで、所望の第1の記憶手段に格納すべき各出力予定定義フレームをそれぞれ全て生成することが可能となる。
この様に、自PLCのオブジェクトコード上の出力変数の実アドレスを修正する必要がなくなるのは、出力変数を含んだ送信データに各PLCが各自のPLCの局番を付与して他の各PLCに送信する送信手段の局番付与作用に基づいて、何れのPLC上においても、各自の出力変数を同じ番地の記憶領域上に展開することができるためであり、また、各PLCのCPUモジュール20上においては、送信データに付与された局番に基づいて、受信データ中の出力変数が、どのPLCからの出力変数であるのかを容易に区別することができるためである。
また、上記の定義情報入力手段を具現するに当たっては、例えばGUIやテキスト入力などによって、極めて簡潔なユーザーインターフェイスを構成することができるので、上記の所望の流用手続きは、非常に効率よく実行することができる。
したがって、本発明の第2の手段によれば、極めて効率よく、分散制御システム上の既存プログラムの流用を図ることができる。
また、本発明の第3の手段によれば、上記の定義情報抽出手段と上記の第2のフレーム生成手段により、既存のソースプログラムに基づいて、上記の第2の記憶手段上に自動的に上記の参照予定定義フレームを生成することができる。このため、本発明の第3の手段によれば、極めて効率よく、該PLC分散制御システムにおける各PLC間の安全通信を実現することができる。
また、本発明の第4または第5の手段によれば、出力変数の定義領域のアドレスが各PLC間において互いに重なっている場合においても、各PLC間においては、前述の局番付与作用と同様の作用に基づいてそれらの各出力変数を容易に区別することができ、各ラダーダイアグラムは誤動作なく正確に実行することができる。このため、例えば、同一ロジックで動作する対称構成の子局間などにおいては、それらのオブジェクトコードについて、出力変数の実アドレスに関する修正操作を実施しなくても、それらのオブジェクトコードを誤動作なく正確に実行することができる。
また、これと同時に、ラダー図上などにおける各PLCの出力変数のアドレス表示においては、該当する各PLCの局番を含む形式の論理的なアドレスコード(論理的表現)が用いられるので、それらの各出力変数のアドレスは、該当する正しい局番を含む形式の論理的なアドレスコードによって、それぞれ分かり易く見易い形式でラダー図上などに表示することができる。
したがって、本発明の第4または第5の手段によれば、出力変数の定義領域のアドレスが各PLC間において互いに重なっている場合においても、ラダー図上などに表示される各出力変数のアドレス表記に対する、SEやシステム運用管理者などの視覚的な認識性が向上し、これによって、当該分散制御システムの運用管理が容易となる。
また、出力変数の定義領域のアドレスが各PLC間において互いに重なっている場合においても、例えば、同一ロジックで動作する対称構成の子局間などにおいては、それらのオブジェクトコードについて、出力変数の実アドレスに関する修正操作を実施しなくても、それらのオブジェクトコードを誤動作なく正確に実行することができるので、例えば、少なくとも通信制御関連の処理が同一ロジックによって動作する子局(即ち、子局間にカスケード接続がなく、かつ、親子間で参照し合う出力変数に関する通信関係が同一である類似構成の子局)を並列に複数設ける際などに、既存プログラムの再利用性を極めて高く確保することができる。
以下、本発明を具体的な実施例に基づいて説明する。
ただし、本発明の実施形態は、以下に示す個々の実施例に限定されるものではない。
図1に本実施例1のPLC分散制御システム1のシステム構成図を示す。この分散制御システムは、アドレスQ18〜Q1Dの合計6つの各モータを、非同期または必要に応じて同期させつつ、かつ、安全に動作させるためのものであり、これらの各モータは工業用の工作ロボットや加工装置などを駆動するために使用される。
このPLC分散制御システム1は、スレーブPLC11、12とマスターPLC10をリングバス14を用いてリング状に接続したものであり、これによって、ブロードキャスト型の通信ネットワークが構成されている。これらの各PLC(10、11、12)はそれぞれ、CPUモジュール20と通信制御モジュール30とI/Oモジュール40、60から構成されており、これらのモジュールは、バス21によって相互に接続されている。これらの各PLCは、A系統とB系統とに演算処理装置や記憶装置などの各部がそれぞれ2重化された安全PLCで構成されているが、その各部の2重化構成に関する詳しい解説は図8などに譲ることとし、以下では何れもそれぞれ1重構成に省略して説明する。
CPUモジュール20のメモリ22には、ラダー図言語で記述されたシーケンスプログラムが記憶されている。CPUモジュール20は、このシーケンスプログラムをCPU24によって実行することによって、各モジュールを制御したり各モジュールと連動したりすることができる。なお、このPLC分散制御システム1においては、ブロードキャスト型の安全通信が実現されるが、マスターPLC10の通信制御モジュール30は、そのCPUモジュール20からの指令に基づいて、リングバス14上における通信状態を制御するための指令や信号等を送出する同期制御機能(通信トリガー生成管理機能)などをも奏する。
各PLCの通信制御モジュール30は、バスインターフェイス32、メモリ34、及びCPU36が具備されており、各メモリ34にはそれぞれ、所定のパケット交換プロトコルに従う通信プログラムが記憶されている。通信制御モジュール30は、CPUモジュール20から受ける指令に基づいて、この通信プログラムをCPU36にて実行することにより、リングバス14上におけるパケットの送受信をバスインターフェイス32を介して制御する。
また、各I/Oモジュール40には、二重化された非常停止ボタン(ESB0〜2)がそれぞれ接続されており、その状態に基づいて非安全状態を検出することができる。
本実施例1のPLC分散制御システム1では、更に、各CPUモジュール20のインターフェイス26にパソコン50、51、52がそれぞれ個別に接続されている。これらの各パソコン(50、51、52)はそれぞれ、キーボード54、表示装置55及びメモリ57などが具備されている。勿論、その他にも、マウスやプリンターや、或いは携帯可能な外部記憶媒体に対する入出力装置などを備えてもよい。
CPUモジュール20のメモリ22に記憶させる上記のシーケンスプログラムとしては、通常、これらのパソコン上でコンパイルされたものを用いるのが普通であるが、既にその他のコンピュータ上において生成(コンパイル)されたものを、例えば上記の外部記憶媒体などを介して導入してもよい。
図2に、上記のPLC分散制御システム1の制御形態を例示する。本図2は、各PLC10〜12の各CPUモジュール20上にて実行すべきシーケンスプログラムをラダーダイアグラムを用いて表したものであり、局番「00」がPLC10のステーションアドレスを、局番「01」がPLC11のステーションアドレスを、局番「02」がPLC12のステーションアドレスをそれぞれ示している。
図2中の破線で囲まれた入力接点(I00〜I05)やコイル(Q18〜Q1D)は、それぞれ図1の各変数アドレス(I00〜I05,Q18〜Q1D)と対応しており、これらは、非常停止ボタンやモータなどの実際に存在する物理的な入出力対象と直接1対1に対応する状態変数を示している。また、破線で囲まれていないその他の状態変数(00L04,01L08,02L08)は、論理的に模擬されたコイルなどの状態を表す。以下、論理的に模擬されたこれらの状態変数のことをリンクリレーを表すL型変数または単に出力変数と呼ぶ。
図2のラダー図上に表示されているアドレスコードにつては、各出力変数(リンクリレーを表すL型変数)のアドレス表記の頭2文字は、それぞれ各局番と一致しており、3文字目は’L’に固定されている。また、図中の矢印は、各出力変数に対する参照関係を示している。
そして、例えば、以上の様なラダーダイアグラムを実行可能にコード化したシーケンスプログラムによって、何れかの非常停止ボタン(ESB0,ESB1,ESB2)が押下された際には、当該PLC分散制御システム1を安全に停止させることができる。例えば、2重化された非常停止ボタンESB0が押下された際には、入力接点I00または入力接点I01の少なくとも何れか一方がOFF状態となるため、全モータ(Q18〜Q1D)が非常停止する。また、非常停止ボタンESB1が押下された際には、モータQ18〜Q1Bだけが非常停止する。
勿論、非常停止ボタンの代わりに、または、更に非常停止ボタンに加えて、各種のエリアセンサ(例:ライトカーテンや安全マット)などの安全入力機器を導入してもよい。
安全PLCを用いて構成される本実施例1のPLC分散制御システム1において、これらの安全機構を実現する上で非常に重要となる課題の1つに、各PLC間における通信の安全性を挙げることができる。即ち、図2の矢印で示されている参照関係が常時安全に成り立つことを保証するための通信制御に関するインターロック機構を確実に構成することが、非常に重要となる。
以下、上記のPLC分散制御システム1において、その様な安全通信に有用なインターロック機構を容易かつ確実に構成するための実現方式について説明する。
本実施例1では、各PLC間においてリングバス14を介してやり取りされる上記の出力変数(リンクリレーを表すL型変数)は、それを出力する各PLC(10〜12)毎にそれぞれ最大32変数まで定義できるものとする。また、1台のPLCが入力(参照)することのできる他のPLCの出力変数(リンクリレーを表すL型変数)についても、合計で32変数までとする。したがって、システム内の通信を実現するために論理的に模擬される入力接点やコイル(出力変数)の設定可能数は何れも、各PLCにつきそれぞれ最大32個までとする。
したがって、例えば図2におけるアドレス表現に従えば、局番が「00」であるPLC10において定義することができる出力変数の論理アドレスは、00L00〜00L1Fの32通りとなる。
図3−Aは、本実施例1における第1の記憶手段TBL1のテーブル構造図である。この第1の記憶手段TBL1は、各PLC毎に設けられる手段であり、TBL10〜TBL13の連続した4つのフレーム格納領域から構成されている。各格納領域は何れも4バイト領域からなる。そして、これらの各フレーム格納領域TBL10〜TBL13には、例えば、局番が00であるPLC(即ちPLC10)上においては、それぞれ4バイトデータである出力予定定義フレームRF00,RF01,RF02が格納される。TBL13は予備領域である。
図3−Bには、出力予定定義フレームRF01のフレーム構造図を例示する。この出力予定定義フレームRF01は、PLC10(局番=00)上において実行されるラダーダイアグラム中の出力コイルを模擬する各出力変数(00L00〜00L1F)の、PLC11(局番=01)に対する出力予定の有無をその各出力変数毎にそれぞれ定義したものであり、合計32ビットある該ビット列の各出力予定定義ビットRb00〜Rb1Fが、その出力予定の有無を示している。即ち、この各出力予定定義ビットRb00〜Rb1Fが、本発明の出力予定定義情報に相当している。
したがって、例えば、出力予定定義フレームRF01を構成するその先頭ビットの値、即ち出力予定定義ビットRb00の値が1であった場合には、出力変数00L00は、PLC10(局番=00)からPLC11(局番=01)に対して出力(送信)される予定がある。勿論、この予定の有無は、PLC10(局番=00)が有するCPUモジュール20が実行するラダーダイアグラム(シーケンスプログラム)の内容に依存する。以下、同様に、出力予定定義フレームRFmn(m=0,1,2;n=0,1,2)を定義すると、その出力予定定義フレームRFmnを構成するビット列は、局番mから出力される各出力変数(0mL00〜0mL1F)の、局番nに対する出力予定の有無を各対応ビット毎に示す。
したがって、n=mの時、その出力予定定義フレームRFmnを構成する各出力予定定義ビットの各値は何れも0となる。
図4に、本実施例1における出力予定定義画面WD00(定義情報入力手段)の表示形態を例示する。この画面は、PLC10に接続されたパソコン50の表示装置55に表示されるもので、局番を指定するための前段の操作画面の操作後に、その次段の操作画面として出力される。即ち、表示フィールドw5に表示されている局番(PLC#=00)は、このパソコン50が接続されているPLCの局番と一致している。
また、この出力予定定義画面WD00の表示フィールドw1には各出力変数の番地(ビットアドレス)が表示されており、表示フィールドw2にはそれらの出力変数の送出先の各PLCの局番が表示されている。
そして、この画面の中央には、(j列:該PLC分散制御システム1を構成するPLC台数)×(k行:各PLC上に定義可能な出力変数の個数の最大値)個のチェックボックス(w3,w3′,w3″)が、マトリックス状に配列されている。チェックマーク(レ印)が指定されていないチェックボックスw3に対応するビットの値は0と定義される。例えば、出力変数の番地が00L1Eで、その送信先のPLC局番が2である本出力予定定義画面WD00上のチェックボックスに対応する対応ビットは、第1の記憶手段TBL1上に格納される出力予定定義フレームRF02中の出力予定定義ビットRb1Eであるので、この出力予定定義ビットRb1Eの値は0(:出力予定無し)と定義される。
同様にして、チェックマーク(レ印)が指定されているチェックボックスw3′に対応するビットの値は1と定義される。例えば、出力変数の番地(ビットアドレス)が00L04で、その送信先のPLC局番が1である本出力予定定義画面WD00上のチェックボックスに対応する対応ビットは、第1の記憶手段TBL1上に格納される出力予定定義フレームRF01中の出力予定定義ビットRb04であるので、この出力予定定義ビットRb04の値は1(:出力予定有り)と定義される。
また、自PLCが出力する出力変数(リンクリレーを表すL型変数)の自PLC自身に対する送出は一切行われないので、一番左側の列にある各チェックボックスw3″に対する指定(レ印の入力操作)はできない。
以上の各チェックボックスに対する指定が完了した時点でOKボタンw4をクリックすると、その操作を契機(トリガー)として、上記の出力予定定義画面WD00に対するユーザの操作にしたがって正しく定義された各出力予定定義フレームが、まとめてパソコン50よりPLC10に転送されて、図3−Aの第1の記憶手段TBL1上にそれぞれ格納される。
以下、これらの出力予定定義フレームと照合されるべき、本発明の参照予定定義フレームのフレーム構造とその生成方式について説明する。
図5−Aは、本実施例1における第2の記憶手段TBL2のテーブル構造図である。この第2の記憶手段TBL2は、各PLC毎に設けられる手段であり、TBL20〜TBL23の連続した4つのフレーム格納領域から構成されている。各格納領域は何れも4バイト領域からなる。そして、これらの各フレーム格納領域TBL20〜TBL23には、例えば、局番が00であるPLC(即ちPLC10)上においては、それぞれ4バイトデータである参照予定定義フレームSF00,SF01,SF02が格納される。TBL23は予備領域である。
図5−Bには、参照予定定義フレームSF01のフレーム構造図を例示する。この参照予定定義フレームSF01は、PLC11(局番=01)上において実行されるラダーダイアグラム中の出力コイルを模擬する各出力変数(01L00〜01L1F)に対する、PLC10(局番=00)上における参照予定の有無を各出力変数毎にそれぞれ定義したものであり、合計32ビットある該ビット列の各参照予定定義ビットSb00〜Sb1Fが、その参照予定の有無を示している。即ち、この各参照予定定義ビットSb00〜Sb1Fが、本発明の参照予定定義情報に相当している。
したがって、例えば、参照予定定義フレームSF01を構成するその先頭ビットの値、即ち参照予定定義ビットSb00の値が1であった場合には、出力変数01L00は、PLC10(局番=00)上において参照(受信)される予定がある。勿論、この予定の有無は、PLC10(局番=00)が有するCPUモジュール20が実行するラダーダイアグラム(シーケンスプログラム)の内容に依存する。以下、同様に、参照予定定義フレームSFmn(m=0,1,2;n=0,1,2)を定義すると、その参照予定定義フレームSFmnを構成するビット列は、局番nから出力される各出力変数(0nL00〜0nL1F)の、局番mにおける参照予定の有無を各対応ビット毎に示す。
以下、図6を用いて、参照変数テーブル生成プログラムPGaの動作について説明する。例えば、局番「00」のPLC上にて実行される本図中のラダーダイアグラム等の各個々のソースコード上においては、出力変数(リンクリレーを表すL型変数)のアドレスを論理的な形式のアドレスで、即ち「y1 2 Lz1 2 」なる形式の論理アドレスで表す。ただし、ここで、y1 2 はそのPLCの局番で、z1 2 が出力変数定義領域上におけるビットアドレスを示している。
そして、これらのソースコードをこの参照変数テーブル生成プログラムPGaに入力すると、参照変数テーブルTBaが生成されて出力される。この参照変数テーブルTBaは、上記の様なソースコード中において論理的に定義(模擬)された入力接点において参照される出力変数を列挙して登録したものであり、2バイト情報を連続的に並べた、該2バイト情報の集合体から構成されている。即ち、その各2バイト情報の下位バイトは、図6のラダーダイアグラムとの対応からも分かる様に、その入力接点にて参照される出力変数を出力するPLCの局番を表している。また、上位バイトは、その出力変数のビットアドレスを示している。
この様な参照変数テーブル生成プログラムPGaは、コンパイラのオプションまたは拡張機能などとして用意してもよいし、単独のツールとして用意してもよい。パソコン50よりこの参照変数テーブルTBaをPLC10のCPUモジュール20上へ転送して、該データをCPUモジュール20上で変換処理することによって、例えば、局番が00であるPLC(即ちPLC10)上においては、各参照予定定義フレームSF00,SF01,SF02が生成されて、上記の第2の記憶手段に格納される。他のPLCについても勿論同様にして、第2の記憶手段上に各参照予定定義フレームが生成される。
本実施例1の安全通信に係わる初期処理(イニシャル動作)について、以下、図7、図8を用いて説明する。図7は、当該PLC分散制御システム1全体のイニシャル動作を示すフローチャートである。
この制御処理手順では、まずステップS1において、上記の様な定義フレーム生成処理を各PLC毎に実行することにより、各PLC上における第1の記憶手段及び第2の記憶手段に、それぞれ各出力予定定義フレーム及び各参照予定定義フレームを生成する。
図8に、そのステップS1の動作を図示する。メモリ24を有する図1の各CPUモジュール20は、実際には図8に示す様に、A系統とB系統の2系統の処理系に並列2重化されており、各PLC上における上記の第1の記憶手段及び第2の記憶手段は、勿論、各CPU20上のA系統とB系統の各マイクロプロセッサ(MP−A,MP−B)の上に、2重化されて生成される。
したがって、以下に示す安全通信に係わるイニシャル動作についても、勿論、それぞれA系統とB系統の各処理系で互いに並列に実行されるが、以下ではその1系統の処理についてのみ、図8のフローチャートに沿って説明する。
次のステップS2は、局番00にて実行すべき処理を示しており、ここでは、出力予定定義フレームRF01を局番01のPLCに、出力予定定義フレームRF02を局番02のPLCにそれぞれ送出する。
この時送出されるパケットのデータ構造(フレーム構成)を図9に例示する。このパケットは、上記の出力予定定義フレームRF01(4バイト)を情報部Iの一部として送受信するためのものであり、一般的なパケット交換プロトコルに準拠している。ここでは、特に、送信先アドレス(PLC局番DA)や送信元アドレス(PLC局番SA)が各パケット毎に付与される点に特徴がある。
そして、送信元の局番を送信データに付与するこの様な手段が、本発明における局番付与手段に相当する。
なお、フレーム・タイプFT(2バイト)には、情報部Iを構成しているデータの種別コード(例:コマンドタイプなど)や、当該フレームのデータ構造等に係わる制御ビットなどが含まれる。また、情報部Iには、通信の同期制御や異常連絡などに可用な制御情報などを含めることができる。
図8のリングバス14は、バックアップ用の光ファイバケーブルと通常通信時の光ファイバケーブルとに2重化されており、ここでの通常通信時の安全通信に係わる2重化は、パケットレベルにて多重並列化される。即ち、各通信制御モジュール30を構成する各マイクロプロセッサ(MP−A,MP−B)のアドレスは、それぞれ互いに異なり、A系統の通信処理とB系統の通信処理とが、常時1ペアの組を構成しつつ実行される。この時、例えば先にMP−Aがデータaを送信すると、次にMP−Bがそのデータaの各ビットをそれぞれ反転したデータbを送信する。(ただし、テストビット(TEST)は反転させない。)
次のステップS3は、その後局番01及び局番02の各PLCのCPUモジュール20にて実行すべき処理を示している。即ち、局番01のPLCのCPUモジュール20では、局番00から自局宛に送信された出力予定定義フレームRF01の内容を、自PLCの第2の記憶手段上に格納されている参照予定定義フレームSF01の内容と各ビット対応に照合する。また、局番02のPLCのCPUモジュール20では、局番00から自局宛に送信された出力予定定義フレームRF02の内容を、自PLCの第2の記憶手段上に格納されている参照予定定義フレームSF02の内容と各ビット対応に照合する。
次のステップS4では、上記の両照合処理において、不一致ビットが存在していたか否かを判定して、1つでも不一致ビットが存在していた場合にはステップS12へ、そうでなければステップS5へ処理を移す。
ステップS5〜ステップS7の各ステップは、上記の各PLCの役割をサイクリックにずらして相互に置き替えることによって、上記のステップS2〜ステップS4の各ステップと同様の処理を、互いに立場を替えて実行するものであり、その照合の結果、不一致ビットが存在しない場合には、次のステップS8へ処理を移す。即ち、これらの照合処理は、PLC分散制御システム1内において、回転対称的にPLC台数分繰り返してそれぞれ実行する。
したがって、例えば、ステップS8〜ステップS10の各ステップは、上記の各PLCの役割をサイクリックにずらして相互に置き替えることによって、上記のステップS5〜ステップS7の各ステップと同様に、それらの各処理を、互いに立場を替えて実行するものであり、その照合の結果、不一致ビットが存在しない場合には、次のステップS11へ処理を移す。
ステップS11では、通常通信を開始するための処理、即ち開始指令の出力処理を行う。他方、ステップS12では、通常通信を禁止するための処理、即ち禁止指令の出力処理を行う。
以上の様な構成に従えば、上記の出力予定定義フレームRFnmは各PLC間の各通信回線においてそれぞれ双方向にて送受信され、上記の照合処理は各PLCにおいてそれぞれ実施されるので、これによって、各PLC間におけるA系統及びB系統の各パケット回線の状態を全回線にわたって双方向に自動的にそれぞれテストすることができる。また、これによって、各相手局の送受信状態がそれぞれ正常であるか否かについても同時にテストされる。
更に、上記の照合処理では、各PLC間における個々の出力変数について、各対応フレーム毎に入力条件と出力条件とが一致すること(出力予定定義フレームRFnm=参照予定定義フレームSFnm)がチェックされる。このため、各PLC間で入出力すべき各出力変数の送受信が、それぞれ正しく実行される状態にあるか否かを、送受信されるべき各出力変数について、全て漏れなく自動的に判定することができる。
したがって、通常通信時には、出力側と参照側との参照関係の定義の不整合によって、シーケンスプログラムに誤動作が生じる恐れがなくなる。
図10−Aに、上記の出力予定定義フレームRFmnの通常通信時の利用形態を例示する。本図10−Aの送信処理は、ブロードキャスト型の通信を実現するためのものであり、各PLCからその出力変数を送出する通常通信実行時に毎回行われるものである。ただし、ここで、図中の出力変数フレームOUTmは、局番mのPCL上で定義された出力変数0mL00〜0mL1Fに関するその出力時の(即ち、演算結果としての)32ビットから成る4バイトデータを表している。
また、定数RFm(例:RF0=OR(RF01,RF02))は、局番mのPCLのCPUモジュール20上の第1の記憶手段に登録されている全てのエントリー(即ち、各出力変数定義フレームRFmi(i=0〜全PLC台数−1))に関する、各対応ビット毎の累計的な全論理和の結果ビットから成る4バイトデータである。
そして、この送信処理では、まず最初に、ステップS21において、4バイトの作業領域A1に、出力変数フレームOUTmと上記定数RFmとの各対応ビット毎の論理積演算(AND演算)の演算結果を格納する。次にステップS22では、その演算結果(A1)と出力変数フレームOUTmの値とを比較し、両者の各ビット値が全て一致していればステップS24へ、そうでなければステップS25に処理を移す。
そして、次のステップS24では、出力変数フレームOUTmを、図9の情報部I内の所定の領域にセットし、その宛て先として全PLCを指定すること(全局指定)によって、その送信パケットを他の各PLCに送信する。一方、ステップS25では、当該PLC分散制御システム1を所定の非常停止処理プログラムに従って安全に停止させる。
以上の様な送信処理を行えば、ステップS21,S22,S25の作用によって、送信側のPLCのCPUモジュール20を制御するシーケンスプログラム中に、例えば本来は更新されないはずの出力変数を余計にON設定してしまう様なプログラム不良が万一不本意ながら存在していた場合にも、システムを安全に停止させることができる。
或いは、以上の様な送信処理を行えば、受信側のPLCのCPUモジュール20を制御するシーケンスプログラムとして、本来とは何ら関係のない別のプログラムが誤ってダウンロードされていて、かつ、この誤操作に対して更に丁度迎合する様な誤った出力予定定義の設定操作が、図4の出力予定定義画面から行われていた場合にも、システムを安全に停止させることができる。
他方、受信側の各PLCにおける参照予定定義フレームの他の利用形態を図10−Bに例示する。各PLCの受信処理においては、まず最初にステップS30において、自局(局番n)宛てのパケットをリングバス14から受け取る。勿論、宛て先が全局指定のパケットも自局宛てのパケットである。
次に、ステップS32では、そのパケットの情報部I(図9)内にある送信元(局番m;m≠n)の出力変数フレームOUTm(:32ビット情報)を取り出す。次に、ステップS34では、「OUTmn=AND(OUTm,SFmn)」なる論理積演算処理、即ち出力変数フレームOUTmに対する自局(:受信局)向けのマスキング処理を行い、自局が参照すべき出力変数だけを選別する。そして、自局にて参照すべき参照ビット(各出力変数)だけが選別された出力変数フレームOUTmnを、ステップS36にて、自局の各入力接点(即ち参照処理プログラム)が参照可能な所定の領域上にコピーする。
例えば、以上の様な送受信処理を行えば、通常通信時に送信側のPLCでは、上記の「全局指定」によって、自局の出力変数フレームOUTmを1回だけネットワーク回線(リングバス14)へ送出するだけで、その回の出力変数に関する必要な送信処理を完了することができる。即ち、所望のブロードキャスト型の通信により、高効率な送信処理を実施することができる。また、この様な安全通信方式に従えば、出力変数に関する送信側と受信側との間の参照関係の不整合が生じないので、シーケンスプログラムを誤動作なく安全に実行させることができる。
なお、上記のステップS34の代わりに、上記のステップS24の前段にステップS34と同等の処理、即ち、「OUTmn=AND(OUTm,RFmn)」なる処理を設け、かつ、上記のステップS24において、各送信先局番のアドレス指定、即ち受信側局番nの指定をそれぞれ行う様にすれば、これによって、上記のブロードキャスト型の通信の代わりにマルチキャスト型の通信を実現することもできる。即ち、本実施例1の照合処理方式に従えば、マルチキャスト型の安全通信を実施する際にも、出力変数に関する送信側と受信側との間の参照関係の不整合を未然に排除しつつ、シーケンスプログラムを正確に動作させることができる。
図11に、本実施例2のダイアグラム編集表示手段200の構造と動作を示す。このダイアグラム編集表示手段200は、オブジェクトコードD0に基づいてその動作を表すラダーダイアグラムD2を編集し、その編集結果を目視可能な所定の出力媒体(画面または紙面)上に表示するためのものであり、ダイアグラム編集プログラム210と局番入力手段220とダイアグラム表示手段230とを有している。例えば、局番入力手段220は、先の実施例1の図1のキーボード54などから構成することができ、これが本発明の局番取得手段に相当する。即ち、例えば図1のパソコン50、51、52などを各PLC毎に接続することによって、そのパソコン上に当該ダイアグラム編集表示手段200を生成することができる。また、ダイアグラム表示手段230には、同図1の表示装置55などを用いてもよいし、その代わりにプリンターなどを用いてもよい。
図11の中央のラダーダイアグラムD1は、ダイアグラム編集プログラム210のラダーダイアグラム編集処理における中間結果を示している。このラダーダイアグラムD1中の入力接点及び出力変数の各実アドレス(L0x1 2 ,L000)には、オブジェクトコードD0上における値がそのまま示されている。この様な中間結果(ラダーダイアグラムD1)は、従来技術に基づいて編集することが可能であるが、このダイアグラム編集表示手段200には、更に、ラダーダイアグラムが実行される各PLCの局番を入力するための局番入力手段220と、その入力された局番に基づいて、各出力変数の実アドレスを局番が含まれた論理的なアドレスコードに書き直す表示アドレスコード編集手段211とが具備されている。このため、例えば、出力変数L000などのアドレス表示コードは、以下の様にして編集されてから、ダイアグラム表示手段230が出力するラダーダイアグラムD2中に表示される。
本実施例2が適用されるPLC分散制御システムにおいては、出力変数(リンクリレーを表すL型変数)を各PLC毎にそれぞれ最大32変数まで定義することができ、かつ、出力変数を含んだ送信データに各PLCが各自のPLCの局番を付与して他の各PLCに送信する送信手段(図1の通信制御モジュール30)を有しているため、何れのPLCにおいてもその出力変数の当該PLC上における実アドレスadは、個々のオブジェクトコードD0上において、同じ範囲内の実アドレス(L000≦ad≦L01F)として展開される。即ち、各PLCのCPUモジュール20上においては、それぞれ互いに、出力変数の格納領域が全く重なっている。これは、送信データに付与された局番に基づいて、各PLCのCPUモジュール20上においては、受信されたそれらの出力変数が、どのPLCからの出力変数であるのかを容易に区別することができるためである。
このため、表示アドレスコード編集手段211は、この範囲内(L000〜L01F)にその実アドレスadを有する変数(即ち、上記の出力変数)に対してのみ作用する。
より具体的には、ダイアグラム編集プログラム210の実行中に、即ちダイアグラム編集表示手段200においてラダーダイアグラムD1を編集している途中で、実アドレスが上記の範囲内にある出力変数(リンクリレーを表すL型変数)が検出された時点で、所定の編集サブルーチン(即ち、表示アドレスコード編集手段211)を毎回呼び出すことによって、所望のアドレスコードの変更処理(L0x1 2 →nnLx1 2 )を当該PLC上における各出力変数に対してそれぞれ実施することができる。ただし、ここでnnは入力された局番で、図11では、局番入力手段220から入力される局番’01’に相当する。
他方、論理的に定義(模擬)された入力接点で参照される各出力変数のアドレスに関する「L0x1 2 →y1 2 Lz1 2 」なる編集処理、即ち、「x1 2 →(y1 2 ,z1 2 )」なるコード変換処理は、オブジェクトコードD0を生成する際に用いられた所定のコンパイル規則に従って、その逆変換を行うことによって実行することができ、これによって、ユーザが認識するべき管理用の論理アドレスコードと、オブジェクトコードD0上における各入力接点の実アドレスとが、それぞれ正しく対応する。
(本実施例2の効果1)
既存プログラム(オブジェクトコードD0)に何ら修正を加えることなく、このプログラムの複製(コピープログラム)を複数台のPLC間で、同時に使用することができ、これによって、既存プログラムの流用率、即ちオブジェクトプログラムの生産性が効果的に向上する。この様な、既存プログラムの流用は、例えば図2の局番「02」にて実行されるラダープログラム(オブジェクトプログラム)をそのまま同図2の局番「01」に適用しようとする際などに有効となる。また、同図2の局番「01」や局番「02」と同様のスレーブPLCが多数並列に配備されるPLC分散制御システムにおいては、更に同様の作用・効果を多数回にわたって同様に受託することができる。
(本実施例2の効果2)
局番入力手段220(局番取得手段)からの入力情報(局番)に基づいて、オブジェクトコードD0上では区別がつかない同一形式の出力変数(L000〜L01F)に対して、そのアドレスの先頭に局番(ステーション・アドレス)を付与することができる。したがって、ラダーダイアグラムD2上においては、各PLCの出力変数を区別して正確に識別することができ、その識別も容易となる。
(本実施例2の効果3)
ラダーダイアグラムD2上におけるPLC#01の出力変数のアドレス表示において、該PLCの局番「01」を含む形式の論理的なアドレスコード、即ち、図6のところでも言及したコーディング形式の論理アドレス(01L00,y1 2 Lz1 2 )が用いられ、これによって、ラダーダイアグラムD2上に表示される出力変数のアドレス表記に対するSEやシステム運用管理者などの視覚的な認識性が向上するため、当該分散制御システムの運用管理が容易となる。
(実施例1、2の相乗効果)
したがって、このダイアグラム編集表示手段200を実施例1のPLC分散制御システム1に適用すれば、以上の各実施例に示したそれぞれの作用・効果に係わる更なる相乗効果に基づいて、通信回線のテストなどに係わる運用効率を効果的に向上させることができると共に、信頼性の高い安全通信を実現することができ、更には、既存プログラムの再利用性を効果的に向上させると同時に、該PLC分散制御システムを構成する各PLCが出力する個々の出力変数の識別を、該システムのSEや運用管理者に対して容易にすることができる。
〔その他の変形例〕
本発明の実施形態は、上記の形態に限定されるものではなく、その他にも以下に例示される様な変形を行っても良い。この様な変形や応用によっても、本発明の作用に基づいて本発明の効果を得ることができる。
(変形例1)
例えば、上記の実施例1では、安全通信のイニシャル動作処理において、対応関係にある各予定定義フレームを照合するために、出力予定定義フレームの方を相手方のPLCに送信しているが、逆に、参照予定定義フレームの方を相手方の各PLCに送信して、同様の照合処理を行ってもよい。この様な送受信を行っても、同様の作用・効果を得ることができる。
(変形例2)
また、本発明のPLC分散制御システムを構成するために相互に接続するPLCの台数は任意でよく、また、各PLCを構成するために接続するI/Oモジュールの接続台数も任意でよい。PLC分散制御システムの通信ネットワークについては、リングバスの代わりに線形バスを用いてそれを構成してもよい。
(変形例3)
また、上記の実施例1においては、2重化されたリングバス14の片方の通信配線を異常時のバックアップ用とし、平常時には用いない構成としたが、ネットワーク回線の2重化については、パケット通信に基づく論理的な通信回線レベルでの2重化形態に必ずしも限定する必要はなく、物理的な通信配線レベルで通信の2重化を図ってもよい。
(変形例4)
また、実施例2の図11のラダーダイアグラムD2におけるダイヤグラムの表現形態については、テキスト形式の表示方式を採用してもよい。
また、実施例1の図4の出力予定定義形態についても、チェックボックス・マトリックスなどによるGUIを用いる代わりに、テキスト形式の入力方式を採用してもよい。
(変形例5)
また、実施例2の図11の局番入力手段220は、ユーザーに局番を入力させるための手段であったが、本発明の局番取得手段を構成するに当たっては、診断命令や問い合わせコマンドなどを用いて、自動的に局番が取得される様にしてもよい。
本発明は、安全PLCを用いたPLC分散制御システムを構成する際に、非常に有用なものであるが、本発明のPLC分散制御システムを構成する各PLCは、必ずしも安全PLCである必要はない。即ち、ラダー回路を模擬するシーケンスプログラムを有する任意のPLCを用いて、本発明のPLC分散制御システムを構成することができる。
実施例1のPLC分散制御システム1のシステム構成図 PLC分散制御システム1の制御形態を例示するラダーダイアグラム 第1の記憶手段TBL1のテーブル構造図 出力予定定義フレームRF01のフレーム構造図 出力予定定義画面WD00の表示形態を例示するレイアウト図 第2の記憶手段TBL2のテーブル構造図 参照予定定義フレームSF01のフレーム構造図 参照変数テーブル生成プログラムPGaの動作を説明する説明図 PLC分散制御システム1のイニシャル動作を示すフローチャート 図7のイニシャル動作のステップS1の動作を説明する説明図 送受信パケットのデータ構造を例示するフレーム構造図 出力予定定義フレームの他の利用形態を例示するフローチャート 参照予定定義フレームの他の利用形態を例示するフローチャート ダイアグラム編集表示手段200の構造と動作を示すプログラム構造図
符号の説明
1 : PLC分散制御システム
10 : マスターPLC
14 : リングバス
20 : CPUモジュール
30 : 通信制御モジュール
40 : I/Oモジュール
50 : パソコン
ESB0: 非常停止ボタン
RF01: 出力予定定義フレーム
SF01: 参照予定定義フレーム
TBL1: 第1の記憶手段
TBL2: 第2の記憶手段
WD00: 出力予定定義画面(定義情報入力手段)
200 : ダイアグラム編集表示手段
210 : ダイアグラム編集プログラム
211 : 表示アドレスコード編集手段
220 : 局番入力手段(局番取得手段)

Claims (5)

  1. 通信手段を有するPLCを複数台接続することによって構成されるブロードキャスト型又はマルチキャスト型のPLC分散制御システムにおいて、
    各前記PLCは、
    自PLC上において実行されるラダーダイアグラム中の出力コイルを模擬する各出力変数の他の前記PLCに対する出力予定の有無を、その各出力変数毎に定義する出力予定定義情報からなる出力予定定義フレームを他の各前記PLC対応にそれぞれ記憶する第1の記憶手段と、
    他の前記PLC上において実行されるラダーダイアグラム中の出力コイルを模擬する各出力変数に対する参照予定の有無を、その各出力変数毎に定義する参照予定定義情報からなる参照予定定義フレームを他の各前記PLC対応にそれぞれ記憶する第2の記憶手段と、
    前記出力予定定義フレームまたは前記参照予定定義フレームを他の各前記PLCに送信する送信手段と、
    前記出力予定定義フレームまたは前記参照予定定義フレームを他の各前記PLCから受信する受信手段と、
    前記出力予定定義フレームと前記参照予定定義フレームとを各対応フレーム毎にそれぞれ照合する照合手段と、
    前記照合手段による照合結果に基づいて、前記PLC分散制御システムにおける通常通信の開始の是非を判定する通常通信開始判定手段と
    を有する
    ことを特徴とするPLC分散制御システム。
  2. 前記送信手段は、
    送信すべき目的の送信データに前記自PLCの局番を付与する局番付与手段を有し、
    各前記PLCは、
    前記出力予定定義情報の入力を受け付ける定義情報入力手段と、
    前記定義情報入力手段によって入力された入力情報に基づいて、前記出力予定定義フレームを前記第1の記憶手段上にそれぞれ生成する第1のフレーム生成手段と
    を有する
    ことを特徴とする請求項1に記載のPLC分散制御システム。
  3. 各前記PLCは、
    自PLC上において実行される前記ラダーダイアグラムのソースプログラム中から前記参照予定定義情報を抽出する定義情報抽出手段と、
    前記定義情報抽出手段によって抽出された抽出情報に基づいて、前記参照予定定義フレームを前記第2の記憶手段上にそれぞれ生成する第2のフレーム生成手段と
    を有する
    ことを特徴とする請求項1または請求項2に記載のPLC分散制御システム。
  4. 通信手段を有するPLCを複数台接続することによって構成されるPLC分散制御システムにおいて、
    送信すべき目的の送信データに自PLCの局番を付与して他の各前記PLCに送信する送信手段を有し、
    各前記PLCは、
    自PLC上で実行されるラダーダイアグラムの動作内容を所定の画面上または紙面上に表示するダイアグラム編集表示手段を有し、
    前記ダイアグラム編集表示手段は、
    前記PLC分散制御システムにおける前記自PLCの局番を取得する局番取得手段と、 前記ラダーダイアグラムを具現するオブジェクトプログラム上において出力コイルを模擬する各出力変数のアドレスコードを、取得された前記局番を含む形式の論理的なアドレスコードに書き換える表示アドレスコード編集手段と
    を有する
    ことを特徴とするPLC分散制御システム。
  5. 前記送信手段は、
    送信すべき目的の送信データに前記自PLCの局番を付与する局番付与手段を有し、
    各前記PLCは、
    自PLC上で実行されるラダーダイアグラムの動作内容を所定の画面上または紙面上に表示するダイアグラム編集表示手段を有し、
    前記ダイアグラム編集表示手段は、
    前記PLC分散制御システムにおける前記自PLCの局番を取得する局番取得手段と、 前記ラダーダイアグラムを具現するオブジェクトプログラム上において出力コイルを模擬する各出力変数のアドレスコードを、取得された前記局番を含む形式の論理的なアドレスコードに書き換える表示アドレスコード編集手段と
    を有する
    ことを特徴とする請求項1乃至請求項3の何れか1項に記載のPLC分散制御システム。
JP2006339822A 2006-12-18 2006-12-18 Plc分散制御システム Expired - Fee Related JP4952228B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2006339822A JP4952228B2 (ja) 2006-12-18 2006-12-18 Plc分散制御システム
US12/519,881 US8321037B2 (en) 2006-12-18 2007-12-14 PLC distributed control system
PCT/JP2007/074164 WO2008075631A1 (ja) 2006-12-18 2007-12-14 Plc分散制御システム
EP07859838.0A EP2098927B1 (en) 2006-12-18 2007-12-14 Plc dispersion control system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006339822A JP4952228B2 (ja) 2006-12-18 2006-12-18 Plc分散制御システム

Publications (2)

Publication Number Publication Date
JP2008152532A true JP2008152532A (ja) 2008-07-03
JP4952228B2 JP4952228B2 (ja) 2012-06-13

Family

ID=39536262

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006339822A Expired - Fee Related JP4952228B2 (ja) 2006-12-18 2006-12-18 Plc分散制御システム

Country Status (4)

Country Link
US (1) US8321037B2 (ja)
EP (1) EP2098927B1 (ja)
JP (1) JP4952228B2 (ja)
WO (1) WO2008075631A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010244158A (ja) * 2009-04-02 2010-10-28 Yokogawa Electric Corp 制御装置及び通信管理方法
JP2015205357A (ja) * 2014-04-17 2015-11-19 キヤノン株式会社 ロボット制御システム及びロボットの制御方法

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4902823B1 (ja) * 2011-07-28 2012-03-21 三菱電機株式会社 通信装置
KR101240703B1 (ko) * 2011-08-17 2013-03-11 엘에스산전 주식회사 Plc 네트워크 증설방법 및 이를 이용한 네트워크 증설시스템
US20130065207A1 (en) * 2011-09-13 2013-03-14 Matthew Alan Russell Computer program products and machines for emulating a machine and presenting training scenarios to a user
US8660830B2 (en) * 2011-09-13 2014-02-25 The Procter & Gamble Company Machine emulator methods
US8670965B2 (en) * 2011-09-13 2014-03-11 The Procter & Gamble Company Machine emulator products
US8660829B2 (en) * 2011-09-13 2014-02-25 The Procter & Gamble Company Machine emulator machines
JP6375666B2 (ja) 2014-03-31 2018-08-22 株式会社ジェイテクト Plcおよびplc用のプログラミングツール
CN112368653A (zh) 2018-05-07 2021-02-12 朗姆研究公司 可配置分布式互锁系统
US11880185B2 (en) 2018-06-04 2024-01-23 Nordson Corporation Systems and methods for liquid dispensing system communications
US11627014B2 (en) 2019-08-06 2023-04-11 Rosemount Aerospace Inc. Distributed electric air data module system
CN114740796B (zh) * 2022-04-26 2023-09-12 傲拓科技股份有限公司 一种具有分布式处理器的大型plc系统

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0713482A (ja) * 1993-02-26 1995-01-17 Toyota Motor Corp プログラマブルコントローラ間通信システム

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2723367B2 (ja) 1991-01-28 1998-03-09 三菱電機株式会社 通信ネットワーク装置
JP3317156B2 (ja) * 1996-09-18 2002-08-26 三菱電機株式会社 リモートplc装置を備えた数値制御装置
WO2001027701A1 (fr) 1999-10-15 2001-04-19 Omron Corporation Systeme de reseau, procede de commande, dispositif de commande et multiprocesseur
JP2002358106A (ja) 2001-05-31 2002-12-13 Omron Corp 安全コントローラ
JP4261241B2 (ja) 2003-04-11 2009-04-30 株式会社コガネイ 加圧装置
JP4461485B2 (ja) 2005-04-05 2010-05-12 株式会社ジェイテクト 分散制御装置
JP2006302216A (ja) 2005-04-25 2006-11-02 Keyence Corp 表示装置、画面データ作成装置及び画面表示システム
JP4722613B2 (ja) * 2005-08-02 2011-07-13 株式会社ジェイテクト 分散制御システム

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0713482A (ja) * 1993-02-26 1995-01-17 Toyota Motor Corp プログラマブルコントローラ間通信システム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010244158A (ja) * 2009-04-02 2010-10-28 Yokogawa Electric Corp 制御装置及び通信管理方法
JP2015205357A (ja) * 2014-04-17 2015-11-19 キヤノン株式会社 ロボット制御システム及びロボットの制御方法

Also Published As

Publication number Publication date
EP2098927A1 (en) 2009-09-09
US20100057220A1 (en) 2010-03-04
EP2098927A4 (en) 2011-08-31
US8321037B2 (en) 2012-11-27
EP2098927B1 (en) 2014-02-12
JP4952228B2 (ja) 2012-06-13
WO2008075631A1 (ja) 2008-06-26

Similar Documents

Publication Publication Date Title
JP4952228B2 (ja) Plc分散制御システム
US9596124B2 (en) Assistance device of network system
JP6375666B2 (ja) Plcおよびplc用のプログラミングツール
JP6509477B2 (ja) 制御装置および制御プログラム
JP4962725B2 (ja) マルチplc・分散制御システムにおけるツール装置
CN102809948A (zh) 用于块实例化的系统和方法
CN109564411A (zh) 用于进一步使用驱控工业现场设备的现有软件的平台
US11165745B2 (en) Control system, controller, and control method
CN107615191A (zh) 调试装置、调试方法及调试程序
US20010037362A1 (en) Automation system for solving a technical-process task and corresponding method
JP2019179476A (ja) サポート装置、サポートプログラム、設定方法
Bourne CML: a meta-interpreter for manufacturing
US9563181B2 (en) Method for operating an automation system
US20190303319A1 (en) Support apparatus, non-transitory computer-readable recording medium and setting method
JP2011186607A (ja) フィールドデバイス、フィールドデバイスの設定方法、フィールドデバイス管理装置及びプログラム
JP2014199485A (ja) 情報処理装置および情報処理プログラム
JP5212509B2 (ja) ネットワークシステムにおけるアドレス設定方法
CN113545013A (zh) 网络管理装置、管理方法、管理程序以及记录介质
US20150236901A1 (en) Control system management apparatus
JP6484015B2 (ja) プログラマブル・ロジック・コントローラおよびその制御方法
US20210349446A1 (en) Control device, support device, and communication system
JP2020087328A (ja) プラント制御装置
Dehof et al. An approach for modelling communication networks in industrial control systems
Sollfrank et al. Integration of safety aspects in modeling of Networked Control Systems
JP2005130147A (ja) 通信情報テーブル作成装置および通信情報テーブル作成方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20091130

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111220

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120126

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120214

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120227

R150 Certificate of patent or registration of utility model

Ref document number: 4952228

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150323

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees