コントローラシステムの設定方法並びにコントローラシステムのモニタ方法
【課題】 安全系と非安全系をうまく混在した状態でコントローラを実現し、安全系と非安全系とで共通処理として扱える部分は共通するとともに、安全系の安全機能は保証できるコントローラシステムを提供すること
【解決手段】 CPUユニット1aを含む複数のユニット1b,1cを連結して構成される非安全コントローラに、安全機能処理を実行する安全ユニット1dから1fを連結する。安全ユニットには、CPUユニットに連係するためのCPUバス10と、安全ユニット同士が相互に連係するための安全用専用バス11を備える。安全用専用バスは、非安全系から分離されているので、安全機能の信頼性は確保できる。CPUユニットは、CPUバスを経由して安全ユニット,非安全ユニットを問わず、データの読み出しができる。
【解決手段】 CPUユニット1aを含む複数のユニット1b,1cを連結して構成される非安全コントローラに、安全機能処理を実行する安全ユニット1dから1fを連結する。安全ユニットには、CPUユニットに連係するためのCPUバス10と、安全ユニット同士が相互に連係するための安全用専用バス11を備える。安全用専用バスは、非安全系から分離されているので、安全機能の信頼性は確保できる。CPUユニットは、CPUバスを経由して安全ユニット,非安全ユニットを問わず、データの読み出しができる。
【発明の詳細な説明】
【技術分野】
【0001】
この発明は、安全ユニット及びコントローラシステム並びにコントローラの連結方法及びコントローラシステムの制御方法並びにコントローラシステムのモニタ方法に関するものである。
【背景技術】
【0002】
FA(ファクトリーオートメーション)で用いられるプログラマブルコントローラ(以下、「PLC」と称する)は、PLCにつながれたスイッチやセンサなどの入力機器からON/OFF情報を入力し、ラダー言語などで書かれたシーケンスプログラム(ユーザプログラム)に沿って論理演算を実行して、その演算結果により、PLCにつながれたリレー出力に向けてON/OFF情報を出力、またはバルブやアクチュエーターなどの出力機器に向けて駆動/停止情報の信号を出力することで制御が実行される。このようなPLCの制御は、いわゆるサイクリック処理を繰り返すことで実行される。
【0003】
ところで、PLCと、入力機器並びに出力機器との接続形態は、PLCの端子やI/Oユニットの端子に接続する場合もあれば、ネットワークを介して接続する場合もある。係るネットワークで接続されたネットワークシステムを構築する場合には、上記ON/OFF情報の送受をネットワークを経由して行うことになる。このとき、通常、PLC側がマスタとなり、機器側がスレーブとなるマスタスレーブ方式で情報の伝送が行われる。このマスタスレーブ方式は、リモートI/O方式とも呼ばれるもので、PLCに取り付けた通信マスタユニットと、ネットワーク回線を介してその通信マスタユニットと接続させた通信スレーブユニットと用いる。そして、通信スレーブユニットの端子に複数の入力機器または出力機器を接続する。マスタとスレーブ間の通信は、所定の周期でシリアル通信伝送で行われる。その伝送は、マスタがスレーブに対してデータ要求をし、スレーブはその要求を受けてスレーブにつながる各入力または各出力機器のON/OFF情報(I/O情報)をシリアル信号にして返信する。つまりマスタはネットワークの通信権を制御し、スレーブはその通信権の制御に従ってネットワークに向けて伝送処理をする。
【0004】
なお、マスタとスレーブ間の通信は、PLCのサイクリック処理と同期するように行うようにしてもよいし、非同期で行うようにしてもよい。また、PLCのCPUとマスタ間の情報のやりとりは、PLCのI/Oリフレッシュ処理で行うことでも、周辺処理で行うことでもどちらでもよい。また1台のマスタに対して複数のスレーブが接続して、互いに通信することもできる。
【0005】
一方、最近ではPLCによる制御においても、ロボット機械や、プレス機、切断機などの安全性の要求が高いところでの用途を想定したものがある。例えば、ロボット制御では、制御系の異常や故障でロボットアームが人体と接触して人身事故に至らないようにすべく、安全システムや安全ネットシステムと呼ばれるところに導入されつつある。その場合には、制御系の要素としてのPLCや各機器自体、そしてネットワークにも安全機能を組み込まれたもので構成される。ここで「安全機能」とは、安全であることを確認し、出力を行う機能を言う。また、「安全システム」は、例えばCPUその他の各処理部等を二重化して、両者の不一致を検知して処理部が異常と判断した場合、何らかの原因でネットワークに異常(正常な通信ができない)が生じた場合や、機械システムの緊急停止スイッチが押下されたり、ライトカーテンなどの多光軸光電センサにより危険領域に人(身体の一部)の進入を検出したときなどの危険状態になった場合に、確実に機械システムを安全な状態に動作する機能、またはフェイルセーフが働いて機械システムが安全な状態で動作を強制的に停止するようにする機能である。換言すると、安全機能により、安全であることが格納されたときのみ出力し、機械を動かすシステムである。よって、安全が確認できない場合には、機械が停止する。
【0006】
上記した安全機能を備えた安全システムや安全ネットワークシステムを構築する場合、ネットワークに接続される装置(PLC,スレーブ並びにスレーブに接続される機器等)は全て安全機能を備えたものを用いる必要があった。これは、1つでも安全機能のない装置が組み込まれていると、その装置を含む制御やその装置とのデータ通信にフェイルセーフが働かないこととなり、システム全体の安全機能を保証できないためである。
【0007】
ところでPLCによる制御において、必ずしもシステム全体に安全機能が必要であるとは限らない。しかし、一部でも安全機能の保証が必要ならば安全システムを用いることとなるので、その中に安全機能のない装置を含めることができない。そうなると、本来安全機能の必要のない箇所にも安全PLCや安全機器が使われることになる。安全機能付きの装置は、通常の装置に比べて高価であることから、システム全体でコスト高となってしまう。
【0008】
また、既に安全機能のない従来PLCに基づくネットワークシステムを構築している環境に、あとから部分的に安全機能をもつ装置や安全PLCを追加導入しようとした場合、既存の従来設備に安全機能を備えた装置を混在させようとしても、うまくできなかった。つまり、安全機能のない既存部分と安全機能をもつ部分とを完全に分離する必要があり、同一環境で両者を混在させることができなかった。もちろん、既存の設備を廃棄し、新たに安全ネットワークシステムを設置することは考えられるが、多大な置き換え工数が必要となってしまう。
【0009】
一方、上記した点に鑑み、安全機能が必要な箇所についてのみ安全ネットワークを構築したいという考えもある。しかし、前述のように安全系と非安全系を分離することになり、両者の間でのデータの受け渡しが困難となる。さらに、安全系と非安全系のネットワークシステムを独立して併設することになるので設定・管理ツールも2種類必要となるばかりでなく、係る2種類のツールを使い分けなければならず、煩雑となる。
【0010】
この発明は、上記の課題を解決するべく、安全系と非安全系をうまく混在した状態でコントローラを実現し、安全系と非安全系とで共通処理として扱える部分は共通するとともに、安全系の安全機能は保証できる安全ユニット及びコントローラシステム並びにコントローラの連結方法及びコントローラシステムの制御方法並びにコントローラシステムのモニタ方法を提供することを目的とする。
【発明の開示】
【課題を解決するための手段】
【0011】
上記した目的を達成するため、この発明による安全ユニットは、CPUユニットを含む複数の非安全ユニットを連結して構成される非安全コントローラに接続可能で、安全機能処理を実行するものである。そして、前記CPUユニットに連係するためのCPUバスと、他の安全ユニットに連係するための安全用専用バスを備えている。
【0012】
また、別の解決手段としては、CPUユニットを含む複数の非安全ユニットを連結して構成される非安全コントローラに接続可能な安全ユニットであって、前記CPUユニットに連係するためのCPUバスと、安全機能処理を実行する処理部とを備え、前記CPUバスを介して前記CPUユニットとの間でデータの送受を行うように構成することもできる。
【0013】
なお、安全ユニットは、例えば安全コントローラ,安全バスマスタ,安全I/O及びそれら機能の複合などがある。また、安全用専用バスは、実施の形態では安全用専用バス11に対応する。つまり、「安全用専用バス」とは、安全機能処理を実現するための情報(データ)の送受を行うためのバスであり、安全ユニットのみが接続される。但し、安全ユニット内でクローズな世界を構築できていれば、他の非安全情報を送受するのに用いてもよい。あくまでも非安全ユニットから直接アクセスできなければよい。また、「安全機能」とは、いわゆるフェールセーフ機能のことであり、コントローラなどの制御で異常が生じた場合や通信異常が生じた場合に制御停止させるともに、コントローラの停止により出力対処の機器や制御機器が安全な状態を維持するようにする機能である。また制御自体が暴走しないようにしている。制御停止が必要な場合の例としては、コントローラのCPUその他の各処理部等を二重化して両者の不一致を検知した場合、何らかの原因でネットワークに異常が生じた場合、機械システムの緊急停止スイッチが押下された場合、ライトカーテンなどの多光軸光電センサにより危険領域に人(身体の一部)の進入を検出したときなどの危険状態になった場合などがある。そして、上記の場合には、安全機能により、確実に制御対象の機械システムを安全な状態に動作させる、またはその動作に加えて安全な状態で停止させる、またはフェイルセーフが働いて機械システムが安全な状態で動作を強制的に停止させる。
【0014】
この発明によれば、安全用専用バスを設けたため、安全系の信頼性が確保できる。つまり、非安全系を構成する非安全ユニットと安全ユニットを連結し、非安全系と安全系とを混在させたとしても、少なくとも安全機能処理をするためのデータは安全用専用バスを用いることにより、信頼性が得られる。
【0015】
これにより、非安全系と安全系を混在したコントローラを形成することができる。よって、省スペース化が図れるとともに、安全ユニットを非安全系のコントローラ(PLC)の高機能ユニットとして管理できる。
【0016】
また、安全機能が必要な箇所と必要でない箇所に対し、それぞれ適切なユニット(安全ユニット)を用意し、それらを連結することにより、適材適所な設置となり、不必要にコストが高くなることが抑制される。そして、既に非安全系のコントローラが設置されている場合には、既設のコントローラに、本発明の安全ユニットを接続することにより、安全機能が必要な箇所のみシステムを置き換えることができ、既存の設備・資源の有効利用が図れる。よって、既に非安全系のコントローラ(PLC)を使用している環境に、安全システムを容易に増設できる。
【0017】
また、安全系構成管理情報を記憶する安全系構成管理情報記憶手段を備え、全ての安全ユニットを管理・照合するマスタ機能を備えるとよい。マスタ機能は、実施の形態では、安全ユニット1dのMPU12により実現される。この安全ユニットが、安全ユニットを複数連結する場合における安全ユニット間でのデータの送受の管理をするマスタとなる。そして、複数の安全ユニットの中で、安全系を制御する主となる安全ユニット(マスタ)か否かを設定する設定手段を備えるとよい。設定手段は、実施の形態では、ユーザインタフェース21に対応する。このように設定手段を設けることにより、ユーザがどの安全ユニットがマスタであるかを設定したり、後で確認することが容易にできる。
【0018】
更に、ツールインタフェースを備え、接続されたツールからの要求に従い、前記CPUバスを介して前記他の安全ユニット或いは前記非安全ユニットに保有された情報を取得する機能を備えることができる。
【0019】
また、この発明のコントローラシステムでは、CPUユニットを含む複数の非安全ユニットを連結して構成される非安全コントローラに、上記した各発明の安全ユニットを連結することにより構成できる。この場合に、CPUユニットは、前記CPUバスを経由して前記安全ユニット,前記非安全ユニットを問わず、データ読み出しを可能とするとよい。
【0020】
この発明によれば、安全ユニットの全てにCPUユニットが制御するCPUバスを持たせているので、CPUユニットは、そのCPUバスを経由して安全ユニット,非安全ユニットを問わず、全てのユニットのデータ読み出しが可能となる。逆に、安全ユニットは、CPUユニット経由で非安全ユニットのデータ読み出しが可能となる。
【0021】
従って、CPUユニットにツールを接続すると、非安全系はもちろんのこと安全系のユニットの構成情報を取得することができる。同様に、安全ユニットにツールを接続すると、安全系はもちろんのこと非安全系のユニットの構成情報を取得することができる。
【0022】
またこの発明における非安全コントローラと安全コントローラとの連結方法について説明すると、安全コントローラを構成する複数の安全ユニットのそれぞれは安全用専用バスで連結して、各安全ユニット間で情報のやりとりができるようにしているが、それに加えて、非安全コントローラのCPUバスを安全コントローラの各安全ユニットに対して接続する。このときCPUバスが各安全ユニットに対して分岐するようにしている(いわゆるマルチドロップ)。つまり、CPUバスを安全コントローラまで延長して連結しているわけである。そしてこのCPUバスを介して非安全コントローラのCPUユニットと安全ユニットとの間でデータの送受や情報のやりとりを行うようにしている。
【0023】
またこの発明における制御方法として、非安全コントローラと安全コントローラとをコントローラシステムとして構成し、非安全コントローラのCPUバスを安全コントローラのCPUユニットまで延長して連結する。このとき安全コントローラのCPUユニット以外の安全ユニットを含めてCPUバスで連結しても良い。そして、非安全コントローラの制御として、CPUバスを介して非安全コントローラの各ユニットに対してI/O情報を受け渡しすることに加えて、CPUバスを介して安全コントローラが扱う安全制御用のI/O情報を非安全コントローラが入力するようにしている。さらに、安全コントローラの安全機能制御として、安全用専用バスを介して各安全ユニットに対してI/O情報を受け渡しすることでコントローラシステムの制御が行われる。
【0024】
なお、非安全コントローラが安全制御用I/O情報を入力する場合には、安全コントローラのCPUユニットのシステムメモリ(実施の形態のシステムRAM14に相当)のI/O情報格納領域や、ネットワーク経由のI/O情報記憶部(実施の形態のI/O情報記憶部22に相当)から取り込むようにすればよい。なお、それに替えて、CPUバスを他の安全ユニットに連結して、安全CPUユニットを経由せずに安全ユニットから直接、そのユニットに接続された機器のI/O情報やそのユニットが格納しているI/O情報を取り込むようにしてもよい。また、安全コントローラにおいて、非安全コントローラ用のI/O情報を取り込んで、それを制御に利用すると安全機能が保証できなくなることから、前記非安全コントローラの制御による情報を取り込まないようにしている。これは安全系のユニット(CPUユニットまたは各ユニット)が非安全系のユニット(コントローラ、CPUユニット)からの制御情報の入力を拒否するようにしてもよいし、非安全系のユニットが安全系ユニットに向けて制御情報を出力しないようにしてもよい。つまり非安全コントローラが構成管理情報に基づいて制御情報やI/O情報を安全系ユニット向けた送信を禁止するようにしてもよい。
【0025】
また、この発明におけるモニタ方法として、非安全コントローラと安全コントローラとを連結したコントローラシステムにて、非安全コントローラのCPUユニットにツールを接続し、非安全コントローラのCPUユニットがそのツールから要求を受けることで、そのCPUユニットが要求に応じた処理をすることで、安全コントローラに保有された情報を取得し、取得情報を外部ツールへ送信するようにしている。もちろん、非安全系の制御情報も同様に外部ツールへ送信することができる。その後、ツール側で送信情報を受取り、付属のモニタ画面で情報を表示したり、送信情報をロギング記録したりする。こうすることで、非安全系と安全系とで共通のツールにより、制御情報やコントローラの状態をモニタをすることができる。
【0026】
また、この発明には、非安全コントローラと安全コントローラとの両方の設定を共通のツールで行う方法がある。それは非安全コントローラと安全コントローラとを有し、非安全コントローラのCPUバスを安全コントローラまで延長して連結したコントローラシステムにおいて、非安全コントローラのCPUユニットにツールインタフェースを備えて、そのインタフェースにツールを接続し、そのツールからの命令に従って非安全コントローラのCPUユニットが処理をすることで、CPUバスを介して安全コントローラに所定の設定をするというものである。
【0027】
またこの発明におけるモニタ方法として、ツールを安全コントローラのCPUユニットにつなげて、接続されたツールからの要求に従って安全CPUユニットが処理を行い、CPUバスを介して非安全コントローラに保有された情報を取得し、その取得情報を安全CPUユニットのツールインタフェースを介して外部のツールへ送信するようにしている。なお、接続されたツールからの要求に従って安全CPUユニットが処理を行い、安全コントローラまたは安全ユニットに保有された情報を取得して、ツールに送信することを加えても良い。
【0028】
さらにまた、この発明では、コントローラシステムの設定方法として、安全コントローラのCPUユニットにツールを接続し、そのツールからの命令に従って安全コントローラのCPUユニットが処理することにより、CPUバスを介して非安全コントローラに対して所定の設定をするようにしている。このとき、安全コントローラのCPUユニットが処理することにより、CPUバスまたは安全用専用バスを介して安全コントローラまたは安全ユニットに対して所定の設定をするようにしてもよい。
【発明の効果】
【0029】
以上のように、この発明では、CPUバスと安全用専用バスを設け、安全用専用バスは安全ユニットのみアクセス可能としたため、安全系と非安全系を混在したコントローラを実現することができる。また、安全系と非安全系間のデータの送受もCPUバスを用いて容易に行うことができる。一体化することにより省スペース化が図れる。
【発明を実施するための最良の形態】
【0030】
本発明をより詳細に説明するにあたり、添付の図面に従ってこれを説明する。図1は、本発明が適用されるネットワークシステムの一例を示しており、図2はコントローラたるPLC1の内部構造の一例を示している。図1並びに図2に示すように、本実施の形態では、複数(本例では6個)のユニット1a,1b,1c,1d,…を連結してPLC1が構成されている。本実施の形態のPLC1は、従来と異なり安全機能のない非安全系のネットワークシステムを構築するためのユニット(非安全ユニット)と、安全ネットワークシステムを構築するための機能を有するユニット(安全ユニット)を混在状態で連結することによって形成されている。
【0031】
具体的には、3つの非安全ユニット1aから1cと、3つの安全ユニット1dから1fを備えている。非安全ユニット1aはいわゆるCPUユニット、1bはI/Oユニット、1cは通信マスタユニットである。通信マスタユニット1cには、非安全系のネットワーク3が接続されるとともに、そのネットワーク3には入力機器或いは出力機器などの各種の機器2が接続される。これにより、PLC1は、機器2とともに通常の従来から一般に用いられている非安全のネットワークシステムを構築する。機器2は通信マスタユニット1cとシリアル通信するものであり、スレーブユニットと呼ばれるものである。CPUユニット1aはいわゆるサイクリック処理を行うものである。サイクリック処理は、I/Oリフレッシュ処理,ユーザープログラム実行処理,周辺処理を繰り返し行う処理である。I/Oリフレッシュ処理は、入力機器のON/OFF情報をPLCのCPU部のメモリに取込む処理と、前のサイクルにてユーザープログラムが実行処理された結果を出力機器へ信号出力する処理である。入出力機器は、I/Oユニット1bまたは機器2に接続されている。ユーザープログラム実行処理は、入力機器からの入力情報に基づいてユーザープログラムの条件に照らして演算実行する処理である。周辺処理は、PLCにつながれたネットワーク回線で通信を行う処理である。通信相手としては、ツールや上位コンピュータ端末や、リモートI/Oのスレーブなどがある。
【0032】
安全ユニット1dは、安全機能を持ったユニット1d〜1fを統括することができるCPUユニット相当であり、CPUユニット1aと同様にサイクリック処理を行うことに加えて、安全機能を実現できる構成になっている。また、安全ユニット1dには安全ネットワーク7が接続されるとともに、その安全ネットワーク7には安全機器6が接続される。安全機器6の具体例としては、ライトカーテンセンサ,安全スイッチ,安全用途アクチュエータなどの入力機器または出力機器を含む。また、安全ユニット1dが通信マスタ機能を持ったものである場合には、安全機器6をスレーブユニット相当としたり、I/Oターミナル相当としてもよく、安全ネットワークでリモートI/Oを構築できる。安全機器6は、入力機器、出力機器または入出力機器が複数個接続されることになり、マスタとはシリアル通信でI/O情報をやりとりする。安全ユニット1eは、安全I/Oユニット相当であり、ネットワーク経由なしに直接的に安全機器(入力機器または出力機器)を接続でき、安全CPUユニット1dのI/Oリフレッシュ処理のタイミングで入力信号を取り込むとともに出力信号を出力する。安全ユニット1fは安全ユニットのひとつとして機能するものであり、例えば安全高機能ユニット、安全アナログユニット、安全モーションコントロールユニットなどがある。
【0033】
そして、図示のようにCPUバス10が全てのユニット1aから1fにまたがって設けられている。CPUバス10は、各ユニット間でデータの送受を可能とする通信バスラインである。そのCPUバス10におけるデータの送受の制御は、非安全系のCPUユニット1aが管理する。つまり、バス権を受け渡しするアービタ制御をCPUユニット1aが行う。また、安全ユニット1dから1fには、上記CPUバス10とは独立した別の安全用専用バス11がまたがって設けられていて、安全ユニット同士がバスにより接続されている。そして、安全ユニット1dから1f間での安全データの送受は、その安全用専用バス11を介して行われる。この安全用専用バス11のバス権の制御は、CPUユニット1aからはできず、安全ユニット1dから1fの中のいずれかのユニットが行う。なお、いずれかのユニットのうち一つがバスマスタ機能をもつようにしてもよい。
【0034】
つまり、全てのユニット1aから1fを接続するCPUバス10と、安全ユニット1dから1fを接続する安全用専用バス11とを別々に設けたので、一連のPLCのなかで、非安全系のユニットが持つデータと安全系のユニットが持つデータとを相互に交換したい場合にはCPUバス10を利用して通信をすることができる。例えば、安全ユニット1dが持つI/O情報をCPUユニット1aに渡すことや、安全ユニット1dが持つ安全ユニット群の各種設定情報をCPUユニット1aに渡すことや、CPUユニット1aから安全ユニット1d〜1fに対して各種設定情報を渡すことができる。なお、CPUユニット1aのI/O情報を安全ユニットに渡すことはしないほうが良い。それは安全機能を有さないI/O情報が安全装置に混入すると、安全装置側で安全機能を確保できなくなるおそれが生じるからである。
【0035】
一方、安全機能を確保したい安全関連のデータについては、安全用専用バス11によるクローズな世界で通信することができる。すなわち、安全機能を実施するためのデータの送受は、安全ユニット1dから1f内で確実に行うことができるようになり、フェイルセーフなどの安全機能を確実に実現できる。要するに、一連のPLCで安全系と非安全系とを混在させつつ、互いに独立関係をも持たせる構成としているのである。
【0036】
また、PLC1にはツール5が接続可能となっていて、ツール5によってユーザプログラムを作成または編集してPLC1へダウンロードしたり、PLC1に格納されたネットワークシステムの情報を収集したりできる。収集情報としては他に、PLCの構成管理情報や、I/O情報(各接点の制御状態など)、各ユニットのI/O情報、各入力接点の状態、出力接点の状態、CPUユニットのI/Oデータ、I/Oユニットのバッファメモリの情報など)、各ユニットの設定情報(初期設定情報、ノード番号、通信ユニットの通信設定など)、安全情報(安全ユニットのI/O情報、各ユニットの動作時間情報、寿命情報、異常履歴情報など)、各ユニットの構成管理情報などがある。
【0037】
次に、各ユニットの具体的な構成を説明する。まず、非安全ユニット1aは、本形態ではCPUユニット1aとなり、非安全系に対する制御、つまりラダーなどで作成されたユーザプログラムを実行したり、CPUバス10のマスタとなったり、PLC1の全体構成の管理をしたりする。前述のように、このCPUユニット1aはいわゆるサイクリック処理を行うもので、I/Oリフレッシュ処理、ユーザープログラム実行処理、周辺処理を繰り返し行う。
【0038】
係る処理は、MPU12が、システムROM13に格納されたシステムプログラム、さらにはユーザプログラム記憶部15に格納されたユーザプログラムを読み出し、システムRAM14のメモリ領域(I/O情報格納エリア)を適宜使用して実行する。更に、構成管理情報記憶部16を有し、PLC1を構成する全ユニットについての情報(構成管理情報)が格納され、この格納された構成管理情報に基づき全体構成の管理をする。構成管理情報記憶部16のデータ構造としては、例えば図3に示すように、スロットNo,ID,製品型式,シリアルNoを関連づけたテーブルとしている。スロットNoは、接続した各ユニットに順に付与される番号であり、IDは種類を特定する情報である。図から明らかなように、このスロットNoは、安全系,非安全系を問わず、全てのユニット1aから1fに付与される。この構成管理情報は、ツール5から各ユニット1a〜1fに対して諸事項を設定するときなどに利用されるものである。
【0039】
さらに、ツールインタフェース17を有しており、このツールインタフェース17にツール5を接続することにより、ユーザプログラムのダウンロード等をしたり、情報を収集したり、PLC1に対して設定をすることができる。また、ツールインタフェース17と内部バスでつながるMPU12は、インタフェース18を介してCPUバス10に連携されていて、ツール5と各ユニット1b〜1fとが信号送受信できるようになっている。例えば、ツール5側でスロットNo(ユニット番号に相当)により設定対象のユニットを特定し、ツール5側でその特定したユニットの設定情報を入力し、特定したユニットへ設定情報をダウンロードする。このダウンロードは、ツール5,ツールインタフェース17,MPU12,インタフェース18,CPUバス10の経路を経て各ユニットへ至る。
【0040】
非安全ユニット1b,1cは、非安全機能の実行をするもので、MPU12がインタフェース18を介してCPUバス10に接続され、CPUユニット1a等との間でデータの送受を行う。MPU12は、システムROM13,システムRAM14にアクセスし、各ユニットの機能を実現するための所定の処理を実行する。
【0041】
本形態では、非安全ユニット1bは、I/Oインタフェース19を備えた非安全系のI/Oユニットであり、このI/Oインタフェースに直接所定のI/O機器を接続する。また、非安全ユニット1cは通信インタフェース20を備えた非安全系の通信ユニットである。従って、この非安全ユニット1c(通信ユニット)の通信インタフェース20がネットワーク3に接続され、その非安全系ネットワーク3に接続された機器2とともに、非安全系のネットワークシステムを構築する。
【0042】
なお、この非安全系のネットワークシステムは、従来から一般に用いられているPLCによるネットワークシステムであり、「非安全系」と称しているもののその内容は従来公知のものである。また、既設の設備の場合もある。
【0043】
一方、安全ユニット1dから1fは、安全機能の実行をするもので、安全用専用バス11に接続される。この安全用専用バス11は、安全ユニット1dから1fのみが接続され、安全機能を実現するのに適していて、従来のCPUバス10とは独立して設けられている。更に、この安全ユニット1dから1fは、CPUバス10にも接続されており、このCPUバス10を介して非安全ユニットとの間で必要なデータの送受をできるようにしている。そして、図示のように各安全ユニット1dから1fにも、各機能を実行するために、MPU12と、その実行するためのプログラムを格納したシステムROM13並びに演算実行時に使用するシステムRAM14を備えている。各MPU12は、インタフェース18を介してCPUバス10に接続されるとともに、安全用インタフェース24を介して安全用専用バス11に接続される。
【0044】
更に、複数の安全ユニット1dから1fの中の1つは、安全用専用バス11のマスタとなり(図の例では符号1d)、安全系構成管理情報記憶部25に、安全ユニット1dから1fの構成管理情報を格納する。安全系構成管理情報記憶部25のデータ構造としては、例えば図4に示すようになっている。
【0045】
この図4と図3を比較すると明らかなように、格納する情報の種類は同じ(スロットNo,ID,製品型式,シリアルNo)であるが、図3の構成管理情報記憶部16に格納するのは全てのユニットについての構成管理情報であったが、図4に示す安全系構成管理情報は、安全系を構成する安全ユニット1dから1fについてのみとしている点で相違する。そして、スロットNo.(安全スロットNo.)も新たに振り直す。つまり、安全ユニット1dは、スロットNo.は「4」となり安全スロットNoは「1」となる。同様に、安全ユニット1e,1fは、それぞれスロットNo.は「5」,「6」となり安全スロットNoは「2」,「3」となる。
【0046】
更にまた、安全ユニット1dには、ツールインタフェース17と通信インタフェース20を備えており、これらのインタフェースを介してツール5や安全ネットワーク7に接続できるようになっている。また、この安全ネットワーク7に接続される安全機器6との間でシリアル通信をすることで、各安全機器6のI/O情報を取り込んでI/O情報記憶部22に記憶保持する。このI/O情報記憶部22のデータ構造としては、図5に示すようになる。つまり、安全ユニット1dがリモートI/Oの通信マスタユニット相当になって、安全機器6が通信スレーブ相当として動作することで、安全ネットワークを介して離れた場所にある機器(スイッチやセンサなどの入力機器、アクチュエータなどの出力機器)とやりとりができる。なお、安全機器6自体が、一つ一つの入力機器や出力機器になっていて、それぞれの機器がネットワーク7に直接出力するインターフェース手段を持っていても良い。また、一つの安全機器6が、複数の入力または出力機器を接続するもので、いわゆるスレーブユニットやターミナルユニットであってもよい。この場合には複数の機器のI/O情報をパラレル/シリアル相互変換してネットワークに信号送信または受信する。
【0047】
さらに、安全ユニット1dには、ユーザインタフェース21を設けている。このユーザインタフェース21は、各種スイッチからなり、各種の設定を行うようになっている。一例を示すと、マスタユニットであるか否かの設定をすることに用いる。なお、安全ユニット1dは、安全系のマスタであるとともに、通信ユニットも構成しているが、それらの機能を分けて別々のユニットとして構成してももちろん良い。
【0048】
安全ユニット1e並びに安全ユニット1fも、CPUバス10並びに安全用専用バス11を有し、MPU12は、インタフェース18並びに安全用インタフェース24を介して各バス10,11に接続される。さらに、安全ユニット1eは、I/Oユニットを構成する。すなわち、I/Oインタフェース19を備え、このI/Oインタフェース19に接続されたI/O安全機器の安全情報を取得し、I/O情報記憶部23に格納する。I/O情報記憶部23におけるデータ構造の一例を示すと、図6に示すようになっている。また、これら安全機器とのデータの送受や、I/O情報記憶部23への格納その他の処理は、システムROM13,システムRAM14にアクセスしながらMPU12が行う。
【0049】
次に、非安全系のマスタとなるCPUユニット1aに設けられたMPU12の機能について説明する。まず、電源が投入されると(ST1)、構成管理情報と実際のユニットをチェックし、一致しているか否かを判断する(ST2)。つまり、CPUバス10に接続された各ユニット(安全系,非安全系)が、正しく接続されているか否か等を判断する。そして、一致していない場合には、構成異常となり、動作を停止する(ST3,ST4)。
【0050】
一方、構成チェックでOKとなると運転開始命令を待ち(ST5)、開始命令を受けると通常のサイクリック制御動作に移行する。つまり、まずCPUバスのリフレッシュ処理を実行する(ST6)。これはI/Oリフレッシュと呼ばれるもので、CPUユニット1aのシステムRAM14と他のユニット1b,1c(必要に応じて1d〜1f)のシステムRAM14とに格納されているI/Oデータを書き換えして、最新のI/Oデータに更新する処理である。そして、このI/Oリフレッシュ処理で得た最新の入力データに基づいてユーザプログラムを実行する(ST7)。その実行結果は最新出力データとしてシステムRAM14に書き込みされる。この実行結果は、次回のI/Oリフレッシュ処理時に他のユニットへ出力データとして送られる。そして、CPUユニット1aのツールインタフェースからの処理要求の有無を判断し(ST8)、要求がない場合には、リフレッシュ処理とユーザプログラムの実行を繰り返し行う。そして、CPUユニット1aに接続されたツール5から処理要求があった場合(ST8でYes)には、ツール処理を実行する。この処理は前述の周辺処理のことである。この周辺処理を終えるか、所定時間だけ周辺処理を行った後、ステップ6に戻る。その後は通常のサイクリック実行処理を繰り返し行われる。周辺処理として例えば、I/O情報のモニタ(読み出し)や、I/O情報の書き換えを行う処理ができる。I/O情報の読み出しについては非安全系でも安全系でも良いが、書き込みについては安全系に対してできないようにしている。他にユーザプログラムの取り出しや、構成管理情報の読み出しや更新をできるようにしても良い。なお周辺処理については後述もしている。
【0051】
この非安全系のPLC処理をCPUユニット1aで行う際に、必要に応じて安全系のI/O情報を利用してもよい。その場合には、どの安全ユニットにつながれたどの安全機器のI/O情報を利用するかを、構成管理情報をもとにI/O割付をする。I/O割付けは、システムRAM14の中のI/O情報エリアと先の安全機器との対応付けをすることである。この割付けをしておくことでCPUユニット1aのMPU12がCPUバス10を経由して、特定の安全ユニットの安全機器のI/O情報を獲得する。具体的なやりかたとしては、安全ユニット1d(CPUユニット相当)に備えられたシステムRAM14に格納された各安全ユニットのI/O情報またはネットワーク上の機器のI/O情報記憶部23に格納されたデータを、CPUユニット1aのMPU12の処理により、CPUバス10を経由して獲得する方法がある。それに限らず、安全ユニット1e、1fからI/O情報を獲得してもよい。
【0052】
次に、安全ユニット1dから1fのMPU12の機能について説明する。図8に示すように、電源が投入されると(ST11)、安全系マスタであるか否かを判断する(ST12)。この判断は、ユーザインタフェース21の設定に基づき行う。なお、安全系マスタか否かの設定がユーザインタフェース21を用いるのではなく、例えば、安全系マスタを安全ユニットNo.が「1」に設定するようにすると、ステップ12の分岐判断は、安全系ユニットNo.をチェックすることにより行うことになる。
【0053】
安全系マスタの場合には、ステップ12でYesとなりステップ13に進み、安全バスマスタと認識し、安全系構成管理情報と実際のユニット構成をチェックし、一致しているか否かを判断する(ST14)。つまり、安全用専用バス11に接続された各安全ユニット1dから1fが、正しく接続されているか否か等を判断する。そして、一致していない場合には、構成異常となり、動作を停止する(ST23,ST24)。
【0054】
一方、安全系のバス構成がOKとなると、通常のサイクリック制御動作に移行する。つまり、安全用専用バス11のリフレッシュ処理を実行する(ST15)。この実行は、安全マスタ1dのシステムRAM14と他ユニット1e、1fのシステムRAM14とで双方格納されているI/Oデータを交換して、最新のI/Oデータに更新する処理である。この処理によって安全マスタ1dにとっては、他ユニット1e、1fからの入力情報を取り込んで入力情報を最新のものに更新することと、出力情報を他ユニットに渡して他ユニット側の出力情報を最新のものに更新することになる。次に、このI/Oリフレッシュ処理で得た最新の入力データに基づいて、安全機能処理を実行する(ST16)。この安全機能処理とは、安全マスタ1dにおけるユーザプログラム実行のことであり、入力情報に伴って予め決まった論理演算を処理し、その演算結果を安全機器を動作させるための出力情報として得る処理をいう。その後、CPUバス10を介して或いは安全ユニット1dのツールインタフェースからツール5の処理要求の有無を判断する(ST17)。そして、要求がない場合には、ステップ15のリフレッシュ処理に戻り、通常のサイクリック処理を繰り返し行うことになる。一方、CPUユニット1a或いは安全ユニット1dに接続されツール5から処理要求があった場合(ST17でYes)には、周辺処理としてのツール処理を実行後、ステップ15に戻り通常のサイクリック処理を行う。なお、ツール処理として例えば、安全機器また安全装置全体の状態モニタを行うことがある。もちろんツールを介して安全マスタ1dのシステムRAM14中のI/O情報を書き換えることをできるようにしても良いが、その場合にはパスワード管理をする必要がある。またCPUバス10を介して行うツール処理はモニタなどに限定され、安全機器情報や安全装置に関わる制御情報を書き換えることはできないようにするのが好ましい。その理由は、安全機能処理をするうえで非安全経路から情報を取り込んで、その取り込んだ情報を安全用途に使ってしまうと安全機能が確保できなくなるからである。
【0055】
安全系のデータやりとりについて説明する。安全用専用バス11を介して各ユニット1d〜1f同士でデータ送受信が行われるわけだが、そのときの安全機能として、データ送信の2重化を行っている。例えば、送信側の安全ユニットは安全用専用バス11に2回同一データを送信し、受信側の安全ユニットにて受信した2つのデータが一致をしたことを条件にしてデータを取り込みを有効化するとよい。他の方法としては、送信側安全ユニットが、一つのフレーム中に実データ情報とそれを加工した信号(例えばデジタル的に反転させた信号)とを含めて安全用専用バス11に流し、受信側安全ユニットで受けたフレームの中から実データ部分と、加工信号を復元した信号(例では再びデジタル反転して、反転前の状態に戻した信号)との一致を確認して、一致を条件にして受信データを有効とみなすようにしてもよい。
【0056】
一方、自己が安全系マスタでない場合(ステップ12でNo)には、安全バススレーブと認識し(ST19)、安全バスインタフェース処理要求の有無を判断する(ST20)。そして、要求があった場合には安全バスリフレッシュ処理を行い、所定のデータを安全系のマスタに応答した後、安全機能処理を実行する(ST22)。また、要求がない場合には、そのまま安全機能処理を実行する。
【0057】
次に、ツール処理、つまり、異なるユニットに格納されたデータの呼び出し(取得)処理について説明する。まず、図9は、CPUユニット1aに接続したツール5から安全ユニットが保有する情報を読み出す場合の処理手順を示している。ここで読み出す情報としては、安全系のマスタである安全ユニット1dからは、安全系構成管理情報記憶部25,I/O情報記憶部22に格納された安全系構成管理情報並びにネットワーク上機器I/O情報であり、安全系のI/Oユニットである安全ユニット1eからは、I/O情報記憶部23に格納されたI/O情報である。
【0058】
まず、ツール5が読み出し要求をする(ST30)。CPUユニット1aのMPU12は、係るツール5からの要求を待ち(ST31)、ツールインタフェース17を介して要求を受け付けると、その要求の内容を解析し、読み出すデータを保有する安全ユニットに対して読み出し要求をする(ST32)。この読み出し要求はCPUバス10を介して行われる。
【0059】
一方、安全ユニットのMPU12も、CPUバス10を介して送られてくる要求を待ち(ST33)、要求を受け付けると、内部バスを介して自己が管理・保有する情報(データB&C,データD)を読み出し、読み出した情報(データB&C,データD)をCPUバス10を介してCPUユニット1aのMPU12に向けて送信する(ST34)。
【0060】
CPUユニット1aのMPU12は、要求を出した安全ユニットからの応答を受信すると、その受け取ったデータ(B&C,D)を、内部バス→ツールインタフェース17を介してツール5に送る(ST35)。これにより、ツール5は、データ(B&C,D)を受信することができるので(ST36)、受信したデータをツール5のモニタに表示する(ST37)。
【0061】
これにより、非安全系であるCPUユニット1a側から、安全系の安全ユニットが保有するデータを収集することができる。なお、具体的な図示は省略するが、従来と同様にCPUユニット1aに接続されたツール5は、CPUユニット1aが保有するデータをモニタリングできるのはいうまでもない。
【0062】
次に、安全系のマスタである安全ユニット1dに接続したツール5から、非安全系のCPUユニット1aが保有する情報(構成管理情報記憶部16に格納された管理構成情報:データA)を読み出す場合の処理手順を説明する。図10に示すように、ツール5が読み出し要求をする(ST40)。安全ユニット1dのMPU12は、係るツール5からの要求を待ち(ST41)、ツールインタフェース17を介して要求(読み出すデータを特定する)を受け付けると、その要求の内容を解析し、CPUユニット1aに対して読み出し要求をする(ST42)。この読み出し要求はCPUバス10を介して行われる。
【0063】
一方、CPUユニット1aのMPU12も、CPUバス10を介して送られてくる要求を待ち(ST43)、要求を受け付けると、その要求内容を解析し、自己が保有する構成管理情報(データA)についての読み出し要求と判断すると、内部バスを介して自己が管理・保有する情報(データA)を読み出し、読み出した情報(構成管理情報)をCPUバス10を介して安全ユニット1dのMPU12に向けて送信する(ST44)。
【0064】
安全ユニット1dのMPU12は、要求を出したCPUユニット1aからの応答を受信すると、その受け取ったデータを、内部バス→ツールインタフェース17を介してツール5に送る(ST45)。これにより、ツール5は、情報(データA)を受信することができるので(ST46)、受信したデータをツール5のモニタに表示する(ST47)。
【0065】
これにより、安全系である安全ユニット1d側から、非安全系のCPUユニットが保有するデータを収集することができる。なお、具体的な図示は省略するが、従来と同様に安全ユニット1dに接続されたツール5は、安全ユニット1dが保有するデータB&Cをモニタリングできるのはいうまでもない。
【0066】
さらに、安全ユニット1dに接続したツールから、同じ安全系の他の安全ユニットが保有するデータを読み出す場合の手順を説明する。図11,図12に示すように、まず、ツール5が読み出し要求をする(ST50)。安全ユニット1dのMPU12は、係るツール5からの要求を待ち(ST51)、ツールインタフェース17を介して要求を受け付けると、CPUユニット1aに対して読み出し要求をする(ST52)。この読み出し要求はCPUバス10を介して行われる。
【0067】
一方、CPUユニット1aのMPU12も、CPUバス10を介して送られてくる要求を待ち(ST53)、要求を受け付けると、その要求内容を解析し、ユニットNo.5の安全ユニット1eが保有するI/O情報(データD)についての読み出し要求と判断すると、CPUバス10を介して安全ユニット1eに対してデータDの読み出し要求をする(ST54)。
【0068】
安全ユニット1eのMPU12は、上記したCPUユニット1aに接続されたツールからの読み出しと同様に、CPUバス10を介して送られてくる要求を待ち(ST55)、要求を受け付けると、内部バスを介して自己が管理・保有する情報(データD)を読み出し、読み出した情報(データD)をCPUバス10を介してCPUユニット1aのMPU12に向けて送信する(ST56)。なお、安全ユニット1eのMPU12にとっては、要求もとのツールがどこかは関係がなく、CPUユニット1aからの要求を受け、必要なデータを返す処理を行うだけである。
【0069】
そして、CPUユニット1aのMPU12は、CPUバス10を介して受信したデータDをCPUバス10を介して基の読み出し要求を発した安全ユニット1dのMPU12に向けて送信する(ST58)。
【0070】
安全ユニット1dのMPU12は、CPUユニット1aからの応答を受信すると、その受け取ったデータを、内部バス→ツールインタフェース17を介してツール5に送る(ST59)。これにより、ツール5は、情報(データD)を受信することができるので(ST60)、受信したデータをツール5のモニタに表示する(ST61)。
【0071】
もちろん、安全ユニット1dのMPU12は、直接安全用専用バス11を介して安全ユニット1eからデータDを取得することもできる。但し、上記した処理手順によれば、ユニット間でのデータの送受をCPUバス10を介して行うことができ、安全用専用バス11は、安全処理機能のための情報の送受に専有化できるので好ましい。
【0072】
上記した構成をとることにより、安全ユニット1dから1fを従来のPLCの高機能として管理できる。また、従来の非安全系のPLCと一体化できるので、例えば電源ユニットなど共通化できるものは1つで済むため、省スペース化を図ることができる。さらに、既に非安全系のPLCを使用している環境に安全システムを容易に増設できる。
【0073】
また、非安全ユニット1aから1cと、安全ユニット1dから1fを連結し、バス接続を図ることにより、電気的,機械的に接続され一体化されるので、省配線となる。しかも、安全用の専用バスを持たせることにより、安全系、非安全系の処理が最適(高速)になるばかりでなく、安全用の専用バスを持たせることにより、安全系の信頼性が確保できる。よって、比較的安価に安全システムを構築することができる。
【0074】
さらに、安全ユニット1dから1fの全てにPLCのCPU(CPUユニット1aのMPU12)が制御できるCPUバス10を設けたため、CPUユニット1aのMPU12は、そのCPUバスを経由して安全ユニット,非安全ユニットを問わず、全てのユニットのデータ読み出しが可能となる。また、安全ユニットは、CPUユニット経由で非安全ユニットのデータを読み出すことができる。
【図面の簡単な説明】
【0075】
【図1】本発明に係る安全ネットワークシステムの好適な一実施の形態を示す図である。
【図2】本発明に係るコントローラ(PLC)の好適な一実施の形態の要部を示す図である。
【図3】構成管理情報記憶部16のデータ構造の一例を示す図である。
【図4】安全系構成管理情報記憶部25のデータ構造の一例を示す図である。
【図5】/O情報記憶部22のデータ構造の一例を示す図である。
【図6】I/O情報記憶部23のデータ構造の一例を示す図である。
【図7】CPUユニット1aのMPUの機能を説明するフローチャートである。
【図8】、安全系のマスタである安全ユニット1dのMPUの機能を説明するフローチャートである。
【図9】CPUユニットのMPUが、安全ユニットが保有する情報を収集する、作用を説明するフローチャートである。
【図10】安全ユニットのMPUが、CPUユニットが保有する情報を収集する作用を説明するフローチャートである。
【図11】安全系のマスタである安全マスタユニットのMPUが、他の安全ユニットが保有する情報を収集する作用を説明するフローチャートの一部である。
【図12】安全系のマスタである安全マスタユニットのMPUが、他の安全ユニットが保有する情報を収集する作用を説明するフローチャートの一部である。
【符号の説明】
【0076】
1a CPUユニット
1b,1c ユニット(非安全ユニット)
1d,1e,1f ユニット(安全ユニット)
10 CPUバス
11 安全用専用バス
【技術分野】
【0001】
この発明は、安全ユニット及びコントローラシステム並びにコントローラの連結方法及びコントローラシステムの制御方法並びにコントローラシステムのモニタ方法に関するものである。
【背景技術】
【0002】
FA(ファクトリーオートメーション)で用いられるプログラマブルコントローラ(以下、「PLC」と称する)は、PLCにつながれたスイッチやセンサなどの入力機器からON/OFF情報を入力し、ラダー言語などで書かれたシーケンスプログラム(ユーザプログラム)に沿って論理演算を実行して、その演算結果により、PLCにつながれたリレー出力に向けてON/OFF情報を出力、またはバルブやアクチュエーターなどの出力機器に向けて駆動/停止情報の信号を出力することで制御が実行される。このようなPLCの制御は、いわゆるサイクリック処理を繰り返すことで実行される。
【0003】
ところで、PLCと、入力機器並びに出力機器との接続形態は、PLCの端子やI/Oユニットの端子に接続する場合もあれば、ネットワークを介して接続する場合もある。係るネットワークで接続されたネットワークシステムを構築する場合には、上記ON/OFF情報の送受をネットワークを経由して行うことになる。このとき、通常、PLC側がマスタとなり、機器側がスレーブとなるマスタスレーブ方式で情報の伝送が行われる。このマスタスレーブ方式は、リモートI/O方式とも呼ばれるもので、PLCに取り付けた通信マスタユニットと、ネットワーク回線を介してその通信マスタユニットと接続させた通信スレーブユニットと用いる。そして、通信スレーブユニットの端子に複数の入力機器または出力機器を接続する。マスタとスレーブ間の通信は、所定の周期でシリアル通信伝送で行われる。その伝送は、マスタがスレーブに対してデータ要求をし、スレーブはその要求を受けてスレーブにつながる各入力または各出力機器のON/OFF情報(I/O情報)をシリアル信号にして返信する。つまりマスタはネットワークの通信権を制御し、スレーブはその通信権の制御に従ってネットワークに向けて伝送処理をする。
【0004】
なお、マスタとスレーブ間の通信は、PLCのサイクリック処理と同期するように行うようにしてもよいし、非同期で行うようにしてもよい。また、PLCのCPUとマスタ間の情報のやりとりは、PLCのI/Oリフレッシュ処理で行うことでも、周辺処理で行うことでもどちらでもよい。また1台のマスタに対して複数のスレーブが接続して、互いに通信することもできる。
【0005】
一方、最近ではPLCによる制御においても、ロボット機械や、プレス機、切断機などの安全性の要求が高いところでの用途を想定したものがある。例えば、ロボット制御では、制御系の異常や故障でロボットアームが人体と接触して人身事故に至らないようにすべく、安全システムや安全ネットシステムと呼ばれるところに導入されつつある。その場合には、制御系の要素としてのPLCや各機器自体、そしてネットワークにも安全機能を組み込まれたもので構成される。ここで「安全機能」とは、安全であることを確認し、出力を行う機能を言う。また、「安全システム」は、例えばCPUその他の各処理部等を二重化して、両者の不一致を検知して処理部が異常と判断した場合、何らかの原因でネットワークに異常(正常な通信ができない)が生じた場合や、機械システムの緊急停止スイッチが押下されたり、ライトカーテンなどの多光軸光電センサにより危険領域に人(身体の一部)の進入を検出したときなどの危険状態になった場合に、確実に機械システムを安全な状態に動作する機能、またはフェイルセーフが働いて機械システムが安全な状態で動作を強制的に停止するようにする機能である。換言すると、安全機能により、安全であることが格納されたときのみ出力し、機械を動かすシステムである。よって、安全が確認できない場合には、機械が停止する。
【0006】
上記した安全機能を備えた安全システムや安全ネットワークシステムを構築する場合、ネットワークに接続される装置(PLC,スレーブ並びにスレーブに接続される機器等)は全て安全機能を備えたものを用いる必要があった。これは、1つでも安全機能のない装置が組み込まれていると、その装置を含む制御やその装置とのデータ通信にフェイルセーフが働かないこととなり、システム全体の安全機能を保証できないためである。
【0007】
ところでPLCによる制御において、必ずしもシステム全体に安全機能が必要であるとは限らない。しかし、一部でも安全機能の保証が必要ならば安全システムを用いることとなるので、その中に安全機能のない装置を含めることができない。そうなると、本来安全機能の必要のない箇所にも安全PLCや安全機器が使われることになる。安全機能付きの装置は、通常の装置に比べて高価であることから、システム全体でコスト高となってしまう。
【0008】
また、既に安全機能のない従来PLCに基づくネットワークシステムを構築している環境に、あとから部分的に安全機能をもつ装置や安全PLCを追加導入しようとした場合、既存の従来設備に安全機能を備えた装置を混在させようとしても、うまくできなかった。つまり、安全機能のない既存部分と安全機能をもつ部分とを完全に分離する必要があり、同一環境で両者を混在させることができなかった。もちろん、既存の設備を廃棄し、新たに安全ネットワークシステムを設置することは考えられるが、多大な置き換え工数が必要となってしまう。
【0009】
一方、上記した点に鑑み、安全機能が必要な箇所についてのみ安全ネットワークを構築したいという考えもある。しかし、前述のように安全系と非安全系を分離することになり、両者の間でのデータの受け渡しが困難となる。さらに、安全系と非安全系のネットワークシステムを独立して併設することになるので設定・管理ツールも2種類必要となるばかりでなく、係る2種類のツールを使い分けなければならず、煩雑となる。
【0010】
この発明は、上記の課題を解決するべく、安全系と非安全系をうまく混在した状態でコントローラを実現し、安全系と非安全系とで共通処理として扱える部分は共通するとともに、安全系の安全機能は保証できる安全ユニット及びコントローラシステム並びにコントローラの連結方法及びコントローラシステムの制御方法並びにコントローラシステムのモニタ方法を提供することを目的とする。
【発明の開示】
【課題を解決するための手段】
【0011】
上記した目的を達成するため、この発明による安全ユニットは、CPUユニットを含む複数の非安全ユニットを連結して構成される非安全コントローラに接続可能で、安全機能処理を実行するものである。そして、前記CPUユニットに連係するためのCPUバスと、他の安全ユニットに連係するための安全用専用バスを備えている。
【0012】
また、別の解決手段としては、CPUユニットを含む複数の非安全ユニットを連結して構成される非安全コントローラに接続可能な安全ユニットであって、前記CPUユニットに連係するためのCPUバスと、安全機能処理を実行する処理部とを備え、前記CPUバスを介して前記CPUユニットとの間でデータの送受を行うように構成することもできる。
【0013】
なお、安全ユニットは、例えば安全コントローラ,安全バスマスタ,安全I/O及びそれら機能の複合などがある。また、安全用専用バスは、実施の形態では安全用専用バス11に対応する。つまり、「安全用専用バス」とは、安全機能処理を実現するための情報(データ)の送受を行うためのバスであり、安全ユニットのみが接続される。但し、安全ユニット内でクローズな世界を構築できていれば、他の非安全情報を送受するのに用いてもよい。あくまでも非安全ユニットから直接アクセスできなければよい。また、「安全機能」とは、いわゆるフェールセーフ機能のことであり、コントローラなどの制御で異常が生じた場合や通信異常が生じた場合に制御停止させるともに、コントローラの停止により出力対処の機器や制御機器が安全な状態を維持するようにする機能である。また制御自体が暴走しないようにしている。制御停止が必要な場合の例としては、コントローラのCPUその他の各処理部等を二重化して両者の不一致を検知した場合、何らかの原因でネットワークに異常が生じた場合、機械システムの緊急停止スイッチが押下された場合、ライトカーテンなどの多光軸光電センサにより危険領域に人(身体の一部)の進入を検出したときなどの危険状態になった場合などがある。そして、上記の場合には、安全機能により、確実に制御対象の機械システムを安全な状態に動作させる、またはその動作に加えて安全な状態で停止させる、またはフェイルセーフが働いて機械システムが安全な状態で動作を強制的に停止させる。
【0014】
この発明によれば、安全用専用バスを設けたため、安全系の信頼性が確保できる。つまり、非安全系を構成する非安全ユニットと安全ユニットを連結し、非安全系と安全系とを混在させたとしても、少なくとも安全機能処理をするためのデータは安全用専用バスを用いることにより、信頼性が得られる。
【0015】
これにより、非安全系と安全系を混在したコントローラを形成することができる。よって、省スペース化が図れるとともに、安全ユニットを非安全系のコントローラ(PLC)の高機能ユニットとして管理できる。
【0016】
また、安全機能が必要な箇所と必要でない箇所に対し、それぞれ適切なユニット(安全ユニット)を用意し、それらを連結することにより、適材適所な設置となり、不必要にコストが高くなることが抑制される。そして、既に非安全系のコントローラが設置されている場合には、既設のコントローラに、本発明の安全ユニットを接続することにより、安全機能が必要な箇所のみシステムを置き換えることができ、既存の設備・資源の有効利用が図れる。よって、既に非安全系のコントローラ(PLC)を使用している環境に、安全システムを容易に増設できる。
【0017】
また、安全系構成管理情報を記憶する安全系構成管理情報記憶手段を備え、全ての安全ユニットを管理・照合するマスタ機能を備えるとよい。マスタ機能は、実施の形態では、安全ユニット1dのMPU12により実現される。この安全ユニットが、安全ユニットを複数連結する場合における安全ユニット間でのデータの送受の管理をするマスタとなる。そして、複数の安全ユニットの中で、安全系を制御する主となる安全ユニット(マスタ)か否かを設定する設定手段を備えるとよい。設定手段は、実施の形態では、ユーザインタフェース21に対応する。このように設定手段を設けることにより、ユーザがどの安全ユニットがマスタであるかを設定したり、後で確認することが容易にできる。
【0018】
更に、ツールインタフェースを備え、接続されたツールからの要求に従い、前記CPUバスを介して前記他の安全ユニット或いは前記非安全ユニットに保有された情報を取得する機能を備えることができる。
【0019】
また、この発明のコントローラシステムでは、CPUユニットを含む複数の非安全ユニットを連結して構成される非安全コントローラに、上記した各発明の安全ユニットを連結することにより構成できる。この場合に、CPUユニットは、前記CPUバスを経由して前記安全ユニット,前記非安全ユニットを問わず、データ読み出しを可能とするとよい。
【0020】
この発明によれば、安全ユニットの全てにCPUユニットが制御するCPUバスを持たせているので、CPUユニットは、そのCPUバスを経由して安全ユニット,非安全ユニットを問わず、全てのユニットのデータ読み出しが可能となる。逆に、安全ユニットは、CPUユニット経由で非安全ユニットのデータ読み出しが可能となる。
【0021】
従って、CPUユニットにツールを接続すると、非安全系はもちろんのこと安全系のユニットの構成情報を取得することができる。同様に、安全ユニットにツールを接続すると、安全系はもちろんのこと非安全系のユニットの構成情報を取得することができる。
【0022】
またこの発明における非安全コントローラと安全コントローラとの連結方法について説明すると、安全コントローラを構成する複数の安全ユニットのそれぞれは安全用専用バスで連結して、各安全ユニット間で情報のやりとりができるようにしているが、それに加えて、非安全コントローラのCPUバスを安全コントローラの各安全ユニットに対して接続する。このときCPUバスが各安全ユニットに対して分岐するようにしている(いわゆるマルチドロップ)。つまり、CPUバスを安全コントローラまで延長して連結しているわけである。そしてこのCPUバスを介して非安全コントローラのCPUユニットと安全ユニットとの間でデータの送受や情報のやりとりを行うようにしている。
【0023】
またこの発明における制御方法として、非安全コントローラと安全コントローラとをコントローラシステムとして構成し、非安全コントローラのCPUバスを安全コントローラのCPUユニットまで延長して連結する。このとき安全コントローラのCPUユニット以外の安全ユニットを含めてCPUバスで連結しても良い。そして、非安全コントローラの制御として、CPUバスを介して非安全コントローラの各ユニットに対してI/O情報を受け渡しすることに加えて、CPUバスを介して安全コントローラが扱う安全制御用のI/O情報を非安全コントローラが入力するようにしている。さらに、安全コントローラの安全機能制御として、安全用専用バスを介して各安全ユニットに対してI/O情報を受け渡しすることでコントローラシステムの制御が行われる。
【0024】
なお、非安全コントローラが安全制御用I/O情報を入力する場合には、安全コントローラのCPUユニットのシステムメモリ(実施の形態のシステムRAM14に相当)のI/O情報格納領域や、ネットワーク経由のI/O情報記憶部(実施の形態のI/O情報記憶部22に相当)から取り込むようにすればよい。なお、それに替えて、CPUバスを他の安全ユニットに連結して、安全CPUユニットを経由せずに安全ユニットから直接、そのユニットに接続された機器のI/O情報やそのユニットが格納しているI/O情報を取り込むようにしてもよい。また、安全コントローラにおいて、非安全コントローラ用のI/O情報を取り込んで、それを制御に利用すると安全機能が保証できなくなることから、前記非安全コントローラの制御による情報を取り込まないようにしている。これは安全系のユニット(CPUユニットまたは各ユニット)が非安全系のユニット(コントローラ、CPUユニット)からの制御情報の入力を拒否するようにしてもよいし、非安全系のユニットが安全系ユニットに向けて制御情報を出力しないようにしてもよい。つまり非安全コントローラが構成管理情報に基づいて制御情報やI/O情報を安全系ユニット向けた送信を禁止するようにしてもよい。
【0025】
また、この発明におけるモニタ方法として、非安全コントローラと安全コントローラとを連結したコントローラシステムにて、非安全コントローラのCPUユニットにツールを接続し、非安全コントローラのCPUユニットがそのツールから要求を受けることで、そのCPUユニットが要求に応じた処理をすることで、安全コントローラに保有された情報を取得し、取得情報を外部ツールへ送信するようにしている。もちろん、非安全系の制御情報も同様に外部ツールへ送信することができる。その後、ツール側で送信情報を受取り、付属のモニタ画面で情報を表示したり、送信情報をロギング記録したりする。こうすることで、非安全系と安全系とで共通のツールにより、制御情報やコントローラの状態をモニタをすることができる。
【0026】
また、この発明には、非安全コントローラと安全コントローラとの両方の設定を共通のツールで行う方法がある。それは非安全コントローラと安全コントローラとを有し、非安全コントローラのCPUバスを安全コントローラまで延長して連結したコントローラシステムにおいて、非安全コントローラのCPUユニットにツールインタフェースを備えて、そのインタフェースにツールを接続し、そのツールからの命令に従って非安全コントローラのCPUユニットが処理をすることで、CPUバスを介して安全コントローラに所定の設定をするというものである。
【0027】
またこの発明におけるモニタ方法として、ツールを安全コントローラのCPUユニットにつなげて、接続されたツールからの要求に従って安全CPUユニットが処理を行い、CPUバスを介して非安全コントローラに保有された情報を取得し、その取得情報を安全CPUユニットのツールインタフェースを介して外部のツールへ送信するようにしている。なお、接続されたツールからの要求に従って安全CPUユニットが処理を行い、安全コントローラまたは安全ユニットに保有された情報を取得して、ツールに送信することを加えても良い。
【0028】
さらにまた、この発明では、コントローラシステムの設定方法として、安全コントローラのCPUユニットにツールを接続し、そのツールからの命令に従って安全コントローラのCPUユニットが処理することにより、CPUバスを介して非安全コントローラに対して所定の設定をするようにしている。このとき、安全コントローラのCPUユニットが処理することにより、CPUバスまたは安全用専用バスを介して安全コントローラまたは安全ユニットに対して所定の設定をするようにしてもよい。
【発明の効果】
【0029】
以上のように、この発明では、CPUバスと安全用専用バスを設け、安全用専用バスは安全ユニットのみアクセス可能としたため、安全系と非安全系を混在したコントローラを実現することができる。また、安全系と非安全系間のデータの送受もCPUバスを用いて容易に行うことができる。一体化することにより省スペース化が図れる。
【発明を実施するための最良の形態】
【0030】
本発明をより詳細に説明するにあたり、添付の図面に従ってこれを説明する。図1は、本発明が適用されるネットワークシステムの一例を示しており、図2はコントローラたるPLC1の内部構造の一例を示している。図1並びに図2に示すように、本実施の形態では、複数(本例では6個)のユニット1a,1b,1c,1d,…を連結してPLC1が構成されている。本実施の形態のPLC1は、従来と異なり安全機能のない非安全系のネットワークシステムを構築するためのユニット(非安全ユニット)と、安全ネットワークシステムを構築するための機能を有するユニット(安全ユニット)を混在状態で連結することによって形成されている。
【0031】
具体的には、3つの非安全ユニット1aから1cと、3つの安全ユニット1dから1fを備えている。非安全ユニット1aはいわゆるCPUユニット、1bはI/Oユニット、1cは通信マスタユニットである。通信マスタユニット1cには、非安全系のネットワーク3が接続されるとともに、そのネットワーク3には入力機器或いは出力機器などの各種の機器2が接続される。これにより、PLC1は、機器2とともに通常の従来から一般に用いられている非安全のネットワークシステムを構築する。機器2は通信マスタユニット1cとシリアル通信するものであり、スレーブユニットと呼ばれるものである。CPUユニット1aはいわゆるサイクリック処理を行うものである。サイクリック処理は、I/Oリフレッシュ処理,ユーザープログラム実行処理,周辺処理を繰り返し行う処理である。I/Oリフレッシュ処理は、入力機器のON/OFF情報をPLCのCPU部のメモリに取込む処理と、前のサイクルにてユーザープログラムが実行処理された結果を出力機器へ信号出力する処理である。入出力機器は、I/Oユニット1bまたは機器2に接続されている。ユーザープログラム実行処理は、入力機器からの入力情報に基づいてユーザープログラムの条件に照らして演算実行する処理である。周辺処理は、PLCにつながれたネットワーク回線で通信を行う処理である。通信相手としては、ツールや上位コンピュータ端末や、リモートI/Oのスレーブなどがある。
【0032】
安全ユニット1dは、安全機能を持ったユニット1d〜1fを統括することができるCPUユニット相当であり、CPUユニット1aと同様にサイクリック処理を行うことに加えて、安全機能を実現できる構成になっている。また、安全ユニット1dには安全ネットワーク7が接続されるとともに、その安全ネットワーク7には安全機器6が接続される。安全機器6の具体例としては、ライトカーテンセンサ,安全スイッチ,安全用途アクチュエータなどの入力機器または出力機器を含む。また、安全ユニット1dが通信マスタ機能を持ったものである場合には、安全機器6をスレーブユニット相当としたり、I/Oターミナル相当としてもよく、安全ネットワークでリモートI/Oを構築できる。安全機器6は、入力機器、出力機器または入出力機器が複数個接続されることになり、マスタとはシリアル通信でI/O情報をやりとりする。安全ユニット1eは、安全I/Oユニット相当であり、ネットワーク経由なしに直接的に安全機器(入力機器または出力機器)を接続でき、安全CPUユニット1dのI/Oリフレッシュ処理のタイミングで入力信号を取り込むとともに出力信号を出力する。安全ユニット1fは安全ユニットのひとつとして機能するものであり、例えば安全高機能ユニット、安全アナログユニット、安全モーションコントロールユニットなどがある。
【0033】
そして、図示のようにCPUバス10が全てのユニット1aから1fにまたがって設けられている。CPUバス10は、各ユニット間でデータの送受を可能とする通信バスラインである。そのCPUバス10におけるデータの送受の制御は、非安全系のCPUユニット1aが管理する。つまり、バス権を受け渡しするアービタ制御をCPUユニット1aが行う。また、安全ユニット1dから1fには、上記CPUバス10とは独立した別の安全用専用バス11がまたがって設けられていて、安全ユニット同士がバスにより接続されている。そして、安全ユニット1dから1f間での安全データの送受は、その安全用専用バス11を介して行われる。この安全用専用バス11のバス権の制御は、CPUユニット1aからはできず、安全ユニット1dから1fの中のいずれかのユニットが行う。なお、いずれかのユニットのうち一つがバスマスタ機能をもつようにしてもよい。
【0034】
つまり、全てのユニット1aから1fを接続するCPUバス10と、安全ユニット1dから1fを接続する安全用専用バス11とを別々に設けたので、一連のPLCのなかで、非安全系のユニットが持つデータと安全系のユニットが持つデータとを相互に交換したい場合にはCPUバス10を利用して通信をすることができる。例えば、安全ユニット1dが持つI/O情報をCPUユニット1aに渡すことや、安全ユニット1dが持つ安全ユニット群の各種設定情報をCPUユニット1aに渡すことや、CPUユニット1aから安全ユニット1d〜1fに対して各種設定情報を渡すことができる。なお、CPUユニット1aのI/O情報を安全ユニットに渡すことはしないほうが良い。それは安全機能を有さないI/O情報が安全装置に混入すると、安全装置側で安全機能を確保できなくなるおそれが生じるからである。
【0035】
一方、安全機能を確保したい安全関連のデータについては、安全用専用バス11によるクローズな世界で通信することができる。すなわち、安全機能を実施するためのデータの送受は、安全ユニット1dから1f内で確実に行うことができるようになり、フェイルセーフなどの安全機能を確実に実現できる。要するに、一連のPLCで安全系と非安全系とを混在させつつ、互いに独立関係をも持たせる構成としているのである。
【0036】
また、PLC1にはツール5が接続可能となっていて、ツール5によってユーザプログラムを作成または編集してPLC1へダウンロードしたり、PLC1に格納されたネットワークシステムの情報を収集したりできる。収集情報としては他に、PLCの構成管理情報や、I/O情報(各接点の制御状態など)、各ユニットのI/O情報、各入力接点の状態、出力接点の状態、CPUユニットのI/Oデータ、I/Oユニットのバッファメモリの情報など)、各ユニットの設定情報(初期設定情報、ノード番号、通信ユニットの通信設定など)、安全情報(安全ユニットのI/O情報、各ユニットの動作時間情報、寿命情報、異常履歴情報など)、各ユニットの構成管理情報などがある。
【0037】
次に、各ユニットの具体的な構成を説明する。まず、非安全ユニット1aは、本形態ではCPUユニット1aとなり、非安全系に対する制御、つまりラダーなどで作成されたユーザプログラムを実行したり、CPUバス10のマスタとなったり、PLC1の全体構成の管理をしたりする。前述のように、このCPUユニット1aはいわゆるサイクリック処理を行うもので、I/Oリフレッシュ処理、ユーザープログラム実行処理、周辺処理を繰り返し行う。
【0038】
係る処理は、MPU12が、システムROM13に格納されたシステムプログラム、さらにはユーザプログラム記憶部15に格納されたユーザプログラムを読み出し、システムRAM14のメモリ領域(I/O情報格納エリア)を適宜使用して実行する。更に、構成管理情報記憶部16を有し、PLC1を構成する全ユニットについての情報(構成管理情報)が格納され、この格納された構成管理情報に基づき全体構成の管理をする。構成管理情報記憶部16のデータ構造としては、例えば図3に示すように、スロットNo,ID,製品型式,シリアルNoを関連づけたテーブルとしている。スロットNoは、接続した各ユニットに順に付与される番号であり、IDは種類を特定する情報である。図から明らかなように、このスロットNoは、安全系,非安全系を問わず、全てのユニット1aから1fに付与される。この構成管理情報は、ツール5から各ユニット1a〜1fに対して諸事項を設定するときなどに利用されるものである。
【0039】
さらに、ツールインタフェース17を有しており、このツールインタフェース17にツール5を接続することにより、ユーザプログラムのダウンロード等をしたり、情報を収集したり、PLC1に対して設定をすることができる。また、ツールインタフェース17と内部バスでつながるMPU12は、インタフェース18を介してCPUバス10に連携されていて、ツール5と各ユニット1b〜1fとが信号送受信できるようになっている。例えば、ツール5側でスロットNo(ユニット番号に相当)により設定対象のユニットを特定し、ツール5側でその特定したユニットの設定情報を入力し、特定したユニットへ設定情報をダウンロードする。このダウンロードは、ツール5,ツールインタフェース17,MPU12,インタフェース18,CPUバス10の経路を経て各ユニットへ至る。
【0040】
非安全ユニット1b,1cは、非安全機能の実行をするもので、MPU12がインタフェース18を介してCPUバス10に接続され、CPUユニット1a等との間でデータの送受を行う。MPU12は、システムROM13,システムRAM14にアクセスし、各ユニットの機能を実現するための所定の処理を実行する。
【0041】
本形態では、非安全ユニット1bは、I/Oインタフェース19を備えた非安全系のI/Oユニットであり、このI/Oインタフェースに直接所定のI/O機器を接続する。また、非安全ユニット1cは通信インタフェース20を備えた非安全系の通信ユニットである。従って、この非安全ユニット1c(通信ユニット)の通信インタフェース20がネットワーク3に接続され、その非安全系ネットワーク3に接続された機器2とともに、非安全系のネットワークシステムを構築する。
【0042】
なお、この非安全系のネットワークシステムは、従来から一般に用いられているPLCによるネットワークシステムであり、「非安全系」と称しているもののその内容は従来公知のものである。また、既設の設備の場合もある。
【0043】
一方、安全ユニット1dから1fは、安全機能の実行をするもので、安全用専用バス11に接続される。この安全用専用バス11は、安全ユニット1dから1fのみが接続され、安全機能を実現するのに適していて、従来のCPUバス10とは独立して設けられている。更に、この安全ユニット1dから1fは、CPUバス10にも接続されており、このCPUバス10を介して非安全ユニットとの間で必要なデータの送受をできるようにしている。そして、図示のように各安全ユニット1dから1fにも、各機能を実行するために、MPU12と、その実行するためのプログラムを格納したシステムROM13並びに演算実行時に使用するシステムRAM14を備えている。各MPU12は、インタフェース18を介してCPUバス10に接続されるとともに、安全用インタフェース24を介して安全用専用バス11に接続される。
【0044】
更に、複数の安全ユニット1dから1fの中の1つは、安全用専用バス11のマスタとなり(図の例では符号1d)、安全系構成管理情報記憶部25に、安全ユニット1dから1fの構成管理情報を格納する。安全系構成管理情報記憶部25のデータ構造としては、例えば図4に示すようになっている。
【0045】
この図4と図3を比較すると明らかなように、格納する情報の種類は同じ(スロットNo,ID,製品型式,シリアルNo)であるが、図3の構成管理情報記憶部16に格納するのは全てのユニットについての構成管理情報であったが、図4に示す安全系構成管理情報は、安全系を構成する安全ユニット1dから1fについてのみとしている点で相違する。そして、スロットNo.(安全スロットNo.)も新たに振り直す。つまり、安全ユニット1dは、スロットNo.は「4」となり安全スロットNoは「1」となる。同様に、安全ユニット1e,1fは、それぞれスロットNo.は「5」,「6」となり安全スロットNoは「2」,「3」となる。
【0046】
更にまた、安全ユニット1dには、ツールインタフェース17と通信インタフェース20を備えており、これらのインタフェースを介してツール5や安全ネットワーク7に接続できるようになっている。また、この安全ネットワーク7に接続される安全機器6との間でシリアル通信をすることで、各安全機器6のI/O情報を取り込んでI/O情報記憶部22に記憶保持する。このI/O情報記憶部22のデータ構造としては、図5に示すようになる。つまり、安全ユニット1dがリモートI/Oの通信マスタユニット相当になって、安全機器6が通信スレーブ相当として動作することで、安全ネットワークを介して離れた場所にある機器(スイッチやセンサなどの入力機器、アクチュエータなどの出力機器)とやりとりができる。なお、安全機器6自体が、一つ一つの入力機器や出力機器になっていて、それぞれの機器がネットワーク7に直接出力するインターフェース手段を持っていても良い。また、一つの安全機器6が、複数の入力または出力機器を接続するもので、いわゆるスレーブユニットやターミナルユニットであってもよい。この場合には複数の機器のI/O情報をパラレル/シリアル相互変換してネットワークに信号送信または受信する。
【0047】
さらに、安全ユニット1dには、ユーザインタフェース21を設けている。このユーザインタフェース21は、各種スイッチからなり、各種の設定を行うようになっている。一例を示すと、マスタユニットであるか否かの設定をすることに用いる。なお、安全ユニット1dは、安全系のマスタであるとともに、通信ユニットも構成しているが、それらの機能を分けて別々のユニットとして構成してももちろん良い。
【0048】
安全ユニット1e並びに安全ユニット1fも、CPUバス10並びに安全用専用バス11を有し、MPU12は、インタフェース18並びに安全用インタフェース24を介して各バス10,11に接続される。さらに、安全ユニット1eは、I/Oユニットを構成する。すなわち、I/Oインタフェース19を備え、このI/Oインタフェース19に接続されたI/O安全機器の安全情報を取得し、I/O情報記憶部23に格納する。I/O情報記憶部23におけるデータ構造の一例を示すと、図6に示すようになっている。また、これら安全機器とのデータの送受や、I/O情報記憶部23への格納その他の処理は、システムROM13,システムRAM14にアクセスしながらMPU12が行う。
【0049】
次に、非安全系のマスタとなるCPUユニット1aに設けられたMPU12の機能について説明する。まず、電源が投入されると(ST1)、構成管理情報と実際のユニットをチェックし、一致しているか否かを判断する(ST2)。つまり、CPUバス10に接続された各ユニット(安全系,非安全系)が、正しく接続されているか否か等を判断する。そして、一致していない場合には、構成異常となり、動作を停止する(ST3,ST4)。
【0050】
一方、構成チェックでOKとなると運転開始命令を待ち(ST5)、開始命令を受けると通常のサイクリック制御動作に移行する。つまり、まずCPUバスのリフレッシュ処理を実行する(ST6)。これはI/Oリフレッシュと呼ばれるもので、CPUユニット1aのシステムRAM14と他のユニット1b,1c(必要に応じて1d〜1f)のシステムRAM14とに格納されているI/Oデータを書き換えして、最新のI/Oデータに更新する処理である。そして、このI/Oリフレッシュ処理で得た最新の入力データに基づいてユーザプログラムを実行する(ST7)。その実行結果は最新出力データとしてシステムRAM14に書き込みされる。この実行結果は、次回のI/Oリフレッシュ処理時に他のユニットへ出力データとして送られる。そして、CPUユニット1aのツールインタフェースからの処理要求の有無を判断し(ST8)、要求がない場合には、リフレッシュ処理とユーザプログラムの実行を繰り返し行う。そして、CPUユニット1aに接続されたツール5から処理要求があった場合(ST8でYes)には、ツール処理を実行する。この処理は前述の周辺処理のことである。この周辺処理を終えるか、所定時間だけ周辺処理を行った後、ステップ6に戻る。その後は通常のサイクリック実行処理を繰り返し行われる。周辺処理として例えば、I/O情報のモニタ(読み出し)や、I/O情報の書き換えを行う処理ができる。I/O情報の読み出しについては非安全系でも安全系でも良いが、書き込みについては安全系に対してできないようにしている。他にユーザプログラムの取り出しや、構成管理情報の読み出しや更新をできるようにしても良い。なお周辺処理については後述もしている。
【0051】
この非安全系のPLC処理をCPUユニット1aで行う際に、必要に応じて安全系のI/O情報を利用してもよい。その場合には、どの安全ユニットにつながれたどの安全機器のI/O情報を利用するかを、構成管理情報をもとにI/O割付をする。I/O割付けは、システムRAM14の中のI/O情報エリアと先の安全機器との対応付けをすることである。この割付けをしておくことでCPUユニット1aのMPU12がCPUバス10を経由して、特定の安全ユニットの安全機器のI/O情報を獲得する。具体的なやりかたとしては、安全ユニット1d(CPUユニット相当)に備えられたシステムRAM14に格納された各安全ユニットのI/O情報またはネットワーク上の機器のI/O情報記憶部23に格納されたデータを、CPUユニット1aのMPU12の処理により、CPUバス10を経由して獲得する方法がある。それに限らず、安全ユニット1e、1fからI/O情報を獲得してもよい。
【0052】
次に、安全ユニット1dから1fのMPU12の機能について説明する。図8に示すように、電源が投入されると(ST11)、安全系マスタであるか否かを判断する(ST12)。この判断は、ユーザインタフェース21の設定に基づき行う。なお、安全系マスタか否かの設定がユーザインタフェース21を用いるのではなく、例えば、安全系マスタを安全ユニットNo.が「1」に設定するようにすると、ステップ12の分岐判断は、安全系ユニットNo.をチェックすることにより行うことになる。
【0053】
安全系マスタの場合には、ステップ12でYesとなりステップ13に進み、安全バスマスタと認識し、安全系構成管理情報と実際のユニット構成をチェックし、一致しているか否かを判断する(ST14)。つまり、安全用専用バス11に接続された各安全ユニット1dから1fが、正しく接続されているか否か等を判断する。そして、一致していない場合には、構成異常となり、動作を停止する(ST23,ST24)。
【0054】
一方、安全系のバス構成がOKとなると、通常のサイクリック制御動作に移行する。つまり、安全用専用バス11のリフレッシュ処理を実行する(ST15)。この実行は、安全マスタ1dのシステムRAM14と他ユニット1e、1fのシステムRAM14とで双方格納されているI/Oデータを交換して、最新のI/Oデータに更新する処理である。この処理によって安全マスタ1dにとっては、他ユニット1e、1fからの入力情報を取り込んで入力情報を最新のものに更新することと、出力情報を他ユニットに渡して他ユニット側の出力情報を最新のものに更新することになる。次に、このI/Oリフレッシュ処理で得た最新の入力データに基づいて、安全機能処理を実行する(ST16)。この安全機能処理とは、安全マスタ1dにおけるユーザプログラム実行のことであり、入力情報に伴って予め決まった論理演算を処理し、その演算結果を安全機器を動作させるための出力情報として得る処理をいう。その後、CPUバス10を介して或いは安全ユニット1dのツールインタフェースからツール5の処理要求の有無を判断する(ST17)。そして、要求がない場合には、ステップ15のリフレッシュ処理に戻り、通常のサイクリック処理を繰り返し行うことになる。一方、CPUユニット1a或いは安全ユニット1dに接続されツール5から処理要求があった場合(ST17でYes)には、周辺処理としてのツール処理を実行後、ステップ15に戻り通常のサイクリック処理を行う。なお、ツール処理として例えば、安全機器また安全装置全体の状態モニタを行うことがある。もちろんツールを介して安全マスタ1dのシステムRAM14中のI/O情報を書き換えることをできるようにしても良いが、その場合にはパスワード管理をする必要がある。またCPUバス10を介して行うツール処理はモニタなどに限定され、安全機器情報や安全装置に関わる制御情報を書き換えることはできないようにするのが好ましい。その理由は、安全機能処理をするうえで非安全経路から情報を取り込んで、その取り込んだ情報を安全用途に使ってしまうと安全機能が確保できなくなるからである。
【0055】
安全系のデータやりとりについて説明する。安全用専用バス11を介して各ユニット1d〜1f同士でデータ送受信が行われるわけだが、そのときの安全機能として、データ送信の2重化を行っている。例えば、送信側の安全ユニットは安全用専用バス11に2回同一データを送信し、受信側の安全ユニットにて受信した2つのデータが一致をしたことを条件にしてデータを取り込みを有効化するとよい。他の方法としては、送信側安全ユニットが、一つのフレーム中に実データ情報とそれを加工した信号(例えばデジタル的に反転させた信号)とを含めて安全用専用バス11に流し、受信側安全ユニットで受けたフレームの中から実データ部分と、加工信号を復元した信号(例では再びデジタル反転して、反転前の状態に戻した信号)との一致を確認して、一致を条件にして受信データを有効とみなすようにしてもよい。
【0056】
一方、自己が安全系マスタでない場合(ステップ12でNo)には、安全バススレーブと認識し(ST19)、安全バスインタフェース処理要求の有無を判断する(ST20)。そして、要求があった場合には安全バスリフレッシュ処理を行い、所定のデータを安全系のマスタに応答した後、安全機能処理を実行する(ST22)。また、要求がない場合には、そのまま安全機能処理を実行する。
【0057】
次に、ツール処理、つまり、異なるユニットに格納されたデータの呼び出し(取得)処理について説明する。まず、図9は、CPUユニット1aに接続したツール5から安全ユニットが保有する情報を読み出す場合の処理手順を示している。ここで読み出す情報としては、安全系のマスタである安全ユニット1dからは、安全系構成管理情報記憶部25,I/O情報記憶部22に格納された安全系構成管理情報並びにネットワーク上機器I/O情報であり、安全系のI/Oユニットである安全ユニット1eからは、I/O情報記憶部23に格納されたI/O情報である。
【0058】
まず、ツール5が読み出し要求をする(ST30)。CPUユニット1aのMPU12は、係るツール5からの要求を待ち(ST31)、ツールインタフェース17を介して要求を受け付けると、その要求の内容を解析し、読み出すデータを保有する安全ユニットに対して読み出し要求をする(ST32)。この読み出し要求はCPUバス10を介して行われる。
【0059】
一方、安全ユニットのMPU12も、CPUバス10を介して送られてくる要求を待ち(ST33)、要求を受け付けると、内部バスを介して自己が管理・保有する情報(データB&C,データD)を読み出し、読み出した情報(データB&C,データD)をCPUバス10を介してCPUユニット1aのMPU12に向けて送信する(ST34)。
【0060】
CPUユニット1aのMPU12は、要求を出した安全ユニットからの応答を受信すると、その受け取ったデータ(B&C,D)を、内部バス→ツールインタフェース17を介してツール5に送る(ST35)。これにより、ツール5は、データ(B&C,D)を受信することができるので(ST36)、受信したデータをツール5のモニタに表示する(ST37)。
【0061】
これにより、非安全系であるCPUユニット1a側から、安全系の安全ユニットが保有するデータを収集することができる。なお、具体的な図示は省略するが、従来と同様にCPUユニット1aに接続されたツール5は、CPUユニット1aが保有するデータをモニタリングできるのはいうまでもない。
【0062】
次に、安全系のマスタである安全ユニット1dに接続したツール5から、非安全系のCPUユニット1aが保有する情報(構成管理情報記憶部16に格納された管理構成情報:データA)を読み出す場合の処理手順を説明する。図10に示すように、ツール5が読み出し要求をする(ST40)。安全ユニット1dのMPU12は、係るツール5からの要求を待ち(ST41)、ツールインタフェース17を介して要求(読み出すデータを特定する)を受け付けると、その要求の内容を解析し、CPUユニット1aに対して読み出し要求をする(ST42)。この読み出し要求はCPUバス10を介して行われる。
【0063】
一方、CPUユニット1aのMPU12も、CPUバス10を介して送られてくる要求を待ち(ST43)、要求を受け付けると、その要求内容を解析し、自己が保有する構成管理情報(データA)についての読み出し要求と判断すると、内部バスを介して自己が管理・保有する情報(データA)を読み出し、読み出した情報(構成管理情報)をCPUバス10を介して安全ユニット1dのMPU12に向けて送信する(ST44)。
【0064】
安全ユニット1dのMPU12は、要求を出したCPUユニット1aからの応答を受信すると、その受け取ったデータを、内部バス→ツールインタフェース17を介してツール5に送る(ST45)。これにより、ツール5は、情報(データA)を受信することができるので(ST46)、受信したデータをツール5のモニタに表示する(ST47)。
【0065】
これにより、安全系である安全ユニット1d側から、非安全系のCPUユニットが保有するデータを収集することができる。なお、具体的な図示は省略するが、従来と同様に安全ユニット1dに接続されたツール5は、安全ユニット1dが保有するデータB&Cをモニタリングできるのはいうまでもない。
【0066】
さらに、安全ユニット1dに接続したツールから、同じ安全系の他の安全ユニットが保有するデータを読み出す場合の手順を説明する。図11,図12に示すように、まず、ツール5が読み出し要求をする(ST50)。安全ユニット1dのMPU12は、係るツール5からの要求を待ち(ST51)、ツールインタフェース17を介して要求を受け付けると、CPUユニット1aに対して読み出し要求をする(ST52)。この読み出し要求はCPUバス10を介して行われる。
【0067】
一方、CPUユニット1aのMPU12も、CPUバス10を介して送られてくる要求を待ち(ST53)、要求を受け付けると、その要求内容を解析し、ユニットNo.5の安全ユニット1eが保有するI/O情報(データD)についての読み出し要求と判断すると、CPUバス10を介して安全ユニット1eに対してデータDの読み出し要求をする(ST54)。
【0068】
安全ユニット1eのMPU12は、上記したCPUユニット1aに接続されたツールからの読み出しと同様に、CPUバス10を介して送られてくる要求を待ち(ST55)、要求を受け付けると、内部バスを介して自己が管理・保有する情報(データD)を読み出し、読み出した情報(データD)をCPUバス10を介してCPUユニット1aのMPU12に向けて送信する(ST56)。なお、安全ユニット1eのMPU12にとっては、要求もとのツールがどこかは関係がなく、CPUユニット1aからの要求を受け、必要なデータを返す処理を行うだけである。
【0069】
そして、CPUユニット1aのMPU12は、CPUバス10を介して受信したデータDをCPUバス10を介して基の読み出し要求を発した安全ユニット1dのMPU12に向けて送信する(ST58)。
【0070】
安全ユニット1dのMPU12は、CPUユニット1aからの応答を受信すると、その受け取ったデータを、内部バス→ツールインタフェース17を介してツール5に送る(ST59)。これにより、ツール5は、情報(データD)を受信することができるので(ST60)、受信したデータをツール5のモニタに表示する(ST61)。
【0071】
もちろん、安全ユニット1dのMPU12は、直接安全用専用バス11を介して安全ユニット1eからデータDを取得することもできる。但し、上記した処理手順によれば、ユニット間でのデータの送受をCPUバス10を介して行うことができ、安全用専用バス11は、安全処理機能のための情報の送受に専有化できるので好ましい。
【0072】
上記した構成をとることにより、安全ユニット1dから1fを従来のPLCの高機能として管理できる。また、従来の非安全系のPLCと一体化できるので、例えば電源ユニットなど共通化できるものは1つで済むため、省スペース化を図ることができる。さらに、既に非安全系のPLCを使用している環境に安全システムを容易に増設できる。
【0073】
また、非安全ユニット1aから1cと、安全ユニット1dから1fを連結し、バス接続を図ることにより、電気的,機械的に接続され一体化されるので、省配線となる。しかも、安全用の専用バスを持たせることにより、安全系、非安全系の処理が最適(高速)になるばかりでなく、安全用の専用バスを持たせることにより、安全系の信頼性が確保できる。よって、比較的安価に安全システムを構築することができる。
【0074】
さらに、安全ユニット1dから1fの全てにPLCのCPU(CPUユニット1aのMPU12)が制御できるCPUバス10を設けたため、CPUユニット1aのMPU12は、そのCPUバスを経由して安全ユニット,非安全ユニットを問わず、全てのユニットのデータ読み出しが可能となる。また、安全ユニットは、CPUユニット経由で非安全ユニットのデータを読み出すことができる。
【図面の簡単な説明】
【0075】
【図1】本発明に係る安全ネットワークシステムの好適な一実施の形態を示す図である。
【図2】本発明に係るコントローラ(PLC)の好適な一実施の形態の要部を示す図である。
【図3】構成管理情報記憶部16のデータ構造の一例を示す図である。
【図4】安全系構成管理情報記憶部25のデータ構造の一例を示す図である。
【図5】/O情報記憶部22のデータ構造の一例を示す図である。
【図6】I/O情報記憶部23のデータ構造の一例を示す図である。
【図7】CPUユニット1aのMPUの機能を説明するフローチャートである。
【図8】、安全系のマスタである安全ユニット1dのMPUの機能を説明するフローチャートである。
【図9】CPUユニットのMPUが、安全ユニットが保有する情報を収集する、作用を説明するフローチャートである。
【図10】安全ユニットのMPUが、CPUユニットが保有する情報を収集する作用を説明するフローチャートである。
【図11】安全系のマスタである安全マスタユニットのMPUが、他の安全ユニットが保有する情報を収集する作用を説明するフローチャートの一部である。
【図12】安全系のマスタである安全マスタユニットのMPUが、他の安全ユニットが保有する情報を収集する作用を説明するフローチャートの一部である。
【符号の説明】
【0076】
1a CPUユニット
1b,1c ユニット(非安全ユニット)
1d,1e,1f ユニット(安全ユニット)
10 CPUバス
11 安全用専用バス
【特許請求の範囲】
【請求項1】
CPUユニットを含む複数の非安全ユニットを連結して構成される非安全コントローラに対して接続可能で、安全機能処理を実行する安全ユニットであって、
前記CPUユニットに連係するためのCPUバスと、
他の安全ユニットに連係するための安全用専用バスを備えたことを特徴とする安全ユニット。
【請求項2】
CPUユニットを含む複数の非安全ユニットを連結して構成される非安全コントローラに接続可能な安全ユニットであって、
前記CPUユニットに連係するためのCPUバスと、
安全機能処理を実行する処理部とを備え、
前記CPUバスを介して前記CPUユニットとの間でデータの送受を行うことを特徴とする安全ユニット。
【請求項3】
安全系構成管理情報を記憶する安全系構成管理情報記憶手段を備え、
全ての安全ユニットを管理・照合するマスタ機能を備えたことを特徴とする請求の範囲第2項に記載の安全ユニット。
【請求項4】
ツールインタフェースを備え、
接続されたツールからの要求に従い、前記CPUバスを介して前記他の安全ユニット或いは前記非安全ユニットに保有された情報を取得する機能を備えたことを特徴とする請求の範囲第1項に記載の安全ユニット。
【請求項5】
複数の安全ユニットの中で、安全系を制御する主となる安全ユニットか否かを設定する設定手段を備えたことを特徴とする請求の範囲第1項に記載の安全ユニット。
【請求項6】
CPUユニットを含む複数のユニットをバスにより連結して構成される非安全コントローラと、
安全機能を有するCPUユニットを含む複数の安全ユニットを前記バスとは別の独立バスにより連結して構成される安全コントローラと、を有し
前記非安全コントローラの前記バスを、前記安全コントローラのCPUユニットにも連結して、前記非安全コントローラにおける制御に用いるI/O情報を、前記バスを介して非安全コントローラの各ユニットに対して入力または出力情報を受け渡しするとともに、前記安全ユニットからも入力情報を受けるようにし、
前記安全コントローラにおける安全機能制御に用いるI/O情報を、前記独立バスを介して、前記各安全ユニットに対して入力または出力情報を受け渡しするとともに、前記バスを介して前記非安全コントローラのユニットから入力情報を受けないようにしたことを特徴とするコントローラシステム。
【請求項7】
前記非安全ユニットのCPUユニットはツール装置を接続可能であり、前記バスを経由して前記安全ユニット,前記非安全ユニットを問わず、データ読み出しを可能としたことを特徴とする請求の範囲第6項に記載のコントローラシステム。
【請求項8】
CPUユニットを含む複数のユニットをCPUバスにより連結して構成されるコントローラと、安全機能を有するCPUユニットを含む複数の安全ユニットを独立バスにより連結して構成される安全コントローラとを、連結する方法であって、
安全コントローラの複数安全ユニットそれぞれを、前記コントローラのCPUバスを延長して、その延長したCPUバスにより連結し、
前記CPUバスを介して前記CPUユニットと安全ユニットとの間でデータの送受を行うようにしたことを特徴とするコントローラの連結方法。
【請求項9】
CPUユニットを含む複数のユニットをCPUバスにより連結して構成される非安全コントローラと、安全機能を有するCPUユニットを含む複数の安全ユニットを前記バスとは別の独立バスにより連結して構成される安全コントローラと、を有し、前記非安全コントローラのCPUバスを前記安全コントローラのCPUユニットまで延長して連結したコントローラシステムの制御方法であって、
前記非安全コントローラにおける制御は、前記CPUバスを介して非安全コントローラの各ユニットに対してI/O情報を受け渡しするとともに、必要に応じて前記CPUバスを介して安全コントローラから入力情報を受けることで行い、
前記安全コントローラにおける安全機能制御は、前記独立バスを介して各安全ユニットに対してI/O情報を受け渡しすることで行うとともに、前記非安全コントローラの制御による情報を用いないようにしたことを特徴とするコントローラシステムの制御方法。
【請求項10】
CPUユニットを含む複数のユニットをCPUバスにより連結して構成される非安全コントローラと、安全機能を有するCPUユニットを含む複数の安全ユニットを連結して構成される安全コントローラと、を有し、前記非安全コントローラのCPUバスを前記安全コントローラまで延長して連結したコントローラシステムにおいて、
前記非安全コントローラのCPUユニットにツールインタフェースを備えて、ツールを接続し、
接続されたツールからの要求に従い、CPUユニットの処理により前記CPUバスを介して前記安全コントローラに保有された情報を取得し、
取得した情報を非安全コントローラのCPUユニットのツールインタフェースを介して外部のツールへ送信することを特徴とするコントローラシステムのモニタ方法。
【請求項11】
CPUユニットを含む複数のユニットをCPUバスにより連結して構成される非安全コントローラと、安全機能を有するCPUユニットを含む複数の安全ユニットを連結して構成される安全コントローラと、を有し、前記非安全コントローラのCPUバスを前記安全コントローラまで延長して連結したコントローラシステムにおいて、
前記非安全コントローラのCPUユニットにツールインタフェースを備えて、ツールを接続し、
接続されたツールからの命令に従い、CPUユニットの処理により前記CPUバスを介して前記安全コントローラに対して所定の設定をすることを特徴とするコントローラシステムの設定方法。
【請求項12】
CPUユニットを含む複数のユニットをCPUバスにより連結して構成される非安全コントローラと、安全機能を有するCPUユニットを含む複数の安全ユニットを連結して構成される安全コントローラと、を有し、前記非安全コントローラのCPUバスを前記安全コントローラまで延長して連結したコントローラシステムにおいて、
前記安全コントローラのCPUユニットにツールインタフェースを備えて、ツールを接続し、
接続されたツールからの要求に従い、安全コントローラのCPUユニットの処理により前記CPUバスを介して、少なくとも前記非安全コントローラに保有された情報を取得し、
取得した情報を安全コントローラのCPUユニットのツールインタフェースを介して外部のツールへ送信することを特徴とするコントローラシステムのモニタ方法。
【請求項13】
CPUユニットを含む複数のユニットをCPUバスにより連結して構成される非安全コントローラと、安全機能を有するCPUユニットを含む複数の安全ユニットを連結して構成される安全コントローラと、を有し、前記非安全コントローラのCPUバスを前記安全コントローラまで延長して連結したコントローラシステムにおいて、
前記安全コントローラのCPUユニットにツールインタフェースを備えて、ツールを接続し、
接続されたツールからの命令に従い、安全コントローラのCPUユニットの処理により、前記CPUバスを介して、少なくとも前記非安全コントローラに対して所定の設定をすることを特徴とするコントローラシステムの設定方法。
【請求項1】
CPUユニットを含む複数の非安全ユニットを連結して構成される非安全コントローラに対して接続可能で、安全機能処理を実行する安全ユニットであって、
前記CPUユニットに連係するためのCPUバスと、
他の安全ユニットに連係するための安全用専用バスを備えたことを特徴とする安全ユニット。
【請求項2】
CPUユニットを含む複数の非安全ユニットを連結して構成される非安全コントローラに接続可能な安全ユニットであって、
前記CPUユニットに連係するためのCPUバスと、
安全機能処理を実行する処理部とを備え、
前記CPUバスを介して前記CPUユニットとの間でデータの送受を行うことを特徴とする安全ユニット。
【請求項3】
安全系構成管理情報を記憶する安全系構成管理情報記憶手段を備え、
全ての安全ユニットを管理・照合するマスタ機能を備えたことを特徴とする請求の範囲第2項に記載の安全ユニット。
【請求項4】
ツールインタフェースを備え、
接続されたツールからの要求に従い、前記CPUバスを介して前記他の安全ユニット或いは前記非安全ユニットに保有された情報を取得する機能を備えたことを特徴とする請求の範囲第1項に記載の安全ユニット。
【請求項5】
複数の安全ユニットの中で、安全系を制御する主となる安全ユニットか否かを設定する設定手段を備えたことを特徴とする請求の範囲第1項に記載の安全ユニット。
【請求項6】
CPUユニットを含む複数のユニットをバスにより連結して構成される非安全コントローラと、
安全機能を有するCPUユニットを含む複数の安全ユニットを前記バスとは別の独立バスにより連結して構成される安全コントローラと、を有し
前記非安全コントローラの前記バスを、前記安全コントローラのCPUユニットにも連結して、前記非安全コントローラにおける制御に用いるI/O情報を、前記バスを介して非安全コントローラの各ユニットに対して入力または出力情報を受け渡しするとともに、前記安全ユニットからも入力情報を受けるようにし、
前記安全コントローラにおける安全機能制御に用いるI/O情報を、前記独立バスを介して、前記各安全ユニットに対して入力または出力情報を受け渡しするとともに、前記バスを介して前記非安全コントローラのユニットから入力情報を受けないようにしたことを特徴とするコントローラシステム。
【請求項7】
前記非安全ユニットのCPUユニットはツール装置を接続可能であり、前記バスを経由して前記安全ユニット,前記非安全ユニットを問わず、データ読み出しを可能としたことを特徴とする請求の範囲第6項に記載のコントローラシステム。
【請求項8】
CPUユニットを含む複数のユニットをCPUバスにより連結して構成されるコントローラと、安全機能を有するCPUユニットを含む複数の安全ユニットを独立バスにより連結して構成される安全コントローラとを、連結する方法であって、
安全コントローラの複数安全ユニットそれぞれを、前記コントローラのCPUバスを延長して、その延長したCPUバスにより連結し、
前記CPUバスを介して前記CPUユニットと安全ユニットとの間でデータの送受を行うようにしたことを特徴とするコントローラの連結方法。
【請求項9】
CPUユニットを含む複数のユニットをCPUバスにより連結して構成される非安全コントローラと、安全機能を有するCPUユニットを含む複数の安全ユニットを前記バスとは別の独立バスにより連結して構成される安全コントローラと、を有し、前記非安全コントローラのCPUバスを前記安全コントローラのCPUユニットまで延長して連結したコントローラシステムの制御方法であって、
前記非安全コントローラにおける制御は、前記CPUバスを介して非安全コントローラの各ユニットに対してI/O情報を受け渡しするとともに、必要に応じて前記CPUバスを介して安全コントローラから入力情報を受けることで行い、
前記安全コントローラにおける安全機能制御は、前記独立バスを介して各安全ユニットに対してI/O情報を受け渡しすることで行うとともに、前記非安全コントローラの制御による情報を用いないようにしたことを特徴とするコントローラシステムの制御方法。
【請求項10】
CPUユニットを含む複数のユニットをCPUバスにより連結して構成される非安全コントローラと、安全機能を有するCPUユニットを含む複数の安全ユニットを連結して構成される安全コントローラと、を有し、前記非安全コントローラのCPUバスを前記安全コントローラまで延長して連結したコントローラシステムにおいて、
前記非安全コントローラのCPUユニットにツールインタフェースを備えて、ツールを接続し、
接続されたツールからの要求に従い、CPUユニットの処理により前記CPUバスを介して前記安全コントローラに保有された情報を取得し、
取得した情報を非安全コントローラのCPUユニットのツールインタフェースを介して外部のツールへ送信することを特徴とするコントローラシステムのモニタ方法。
【請求項11】
CPUユニットを含む複数のユニットをCPUバスにより連結して構成される非安全コントローラと、安全機能を有するCPUユニットを含む複数の安全ユニットを連結して構成される安全コントローラと、を有し、前記非安全コントローラのCPUバスを前記安全コントローラまで延長して連結したコントローラシステムにおいて、
前記非安全コントローラのCPUユニットにツールインタフェースを備えて、ツールを接続し、
接続されたツールからの命令に従い、CPUユニットの処理により前記CPUバスを介して前記安全コントローラに対して所定の設定をすることを特徴とするコントローラシステムの設定方法。
【請求項12】
CPUユニットを含む複数のユニットをCPUバスにより連結して構成される非安全コントローラと、安全機能を有するCPUユニットを含む複数の安全ユニットを連結して構成される安全コントローラと、を有し、前記非安全コントローラのCPUバスを前記安全コントローラまで延長して連結したコントローラシステムにおいて、
前記安全コントローラのCPUユニットにツールインタフェースを備えて、ツールを接続し、
接続されたツールからの要求に従い、安全コントローラのCPUユニットの処理により前記CPUバスを介して、少なくとも前記非安全コントローラに保有された情報を取得し、
取得した情報を安全コントローラのCPUユニットのツールインタフェースを介して外部のツールへ送信することを特徴とするコントローラシステムのモニタ方法。
【請求項13】
CPUユニットを含む複数のユニットをCPUバスにより連結して構成される非安全コントローラと、安全機能を有するCPUユニットを含む複数の安全ユニットを連結して構成される安全コントローラと、を有し、前記非安全コントローラのCPUバスを前記安全コントローラまで延長して連結したコントローラシステムにおいて、
前記安全コントローラのCPUユニットにツールインタフェースを備えて、ツールを接続し、
接続されたツールからの命令に従い、安全コントローラのCPUユニットの処理により、前記CPUバスを介して、少なくとも前記非安全コントローラに対して所定の設定をすることを特徴とするコントローラシステムの設定方法。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【公開番号】特開2007−242036(P2007−242036A)
【公開日】平成19年9月20日(2007.9.20)
【国際特許分類】
【出願番号】特願2007−102253(P2007−102253)
【出願日】平成19年4月9日(2007.4.9)
【分割の表示】特願2003−500660(P2003−500660)の分割
【原出願日】平成14年5月31日(2002.5.31)
【出願人】(000002945)オムロン株式会社 (3,542)
【Fターム(参考)】
【公開日】平成19年9月20日(2007.9.20)
【国際特許分類】
【出願日】平成19年4月9日(2007.4.9)
【分割の表示】特願2003−500660(P2003−500660)の分割
【原出願日】平成14年5月31日(2002.5.31)
【出願人】(000002945)オムロン株式会社 (3,542)
【Fターム(参考)】
[ Back to top ]