JP3737650B2 - 統合コントローラ及び制御システム - Google Patents
統合コントローラ及び制御システム Download PDFInfo
- Publication number
- JP3737650B2 JP3737650B2 JP19645799A JP19645799A JP3737650B2 JP 3737650 B2 JP3737650 B2 JP 3737650B2 JP 19645799 A JP19645799 A JP 19645799A JP 19645799 A JP19645799 A JP 19645799A JP 3737650 B2 JP3737650 B2 JP 3737650B2
- Authority
- JP
- Japan
- Prior art keywords
- controller
- controllers
- control
- integrated
- integrated controller
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/042—Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
- G05B19/0421—Multiprocessor system
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/418—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS], computer integrated manufacturing [CIM]
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Description
【発明の属する技術分野】
本発明は、鉄鋼プラント、製紙プラント、上下水道などの公共システム、自動車産業などの生産工程、化学・石油プラントなどの制御に利用されるコントローラ及び制御システムに関する。
【0002】
【従来の技術】
現在、プラントや生産ライン等の各種分野で利用されている制御には、主にループ制御、シーケンス制御、コンピュータ制御の3つの態様がある。
【0003】
ループ制御は、例えばプラントにおいてある部分の温度を所定の値に保つために繰り返し制御を行う場合等に利用され、代表的なものにPID制御、フィードバック制御等がある。このループ制御は、温度の調整等に利用される制御手法であるため、制御周期は比較的低速(例えば数百ミリ秒〜数秒)でもよいとされている。主に、石油プラント、化学プラントで利用される。
【0004】
シーケンス制御は、例えば生産ラインにおける第1工程、第2工程、第3工程をステップ毎に管理して順序を考慮した制御を行う等に利用され、所定の入力に対する一意的な出力を求めて制御する場合(組合せ論理を利用する場合)に主に適用される。このシーケンス制御は、制御内容に順序という時間的な要素を持ち、主に機械制御等に利用される制御手法であるため、制御周期が比較的高速(例えば数ミリ秒〜数百ミリ秒)に設定される。例えば製紙プラント、上下水道などの公共システム、自動車の生産ラインなどの産業用システムに広く利用される。
【0005】
コンピュータ制御は、例えば収集したデータを情報処理あるいは解析して制御を行う場合に利用される制御手法でる。このコンピュータ制御は、例えばあるイベントが発生した場合にこのイベントに基づく制御を実現する。
【0006】
上述したように、ループ制御を実行するループコントローラと、シーケンス制御を実行するプログラマブルコントローラと、コンピュータ制御を実現するためにOSに対応したソフトウェアを使用するパーソナルコンピュータとでは、一般的に制御対象、制御周期が異なる。また、制御処理の内容も性質が異なるため、制御処理の内容を記述するプログラミング言語も異なり、それぞれの態様毎に別のプラットフォーム(ハードウェア)を用い、別のプログラミング言語が利用される。
【0007】
【発明が解決しようとする課題】
以上のように、主な制御の態様にはループ制御、シーケンス制御、コンピュータ制御があり、従来においては各制御対象に適した制御態様が選択されて利用される。例えば、食品加工における温度管理にはループ制御が利用され、加工後の食品のパッケージ工程ではシーケンス制御が利用される。
【0008】
その一方で、ユーザは、例えば食品加工からパッケージまでを一貫して取り扱うことを希望する場合がある。すなわち、ループ制御の内容とシーケンス制御の内容をまとめて設計し、食品加工からパッケージ完了までをまとめて管理したいと考える場合がある。
【0009】
しかしながら、ループ制御とシーケンス制御とでは、制御周期(制御タイミング)、使用するプラットホームの性質、利用するプログラミング言語等が異なる。ループ制御やシーケンス制御ではない他の制御を組み合わせたい場合も同様である。
【0010】
したがって、従来においては、異種の制御を実現する異種のコントローラを併合しようとすると作業労力が高くなるため、異種のコントローラを積極的に統合して扱うという概念がなかった。
【0011】
すなわち、従来において、異種コントローラを連係して動作させる場合には、データの変換、通信、制御周期の同期を実現する特別の装置(例えばタグコントローラ)が必要となるが、この場合、構成が複雑化し、管理負担が大きくなる。
【0012】
さらに、異種コントローラ間の連携を実現する特別の装置を導入する場合には、データの変換に関する設定、通信に関する設定等の各種の設定を登録する必要があるため、導入時の負担が大きく、異種コントローラの新規の設置や処理内容の変更等も困難になる。
【0013】
本発明は、以上のような実情に鑑みてなされたもので、特別な装置や作業を排除し、容易にかつ積極的に異種の制御手段を統合するために、異種の制御手段を単に連係動作させるのではなく、仮想的に単一の制御手段として取扱い可能とする統合コントローラ及び制御システムを提供することを目的とする。
【0014】
【課題を解決するための手段】
本発明の骨子は、積極的に異種の制御手段の統合を図る点にある。
【0015】
以下、本発明を実現するにあたって講じた具体的手段について説明する。
【0016】
第1の発明の統合コントローラは、異種の制御処理を実行する複数のコントローラと、複数のコントローラから共通してアクセス可能であり、複数のコントローラで共通に扱われるグローバル変数を記憶する共有記憶手段を備え、複数のコントローラを仮想的に単一のコントローラとして機能させる統合手段とを具備し、複数のコントローラは、一連の制御を分割した制御内容を実行する。
【0017】
この第1の発明の統合コントローラでは、異種のコントローラであっても仮想的に単一のコントローラとして機能させ、複数のコントローラに一連の制御を分割した制御内容を実行させ、単一のコントローラとして扱うことができるため、積極的に異種のコントローラを組み合わせて制御対象を制御することができる。
【0018】
ゆえに、コントローラの間でのデータの交換や、制御の同期(例えばループ制御の結果ある部分の温度が所定の値になると、シーケンス制御により次の工程を開始する等)を容易にかつ適切に実行できる。
【0019】
また、ユーザは異種のコントローラによる制御内容をまとめて設計、管理することができる。例えばループ制御による加工と、シーケンス制御によるパッケージをあわせて設計、プログラミング、作業の管理ができる。
【0020】
さらに、各種コントローラを統合することで各種コントローラ毎の利点を組み合わせた制御を行うことができ、制御の質を向上させることができる。
【0021】
さらに、異種のコントローラを仮想的に単一のコントローラとして扱うため、特別な装置の設置や設定の登録等を排除することができ、コントローラを統合する際の負担を抑制することができ、コントローラの追加や制御処理の変更等にも柔軟に対処することができる。
この第1の発明のように、各コントローラにおいて共通に利用されるグローバル変数(共有変数、共有データ)を、各コントローラが共通にアクセス可能な共有記憶手段に記憶することで、各コントローラ間でのデータの交換、制御の同期が単なるアクセスのみで可能になる。
これにより、各コントローラ内のプログラムの動作を、まとめて一つのプログラムの動作とみなすことができる。
したがって、この第1の発明の統合コントローラのように、グローバル変数を共有記憶手段に格納することにより、各コントローラの動作が仮想的に単一の動作を行っているとすることができる。
【0022】
第2の発明は、第1の統合コントローラにおいて、ループ制御とシーケンス制御とコンピュータ制御のうちの少なくとも一つを実現する複数のコントローラを、統合手段が仮想的に単一のコントローラとして機能させるとしている。
【0023】
したがって、この第2の発明の統合コントローラにおいては、異なる特徴を持つため、異なる装置として利用されてきたループ制御用のコントローラ、シーケンス制御用のコントローラ、コンピュータ制御用のコントローラをまとめて扱うことができる。
【0024】
したがって、コントローラの種別に依存することなく、複数の制御内容を組み合わせた自由な制御の設計、プログラミング、作業の管理ができる。
【0025】
また、ループ制御、シーケンス制御、コンピュータ制御を各種組み合わせて仮想的に単一のコントローラとして扱えるため、各コントローラの利点を活かした制御を実現することができる。
【0026】
第3の発明は、第2の発明の統合コントローラにおいて、複数のコントローラのうちの第1のコントローラは、ループ制御とシーケンス制御とコンピュータ制御とのうちのいずれかを実行し、複数のコントローラのうちの第2のコントローラは、ループ制御とシーケンス制御とコンピュータ制御とのうち第1のコントローラと異種の制御を実行する統合コントローラである。
第4の発明は、第1から第3までのいずれかの発明の統合コントローラにおいて、複数のコントローラのうちの少なくとも一つを備えた複数のステーションを備え、統合手段はステーション内におけるコントローラ又はステーション間におけるコントローラを仮想的に単一のコントローラとして機能させる統合コントローラである。
【0027】
ここで、ステーションとは、少なくとも一つのコントローラを内部に含む装置である。
【0028】
すなわち、この第4の発明においては、ステーション内部のコントローラ、外部のステーションの内蔵するコントローラ、外部で仮想的に単一とされたコントローラのいずれをも自由に含めて、複数のコントローラを仮想的に単一のコントローラとして機能させる。
【0029】
したがって、この第4の発明の統合コントローラにおいては、上記第1から第3までの発明と同様の作用・効果に加えて、内部に備えられるコントローラのみではなく、外部の他の装置に備えられるコントローラも含めて仮想的に単一のコントローラとして扱うことができる。
【0030】
ゆえに、ネットワークで相互に接続されているコントローラからなる制御システム全体を単一のコントローラとして扱うことができる。
【0031】
また、他の統合コントローラやステーションにおいて仮想的に単一のコントローラとして扱われているコントローラも含めて、仮想的に単一のコントローラとして扱うことができる。
【0032】
ゆえに、複数の統合コントローラ間、ステーション間でも単一のコントローラとして扱うことができ、一層ユーザにとって有用であり、適切な制御を実現させることができる。
【0037】
第5の発明は、第1から第4までのいずれかの発明の統合コントローラにおける共有記憶手段を、外部のコントローラ又は外部で仮想的に単一とされたコントローラからもアクセス可能であり、この外部のコントローラ又は外部で仮想的に単一とされたコントローラでも共通に扱われるグローバル変数を記憶するとしている。
【0038】
したがって、外部のコントローラで実行される動作やプログラムも、この統合コントローラ内の動作やプログラムであるとみなすことができ、外部の装置とも統合できる。
【0039】
第6の発明は、第1から第5までのいずれかの発明の統合コントローラにおいて、仮想的に単一のコントローラとして扱われる各コントローラは、共有記憶手段に記憶されているグローバル変数へのアクセスを、グローバル変数ではない他の変数のアクセスと同様の記述により実現可能としている。
【0040】
この第6の発明においては、グローバル変数もグローバル変数ではないローカル変数も、同様の形式(フォーマット)で記述可能であるため、各コントローラで実行されるプログラムは両変数を同様の形式に基づいてアクセスすることができる。
【0041】
これにより、ユーザは、コントローラで実行されるプログラムをグローバル変数とローカル変数とを区別することなく同一のフォーマットで記述することができ、また変数の存在場所を意識することなくプログラミングすることができるため、プログラミングが容易となる。
【0042】
第7の発明は、第1から第6までのいずれかの統合コントローラにおいて、共有記憶手段は仮想的に単一のコントローラとして扱われる各コントローラに割り当てられた記憶手段であり、統合手段はこの各コントローラに割り当てられた記憶手段間の内容の整合性を確保する調停装置を備えている統合コントローラである。
【0043】
なお、記憶手段の内容を一致させる手法には、例えばスキャン伝送が利用できる。また、各記憶手段には各コントローラ毎のデータ格納用領域を設けられているとしてもよく、また各領域の位置を全ての記憶手段間で同一としてもよい。
【0044】
この第7の発明のように、例えばそれぞれのコントローラの有する記憶手段の内容を、各コントローラのための領域に分割し、この各領域の内容を一致させることで、グローバル変数の共有化、すなわち共有記憶手段が実現され、異種のコントローラを統合できる。
【0045】
第8の発明は、第1から第7のいずれかの発明の統合コントローラにおいて、仮想的に単一のコントローラとして扱われる各コントローラは、同一のプログラムを解釈し実行するとしている。
【0046】
この第8の発明においては、第1から第7の発明と同様の作用・効果に加え、各コントローラが同一のプログラム(命令コード)により動作するため、各コントローラ間のプログラムを相互に交換することができる。また、あるコントローラ用に開発したプログラムを異なる種別のコントローラに対しても適用することができる。ユーザは自由にプログラムを適用できる。
【0047】
第9の発明は、第1から第8までの発明の統合コントローラにおいて、仮想的に単一のコントローラとして扱われる各コントローラを組み込むための実装手段を付加した統合コントローラである。
【0048】
なお、この実装手段には、コネクタやスロットが利用できる。
【0049】
この第9の発明においては、複数のコントローラが仮想的に単一のコントローラとして扱われるため、各コントローラがどの位置に配置されても、プログラムが何ら影響を受けることがない。
【0050】
ゆえに、実装手段を設けることにより、自由な位置にコントローラを配置することができ、コントローラの変更や追加、削除を容易に実行することができる。
【0051】
第10の発明は、第1から第9までの発明の統合コントローラにおいて、仮想的に単一のコントローラとして扱われる各コントローラで実行される処理が更新される場合に、先の処理で扱われていたデータが保持され、新規の処理で新しく扱われるデータがこの先の処理で扱われていたデータに追加されるとしている。
【0052】
この第10の発明においては、コントローラのプログラムが更新されても、先のプログラムで利用されていたデータが引き続き継承できるため、プログラム実行中でのプログラム変更により、ローカル変数を使用する処理に変更があっても制御を継続でき、適切な制御を実現できる。
【0053】
第11の発明は、異種の制御処理を実行する複数のコントローラと、複数のコントローラから共通してアクセス可能であり複数のコントローラで共通に扱われるグローバル変数を記憶する共有記憶手段を備え複数のコントローラを仮想的に単一のコントローラとして機能させる統合手段とを具備する統合コントローラと、複数のコントローラと異なる他のコントローラと、統合コントローラと他のコントローラとから共通してアクセス可能であり、統合コントローラと他のコントローラとで共通に扱われるシステム・グローバル変数を記憶するシステム共有記憶手段を備え、統合コントローラと他のコントローラとを仮想的に単一のコントローラとして機能させる上位統合手段とを具備し、複数のコントローラと他のコントローラとは、一連の制御を分割した制御内容を実行する制御システムである。
【0054】
この第11の発明の制御システムにおいては、複数のコントローラを含む統合コントローラが単一のコントローラとして仮想的に取扱い可能とされる。
【0055】
ゆえに、積極的に異種のコントローラを組み合わせて制御対象を制御することができる。また、各コントローラの利点を組み合わせた制御を実行することができる。また、異種のコントローラによる制御内容をまとめて設計、管理することができる。
この第11の発明の制御システムにおいては、各コントローラからアクセス可能なシステム・共有記憶手段を備え、各コントローラで共通に取り扱われるシステム・グローバル変数をこのシステム共有記憶手段に記憶することで、各コントローラが仮想的に単一化されている。
【0056】
第12の発明は、第11の発明の制御システムにおいて、複数のコントローラがループ制御とシーケンス制御とコンピュータ制御のうちの少なくとも一つを実現する統合コントローラである。
【0057】
この第12の発明の制御システムにおいては、上記第11の発明と同様の作用・効果を得ることができ、さらにループ制御、シーケンス制御、コンピュータ制御のいずれのコントローラをも仮想的に単一のコントローラとして扱えるため、各種の制御の手法を組み合わせて各コントローラの利点を活かした制御を実現することができる。
【0058】
第13の発明は、第11又は第12の発明の統合コントローラにおいて、他のコントローラは、仮想的に単一のコントローラとして機能する他の統合コントローラである制御システムである。
【0060】
第14の発明は、第11から第13までのいずれかの制御システムにおいて、システム共有記憶手段は、仮想的に単一のコントローラとして扱われる各コントローラに割り当てられた記憶手段であり、上位統合手段は、仮想的に単一のコントローラとして扱われる各コントローラに割り当てられた記憶手段間の内容の整合性を確保する調停装置を備えている制御システムである。
【0061】
この第14の発明の制御システムにおいては、システム共有記憶手段を、仮想的に単一のコントローラとして扱われる各統合コントローラに割り当てられた記憶手段の内容を一致させることで実現している。
【0062】
例えば、各統合コントローラに記憶手段を割り当て、この各記憶手段には各統合コントローラ毎の領域が用意されており、この各記憶手段の内容を一致させることで、変数の内容を共有化させることができる。
【0063】
第15の発明は、第11から第14までのいずれかの発明の制御システムにおいて、システム共有記憶手段は、システム・グローバル変数を、複数のコントローラと他のコントローラ毎の領域に記憶し、システム共有記憶手段と、システム共有記憶手段の内容と外部のシステム共有記憶手段との内容の整合性を確保する調停手段とを備えた伝送装置をさらに具備する制御システムである。
【0064】
この第15の発明において、伝送装置を備えることで、統合コントローラと他のコントローラとを仮想的に単一に扱うことができる。
【0067】
第16の発明は、第15の発明の制御システムにおいて、システム共有記憶手段は、異なるネットワーク上のコントローラで共通に扱われるシステム・グローバル変数も各コントローラ毎の領域に記憶し、調停手段は、異なるネットワーク間でシステム・グローバル変数を相互に通知するとしている。
【0068】
この第16の発明の制御システムにおいては、異なるネットワーク上のコントローラに対しても、システム・グローバル変数とシステム共有記憶手段とにより仮想的に単一のコントローラとして扱える。また、システム共有記憶手段を介してデータを通知するため、異なるネットワーク間でのデータ交換を特定のコントローラや専用のゲートウェイ装置を用いることなく実現できる。
【0069】
【発明の実施の形態】
以下、図面を参照しながら本発明の実施の形態について説明する。
【0070】
(第1の実施の形態)
本実施の形態においては、複数の制御手段を統合するコントローラについて説明する。
【0071】
図1は、本実施の形態に係る統合コントローラの構成を示すブロック図である。
【0072】
この統合コントローラ(ステーション)1は、ループ制御を実行するためのコントローラ(制御手段)2と、シーケンス制御を実行するためのコントローラ3と、コンピュータ制御を実行するためのコントローラ4と、各コントローラ2〜4を統合する統合部5とを備えている。
【0073】
統合部5は、各コントローラ2〜4を仮想的に単一のコントローラとして動作可能とする部分である。以下においては、例として共有メモリ及び共有バスから構成される統合部5を例として説明する。
【0074】
図2は、本実施の形態に係る統合コントローラ1の統合部5を共有メモリと共有バスとにより構成した場合のブロック図を示す。
【0075】
各コントローラ2〜4は、他のコントローラにおいても共通に扱われるグローバル変数(データ)を利用して処理(プログラム)を実行する。
【0076】
統合部5の共有バス5aは、各コントローラ2〜4及び共有メモリ5bと接続されており、各コントローラ2〜4から共有メモリ5bへのアクセスを可能としている。
【0077】
共有メモリ5bは、各コントローラ2〜4が共有バス5aを介して共通にアクセス可能な記憶装置である。この共有メモリ5bは、グローバル変数を記憶する。
【0078】
上記のような構成を持つ統合コントローラ1においては、各コントローラ2〜4で相互に利用されるグローバル変数が共有メモリ5bに格納される。
【0079】
この共有メモリ5bに対しては、コントローラ2〜4のいずれからでもアクセス可能である。したがって、共有メモリ5b上のグローバル変数は、各コントローラ2〜4が自己の変数(ローカル変数)をアクセスするのと同様に、他のコントローラからもアクセス可能である。
【0080】
本実施の形態に係る統合コントローラ1によれば、異種コントローラ2〜4間でのデータ交換を、共有するグローバル変数を介して容易に実行できる。
【0081】
これにより、他コントローラ内のプログラムの動作が自コントローラ内のプログラムの動作と同様にみなすことができるため、異種のコントローラ2〜4の統合体をあたかも一つのコントローラのように扱うことが可能となる。
【0082】
例えば、コントローラ2〜4のうちのいずれかが共有メモリ5bにグローバル変数として書き込んだ後、他のコントローラが共有メモリ5bからグローバル変数を読み出すことにより、コントローラ間でデータの転送処理等を行わなくてもデータを交換することができる。また、このような異種コントローラ2〜4によるデータの交換時に、データ型の変更、データ通信を行う必要がない。
【0083】
また、いずれかのコントローラが共有メモリ5bにグローバル変数を書き込み、この共有メモリ5b上のグローバル変数を他のコントローラが監視する。そして、このグローバル変数の値が所定の範囲に含まれた場合に所定の制御を実行することで、コントローラ間の制御タイミングの調整を実行することができる。
【0084】
このように、共有バス5a及び共有メモリ5bからなる統合部5により、異種コントローラ2〜4間でのデータの交換や制御の同期が適切になされるので、異種コントローラ2〜4の複合体をあたかも一つのコントローラのように扱うことが可能となる。
【0085】
以上説明したように、本実施の形態に係る統合コントローラ1においては、各コントローラ2〜4で共用されるグローバル変数を、各コントローラ2〜4が共通にアクセス可能な共有メモリ5bに記憶することで、各コントローラ2〜4を仮想的に単一のコントローラとして統合している。
【0086】
これにより、ある一連の制御のうち、ループコントローラに適した制御をループコントローラ2に実行させ、シーケンスコントローラに適した制御をシーケンスコントローラ3に実行させる等のように、適切な制御を適切な環境で実現させることができる。すなわち、ユーザは制御の内容をまとめて設計し、その設計した制御内容を適切なコントローラに分割して配置し、まとめて管理することができる。
【0087】
また、本実施の形態においては、特別の装置や設定入力を必要とすることなく、コントローラ2〜4間をまとめることができるため、新規のコントローラの設置や、コントローラ2〜4の処理内容の変更を容易にでき、作業を簡素化することができる。
【0088】
特に、本実施の形態においては、単にメモリをアクセスするのと同様の作業でデータの共有、制御周期の適切化が可能となるため、コントローラ間でのデータ伝送処理や、データ変換が必要なく、処理を簡略化することができる。
【0089】
なお、本実施の形態においては、共有バス5aと共有メモリ5bとから統合部5が構成されており、各コントローラ2〜4が共有バス5aを介して共有メモリ5b上のグローバル変数にアクセスすることで統合した場合について説明している。しかしながら、コントローラの統合手法はこれに限定されるものではなく、例えば各コントローラを単に共有バス5aで接続し、相互にグローバル変数を通知するとしてもよい。また、例えば、共有バス5aを介することなく、各コントローラが直接共有メモリ5bをアクセスするとしてもよい。
【0090】
また、本実施の形態に係る統合コントローラ1においては、ループ制御、シーケンス制御、コンピュータ制御を行う3種のコントローラ2〜4をそれぞれ1つ備えている場合を例として説明しているが、これに限定されるものではない。例えば、コントローラの数はいくつでもよく、自由に削除、追加させることができる。また、コントローラの種別はどのようなものでもよい。
【0091】
(第2の実施の形態)
本実施の形態においては、先で述べた第1の実施の形態に係る統合コントローラの変形例について説明する。
【0092】
図3は、本実施の形態に係る統合コントローラ6の構成を示すブロック図であり、図1及び図2と同一の部分については同一の符号を付してその説明を省略し、ここでは異なる部分についてのみ詳しく説明する。
【0093】
統合コントローラ6の統合部7は、共有メモリ2a〜4aと共有バス5aとから構成されている。
【0094】
この統合コントローラ6の備える各コントローラ2〜4には、統合部7の要素である共有メモリ2a〜4aが内蔵されており、さらにこの各共有メモリ2a〜4aは相互に共有バス5aに接続されている。
【0095】
各コントローラ2〜4で扱われるグローバル変数は、それぞれのコントローラ2〜4に内蔵されている共有メモリ2a〜4aに記憶され、さらに各共有メモリ2a〜4aの記憶内容は他の記憶メモリに通知され、記憶される。
【0096】
すなわち、本実施の形態においては、各コントローラ2〜4の共有メモリ2a〜4aには、各コントローラ2〜4が管理する変数が格納されている。そして、この各コントローラ2〜4が管理する変数の内容は、各共有メモリ2a〜4a間でやり取りされて全ての共有メモリ2a〜4aに記憶される。
【0097】
なお、本実施の形態においては、この各変数のアドレスは、各共有メモリ2a〜4aで同一であり、各変数へのアドレスの割り当ては、全体を管理するエンジニアリングツールが行う。
【0098】
これにより、各共有メモリ2a〜4aにおいて同一の変数が同一の位置に配置されることになり、各コントローラが他のコントローラで管理される変数を自コントローラ内の変数と同様にアクセス可能となる。
【0099】
以上説明したように、本実施の形態に係る統合コントローラ6においては、各記憶メモリ2a〜4a上に全てのコントローラ2〜4で扱われるグローバル変数が記憶され、同一の記憶内容となる。
【0100】
したがって、各コントローラ2〜4は、自己に備えられている記憶メモリ2a〜4aを参照して他のコントローラで扱われているグローバル変数を利用することができる。
【0101】
すなわち、本実施の形態においては、各コントローラ2〜4が共有メモリ上のグローバル変数を介して接続されており、このグローバル変数がどのコントローラからも自コントローラ内の変数をアクセスするのと同様にアクセス可能であるため、データの交換や制御周期の調整が実現できる。
【0102】
ゆえに、本実施の形態においては、先で説明した第1の実施の形態と同様の状態、すなわちコントローラ2〜4を仮想的に単一のコントローラとして扱うことができる。
【0103】
(第3の実施の形態)
本実施の形態においては、自己内のコントローラのみではなく外部のコントローラも含めて、仮想的に単一のコントローラとして取り扱う統合コントローラについて説明する。
【0104】
また、本実施の形態に係る統合コントローラは、外部において既に仮想的に単一とされたコントローラであっても、さらに仮想的に単一のコントローラとして取り扱う。
【0105】
図4は、本実施の形態に係る統合コントローラによって構成される計算機システムを示すブロック図であり、図1と同一の部分については同一の符号を付してその説明を省略し、ここでは異なる部分についてのみ詳しく説明する。
【0106】
計算機システム8は、2台の統合コントローラ9a、9bを備えており、この2台の統合コントローラ9a、9bの双方が上位統合部10にアクセス可能である。
【0107】
各統合コントローラ9a、9bは、先の第1の実施の形態で説明した統合コントローラ1と同様の構成で同様に作用し、統合部5は統合コントローラ9a、9b毎に内部のコントローラ2〜4をあたかも一つのコントローラとして取扱い可能とする。
【0108】
上位統合部10は、一つのコントローラとして取扱い可能な結合コントローラ9a、9bをさらに一つのコントローラとして取扱い可能とする。
【0109】
上記のような統合コントローラ9a、9b及び上位統合部10により構成される計算機システム8の具体例について説明する。
【0110】
図5は、本実施の形態に係る統合コントローラ9a、9bによって構成される計算機システム8を具体的に示すブロック図であり、図2と同一の部分については同一の符号を付してその説明を省略し、ここでは異なる部分についてのみ詳しく説明する。
【0111】
統合コントローラ9a、9b内でのグローバル化(ステーション・グローバル)を実現する統合部5は、共有バス5aと共有メモリ5bとから構成されている。
【0112】
一方、上位統合部10は、各統合コントローラ9a、9bに備えられる2台の伝送装置10aとシステム共有メモリ10bとから構成されている。
【0113】
共有バス5aには、コントローラ2〜4及び共有メモリ5bに加えて、伝送装置10aが接続されており、各コントローラ2〜4が共有バス5a及び伝送装置10aを介してシステム共有メモリ10bへのアクセスを可能としている。
【0114】
各統合コントローラ9a、9bの備える共有メモリ5bには、各統合コントローラ9a、9b毎に、コントローラ2〜4で共通して扱われるステーション・グローバル変数が記憶される。共有メモリ5b上のステーション・グローバル変数は、同一の統合コントローラ9a、9b内の各コントローラ2〜4から共通にアクセス可能であり、これにより各統合コントローラ9a、9b毎のグローバル化がなされる。
【0115】
また、各統合コントローラ9a、9bの備える伝送装置10aは、コントローラ2〜4からシステム共有メモリ10bへのアクセスを実現する。
【0116】
システム共有メモリ10bは、制御システム8におけるグローバル化(システム・グローバル)を実現するための要素である。このシステム共有メモリ10bには、統合コントローラ9a、9b間で共有されるシステム・グローバル変数が記憶され、統合コントローラ9a、9b双方に備えられているコントローラ2〜4が伝送装置10aを介して共通にアクセス可能である。
【0117】
すなわち、本実施の形態においては、複数の統合コントローラ9a、9bがシステム共有メモリ10b上のシステム・グローバル変数で接続されている。システム共有メモリ10b上のシステム・グローバル変数は、どの統合コントローラのどのコントローラからでもアクセス可能であり、自コントローラ内の変数と同様の方法でアクセス可能である。したがって、このシステム・グローバル変数を利用して各統合コントローラ9a、9b間のデータ交換や制御タイミングの調整が実現され、統合コントローラ9a、9bの複合体をあたかも一つのコントローラのように扱うことが可能となる。
【0118】
以上説明したように、本実施の形態においては、同一の統合コントローラ内のコントローラ間でのデータ交換を行うステーション・グローバル変数、及び複数の統合コントローラ間でのデータ交換を行うシステム・グローバル変数とによる2レベルのグローバル変数を使用可能とした。
【0119】
これにより、複数のコントローラを一つのコントローラとして扱う統合コントローラを、さらに一つのコントローラとして扱うことができ、各種の制御を組み合わせて適切な制御を実現することができる。また、ユーザが制御の設計、管理するのに有効な制御システムを提供することができる。
【0120】
なお、本実施の形態においては、ステーション及びシステムの2レベルで統合を行っているが、さらにシステム間で統合を行ってもよく、複数の統合階層を実現できる。
【0121】
(第4の実施の形態)
本実施の形態においては、先で述べた第3の実施の形態に係る統合コントローラによって構成される計算機システムの変形例について説明する。
【0122】
図6は、本実施の形態に係る統合コントローラによって構成される計算機システムを示すブロック図であり、図3乃至図5と同一の部分については同一の符号を付してその説明を省略し、ここでは異なる部分についてのみ詳しく説明する。
【0123】
計算機システム11は、2台の統合コントローラ12a、12bを備えている。この各統合コントローラ12a、12bは、先の第2の実施の形態で説明した統合コントローラ6と同様の構成に加えて、それぞれシステム共有メモリ13を内蔵する伝送装置14を持つ。
【0124】
上位統合部15は、この各統合コントローラ12a、12bに備えられた2台の伝送装置14により構成される。
【0125】
本実施の形態において、各コントローラ2〜4は、システム・グローバル変数を同一の統合コントローラに配置されている伝送装置14内のシステム共有メモリ13に記憶する。
【0126】
各伝送装置14の間では、内部のシステム共有メモリ13内のシステム・グローバル変数の内容が他の伝送装置14に送信されており、各システム共有メモリ13の等値化が常時行われている。
【0127】
この各伝送装置14内のシステム共有メモリ13には、同一の統合コントローラ内のどのコントローラ2〜4からでもアクセス可能である。
【0128】
したがって、他の統合コントローラで扱われるシステム・グローバル変数であっても、自己のシステム共有メモリ13を参照することで容易にかつ高速に利用可能であり、これにより統合コントローラ12a、12b間でデータの交換、制御タイミングの調整が可能となる。
【0129】
以上説明したように、本実施の形態においては、統合コントローラ12a、12b間でデータの交換、制御タイミングの調整が可能となり、統合コントローラ12a、12bの複合体を一つのコントローラのように扱うことができる。
【0130】
したがって、本実施の形態においては、上記第3の実施の形態と同様に、適切な制御を実現させることができ、ユーザにとって便利な制御システムを提供できる。
【0131】
(第5の実施の形態)
本実施の形態においては、上記各実施の形態における統合コントローラで扱われる命令語の形式について説明する。
【0132】
図7は、本実施の形態に係る統合コントローラが使用する命令語のフォーマットを例示する図。
【0133】
命令語16においてオペランドのアドレスはオフセットアドレス16bの他に、変数の存在場所を示すコード16aを持っている。このコード16aは、グローバル変数が統合コントローラ内にあるのか、統合コントローラ外にあるのかなどを指定している。
【0134】
変数をアクセスする場合には、まず存在位置を示すコード16aに基づいてアクセス先を取得し、次にこのアクセス先におけるオフセットアドレス16bの示す部分をアクセスするという形式を採用する。すると、グローバル変数も、ローカル変数も同様にアクセスすることが可能となる。
【0135】
また、本実施の形態に係る統合コントローラにおいては、先で述べた第4の実施の形態の場合と同様に、統合コントローラが伝送装置内に共有メモリを持ち、常に各共有メモリの内容を等値化する処理を行っている。
【0136】
図8は、伝送装置内の共有メモリの内容を等値化させる処理の具体例を示すブロック図である。
【0137】
伝送装置17〜19は、それぞれ異なる統合コントローラ20〜22に備えられている。各伝送装置17〜19の中の共有メモリ23〜25は、各統合コントローラ20〜22がデータを出力する領域(エリア)を独立して確保しており、出力されたデータは他の伝送装置内の共有メモリに定期的に送信される。
【0138】
以上のように、共有メモリの内容を一致させ、グローバル変数に関する命令語フォーマットとローカル変数に関する命令語フォーマットを一致させることで、容易に他の統合コントローラで扱われる変数を利用することができる。
【0139】
通常、伝送装置を介して変数をアクセスし、利用する場合には、伝送処理(伝送関数の実行)などが必要であり、変数をアクセスするためのプログラムを作成する必要がある。
【0140】
しかしながら、本実施の形態においては、共有メモリをアクセスするだけでグローバル変数にアクセスできることになり、統合させるために特別なプログラムを作成する必要がない。
【0141】
以上説明したように、本実施の形態に係る統合コントローラにおいては、共有メモリの等値化が行われている。また、複数の統合コントローラが共有するグローバル変数を指定するアドレスに、データが存在する場所を示すコードを付与し、グローバル変数をローカル変数と同様の方法でアクセス可能としている。
【0142】
したがって、本実施の形態においては、自コントローラ内のプログラムが利用するローカル変数も、他のコントローラ内の変数も、グローバル変数と同一のフォーマットで記述可能であり、変数の存在位置を意識することなくプログラミングすることができる。
【0143】
これに対し、上記のような統合がなされないコントローラ間では、他のコントローラから変数を読み出す関数を実行し、その関数の出力を利用する必要があり、プログラムが煩雑になる。
【0144】
ゆえに、先で述べた効果と同様の効果に加えて、制御プログラムの作成を簡略化させることができ、ユーザによって便利な統合コントローラを提供することができる。例えば、他のコントローラで扱われる変数を、関数の入力として直接記述することができる。
【0145】
(第6の実施の形態)
本実施の形態においては、上記各実施の形態と同様にコントローラをまとめて取扱い可能であり、さらに異種のコントローラが共通の命令語を実行するものとする。
【0146】
この統合コントローラに含まれる各コントローラは、命令語コードをハードウェアで実行しても良いし、ソフトウェアのインタプリタで実行してもよい。
【0147】
すなわち、本実施の形態に係る統合コントローラにおいては、内部のコントローラがシーケンスコントローラであっても、ループコントローラであっても、その他のコントローラであっても、同一の命令語を解釈して実行する。
【0148】
また、本実施の形態に係る統合コントローラに格納されている各種コントローラは、単一のコントローラとして取扱い可能であるため、同一のI/Oモジュールにアクセス可能で同一の環境を持っている。
【0149】
したがって、どのコントローラにプログラムを実行させても実行速度の相違こそあれ、実行結果は同一となるように構成されている。
【0150】
したがって、共通のプログラム編集手段でプログラムを作成した場合であっても、最適なコントローラを選択して作成したプログラムを実行させることができる。また、プログラムを自由に分割して複数のコントローラに分担させて実行することができる。また、任意のコントローラに任意のプログラムを実行させることができる。
【0151】
(第7の実施の形態)
本実施の形態においては、内蔵するコントローラの配置位置を変更したり、新規のコントローラを搭載可能な実装部を持つ統合コントローラについて説明する。
【0152】
上記各実施の形態で説明した統合コントローラにおいて、先の図7に示すような命令語コードを使用すると、共有メモリの存在場所は統合コントローラ内のどのコントローラからみても同一のアドレスによって指定可能な構成になっている。
【0153】
したがって、同一の統合コントローラ内であればどこにコントローラが実装されても、プログラムを実行して同一の結果を得ることが可能である。
【0154】
なお、共有メモリを各コントローラ内に持たせた構成の場合には、プログラム実行前に自コントローラが他のコントローラのアドレスを確認する必要があるが、その後は他のコントローラの論理的アドレスと物理的アドレスを常に変換しながらアクセスすることで同様の効果を得ることが可能である。
【0155】
以上のように、本実施の形態に係る統合コントローラにおいては、内部のコントローラの実装位置によってグローバル変数のアクセス方法が変化しない。
【0156】
ゆえに、コントローラ搭載用のスロットやコネクタ等の実装部を統合コントローラに設けることで、コントローラを自由に実装することができ、実装位置にしたがってプログラムを変更する必要がないため、コントローラの変更を容易に行うことができる。
【0157】
(第8の実施の形態)
本実施の形態においては、オブジェクト指向プログラミングにより作成されたプログラムを実行する統合コントローラについて説明する。
【0158】
本実施の形態に係る統合コントローラは、上記各実施の形態で述べた統合コントローラの含む各コントローラに対してオブジェクト指向プログラミングを可能としたものとする。すると、本実施の形態に係る統合コントローラにおいて、各コントローラで実行されるプログラムと固有のデータとは、対になる。
【0159】
オブジェクト指向プログラミングを利用した場合、通常はプログラムのコンパイル時にデータのアドレスが決定され、プログラムの変更があるとデータのアドレスも変化してしまう。また、データ領域はプログラム変更時に新しい領域に確保し直されるので、プログラム変更前のデータの内容は失われてしまう。
【0160】
本実施の形態に係る統合コントローラでは制御の連続性を保つことを目的とし、変更前の処理において利用されていたデータを変更後の処理においても継続利用可能とするために、プログラム変更後にローカルデータの値も維持するように構成している。
【0161】
なお、グローバル変数は、他のコントローラによる処理において利用される場合があるため、処理を変更した後においても当然に共有メモリに確保されている。
【0162】
このようにプログラム変更前のデータを確保するため、コンパイルを実行するエンジニアリングツールは、プログラム実行中のプログラム変更時に、ローカル変数のオフセットアドレスが変化しないようなコンパイルを行う。
【0163】
図9は、本実施の形態に係る統合コントローラに備えられているコントローラのプログラムが変更された場合のメモリ領域の変化を示す概念図である。
【0164】
つまり、変更後において変数が新規に追加された場合にはこれまでのデータ領域26に追加する形で新規の変数アドレスが領域27に確保され、新しいアドレスが使用される。加えて、旧変数のいずれかが削除された場合でもそのオフセットアドレスは新たに使用されずに使用を保留された状態にしておく。そして、プログラムをコントローラに格納する際に、新規に追加するべきデータ領域の大きさと旧データ領域からコピーすべきデータ量を、プログラミング支援ツールからコントローラに指示するようにしている。
【0165】
以上説明したように、本実施の形態においては、プログラムの変更によりローカルデータの構成に変更があり、データ領域の割付に変更があったとしても、プログラム変更前から存在していた変数の内容、アドレスが変更されない。
【0166】
したがって、オブジェクト指向プログラムを採用していてもオンライン変更に対応することが可能となり、ローカルデータを使用しながらも変更前のローカルデータを引き継いでプログラムを継続実行することができる。
【0167】
これにより、プログラム実行中にプログラムを変更しても、変更前のローカルデータの内容を引き継いでプログラムを継続させることもできる。
【0168】
(第9の実施の形態)
本実施の形態においては、複数のコントローラを統合し、この統合した複数のコントローラをさらに統合する伝送装置を備えた統合コントローラについて説明する。
【0169】
図10は、本実施の形態に係る統合コントローラを備えた制御システムの構成を示すブロック図である。
【0170】
また、図11は、本実施の形態に係る統合コントローラ単体の構成を示すブロック図である。
【0171】
なお、この図10及び図11の説明において、図1と同一の部分については同一の符号を付してその説明を省略する。
【0172】
制御システム28は、ネットワーク29に3台の統合コントローラ30a〜30cが接続されて構成されている。
【0173】
各統合コントローラ30a〜30cには、コントローラ2〜4に加えて統合部として動作する伝送装置31a〜31cが備えられており、それぞれがシステムバス36に接続されている。
【0174】
各統合コントローラ30a〜30c内部の伝送装置31a〜31cにはそれぞれ共有メモリ32a〜32cが実装されている。さらに、伝送装置31a〜31bには、それぞれ他の伝送装置との間で通信を行う伝送部(伝送回路)33及び共有メモリ32a〜32c間の調整を行う調停部(調停回路)34とが実装されている。
【0175】
共有メモリ32aは、統合コントローラ30aが書込む領域35aと、統合コントローラ30bからのデータを受信して書込む領域35b、統合コントローラ30cからデータを受信して書込む領域35cとに区切られている。
【0176】
また、上記の各領域35a〜35cは、さらに各コントローラ2〜4毎の領域に区切られている。
【0177】
なお、共有メモリ32b、32cも図11に示すように共有メモリ32aと同様に区切られており、同様の構成を持つ。
【0178】
各統合コントローラ30a〜30cは、定期的に自己が割り付けられている領域の記憶内容を他の統合コントローラに送信する。
【0179】
すなわち、統合コントローラ30aは定期的に共有メモリ32a上の領域35aの内容を統合コントローラ30b、30cに送信する。統合コントローラ30bは統合コントローラ30aからの受信データを共有メモリ32b上の領域35aに相当する領域に書込む。同様に統合コントローラ30cは統合コントローラ30aからの受信データを共有メモリ32c上の領域35aに相当する領域に書込む。共有メモリ32a〜32c上の他の領域35b、35cについても各統合コントローラ30a〜30cは同様の動作を行う。
【0180】
以下に、共有メモリ32aの利用状態について統合コントローラ30aの場合を例として説明する。
【0181】
図11に示すように、共有メモリ32a上の領域35aは、統合コントローラ30aに実装されているコントローラ(コントローラモジュール)2〜4が使用する領域に区切られている。
【0182】
コントローラ2〜4はシステムバス36を経由して共有メモリ32a上の領域35aの割り付けられた領域にデータを書き込み可能とする。
【0183】
また、各コントローラ2〜4は、共有メモリ32a上の領域35aの自己に割り付けられた領域及び他のコントローラの領域を自由に読み出すことが可能とする。
【0184】
コントローラ2は、共有メモリ32a上の領域35aにおけるコントローラ2の領域にプログラムで使用する変数を定義し、書き込んで、定期的に更新する。
【0185】
この共有メモリ32a上の領域35aの内容は、他の統合コントローラ30b、30cの共有メモリ32b、32c上の領域35aに記憶される。
【0186】
他の統合コントローラ30b、30cに実装されているコントローラ2〜4は、共有メモリ32a〜32c上の統合コントローラ30aの領域35aにおけるコントローラ2の記憶領域に存在する変数を読み出すことができる。
【0187】
それにより、統合コントローラ30a〜30cに備えられている全てのコントローラ間で変数を共有することが可能となり、統合コントローラ内、及びシステム内でのグローバル変数を実現する。
【0188】
以上説明した本実施の形態に係る統合コントローラの伝送装置を利用することで、複数のコントローラをまとめて一つのコントローラとして取扱い可能となる。また、まとめて一つのコントローラとしたコントローラ群をさらにまとめて扱うこともできる。
【0189】
ゆえに、ループ制御、シーケンス制御、コンピュータ制御等の種別を自由に適用して、ユーザの要求する制御内容を適切なコントローラで実行させることができる。
【0190】
(第10の実施の形態)
本実施の形態においては、異種系統のネットワークに接続されたコントローラ間を、ゲートウェイ装置を利用することなく統合する伝送装置を備えた統合コントローラについて説明する。
【0191】
図12は、本実施の形態に係る統合コントローラを備えた制御システムを構成するブロック図であり、図10と同一の部分については同一の符号を付してその説明を省略し、ここでは異なる部分についてのみ詳しく説明する。
【0192】
制御システム37は、統合コントローラ38が接続されたネットワーク39a及び統合コントローラ40が接続されたネットワーク39bに、統合コントローラ41が接続されて構成されている。
【0193】
この制御システム37において、ネットワーク39a、39bは、例えばイーサネットとField busというように系統が異なっているとする。
【0194】
本実施の形態に係る統合コントローラ41は、コントローラ2、3に加えて、第1の伝送装置42、第2の伝送装置43とを備える。
【0195】
第1の伝送装置42はネットワーク39bに接続されており、第2の伝送装置43はネットワーク39aに接続されており、それぞれが同一の統合コントローラ41に実装されている。
【0196】
各伝送装置42、43には、ネットワーク39b、39aとの間での通信を行う伝送部45と、記憶内容の共有化を実現するための調停部46が実装されている。
【0197】
さらに、第1の伝送装置42内には共有メモリ44が実装されており、共通メモリ44は、伝送装置42で得られたデータを記憶する領域44a、コントローラ2からのデータを記憶する領域44b、コントローラ3からのデータを記憶する領域44c、伝送装置43で得られたデータを記憶する領域44dに区切られている。
【0198】
ネットワーク39bに接続されている統合コントローラ40が、ネットワーク39aに接続されている統合コントローラ38にデータを送信する場合、まず統合コントローラ40は、統合コントローラ41内部の伝送装置42内の共有メモリ44上の領域44aにデータを書込む。
【0199】
伝送装置43は、伝送装置42用の領域44aに書込まれたデータを読み出し、ネットワーク39aに接続されている統合コントローラ38に送信する。
【0200】
逆に、ネットワーク39aに接続されている統合コントローラ38が、ネットワーク39bに接続されている統合コントローラ40にデータを送信する場合、統合コントローラ41は、伝送装置43でデータを受信し、共有メモリ44上の伝送装置43用の領域44dにデータを書込む。
【0201】
伝送装置42は、共有メモリ44上の伝送装置43用の領域44dに書込まれたデータを読み出し、ネットワーク39bに接続されている統合コントローラ40に送信する。
【0202】
以上説明したように、本実施の形態に係る統合コントローラ41の伝送装置42,43を適用すると、系統の異なる別々のネットワーク39a、39b間で共有メモリを介してデータを伝送するため、ネットワーク39a、39bに属する統合コントローラ38、40間でのデータの交換を、コントローラ及び専用のゲートウェイ装置を用いることなく実現できる。
【0203】
ゆえに、容易に統合コントローラ38、40、41をまとめて一つのコントローラとすることができ、異種ネットワーク間でもデータの交換を高速に実現し、適切に制御タイミングを調整できる。
【0204】
【発明の効果】
以上詳記したように本発明においては、ループ制御、シーケンス制御、コンピュータ制御のように制御の手法が異なる制御手段を仮想的に一つの制御手段として取扱うことができる。
【0205】
したがって、各制御手段の特徴を組み込んだ制御が実現でき、適切に制御対象を制御することができる。
【0206】
また、本発明においては、複数の制御手段間で単に連係動作可能とする場合と異なり、仮想的に単一のコントローラとしているため、データの交換を適切に実行でき、適切な制御タイミングを実現できる。
【0207】
また、複数の制御手法を組み合わせて制御を行う場合に、制御内容に関する設計、管理をまとめて行うことができるため、ユーザにとって便利である。
【図面の簡単な説明】
【図1】本発明の第1の実施の形態に係る統合コントローラの構成を示すブロック図。
【図2】同実施の形態に係る統合コントローラの結合部を共有メモリと共有バスとにより構成した場合のブロック図。
【図3】本発明の第2の実施の形態に係る統合コントローラの構成を示すブロック図。
【図4】本発明の第3の実施の形態に係る統合コントローラによって構成される計算機システムを示すブロック図。
【図5】同実施の形態に係る統合コントローラによって構成される計算機システムを具体的に示すブロック図。
【図6】本発明の第4の実施の形態に係る統合コントローラによって構成される計算機システムを示すブロック図。
【図7】本発明の第5の実施の形態に係る統合コントローラが使用する命令語のフォーマットを示す図。
【図8】同実施の形態に係る統合コントローラにおいて伝送装置内の共有メモリの内容を等値化させる処理の具体例を示すブロック図。
【図9】本発明の第8の実施の形態に係る統合コントローラに備えられてるコントローラのプログラムが変更された場合のメモリ領域の変化を示す概念図。
【図10】本発明の第9の実施の形態に係る統合コントローラを備えた制御システムの構成を示すブロック図。
【図11】同実施の形態に係る統合コントローラ単体の構成を示すブロック図。
【図12】本発明の第10の実施の形態に係る統合コントローラを備えた制御システムを構成するブロック図。
【符号の説明】
1、6、9a、9b、12a、12b、20〜22、30a〜30c、38、40、41…統合コントローラ
2〜4…コントローラ
5、7…統合部
5a…共有バス
2a〜4a、5b、23〜25、32a〜32c、44…共有メモリ
8、28、37…制御システム
10…上位統合部
10a、14、17〜19、31a〜31c、42、43…伝送装置
10b、13…システム共有メモリ
16…命令語
16a…コード
26、27…データ領域
29、39a、30b…ネットワーク
33、45…伝送部
34、46…調停部
35a〜35c、44a〜44d…共有メモリの領域
Claims (16)
- 異種の制御処理を実行する複数のコントローラと、
前記複数のコントローラから共通してアクセス可能であり、前記複数のコントローラで共通に扱われるグローバル変数を記憶する共有記憶手段を備え、前記複数のコントローラを仮想的に単一のコントローラとして機能させる統合手段と
を具備し、
前記複数のコントローラは、一連の制御を分割した制御内容を実行する
ことを特徴とする統合コントローラ。 - 請求項1記載の統合コントローラにおいて、
前記複数のコントローラは、ループ制御とシーケンス制御とコンピュータ制御のうちの少なくとも一つを実現することを特徴とする統合コントローラ。 - 請求項2記載の統合コントローラにおいて、
前記複数のコントローラのうちの第1のコントローラは、ループ制御とシーケンス制御とコンピュータ制御とのうちのいずれかを実行し、
前記複数のコントローラのうちの第2のコントローラは、前記ループ制御と前記シーケンス制御と前記コンピュータ制御とのうち前記第1のコントローラと異種の制御を実行する
ことを特徴とする統合コントローラ。 - 請求項1乃至請求項3のいずれか1項に記載の統合コントローラにおいて、
前記複数のコントローラのうちの少なくとも一つを備えた複数のステーションを備え、
前記統合手段は、ステーション内におけるコントローラ又はステーション間におけるコントローラを仮想的に単一のコントローラとして機能させる
ことを特徴とする統合コントローラ。 - 請求項1乃至請求項4のいずれか1項に記載の統合コントローラにおいて、
前記共有記憶手段は、外部のコントローラ又は外部で仮想的に単一とされたコントローラからもアクセス可能であり、この外部のコントローラ又は外部で仮想的に単一とされたコントローラでも共通に扱われるグローバル変数を記憶することを特徴とする統合コントローラ。 - 請求項1乃至請求項5のいずれか1項に記載の統合コントローラにおいて、
仮想的に単一のコントローラとして扱われる各コントローラは、前記共有記憶手段に記憶されているグローバル変数へのアクセスを、前記グローバル変数ではない他の変数のアクセスと同様の記述により実現可能なことを特徴とする統合コントローラ。 - 請求項1乃至請求項6のいずれか1項に記載の統合コントローラにおいて、
前記共有記憶手段は、仮想的に単一のコントローラとして扱われる各コントローラに割り当てられた記憶手段であり、
前記統合手段は、当該各コントローラに割り当てられた記憶手段間の内容の整合性を確保する調停装置を備えた
ことを特徴とする統合コントローラ。 - 請求項1乃至請求項7のいずれか1項に記載の統合コントローラにおいて、
仮想的に単一のコントローラとして扱われる各コントローラは、同一のプログラムを解釈し実行することを特徴とする統合コントローラ。 - 請求項1乃至請求項8のいずれか1項に記載の統合コントローラにおいて、
仮想的に単一のコントローラとして扱われる各コントローラを組み込むための実装手段を付加したことを特徴とする統合コントローラ。 - 請求項1乃至請求項9のいずれか1項に記載の統合コントローラにおいて、
仮想的に単一のコントローラとして扱われる各コントローラで実行される処理が更新される場合に、先の処理で扱われていたデータが保持され、新規の処理で新しく扱われるデータがこの先の処理で扱われていたデータに追加されることを特徴とする統合コントローラ。 - 異種の制御処理を実行する複数のコントローラと、前記複数のコントローラから共通してアクセス可能であり前記複数のコントローラで共通に扱われるグローバル変数を記憶する共有記憶手段を備え前記複数のコントローラを仮想的に単一のコントローラとして機能させる統合手段とを具備する統合コントローラと、
前記複数のコントローラと異なる他のコントローラと、
前記統合コントローラと前記他のコントローラとから共通してアクセス可能であり、前記統合コントローラと前記他のコントローラとで共通に扱われるシステム・グローバル変数を記憶するシステム共有記憶手段を備え、前記統合コントローラと前記他のコントローラとを仮想的に単一のコントローラとして機能させる上位統合手段と
を具備し、
前記複数のコントローラと前記他のコントローラとは、一連の制御を分割した制御内容を実行する
ことを特徴とする制御システム。 - 請求項11記載の制御システムにおいて、
前記複数のコントローラは、ループ制御とシーケンス制御とコンピュータ制御のうちの少なくとも一つを実現することを特徴とする統合コントローラ。 - 請求項11又は請求項12記載の統合コントローラにおいて、
前記他のコントローラは、仮想的に単一のコントローラとして機能する他の統合コントローラであることを特徴とする制御システム。 - 請求項11乃至請求項13のいずれか1項に記載の制御システムにおいて、
前記システム共有記憶手段は、仮想的に単一のコントローラとして扱われる各コントローラに割り当てられた記憶手段であり、
前記上位統合手段は、前記仮想的に単一のコントローラとして扱われる各コントローラに割り当てられた記憶手段間の内容の整合性を確保する調停装置を備えた
ことを特徴とする制御システム。 - 請求項11乃至請求項14記載の制御システムにおいて、
前記システム共有記憶手段は、前記システム・グローバル変数を、前記複数のコントローラと前記他のコントローラ毎の領域に記憶し、
前記システム共有記憶手段と、前記システム共有記憶手段の内容と外部のシステム共有記憶手段との内容の整合性を確保する調停手段とを備えた伝送装置をさらに具備する
ことを特徴とする制御システム。 - 請求項15記載の制御システムにおいて、
前記システム共有記憶手段は、異なるネットワーク上のコントローラで共通に扱われるシステム・グローバル変数も各コントローラ毎の領域に記憶し、
前記調停手段は、前記異なるネットワーク間で前記システム・グローバル変数を相互に通知する
ことを特徴とする制御システム。
Priority Applications (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP19645799A JP3737650B2 (ja) | 1999-07-09 | 1999-07-09 | 統合コントローラ及び制御システム |
AU43811/00A AU735961B2 (en) | 1999-07-09 | 2000-07-03 | Integrated controller, integrated control system and transmission controller |
EP00305751A EP1067445A3 (en) | 1999-07-09 | 2000-07-07 | Integrated controller, integrated control system & transmission controller |
US09/612,320 US6598108B1 (en) | 1999-07-09 | 2000-07-07 | Integrated controller, integrated control system and transmission controller |
CNB001204254A CN1150450C (zh) | 1999-07-09 | 2000-07-07 | 综合控制器,综合控制系统和传输控制器 |
KR10-2000-0038756A KR100422517B1 (ko) | 1999-07-09 | 2000-07-07 | 통합제어기, 통합제어시스템, 및 데이터통신용 전송제어기 |
EP08102827A EP1962158A3 (en) | 1999-07-09 | 2000-07-07 | Integrated controller, integrated control system & transmission controller |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP19645799A JP3737650B2 (ja) | 1999-07-09 | 1999-07-09 | 統合コントローラ及び制御システム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2001022401A JP2001022401A (ja) | 2001-01-26 |
JP3737650B2 true JP3737650B2 (ja) | 2006-01-18 |
Family
ID=16358137
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP19645799A Expired - Fee Related JP3737650B2 (ja) | 1999-07-09 | 1999-07-09 | 統合コントローラ及び制御システム |
Country Status (6)
Country | Link |
---|---|
US (1) | US6598108B1 (ja) |
EP (2) | EP1067445A3 (ja) |
JP (1) | JP3737650B2 (ja) |
KR (1) | KR100422517B1 (ja) |
CN (1) | CN1150450C (ja) |
AU (1) | AU735961B2 (ja) |
Families Citing this family (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6666463B2 (en) * | 1997-10-24 | 2003-12-23 | K-2 Corporation | Flexing base skate |
JP4236936B2 (ja) * | 2001-04-26 | 2009-03-11 | ザ・ボーイング・カンパニー | ネットワークバスを介して少なくとも1つのネットワークデバイスと通信するためのシステム及び方法 |
KR100413686B1 (ko) * | 2001-07-14 | 2003-12-31 | 삼성전자주식회사 | 모니터의 절전 장치 및 그 제어 방법 |
US6922783B2 (en) * | 2002-01-16 | 2005-07-26 | Hewlett-Packard Development Company, L.P. | Method and apparatus for conserving power on a multiprocessor integrated circuit |
GB0214669D0 (en) * | 2002-06-26 | 2002-08-07 | Ibm | Method for maintaining data access during failure of a controller |
JP4515701B2 (ja) | 2002-12-13 | 2010-08-04 | 株式会社デンソー | 車両用制御プログラム、及び、車両用制御装置 |
JP4008911B2 (ja) * | 2004-09-29 | 2007-11-14 | 株式会社東芝 | 制御装置 |
JP2008090635A (ja) * | 2006-10-03 | 2008-04-17 | Meidensha Corp | プログラマブルコントローラ |
JP2008269454A (ja) * | 2007-04-24 | 2008-11-06 | Mitsubishi Electric Corp | 生産情報通信システム |
JP4867818B2 (ja) * | 2007-06-28 | 2012-02-01 | 株式会社明電舎 | Plcシステムのデータ通信方式 |
JP5052624B2 (ja) * | 2007-12-25 | 2012-10-17 | 東芝三菱電機産業システム株式会社 | ネットワーク制御装置 |
JP5444112B2 (ja) * | 2010-04-30 | 2014-03-19 | 株式会社東芝 | プラント制御システムおよびプログラムリロケート方法 |
JP5757098B2 (ja) * | 2011-02-08 | 2015-07-29 | 富士電機株式会社 | プログラム作成支援装置、プログラム作成支援方法 |
JP5893845B2 (ja) * | 2011-04-11 | 2016-03-23 | 東芝三菱電機産業システム株式会社 | プラント制御システムおよびプラント制御方法 |
JP6119452B2 (ja) * | 2013-06-21 | 2017-04-26 | 富士電機株式会社 | プログラマブルコントローラシステム、その支援装置、プログラマブルコントローラ、プログラム |
JP5916677B2 (ja) * | 2013-09-20 | 2016-05-11 | 株式会社日立製作所 | 制御コントローラ及びそのプログラミング方法 |
JP6489742B2 (ja) * | 2014-01-30 | 2019-03-27 | 三菱重工業株式会社 | 空調システム及びその制御方法 |
JP5892278B1 (ja) | 2015-03-18 | 2016-03-23 | 株式会社安川電機 | スクリーン装置、画像表示システム、画像表示方法 |
JP5911044B1 (ja) * | 2015-07-10 | 2016-04-27 | 三菱電機株式会社 | プログラム生成装置及びその方法 |
JP6161752B2 (ja) * | 2016-03-04 | 2017-07-12 | 株式会社日立製作所 | 制御コントローラ及びそのプログラミング方法 |
US10528479B2 (en) * | 2017-06-02 | 2020-01-07 | Huawei Technologies Co., Ltd. | Global variable migration via virtual memory overlay technique for multi-version asynchronous dynamic software update |
CN108563150B (zh) * | 2018-04-18 | 2020-06-16 | 东莞理工学院 | 一种末端反馈设备 |
US11313165B2 (en) * | 2019-01-30 | 2022-04-26 | Fuji Electric Co., Ltd. | Terminal device, communication system, and communication method of terminal device for integrating and transmitting data |
JP7361669B2 (ja) * | 2020-09-01 | 2023-10-16 | 株式会社日立産機システム | 制御装置 |
Family Cites Families (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4450525A (en) * | 1981-12-07 | 1984-05-22 | Ibm Corporation | Control unit for a functional processor |
JPS6243703A (ja) * | 1985-08-21 | 1987-02-25 | Fanuc Ltd | 数値制御システム |
JP2504961B2 (ja) * | 1986-07-10 | 1996-06-05 | 豊田工機株式会社 | プログラマブルトランスファマシン |
JPS63131203A (ja) * | 1986-11-21 | 1988-06-03 | Toshiba Corp | ル−プ制御情報発生装置 |
JPH0632047B2 (ja) * | 1987-01-30 | 1994-04-27 | 株式会社東芝 | デ−タ収集装置 |
JPS63316207A (ja) * | 1987-06-19 | 1988-12-23 | Fanuc Ltd | 産業用ロボット制御装置 |
US4992926A (en) * | 1988-04-11 | 1991-02-12 | Square D Company | Peer-to-peer register exchange controller for industrial programmable controllers |
JPH01280804A (ja) * | 1988-05-06 | 1989-11-13 | Mitsubishi Electric Corp | 制御装置 |
JP2799009B2 (ja) * | 1989-10-31 | 1998-09-17 | 株式会社日立製作所 | プログラマブルコントローラ |
CA2034878C (en) * | 1990-03-08 | 2002-04-02 | Craig S. Hyatt | Programmable controller communication module |
US5914880A (en) * | 1992-05-16 | 1999-06-22 | Nippei Toyama Corporation | Method and apparatus for controlling a transfer machine |
JPH06314110A (ja) * | 1993-04-28 | 1994-11-08 | Fanuc Ltd | 数値制御機能を実行するコンピュータシステム部分と他のコンピュータシステムとの結合方式 |
US5485620A (en) * | 1994-02-25 | 1996-01-16 | Automation System And Products, Inc. | Integrated control system for industrial automation applications |
JPH0822309A (ja) * | 1994-07-07 | 1996-01-23 | Hitachi Ltd | プロセス制御装置 |
JPH08255010A (ja) * | 1995-03-17 | 1996-10-01 | Fuji Electric Co Ltd | プログラミング装置におけるコメント表示装置 |
US5909368A (en) * | 1996-04-12 | 1999-06-01 | Fisher-Rosemount Systems, Inc. | Process control system using a process control strategy distributed among multiple control elements |
JP3327123B2 (ja) * | 1996-06-04 | 2002-09-24 | トヨタ自動車株式会社 | 作業用ロボットの統合制御システム |
KR100372142B1 (ko) * | 1996-07-20 | 2003-05-12 | 한국과학기술연구원 | 통합네트웍을구비한크레인제어시스템및통신방법 |
JP3398676B2 (ja) * | 1996-11-26 | 2003-04-21 | 株式会社四国総合研究所 | 機器の管理システム |
US5889721A (en) * | 1997-08-21 | 1999-03-30 | Integrated Silicon Solution, Inc. | Method and apparatus for operating functions relating to memory and/or applications that employ memory in accordance with available power |
US6088665A (en) * | 1997-11-03 | 2000-07-11 | Fisher Controls International, Inc. | Schematic generator for use in a process control network having distributed control functions |
US6141762A (en) * | 1998-08-03 | 2000-10-31 | Nicol; Christopher J. | Power reduction in a multiprocessor digital signal processor based on processor load |
-
1999
- 1999-07-09 JP JP19645799A patent/JP3737650B2/ja not_active Expired - Fee Related
-
2000
- 2000-07-03 AU AU43811/00A patent/AU735961B2/en not_active Ceased
- 2000-07-07 EP EP00305751A patent/EP1067445A3/en not_active Ceased
- 2000-07-07 EP EP08102827A patent/EP1962158A3/en not_active Ceased
- 2000-07-07 US US09/612,320 patent/US6598108B1/en not_active Expired - Lifetime
- 2000-07-07 KR KR10-2000-0038756A patent/KR100422517B1/ko not_active IP Right Cessation
- 2000-07-07 CN CNB001204254A patent/CN1150450C/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
KR20010029898A (ko) | 2001-04-16 |
CN1280333A (zh) | 2001-01-17 |
EP1962158A3 (en) | 2008-10-08 |
AU4381100A (en) | 2001-01-11 |
EP1067445A3 (en) | 2007-02-28 |
KR100422517B1 (ko) | 2004-03-12 |
EP1962158A2 (en) | 2008-08-27 |
US6598108B1 (en) | 2003-07-22 |
AU735961B2 (en) | 2001-07-19 |
EP1067445A2 (en) | 2001-01-10 |
CN1150450C (zh) | 2004-05-19 |
JP2001022401A (ja) | 2001-01-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3737650B2 (ja) | 統合コントローラ及び制御システム | |
CN101158869B (zh) | 用于过程控制系统中的动态修改器功能块 | |
US6757568B2 (en) | Automation system for merging automation components | |
US20070283030A1 (en) | System and method for batch process control with diverse distributed control system protocols | |
BR112017020503B1 (pt) | Método e sistema para controle de processo de usinas em uma rede de máquina a máquina com base em opc-ua | |
JP7048638B2 (ja) | コントロール装置 | |
US20060069452A1 (en) | Configuration of modules in automation systems | |
CN112068501A (zh) | 具有现代架构和传统兼容性的过程控制设备 | |
US20220113709A1 (en) | Runtime server for simultaneous execution of a plurality of runtime systems of an automation system | |
US5867383A (en) | Programmable logic controller | |
WO2020075351A1 (ja) | コントロール装置 | |
CN111052010B (zh) | 控制系统、开发辅助装置和存储介质 | |
CN109937404B (zh) | 程序模块之间的实时数据交换方法和系统 | |
CN103999002A (zh) | 分布式控制系统的中继接口模块 | |
CN109709904B (zh) | 从机装置、主机装置以及工业用网络系统 | |
JP3548777B2 (ja) | コントロール制御装置 | |
EP4036670A1 (en) | Control device | |
JP6857153B2 (ja) | コントロール装置 | |
US10001766B2 (en) | Industrial control system and method for transferring data | |
US20040254910A1 (en) | Method and arrangement for configuring modules in a data processing system | |
JP7277889B1 (ja) | プログラム及び対象装置監視方法 | |
KR100481995B1 (ko) | 타겟 시스템 | |
US20160313718A1 (en) | Method and controller for flexible process control | |
GB2480398A (en) | Dynamic modifier function blocks for use in a process control system | |
Lobachov et al. | MultiPort RAM: a PC-Based Implementation of the Fieldbus Concept |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20041215 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050104 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050307 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050524 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050725 |
|
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: 20051025 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20051027 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081104 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091104 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101104 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101104 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111104 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121104 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131104 Year of fee payment: 8 |
|
LAPS | Cancellation because of no payment of annual fees |