(57)【特許請求の範囲】
【請求項１】
制御用プロセッサと、通信用プロセッサと、前記制御用プロセッサ及び通信用プロセッサのそれぞれに接続されたブリッジＬＳＩと、該ブリッジＬＳＩに接続されたメモリと、前記ブリッジＬＳＩに接続され制御対象とシステムバスを介して接続するためのシステムバスインターフェイスと、前記ブリッジＬＳＩに接続され端末とインターネットを介して接続するためのネットワークインターフェイスを備え、前記制御用プロセッサは制御プログラムに従い、前記ブリッジＬＳＩに制御信号を送信してブリッジＬＳＩの内部の設定を切替えて前記プラントインターフェイスに接続を切替えプラントインターフェイス介してプラントの状態データを取込んで前記メモリに記憶し、前記プラントの状態データを演算処理を行い演算結果を制御指示として前記プラントインターフェイスに出力し、前記通信用プロセッサは、前記端末からのデータ転送要求を受信すると前記ブリッジＬＳＩの内部の設定を切替えて前記ネットワークインターフェイスに接続し、前記メモリに記憶されているプラント状態のデータを前記ネットワークインターフェイスを介して前記端末に転送することを特徴とするコントローラ。
【請求項２】
制御用プロセッサと、通信用プロセッサと、前記制御用プロセッサ及び通信用プロセッサのそれぞれに接続されたブリッジＬＳＩと、該ブリッジＬＳＩと接続されたメモリと、前記制御用プロセッサとブリッジＬＳＩを介して接続され制御用プロセッサが制御対象を監視，制御するためのシステムバスインターフェイスと、前記通信用プロセッサとブリッジＬＳＩを介して接続され通信用プロセッサが端末とインターネット通信するためのインターネットインターフェイスを備え、前記ブリッジＬＳＩは、前記制御用プロセッサの制御信号により内部の設定を切替えて前記制御用プロセッサとシステムバスインターフェイス、メモリの接続切替えを行い、前記プラントインターフェイスに接続を切替えプラントインターフェイス介してプラントの状態データを取込んで前記メモリに記憶し、前記プラントの状態データを演算処理を行い演算結果を制御指示として前記プラントインターフェイスに出力し、前記通信用プロセッサの制御信号により内部の設定を切替えて前記通信用プロセッサとネットワークインターフェイス、メモリの接続切替えを行い、前記ネットワークインターフェイスに接続し、前記メモリに記憶されているプラント状態のデータを前記インターネット通信により前記端末に転送することを特徴とするコントローラ。
【請求項３】
前記通信用プロセッサのソフトウエアが、ファームウエア，ネットワークインターフェイスドライバを含むリアルタイムＯＳ，ｆｔｔｐ，ｔｔｐ等のインターネットプロトコルを含むミドルソフト、通信タスクで構成されている請求項１又は２に記載のコントローラ。
【請求項４】
前記制御用プロセッサのソフトウエアが、ファームウエア，制御対象インターフェイスドライバを含むリアルタイムＯＳ，ミドルソフト，制御タスクで構成されている請求項１から３のいずれかに記載のコントローラ。
【請求項５】
前記制御用プロセッサのリアルタイムＯＳと通信用プロセッサのリアルタイムＯＳの間のプロセッサ間割り込みインターフェイス、又はメモリインターフェイス、又はメモリインターフェイスを設けた請求項１から４のいずれかに記載のコントローラ。
【請求項６】
前記制御用プロセッサ及び通信用プロセッサの両方からメモリへアクセスのあった時は、ブリッジＬＳＩにてメモリへのアクセスのオーバヘッドを吸収する請求項１から４に記載のコントローラ。
【請求項７】
前記制御用プロセッサがキャッシュメモリを内蔵しているものであって、前記制御用プロセッサ及び通信用プロセッサの両方からメモリへアクセスのあった時は、前記キャッシュメモリに一時記憶させる請求項１から４のいずれかに記載のコントローラ。
【請求項８】
前記制御用プロセッサ及び通信用プロセッサの両方からメモリへアクセスのあった時は、前記通信用プロセッサからの一回のメモリアクセス容量を制限する請求項１から４のいずれかに記載のコントローラ。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、発電プラント，交通制御システム，上下水処理の制御システム等に使用されるコントローラに関する。
【０００２】
【従来の技術】
近年のインターネット技術の普及に伴い、プラント監視用の端末をインターネットに接続することによりプラント監視をどこからでも行える利点があるため、プラント制御システムにインターネットを接続してリモート監視を行うことが望まれるようになった。
【０００３】
このため、従来の装置では、監視システムのローカルエリアネットワーク（以下、ＬＡＮと略す）上にインターネット接続用のサーバを設けることでインターネット接続を実現していた。しかし、専用のサーバを設けることは、システムの価格が高くなることや、ＬＡＮの回線異常が発生した場合はプラント制御状態を監視できなくなるという欠点があったため、最近では、コントローラの拡張装置として、システムバス上にインターネットに接続するためのモジュールを搭載したシステムも出現している。
【０００４】
又、特開平１１−１５０５５０号公報に記載のように、専用的な制御系ネットワークと汎用的な情報系ネットワークの相互通信を支援するために、制御装置との間で制御データを送受信するための制御系ネットワークに接続される第１の通信コントローラと、計算機と周辺機器との間を相互に接続するための情報ネットワークに接続される第２の通信コントローラと、第１及び第２の通信コントローラ間でデータを受け渡しするためのプロトコル変換をＣＰＵに実行させるプロトコル変換手段を具備したものがある。又、特開平９−１２８２５５号公報には、制御用の第１のプロセッサと通信用の第２のプロセッサを持ち、制御用の第１のプロセッサは、少なくとも１つの外部のシステムとデータ通信中に収集された応用プログラムに対して制御パラメータを引き継ぐ通信タスク期間を調整可能で実行するプログラマブル論理制御器が開示されている。
【０００５】
【発明が解決しようとする課題】
上記の従来技術は、システムバスに接続するため、プラントインターフェイスの処理とネットワークインターフェイスの処理の両方をＣＰＵが処理しなければならなく、制御のリアルタイム性が保証されないという問題があった。
【０００６】
又、特開平１１−１５０５５０号公報に記載の従来の装置では、第１及び第２の通信コントローラ間でデータを受け渡しするためのプロトコル変換をＣＰＵに実行させているため、コントローラでリアルタイムな制御ができないという問題があった。又、特開平９−１２８２５５号公報に記載のものは、制御用と通信用の２つのプロセッサを有しているが制御用のプロセッサは通信タスクを処理するため制御のリアルタイム性が保証されにくく、インターネット等での処理については配慮されていないものであった。
【０００７】
本発明の第１の目的は、制御のリアルタイム性を確保し、かつインターネット接続を可能としたコントローラを提供することにある。
【０００８】
本発明の第２の目的は、制御のリアルタイム性を確保し、かつシステムのコストアップを抑えたコントローラを提供することにある。
【０００９】
【課題を解決するための手段】
上記目的を達成するために、本発明のコントローラは、制御用プロセッサと、通信用プロセッサと、前記制御用プロセッサ及び通信用プロセッサのそれぞれに接続されたブリッジＬＳＩと、該ブリッジＬＳＩに接続されたメモリ，制御対象とシステムバスを介して接続するためのシステムバスインターフェイス，端末とインターネットを介して接続するためのネットワークインターフェイスを備えたことを特徴とする。
【００１０】
又、制御用プロセッサと、通信用プロセッサと、前記制御用プロセッサ及び通信用プロセッサのそれぞれに接続されたブリッジＬＳＩと、該ブリッジＬＳＩと接続されたメモリと、前記制御用プロセッサとブリッジＬＳＩを介して接続され制御用プロセッサが制御対象を監視，制御するためのシステムバスインターフェイスと、前記通信用プロセッサとブリッジＬＳＩを介して接続され通信用プロセッサが端末とインターネット通信するためのインターネットインターフェイスを備えたことを特徴とする。
【００１１】
又、前記通信用プロセッサのソフトウエアが、ファームウエア，ネットワークインターフェイスドライバを含むリアルタイムＯＳ，ｆｔｔｐ，ｔｔｐ等のインターネットプロトコルを含むミドルソフト，通信タスクで構成されているものである。
【００１２】
又、前記制御用プロセッサのソフトウエアが、ファームウエア，制御対象インターフェイスドライバを含むリアルタイムＯＳ，ミドルソフト，制御タスクで構成されているものである。
【００１３】
【発明の実施の形態】
以下、本発明の一実施例をプラント制御用のコントローラを例にとり、図１から図５により説明する。図１に示すように、本実施例のコントローラ１００
（ＣＰＵボード１００ともいう）には、システムバス２００を介してプラントインターフェイス３００が接続されている。コントローラ１００のネットワークインターフェイス１５０には、インターネット１０を介してプラント制御の状態を監視するためのプラント監視用の端末２０が接続され、コントローラ１００のプラントインターフェイス３００（制御対象インターフェイス３００ともいう）は制御対象であるプラント４００に接続されている。ここで、インターネット１０は、イントラネットであってもよい。
【００１４】
コントローラ１００には、通信用プロセッサ１１０と制御用プロセッサ１２０の２つのプロセッサが設けられ、この２つのプロセッサは、それぞれゲートアレイにて実現されたブリッジＬＳＩ１３０に接続され、ブリッジＬＳＩ１３０を介してメモリ１４０に接続されている。制御用プロセッサ１２０は、ブリッジ
ＬＳＩ１３０を介してシステムバスインターフェイス１６０に接続されている。システムバスインターフェイス１６０に接続されたシステムバス２００およびプラントインターフェイス３００を経由して制御対象であるプラント４００の制御，監視を行い、後述するように、制御状態はフィードバックされ、メモリ１４０に記憶される。このデータの送受信は互いにアドレス指定により行われる。
【００１５】
一方、通信用プロセッサ１１０は、ブリッジＬＳＩ１３０を介してネットワークインターフェイス１５０に接続されている。ブリッジＬＳＩ１３０は、制御用プロセッサ１２０とシステムバスインターフェイス１６０，メモリ１４０の接続切替え、システムバスインターフェイス１６０とメモリ１４０との接続切断、通信用プロセッサ１１０とネットワークインターフェイス１５０，メモリ１４０の接続切替え、ネットワークインターフェイス１５０とメモリとの接続切断を行う。この接続切替え、接続切断は、制御用プロセッサ１２０，通信用プロセッサ
１１０，端末２０等がセットアップとデータを有する構成の制御信号をブリッジＬＳＩ１３０に送信してブリッジＬＳＩ１３０内部の設定を切替えることにより行う。
【００１６】
このように、制御用プロセッサ１２０は、リアルタイムな制御を保証するために、通信処理を行わないようにして、通信用プロセッサ１１０が通信処理を行うようになっており、所謂、機能分散のマルチプロセッサとなっている。通信用プロセッサ１１０は、インターネット１０を介して接続された端末２０に、メモリ１４０に記憶されている最新のプラント情報を送信する。このように、プラント監視用の端末２０をインターネット１０へ接続し、ネットワークインターフェイス１５０を介して、通信用プロセッサ１１０とインターネット１０を接続しているので、コントローラの設置箇所の自由度が増し、プラント監視・制御を所望の場所から行えることができる。
【００１７】
コントローラ１００に設けられた通信用プロセッサ１１０と制御用プロセッサ１２０の２つのプロセッサのソフトウエア構成を図２により説明する。
【００１８】
通信用プロセッサ１１０は、ファームウエア１１１，リアルタイムＯＳ１１２，ミドルソフト１１４，通信タスク１１６のソフトウエアを有し、リアルタイムＯＳ１１２にはネットワークインターフェイスドライバ１１３が、ミドルソフト１１４には通信タスク１１６処理を専門に行うためのｈｔｔｐ，ｆｔｐ等のインターネットプロトコル１１５が設けられている。
【００１９】
制御用プロセッサ１２０は、ファームウエア１２１，リアルタイムＯＳ１２２，ミドルソフト１２４，制御タスク１２５のソフトウエアを有し、リアルタイムＯＳ１２２にはプラントインターフェイスドライバ１２３（制御対象プラントインターフェイスドライバ１２３ともいう）が設けられている。リアルタイム
ＯＳ１１２及びリアルタイムＯＳ１２２間にはプロセッサ間割り込み１０１インターフェイスが設けられている。
【００２０】
通信用プロセッサ１１０のファームウエア１１１，制御用プロセッサ１２０のファームウエア１２１は共に、電源投入時の初期化処理，自己診断等を行う。
【００２１】
このように、通信用プロセッサ１１０は、通信タスク１１６処理を専門に行うためのｈｔｔｐ，ｆｔｐ等のインターネットプロトコルが設けられるミドルソフト１１４を介してインターネット１０へ接続され、制御用プロセッサ１２０は、制御タスク１２５処理を専門に行うためのミドルソフト１２４を介してプラント４００へ接続されているので、従来は、ＣＰＵ内部にｈｔｔｐを実装すれば、通信と制御をシリアルに処理する必要があり、通信と制御をシリアルに処理するため、コントローラでリアルタイムな制御ができないという問題を解決できる。
【００２２】
２つのプロセッサは、通常は独立して動作しているが、監視・制御のため、互いに連絡や同期を取る必要がある場合は、リアルタイムＯＳ１１２とリアルタイムＯＳ１２２間でプロセッサ間割り込み１０１が行われる。なお、このプロセッサ間割り込みの代りに、メモリインターフェイスによる連絡を用いても良い。
【００２３】
次に、このように構成されたソフトウエアの具体的な処理の流れを説明する。図３に制御用プロセッサ１２０の制御の処理フローを示す。
【００２４】
制御用プロセッサ１２０は、Ｓ５００で、ファームウエア１２１による初期化が完了した後、制御開始の指示により、オペレータ等が予めメモリ１４０にダウンロードした制御プログラムをメモリ１４０から読み込み処理を開始する。
【００２５】
処理が開始されると、この制御プログラムに従い、Ｓ５１０で、プラントの状態データを取り込むために、システムバス２００上のプラントインターフェイス３００に対して、リード要求を行う。リード要求を受けたプラントインターフェイス３００は、Ｓ５２０で、プラント制御対象の入力データ、すなわちプラントの状態データを取り込む。
【００２６】
Ｓ５３０で、取り込んだ状態データをＣＰＵ１００へ応答データとして転送する。データを受け取った制御用プロセッサ１２０は、Ｓ５４０で、リード値をメモリ１４０へ記憶させる（退避するともいう）と共に、Ｓ５５０で、制御プログラムに従いリードデータを元に演算処理を行う。Ｓ５６０で、その演算結果を制御指示としてプラントインターフェイス３００へデータライト要求を行う。データライト要求を受けたプラントインターフェイス３００は、Ｓ５７０で、この要求に従いプラント制御対象へデータを出力して必要な制御を行う。
【００２７】
このように、制御用プロセッサ１２０は、Ｓ５１０からＳ５７０までの処理を、数ミリ秒から数百ミリ秒の周期で繰り返すことで制御のリアルタイム性を保証している。
【００２８】
次に、通信用プロセッサ１１０の通信の処理フローについて図４，図５により説明する。図４に、通信用プロセッサ１１０の監視の処理フローを示し、図５に、操作の処理フローの例を示す。
【００２９】
図４に示すように、通信用プロセッサ１１０も、制御用プロセッサ１２０と同様に、ファームウエア１１１による初期化が完了した後、Ｓ６００で、通信プログラムをメモリ１４０から読み込み、Ｓ６１０で、端末２０からの要求を待つ。
【００３０】
Ｓ６２０で、端末２０からデータ転送要求を受けると、通信用プロセッサ110は、Ｓ６３０で、データ転送要求に従いメモリ１４０に記憶している（退避しているともいう）プラント状態のデータをリードし、Ｓ６４０で、ブリッジＬＳＩ１３０，ネットワークインターフェイス１５０およびインターネット１０を介して、端末２０へデータを転送する。
【００３１】
ここで、インターネット１０を介した通信処理は、通信用プロセッサ１１０で処理されるため、制御用プロセッサ１２０の制御プログラム処理を阻害しないようにでき、プラントの監視を行うことができる。この結果、制御用プロセッサ
１２０の一定周期の処理が何らかの理由で阻害された場合、制御のリアルタイム性が保証されなくなり、プラントの装置破壊や、最悪の場合停電や断水等の社会的損害を与えるのを防止できる。
【００３２】
ここで、通信用プロセッサ１１０が、Ｓ６３０で、メモリリード処理を行う場合、制御用プロセッサ１２０との間でメモリバス競合が発生すると、一定周期の処理が阻害され、制御のリアルタイム性を損なう恐れがある。このため、本実施例では、制御用プロセッサ１２０と通信用プロセッサ１１０の両方からのメモリアクセスに対しては、ブリッジＬＳＩ１３０にてメモリアクセス時のオーバヘッドを吸収して、メモリバスの転送性能を向上させている。又、制御用プロセッサ１２０に内蔵されているキャッシュメモリに一時記憶させてキャッシュメモリを有効活用するようプログラムを作成している、あるいはメモリバス競合が発生すると、通信用プロセッサからの一度のメモリアクセスの量を制限しているので、メモリバス競合が発生した場合でも制御のリアルタイム性を保証することができる。
【００３３】
次に、インターネット経由でプラントの操作を行う例を図５にて説明する。通信用プロセッサ１１０の初期化およびプログラム読み込みについては、図４に示す監視の場合と同様に行われる。
【００３４】
図４に監視データを見て、監視者（オペレータともいう）がプラント制御パラメータを変更する必要が生じた場合、Ｓ７００で、端末２０上の操作画面等にてパラメータ変更の指示を行う。このパラメータ変更の指示は、Ｓ７１０で、端末２０からインターネット１０経由で対象となるコントローラ１００へ送信される。
【００３５】
通信用プロセッサ１１０は、Ｓ７２０で、端末２０からのパラメータ変更要求を受信すると、Ｓ７３０で、制御用プロセッサ１２０にプロセッサ間割り込み信号１０１を行い、パラメータ変更が必要であることを連絡する。
【００３６】
制御用プロセッサ１２０は、一定周期で制御プログラム処理を行っているが、この一連の処理が完了するまでの間は割り込み禁止状態で動作し、一連の処理の完了後は、Ｓ７４０で、割り込み受付け可能として、このタイミングで、プロセッサ間割り込み信号１０１を受付け、通信用プロセッサ１１０へパラメータ変更を許可する応答を行う。
【００３７】
パラメータ変更を許可する応答を受けた通信用プロセッサ１１０は、端末２０からの要求に従い、Ｓ７５０で、メモリ１４０のパラメータ領域のデータを変更し、再度プロセッサ間割り込み信号１０１を行い、制御用プロセッサ１２０へパラメータ変更が完了したことを応答すると共に、Ｓ７６０で、端末２０へパラメータ変更が完了したことを応答する。
【００３８】
ここで、パラメータ変更によるメモリ１４０へのアクセスの時間を演算し、メモリ１４０へのアクセスの時間が制御用プロセッサ１２０のリアルタイム処理に影響を与える恐れがあると判断される場合は、変更するパラメータの量に制限を設け、制御周期時間から変更するパラメータの量を設定して制御用プロセッサ
１２０へパラメータ変更を行う。この結果、端末から制御パラメータを変更する場合でも制御のリアルタイム性を保証することができる。
【００３９】
【発明の効果】
本発明によれば、コントローラに２つのＣＰＵモジュールを設け、ブリッジ
ＬＳＩによりメモリとの間を切替えて制御用プロセッサが通常通信処理を行なわないようにしているので、制御のリアルタイム性を保証しつつ、インターネットを介した監視，制御が可能となる。
【図面の簡単な説明】
【図１】本発明の一実施例である制御システムの構成図である。
【図２】本実施例のコントローラの構成図である。
【図３】制御用プロセッサの制御の処理の流れ図である。
【図４】通信用プロセッサの監視の処理の流れ図である。
【図５】通信用プロセッサの操作の処理の流れ図である。
【符号の説明】
１０…インターネット、２０…監視操作端末、１００…コントローラ、１０１…プロセッサ間割り込み信号、１１０…通信用プロセッサ、１１１，１２１…ファームウエア、１１２，１２２…リアルタイムＯＳ、１１３…ネットワークインターフェイスドライバ、１１４，１２４…ミドルソフト、１１５…ｈｔｔｐ，ｆｔｐ等のインターネットプロトコル、１１６…通信タスク、１２０…制御用プロセッサ、１２３…プラントインターフェイスドライバ、１２５…制御タスク、１３０…ブリッジＬＳＩ、１４０…メモリ、１５０…ネットワークインターフェイス、１６０…システムバスインターフェイス、２００…システムバス、３００…プラントインターフェイス、４００…プラント。
【図１】
0004117123.tif 000002
【図２】
0004117123.tif 000003
【図３】
0004117123.tif 000004
【図４】
0004117123.tif 000005
【図５】
0004117123.tif 000006