JP2001184250A - プロセス制御システム、コンフィギュレーション・データベース・システム、プロセス制御システムでコンフィギュレーション・データを使用する方法、およびプロセス制御システムでコンフィギュレーション動作を行う方法 - Google Patents

プロセス制御システム、コンフィギュレーション・データベース・システム、プロセス制御システムでコンフィギュレーション・データを使用する方法、およびプロセス制御システムでコンフィギュレーション動作を行う方法

Info

Publication number
JP2001184250A
JP2001184250A JP2000317976A JP2000317976A JP2001184250A JP 2001184250 A JP2001184250 A JP 2001184250A JP 2000317976 A JP2000317976 A JP 2000317976A JP 2000317976 A JP2000317976 A JP 2000317976A JP 2001184250 A JP2001184250 A JP 2001184250A
Authority
JP
Japan
Prior art keywords
database
configuration
data
process control
control system
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2000317976A
Other languages
English (en)
Other versions
JP4739496B2 (ja
Inventor
Mark Nixon
マーク ニクソン,
Teresa Chatkoff
テレサ チャットコフ,
Steven Gilbert
スティーヴン ギルバート,
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fisher Rosemount Systems Inc
Original Assignee
Fisher Rosemount Systems Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fisher Rosemount Systems Inc filed Critical Fisher Rosemount Systems Inc
Publication of JP2001184250A publication Critical patent/JP2001184250A/ja
Application granted granted Critical
Publication of JP4739496B2 publication Critical patent/JP4739496B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/414Structure of the control system, e.g. common controller or multiprocessor systems, interface to servo, programmable interface controller
    • G05B19/4145Structure of the control system, e.g. common controller or multiprocessor systems, interface to servo, programmable interface controller characterised by using same processor to execute programmable controller and numerical controller function [CNC] and PC controlled NC [PCNC]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/31From computer integrated manufacturing till monitoring
    • G05B2219/31324Distributed real time knowledge, database
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/31From computer integrated manufacturing till monitoring
    • G05B2219/31418NC program management, support, storage, distribution, version, update
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/31From computer integrated manufacturing till monitoring
    • G05B2219/31422Upload, download programs, parameters from, to station to, from server
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/33Director till display
    • G05B2219/33125System configuration, reconfiguration, customization, automatic
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/36Nc in input of data, input key till input tape
    • G05B2219/36103Adapt, update machining parameters automatically as function of state of processing
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
    • YGENERAL 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
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/912Applications of a database
    • Y10S707/918Location
    • Y10S707/919Geographic
    • YGENERAL 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
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99933Query processing, i.e. searching
    • YGENERAL 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
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99942Manipulating data structure, e.g. compression, compaction, compilation
    • YGENERAL 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
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99943Generating database or data structure, e.g. via user interface
    • YGENERAL 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
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users
    • Y10S707/99953Recoverability

Abstract

(57)【要約】 (修正有) 【課題】異なる位置のユーザに、非矛盾したコンフィギ
ュレーション・データベースの変更を可能とすること。 【解決手段】コンフィギュレーション・データベース
は、プロセス制御システム内の複数の物理的な位置に分
散され、その各々が、全サイトのコンフィギュレーショ
ン・データの全部を格納するマスター・コンフィギュレ
ーション・データベースと、該マスター・コンフィギュ
レーション・データベースからコンフィギュレーション
・データをダウンロードおよび予約する一又は複数のブ
リーフケース・データベースとを備えている。該ブリー
フケース・データベースは、コンフィギュレーション動
作を行うべく他のサイトで使用され、その後で、変更さ
れたコンフィギュレーション項目が、これらを格納する
前記マスター・コンフィギュレーション・データベース
に起用される。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本願発明は、プロセス制御シ
ステムに関し、より詳しくは、プロセス制御システム内
で地理的に分散された物理的な位置からアクセスおよび
更新が可能なコンフィギュレーション・データベースを
有するプロセス制御コンフィギュレーション・システム
としての、コンフィギュレーション・データベース・シ
ステム、更には、プロセス制御システムでコンフィギュ
レーション・データを使用する方法、およびプロセス制
御システムでコンフィギュレーション動作を行う方法に
関する。
【0002】
【従来の技術および発明が解決しようとする課題】本願
は、1999年10月18日に出願された仮出願第60/160,104号
の「プロセス制御システム内で分散された物理的な位置
からのコンフィギュレーション・データベースに対する
アクセスおよび更新」に基づく出願である。
【0003】プロセス制御システムは、化学,石油,又
はその他のプロセスに利用されるもののように、概し
て、アナログおよび/若しくはデジタル・バス又はその
他の通信線又はチャネルを介して、少なくとも1つのホ
スト・デバイス又はオペレータ・ワークステーションと
一又は複数のフィールド・デバイスとに通信可能に結合
される少なくとも1つのプロセス・コントローラを備え
ている。前記フィールド・デバイス、即ち、例えば、バ
ルブ,バルブポジショナー,スイッチ,および送信機
(例えば、温度,圧力,および流量センサ)等は、バル
ブの開閉、およびプロセス・パラメータの測定の如きプ
ロセスにおける機能を実行する。プロセスのランタイム
中にあっては、前記プロセス・コントローラは、フィー
ルド・デバイスおよび/又は入力/出力(I/O)装置を
介した該フィールド・デバイスに関するその他の情報に
よってなされたプロセス計測を示す信号を受信し、制御
ルーチンを実行するためにこの情報を使用して、当該プ
ロセスの動作を制御すべく、前記入力/出力装置を介し
てバス又はその他の通信チャネルを通じて前記フィール
ド・デバイスへ送信される制御信号を生成する。前記フ
ィールド・デバイスおよび前記コントローラからの情報
は、プロセスの現在の状態を見ること等のプロセスに関
するどの様な要求機能でもオペレータが行えるように、
前記オペレータ・ワークステーションにより実行される
一又は複数のアプリケーションについて、概してランタ
イム中に利用できるようになされている。加えて、ホス
ト・デバイス,ワークステーション,およびラップトッ
プ・コンピュータ等の如きユーザ・インタフェースで実
行されるコンフィギュレーション・アプリケーション
は、プロセスの操作を修正するため、プロセスを設定す
るため、プロセスのコンフィギュレーションを見るた
め、およびプロセス・コンフィギュレーションを記録す
るため等に利用される可能性がある。
【0004】概括して言えば、プロセス制御システム
は、該プロセス制御システム内でハードウェアおよびソ
フトウェア・コンポーネントの各々に関連するコンフィ
ギュレーション情報を格納するコンフィギュレーション
・データベースを用いるように構成されており、プロセ
スにおける異なるデバイスおよびコントローラの如きハ
ードウェア・コンポーネントが、物理的に相互接続さ
れ、また、制御モジュールおよび通信モジュール等の如
き異なるソフトウェア・コンポーネントが、プロセス制
御を実行するために、プロセス制御システム内における
異なるデバイスによって連携および実行される。場合に
よっては、前記コンフィギュレーション・データベース
は、オブジェクトとしてプロセス制御システムの各々異
なる論理的なコンポーネントのためにコンフィギュレー
ション・オブジェクト又はコンフィギュレーション・コ
ンポーネントを格納するオブジェクト指向データベース
である。前記コンフィギュレーション・データベース
は、例えば、幾つか又は全てのハードウェアおよびソフ
トウェア・コンポーネントのためのオブジェクト・テン
プレートを格納するライブラリを備えることが可能であ
る。そして、これらのテンプレートは、プロセス制御シ
ステム内で実際に用いられている例えばハードウェア又
はソフトウェア・コンポーネントのためのコンフィギュ
レーション・オブジェクトを生成するために使用され
る。前記コンフィギュレーション・データベースは、ま
た、プロセス制御システムの物理的なコンポーネントが
セットアップされ、分配され、そして相互接続されるよ
うな、セットアップ又は物理ネットワーク・セクション
を備えることが可能である。場合によっては、前記コン
フィギュレーション・データベースは、また、コントロ
ーラ,フィールド・デバイス,および該コントローラお
よび/又はフィールド・デバイスにおいて実行される制
御モジュール又は制御ルーチンを用いてどの様に制御が
なされるかを定義する制御セクションを備える。前記プ
ロセス制御システムのコンフィギュレーションにおい
て、例えばユーザ・インタフェース又はワークステーシ
ョンで実行されたコンフィギュレーション・ルーチン又
はアプリケーションは、前記プロセス制御システムの実
際のコンフィギュレーションを反映してコンフィギュレ
ーション・データベースを生成又は修正するために使用
される。このコンフィギュレーション・アプリケーショ
ンは、概して、前記プロセス制御システムに関連するデ
バイスおよびコントローラ等を設定すべく前記コンフィ
ギュレーション・データベース内の情報を使用し、ま
た、デバイス又はソフトウェア・コンポーネントが前記
システムに加えられる時等のような如何なるコンフィギ
ュレーション動作が行われた後であっても、新しいコン
フィギュレーション情報を前記コンフィギュレーション
・データベースに格納するようになっている。
【0005】また、前記コンフィギュレーション・デー
タベースは、前記プロセス制御システムに接続されたユ
ーザ・インタフェースを介して、ユーザに前記プロセス
制御システムの現在のコンフィギュレーションを表示す
るために一般に用いられる。過去においては、プロセス
制御システムのユーザ・インタフェース,コンフィギュ
レーション・データベース,およびコントローラの幾つ
かは、ローカル・エリア・ネットワーク(LAN)を形成
すべく、イーサネット(登録商標)・バスの如き専用バ
スによって通信可能に相互接続されていた。専用のイー
サネット・バスが大きい帯域幅を有し、また、該イーサ
ネット・バス上を送信される任意の特定の信号又はデー
タ要求をLAN内であまり長い距離に亘って往来させる必
要がないので、前記ユーザ・インタフェースのうちの1
つによる前記コンフィギュレーション・データベースと
の通信は、これらのシステムにおいて相当容易且つ高速
である。その結果、前記ユーザ・インタフェースにおい
て実行されるコンフィギュレーション表示ルーチンは、
ユーザが前記プロセス制御システムのコンフィギュレー
ションに関連する情報を示すか又は要求する都度、概し
て、前記コンフィギュレーション・データベースにアク
セスして、コンフィギュレーション情報を取り出す。こ
の取り出された情報は、それから、イーサネット・バス
を通じて送出されて、前記ユーザ・インタフェース上に
てユーザに表示される。前記専用のイーサネット・バス
の速度(又は大きい帯域幅)のため、複数のユーザが、
前記コンフィギュレーション・データベースに比較的同
時にアクセスすることができ、また、前記プロセス制御
システムのコンフィギュレーションに関連する同一の又
は異なるコンフィギュレーション・データを見ることが
できる。同様に、異なるユーザが、プロセス制御システ
ムの異なる部分を再設定することができる。なぜなら、
生成された如何なる新しいコンフィギュレーション・デ
ータであっても、前記専用のイーサネット・バスを介し
て比較的短い時間で、前記コンフィギュレーション・デ
ータベースに直接的に提供され得るからである。さら
に、前記LANに接続されたこれらのデバイスだけが前記
コンフィギュレーション・データベースにアクセスする
ことができるので、また、前記LANが単一のプロセスの
位置に概して限られるので、多数のユーザ・インタフェ
ースがコンフィギュレーション・データベースに同時に
アクセスすることを可能にする必要は余りない。
【0006】近年、しかしながら、幾つかのプロセス制
御システムのサイズに対する一般的な増加があり、ま
た、より大きい又は離隔された地理的なエリアに亘って
拡散又は分配されたプロセス制御ネットワーク用に、コ
ンフィギュレーション情報を統合したいという要望があ
った。例えば、或るユーザは、異なるプロセス・サイト
に関連するコンフィギュレーション・データを結合する
ことを望み、当該プロセス・サイトは、異なる郡,州,
又は更には異なる国に存在する可能性がある。それによ
って、第1のサイトにおけるオペレータに対して、第2の
サイトについてのコンフィギュレーション情報へのアク
セスおよび該コンフィギュレーション情報の閲覧を許容
し、更には、第1のサイトから第2のサイトに影響を与え
るコンフィギュレーション動作を行うことさえ許容する
ことも可能である。別の例では、ユーザが、海洋を遠く
離れ、精油プロセス制御システムを備えたプラットフォ
ーム上での油井を、本土に存在する多数のコントローラ
およびユーザ・インタフェース等を用いて統合したいと
要望するかも知れない。この場合、精油サイトにおける
ユーザに対して、前記プラットホームまで実際に飛んで
行くことなしに、油井プラットホームでのデバイスの再
設定又は設定(コンフィギュレーション)に影響を与え
ることを可能とすることが望ましい。つまり、現在一般
的に必要であるように、油井プラットホームのターミナ
ルにユーザ・インタフェースを接続し、油井コントロー
ラを再設定するのである。さらに、複数のプロセス制御
サイトの統合にあっては、これらのサイトのコンフィギ
ュレーション・データベースに同時にアクセスすべく用
いられ得るユーザ・インタフェースの数はかなり増加す
る。
【0007】複数の地理的に離隔したサイトを統合する
際には、しかしながら、それは、距離に起因して、イー
サネット・バスの如き共通の専用バスを使用する異なる
サイトを接続することが、実際には不可能である。しか
しながら、衛星,セルラー,若しくはその他の種類の無
線接続、又はインターネット若しくはT1回線の如き広域
ネットワーク接続を使用すること、プロセス制御システ
ムの異なるサイト間の通信接続を確立することは可能で
あり、それによって、プロセス制御ネットワークの地理
的に離隔した部分の統合を可能にする。しかし、衛星,
セルラー,およびその他の広域無線通信接続は、概し
て、その使用に際して非常に高価であり、これらが、イ
ーサネット・バスの如き専用バスと比較して限られた帯
域幅のみを提供することができるように一般に共有され
る。同様に、インターネット,T1回線,およびその他の
共有広域ネットワークは、限られた帯域幅又はスループ
ットだけを提供するので、専用のイーサネット・ローカ
ル・エリア・ネットワーク・バスと比較して、概してデ
ータ転送が非常に遅い。また、異なるサイト間の地理的
な距離と、例えばデータ・パケットの認証を用いるサイ
ト間の安全な保証された通信を提供するために必要なこ
ととは、IF,TCP,およびUDP通信プロトコルにおいて提
供されるように、サイト間の通信の遅れを更に増大す
る。
【0008】プロセス制御システムの地理的に多様なサ
イト間の通信における遅れと、コンフィギュレーション
・データベースにアクセスするユーザ・インタフェース
又はその他のデバイスの数の増加との結果として、異な
るサイトの全てにおけるユーザによるアクセスのよう
な、また、現状のコンフィギュレーション・データベー
スのアクセス手順を用いて異なるサイトにおけるユーザ
による変更のような、地理的に多様なサイトの各々での
デバイスを含むプロセス制御システム全体のためのデー
タを格納するコンフィギュレーション・データベースを
提供することは難しい。特に、コンフィギュレーション
・データベースがメイン・サイトにあるならば、リモー
ト・サイトにおけるユーザが、遅いリンク又はリモート
・リンクを通じてリフレッシュ単位でコンフィギュレー
ション・データの全てをダウンロードしなければならな
ず、甚大な時間をとられることになる。また、コンフィ
ギュレーション・データベースにアクセスしているユー
ザの数の顕著な増加は、コンフィギュレーション・デー
タベース内の如何なる情報へのアクセス時間をも容認で
きないレベルにまで増大することになる。同様に、プロ
セス制御システムを再設定する際、メイン・サイトおよ
びリモート・サイト間の通信の遅れは、2人の異なるユ
ーザに対して、混乱およびエラーに導く、プロセス制御
システムの同一のコンポーネントの再設定を行わせる。
このように、例えば、リモート・サイトにおけるユーザ
は、メイン・サイトでのコンフィギュレーション・デー
タベースからのプロセスの現在のコンフィギュレーショ
ンを要求し、得ることが可能であり、リモート・サイト
でのプロセス制御システムの部分を再設定し、それか
ら、メイン・サイトでのコンフィギュレーション・デー
タベースに新しいコンフィギュレーション・データを送
信することが可能である。一方、しかしながら、メイン
・サイトにおけるユーザは、プロセス制御システムの同
一部分を再設定することが可能である。なぜなら、メイ
ン・サイトでの通信に比較的遅れがないからであって、
リモート・サイトにおけるユーザは、エラーを導く、格
納のためにコンフィギュレーション・データベースへリ
モート・サイトで生成された新しいコンフィギュレーシ
ョン・データを送ろうとする前に、この新しいコンフィ
ギュレーションをコンフィギュレーション・データベー
スに格納することが可能である。
【0009】場合によっては、異なるサイト間での遅く
小さい帯域幅の通信リンクを提供することでさえ、不可
能であるか又は実用的ではないかも知れない。この場
合、リモート・サイトのコンフィギュレーションは、リ
モート・サイトでなされなくてはならず、従ってメイン
・サイトでコンフィギュレーション・データベースにア
ップロードされなければならない。しかし、このオフラ
インのコンフィギュレーションは、異なるユーザが同時
又は略同時にリモート・サイトを再設定しようとする場
合に、又はリモート・サイトを既に再設定した別のユー
ザが該リモート・サイトに既になされた変更を反映する
ためにコンフィギュレーション・データベースを更新す
る前に、最初ののユーザが再設定しようとした場合に、
問題を引き起こすことがあり得る。
【0010】本願発明は、プロセス制御システムの異な
る位置が、小さい帯域幅若しくは遅い(即ち、遅延され
た)通信回線を介して通信可能に接続されるか、又は例
えばモデム接続を介して間欠的に通信可能に接続される
ときであっても、異なる位置の各々におけるユーザに、
タイムリーで、安全で、且つ非矛盾したコンフィギュレ
ーション・データベースの変更を可能とするように、共
通のコンフィギュレーション・データベースを用い、プ
ロセス制御システムの多数の地理的に離隔した位置を統
合することを可能にするための、プロセス制御システム
でコンフィギュレーション・データを使用する方法、お
よびプロセス制御システムでコンフィギュレーション動
作を行う方法、並びにプロセス制御システム、およびコ
ンフィギュレーション・データベース・システムを提供
することを目的とする。
【0011】
【課題を解決するための手段】本願発明の1つの観点に
よれば、一又は複数のプロセス制御サイトでのユーザ・
インタフェースは、マスター・コンフィギュレーション
・データベースの外でコンフィギュレーション・コンポ
ーネントをコピーおよびチェックするために、メイン・
プロセス制御サイトでの前記マスター・コンフィギュレ
ーション・データベースに一時的に接続およびアクセス
することが可能であり、これによって、これらのコンポ
ーネントがその他のユーザによって変更されることを防
止する。チェック又は変更のために予約されたコンポー
ネントは、変更をなす必要があるその他の任意のコンポ
ーネントとともに、ブリーフケース・データベースに格
納され得る。これらのコンポーネントは、リモート・サ
イト又はオフライン・サイトから取得可能であり、前記
リモート・サイトを再設定又はデバッグするために使用
される。前記ユーザは、予約されたコンフィギュレーシ
ョン項目へ変更をなすために、又は前記リモート・サイ
トでのその他の動作を実行するために、前記リモート・
サイトでの前記ブリーフケース・データベースを使用す
る。その後で、予約されたコンポーネントになされた変
更が、前記マスター・コンフィギュレーション・データ
ベースにアップロードおよび格納される。この際に、前
記マスター・コンフィギュレーション・データベース内
の前記変更を格納し、これらの項目をその他のユーザに
開放する起用手順を使用する。もし、例えば、前記ユー
ザが、2つの異なるプロセス制御システムに変更をなす
ことを望むならば、前記ユーザは、同一のブリーフケー
ス・データベース内に異なるプロセス制御システム,サ
イト等に関連する情報を配することもできる。
【0012】本願発明のいま1つの観点によれば、共有
されたコンフィギュレーション・データ、例えば、複数
の位置に関連する又は複数の位置に適用可能なコンフィ
ギュレーション・データが、遅い又は小さい帯域幅の一
又は複数の通信回線を介してその他の位置の各々によっ
て評価可能なデータベースに格納されるように、また、
特定の位置だけに関連するデータが、その位置でコンフ
ィギュレーション・データベースに格納されるように、
プロセス制御システムの異なる地理的な部分上又は部分
を介して分散されたコンポーネントを備える分散型のコ
ンフィギュレーション・データベースを提供する。この
ように、特定の位置で最もアクセスされると思われるコ
ンフィギュレーション情報(例えば、その位置に関連す
るコンフィギュレーション情報)は、その他の位置に関
連するコンフィギュレーション情報が遅い又は小さい帯
域幅の通信回線を通じてアクセスされ得る一方、ローカ
ル・エリア・ネットワークを通じてアクセス可能であ
る。その結果、共有通信データと異なる位置に関連する
データだけは、遅い又は小さい帯域幅の通信回線を通じ
て送信される必要がある。
【0013】
【発明の実施の形態】以下、本願発明の実施形態を図面
を参照しながら説明する。図1において、プロセス制御
システム10は、双方向チャネルからなる第1の上り回線
/下り回線チャネル20と第2の上り回線/下り回線チャ
ネル22とを有する衛星18によって構成された衛星通信回
線16を介して通信可能に接続された地理的に離隔した第
1および第2のサイト(又は位置)12,14を備えている。
第1のサイト12(ここでは、ローカル又はメイン・サイ
ト12と称す)は、例えば、イーサネット又はその他の任
意の好ましいバス又は通信線である専用のローカル・エ
リア・ネットワーク・バス(LANバス)34を介してユー
ザ・インタフェース28に接続された、2つのプロセス・
コントローラ24,26と、コンフィギュレーション・デー
タベース30と、データ・サーバ32とを備えている。ユー
ザ・インタフェース28は、任意の好ましい種類のホスト
・ワークステーション又はコンピュータであり、例え
ば、任意の種類のパーソナル・コンピュータ,ラップト
ップ・コンピュータ等である。この際、コンフィギュレ
ーション・データベース30は、スタンド・アローン型の
データベース装置、又は例えばユーザ・インタフェース
28若しくはデータ・サーバ32の如きその他の任意のデバ
イスに統合されていてもよい。データ・サーバ32は、デ
ータ・サーバ32が第2のプロセス制御サイト14へ遅い又
は小さい帯域幅の通信回線16を通じて通信するために使
用するアンテナ39を備える。なお、ここでは、第2のプ
ロセス制御サイト14をリモート・サイト14と称す。
【0014】前記プロセス・コントローラ24,26の各々
は、一又は複数の入力/出力(I/O)装置36に接続され
ている一方、該I/O装置36は、従来の4~20ミリアンペア
のデバイス38又は任意の好ましい種類のフィールド・デ
バイス(F.D)(例えば、「HART(商標)」,「PROFIBU
S(商標)」,「アクチュエータ・センサ・インタフェ
ース(AS-Interface)」,「WORLDFIP(商標)」,「De
vice-Net(商標)」,「CAN」,「FOUNDATION(登録商
標)Fieldbus(以下に「Fieldbus」と称す)等のような
高性能フィールド・デバイス)40に接続され得る。勿
論、前記デバイス38,40は、プロセス制御システム10内
で任意の制御,測定,又はその他の機能を行い得る任意
の好ましい種類のデバイス(例えば、センサ,送信機,
バルブ,ファン,ミキサー,ポジショナー等)とするこ
とが可能である。前記プロセス・コントローラ24,26
は、任意の公知の又は好ましい種類のI/O装置36と、前
述した何れかに関連する通信プロトコルとを用いるフィ
ールド・デバイス38,40と通信することが可能である。
概括して言えば、プロセス・コントローラ24,26は、そ
の一例として、本願出願人であるフィッシャー・ローズ
マウント・システムズ・インコーポレイテッド社から販
売されている「DeltaV(登録商標)」コントローラとす
ることが可能であり、各々は、プロセッサと、データを
格納するメモリと、プログラムと、メイン・サイト12で
プロセス(プロセス制御システム)10の制御を実行すべ
く用いられる制御ルーチン(例えば、プロセス制御モジ
ュール)とを備えている。概括して言えば、前記プロセ
ス・コントローラ24,26は、フィールド・デバイス38,
40から信号を受信し、プロセス制御ルーチンを実行し
て、それによってプロセス(プロセス制御システム)10
の制御を実行するために前記デバイス38,40に制御信号
を与える。
【0015】同様に、前記リモート・サイト14は、専用
のローカル・エリア・ネットワーク・バス(LANバス)5
8(例えば、イーサネット又はその他の好ましいバス又
は通信線)を介してユーザ・インタフェース52,53に接
続された、プロセス・コントローラ(コントローラ)50
と、コンフィギュレーション・データベース54と、デー
タ・サーバ56とを備えている。前記コントローラ50は、
2つの高性能フィールド・デバイス(F.D)62にI/O装置6
0を介して接続されているように図示してあるが、その
他の任意の個数又は種類のフィールド・デバイスに接続
され得るものである。前記データ・サーバ56は、遅い又
は小さい帯域幅の回線16を介してデータ・サーバ32と通
信するためにアンテナ64を利用し、これによって、ロー
カル・サイト12とリモート・サイト14との間における通
信を達成する。リモート・サイト14内の各デバイスは、
ローカル・サイト12内の対応する各デバイスと同一又は
同様のものであり得、リモート・サイト14においてプロ
セス制御および報告動作を行う。同様に、任意の好まし
い方法でプロセス制御およびコンフィギュレーション動
作を行うために、サイト12,14の何れか一方又は両方に
おいて、その他のデバイス又は更にその他の個数のデバ
イスが接続できるということである。実際、前記サイト
のうちの1つ(例えば、リモート・サイト14)は、望む
ならば、ユーザ・インタフェースのような単一のデバイ
スであり得る。前記データ・サーバ32は、直接コンフィ
ギュレーション・データベース30に接続され得、また、
同様に、前記データ・サーバ56は、イーサネット・バス
を介して接続される代わりに、直接コンフィギュレーシ
ョン・データベース54に接続され得る。
【0016】このように、前記データ・サーバ32,56
は、2つのLANバス34,58間の通信接続を提供するために
動作するものであって、これによって、ローカル・サイ
ト12およびリモート・サイト14内のデバイス間の通信を
可能にする。前記通信回線16が衛星回線として図示され
ているが、代わりに、例えば、セルラー回線,モデム,
電話回線、インターネット回線,その他の任意の無線回
線,又は広域若しくは共有ローカル・エリア・ネットワ
ーク回線等のその他の任意の通信回線が用いられ得る。
勿論、任意の好ましい通信方法が、前記回線16を介した
データ通信を提供すべく、通信回線16内で使用されるこ
とが可能である。従って、任意の通信プロトコル(例え
ば、IP,TCP,又はUDPプロトコル)が使用されることが
可能であり、例えば、任意の変調技術,エラー符号化技
術等が、例えばスペクトル拡散技術を含む回線16を介し
て通信を行うことに使われ得る。好ましくは、或る種の
データ認証方法が、雑音又はその他の干渉が存在する中
で安全で信頼できる通信を保証するために通信回線16で
使用される。望むならば、本願発明の譲受人に譲渡さ
れ、また、ここで参照することによってここに明白に取
り込まれる、1999年10月15日に出願された「遅延認証通
信および警報管理」という米国特許出願No. 09/418747
号に記述されたデータ認証方法又は技術を、通信回線16
を介した通信を達成することに使用することも可能であ
る。概括して言えば、前記通信回線16の使用は、互いに
統合されるべき地理的に離隔したプロセス制御サイト又
はシステムを、1つのプロセス制御ネットワークとして
構成することを可能する。ここで、1つのサイト内のデ
バイスは、制御動作およびとコンフィギュレーション動
作を行うべく、他のサイトにおけるデバイスと通信する
ことができる。
【0017】残念なことに、前記通信回線16を通じた通
信は、概して、前記サイト12,14間の距離のために、LA
Nバス34,58を通じた通信よりも非常に遅いものであ
る。さらに、前記通信回線16は、専用のLANバス34,58
と比較して小さい帯域幅を有するかもしれなくて、該LA
Nバス34,58を通じた通信よりも一般に雑音およびその
他のエラーに影響され易い。これらの要因は、一般に、
プロセス制御システム10内に通信のボトルネックの原因
を、通信回線16に作ることに繋がる。
【0018】本願発明によれば、プロセス制御システム
10が設定される方法に関連するコンフィギュレーション
・データは、コンフィギュレーション・データベース3
0,54の一方又は両方に格納される。また、一又は複数
のユーザ・インタフェース28,52,53、又はその他のデ
バイスは、コンフィギュレーション・アプリケーション
を格納し、また、オペレータの要求によって、該アプリ
ケーションを実行することが可能である。このコンフィ
ギュレーション・アプリケーションは、コンフィギュレ
ーション情報(例えば、プロセス制御ネットワーク10内
のデバイスのコンフィギュレーション,ソフトウェア・
モジュール等に関連する情報)を得るコンフィギュレー
ション・データベース30,54のうちの1つ以上にアクセ
スすることが可能であり、ユーザは、得られたコンフィ
ギュレーション情報を画面上に表示させることが可能で
ある。前記コンフィギュレーション・アプリケーション
は、また、ユーザに対して、新しいデバイス,ソフトウ
ェア・コンポーネント,又はその他のコンポーネントを
前記システムへ付加し、前記システム内のデバイス間の
新しい通信を提供し、前記システム内の既存のコンポー
ネントを変更する等して、前記プロセス制御システム10
の再設定を可能とする。別の例では、第1のデータベー
ス・サーバ(例えば、データ・サーバ32)において実行
されたコンフィギュレーション・アプリケーションは、
更に異なるリモート位置(図1においては図示せず)に
この情報を提供するために、前記遅い回線16を介しても
う1つのデータベース・サーバ(例えば、データ・サー
バ56)から情報にアクセスすることが可能である。勿
論、本願出願人であるフィッシャー・ローズマウント・
システムズ・インコーポレイテッド社から販売されてい
る製品「DeltaV」を備えた前記コンフィギュレーション
・アプリケーションのような、任意の好ましいプロセス
制御コンフィギュレーション・アプリケーション又はル
ーチンを使用することが可能である。特に、前記「Delt
aV」のコンフィギュレーション・アプリケーションは、
プロセス制御のコンフィギュレーション情報をウィンド
ウズ(登録商標)・エクスプローラー式のツリー構造で
表示し、ユーザ又はオペレータがコンポーネントをコン
フィギュレーション・ツリー内で一方から他方へドラッ
グ・アンド・ドロップすることによって、前記システム
10を再設定することが可能であって、これにより、異な
るデバイス内のこれらのコンポーネントをロードする
か、プロセスの異なるエリアでプロセス制御コンポーネ
ントの配置を示すか、異なるコントローラ,バス,若し
くはI/Oデバイス等へデバイスの接続を示すか、又は異
なるデバイス内でソフトウェア・コンポーネントをロー
ドする。ドーブ(Dove)らの米国特許出願第5,838,563
号(プロセス制御環境を最設定するシステム)、ニクソ
ン(Nixon)らの米国特許出願第5,828,851号(標準デバ
イスおよび非標準デバイスの標準プロトコル制御を用い
たプロセス制御システム)、1996年4月12日に出願され
たニクソンらの米国特許出願第08/631519号(ネットワ
ークへのデバイスの接続を自動的に検出する方法および
装置を有するプロセス制御システム)、および1996年4
月12日に出願されたドーブの米国特許出願第08/631458
号(プロセス制御環境の設定を支援するシステム)は、
全て本願発明の譲受人に譲渡されており、また、ここで
参照することによってここに明白に取り込まれる。これ
らは、ユーザに対して、プロセス制御ルーチンおよびコ
ンポーネントを視覚的に作成すること、プロセス制御シ
ステム内のデバイスの制御を自動検出すること、および
プロセス制御システム内のデバイスの制御を提供するこ
とを可能にするプロセス制御コンフィギュレーション・
アプリケーションについて記述したものである。勿論、
その他の任意のグラフィック・コンフィギュレーション
・アプリケーションおよび非グラフィック・コンフィギ
ュレーション・アプリケーションを含むその他の任意の
コンフィギュレーション・アプリケーションが、前記コ
ンフィギュレーション・データベース30,54にアクセス
するために、ユーザ・インタフェースにおいて又はサー
バ・データベース又はその他のデバイスにおいて実行さ
れ得る。
【0019】図2は、プロセス制御システムのコンフィ
ギュレーションを表示するために用いられることが可能
であり、また、プロセス制御システムのコンフィギュレ
ーションへの変更を視覚的に特定するための用いられる
ことが可能である、プロセス制御のコンフィギュレーシ
ョン・ツリー65の一例を示している。概括して言えば、
図2のコンフィギュレーション・ツリー65は、「トレイ
シー・アイランド」と名付けられたプラントのコンフィ
ギュレーションに関連する情報を図示および提供してい
る。前記トレイシー・アイランドのコンフィギュレーシ
ョン・システムは、例えば、異なるデバイスの設定,デ
バイスの定義,ソフトウェア・コンポーネント等のテン
プレート(例えば、制御モジュール)、又は前記トレイ
シー・アイランドのプラントで使用されるその他のオブ
ジェクトを有することが可能であるライブラリ・セクシ
ョン66を有している。これらのテンプレートは、前記ツ
リー65において示されていないが、ライブラリ・アイコ
ン66を選択する(例えば、ダブル・クリックする)こと
によって、これらを表示することが可能である。前記コ
ンフィギュレーション・ツリー65は、また、前記デバイ
ス(例えば、コントローラ,I/O装置,フィールド・デ
バイス,ユーザ・インタフェース等)が前記プロセス内
で物理的に配置されるようなシステム・コンフィギュレ
ーション・セクション67を有することが可能である。前
記トレイシー・アイランドのプラントのための図示のシ
ステム・コンフィギュレーションは、レシピ(例えば、
異なる製品を製造するプラントにおいて行われるプロセ
ス),セットアップ情報,および制御方法を有してい
る。図示の如く、前記制御方法のアイコン又はコンポー
ネントは、未割当のI/Oリファレンス,設備,および「A
rea A」および「Areal」と名付けられた2つのエリア
(物理的なエリア)を含む多数の子コンポーネントを有
している。前記「Area A」は、「Module1」制御モジュ
ールがトレイシー・アイランドのプラントの「Area A」
の部分内でロードされたことを図示する「Module1」子
コンポーネントを有している。前記システム・コンフィ
ギュレーションは、また、非稼動中のコントローラと制
御ネットワークのアイコンとのリストを有する物理ネッ
トワークを備えている。前記制御ネットワークのアイコ
ン又はコンポーネントは、一又は複数の稼動中のコント
ローラ(コントローラ「CTLR1」のみを図示)と、該コ
ントローラ「CTRL1」の操作に関連付けられたユーザ・
インタフェース(「Governmint」と名付けられている)
とを有している。各コントローラは、これに取り付けら
れた一又は複数のI/O装置を備えることが可能であり、
また、各I/O装置は、これに取り付けられ、前記ツリー6
5内で前記コントローラに通信可能に結合されるべき一
又は複数のフィールド・デバイスを備えることが可能で
ある。しかし、これらのコンポーネントは、図2には示
されていないが、例えば、「CTRL1」のアイコンがユー
ザによって選択された場合に表示されるようになってい
る。
【0020】なお、図2に図示されたコンフィギュレー
ション・コンポーネントは、親子関係を有し、ここで、
例えば、前記システム・コンフィギュレーション・セク
ション67は、レシピ,セットアップ,制御方法,および
物理ネットワークの子供を示すことを注記しておく。同
様に、前記制御方法は、非割当のI/Oリファレンス,設
備,「Area A」,および「Areal」の親である。また、
「Area A」は、「Module1」コンポーネントの親であ
る。勿論、子コンポーネントの各々は、更なる子供を有
することが可能であり、そのため、前記ユーザは、オブ
ジェクトがどのデバイスに格納されているか、どのデバ
イスがどの物理的なゾーンに配置されているか、また、
異なるデバイスがどの様に通信可能に相互接続されてい
るかについて見るために、コンフィギュレーション・ツ
リー65の如何なるレベルでも見ることが可能である。通
常、図2の階層は、親コンフィギュレーション・コンポ
ーネントの次にプラス(+)のシンボルを配置すること
によって、非表示の子コンポーネントの存在を示してい
る。また、その子供を含む選択されたコンポーネントに
関する情報は、図2の制御方法コンポーネントで図示さ
れるように、画面の右側に表示される。勿論、これらの
コンポーネントに関する更なる情報は、図2の階層内で
これらのコンポーネントを選択することによって得られ
る。
【0021】図2にコンフィギュレーション階層の一例
を示すように、プロセス制御ネットワークのための前記
コンフィギュレーション階層は、その他のデバイスおよ
びモジュールを示すことができ、また、その他の従属関
係をとることができると言える。また、プロセスは、多
数の物理サイト、および/又はゾーンに分割されること
が可能である。そして、これらのサイト又はゾーンの各
々は、前記階層において示されるような、自体に関連す
るコントローラ,ユーザ・インタフェース等を有するこ
とが可能である。勿論、ユーザは、初めに図2のツリー
65の一部を見るかもしれないが、それからコンフィギュ
レーション・ツリー65(例えば、「Area A」)内のコン
ポーネントを選択して、コンフィギュレーション・ツリ
ー(階層ツリー)65内へ更に掘り下げていくことが可能
である。この選択によって、階層ツリー65を提供してい
るコンフィギュレーション・アプリケーションに対し
て、選択されたオブジェクトの子供にアクセスして、表
示画面上にこれらの子供を表示させる。場合によって
は、前記コンフィギュレーション情報は、オブジェクト
指向データベース内にオブジェクトとして格納されるこ
とが可能であり、また、前記データベース内のオブジェ
クトは、前記コンフィギュレーション・アプリケーショ
ンによって表示された前記コンフィギュレーション・ツ
リー内に示されるものと同様の関係を有することが可能
である。
【0022】図2の階層ツリー65において図示されるコ
ンフィギュレーション・オブジェクト又はコンポーネン
トは、図1のコンフィギュレーション・データベース3
0,54に格納されることが可能であり、また、コンフィ
ギュレーション・データベース30,54からアクセスされ
ることが可能であると言える。前記コンフィギュレーシ
ョン・データベース30,54(例えば、任意の好ましい種
類のオブジェクト指向データベース)に格納される情報
は、任意の好ましい方法で格納されるかもしれなくて、
また、図2に示した関係に関連して又は該関係と同様の
関係を有している。
【0023】従来技術のプロセス制御ネットワークに
は、概して、離隔されたサイト(例えば、遅い又はリモ
ート通信回線を介して接続されたサイト)がない。この
ように、各プロセス制御システムは、概して、コンフィ
ギュレーション・データをそのシステム内のデバイスの
コンフィギュレーションだけに関連するそれ自身のコン
フィギュレーション・データベースを備えている。さら
に、このコンフィギュレーション・データベースは、概
して、ユーザ・インタフェース又は前記プロセス制御シ
ステムのLANに接続されたその他のデバイスの全てによ
ってアクセスされることができ、LANバスの大きい帯域
幅と、LAN内のユーザ・インタフェースおよびコンフィ
ギュレーション・データベースの間の比較的短い距離の
ために、非常に速くアクセスされ得る。このように、例
えば、従来技術のシステムにおいて、前記サイト12,14
の各々は、前記サイト(即ち、サイト12又はサイト14、
但し、両方ではない)のうちの1つ内のデバイスだけに
関連する情報を格納するそれ自身のコンフィギュレーシ
ョン・データベースを備えている。これらの場合、前記
サイト12,14間の通信回線16を提供することは、これら
のサイト間の通信を可能にすることであって、1つのサ
イトのためのコンフィギュレーション・データベース
は、その他のサイト内のデバイスのコンフィギュレーシ
ョンを反映せず、図2のそれのような、コンフィギュレ
ーション・アプリケーションが、別々のコンフィギュレ
ーション・データベースに格納されたコンフィギュレー
ション・コンポーネントを信号のコンフィギュレーショ
ン階層又はツリーに統合することはない。
【0024】また、従来技術のコンフィギュレーション
・アプリケーションは、ユーザが前記コンフィギュレー
ション階層内で更なる情報のために掘り下げる操作又は
その他の要求を行う都度、ユーザによって要求されてい
る情報を得るためにコンフィギュレーション・データベ
ースに概してアクセスするものである。残念なことに、
実際のデータをコンフィギュレーション・データベース
から読むことは、データを引き出すプロセスの最も遅い
部分である。従って、多数のユーザの各々がコンフィギ
ュレーション階層を見て、前記コンフィギュレーション
・データベースに読み書きすることは、単一のデータベ
ースからこの情報にアクセスすることができることを過
度に遅れさせることになる。このことは、より多くのユ
ーザが一又は複数のリモート通信回線を介して前記シス
テムに加えられるときに悪化し、前記コンフィギュレー
ション・データベースにアクセスすることができるユー
ザの数を増大する。同様に、データをこれらの離れて配
置されたユーザのために引き出すことは、リモート回線
(例えば、図1の通信回線16)に関連する通信における
ボトルネックによって、更に遅らせられる。
【0025】前記データベース30,54および前記プロセ
ス制御システム10内の通信は、前記プロセス制御システ
ム10についてのコンフィギュレーション情報を前記ロー
カル・サイト12およびリモート・サイト14の一方又は両
方における多数のコンフィギュレーション・アプリケー
ションに提供するための多くの方法によって、また、前
記リモート回線16を通じた通信量を低減する方法によっ
て、構成され得、前記プロセス制御システム10の全て又
は任意の部分の統合図を提供し、また、前記コンフィギ
ュレーション情報をプロセス制御システム10内の任意の
位置から変更することを許容する。最初のケースでは、
コンフィギュレーション・データベース(例えば、図1
のコンフィギュレーション・データベース30)のうちの
1つは、全てのコンフィギュレーション項目のマスター
・コピー又はその中のコンポーネントを格納するマスタ
ー・コンフィギュレーション・データベースに指定され
る。その他のコンフィギュレーション・データベース54
は、ブリーフケース・データベースと称され、該ブリー
フケース・データベースは、必要に応じて、マスター・
コンフィギュレーション・データベース30内の情報の幾
つか又は全てにアクセスし、このデータを前記通信回線
16を介してダウンロードし、また、リモート・サイト14
におけるユーザ・インタフェース又はその他のデバイス
にそのデータを見て、変更することを可能にする。変更
されたデータは、その他のユーザが前記マスター・コン
フィギュレーション・データベース30を介して当該デー
タにアクセスをすることを保証する通信回線16を介して
前記マスター・コンフィギュレーション・データベース
30にアップロードされ得る。この場合、必要とされたコ
ンフィギュレーション・データの全てが前記ブリーフケ
ース・データベース54にダウンロードされることがで
き、また、リモート・サイト14においてこのデータベー
ス54からアクセスされ得るので、前記遅い又は小さい帯
域幅の通信回線16を介した前記マスター・コンフィギュ
レーション・データベース30への個々のユーザ・インタ
フェースによる呼び出しは低減される。さらに、ブリー
フケース・データベース52に多数のコンフィギュレーシ
ョン・コンポーネントを一度にダウンロードするプロセ
スは、通信回線16の使用に関しては、少しずつこの情報
をダウンロードしようとすることよりも効率的である。
【0026】別のケースでは、コンフィギュレーション
・データベース54は、マスター・コンフィギュレーショ
ン・データベース30の状態を反映するミラー・データベ
ースであることが可能である。ミラー・データベース54
は、それが生成されるとき、マスター・コンフィギュレ
ーション・データベース30の状態を反映するためにマス
ター・コンフィギュレーション・データベース30からデ
ータの全てをコピーする。この方法によれば、例えばミ
ラー・データベース54内のルーチンは、遅い通信回線16
を介してマスター・コンフィギュレーション・データベ
ース30に定期的にアクセスし、ミラー・コンフィギュレ
ーション・データベース54においてなされた変更をマス
ター・コンフィギュレーション・データベース30に提供
することによって、また、マスター・コンフィギュレー
ション・データベース30になされた変更をミラー・コン
フィギュレーション・データベース54にコピーすること
によって、マスター・コンフィギュレーション・データ
ベース30と整合させる。ここでは、リモート・サイト14
におけるユーザが、遅い回線16を通じた個々のユーザに
よってなされたデータの呼び出しの回数を減らすか又は
該呼び出しを無くすミラー・コンフィギュレーション・
データベース54にアクセスする一方、メイン・サイト12
におけるユーザは、マスター・コンフィギュレーション
・データベース30にアクセスする。
【0027】更に別のケースでは、コンフィギュレーシ
ョン・データの異なる部分は、分散型のコンフィギュレ
ーション・データベースを構築するために、コンフィギ
ュレーション・データベース30,54に格納される。ユー
ザ・インタフェース又はその他のデバイスにおいて実行
されるコンフィギュレーション・アプリケーションは、
ユーザが、見ること、又はこのデータが元々格納され
て、これらのコンポーネントへの変更を予約するデータ
ベースから、操作することを望むコンフィギュレーショ
ン・コンポーネントにアクセスする。1つの実施形態に
おいて、予約(subscription)回線又はスレッドは、各
々のユーザ又はクライアントと、ユーザ又はクライアン
トがコンフィギュレーション・データを引き出すために
アクセスしているデータベースの各々との間で確立され
る。コンフィギュレーション・データベース54に格納さ
れ、ユーザ・インタフェース53(これらの両方ともリモ
ート・サイト14にある)によって予約されたコンフィギ
ュレーション・データに対しては、前記スレッドは、通
信回線16を介した通信を必要としない。しかし、コンフ
ィギュレーション・データベース30に格納され、ユーザ
・インタフェース53(これらは異なるサイトにある)に
よって予約されたデータに対しては、前記スレッドは、
通信回線16を介した通信を必要とする。その結果、前記
サイトにある又はこのデータが最もアクセスされそうで
あるその他の位置にあるコンフィギュレーション・デー
タベース内のコンフィギュレーション・データの各部分
を格納することが望ましい。この方法の詳細は後で更に
説明する。
【0028】ここに記述された技術は、多くの雑音が存
在する中(多数のリトライを引き起し得る)で、遅い又
はリモート通信回線を通じてリモート・システムにコン
フィギュレーションの変更をユーザにさせるための方法
を提供するものである。これらの技術は、また、メイン
・ネットワークから切り離されたプロセス制御システム
の一部を設定するか、又は同一の設定機器から複数のプ
ロセス制御システムを設定するための機構をユーザに提
供するものである。これらの技術は、また、複数のユー
ザに、リモートでシステムの異なる部分のコンフィギュ
レーションについて作業することを可能にし、プロセス
制御システムの開発の全体的な並列性を改善することが
できる。
【0029】プロセス制御システムに用いられるブリー
フケース・データベースの概念について、図3〜図5に
基づいて説明する。概括して言えば、この構成を用いる
プロセス制御システムは、メイン・サイトおよび異なる
リモート・サイトを含む、プロセス制御システムの全て
のサイトのために、コンフィギュレーション・データの
全てを格納するマスター・コンフィギュレーション・デ
ータベースを備えるようになされてある。前記メイン・
サイトおよびリモート・サイトは、衛星又はセルラー回
線のような遅い又は小さい帯域幅の通信回線を介して通
信可能に接続されても、モデム又は電話回線を介して間
欠的に接続されても、又は全く接続されなくてもよい
が、コンフィギュレーション・データを1つのサイトか
ら別のサイトへ転送するために、携帯型コンピュータ又
はその他の携帯型メモリに依存している。一般的に、メ
イン・サイトをリモート・サイトに接続する各リモート
・サイト又はラップトップ若しくはその他のコンピュー
タは、リモート・サイトで使用されるべきマスター・コ
ンフィギュレーション・データベース内の幾つか又は全
てのコンフィギュレーション・データのコピーを格納す
るブリーフケース・データベースを備えており、メイン
・サイトは、マスター・コンフィギュレーション・デー
タベースを備えている。
【0030】前記ブリーフケース・コンフィギュレーシ
ョン・データベースは、ダウンロードおよび格納操作を
用いてユーザによってマスター・コンフィギュレーショ
ン・データベースから初期化される。ダウンロード操作
において、前記ブリーフケース・データベースは、リモ
ート・サイトで作業するために、また、リモート・サイ
トを再設定、変更、デバッグ等するために必要であるマ
スター・コンフィギュレーション・データベース内のデ
ータの一部のダウンロードをコピー又は受信する。前記
ダウンロード操作では、リモート・サイトの状態を見る
こと等、リモート・サイトでの要求操作を実行するため
にユーザによって必要とされるコンフィギュレーション
情報の全てを自動的にダウンロードすることができる。
任意の操作のために必要とされるコンフィギュレーショ
ン・コンポーネントの全てのリストは、生成され、格納
され、また、前記ダウンロードを実行するために使用さ
れることが可能である。これに代えて、ユーザが、リモ
ート・サイトでの動作に必要とされる重要なコンフィギ
ュレーション・オブジェクトを選択するようにしてもよ
く、また、これらの選択されたコンポーネントの親およ
び/又は子供の幾つか又は全部が、ブリーフケース・デ
ータベースに自動的にダウンロードされるようにしても
よい。望むならば、しかしながら、ユーザは、特定のコ
ンポーネントをダウンロードすべく選択することも可能
である。
【0031】このデータがブリーフケース・データベー
スによって使用されている一方、コンフィギュレーショ
ン・データがマスター・コンフィギュレーション・デー
タベース内で変更されることを防ぐために予約操作を使
用する。ブリーフケース・データベースによってマスタ
ー・コンフィギュレーション・データベース内で予約さ
れた項目だけは、リモート・サイトで変更することがで
きる。項目を予約するために、コンフィギュレーション
・アプリケーションは、マスター・コンフィギュレーシ
ョン・データベースに予約メッセージを送信することが
可能であり、そして、予約済であるとしてマスター・コ
ンフィギュレーション・データベース内のこの項目に目
印を付け、他のユーザがマスター・コンフィギュレーシ
ョン・データベース内の該当する項目に変更を行うこと
から防ぐようにしてある。この項目の読み込みの防止を
予約したときには、前記項目を任意にロックすることが
可能である。このようなロック状態は、他人がこの項目
を編集又は予約することを防止する。勿論、要求に応じ
て、前記ダウンロードおよび予約操作を、遅いか、小さ
い帯域幅であるか、又は間欠的な回線を介して実行する
ことも可能である。しかし、コンフィギュレーション・
データの全てが一緒に又は同時にダウンロードされるの
で、このようなダウンロードは、必要に応じて、個々に
基づく遅い又は小さい帯域幅の回線を介してマスター・
コンフィギュレーション・データベースから前記データ
のコピーを得ることよりも効率的である。
【0032】コンフィギュレーション項目をダウンロー
および予約した後に、ブリーフケース・データベース
が、リモート・サイト(ブリーフケース・データベース
が既にリモート・サイトにない場合)へ持っていかれ
て、コンフィギュレーション動作を実行するためにリモ
ート・サイトでコンフィギュレーション・アプリケーシ
ョンによって使用される。特定の操作を実行するのに必
要なコンフィギュレーション情報の全てがブリーフケー
ス・データベースに提供されたので、ブリーフケース・
データベースが直接的にリモート・サイトで使用され得
るか、リモート・サイトでローカル・データベースを構
築するために使用され得る。そして、このローカル・デ
ータベースがリモート・サイトで実行される任意のコン
フィギュレーション・アプリケーションによって使用さ
れ得る。
【0033】一般的に、ブリーフケース・データベース
を使用するコンフィギュレーション・アプリケーション
は、そのブリーフケース・データベースによってマスタ
ー・コンフィギュレーション・データベースから予約さ
れている項目を編集することのみができる。例えば、ユ
ーザが、接続された複合体(linked composite)でモジ
ュールを予約したならば、マスター・コンフィギュレー
ション・データベースは、ブリーフケース・データベー
スへ、モジュールと、そのモジュールの従属物又は子供
の全部とを転送し、前記モジュールを予約するだけであ
る。勿論、前記接続された複合体を、モジュールとして
同様を予約することもできる。ユーザがダウンロード能
力を必要とするならば、システムは、また、ユーザに特
定のノード上でのダウンロード権利を予約させ、ブリー
フケース・データベースで、それらのノードのためのダ
ウンロード記録と状態情報とを含むコンフィギュレーシ
ョン情報を交換させることができる。望むならば、ブリ
ーフケース・データベースを使用するコンフィギュレー
ション・アプリケーションは、ユーザが編集することが
できる項目を明らかに示すように、ブリーフケース・デ
ータベースに格納されるコンフィギュレーション・デー
タを表示することが可能である。例えば、編集可能な項
目は、ソリッド・タイプ(solid type)においてコンフ
ィギュレーション階層ツリー上で確認されることが可能
であり、ユーザが変えることができない全ての項目は、
灰色にされて表示され得る。勿論、どの項目又はコンポ
ーネントが予約されているかについてのその他の方法も
また、同様に使用され得る。上述のように、予約されて
いるマスター・コンフィギュレーション・データベース
の項目は、マスター・コンフィギュレーション・データ
ベースにおいてロックされており、それらの項目を予約
したブリーフケース・データベースによって発生した起
用操作(promote operation、下記)以外には、それに
対しては全く変更がなされないようにすることが可能で
ある。
【0034】ユーザがブリーフケース・データベース内
で予約された項目に変更をした後で、ブリーフケース・
データベースは、それから、起用操作を通じて、マスタ
ー・コンフィギュレーション・データベースと整合させ
ることができ、予約されたコンフィギュレーション・コ
ンポーネントになされる変更は、マスター・コンフィギ
ュレーション・データベースへリリースされて戻され
る。特に、起用操作は、これらの変更が反映されるか又
はマスター・コンフィギュレーション・データベースに
格納されるマスター・コンフィギュレーション・データ
ベースへ、該マスター・コンフィギュレーション・デー
タベースから予約されているコンフィギュレーション項
目を起用する。望むならば、このような操作は、マスタ
ー・コンフィギュレーション・データベース内の項目の
予約解除をする。コンフィギュレーション・アプリケー
ションは、遅い通信回線でのロードを低減するために、
起用されている項目への値又は変更と共にマスター・コ
ンフィギュレーション・データベースに起用メッセージ
を一度に送信することが可能である。勿論、予約および
起用する操作は、コンフィギュレーション・データの単
一の項目(例えば、ライブラリ項目,モジュール、ノー
ド,カード等)についてなされることができる。又はツ
リーの全部のセクションについて(例えば、親の、およ
び、その子供および孫の全部について)なされることが
できる。
【0035】望むならば、コンフィギュレーション・ア
プリケーションは、例えば、ブリーフケース・データベ
ースから予約された項目をエクスポートする、当該エク
スポート・ファイルをジップで圧縮(zip)する、ま
た、マスター・データベース内のノード(即ち、遅い又
は小さい帯域幅の通信回線を介して)へジップで圧縮さ
れたエクスポート・ファイルを転送する等によって、マ
スター・コンフィギュレーション・データベースにブリ
ーフケース・データベースの全体と整合させることが可
能である。マスター・データベースでは、アプリケーシ
ョンは、エクスポート・ファイルをジップで解凍し、任
意の公知の方法によってマスター・データベース内へこ
のファイルをインポートし、マスター・データベースに
おいて使用されるテキスト又はデータ形式のフォーマッ
トへマスター・データベースのための現在の設定を取り
出し、エクスポート・ファイルをジップで圧縮し、ま
た、ブリーフケース・データベースを備えるノードへジ
ップで圧縮されたエクスポート・ファイルを転送し返す
ことが可能である。ブリーフケース・データベースでの
アプリケーションは、それから、エクスポート・ファイ
ルをジップで解凍して、このジップで解凍されたファイ
ルをブリーフケース・データベースへインポートし戻
す。この処理は、マスター・コンフィギュレーション・
データベースおよびブリーフケース・コンフィギュレー
ション・データベース内の項目の全てが同一であること
を保証する。
【0036】さて、図3には、上述の如くブリーフケー
ス・データベースを使用するプロセス制御システム100
のコンフィギュレーション動作を図示してある。プロセ
ス制御システム100は、制御動作を行うコントローラ
(プロセス制御システム)10に接続されたユーザ・イン
タフェース102,104を有するメイン・サイト101を備え
ている。また、ユーザ・インタフェース102,104は、ラ
ンタイム・データ・サーバ(ランタイム・サーバ)108
に接続され、更に、遅い通信回線(例えば、衛星回線,
モデム回線(接続),セルラー回線等)を介して、リモ
ート・サイト111と通信するコンフィギュレーション・
データベース・サーバ(データベース・サーバ)110に
接続されている。また、メイン・サイト101は、データ
ベース・サーバ110によってアクセス可能なマスター・
コンフィギュレーション・データベース112を備えてい
る。同様に、リモート・サイト111は、ランタイム・サ
ーバ118に、また、前記遅い回線を介してメイン・サイ
ト101と通信するコンフィギュレーション・データベー
ス・サーバ120に接続されたユーザ・インタフェース11
4,116を備えている。また、リモート・サイト111は、
ブリーフケース・コンフィギュレーション・データベー
ス122を備えている。ブリーフケース・コンフィギュレ
ーション・データベース112は、リモート・サイト111の
ためのローカル・データベースとして使用されることが
でき、メイン・サイト101でマスター・コンフィギュレ
ーション・データベース112から遅い回線を通じてコン
フィギュレーション情報を得ることが可能である。
【0037】ユーザ・インタフェース114, 116のうち
の1つからのリモート,閲覧,予約,および整合操作を
提供するコンフィギュレーション・アプリケーションを
使用することにより、エンジニアは、マスター・コンフ
ィギュレーション・データベース112からブリーフケー
ス・データベース122へコンフィギュレーション情報を
ダウンロードすることができる。この手順の一部とし
て、ユーザは、マスター・データベース112をコピー
し、マスター・データベース112のためのツリー構造を
コピーし、マスター・データベース112から如何なる構
造をもコピーすることなくローカル又はブリーフケース
・データベースを構築する機会を与えられる。この際
に、マスター・コンフィギュレーション・データベース
112内で、リモート・サイト111におけるユーザは、ま
た、ダウンロードされた情報の幾つか又は全てを予約す
ることができ、これによって、その情報が変更されるこ
と、また、他人がマスター・データベース112内のその
情報を変更しようとすることを防止することができる。
好ましくは、前記ダウンロード操作は、遅い通信回線を
通じて直ぐに必要なコンフィギュレーション情報の全て
を提供する。そして、それは遅い回線を通じて少しずつ
このデータを得ることよりも効率的である。
【0038】その後で、ユーザは、コンフィギュレーシ
ョン・アプリケーションを使用しているリモート・サイ
ト111又はそのコンポーネントと、リモート・サイト111
でのブリーフケース・データベース122とを設定するこ
とができる。望むならば、これに加えて又はこれに代え
て、ユーザがリモート・サイト111からメイン・サイト1
01の一部を設定することもできる。この際に、例えばユ
ーザ・インタフェース116において実行されるコンフィ
ギュレーション・アプリケーションは、ブリーフケース
・データベース122にアクセスすることが可能であり、
ブリーフケース・データベース122内に格納されたコン
フィギュレーション階層若しくはツリーの一部を表示又
は使用することが可能である。ユーザがマスター・デー
タベース112において構造を見たいならば、ユーザは、
整合操作を実行させることができる。遅い回線を介して
マスター・データベース112に、その中の情報の全てに
ついて、ツリー構造について、又はマスター・データベ
ース112内のコンフィギュレーション情報のその他の要
求された部分について照会し、この情報でブリーフケー
ス・データベース122を更新する。予約された項目につ
いてのコンフィギュレーション動作が終了すると、ユー
ザは、変更がマスター・コンフィギュレーション・デー
タベース112に格納されるようにするために、遅い回線
を介してマスター・データベース112へ前記予約された
項目になされた変更を起用することが可能である。
【0039】さて、図4においては、一又は複数のブリ
ーフケース・データベースが、非接続のワークステーシ
ョンからコンフィギュレーション動作を実行するために
使用されることが可能である。特に、図4は、マスター
・コンフィギュレーション・データベース(マスター・
データベース)132,コンフィギュレーション・データ
ベース・サーバ(データベース・サーバ)133,および
これに関連付けられたユーザ・インタフェース134を備
えたメイン・サイト131を含むプロセス制御システム130
を示している。リモート・サイト135,136の各々は、デ
ータベース・サーバ138と、一又は複数のユーザ・イン
タフェースと、コンフィギュレーション・アプリケーシ
ョンを実行することが可能であるワークステーション14
0と、マスター・コンフィギュレーション・データベー
ス132において任意の項目についてのコンフィギュレー
ション動作を実行することが可能である一又は複数のブ
リーフケース・コンフィギュレーション・データベース
142とを同様に備えている。望むならば、ブリーフケー
ス・データベース142は、ユーザ・インタフェース装置1
40のうちの1つ内に存在することが可能である。図3の
システムと同様に、ワークステーション140におけるユ
ーザは、マスター・データベース132に接続するため
に、そこからコンフィギュレーション情報をダウンロー
ドするために、そして、変更されるべき項目の全てにつ
いてマスター・コンフィギュレーション・データベース
132内で予約するために、例えば、インタフェース140の
うちの1つにおいて実行されるコンフィギュレーション
・アプリケーションを使用することが可能である。この
ようなダウンロードは、例えば、ダイアルアップ接続又
は携帯型の取り外し可能な物理的な接続(例えば、ラッ
プトップ・コンピュータ)のような、遅い回線を通じて
又は間欠的な接続を介して実行され得る。何れにして
も、異なるサイト135,136は、マスター・コンフィギュ
レーション・データベース132からブリーフケース・デ
ータベース142へ、同一のコンフィギュレーション情報
の幾つか又は全てをダウンロードする。しかし、異なる
リモート・サイト135,136におけるユーザは、変更すべ
き別々の項目を予約することが可能である。
【0040】ダウンロード手順が実行された後で、コン
フィギュレーション・アプリケーションは、各ブリーフ
ケース・データベース142内で予約されている項目を変
更又は修正するために、ワークステーション140上で実
行されることが可能であり、若干の点で、これらの予約
された項目への変更は、起用手順を使用するマスター・
コンフィギュレーション・データベース132内へアップ
ロードし戻されることが可能である。このように、例え
ば、エンジニアが、どこか他で働くために項目をワーク
ステーション140内へ引き入れ、これらの項目を変更
し、これらの項目のより新しいバージョンをマスター・
データベース132内へ後日起用するために、ブリーフケ
ース・データベース142は、メイン・ネットワーク131か
ら完全に非接続とされた又は遅い通信回線を介して接続
されたワークステーション140上で使用されることが可
能である。同時に構築されるべき多数の異なるブリーフ
ケース・データベース142を可能にすることによって、
コンカレント・エンジニアリングを向上することができ
る。特に、コンフィギュレーション操作が論理的に分け
られ、また、異なるエンジニアによって割り当ておよび
完了されるように、各ブリーフケース・データベース14
2は、マスター・コンフィギュレーション・データベー
ス132内のコンフィギュレーションのサブセットを含む
ことが可能である。
【0041】望むならば、新しいコンフィギュレーショ
ン・データを、異なるブリーフケース・データベース14
2間でデータが流れるのを可能にするために、マスター
・データベース132へ定期的に起用し戻すことができ
る。例えば、実際には、1人のエンジニアが1つの設備に
取り組み、他の人がその設備を作動している制御モジュ
ールに取り組むことが可能である。後者は、制御モジュ
ールのコンフィギュレーション・コンポーネントを完了
する前に、設備のコンフィギュレーション・コンポーネ
ントの最終的なバージョンを必要とする。しかし、最終
的な設備定義については、前者のエンジニアが、前記設
備定義を完了し、マスター・データベース132内へこの
定義の内容を起用した後で、マスター・データベース13
2から引き出すことができる。
【0042】図5は、ブリーフケース・データベースが
有利に使用されることが可能であるプロセス制御システ
ム145の別の例を示す。該プロセス制御システム145は、
データベース・サーバ148,ユーザ・ワークステーショ
ン149,およびランタイム・サーバ150に接続されたマス
ター・コンフィギュレーション・データベース(マスタ
ー・データベース)147を有する制御室を備えている。
また、前記システム145は、LAN接続(共有LANを含む任
意の種類のLAN接続であることが可能である)により制
御室に接続され、データベース・サーバ152およびラン
タイム・サーバ154を有するプラント・フロアを備えて
いる。また、前記プラント・フロアは、これに接続され
た又はこれが備えるブリーフケース・データベース156
(例えば、ラップトップ・コンピュータ158又はその他
のコンピュータ,ユーザ・インタフェース,又は例えば
プラント技術者又はエンジニアがプラント・フロアで変
更を行うことによって使用されるワークステーション)
を備えている。プラント・フロアにおけるユーザは、LA
Nを介してマスター・データベース147に格納されたコン
フィギュレーション・データの項目を得るために、ま
た、これらの項目の少なくとも幾つかを予約するため
に、コンピュータ158からコンフィギュレーション・ア
プリケーションを実行させることができる。その後で、
プラント・フロアでコンフィギュレーションの変更をす
るためにコンフィギュレーション・アプリケーションで
必要とされるその他の任意の項目と共に、予約された項
目が、ブリーフケース・データベース156に一旦ダウン
ロードされたときに、前記プラント・フロアにおけるユ
ーザは、予約された項目に変更をするためにローカル又
はブリーフケース・データベース156を使用してコンフ
ィギュレーション・アプリケーションを実行させること
ができ、また、LANを介してマスター・データベース147
へこれらの変更を起用することができる。この処理は、
マスター・データベース147に共有LANを通じて多数の呼
び出しをする必要性を排除するが、能率が悪い。
【0043】同時に、家庭におけるユーザは、データベ
ース・サーバ164を介してマスター・データベース147に
接続されたコンピュータ160およびブリーフケース・デ
ータベース162を備えることが可能であって、例えば、
ダイアルップ・モデムであり得る。このユーザは、モデ
ム164を介してマスター・データベース147からコンフィ
ギュレーション・データを得ることができ、この情報を
ブリーフケース・データベース162に格納することがで
き、また、このユーザが変更を要望する項目を予約する
ことができる。完了すると、家庭におけるユーザは、暇
なときに、ブリーフケース・データベース162内でコン
フィギュレーション情報を操作するコンフィギュレーシ
ョン・アプリケーションを実行し、ダイアルップ・モデ
ムを介してマスター・データベース147へ変更を起用す
ることができる。
【0044】望むならば、例えば、ユーザは、2つの異
なるプロセス制御システムに変更をしたいと要望すれ
ば、同一のブリーフケース・データベースにおける異な
るプロセス制御システム,サイト等に関連する情報をダ
ウンロード又は配置することができる。このような状況
においては、複数のブリーフケース・データベースは、
1つのコンピュータに格納されることが可能であり、こ
の1つのコンピュータが同じプロセスの異なるサイトを
設定するか、異なるプロセスに関連する異なるサイトを
設定するために使用され得る。一般的に、このようなコ
ンピュータは、コンフィギュレーション・アプリケーシ
ョンを格納および実行し、コンフィギュレーション・デ
ータベースを有するラップトップ又はその他の携帯型コ
ンピュータであって、アプリケーションにロードおよび
アクセスするデータベースを伴っている。
【0045】望むならば、図1および図3〜図5の任意
のシステムのマスター・データベースは、コンフィギュ
レーション項目への変更に対するソース制御を提供する
ために、そこにコンフィギュレーション項目の改訂履歴
を自動的に格納することが可能である。同様に、ブリー
フケースのバージョンが変更され、起用動作が実行され
る必要があることを示すために、修正されているブリー
フケース・データベース内の項目は、それに付けられた
視覚的なチェックマークを有するように表示されること
が可能である。
【0046】ブリーフケース・データベースを提供する
代わりに、ミラー・データベースは、プロセス制御シス
テムのリモート・サイトに保持されることが可能であ
る。前記ミラー・データベースは、2つのデータベース
(即ち、整合されたリモート・データベースおよびマス
ター・データベース)を保持することによってブリーフ
ケースのモデルを拡張するものであって、例えば、遅い
回線を通じてデータベースを編集することが実現可能で
はない陸上/沖合でのプロセス制御構成においては、望
ましいことである。また、前記ミラー・データベース
は、冗長性をサポートするために使用されることが可能
である。ミラー・データベースにおいて、例えば、ライ
ブラリ,セットアップ,および制御データを含む全ての
コンフィギュレーション項目は、マスター・データベー
スからミラー・データベースによって予約される。この
ような予約は、望むならば、ここで図7〜図15に関連
して記述される方法において実行されることが可能であ
る。さらに、コンフィギュレーション項目がミラー・デ
ータベースにおいて編集される際、当該コンフィギュレ
ーション項目は、マスター・データベースから自動的に
予約される。このように、前記ミラー・データベースに
おける編集は、その項目を予約するために、遅い通信回
線を通じて、メッセージをマスター・コンフィギュレー
ション・データベースへ自動的に送信する。予約操作が
マスター・コンフィギュレーション・データベース内の
その項目のロックのために失敗した場合、前記ミラー・
データベース内の編集は防止される。その後の適当な時
間で、変更がミラー・データベースにおいてなされた後
で、コンフィギュレーション項目は、ミラー・データベ
ースからマスター・コンフィギュレーション・データベ
ースへ起用し戻される。このような起用動作は、変更が
なされるとき、定期的な時間単位で(例えば、10分毎
に、又は起用動作を実行するためのユーザ・コマンドに
応じて手動で)、自動的に達成されることが可能であ
る。
【0047】逆に、マスター・データベースへのミラー
・データベースによる予約のために、マスター・コンフ
ィギュレーション・データベースへの変更は、直ちに強
制されるか、又は前記遅い通信回線を通じてミラー・デ
ータベースに送信される。ミラー・データベースととも
に、通信回線がダウンしているときには、両方のデータ
ベースは独立して動作することができる。しかし、前記
通信回線が回復されたときには、前記データベースへの
変更は手動で統合されなければならない。一般に、複数
のミラー・データベースは、同一のマスター・データベ
ースの予約者として存在することができる。ミラー・デ
ータベースおよびマスター・データベース間の接続の予
約特性のために、ミラー・データベースが一旦確立され
た場合、ミラー・データベースおよびマスター・データ
ベース内のデータへの変更だけが、遅い又は小さい帯域
幅の通信回線を通じて送信される必要がある。そして、
それは、ミラー・データベースのユーザの各々によって
必要に応じて少しずつコンフィギュレーション・データ
をダウンロードしようとすることよりも効率的である。
【0048】マスター・コンフィギュレーション・デー
タベースと、又はこのセットアップに加えて、定期的に
整合させることが可能である単一のマスター・コンフィ
ギュレーション・データベースおよび一又は複数のブリ
ーフケース又はミラー・データベースを有する代わり
に、コンフィギュレーション・データの異なるコンポー
ネントがプロセス制御システムの異なる物理サイトに存
在する異なる物理データベースに格納されるように、コ
ンフィギュレーション・データベースは、プロセス制御
システムの異なる部分に亘って分散されることが可能で
ある。この分散型のコンフィギュレーション・データベ
ースが、2つ以上の地理的に離隔したサイト又は位置に
関連するコンフィギュレーション情報を一つに統合する
ことに使用されることが可能であり、また、プロセス制
御システム全体の継ぎ目の無い表示を提供することが可
能である。ここで、この継ぎ目の無い表示とは、異なる
サイト又は位置の各々におけるプロセス制御コンフィギ
ュレーションのコンポーネントの幾つか又は全部を含む
ことが可能である。
【0049】図6は、異なる論理的なおよび/又は物理
的な位置に関連付けられたコンフィギュレーション・デ
ータベースの階層を有するプロセス制御システム170を
示す。該プロセス制御システム170は、Zone A 172,Zon
e B 174,およびZone C 176と名付けられた3つのゾーン
と、Site 1 180およびSite 2 182と名付けられた2つの
サイトと、企業ネットワーク(企業システム)184とを
備えている。ゾーン172,174は、コンフィギュレーショ
ン・データベース172a,174aをそれぞれ備えており、こ
れらのゾーン172,174は、例えば、衛星,モデム,その
他の遅く小さい帯域幅であるか、又は間欠的な通信回線
を介して、サイト180に通信可能に接続されている(ゾ
ーン172,174とサイト180との間で実線により示す)。
同様に、ゾーン176は、コンフィギュレーション・デー
タベース176aを備え、任意の好ましい通信回線を介して
サイト182に通信可能に接続されている。さらに、サイ
ト180,182は、コンフィギュレーション・データベース
180a,182aをそれぞれ備え、任意の好ましい通信回線を
介して企業システム184に接続されている。また、該企
業システム184は、コンフィギュレーション・データベ
ース184aを備えている。
【0050】ゾーン172,174,176の何れかのように、
ゾーンは、概して論理的であり、多くの場合に大きい制
御システムの物理的な区域であることが可能である。こ
のように、ゾーンは、一般に外界との繋がり無しで機能
することができる。ゾーンは、例えば、特定の地理的な
位置での相互接続されたデバイスを有する任意の従来の
プロセス制御システムであることが可能である。サイト
(サイト180,182の何れか)は、エリア,範囲等の論理
的な定義であって、これとともに関連付けられる任意の
数のゾーンを有することが可能である。企業システム18
4は、プロセス制御システム170内のコンフィギュレーシ
ョン・データベースの階層内の最も高水準のシステムで
あって、前記サイトの各々に、また、それによって、プ
ロセス制御システム170内のゾーンの各々に通信可能に
接続されている。勿論、その他のサイト,ゾーン,およ
びエリア、又はその他の論理的な単位は、遅い又はその
他の通信回線を介して、プロセス制御システム170の階
層に相互接続されることができる。そして、任意のゾー
ン,サイト,エリア等のコンフィギュレーション・デー
タベースがその他の任意のゾーン,サイト,エリア等か
ら、2つ以上の通信回線の一又は一連のものを介してア
クセスできる限り、プロセス制御システムの異なる地理
的な位置は、その他の方法で相互接続されることが可能
である。また、図6の分散型のコンフィギュレーション
・データベースの階層が3つのレベル(ゾーン,サイ
ト,および企業)を含んでいるが、2つのレベル又は4つ
以上のレベルを代わりに使用することもできる。
【0051】図6に示す如く、プロセス制御システム17
0の各部分は、これに関連付けられたコンフィギュレー
ション・データベースを有し、プロセス制御システム17
0全体のためのコンフィギュレーション情報又はそれの
異なる要素(コンポーネント)は、データベース172a,
174a,176a,180a,182a,184aを介して分散される。好
ましい実施形態において、前記コンフィギュレーション
・データ又はコンフィギュレーション・コンポーネント
は、そのデータがユニークな名前を付けられている企
業,サイト,およびゾーンによって形成される階層にお
いて最も低いレベルで、コンフィギュレーション・デー
タベースに格納される。このように、例えば、プロセス
制御システム170において、何処にでも使用され得るデ
バイスとソフトウェア・コンポーネントとのテンプレー
トを格納することが可能であるライブラリ・データは、
概して、階層において(例えば、企業システム184のコ
ンフィギュレーション・データベース184aにおいて)最
も高いレベルに格納され、また、最も高いレベルからア
クセスできる。同様に、ライブラリ・コンフィギュレー
ション・コンポーネントとサイトのシステム・コンフィ
ギュレーションとに関連する情報は、ゾーンにおける特
定のデバイス,制御モジュール等に関連するコンフィギ
ュレーション情報が、そのゾーンのコンフィギュレーシ
ョン・データベースに格納される一方、前記サイトのコ
ンフィギュレーション・データベースに格納されること
が可能である。さらに、このコンフィギュレーション情
報がそのゾーン内の物理的なデバイスに直接関連がある
ので、制御のコンフィギュレーション情報は、ゾーン・
コンフィギュレーション・データベースに概して格納さ
れる。概括して言えば、目標は、このコンフィギュレー
ション・データが最もアクセスされそうであるように、
又はコンフィギュレーション・データの任意の特定の部
分がプロセス制御システム170のその他の位置における
ユーザによって容易に見つけられるように、データベー
スの階層のコンフィギュレーション・データベース内の
任意の特定の部分を格納することにある。
【0052】図6に示した分散型のコンフィギュレーシ
ョン・データベースの方法によれば、プロセス制御シス
テム170のゾーン,サイト,エリア等のうちの任意の1つ
内で動作するコンフィギュレーション・アプリケーショ
ンは、同一のサイト,ゾーン等、および/又はその他の
サイト,ゾーン等に配置されることが可能である一又は
複数のコンフィギュレーション・データベースから、コ
ンフィギュレーション・データにアクセスし、また、プ
ロセス制御システム170の現在の状態を示すために、又
はその他の何らかのコンフィギュレーション操作を実行
するために必要であるとして、そのデータにアクセスす
る。このように、図6のゾーン,サイト,又は企業シス
テムのうちの何れから実行されるコンフィギュレーショ
ン・アプリケーションは、プロセス制御システム170の
任意の部分又は全部の現在のコンフィギュレーションの
表示を生成するために、異なるコンフィギュレーション
・データベースの何れかに格納されたコンフィギュレー
ション・データにアクセスすることができ、また、プロ
セス制御システム170のサイト,ゾーン等の何れかの要
素(コンポーネント)の何れかを再設定可能にすること
もできる。分散型のコンフィギュレーション・データベ
ース(例えば、図6に示したもの)は、遅い通信回線を
通じて発生する必要がある通信量を減少させる傾向があ
る。それは、概して言って、サイト又はゾーンにおける
ユーザは、異なるサイト又はゾーンのそれよりもむしろ
そのサイト又はゾーンのコンフィギュレーション・デー
タを見て、使用して、また、変更しそうであるからであ
る。即ち、より少ない読み書きが一又は複数の遅い通信
回線を介してその他のゾーン又はサイトからやって来る
が、サイト又はゾーン内のコンフィギュレーション・デ
ータベースへの読み書きの殆どは、そのサイト又はゾー
ン内のユーザ・インタフェースからやって来るのであ
る。しかし、プロセス制御システム170の任意の部分の
コンフィギュレーション情報の全てに対しては、プロセ
ス制御システム170のその他の任意の部分におけるユー
ザ・インタフェース又はその他のデバイスが依然として
利用可能である。
【0053】異なるゾーン,サイト等の間での通信を可
能にするために、前記システム内の各データベースは、
コンフィギュレーション階層の一般的なセットアップに
関連する情報を格納することが可能である。例えば、各
データベースは、全ての位置でのコンフィギュレーショ
ンに共通である幾つかのオブジェクト・ルーツ(object
root)を格納することが可能であり、これらのルーツ
に関する更なるコンフィギュレーション情報を有する特
定のデータベースを示す、又はこの情報を求めるために
次のデータベースを示す、ポインタを格納することが可
能である。このように、Zone A 172におけるユーザは、
ルーツ・オブジェクトにアクセスし、そのルーツの子供
を要求しようとすることが可能である。これに応じて、
コンフィギュレーション・データベース172aは、選択さ
れたルーツのためのポインタを見ることによって、子供
が格納されているデータベースを見つけることが可能で
ある。そして、このポインタは、そのルーツのためのデ
ータが企業システム・データベース184aからアクセスさ
れなければならない、又は「Site 1」データベース180a
がそのデータへ更なるポインタのためにアクセスされな
ければならないことを示すことが可能である。データベ
ース172aは、遅い回線を介したデータベース180aの読み
出しをさせ、データベース180aに企業システム・データ
ベース184aの読み出しを実行させることが可能なであ
る。勿論、企業システム・データベース184aは、「Site
2」データベース182aにアクセスする必要がでてくる可
能性があり。そのデータのために「Zone C」データベー
ス176aにアクセスする必要がでてくる可能性がある。代
わりに、ブラウザ又はスニッフ・アプリケーション(sn
iffing application)は、例えば、「Zone A」データベ
ース172aを、分散型のコンフィギュレーション・システ
ム170内のコンフィギュレーション・データの任意の特
定の部分の位置を見つけるために「Site 1」データベー
ス又はその他のデータベースを閲覧することが可能なよ
うにするために、各データベースに提供されることが可
能である。
【0054】望むならば、システム170内の各データベ
ースは、元々異なるサイト,ゾーン等に格納されたデー
タのローカル・コピーを格納することが可能である。特
に、特定のデータベースに格納されないデータに対する
要求が受信された場合、該データベースは、そのデータ
を異なるデータベースから引き出すことが可能であり、
このデータを取り戻すことに際して、直接、データベー
ス(例えば、同じサイト又はゾーンにおけるユーザ)に
接続されたユーザによって使用されるように、又はデー
タベースの階層内の他のデータベースによる要求に応じ
て送信されるように、それをローカルに格納することが
可能である。このように、上の例では、データベース18
0a,184a,182aの各々は、「Zone C」データベース176a
に元々格納されたコンフィギュレーション・データのロ
ーカル・コピーを格納することが可能であり、これは、
そのデータがZone Aで「Zone A」データベース172a又は
ユーザによって要求されたからである。
【0055】任意のユーザ・インタフェースで表示され
た特定のコンフィギュレーション表示のためのコンフィ
ギュレーション・データの幾つか又は全部が、一又は複
数の遅い通信回線を介してアクセスされなければならな
いかも知れないので、同一のサイト若しくはゾーン又は
異なるものの何れかにおいて、別のユーザによってコン
フィギュレーション情報になされた変更を基準として、
特定のユーザ・インタフェースで表示されたコンフィギ
ュレーション・データが新鮮ではないか又は古くなる状
況に出くわすことがある。各コンフィギュレーション・
アプリケーションが画面上に提示されているコンフィギ
ュレーション情報をリフレッシュ(refresh)するため
に適当なコンフィギュレーション・データベースに定期
的にアクセスすることができる。この周期的なリフレッ
シュは、遅い通信回線を通じて発生する筈の、また、コ
ンフィギュレーション・データベースからの読み出しを
増加する、通信量を実質的に増大し、プロセス制御シス
テム170内の通信を遅くし、そのコンフィギュレーショ
ン・データベースの各々へのロードを増加する。
【0056】この問題を解決するために、コンフィギュ
レーション・データにアクセスしている各コンフィギュ
レーション・アプリケーションは、画面上に表示されて
いる(又は使用されている)各コンフィギュレーション
・コンポーネントのために、適当なコンフィギュレーシ
ョン・データベースを予約することが可能である。そし
て、このデータを格納するコンフィギュレーション・デ
ータベースは、コンフィギュレーション・データベース
内で前記情報になされた如何なる変更をも各予約のコン
フィギュレーション・アプリケーション(クライアン
ト)に自動的に通知する。それから、これらの変更は、
例えばユーザ画面上に表示されるべきクライアントに自
動的に送信されることが可能であるか、又はユーザによ
って要求されることが可能である。このように、たとえ
何処にこの情報を使用するクライアント・アプリケーシ
ョンがプロセス制御システム170内で位置しようとも、
各コンフィギュレーション・アプリケーション(例え
ば、各画面上に示されている情報の各部分)によって使
用されているコンフィギュレーション情報は最新であ
る。
【0057】勿論、クライアント・アプリケーションが
コンフィギュレーション情報の特定の部分をもはや必要
としないとき、即ち、例えば、ユーザがもはやコンフィ
ギュレーション階層におけるコンフィギュレーション情
報の特定の部分を見たくないときには、コンフィギュレ
ーション・アプリケーションは、変更通知および更新が
予約中のコンフィギュレーション・アプリケーションに
もはや送り返されないように、その情報の部分を格納す
るコンフィギュレーション・データベースから予約解除
する。このように、コンフィギュレーション・アプリケ
ーションは、例えば、図2のツリー65内におけるコンフ
ィギュレーション情報の各部分を格納するコンフィギュ
レーション・データベースを見つけ、必要に応じて一又
は複数の遅い通信回線を通じてその情報を取り出し、こ
の情報が格納されるコンフィギュレーション・データベ
ース内における該情報になされた更新を受信するために
その中の情報の各部分を予約し、受信に際しては、表示
された情報(見られているシステムのコンフィギュレー
ションへの変更をしている別のユーザによるものである
ことが可能)を更新し、新しい又は更新された情報を表
示する。ユーザ又はオペレータが、表示されているコン
フィギュレーション・ツリーのセクションを掘り下げて
いくならば、コンフィギュレーション・アプリケーショ
ンは、同様に、新しい情報にアクセスし、この情報を予
約し、そして、この情報を表示する。表示された情報の
幾つかがユーザ画面から落とされるならば、コンフィギ
ュレーション・アプリケーションは、落とされたデータ
からの予約を解除する。
【0058】望むならば、得られる(例えば、特定のユ
ーザ・インタフェースの画面上で見られる)コンフィギ
ュレーション情報の全ては、ローカル・キャッシュ又は
実行されているコンフィギュレーション・アプリケーシ
ョンに関連したメモリに格納されることが可能である
か、前記アプリケーションが実行されているゾーン,サ
イト等内のコンフィギュレーション・データベースに格
納されることが可能である。そして、適当なデータベー
スとの接続を失った場合には、そのサイト,ゾーン等に
おけるユーザは、ローカル・キャッシュからこのコンフ
ィギュレーション情報をまだ引き上げることが可能であ
る。しかし、ユーザがこの情報が最新ではないことを知
るように、この情報は、ローカル・キャッシュ(例え
ば、灰色表示のような)から来たこの情報を示すように
表示されることが可能である。一又は複数の遅い回線を
介して既に得られたコンフィギュレーション・データを
格納するためのこのようなローカル・キャッシュを使用
することは、通信線又は回線がダウンした場合に、ユー
ザに対して、該ユーザによって既に見られるた又はアク
セスされた任意のコンフィギュレーション情報を見るこ
とを可能にする。また、ユーザがその画面から落とされ
た情報を見たいならば、この情報は、該情報のために適
当なコンフィギュレーション・データベースとの接続が
その情報を更新するために再確立されている間、それを
より速く表示させるためにローカル・キャッシュから引
き出されることが可能である。
【0059】図6が遅い回線を介して相互接続されるよ
うなサイトおよびゾーンの各々を示しているが、このよ
うな構成は必須ではない。例えば、サイトのためのコン
フィギュレーション・データベースは、ゾーンにあるか
も知れず、遅い通信回線を介してそのサイトに関連した
その他のゾーンへアクセスできれば、そのゾーンから直
接アクセスできるかも知れない。例えば、図6で図示さ
れるような分散型のコンフィギュレーション・データベ
ースを確立するために、Zone A 172におけるユーザは、
「Zone A」データベース172aと同じマシン上で又は直接
の高速接続を通じて「Zone A」データベース172aに接続
している異なるマシン上でサイト・データベース(即
ち、「Site 1」データベース180a)を構築することが可
能である。代わりに、「Site 1」データベース180aは、
遅い回線を介して「Zone A」データベース172aに接続し
ていることが可能である。ユーザは、「Site 1」データ
ベース180aにおよび/又は企業システム・データベース
184aにZone Aでライブラリおよびセットアップデータの
幾つか又は全てを公開する。その後で、Zone A 172での
データベース172aは、ユーザ又はZone A 172内のアプリ
ケーションがそれらの項目を必要とするか、又はそれら
の項目にアクセスしたいときに、「Site 1」データベー
ス180a,企業システム・データベース184a等内でコンフ
ィギュレーション項目のうちの1つ以上に自動的に予約
することが可能である。望むならば、システム170の如
何なるコンフィギュレーション・データベースであって
も、そのシステムのその他のコンフィギュレーション・
データベースのうちの1つ以上内で、コンフィギュレー
ション情報の幾つか又は全てに常を予約することができ
る。
【0060】次に、Zone B 174におけるユーザは、Zone
B 174のためのサイト・データベースとしてZone Aにお
けるユーザによって構築される「Site 1」データベース
180aを選択することが可能である。それから、同一の名
前の項目が「Site 1」データベース180aおよび「Zone
B」データベース174a内に存在するような衝突に終わり
得る「Site 1」データベース180aにおいて、Zone B 174
におけるユーザは、ライブラリおよびセットアップデー
タの幾つか又は全てを予約する。コンフィギュレーショ
ン・アプリケーションは、Zone B 174におけるユーザへ
この問題について通知することが可能であり、Zone B 1
74のユーザは、「Site 1」データベース180aにおける項
目を予約する前に、ローカルの項目の名前を変えるオプ
ションを与えられることが可能であるか、ローカルの項
目に上書きすることが可能である。加えて、Zone B 174
におけるユーザは、「Site 1」データベース180aに項目
を公開することが可能であり、そして、その後で、Zone
A 172は、「Zone A」が予約する「Site 1」データベー
ス180aへの追加を知らせられ、それから、これらの追加
のコンフィギュレーション項目を予約することが可能で
ある。勿論、企業/サイト階層は、サイト180,182の間
と、ゾーン172,174,176の間とでの通信を可能にする
ために、同様の方法で設定される。
【0061】Zone A 172およびZone C 176間の接続を確
立するために、例えば、Zone A 172におけるユーザがZo
ne C 176のデータベース176aに格納されたコンフィギュ
レーション・コンポーネントを見たいとき、この情報を
予約し、Site 2 182からこの情報を予約する企業システ
ム・データベース184aにこの情報を公開する「Site 2」
データベース182に、「Zone C」データベース176aはこ
のデータを公開する。Zone A 172が「Site 1」データベ
ース180からこの情報を予約する一方、Site 1 180は、
企業システム・データベース184aからこの情報を予約す
る。確立された予約者関係は、それから、「Zone C」デ
ータベース176aに格納されたコンフィギュレーション・
コンポーネントへの変更について、Zone A 172における
クライアント又はユーザに通知するために使用されるこ
とが可能である。上述のように、ゾーン,サイト等は、
項目について個々に、又は親および関連する子供の全て
を含むオブジェクトのサブ・ツリー全体を予約すること
ができる。また、予約は、これらの項目をローカル・ゾ
ーンのコンフィギュレーション・データベースに加え、
公開された項目とローカル・コピーとの間の進行中の通
信関係を確立して、項目のコピーをとることを課すこと
が可能である。本来の情報がどこに格納されたかについ
て、予約中のデータベースがトラッキングする一方、公
開者のデータベースは、予約者についてトラッキングす
ることが可能である。このソース/デスティネイション
(source/destination)情報が、コンフィギュレーショ
ン・データベース内の項目の予約を指示して、リモート
位置から変更をなすために使用され得る。同様に、デー
タベースがバックアップから回復しなければならないな
らば、この情報は、公開/予約関係を再確立するために
使用されることが可能である。
【0062】勿論、ゾーン間の通信は、該ゾーン間の遅
い通信回線の存在のために必ずしも保証されることがで
きないので、通信回線がダウンしているときには、ゾー
ンは独立して機能し続ける。しかし、通信が再確立され
るとき、如何なる衝突であっても手動で解決されなけれ
ばならない。
【0063】ゾーン,サイト,および企業の間の通信
が、公開又は予約単位で実行されると言える。ここで、
一又は複数の予約者がその項目を予約するときに、コン
フィギュレーション項目のマスター・コピーを有するコ
ンフィギュレーション・データベースが、その項目を公
開する。予約者は、例えば、異なるサイト又はゾーン内
のユーザ・インタフェース(例えば、ワークステーショ
ン又はその他のコンピュータ)において実行されるコン
フィギュレーション・アプリケーションであることが可
能であり、これらのサイト又はゾーン内のデータベース
(それらのゾーンにおいて実行されるコンフィギュレー
ション・アプリケーションによって使用される)である
ことが可能であり、又はコンフィギュレーション・デー
タを使用するその他の任意のデバイス又はアプリケーシ
ョンであることが可能である。その他のサイト又はゾー
ンによって予約され得るデータベース内の項目は、共有
オブジェクトと呼ばれる。勿論、次のような異なる種類
の操作が共有オブジェクトについて行われることが可能
である。1)閲覧:予約者のコンフィギュレーション・
アプリケーションが、公開者から入手可能な共有オブジ
ェクトのリストを見ること。2)予約:予約者のコンフ
ィギュレーション・アプリケーションが、予約者の位置
でのコンフィギュレーション動作に使用される前記共有
オブジェクトのローカル・コピーを要求すること。3)
ローカル・オブジェクトへのコピー:予約者のコンフィ
ギュレーション・アプリケーションが、項目を非共有ロ
ーカル・オブジェクト又はデータベースへコピーするこ
と。4)削除:予約者のコンフィギュレーション・アプ
リケーションが、公開者において共有例を削除するこ
と。5)予約解除:予約者のコンフィギュレーション・
アプリケーションが、予約者でのコンフィギュレーショ
ン項目のローカル・コピーと、公開者のコピーとの間の
予約リンクを切断すること。6)変更の取り出し:予約
者のコンフィギュレーション・アプリケーションが、公
開者から共有項目の最新のバージョンを取り出すこと。
7)予約:予約者のコンフィギュレーション・アプリケ
ーションが、このオブジェクトが別のユーザによって変
更されるのを防止するために、共有オブジェクトを公開
者のデータベースにロックすること。8)起用:予約者
のコンフィギュレーション・アプリケーションが、予約
された項目になされた変更を公開者のデータベースに戻
すこと。これらの操作は、予約者と公開者との間でメッ
セージを送信することによって、また、メッセージを扱
い、上記定義のような適切な動作をとるために、予約者
の位置と公開者の位置とでソフトウェアを実行すること
によって行われ得る。
【0064】コンフィギュレーションの観点からは、セ
ットアップおよびライブラリ・データを共有すること、
別のゾーンからセットアップ,ライブラリ,およびコン
フィギュレーション・データを閲覧又は見ること、ゾー
ン間において、ゾーン間関係およびネーム空間調整を設
定することとを含む、幾つかのゾーン間動作がある。1
つの実施形態において、コンフィギュレーション・オブ
ジェクト又は項目は、階層内の直近の親から共有され
る。例えば、ゾーン172,174は、サイト180から合成定
義(composite definition)を共有し、全てのゾーン
は、企業システム184から設定される共通の一覧表を共
有する。ゾーン176がサイト182で定義を予約する一方、
ゾーン172,174は、サイト180で定義を予約する。同様
に、両サイト180,182は、企業システム184において共
通の定義を予約する。
【0065】閲覧サービスは、企業/サイト/ゾーン階
層においてサーバを見つけるために、また、それらの位
置のうちの1つに関連付けられたコンフィギュレーショ
ン・データベースを閲覧するために、コンフィギュレー
ション・アプリケーション内に提供される。閲覧サービ
スは、共有オブジェクトへの予約をセットアップし、ゾ
ーン間リファレンスを設定するために利用される。特
に、閲覧情報は、ユーザ要求に応じてリモート・サーバ
から照会され、ローカルにキャッシュされる。閲覧ルー
ツ(browse root)は、ネットワークをスニッフィング
(sniffing)することによって検出可能であるか、又は
その他の任意の好ましい若しくは公知の閲覧技術を利用
して検出可能である。検出された又は設定された閲覧ル
ーツについての知識は、持続的であってもよく、電源ス
イッチを切って直ぐに入れなおすこと(power cycle)
を通じてもキャッシュされたままでいる。これらのコン
フィギュレーション・オブジェクトのルーツの存在は、
ユーザに対して、分散型のコンフィギュレーション階層
内のこの情報の位置又はこの情報への経路を見つけるた
めに、前記ルーツに関連付けられたその他の情報を閲覧
することを可能にする。
【0066】ゾーン間リファレンスは、直接的にリファ
レンスを入力することによって、又はリモート・データ
ベースにおける属性を閲覧することによって、設定され
ることが可能である。リファレンスは、例えば、「//Zo
neName/Taggedltem/…/AttributeName」のような形式又
はその他の任意の好ましい形式をとることが可能であ
る。ゾーン名は、ゾーン間リファレンスを解決するため
に企業階層内でユニークでなければならないと言える。
各ゾーン内には、タグを付けられた項目のためのネーム
空間があり、コンフィギュレーション・システムは、ゾ
ーン内でタグのユニーク性を強要され得る。このよう
に、各コンフィギュレーション・アプリケーションは、
分散型のコンフィギュレーション・データベース内の名
前付けにおいて、ユニーク性を強要されるのに合わせ
て、タグがサイトか企業内でユニークかどうかについて
判断するツールを有することが可能である。
【0067】望むならば、ゾーン間の安全は、任意の好
ましい方法で提供されることが可能であり、ゾーン管理
者は、ユーザ,グループ等のための共有オブジェクトへ
アクセスする権限が与えられ得る。このような権限は、
閲覧して共有オブジェクトを予約する能力と、オブジェ
クト又はコンフィギュレーション項目のための変更を公
開者から引き出す能力と、変更を予約,修正,および起
用する能力とを含むことが可能である。
【0068】また、望むならば、異なるゾーンは、異な
る言語を使用することが可能である。これは、会社が多
くの異なる言語を使用している地域、例えば、ヨーロッ
パにおいて有益である。この場合、一覧化された値は、
数値として、又は異なる言語で同一の単語又はフレーズ
のためにプロセス制御システムを通じて共通である数値
とともに表示されることが可能であるローカル・データ
の文字列(例えば、単語)として、ゾーン間を通過する
ことが可能である。このように、ユーザは、1つの言語
から他の言語への変換の容易性を可能にする、それに応
じた数値によって、一覧化された値,コマンド等を特定
することが可能である。何れにしても、異なる言語を使
用するデータベースを閲覧するためには、関連するフォ
ントが閲覧マシン又はゾーン上にインストールされるこ
とが必要である。1つの実施形態において、ゾーン間リ
ファレンスは、リモート・ゾーンの言語で設定される。
そして、ユニコード・ストリング(Unicode)は、ユニ
コードによってサポートされた任意のキャラクタについ
ての検出又は変換を可能にするために排他的にシステム
を通じて使用される。この場合、単一のデータベース
は、複数の言語のストリングを格納することが可能であ
り、データベースのエクスポート・ファイルは、ユニコ
ード・フォーマットに交換される。言い換えれば、異な
るローカルからのファイルは、ユニコード・フォーマッ
トを使用して各データベースにインポートされる。
【0069】修正が干渉無しに実行され得ることを保証
するために、共有データへの修正が上述した予約/起用
手順の対象となることが可能である。この場合、項目が
修正され得る前に、修正するユーザは、該ユーザのゾー
ンへこの項目を予約しなければならない。1人のユーザ
又はゾーンだけが、任意の特定の時間にでも項目を予約
することができる。項目が予約された後で、この項目を
予約したローカル・データベースにおいて、変更が当該
項目になされる。そして、この項目を予約したユーザに
よって、このような変更が新しいコンフィギュレーショ
ン動作の結果としてなされる。その後で、予約され、修
正された項目又は項目のグループは、このデータがデー
タのマスターセットとして格納されているコンフィギュ
レーション・データベースへ起用される。このような予
約/起用手順は、それに2人のユーザが同時に、同一の
項目を変更しようとすることができないことを保証す
る。その代わりに、項目を予約しようとする第2のユー
ザは、その項目を予約する第1のユーザが該項目のマス
ター・バージョンを格納するコンフィギュレーション・
データベースへこの項目の変更を起用するまで、如何な
る修正であっても、なすことも防止される。
【0070】通常、予約については2つのモードが使用
される。最初のモード(ここでは、「安全予約モード」
と称す)において、既に存在する項目への修正および該
項目の削除が手動で引き入れられる一方、新しい共有項
目は、予約しているゾーン又はサイトに自動的に引き入
れられる(例えば、ユーザからの直接コマンドが前記変
更又は削除情報の引き入れを実行するのに要求され
る)。この場合、ユーザは、ユーザ・システムが予約し
ているコンフィギュレーションの変更又は削除について
通知されることが可能であり、また、コンフィギュレー
ション・アプリケーションがその変更をローカル・デー
タベースへ引っ張ていくことになっているかどうかを尋
ねられることが可能である。代わりに、共有データベー
スへの如何なる変更に対しても、ユーザの干渉無しで予
約中のデータベースにインポートされるように、全ての
修正は、自動的に引かれる(pull)ことができる。安全
予約モードには、変更通知が全階層を通じて移行しない
点に留意する必要がある。このように、例えば、企業の
項目が修正されれば、依存しているサイトに通知され
る。しかし、その変更がサイトに実際に引き下げられる
まで、そのサイトに関連付けられたゾーンがその変更に
ついて通知されることはない。その結果、公開者(即
ち、そのコンフィギュレーション項目のマスター・コピ
ーを格納するデータベース)は、予約者が項目の最新バ
ージョンをとったかどうかについてトラッキングするこ
とが可能である。そして、どちらかのデータベースをバ
ックアップから回復しなければならないならば、この情
報は、公開者/予約者関係を再整合するために使用され
ることが可能である。
【0071】さらに、変更を引く予約者の失敗が、コン
フィギュレーション・データベースの階層における下位
のレベルでのコンフィギュレーション階層の違いにつな
がると言える。例えば、企業システム184が図6のサイ
ト180,182に変更について通知し、Site 1 180がこの変
更を引かないで、Site 2 182がこの変更を引くならば、
サイト180,182で見られるコンフィギュレーション階層
は異なる。さらに、変更を引いているSite 2 182につい
て、この変更を引くことができるか、又は変更が発生し
たということを少なくとも知ることができるZone C 176
における予約者に変更通知が送信される。しかし、Site
1 180が変更を引かなかったので、Zone A 172とZone B
174とにおける予約者は変更について知らず、従って、Z
one A 172とZone B 174とは変更を引くことができな
い。この場合、ゾーン172,174で利用できるコンフィギ
ュレーション階層は、ゾーン176で利用できるものとは
異なっている。望むならば、ユーザが変更に関して何が
起こっているかについてわかるのを手伝うために、上流
および下流の従属リストを表示するコンフィギュレーシ
ョン・アプリケーションを提供してもよい。ユーザが項
目を引こうとするとき、コンフィギュレーション・アプ
リケーションは、如何なる上流の改訂の不一致でも見つ
けることができ、また、これらの項目が引かれなければ
ならないか否かをユーザに尋ねることができる。
【0072】さて、図7〜図15を参照して、プロセス
制御システム内のデータベースから効率的にアクセスお
よび分散するためのシステムについて説明する。概括し
て言えば、データベース・アクセス・システムは、その
データの一又は複数の予約者(クライアントとも称され
る)へ、データベースに格納されたデータを公開するた
めに、また、データへの変更がデータベース内で発生す
るときに、予約者又はクライアントへ更新又は変更通知
を提供するために共有キャッシュを使用する。ここに記
述されているデータベース・アクセス・システムは、プ
ロセス制御システム(例えば、図1のコンフィギュレー
ション・データベース30,54のうちの何れか,図3〜図
5のマスター・コンフィギュレーション・データベース
の何れか,又は図6のコンフィギュレーション・データ
ベースの何れか)内で、データベースの何れかに使用さ
れることが可能であると言える。同様に、アクセスされ
ているデータベース内のデータの予約者又はクライアン
トは、その他の任意のコンフィギュレーション・データ
ベースであることができ、また、システム内の任意のユ
ーザ・インタフェース又はコンフィギュレーション・デ
ータを使用する任意のコンフィギュレーション・アプリ
ケーションにおいて実行される任意のアプリケーション
であることができる。そして、これらのクライアント
は、例えば直接又は高い速度の通信回線,遅い又は小さ
い帯域幅の通信回線,又は間欠的な通信回線を使用して
アクセスされるデータベースに通信可能に接続されるこ
とが可能である。このように、例えば、図7〜図15に
おいて記述されるクライアントは、図1および図3〜図
6のゾーン又はサイトの何れかに配置され得る。
【0073】概括して言えば、各クライアントは、該ク
ライアントが予約するコンフィギュレーション・コンポ
ーネントを格納するコンフィギュレーション・データベ
ースに関連するデータベース・サーバと通信する。前記
予約プロセスの起動において、コンフィギュレーション
・データベースに接続する各々の異なるクライアントの
ために、クライアント・スレッドが、データベース・サ
ーバ内で確立される。そして、このスレッドは、コンフ
ィギュレーション・データベース内で一又は複数の特定
のコンポーネントへのアクセスを提供する。その後で、
コンフィギュレーション・データベース内のコンポーネ
ントへの変更が認識され、これらの変更の通知と、望む
ならば、この変更自体とが、そのコンフィギュレーショ
ン・コンポーネントを予約している各々のクライアント
に送り返される。コンフィギュレーション・コンポーネ
ントからクライアントが予約解除するならば、変更通知
は、そのコンポーネントのためにクライアントへ提供さ
れない。また、クライアントは、ロックし、予約し、起
用するクライアント・スレッドを使用することが可能で
ある一方、コンポーネントに変更をなすことが可能であ
る。
【0074】用語「スレッド(thread)」は、データベ
ース・サーバ内のプロセッサによって実行される処理パ
ス又は処理手順を参照するものであり、並列処理を実行
する公知の技術であると言える。概括して言えば、プロ
セッサは、実行されている異なるスレッドに関連するタ
スクをインターリーブ(interleaving)することによっ
て、同時に複数のスレッドを実行することが可能であ
る。例えば、前記プロセッサは、順に、第1のスレッド
に関連付ける第1のステップ、第2のスレッドに関連付け
る第1のステップ、第3のスレッドに関連付ける第1のス
テップ、それから、第1のスレッドに関連付けられた第2
のステップは、第2のスレッドに関連付けられた第2のス
テップ、第3のスレッドに関連付けられた第2のステップ
等を実行することが可能である。スレッドは、実行中の
他のスレッドに影響を与えることなく、付加又は削除さ
れることが可能である。スレッドは、スレッド間通知又
はメッセージを使用している各々のその他のスレッドと
通信することが可能である。また、格納され、異なるス
レッドによって使用されるデータは、データを生成又は
格納するスレッドによってアクセスされることが単に知
られているか、又はアクセスされることができる、例え
ば、ローカルのスレッドであり得る。
【0075】さて、図7において、複数のクライアント
とコンフィギュレーション・データベースとの予約者関
係を実現するコンフィギュレーション・データベースの
通信システム200のブロック図は、コンフィギュレーシ
ョン・データベース203と複数のクライアント206〜208
との間で通信可能に結合されたデータベース・サーバ20
2を含んでいる。コンフィギュレーション・データベー
ス203は、2つのデータ・ストア210,212を備えるように
図示してあり、各々は、クライアント206〜208のうちの
一又は複数によって予約されているコンフィギュレーシ
ョン・コンポーネントを格納する。データベース203
は、図示の明確化のために、2つのデータ・ストア210,
212を有するように示してあるが、より多くの又はその
他のデータ・ストアをその中に備えることができる。さ
らに、任意の数のクライアントがサーバ202を使用して
データベース203にアクセスすることが可能である。ま
た、各データ・ストア210,212は、1つのサーバが1つ以
上の異なるデータベースにアクセスするために使用され
得るように、異なる物理データベースに関連付けられ得
る。
【0076】クライアント206〜208は、イーサネット回
線のような、直接の、高い速度回線であることが可能で
ある、又は、例えば、衛星回線,セルラー回線,モデム
回線(接続)等のような、遅く小さい帯域幅の又は間欠
的な回線であることが可能である通信回線213を介し
て、サーバ202と通信する。クライアント206〜208によ
るコンフィギュレーション・コンポーネントのための各
々の最初の要求は、サーバ202内にクライアント・スレ
ッドを生成する。そして、以下に更に詳細に記述される
ように、このクライアント・スレッドは、サーバ202内
の共有キャッシュ214を使用している適切なデータ・ス
トア210および/又は212から、クライアント206〜208に
要求されたコンポーネントを提供するために使用され
る。また、クライアント・スレッドは、データ・ストア
210,212に変更を書き込むために、データベース203へ
コンポーネント・データを加えるか又はデータベース20
3からコンポーネント・データを削除するために、ま
た、データ・ストア210,212内のコンポーネント・デー
タのロックを実行するために、使用され得る。
【0077】概括して言えば、共有キャッシュ214は、
クライアント206〜208の何れかによって任意の特定の時
間に予約されているデータベース203内の異なるデータ
項目の各々のための、「ライトウェイト(lightweigh
t)」と呼ばれるデータ・メモリ・オブジェクトをセッ
トアップする。1つのライトウェイトは、データベース2
03内の任意のコンフィギュレーション・コンポーネント
のために確立されることを必要とする。そして、そのコ
ンフィギュレーション・コンポーネントを予約している
全てのクライアントのためのクライアント・スレッド
は、同一のライトウェイトにアクセスする。このよう
に、図7のシステムのために、クライアント206〜208の
うちの少なくとも1つがデータ・ストア210で前記コンポ
ーネントを予約するときに、ライトウェイトは、データ
・ストア210,212の中でコンフィギュレーション・コン
ポーネントの各々のために共有キャッシュ214内に確立
される。そして、クライアント206〜208のうちの少なく
とも1つは、データ・ストア212で前記コンポーネントを
予約する。クライアント206〜208の各々が異なるコンフ
ィギュレーション・コンポーネントを予約するならば、
各クライアントのためのスレッドは、コンフィギュレー
ション・データベース203内で異なるデータ・ストアに
連結された異なるライトウェイトを含んでいる。しか
し、1つ以上のクライアントがデータベース203内で同一
のコンポーネントを予約するときには、これらのクライ
アントのためのスレッドは、共有キャッシュ214内で同
一のライトウェイトを使用する。この理由のため、共有
キャッシュ内のライトウェイトは、ローカルのスレッド
ではない。
【0078】通常、第1のクライアントがデータベース2
03内で最初にコンフィギュレーション・コンポーネント
を予約するときはいつでも、ライトウェイトは、共有キ
ャッシュ214内でそのコンフィギュレーション・コンポ
ーネントのために確立される。そして、このライトウェ
イトは、データベース203からコンフィギュレーション
・コンポーネントのコピーを読み込み、格納する。その
後で、同一のコンフィギュレーション・コンポーネント
を予約するその他の全てのクライアントは、同一のライ
トウェイトに接続されたそのクライアント・スレッドを
有する。これは、このコンフィギュレーション・コンポ
ーネントに予約する第2,第3等のクライアントがコンフ
ィギュレーション・データベース203からでなく、前記
ライトウェイトからコンポーネントを読み込むことがで
きる。つまり、コンフィギュレーション・データベース
203からの読み込み回数を低減する。
【0079】図7に示すデータベース・サーバ202は、
クライアント206,207,208のそれぞれのために、異な
る読み書き動作を実行する3つのクライアント・スレッ
ド216,217,218と、クライアント・スレッド216,21
7,218に対して、通知動作を実行する2つの通知スレッ
ド220,222とを備える。概括して言えば、各クライアン
ト・スレッド216,217,218は、通信回線230を通じて前
記クライアントと通信するために、サーバ・コンポーネ
ント・オブジェクト226,227,228をそれぞれ使用す
る。特定のクライアント・スレッド内のサーバ・コンポ
ーネント・オブジェクトは、前記クライアントによって
アクセスされている異なるコンポーネントの各々のため
の共有キャッシュ214内の異なるライトウェイトと通信
し、このような各ライトウェイトに関連付けられたコン
ポーネント・データ・ラッパー(component data wrapp
er)を使用してこの通信を実行する。各コンポーネント
・データ・ラッパーは、関連付けられたライトウェイト
へのアクセスを制御し、1つ以上のクライアント・スレ
ッドによってアクセスされ得る。
【0080】図7のシステムにおいては、クライアント
206は、データ・ストア210,212内のコンポーネントを
予約し、クライアント207は、データ・ストア210内のコ
ンポーネントを予約し、クライアント208は、データ・
ストア212内のコンポーネントを予約している。図7に
示すように、クライアント206のためのクライアント・
スレッド216は、データ・ストア210と通信するライトウ
ェイト234に順に接続された第1のコンポーネント・デー
タ・ラッパー232と通信するために、サーバ・コンポー
ネント・オブジェクト226のうちの1つを使用する。確立
の際、ライトウェイト234は、データ・ストア210内の前
記データをコピーし、このデータを、該データを予約し
ている各クライアントがアクセスできるようにする。ク
ライアント・スレッド216のサーバ・コンポーネント・
オブジェクト226のうちの1つは、データ・ストア212と
通信するライトウェイト242に順に接続するコンポーネ
ント・データ・ラッパー240と通信する。同様に、確立
の際、ライトウェイト242は、前記データをデータ・ス
トア212からコピーし、このデータを、該データを予約
している各クライアントがアクセスできるようにする。
【0081】クライアント207のためのクライアント・
スレッド217は、コンポーネント・データ・ラッパー232
と、従って、ライトウェイト234内の前記データ(即
ち、データ・ストア210内の前記データ)にアクセスす
るために、ライトウェイト234と通信するためにサーバ
・コンポーネント・オブジェクト227を使用する。一
方、クライアント208のためのクライアント・スレッド2
18は、データ・ストア212に関連付けられたライトウェ
イト242内のデータにアクセスするためにコンポーネン
ト・データ・ラッパー240と通信すべく、サーバ・コン
ポーネント228を使用する。このように、このコンフィ
ギュレーションにおいて、クライアント206,207は、同
一のコンフィギュレーション・コンポーネントを予約
し、その結果、クライアント206,207の両方が、このコ
ンポーネントのためにライトウェイト234にアクセスす
る。同様に、クライアント206,208は、同一のコンフィ
ギュレーション・コンポーネントを予約し、両者が、こ
のコンポーネントのためにライトウェイト242にアクセ
スする。その結果、ライトウェイト234,242は、2つの
クライアント・スレッドによってそれぞれ共有され、異
なるクライアントによって共有キャッシュ214内のデー
タの共有を可能にする。
【0082】更に詳細に説明するように、クライアント
がデータベース203内のコンフィギュレーション・コン
ポーネントを予約するときに、サーバ202は、クライア
ント・スレッドを生成又は拡張するために、サーバ・コ
ンポーネント・オブジェクト,コンポーネント・データ
・ラッパー・オブジェクト,およびライトウェイトを確
立する。生成の際、クライアント・スレッド216,217,
218は、サーバ・コンポーネント・オブジェクト226,22
7,228からの読み出しおよびサーバ・コンポーネント・
オブジェクト226,227,228への書き込みをなすべく、
つまり、そこに生成された前記コンポーネント・データ
・ラッパーとライトウェイトとを介して共有キャッシュ
214へ読み込み、および共有キャッシュ214から読み出す
べく、前記クライアントによって使用される。共有キャ
ッシュ214は、必要があれば、コンフィギュレーション
・データベース203からの読み出しおよびコンフィギュ
レーション・データベース203への書き込みを行う。異
なるクライアント・スレッドが各クライアントのために
生成されるていれば、各クライアント・スレッドは、ク
ライアントのためにコンポーネント・データの一又は複
数の予約を扱うことが可能である。通常、異なるサーバ
・コンポーネント・オブジェクトは、クライアントによ
ってコンポーネントの各予約のために生成される。
【0083】通知スレッド220は、データベース203にな
された変更を検出し、そして、特に、データベース203
内で保たれる変更リスト244の状態をチェックすること
によってライトウェイトが生成しているデータ・ストア
210,212になされた変更を検出する。変更がなされたと
き、通知スレッド220は、変更が発生した変更コンポー
ネントを予約する前記クライアント・スレッドの各々へ
メッセージを送信させる。このような各クライアント・
スレッドは、それから、適当なサーバ・コンポーネント
・オブジェクトを使用して、そのクライアント・スレッ
ドをクライアントに通知することが可能である。クライ
アントに送信された通知メッセージは、新しいコンポー
ネント・データを含むことが可能であるか、又は、単に
新しいデータが存在すること、また、変更されたコンフ
ィギュレーション・コンポーネントのために確立された
クライアント・スレッドを介してこのデータをクライア
ントが引くか又は読むかをしなければならないことを、
クライアントに通知することが可能である。同様に、ラ
ンタイム・スレッド222は、如何なるランタイム・サー
ビス246によって実行されるプロセス制御システムへな
される特定の変更をも検出し、該変更のデータに関連付
けられたコンポーネントを予約しているクライアント・
スレッドを通知する。
【0084】概括して言えば、コンフィギュレーション
・データベース203内のデータへのアクセスは、コンポ
ーネントに対してコンポーネント単位で実行される。各
コンポーネントは、エリア,コントローラ,デバイス,
制御モジュール等のようなコンフィギュレーション・デ
ータベース内の単一の項目であることが可能であり、望
むならば、複数の項目の単一のツリーであることが可能
である。さらに、任意のコンポーネントが親コンポーネ
ントであることが可能であり、該親コンポーネントは、
これに関連付けられた一又は複数の子コンポーネントを
有すること、および/又は任意のコンフィギュレーショ
ン・コンポーネントが親コンポーネントの子コンポーネ
ントであることが可能である。このように、エリアは、
特定のエリアを示す多数の子コンポーネントを伴った親
コンポーネントであることが可能である。各特定のエリ
アは、特定のエリアの中のコントローラ,ユーザ・イン
タフェース,制御モジュール等を示す子コンポーネント
を伴った親コンポーネントであることが可能である。
【0085】さて、図8には、図7の共有キャッシュ通
信システムを実現すべく使用されるオブジェクトのため
のオブジェクト・マップが図示されている。特に、クラ
イアント300(任意のクライアントであることが可能)
は、例えば、図2のようなコンフィギュレーション階層
でユーザに表示させる如き、クライアントによる任意の
目的でアクセス又は予約されるコンフィギュレーション
・データの任意の部分であるクライアント・コンポーネ
ント・オブジェクト301を有することが可能である。子
供側にてドットを有し、また、親側にてドットを欠如し
ているクライアント・コンポーネント301とフィードバ
ック・パスによって示すように、クライアント・コンポ
ーネント301は、それに関連付けられた一又は複数の子
コンポーネントを有する親オブジェクトであることが可
能である。図8において、ドットの欠如が1対1関係を示
す一方、ドットの使用は1対1又は1対多の関係を示して
いる。このように、クライアント・コンポーネント・オ
ブジェクト301を図示するように、各子クライアント・
コンポーネントが1つの直接の親コンポーネントだけを
持つことができる一方、各親クライアント・コンポーネ
ントは一又は複数の子クライアント・コンポーネントを
持つことが可能である。
【0086】各クライアント・コンポーネント301は、
クライアント300でのそのクライアント・コンポーネン
トに関連付けられたスマート・プロキシ302に結合され
ている。該スマート・プロキシ302は、クライアント・
コンポーネント301に代わり、通信回線304を通じた通信
を担っている。特に、前記スマート・プロキシは、コン
ポーネントに関連するクライアント要求を受ける分散オ
ブジェクトであって、それらの要求を通信するサーバ30
6への通信回線304を通じてサーバ306を呼び出し、更新
イベントを受信し、サーバ306から送信されるキャッシ
ュ・データとメッセージとを格納し、このデータをクラ
イアント・コンポーネント・オブジェクト301に渡す。
勿論、スマート・プロキシ302は、任意の好ましい方法
によって、又は任意の好ましい通信技術を使用する
(「遅延認証通信および警報管理」というタイトルの米
国特許出願に記述された遅延認証ルーチンを使用する)
ことによって、通信回線304を通じて通信するために必
要な操作を実行する。通信回線304は、遅い又は小さい
帯域幅の回線(例えば、衛星,セルラー,インターネッ
ト,又はその他の共有広域ネットワーク回線)を含む任
意の好ましい通信回線であることが可能であり、また、
望ならば、間欠的な接続(例えば、モデム回線(接
続))であり得るか、直接接続又は高速接続(例えば、
専用のイーサネット回線)であり得る。
【0087】サーバ306は、通信回線304を通じたクライ
アントのスマート・プロキシ302との通信を担うサーバ
・コンポーネント・オブジェクト308を含んでいる。各
サーバ・コンポーネント308は、コンフィギュレーショ
ン・データベース内のコンフィギュレーション・コンポ
ーネントの特性にアクセスするインタフェースを提供す
るために、また、クライアントに対して、イベントの更
新を受け、これらのイベントをスマート・プロキシ302
に転送するために、特定のクライアントによってアクセ
ス又は予約される少なくともコンフィギュレーション階
層の一部を記録又は保持することを担う。図8に示すよ
うに、サーバ・コンポーネント308は、親子関係を通じ
てその他のサーバ・コンポーネントに関連付けられるこ
とが可能である。そして、この親子関係は、関連付けら
れたクライアント・コンポーネント301のために確立さ
れた親子関係を反映する。特に、この関係は、クライア
ント階層(即ち、クライアントにより予約されているコ
ンフィギュレーション階層)を反映する。各サーバ・コ
ンポーネント308は、サーバ306の共有キャッシュ部分内
でセットアップされたオブジェクトである唯一のコンポ
ーネント・データ・ラッパー310に、着目され、また、
通信可能に結合され得る。しかし、図8によって示され
るように、コンポーネント・データ・ラッパー310は、
異なるクライアント又はクライアント・スレッドのため
の多数のサーバ・コンポーネントに接続されることが可
能である。コンポーネント・データ・ラッパー310は、
共有データ(即ち、複数のクライアント又はクライアン
ト・スレッドによって、図7の共有キャッシュ214内で
共有されるデータ)へのインタフェースである。コンポ
ーネント・データ・ラッパー310は、階層関係(全ての
予約中のクライアントによって見られている全てのクラ
イアント階層の上位集合(superset)である)を記録す
ることが可能であり、サーバ・コンポーネントへのリフ
ァレンスを登録することが可能であり、変更イベントが
検出されたときにサーバ・コンポーネントに通知するこ
とが可能であり、最後に修正された日付(コンフィギュ
レーション・データベースからのイベントを受け入れる
か又は拒絶するために使用される)を記録することが可
能であり、また、共有データをロックすることが可能で
ある。サーバ・コンポーネント308と同様に、サーバ・
コンポーネント308の全てとクライアント・コンポーネ
ント301の全てとのために確立された関係を反映する関
係をもって、コンポーネント・データ・ラッパー310
は、親子関係において、その他のコンポーネント・デー
タ・ラッパーに関連付けられる又は関連することが可能
である。特定のコンフィギュレーション・コンポーネン
トにアクセスしている全てのクライアント・スレッドが
同一のコンポーネント・データ・ラッパー310を通過す
るので、各コンポーネント・データ・ラッパー310は、
多数のサーバ・コンポーネント308に接続され得ると言
える。第1のクライアントがコンフィギュレーション・
データベース内で最初に項目を予約するときに、コンポ
ーネント・データ・ラッパー・ファクトリ(component
data wrapper factory)312によって生成されるコンポ
ーネント・データ・ラッパー310は、どのサーバ・コン
ポーネント308がコンフィギュレーション・データベー
ス内の特定のコンポーネントを予約しているかをトラッ
キングし、予約中のサーバ・コンポーネント308の各々
にこのデータへの変更について通知するように動作す
る。
【0088】各コンポーネント・データ・ラッパー310
は、一又は複数のサーバ・コンポーネント308が予約し
ているコンフィギュレーション・データベース内で、コ
ンポーネント・データのコピーを格納する唯一のライト
ウェイト・オブジェクト314に接続されるか、又は該ラ
イトウェイト・オブジェクト314を含む。言い換える
と、コンポーネント・データ・ラッパー310は、複数の
サーバ・コンポーネント308の各々によるライトウェイ
ト314のアクセスを取り扱うために、一又は複数のサー
バ・コンポーネント308と、単一のライトウェイト314と
の間に挿入される。概括して言えば、ライトウェイト31
4は、サーバ・コンポーネント308間で供給されるデータ
のための貯蔵所であって、図7のコンフィギュレーショ
ン・データベース203になされた変更に関連する更新通
知のために、図7の通知スレッド220とともに登録する
ことに使用される。
【0089】コンポーネント・データ・ラッパー・ファ
クトリ312は、コンポーネント・データ・ラッパー310と
ライトウェイト314との取得/生成を担う。クライアン
トがそれがコンフィギュレーション・データベース203
内でコンポーネントを予約したいことを示すとき、コン
ポーネント・データ・ラッパー・ファクトリ312は、こ
のコンポーネントのためのコンポーネント・データ・ラ
ッパー310が既に生成されているか否かを確認すべく最
初にチェックする。もしそうならば、コンポーネント・
データ・ラッパー・ファクトリ312は、このコンフィギ
ュレーション・コンポーネントのためにクライアント・
スレッドをコンポーネント・データ・ラッパー310に接
続する。もしそうでなければ、コンポーネント・データ
・ラッパー・ファクトリ312は、コンフィギュレーショ
ン・データベース203からの要求情報をライトウェイト3
14へロードさせるように、新しいコンポーネント・デー
タ・ラッパー310とライトウェイト314とを生成し、この
新しいコンポーネント・データ・ラッパー310と、関連
付けられたライトウェイト314とを使用するクライアン
トのためのスレッドを生成又は拡張する。コンポーネン
ト・データ・ラッパー・ファクトリ312が新しいラッパ
ー310を生成するときに、コンポーネント・データ・ラ
ッパー・ファクトリ312は、ラッパー310にユニークな不
変の識別子を割り当てる。この識別子は、リファレンス
しているサーバ・コンポーネント308と、これらの対応
するクライアント・コンポーネント301とへ渡されるも
のであって、グループの又は個々のコンポーネントをユ
ニークに識別し、また、これに代えて、多くの煩雑な名
前変更の問題を回避し、遅い通信回線(例えば、ツリー
の全てのツリー又はブランチ(枝)がクライアントで要
求される時)を通じてIDのリストのより効率的な整列を
提供する。
【0090】ロック・マネージャ316は、各コンポーネ
ント・データ・ラッパー310に対して、異なるクライア
ントによってその関連付けられたライトウェイト314へ
のアクセスを制御させることを可能にする。ライトウェ
イト314をロックすることで、一又は複数の他のライト
ウェイトをロックすることを引き起こすことが可能であ
るので、例えば、親コンポーネント・データを格納する
ライトウェイトをロックすることで、その親コンポーネ
ントのために子コンポーネントを保持するライトウェイ
トをロックすることを自動的に引き起こすことが可能で
ある。同様に、各ライトウェイト314は、別のライトウ
ェイトをロックする際に自動的にロックされることが可
能であるので、その子コンポーネントのために親コンポ
ーネントを保持するライトウェイトがロックされるとき
に、子コンポーネントを保持するライトウェイトがロッ
クされることが可能である。このように、そのライトウ
ェイトからの読み出し又は該ライトウェイトへの書き込
みが任意の特定のクライアント・スレッド内で実行され
るときに、ロック・マネージャ316によって、コンポー
ネント・データ・ラッパー310がそれに関連付けられた
ライトウェイト314をロックさせることが可能であり、
このライトウェイトをロックすることで、他のライトウ
ェイト(例えば、ロックされているライトウェイトに関
連付けられた子コンポーネントを保持するライトウェイ
ト)をロックすることを自動的に引き起こすことが可能
である。
【0091】さらに、各ライトウェイト314は、コンテ
キスト・メモリ(context memory)を使用する図7のコ
ンフィギュレーション・データベース203からの又は該
コンフィギュレーション・データベース203へのコンポ
ーネント特性の読み書きのための、一又は複数のトラン
ザクショナル・メモリ・オブジェクト(XM:transactio
nal memory object)318を使用する。ライトウェイト31
4がコンフィギュレーション・データベース203に対して
読み書きする必要がある都度、XM 318が始動される。該
XM 318は、この読み書きをなすために使用するポインタ
を、前記コンテキスト・メモリ(ローカルのクライアン
ト・スレッドである)に提供し、前記コンテキスト・メ
モリを使用するコンフィギュレーション・データベース
203への読み込み又は書き出しをさせる。また、前記XM
318は、データベース203内のデータベース・オブジェク
トを生成/削除するために、そして、コンフィギュレー
ション・データベース203に関係を持たせた通知を登録
解除するために使用され得る。適当な読み書きがライト
ウェイト314に一旦実行されると、XM 318は開放され
る。しかし、前記コンテキスト・メモリに格納されたデ
ータは、未だ存在し、必要ならば、このメモリへのポイ
ンタは、後で使用されるスレッド・ローカル記憶装置に
格納される。XMの使用については、オブジェクト・デー
タベース・マネージャにおいては標準であって、ここで
は更なる説明はしない。
【0092】通知エンジン320は、各XM 318に登録し、X
M 318によってに示されるコンフィギュレーション・デ
ータベース203内のデータ記憶装置の位置におけるデー
タ値の何れかへの変更を検出する。このような変更は、
例えば、クライアントがコンフィギュレーション・デー
タベース203への読み込みを引き起こすこと(ランタイ
ム・プロセス又はその他の何らかの外部の処理等)によ
って、なされることが可能である。通知エンジン320
は、これが、XM 318の何れかによって示されたデータベ
ースの項目への変更を検出したときに、このXM 318と関
連付けられたライトウェイト314を有するコンポーネン
ト・データ・ラッパー310に通知し、変更がなされ、そ
して、コンポーネントのためのその新しい値が利用可能
なコンポーネントを予約しているクライアントの全てに
通知する。この操作を実行するために、通知エンジン32
0は、コンポーネント・データ・レジスタ(「ラッパー
・マップ」とも呼ばれる)322を使用する。これは、XM
318によって示されたデータベース位置に、各コンポー
ネント・データ・ラッパー310をマッピングするマップ
である。より詳しくは、コンポーネント・データ・レジ
スタ322は、データベース203にアクセスしているXM 318
の操作の結果として生成された通知クッキー又はIDにコ
ンポーネント・データ・ラッパー310を関係付けるルッ
クアップ・テーブルである。時々、これらのIDは、「マ
ジック・ナンバー」とも呼ばれ、概括して言えば、これ
らのIDは、データベース203内に格納されたコンポーネ
ントの位置又はそのものについて識別する。通知エンジ
ン320は、マジック・ナンバーに関連付けられたデータ
ベース位置の各々に関係する更新イベントのリストを得
て、変更が発生した各コンポーネントに関連付けられた
コンポーネント・データ・ラッパー310を見つけるため
にコンポーネント・データ・レジスタ322を使用する。
その結果として、通知エンジン320は、コンフィギュレ
ーション・データベース203から定期的に変更リストを
得て、変更が発生したコンポーネント・データ・ラッパ
ー310への変更イベントを始動するイベント・ジェネレ
ータである。
【0093】概括して言えば、クライアント・スレッド
は、それによって変更通知を得るために生成されるの
で、各コンポーネント・データ・ラッパー310は、コン
ポーネント・データ・レジスタ322で、そのライトウェ
イトに関連付けられたXMの全てを登録する。代わりに、
コンポーネント・データ・ラッパー310は、ユニークな
クッキーを登録毎に受け、これらのクッキーは、コンポ
ーネント・データ・レジスタ又はラッパー・マップ322
に格納される。変更通知に応じて、コンポーネント・デ
ータ・ラッパー310は、その関連付けられ得たライトウ
ェイト314に対して、前記データベースから再ロードす
ることを、また、必要ならば、コンフィギュレーション
階層を更新することを強制する。さらに、コンポーネン
ト・データ・ラッパー310は、該コンポーネント・デー
タ・ラッパー310に関係がある又はアクセスしているサ
ーバ・コンポーネント308の各々へ更新メッセージを送
信する。そして、サーバ・コンポーネント308は、それ
から、共有キャッシュ(即ち、ライトウェイト314)と
再整合させる。最後に、サーバ・コンポーネント308
は、クライアント・コンポーネント301に更新メッセー
ジを送り、サーバ・コンポーネント308と再整合させ
る。
【0094】さて、図9を参照して、データベース・サ
ーバ306(例えば、図7のデータベース・サーバ202、又
は図1,図3〜図6のデータベース・サーバの何れかで
あることが可能である)の状態は、例えば、任意のクラ
イアントがコンフィギュレーション・データベース325
(例えば、図7のデータベース203又は図1および図3
〜図6のコンフィギュレーション・データベースの何れ
かであることが可能である)内のデータの何れかを予約
する前の、プレスタート(起動)時を示している。サー
バ306は、その中にサーバ・コンポーネント・オブジェ
クトを有していないプレスタート・クライアント・スレ
ッド326を含んでいる。つまり、共有キャッシュ327は、
コンポーネント・データ・ラッパー又はライトウェイト
および空のデータベース・コンテキスト・メモリ部分32
8を有していない。サーバ306の共有キャッシュ327は、
データベース325から読まれているコンポーネントをロ
ックすることを調整するコンポーネント・データ・ラッ
パー・ファクトリ312とロック・マネージャ316とを備え
ている。図9に示すように、通知スレッドは、上述した
如きデータベース325内のデータになされた変更を検出
する通知エンジン320、およびコンポーネント・データ
・レジスタ、又はコンフィギュレーション・データベー
ス325内の位置で共有キャッシュ327内のコンポーネント
・データ・ラッパーをマッピングするラッパー・マップ
322を備えている。勿論、データ・ラッパーは、共有キ
ャッシュ327内に存在しないので、ラッパー・マップ322
は、空である。
【0095】同様に、ランタイム・スレッドは、任意の
サービス(例えば、自動検出サービス)であり得るラン
タイム・サービス338によって、又はランタイム動作若
しくはコンフィギュレーション動作の間に実行するその
他のアプリケーションによって、コンフィギュレーショ
ン・データの或る部分になされた変更を検出する通知エ
ンジン336と、ランタイム通知エンジン336に、サーバ30
6で実行しているクライアント・スレッド内の適当なコ
ンポーネント・データ・ラッパーへ変更メッセージを送
らせることを可能にするマップ340とを備える。起動時
に、ランタイム通知エンジン336は、プロセス制御ネッ
トワークのコンフィギュレーション内の特定の変更(例
えば、新しいノードの追加又はシステム内の新しいデバ
イス(非稼動中のコントローラのような)の追加)を検
出することを実行するオブジェクトの一例を生成する。
1つの実施形態において、通知エンジン336は、非稼動中
のコントローラと「Fieldbus」デバイスとのリストのた
めのランタイム・サービス338(それは、任意のランタ
イム・サービス又はアプリケーションであり得る)をポ
ーリングする。マップ340は、一般に、適当なデータ・
ラッパー(生成の際)がプロセス制御システム内の新し
いノード,デバイス等の生成に関連する情報を受けるた
めに登録する記憶位置又は記憶領域を指し示している。
勿論、全てのデータ・ラッパーがランタイム・スレッド
に登録する必要があるというわけではないが、新しく加
えられたデバイス(例えば、図2に図示された非稼動中
のコントローラのコンポーネント)に関係するコンポー
ネントに関連付けられたそれらのラッパーだけは登録す
る必要がある。起動時に、マップ340は、どのラッパー
も登録されていない記憶位置を指し示している。
【0096】さて、図10においては、第1のクライア
ント342がコンフィギュレーション・データベース325内
のコンポーネントに接続し、予約するときの、サーバ30
6の操作が図示されている。特に、クライアント・アプ
リケーションが、起動し、コンフィギュレーション階層
内のコンポーネント348を要求するためにスマート・プ
ロキシ346を使用している通信回線344を介してサーバ30
6に接続する。この際に、サーバ306は、プレスタート・
クライアント・スレッド326をクライアント342に割り当
て、サーバ306に接続する次のクライアントによって使
用される新しいプレスタート・クライアント・スレッド
(図示せず)を生成する。一般的に、クライアント342
は、ルーツ・オブジェクト(例えば、エリア・コンポー
ネント)を要求することから始める。この時点で、エリ
ア・サーバ・コンポーネント350は、サーバ306において
生成され、エリア・サーバ・コンポーネント350は、ラ
ッパー・ファクトリ312からエリア・コンポーネントを
要求する。ラッパー・ファクトリ312は、コンポーネン
ト・データ・ラッパー(以下、「ラッパー」と称す)が
共有キャッシュ327内のエリア・コンポーネントのため
に生成されず、このようなラッパー354(エリア・ラッ
パー)を生成することを認識する。そして、ラッパー35
4をクライアント・スレッド326内のエリア・サーバ・コ
ンポーネント350と結び付ける。ラッパー・ファクトリ3
12は、新しく生成されたラッパー354にユニークに関連
付けられ、前記クライアント・スレッドのためにデータ
ベース・「サイト」・コンテキスト362に結び付けられ
たライトウェイト360を生成する。前記ルーツ・エリア
・コンポーネントが要求されたので、前記サイト・コン
テキストが使用される。そして、このコンポーネント
は、データベース325内のサイト・オブジェクトに関連
付けられる。この際に、ライトウェイト360は、XM(図
示せず)を生成することによって前記エリア・コンポー
ネントのためにデータベース325に呼び出しを行う。前
記XMは、クライアント・スレッド326によって使用され
るべきコンテキスト・メモリ328内の記憶位置を指し示
しており、前記データベース・マネージャに、前記エリ
ア・コンポーネントを読み出させ、前記コンポーネント
・データをサイト・コンテキスト・メモリ362に格納さ
せる。次に、このデータが、ライトウェイト360にロー
ドされ、前記XMが、開放される。
【0097】この処理の間、変更がそのデータベースの
対応するもの(この場合、データベース325のエリア・
コンポーネント内のもの)に発生するとき、ラッパー・
ファクトリ312又は前記XMは、変更通知のためにラッパ
ー・マップ322で新しく生成されたエリア・ラッパー354
を登録する。この登録は、線363で図示されている。こ
の登録を実行するために、ユニークな識別子(ID)がラ
ッパー/データベース・サイトの組合せのために生成さ
れ、このIDが、通知スレッドに送信される登録メッセー
ジ内に掲示される。登録メッセージの処理に際して、前
記通知スレッドは、前記IDによってロックされたエリア
・ラッパー354のために、エントリをラッパー・マップ3
22に加える。このエントリは、ラッパー354とともに、X
M(データベース325内のオブジェクト又は位置を指し示
す)に関連付けられたマジック・ナンバーに関係してい
る。
【0098】次に、前記エリア・コンポーネントは、ラ
ッパー354から、エリア・コンポーネント・データで更
新されるサーバ・コンポーネント350へ送信される。サ
ーバ・コンポーネント350は、それから、コンポーネン
ト・データがクライアント・コンポーネント348に提供
されるクライアント342のスマート・プロキシ346へエリ
ア・コンポーネント・データを送信する。
【0099】その後で、前記通知スレッドは、データベ
ース325内のエリア・コンポーネントへの変更を監視
し、そして、変更がなされれば、ラッパー・マップ322
によって定義されているように、データベース325内の
このコンポーネントに関連付けられたラッパーのために
IDを参照する。前記通知スレッドは、それから、変更に
ついて前記ラッパー(この場合、ラッパー354)に通知
する。必要ならば、ラッパー354は、データベース325の
読み出しを引き起こすことによって変更を反映するため
にライトウェイト360を更新する。その後で、ラッパー3
54は、変更についてサーバ・コンポーネント350に指示
し、サーバ・コンポーネント350は、前記エリア・コン
ポーネントのために新しいデータを要求することができ
る、そして、新しいデータは、ライトウェイト360から
読み出され得る。次に、サーバ・コンポーネント350
は、変更についてクライアント342に通知し、該クライ
アント342は、エリア・コンポーネントのための新しい
データをサーバ・コンポーネント350から要求するの
で、前記エリア・コンポーネントにおける変更は、自動
的に、又は変更についてクライアントへ通知し、クライ
アントが新しいコンポーネント・データを要求するのを
待機することによって、クライアント・コンポーネント
348に反映される。クライアント342は、サーバ・コンポ
ーネント350から新しいコンポーネント・データの手動
で引き出すことができるが、変更が検出されたときに、
新しいデータ又は変更されたデータがクライアントに自
動的に送信されることについては、議論のために以下の
ように想定する。
【0100】同様に、前記ランタイム通知スレッドは、
ランタイム・サービス338の操作に基づくプロセス制御
システムのコンフィギュレーションにおいてなされた特
定の変更を検出する通知エンジン336を使用する。特定
の変更が発生した(例えば、ノード又はデバイスが加え
られた)ならば、通知エンジン336は、検出された変更
の表示を何れかのラッパーが受けるために登録したかど
うか見るために、マップ340によってその変更のために
指定された記憶位置を参照する。もしそうならば、通知
エンジン336は、通知エンジン320によって生成されたイ
ベント・メッセージが処理される方法と同様に、そのメ
ッセージを処理することができる、登録したラッパー
に、イベント・メッセージを送信する。ランタイム通知
スレッドによって検出された変更の通知を受けたいデー
タ・ラッパーが、マップ340によって、即ち、例えば、
データ・ラッパーが生成されたときに、その記憶位置で
の変更通知を受けるために前記ラッパーのIDを格納する
ことによって、その変更のために指定された記憶位置で
登録すると言える。
【0101】さて、図11において、クライアント342
は、次に、エリア・クライアント・コンポーネント348
のために子供をロードすることを要求し得る。この場
合、クライアント342は、子供コマンドおよびエリア・
ルーツ・コンポーネントのロードを呼び出し、このコマ
ンドは、プロキシ346を介してサーバ・コンポーネント3
50へ渡され、そこから、エリア・ライトウェイト360へ
渡される。エリア・ライトウェイト360は、前記エリア
・子コンポーネントについての情報を得るためにクライ
アント・スレッド326に対するコンテキスト・メモリ362
を使用するコンフィギュレーション・データベース325
へ問い合わせる。このデータは、返され、そして、ライ
トウェイトと関連付けられたデータ・ラッパーとは、そ
れから、エリア・コンポーネントに関連付けられた各子
コンポーネントのために生成される。図11において、
前記エリア・コンポーネントは、「Area A」と名付けら
れた「Fred」という説明付きの1つの子コンポーネント
だけを含むように示されている。そして、この新しい子
コンポーネント・データは、新しいライトウェイト370
に格納される。しかし、その他のエリア・子コンポーネ
ントは、また、エリア・コンポーネントに関連付けられ
ることができ、そして、この場合には、新しいライトウ
ェイトは、下記のその他のオブジェクトとともに、これ
らの子供の各々のために生成される。
【0102】新しいライトウェイト370の作成の際、エ
リア・ラッパー354(又はラッパー・ファクトリ312)
は、子ラッパーとしてエリア・ラッパー354に関連付け
られた別々のラッパー372内の新しいエリア・ライトウ
ェイト370をラップ(wrap)する。また、エリア・ラッ
パー354は、サーバ・コンポーネント350に前記新しいエ
リア・コンポーネントを返す。新しいライトウェイト37
0は、エリア・子コンポーネントに関連する特定のデー
タを得るためにコンテキスト・メモリ376を介してデー
タベース325で登録すべくXMを生成する。また、ラッパ
ー372又はライトウェイト370は、新しいラッパーID(こ
の場合、1つのラッパーID)と、これに関連付けられた
データベース・マジック・ナンバー(この場合、1つの
新しいマジック・ナンバー)とのリストとともに、登録
メッセージを前記通知スレッドに送信する。前記新しい
IDは、線378によって示するように、新しいラッパー372
を示すために前記ラッパー・マップに格納される。ま
た、データベース325における新しい子エリア・コンポ
ーネントの位置を示すマジック・ナンバーは、ラッパー
・マップ322に提供され、このIDのために格納される。
【0103】一方、エリア・サーバ・コンポーネント35
0は、新しい子エリア・コンポーネントのための子エリ
ア・サーバ・コンポーネント380を生成し、そうする際
に、子サーバ・コンポーネント380のために生成された
ラッパー372へ、新しい子エリア・サーバ・コンポーネ
ント380内でポインタを埋め込む。また、サーバ・コン
ポーネント350は、前記通信回線とプロキシ346とを介し
てクライアント・エリア・コンポーネント348へ子コン
ポーネント(この場合、1つ)のリストを送信する。そ
して、エリア・クライアント・コンポーネント348は、
子エリア・クライアント・コンポーネントを生成し、新
しい子クライアント・コンポーネント382と新しい子サ
ーバ・コンポーネント380との間での通信を可能にする
ために子エリア・クライアント・コンポーネント382に
おいて、サーバ・コンポーネント・リファレンスを(サ
ーバ・コンポーネント380に)埋め込む。クライアント
・コンポーネント382のためのスマート・プロキシ384
は、それから、生成され、データベース325内で新しい
子コンポーネントのための予約を含むためにクライアン
ト・スレッド326を拡張する処理を完了する。勿論、同
じ手順は、特定のコンポーネントのその他の子コンポー
ネントのために発生する。そして、複数の子供が存在す
るならば、クライアント・スレッド326は、複数の子コ
ンポーネントを予約するために拡張され得る。同様に、
クライアント・スレッド326は、新しく予約された子コ
ンポーネント382に関連付けられた子コンポーネントを
得ることによって、又は別のルーツコンポーネントを要
求することによって、更に拡張され得る。
【0104】さて、図12を参照して、第2のクライア
ント386が、第1のクライアント342により予約された同
一のコンポーネントを予約する際の処理について、詳述
する。ここでは、サーバ306の通知スレッドは、明確化
のために図示していない。特に、第2のクライアント386
は、第1のクライアントと同様の方法でサーバ306に接続
し、前記エリア・コンポーネントを予約する。サーバ30
6への接続に際しては、第2のクライアント386は、第2の
プレスタート・スレッド387に割り当てられる。この例
では、クライアント386は、第2のクライアント・スレッ
ドでエリア・サーバ・コンポーネント388を生成するエ
リア・ルーツ・コンポーネントを求める。サーバ・コン
ポーネント388は、エリア・ルーツ・コンポーネントの
ためのラッパーをラッパー・ファクトリ312に求める。
なぜなら、ラッパー354は、前記エリア・ルーツ・コン
ポーネントのための共有キャッシュ327内で既に存在す
るからであり、ラッパー・ファクトリ312は、ラッパー3
54にポインタを返す。この時点で、エリア・サーバ・コ
ンポーネント388は、第1のクライアント342のために既
に確立されたライトウェイト360から読み出されるエリ
ア・ルーツ・コンポーネント・データについてラッパー
354に問い合わせる。ライトウェイト360に格納されたエ
リア・ルーツ・コンポーネント・データは、エリア・ル
ーツ・サーバ・コンポーネント388に返され、そして、
そこから、クライアント・エリア・コンポーネント389
に返される。
【0105】エリア・ルーツ・コンポーネント389の子
供のための第2のクライアント386による要求に際して、
エリア・ルーツ・サーバ・コンポーネント388は、ラッ
パー・ファクトリ312に子ラッパーを要求する。そし
て、これらのラッパー(この場合、1つのラッパー)が
既に存在するので、ラッパー372へのポインタは、エリ
ア・ルーツ・サーバ・コンポーネント388にラッパー・
ファクトリ312によって提供される。それから、サーバ
・コンポーネント388は、ラッパー372へのポインタを有
する子エリア・サーバ・コンポーネント390を生成す
る。エリア・ルーツ・サーバ・コンポーネント388は、
適当なクライアント・コンポーネント392を生成する第2
のクライアント386とサーバ・コンポーネント390と通信
するスマート・プロキシ393とに子供の情報を送信す
る。また、子エリア・サーバ・コンポーネント390は、
ラッパー372を介してライトウェイト370を読み出し、プ
ロキシ393を介してクライアント・コンポーネント392に
このデータを送信する。この処理においてはデータベー
ス325への呼び出しがなされなかったので、第2のクライ
アントのデータベース・コンテキストは空である。つま
り、全ての情報が、そのデータを得るために第1のクラ
イアント・スレッド326のデータベース・コンテキスト
を使用したライトウェイト360,370を介してやって来た
のである。しかし、ライトウェイトが生成されなかった
というデータを第2のクライアント386が要求するなら
ば、ラッパー・ファクトリ312は、そのコンポーネント
のためのラッパーおよびライトウェイトを生成し、デー
タベース325からそのデータを得るために第2のクライア
ント・スレッド387のためのデータベース・コンテキス
トを介してデータベース325に接続する。
【0106】エリアルーツ又は子エリア・コンポーネン
トを現在予約するその他の任意のクライアントは、デー
タベース325に如何なる呼び出しもすることなく、共有
キャッシュ327からこのデータにアクセスすることがで
き、これは、データベース325上でのロードを低減する
と言える。同様に、イベント通知を通知スレッドから受
けるのに際して、データ・ラッパー354は、クライアン
トの両方ともに変更を通知するために、第2のクライア
ント386のためのサーバ・コンポーネント350に、また、
第1のクライアント342のためのサーバ・コンポーネント
388に通知する。
【0107】さて、図13を参照して、コンフィギュレ
ーション・データ項目への変更を検出する通知スレッド
に関連付けられた動作と、この変更通知が各々の予約中
のクライアントへ自動的に返される方法とについて説明
する。この場合、第2のクライアント386は、「Area A」
の名前を「Fred」から「Wilma」に変更し、サーバ306へ
この変更とともに、書き込み又は起用メッセージを提示
する。サーバ・コンポーネント390は、新しい名前をロ
ードし、ライトウェイト370において新しい名前をロー
ドするラッパー372に、この名前を付与する。ライトウ
ェイト370は、第2のクライアント386のためのデータベ
ース・コンテキスト394に自動的に新しい名前をロード
する。ここから、前記新しい名前は、データベース325
に格納される。しかし、「Area A」コンポーネントの第
1のクライアントのバージョンには、何も発生しなかっ
た。過去に、第1のクライアント342は、変更のためにデ
ータベース325に定期的にポーリングする必要があっ
て、データベース325からの遅い通信回線を通じた多く
の読み出しと多くのダウンロードという結果となる。
【0108】しかし、この場合、通知エンジン320は、
ラッパー・マップ322においてマジック・ナンバーに関
連付けられたデータベースの項目の各々のために、更新
イベントのリストのためにデータベース325に定期的に
ポーリングする。各イベントは、どのオブジェクトが変
更されたかについて示す情報と、変更の種類(名前の変
更,削除,特性の変更,子供の追加/削除等)のような
前記変更についての幾つかの情報と、多分、名前の変更
操作の場合の新しいおよび古い名前のような幾つかの手
掛かり(hint)とを含んでいる。通知エンジン320は、
ラッパーIDとともに変更されたオブジェクトのマジック
・ナンバーに一致するラッパー・マップ322を使用し、
前記関連付けられたラッパー(この場合、ラッパー37
2)に更新イベントを処理するように求める。この処理
は、このオブジェクトの新しい値又は変更された値を得
るためにデータベース325からライトウェイト370を再ロ
ードすることを含むことが可能である。このような再ロ
ードは、ライトウェイト370がデータベース325への変更
に関与していなかったときに必要となる。ラッパー372
は、例えば、検出された変更が古いか若しくは期限切れ
の変更であるか、又はその他の任意の好ましい理由であ
るならば、ライトウェイト370を再ロードすることを拒
否することが可能である。また、ラッパー372は、前記
変更についてサーバ・コンポーネント380,390の各々に
通知するか、これに代えて、メッセージ(例えば、ウイ
ンドウ・メッセージ)を(このコンポーネントを予約す
る)クライアント342,386の各々へ送信する。ラッパー
372からイベント・メッセージを処理するときに、サー
バ・コンポーネント380,390は、イベントおよび任意の
新しいデータを、対応するクライアント342,386のスマ
ート・プロキシへ転送する。第1のクライアント342のプ
ロキシ384は、第1のクライアント342におけるユーザ・
インタフェース上での再表示を引き起こさせるクライア
ント・コンポーネント382に再表示メッセージを掲示す
る。この場合、ユーザ・インタフェースが再表示すると
きに、プロキシ384が新しいデータをクライアント・コ
ンポーネント382に譲り渡し、更新が完了する。第2のク
ライアント386は、前記変更を既に持つので、前記メッ
セージを無視することが可能である。
【0109】この予約システムで、第1のクライアント3
42は、如何なるデータベースの呼び出しもする必要もな
く、第1のクライアント342での前記変更された項目の完
全な再表示を早めるために、唯1回の呼び出しが(例え
ば、遅い通信回線を介して)サーバ306から第1のクライ
アント342へなされただけである。勿論、この処理は、
全てのライトウェイトについて、また、任意のライトウ
ェイトを予約している全てのクライアントについて発生
する。従って、データベース325への如何なる変更を
も、最小のデータベースの読み出しと、遅い通信回線を
介した最小の通信とを伴って、その項目を予約する各ク
ライアントへ自動的に送信することができる。
【0110】さて、図14を参照して、キャッシュ327
への並列アクセスの仲介について、ロック・マネージャ
316の操作を更に詳細に記述する。前述の説明によって
よく理解されるように、共有キャッシュ327におけるラ
イトウェイトの各々は、一又は複数のクライアント・ス
レッドによって共有され得る。その結果、多くのクライ
アントが、同一のライトウェイトから同時に読み出しを
行うことができる。ロックについては、これらの読み出
しには一般に必要ではない。しかし、2つのクライアン
トが、ライトウェイトに、つまりデータベース325に同
時に書き込みを行おうとする状況に出くわすことがあり
得、これは、デッドロック(deadlock)のような問題を
引き起こす。
【0111】これらの問題を防ぐために、ロック・マネ
ージャ316は、ロックを渡して、ロックテーブルを保守
することによって、前記ライトウェイトの各々へのアク
セスを管理する。概括して言えば、ロック・マネージャ
316は、ラッパー上でのロック要求を与えることによっ
て動作する。クライアント・スレッドがライトウェイト
にアクセスしたいときには、前記スレッドは、前記ラッ
パー上でのロックの読み書きを最初に取得しなければな
らない。例えば、別のクライアント・スレッドがそのラ
イトウェイトにアクセスするプロセスにおいて存在する
ために、前記ロックが利用できないならば、ロック・マ
ネージャ316は、前記ロックが自由になるまで追い詰め
られて、要求しているスレッドを保持する。
【0112】図14の例においては、第1および第2のク
ライアント342,386は、「Area A」の説明を書き込もう
としている。ここで、第2のクライアント386は、ライト
ウェイト370への書き込みを実行しようとし、この処理
においては、ロック・マネージャ316からのラッパー372
上でロックを要求し、これを取得する。第1のクライア
ント342が、それから、ライトウェイト370の特性からの
読み出し又は該特性への書き込みをしようとするなら
ば、ロック・マネージャ316は、このスレッドがデータ
・ラッパー372上での読み出しロック又は書き込みロッ
クを取得しようとしたときに、第1のクライアント・ス
レッド326の実行を待機する。一方、第2のクライアント
・スレッド387は、「Area A」の名前を「Wilma」に変更
するために、それ自身のデータベース・コンテキスト39
4を介してライトウェイト370へ書き込む。この書き込み
操作が完了したときに、ロック・マネージャ316は、第1
のクライアント・スレッド326に対して、ライトウェイ
ト370の、つまり、データベース325の読み書きを進めさ
せる。読み出しロックが開放されるまで、書き込みロッ
クは拒否又は保留され得ることに注意する。しかし、読
み出しロックが別のクライアント・スレッドに与えられ
ているならば、読み出し要求を保留する理由は通常な
い。また、ロック・マネージャ316が上述した予約操作
を確立するために使用され得る点に注意する。特に、予
約ロックは、例えば、ライトウェイト370によって要求
され、また、ライトウェイト370上のクライアントへ与
えられることが可能である。これ以後においては、任意
のクライアントが、ライトウェイト370の読み出しを行
うことが可能であるが、該ライトウェイト370への書き
込みはできない。予約ロックが与えられたならば、ロッ
ク・マネージャ316は、ラッパー372に対して、書き込み
ロックを要求しているクライアントへメッセージを送信
するようにさせ、異なるクライアントによって予約中で
あるように、このデータへの書き込みは許容されない。
勿論、ロック・マネージャ316は、また、前記予約ロッ
クを与えられたクライアントの識別を提供又は格納する
ことが可能であり、また、起用操作の間、このクライア
ントによるライトウェイト370への書き込みを可能とす
る。
【0113】ロックがあれば、何処であってもデッドロ
ックの可能性がある。例えば、第1のクライアントが、
コンポーネントAのロックを取り出し、同時に、第2のク
ライアントが、コンポーネントAのロックを取り出す。
次に、第1のクライアントが、コンポーネントBのロック
を取り出そうとするが、第2のクライアントによってコ
ンポーネントBのロックが開放されるまで停止する。し
かし、コンポーネントBのロックが開放される前に、第2
のクライアントが、コンポーネントAのロックを取り出
そうとするならば、両方のコンポーネントAおよびコン
ポーネントBのロックは開放されることがなく、従っ
て、デッドロックとなる。共有キャッシュ327における
デッドロックを回避するために、ロック・マネージャ31
6には、如何なる特定のクライアントであっても、ロッ
クを順々に取り出し、開放しなければならないような制
約を持たせることが可能である。しかし、この場合、2
つのクライアントは、他方によってなされた変更を上書
きすることが可能であり、この結果、後者の書き込みが
勝つ。例えば、第1のクライアントが、コンポーネントA
を修正し、第2のクライアントがコンポーネントBを修正
する。第1のクライアントが、それから、コンポーネン
トBを修正し、第2のクライアントがコンポーネントAを
修正する。デッドロックが回避される一方、コンポーネ
ントAは、第2のクライアントの変更を有し、コンポーネ
ントBは、第1のクライアントの変更を有する。
【0114】ライトウェイトは階層を持たないが、幾つ
かのライトウェイト間リファレンスが存在することが可
能である。もしそうならば、この事実は、例えば、更新
操作が同時にロックすべき両方のライトウェイトを要求
するならば、デッドロックの潜在的な要因である。この
問題を回避するために、ロック・マネージャ316は、関
連したライトウェイトに関してロック注文を実行するこ
とができる。例えば、第1のライトウェイトが第2のライ
トウェイトに関連付けられるならば、第1のライトウェ
イトは、第2のライトウェイトのロック・リストに加え
られる。クライアントが第2のライトウェイトをロック
したいならば、前記クライアントは、最初に第1のライ
トウェイトをロックしなければならない。ロック・マネ
ージャ316は、この注文のリストを保持し、ロック手順
の注文を実施することが可能である。この従属ロックを
実施するために、関与したオブジェクトが従属ツリーを
形成しない限り、ロック・マネージャ316は、クライア
ントにつき1つのロックのみを一度に許容することが可
能である。
【0115】データベース325において一連のコンポー
ネントを修正することは、1つのデータベース処理につ
いて発生する。それは、処理が失敗する可能性があり、
従って、変更がデータベース325においてなされる前
に、データベースの状態をロールバック(rollback)
し、キャッシュされたコンポーネント(例えば、ライト
ウェイト)がデータベース325に格納されたものと矛盾
する結果となる。ロールバック・メカニズムを提供する
ために、クライアント・スレッドは、データベース修正
処理が稼動している間、前記コンポーネントを加えた、
修正されたコンポーネントのリストを保持することが可
能である。複数ステップのデータベース処理が中止され
るか、又は失敗と見なされたならば、前記リストが横渡
しされ、各コンポーネントが再ロードされる。これは、
コンポーネントの特性を再ロードし、新しい/削除され
た子供についてチェックすることである。このような修
正されたコンポーネントのリストが既知の順序(例え
ば、ラッパーIDに応じて)に保たれるならば、ロックテ
ーブルを生成し、クライアント操作につき複数のロック
を引き出すことが可能である。
【0116】ライトウェイトがロックされる時間を減ら
すために、ライトウェイトは、データベース325へ特性
を書き戻すとき、ライトウェイトに格納されたコンポー
ネント・データ・オブジェクトのクローンを最初に生成
することが可能である。該クローンは、新しい特性の値
を供給され、該値をデータベース325に格納するために
使用される。この操作が一旦完了したならば、第1のコ
ンポーネント・データ・オブジェクトは、変化される
か、又は前記クローンを優先して差し替えられる。前記
クローンが作られた後で、前記ライトウェイトをロック
解除することができるので、このようなクローン技術を
使用することは、キャッシュ327又は前記ライトウェイ
トがロックされる時間を減じ、前記キャッシュへのアク
セスの並列性を改善する。しかし、この状況には、2つ
のクライアントが、同時に、同一のライトウェイトへの
書き込みをしようとする点で、競争条件が存在すること
になる。特に、第1のクライアントが、第2のクライアン
トの前に、データベース325へのコンポーネントのその
バージョンを保存するが、第2のクライアントの後で、
前記キャッシュ(即ち、ライトウェイト)を変化させる
ならば、前記キャッシュは、データベースで矛盾するこ
とになる。ここで、前記データベースは、第2のクライ
アントの変更を有するが、前記ライトウェイトは、第1
のクライアントの変更を有する。この状況は、ロックを
調整することによって、又はいつでも任意のライトウェ
イトの1つのクローンだけを許容することによって、回
避され得る。これらの手順の全ては、ロック・マネージ
ャ316によって仲介され得る。
【0117】上述のように、新しい子ライトウェイト
は、クライアント要求に応じて、又はクライアントが新
しい子供を加える時に、データベース325からこれらの
子供をロードすることによって生じる。望むならば、ク
ライアントは、親をロックする前に、新しい子コンポー
ネント・データ・オブジェクトを生成/ロードする時点
で、キャッシュ327を操作することを許容し得る。従っ
て、前記親ライトウェイトが、子供が前記階層に実際に
接続されているときか、又は前記親に関連付けられたと
きにだけ、ロックされる必要がある。言い換えると、全
ての子供について完了するまで、生成されている子コン
ポーネントに関連付けられたオブジェクトの全てが、非
共有方式において又はローカル・メモリにおいて生成さ
れることが可能である。それから、前記親は、これらの
子供へのポインタを含み、これによって、これらの子オ
ブジェクトを前記共有メモリへ移すために、ロックおよ
び修正されることが可能である。その結果、新しい子コ
ンポーネントに関連付けられるために変えられるとき、
且つ子オブジェクトの作成の間でないときにのみ、前記
親ライトウェイトはロックされる。
【0118】さて、図15には、ランタイム操作によっ
てなされたプロセス制御システムのコンフィギュレーシ
ョンへの変更について、クライアントに通知するために
動作するランタイム通知スレッドの操作を示している。
この場合、クライアント400が非稼動中のデバイス・コ
ンポーネントを予約し、クライアント・コンポーネント
402,プロキシ404,前記非稼動中のデバイス・サーバ・
コンポーネント406,ラッパー408,およびライトウェイ
ト410が、クライアント400およびサーバ306内に既にセ
ットアップされているものと仮定する。また、ラッパー
408が生成されたとき、該ラッパー408が、新しいコント
ローラのシステムへの追加の指示を受けるためにマップ
340に登録されているものと仮定する。この例では、前
記ランタイム通知スレッドの通知エンジン336が、ラン
タイム・サービス(例えば、自動検出アプリケーショ
ン)を介して加えられた新しいコントローラ(「CTLR00
1」と名付けられている)の追加を検出し、この新しい
コントローラの存在を示す非稼動中のデバイス・ラッパ
ー408に更新イベントを送信する。非稼動中のデバイス
・ラッパー408は、前記検出されたコントローラのため
に子ラッパー412を生成することによって、新しいコン
トローラのためにライトウェイト414を生成することに
よって、そして、もし可能であれば、ライトウェイト41
4にランタイム・サービスによって届けられるようなコ
ントローラ・データを格納することによって、前記更新
イベントに応答する。また、ライトウェイト414は、デ
ータベース325のこのデータを格納することが可能であ
り、望むならば、このデータを、データ・ラッパー412
に、および新しいコントローラ情報が前記通知スレッド
のためにラッパー・マップ322を格納するデータベース
位置のマジック・ナンバーに、登録することが可能であ
る。また、ラッパー412は、マップ340に更新を登録する
ことが可能である。共有キャッシュ327に新しい子供と
しての新しいコントローラをロードすることに際して、
イベントが、新しい子データ・ラッパー412にポインタ
を埋め込み、新しいコントローラ・データをクライアン
ト400へ押す、新しい子コントローラ・サーバ・コンポ
ーネント416を生成することによって応答する、前記非
稼動中のデバイス・サーバ・コンポーネント406に掲示
される。クライアント・プロキシ404は、新しい子イベ
ントを受けて、新しい子供の情報を格納し、クライアン
ト400でのユーザ・インタフェースに再表示メッセージ
を提示する。非稼動中のデバイス・クライアント・コン
ポーネント402が新しい子供をロードするときに、該非
稼動中のデバイス・クライアント・コンポーネント402
は、新しい子コントローラ・コンポーネント418を生成
し、非稼動中のデバイス・サーバ・コンポーネント406
によってクライアント400に送信されたサーバ・コンポ
ーネントの識別情報を使用するコントローラ・コンポー
ネント418のために、サーバ・コンポーネント416への接
続を確立する。コントローラ・クライアント・コンポー
ネント418のプロキシ420は、生成され、また、コントロ
ーラ・クライアント・コンポーネント418に代わって、
サーバ・コンポーネント416との通信を想定する。この
ように、通知エンジン336によって検出された前記コン
トローラの追加およびその変更は、ライトウェイトに格
納されたデータを変更することが可能であり、また、ラ
イトウェイトおよび関連付けられたラッパーの生成又は
削除を引き起こす、関連付けられたデータ・ラッパー40
8に送信される。新しいラッパーおよびライトウェイト
の作成が、親のオブジェクトを予約している各クライア
ント・スレッドを拡張する結果となる。
【0119】上述した操作の他に、その他の動作又は操
作は、サーバ306によって実行されることが可能であ
る。例えば、クライアントは、該クライアントがデータ
ベース325に格納すべきコンポーネントを生成する生成
操作を、実行することが可能である。この生成動作に関
連付けられた操作は、データベース325からこのオブジ
ェクトをロードする代わりに、データベース325の根底
にあるデータベース・オブジェクトを生成する特別なス
テップとともに、子供をロードすることと非常に似てい
る。ここで、前記クライアントは、コンポーネントを生
成し、生成したコンポーネントの親に関連付けられたサ
ーバ・コンポーネントに、このコンポーネントを送信す
る。この動作によって、ラッパー・ファクトリ312が、
前記関連付けられた親のラッパーとライトウェイトとの
子供として、ラッパーとライトウェイトとを生成し、新
しいライトウェイトが、新しいコンポーネントをロード
する。前記ライトウェイトは、それから、通知スレッド
におけるラッパー・マップ322でのデータベース位置と
ラッパーとを登録するのと同じように、新しいコンポー
ネントをデータベース325に書き込む。新しいサーバ・
コンポーネントは、それから、ラッパーのために生成さ
れ、この新しいコンポーネントのためにクライアントと
の通信を仮定する。
【0120】データベース325からコンポーネントを削
除するために、クライアントは、関連付けられたサーバ
・コンポーネントを最初に削除し、それから、開放す
る。サーバ・コンポーネントの削除は、削除された状態
で、前記関連付けられたデータ・ラッパーとライトウェ
イトとを置き、それは、それから、データベース325か
らコンポーネントを削除する。前記ラッパーは、その他
の参照しているサーバ・コンポーネント(その他のクラ
イアント・スレッド内の)の各々に削除メッセージを送
り、予約中のクライアントに前記削除動作を通知する。
前記削除上のとき、前記ラッパーは、コンフィギュレー
ション階層から除去され、更なる任意のデータベース操
作も実行することができない。しかし、全ての参照して
いるサーバ・コンポーネントがそれを開放するまで、前
記ラッパーは、残ることが可能である。勿論、前記参照
しているサーバ・コンポーネントは、前記サーバ・コン
ポーネントが前記削除動作のクライアントに通知した後
で、発生する、前記関連付けられたクライアントの開放
まで、開放されない。勿論、データベース・イベント・
メカニズムは、前記通知スレッドの通知エンジンによっ
てラッパーに1箇所に集められる削除メッセージを最終
的に生産することが可能である。前記ラッパーは、削除
された状態にあるので、それはこのメッセージを無視す
る。
【0121】コンフィギュレーション・コンポーネント
の幾つかの操作によってそのコンポーネントの種類が変
化するようになるので、該コンポーネントの変化を生じ
させることが可能である。この変化は、前記コンポーネ
ントとサブ・ツリーとをデータベース325から再ロード
することを必要とする。この操作を生じさせるために、
前記変化されたコンポーネントのための全てのライトウ
ェイトの親/子階層は、既存のライトウェイトへデータ
ベース325から再ロードされる。その後で、前記サーバ
・コンポーネントは、再確立され、これらのサーバ・コ
ンポーネント内の新しい値は、それから、前記クライア
ント・コンポーネントと整合される。このような整合
は、子コンポーネントを通じて繰り返すこと、その種類
が変更され、もはや存在しないものを除去することを含
む。新しい子供は、ロードされて、必要に応じて加えら
れる。
【0122】勿論、クライアントは、単に開放され、又
はデータベース325内のコンポーネントを予約解除する
ことが可能である。この場合、前記クライアントは、前
記関連付けられたサーバ・コンポーネントを開放し、そ
れによって、前記関連付けられたラッパーがラッパーの
参照回数を減少させるようになる。前記ラッパーのため
のラッパーのリファレンス(参照)回数が零になると
き、サーバ・コンポーネントは、このラッパーを参照せ
ず、従って、このラッパーを予約しない。この場合、前
記ラッパーはアンロード(unload)する。望むならば、
前記ラッパーは、該ラッパーが直ちに再ロードされる必
要がある場合に備えて、アンロードする前にタイムアウ
ト時間を待つことが可能である。アンロードするとき、
前記ラッパーは、その関連付けられたライトウェイトを
破壊する(データベース325内の更新通知の登録を取り
消し、前記ラッパー・マップからの登録を取り消す)。
さらに、コンポーネントが開放されるとき、それは、そ
のライトウェイトと全ての子ライトウェイト/子ラッパ
ーを開放し、子ライトウェイト/子ラッパーのバック・
ポインタを零にする。
【0123】ここでは、サーバ306の操作が、1つ又は2
つのコンポーネントにアクセスする2つのクライアント
のために記述されている一方、同様の技術が、拡張され
ることができて、データベース内の任意の数のコンフィ
ギュレーション・オブジェクトから読み出し、また、該
任意の数のコンフィギュレーション・オブジェクトへの
書き込みを行う任意の数のクライアントおよびクライア
ント・スレッドに使用され得ると言える。さらに、複数
のクライアントの予約者関係を確立するために共有キャ
ッシュを使用する技術は、プロセス制御システム内でコ
ンフィギュレーション・データにアクセスするものとし
てここに記述されている一方、この技術は、コンフィギ
ュレーション・データベースと関係がないもの、また、
プロセス制御データベースと関係がないものを含むその
他のどの様なデータベース・アクセス・システムにおい
ても使用されることが可能であると言える。
【0124】また、ここに記述されているデータベース
・アクセス技術は、クライアントがコンポーネント単位
でサーバと通信すると仮定している一方、コンフィギュ
レーション・ツリーの整列は、クライアントとサーバと
の間の、より最適な通信を提供するために使用されるこ
とが可能である。特に、クライアントがツリー又はサブ
・ツリーの全体を引き出さなければならないということ
を知っているときには、1つのサーバがツリー全体を得
るために呼び出しをすることは、むしろ、ツリーの各レ
ベルで子ルーチンのロードの呼び出しを再帰的に行うこ
とよりも効率的である。クライアントがツリー全体をサ
ーバに書き込みたいときには、前記ツリー全体が信号メ
ッセージで送信されることが可能であるように、逆もま
た真実である。勿論、これらのメッセージはクライアン
トとサーバとによって横取りされることが可能である。
そして、予約関係を確立するために必要なオブジェクト
(先に述べた)は、前記ツリー又はサブ・ツリーの全体
を予約するために、また、ツリー又はサブ・ツリーの全
体に書き込むために、前記クライアント又は該クライア
ントに必要なサーバ内のオブジェクトの全てを直ぐに生
成することが可能である。
【0125】また、前記サーバおよびクライアントによ
って作成又は実行されるべく、ここに記述されているオ
ブジェクト,その他の要素,およびステップは、任意の
好ましいプログラミング技術又はプログラミング言語を
使用して実行されることが可能であると言える。そし
て、これらのプログラムは、メモリに格納され、ここに
記述されている前記クライアント,サーバ,およびデー
タベース内において任意の方法でプロセッサに実行され
ることが可能であると言える。さらに、ここに記述され
ているデータ・アクセス技術は、ソフトウェアにおいて
実現することが好ましいが、ハードウェア,ファームウ
ェア等により実現されされても、また、プロセス制御シ
ステム10に関連付けられた任意のプロセッサにより実現
してもよい。このように、望むならば、この技術は、標
準的な多目的CPU又は特別に設計されたハードウェア又
はファームウェアにより実現することも可能である。ソ
フトウェアにより実現するときには、前記ソフトウェア
・ルーチンは、磁気ディスク,レーザー・ディスク,光
ディスク,又はその他の記録媒体、更には、コンピュー
タ又はプロセッサのRAM,ROM等のような任意のコンピュ
ータが読み取り可能なメモリに格納されることが可能で
ある。同様に、例えば、コンピュータが読み取り可能な
ディスク若しくはその他の可搬型のコンピュータの記憶
メカニズムを介したもの、又は電話線,インターネット
等のような通信チャネルを通じたもの(可搬型の記録媒
体を介してこのようなソフトウェアを提供することと同
一視又は置き換え可能である)を含む任意の公知の又は
好ましいデータの移動方法を利用して、このソフトウェ
アをユーザ又はプロセス制御システムに届けることも可
能である。
【0126】このように、本願発明は、説明する目的か
ら、特定の例に関して記述されているものであって、本
願発明を限定するものではない。また、本願発明におい
ては、その目的および範囲から逸脱することなく、開示
されている実施形態の変更、追加、又は削除がなされ得
ることは、当業者にとっては明らかである。
【0127】
【発明の効果】本願発明に係るプロセス制御システム、
コンフィギュレーション・データベース・システム、プ
ロセス制御システムでコンフィギュレーション・データ
を使用する方法、およびプロセス制御システムでコンフ
ィギュレーション動作を行う方法においては、以上に詳
述したように、コンフィギュレーション・データベース
が、プロセス制御システム内の複数の物理的な位置に分
散され、その各々が、全サイトのコンフィギュレーショ
ン・データの全部を格納するマスター・コンフィギュレ
ーション・データベースと、該マスター・コンフィギュ
レーション・データベースからコンフィギュレーション
・データをダウンロードおよび予約する一又は複数のブ
リーフケース・データベースとを備えている。該ブリー
フケース・データベースは、コンフィギュレーション動
作を行うべく他のサイトで使用され、その後で、変更さ
れたコンフィギュレーション項目が、これらを格納する
前記マスター・コンフィギュレーション・データベース
に起用される。
【図面の簡単な説明】
【図1】 衛星通信回線を介して通信可能に接続された
2つの地理的に離隔したサイトを備えるプロセス制御シ
ステムのブロック図である。
【図2】 コンフィギュレーション・アプリケーション
で示される典型的なプロセス制御システム階層の図であ
る。
【図3】 遅い通信回線を介して接続され、共通のマス
ター・コンフィギュレーション・データベースを共有す
るメイン・サイトおよびリモート・サイトを備えるプロ
セス制御システムのブロック図である。
【図4】 共通のマスター・コンフィギュレーション・
データベースを共有するメイン・サイトと2つのオフラ
イン・サイトとを備えるプロセス制御システムのブロッ
ク図である。
【図5】 共通のマスター・コンフィギュレーション・
データベースを共有する、ローカル・エリア・ネットワ
ークを介してプラント・サイトに接続され、間欠的な通
信接続を介してユーザ・インタフェースに接続された制
御室を備えるプロセス制御システムのブロック図であ
る。
【図6】 地理的に離隔した異なる部分を遅い又は小さ
い帯域幅の通信回線を介して通信可能に接続されたプロ
セス制御システムにおいて使用される分散型のコンフィ
ギュレーション・データベース・システムのブロック図
である。
【図7】 複数のクライアントとコンフィギュレーショ
ン・コンポーネントとの間でコンフィギュレーション・
データベース内に格納される予約者/公開者通信を行う
コンフィギュレーション・データベース・サーバ内で、
共有キャッシュを用いるコンフィギュレーション・デー
タベースのクライアント/サーバ・システムのブロック
図である。
【図8】 図7のコンフィギュレーション・データベー
ス内に格納されたコンフィギュレーション・コンポーネ
ントへアクセスする複数のクライアントを提供するため
に、図7のクライアント/サーバ・システム内で用いら
れるオブジェクト・モデルを示す図である。
【図9】 プレスタート(起動)時における図7のデー
タベース・サーバ内のオブジェクトの状態を示すブロッ
ク図である。
【図10】 第1のクライアントがコンフィギュレーシ
ョン・データベースから第1のコンフィギュレーション
・コンポーネントにアクセスすべくサーバに接続する際
の、図7のデータベース・サーバ内のオブジェクトの操
作を示すブロック図である。
【図11】 第1のクライアントがコンフィギュレーシ
ョン・データベースからコンポーネントの子供をロード
する際の、図7のデータベース・サーバ内のオブジェク
トの操作を示すブロック図である。
【図12】 第2のクライアントが、既にデータベース
・サーバの共有キャッシュに格納されたコンフィギュレ
ーション・データベースから、第1および第2のコンフィ
ギュレーション・コンポーネントにアクセスすべくデー
タベース・サーバに接続する際の、図7のデータベース
・サーバ内のオブジェクトの操作を示すブロック図であ
る。
【図13】 データベース・サーバの通知スレッドによ
って生成されたイベント通知に応じた、図7のデータベ
ース・サーバ内のオブジェクトの操作を示すブロック図
である。
【図14】 データベース・サーバ内で共有キャッシュ
への並列アクセスの仲介をする図7のデータベース・サ
ーバ内のロック・マネージャの操作を示すブロック図で
ある。
【図15】 ランタイム・サービスの通知スレッドによ
って生成されたイベント通知に応じた、図7のデータベ
ース・サーバ内のオブジェクトの操作を示すブロック図
である。
【符号の説明】
10,130,145,170 プロセス制御システム 12,131 メイン・サイト(第1のサイト,ローカル・サ
イト) 14,135,136 リモート・サイト(第2のプロセス制御
サイト) 16,213,230,304,344 通信回線 24,26,50 プロセス・コントローラ 30,132,147 マスター・データベース 54,142,156,162 ブリーフケース・データベース
(ミラー・データベース) 65 ツリー 133,138,148,152,164,202,306 データベース・
サーバ 150,154 ランタイム・サーバ 210,212 データ・ストア 214 共有キャッシュ 220 通知スレッド 222 ランタイム・スレッド 316 ロック・マネージャ 320,336 通知エンジン 327 共有キャッシュ
───────────────────────────────────────────────────── フロントページの続き (72)発明者 チャットコフ, テレサ アメリカ合衆国 78759 テキサス オー スティン コードラ ドライブ 4002 (72)発明者 ギルバート, スティーヴン アメリカ合衆国 78758 テキサス オー スティン マウンテン クウェイル ロー ド 10109 (54)【発明の名称】 プロセス制御システム、コンフィギュレーション・データベース・システム、プロセス制御シス テムでコンフィギュレーション・データを使用する方法、およびプロセス制御システムでコンフ ィギュレーション動作を行う方法

Claims (46)

    【特許請求の範囲】
  1. 【請求項1】 第1の物理的な位置および第2の物理的な
    位置の間で分散され、前記第1および第2の物理的な位置
    が実質的に地理的に離隔しているプロセス制御システム
    において、 第1のデータのセットを格納すべく、前記第1の物理的な
    位置に配置された第1のデータベースと、 第2のデータのセットを格納すべく、前記第2の物理的な
    位置に配置された第2のデータベースと、 第1の物理的な位置および第2の物理的な位置を通信可能
    に結合する遅い通信回線と、 前記第1のデータベースから前記第1のデータのセットの
    一部をコピーし、前記第2のデータベースに、前記第2の
    データのセットとして、前記第1のデータのセットのコ
    ピーされた一部を格納すべく、前記遅い通信回線を使用
    する通信ルーチンとを備えることを特徴とするプロセス
    制御システム。
  2. 【請求項2】 前記第1のデータベースは、前記第1のデ
    ータのセットのマスター・コピーを格納するマスター・
    データベースであり、前記第2のデータベースは、前記
    第2の物理的な位置での前記プロセス制御システム内で
    使用されるべき前記第2のデータのセットとして、前記
    第1のデータのセットの少なくとも幾つかのコピーを格
    納するブリーフケース・データベースであることを特徴
    とする請求項1記載のプロセス制御システム。
  3. 【請求項3】 前記第1の物理的な位置は、前記第1のデ
    ータベース内の前記第1のデータのセットの何れかをロ
    ックし、ロックしたデータが変更されることを防止する
    ロック手順を実行すべく構成されたデータベース・アク
    セス・デバイスを備え、前記通信ルーチンは、前記デー
    タの項目が前記第2のデータベースにコピーされるとき
    に、前記第1のデータベース内のデータの項目をロック
    する前記ロック手順を開始し、これによって、前記第1
    のデータベース内の前記データの項目を予約する予約手
    順を備えることを特徴とする請求項2記載のプロセス制
    御システム。
  4. 【請求項4】 前記通信ルーチンは、予約されたデータ
    の項目として前記第1のデータベースに格納されるべ
    き、前記第2の物理的な位置での前記予約されたデータ
    の項目のコピーになされた変更を、前記第1のデータベ
    ースへ送信する起用手順を更に備えることを特徴とする
    請求項3記載のプロセス制御システム。
  5. 【請求項5】 メモリを有する携帯型のコンピュータを
    更に備え、前記ブリーフケース・データベースは、前記
    携帯型のコンピュータのメモリ内に配されることを特徴
    とする請求項4記載のプロセス制御システム。
  6. 【請求項6】 更なるブリーフケース・データベース
    が、前記携帯型のコンピュータのメモリ内に配されてい
    ることを特徴とする請求項5記載のプロセス制御システ
    ム。
  7. 【請求項7】 前記通信ルーチンは、前記第2の物理的
    な位置で特定の機能を行うために要する前記マスター・
    データベースの一部を自動的にコピーし、コピーした一
    部を前記ブリーフケース・データベースに送信すること
    を特徴とする請求項2記載のプロセス制御システム。
  8. 【請求項8】 前記第1のデータベースは、マスター・
    データベースであり、前記第2のデータベースは、前記
    第2のデータのセットとして前記第1のデータのセットの
    完全なコピーを格納するミラー・データベースであり、
    前記通信ルーチンは、前記マスター・データベース内の
    前記第1のデータのセットを前記ミラー・データベース
    内の前記第2のデータのセットに整合させ、これによっ
    て、前記マスター・データベース内の前記第1のデータ
    のセットへの変更を前記ミラー・データベースに組み込
    むことを特徴とする請求項1記載のプロセス制御システ
    ム。
  9. 【請求項9】 前記通信ルーチンは、前記マスター・デ
    ータベースを前記ミラー・データベースに定期的に整合
    させることを特徴とする請求項8記載のプロセス制御シ
    ステム。
  10. 【請求項10】 前記通信ルーチンは、前記マスター・
    データベース内の前記第1のデータのセットの何れかに
    なされた変更を自動的に検出し、これらの変更を前記ミ
    ラー・データベースへ伝えることを特徴とする請求項8
    記載のプロセス制御システム。
  11. 【請求項11】 前記通信ルーチンは、ユーザの要求
    で、前記マスター・データベースを前記ミラー・データ
    ベースと整合させることを特徴とする請求項8記載のプ
    ロセス制御システム。
  12. 【請求項12】 前記遅い通信回線は、衛星通信回線で
    あることを特徴とする請求項1記載のプロセス制御シス
    テム。
  13. 【請求項13】 前記遅い通信回線は、セルラー通信回
    線であることを特徴とする請求項1記載のプロセス制御
    システム。
  14. 【請求項14】 前記遅い通信回線は、電話通信回線で
    あることを特徴とする請求項1記載のプロセス制御シス
    テム。
  15. 【請求項15】 前記遅い通信回線は、ポータブル・メ
    モリ通信回線であることを特徴とする請求項1記載のプ
    ロセス制御システム。
  16. 【請求項16】 前記遅い通信回線は、無線通信回線で
    あることを特徴とする請求項1記載のプロセス制御シス
    テム。
  17. 【請求項17】 前記遅い通信回線は、広域通信回線で
    あることを特徴とする請求項1記載のプロセス制御シス
    テム。
  18. 【請求項18】 前記遅い通信回線は、共有ローカル・
    エリア・ネットワークであることを特徴とする請求項1
    記載のプロセス制御システム。
  19. 【請求項19】 第1の物理的な位置および第2の物理的
    な位置の間で分散され、前記第1および第2の物理的な位
    置が実質的に地理的に離隔しているプロセス制御システ
    ムにおいて、 該プロセス制御システムに関連する第1のデータのセッ
    トを格納すべく、前記第1の物理的な位置に配置された
    第1のデータベースと、 前記プロセス制御システムに関連する第2のデータのセ
    ットを格納すべく、前記第2の物理的な位置に配置され
    た第2のデータベースと、 前記第1の物理的な位置および前記第2の物理的な位置を
    通信可能に結合する遅い通信回線と、 コンフィギュレーション動作を行うべく、且つ前記第1
    のデータベースに格納された前記コンフィギュレーショ
    ン・データの第1の項目を取り出すために前記第1のデー
    タベースと通信すべく、且つ前記第2のデータベースに
    格納された前記コンフィギュレーション・データの第2
    の項目を取り出すために前記第2のデータベースと通信
    すべく構成されたコンフィギュレーション・アプリケー
    ションとを備え、 該コンフィギュレーション・アプリケーションは、前記
    遅い通信回線を介して前記第1および第2のデータベース
    のうちの1つと通信することを特徴とするプロセス制御
    システム。
  20. 【請求項20】 前記第1のデータベース内に格納され
    た前記コンフィギュレーション・データの第1の項目に
    なされた変更を自動的に検出し、前記コンフィギュレー
    ション・アプリケーションが前記コンフィギュレーショ
    ン・データの第1の項目を使用するときに、前記コンフ
    ィギュレーション・データになされた、検出された変更
    についての通知を自動的に送信する、前記第1のデータ
    ベースに関連付けられた予約アプリケーションを更に備
    えることを特徴とする請求項19記載のプロセス制御シ
    ステム。
  21. 【請求項21】 前記コンフィギュレーション・アプリ
    ケーションは、前記第1のデータベース内のデータを予
    約すべく、前記第2のデータベースに関連付けられてい
    ることを特徴とする請求項19記載のプロセス制御シス
    テム。
  22. 【請求項22】 前記コンフィギュレーション・データ
    の第1のセットの第1の要素は、第1の言語での第1のテキ
    スト形式のストリングであり、前記コンフィギュレーシ
    ョン・データの第2のセットの第2の要素は、第2の言語
    での第2のテキスト形式のストリングであり、前記コン
    フィギュレーション・アプリケーションは、前記第1の
    要素を前記第1の言語から前記第2の言語へ変換する変換
    ソフトウェアを有していることを特徴とする請求項19
    記載のプロセス制御システム。
  23. 【請求項23】 前記第1の要素は、前記第1のテキスト
    形式のストリングを識別するための数値を含み、前記変
    換ソフトウェアは、前記第1の要素を前記第2の言語へ変
    換すべく、前記数値を使用することを特徴とする請求項
    22記載のプロセス制御システム。
  24. 【請求項24】 前記第1の要素および前記第2の要素
    は、ユニコード形式で格納されることを特徴とする請求
    項22記載のプロセス制御システム。
  25. 【請求項25】 プロセス制御システムで使用されるべ
    く構成されたコンフィギュレーション・データベース・
    システムにおいて、 前記プロセス制御システム内の第1の物理的な位置に配
    置され、前記プロセス制御システムのためのコンフィギ
    ュレーション・データを格納するマスター・データベー
    スと、 前記第1の物理的な位置から実質的に地理的に離隔した
    第2の物理的な位置で使用され得る、前記コンフィギュ
    レーション・データの一部のコピーを、格納すべく構成
    されたブリーフケース・データベースと、 前記マスター・データベースから前記コンフィギュレー
    ション・データの一部をコピーし、コピーした前記コン
    フィギュレーション・データの一部を前記ブリーフケー
    ス・データベースに格納する通信ルーチンとを備えるこ
    とを特徴とするコンフィギュレーション・データベース
    ・システム。
  26. 【請求項26】 前記マスター・データベースは、前記
    コンフィギュレーション・データの何れかをロックする
    ロック手順を実行し、ロックした前記コンフィギュレー
    ション・データが前記マスター・データベース内で変更
    されることを防止べく構成されたデータベース・アクセ
    ス・デバイスを備え、前記通信ルーチンは、前記マスタ
    ー・データベース内の前記コンフィギュレーション・デ
    ータの項目が前記ブリーフケース・データベースにコピ
    ーされるときに、前記項目をロックすべく前記ロック手
    順を開始し、これによって、前記マスター・データベー
    スの前記項目を予約する予約手順を備えることを特徴と
    する請求項25記載のコンフィギュレーション・データ
    ベース・システム。
  27. 【請求項27】 前記通信ルーチンは、予約された項目
    として前記マスター・データベースに格納されるべき、
    前記ブリーフケース・データベース内の予約された項目
    のコピーになされた変更を、前記マスター・データベー
    スへ送信する起用手順を更に備えることを特徴とする請
    求項26記載のコンフィギュレーション・データベース
    ・システム。
  28. 【請求項28】 メモリを有する携帯型のコンピュータ
    を更に備え、前記ブリーフケース・データベースは、前
    記携帯型のコンピュータのメモリ内に配されることを特
    徴とする請求項26記載のコンフィギュレーション・デ
    ータベース・システム。
  29. 【請求項29】 更なるブリーフケース・データベース
    が、異なるプロセス制御システムに関連するコンフィギ
    ュレーション・データを格納すべく、前記携帯型のコン
    ピュータのメモリ内に配されていることを特徴とする請
    求項28記載のコンフィギュレーション・データベース
    ・システム。
  30. 【請求項30】 前記通信ルーチンは、前記第2の物理
    的な位置で所望のコンフィギュレーション動作を行うた
    めに要する前記コンフィギュレーション・データの全部
    を、一度に、前記ブリーフケース・データベースに自動
    的にコピーすることを特徴とする請求項26記載のコン
    フィギュレーション・データベース・システム。
  31. 【請求項31】 前記通信ルーチンは、遅い通信回線を
    介して前記コンフィギュレーション・データの一部のコ
    ピーを送信することを特徴とする請求項25記載のコン
    フィギュレーション・データベース・システム。
  32. 【請求項32】 実質的に地理的に離隔した第1の物理
    的な位置および第2の物理的な位置を有するプロセス制
    御システムでコンフィギュレーション・データを使用す
    る方法おいて、 前記第1の物理的な位置に配置された第1のデータベース
    に、コンフィギュレーション・データの第1のセットを
    格納するステップと、 前記第2の物理的な位置に配置された第2のデータベース
    に、コンフィギュレーション・データの第2のセットを
    格納するステップと、 遅い通信回線を介して、前記第1のデータベース内の前
    記コンフィギュレーション・データの第1のセットの一
    部を前記第2のデータベースへ通信するステップとを有
    することを特徴とする方法。
  33. 【請求項33】 前記コンフィギュレーション・データ
    の第1のセットを格納するステップは、コンフィギュレ
    ーション・データのマスター・セットとして前記コンフ
    ィギュレーション・データの第1のセットを格納するス
    テップを有し、前記コンフィギュレーション・データの
    第2のセットを格納するステップは、前記第2の物理的な
    位置で使用するための前記コンフィギュレーション・デ
    ータベースの第2のセットとして、前記コンフィギュレ
    ーション・データのマスター・セットの幾つかのコピー
    を前記第2のデータベースに格納するステップを有する
    ことを特徴とする請求項32記載の方法。
  34. 【請求項34】 前記第1のデータベース内の前記コン
    フィギュレーション・データの第1のセットの項目のコ
    ピーを前記第2のデータベースへ通信するのに際して、
    前記第1のデータベース内の項目が変更されるのを防止
    すべく、前記項目のうちの1つをロックするステップを
    更に有することを特徴とする請求項33記載の方法。
  35. 【請求項35】 前記第2の物理的な位置で予約された
    項目のコピーに変更をなすステップと、該変更を前記第
    2の物理的な位置から前記第1の物理的な位置へ送信する
    ステップと、前記予約された項目への変更を前記第1の
    データベースに格納するステップとを更に有することを
    特徴とする請求項34記載の方法。
  36. 【請求項36】 前記通信するステップは、同時に、前
    記第2の物理的な位置で特定の機能を行うために要する
    前記コンフィギュレーション・データの第1のセットの
    各項目のコピーを前記第2のデータベースへ自動的に送
    信するステップを有することを特徴とする請求項33記
    載の方法。
  37. 【請求項37】 前記第1のデータベースは、マスター
    ・データベースであり、前記第2のデータベースは、ミ
    ラー・データベースであり、前記通信するステップは、
    前記コンフィギュレーション・データの第2のセットと
    して前記コンフィギュレーション・データの第1のセッ
    トの完全なコピーを格納するステップと、前記マスター
    ・データベース内の前記コンフィギュレーション・デー
    タの第1のデータのセットを前記ミラー・データベース
    内の前記コンフィギュレーション・データの第2のデー
    タのセットに整合させるステップと、これによって、前
    記マスター・データベース内の前記コンフィギュレーシ
    ョン・データの第1のセットへなされた変更を前記ミラ
    ー・データベースに組み込むステップとを有することを
    特徴とする請求項32記載の方法。
  38. 【請求項38】 前記整合させるステップは、前記マス
    ター・データベースを前記ミラー・データベースと自動
    的に定期的に整合させるステップを有することを特徴と
    する請求項37記載の方法。
  39. 【請求項39】 前記整合させるステップは、前記マス
    ター・データベース内の前記コンフィギュレーション・
    データの第1のセットの何れかになされた変更を自動的
    に検出するステップと、検出した変更を前記ミラー・デ
    ータベースへ自動的に伝えるステップとを有することを
    特徴とする請求項37記載の方法。
  40. 【請求項40】 前記通信するステップは、衛星通信回
    線を通じて通信するステップを有することを特徴とする
    請求項32記載の方法。
  41. 【請求項41】 実質的に地理的に離隔した第1の物理
    的な位置および第2の物理的な位置を有するプロセス制
    御システムでコンフィギュレーション動作を行う方法お
    いて、 前記第1の物理的な位置でのマスター・コンフィギュレ
    ーション・データベース内にコンフィギュレーション・
    データのマスター・コピーを格納するステップと、 前記コンフィギュレーション・データのマスター・コピ
    ーの一部を前記マスター・コンフィギュレーション・デ
    ータベースからブリーフケース・データベースへコピー
    するステップと、 前記第2の物理的な位置でコンフィギュレーション動作
    を行うべく前記ブリーフケース・データベースを使用す
    るステップとを有することを特徴とする方法。
  42. 【請求項42】 前記ブリーフケース・データベース
    に、予約された項目のコピーが存在する間、前記予約さ
    れた項目をロックすべく、前記マスター・コンフィギュ
    レーション・データベース内の前記コンフィギュレーシ
    ョン・データのマスター・コピーの一部の項目を予約す
    るステップを更に有することを特徴とする請求項41記
    載の方法。
  43. 【請求項43】 前記コンフィギュレーション動作の
    間、前記ブリーフケース・データベース内の前記予約さ
    れた項目のコピーを変更する一方、該予約された項目を
    前記マスター・コンフィギュレーション・データベース
    内のものと差し替えるべく、前記予約された項目の前記
    変更されたコピーを前記マスター・コンフィギュレーシ
    ョン・データベースへ送信するステップを更に有するこ
    とを特徴とする請求項42記載の方法。
  44. 【請求項44】 前記ブリーフケース・データベースを
    前記マスター・コンフィギュレーション・データベース
    と整合させるステップを更に有することを特徴とする請
    求項41記載の方法。
  45. 【請求項45】 前記ブリーフケース・データベースと
    して携帯型のコンピュータを使用するステップを更に有
    することを特徴とする請求項41記載の方法。
  46. 【請求項46】 前記コピーするステップは、同時に、
    前記ブリーフケース・データベース内の第2の物理的な
    位置でコンフィギュレーション動作を行うために要する
    前記コンフィギュレーション・データのマスター・コピ
    ーの各部分を自動的にコピーするステップを含むことを
    特徴とする請求項41記載の方法。
JP2000317976A 1999-10-18 2000-10-18 プロセス制御システム、コンフィギュレーション・データベース・システム、プロセス制御システムでコンフィギュレーション・データを使用する方法、およびプロセス制御システムでコンフィギュレーション動作を行う方法 Expired - Lifetime JP4739496B2 (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US16010499P 1999-10-18 1999-10-18
US60/160104 1999-10-18
US09/560,361 US6704737B1 (en) 1999-10-18 2000-04-28 Accessing and updating a configuration database from distributed physical locations within a process control system
US09/560361 2000-04-28

Publications (2)

Publication Number Publication Date
JP2001184250A true JP2001184250A (ja) 2001-07-06
JP4739496B2 JP4739496B2 (ja) 2011-08-03

Family

ID=26856605

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000317976A Expired - Lifetime JP4739496B2 (ja) 1999-10-18 2000-10-18 プロセス制御システム、コンフィギュレーション・データベース・システム、プロセス制御システムでコンフィギュレーション・データを使用する方法、およびプロセス制御システムでコンフィギュレーション動作を行う方法

Country Status (5)

Country Link
US (1) US6704737B1 (ja)
JP (1) JP4739496B2 (ja)
DE (1) DE10049503B8 (ja)
GB (1) GB2363871B (ja)
HK (1) HK1062488A1 (ja)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004038948A (ja) * 2002-04-09 2004-02-05 Fisher Rosemount Syst Inc 工程管理システム、工程管理システムにおけるローカル工程管理ネットワーク、ローカル工程管理ネットワークにおける地域間サーバおよび工程管理システムにおけるデータ送信方法
JP2004234658A (ja) * 2003-01-28 2004-08-19 Fisher Rosemount Syst Inc プロセス制御システムおよび安全システムを備えるプロセスプラントにおける統合型コンフィギュレーション
JP2004280813A (ja) * 2003-03-03 2004-10-07 Fisher Rosemount Syst Inc 分散データのアクセス方法及びプロセス制御システムのための装置
JP2009232398A (ja) * 2008-03-25 2009-10-08 Canon Inc 放送受信装置及びその制御方法
JP2011524718A (ja) * 2008-06-17 2011-09-01 クゥアルコム・インコーポレイテッド ワイヤレス通信デバイスの間のグループ通信をサポートするための改善されたデータベースアーキテクチャ
JP2015109106A (ja) * 2004-05-04 2015-06-11 フィッシャー−ローズマウント システムズ,インコーポレイテッド プロセスコントロールデータアクセスシステム、及びプロセスコントロールデータ修正方法
JP2018073401A (ja) * 2016-10-17 2018-05-10 フィッシャー−ローズマウント システムズ,インコーポレイテッド プロセス制御データを遠隔デバイスに配布するためのシステム及び装置
US10793308B2 (en) 2015-02-09 2020-10-06 Ishida Co., Ltd. Packaging system

Families Citing this family (86)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6687698B1 (en) 1999-10-18 2004-02-03 Fisher Rosemount Systems, Inc. Accessing and updating a configuration database from distributed physical locations within a process control system
US6938256B2 (en) 2000-01-18 2005-08-30 Galactic Computing Corporation System for balance distribution of requests across multiple servers using dynamic metrics
US7013316B1 (en) * 2000-07-13 2006-03-14 Microsoft Corporation System and method for synchronizing multiple database files
US6816905B1 (en) * 2000-11-10 2004-11-09 Galactic Computing Corporation Bvi/Bc Method and system for providing dynamic hosted service management across disparate accounts/sites
US8538843B2 (en) 2000-07-17 2013-09-17 Galactic Computing Corporation Bvi/Bc Method and system for operating an E-commerce service provider
US7120935B2 (en) * 2000-08-10 2006-10-10 Shield Security Systems, Llc Interactive key control system and method of managing access to secured locations
US7464094B2 (en) * 2000-12-29 2008-12-09 Gateway Inc. Shared registry with multiple keys for storing preferences and other applications on a local area network
US20020194289A1 (en) * 2001-06-18 2002-12-19 Engel Glenn R. Configuring devices using server responses
WO2003001343A2 (en) * 2001-06-22 2003-01-03 Wonderware Corporation Supervisory process control and manufacturing information system application having an extensible component model
US6950832B2 (en) * 2001-07-31 2005-09-27 International Business Machines Corporation Method for dynamically allocating a device in an LPAR system
US7409403B1 (en) * 2001-10-30 2008-08-05 Red Hat, Inc. Alert management data infrastructure and configuration generator
US7334215B2 (en) * 2001-12-21 2008-02-19 Lockheed Martin Corporation Manager for software controls in an operating environment
US20030120697A1 (en) * 2001-12-21 2003-06-26 Lockheed Martin Corporation System and method for adapting a software control in an operating environment
WO2003065252A1 (en) * 2002-02-01 2003-08-07 John Fairweather System and method for managing memory
US20030172070A1 (en) * 2002-03-06 2003-09-11 Sawadsky Nicholas Justin Synchronous peer-to-peer multipoint database synchronization
US7409398B1 (en) * 2002-05-15 2008-08-05 Sparta Systems, Inc. Techniques for providing audit trails of configuration changes
US7004625B2 (en) * 2002-05-21 2006-02-28 Acrolon Technologies, Inc. System and method for temperature sensing and monitoring
US7319921B2 (en) * 2002-05-22 2008-01-15 Underwood Fred R Water treatment control system
US20040054688A1 (en) * 2002-09-16 2004-03-18 Sun Microsystems, Inc., A Delaware Corporation Method and apparatus for controlling component list in issue tracking system
US7146231B2 (en) * 2002-10-22 2006-12-05 Fisher-Rosemount Systems, Inc.. Smart process modules and objects in process plants
US9983559B2 (en) 2002-10-22 2018-05-29 Fisher-Rosemount Systems, Inc. Updating and utilizing dynamic process simulation in an operating process environment
DE10348563B4 (de) * 2002-10-22 2014-01-09 Fisher-Rosemount Systems, Inc. Integration von Grafikdisplayelementen, Prozeßmodulen und Steuermodulen in Prozeßanlagen
US8145759B2 (en) 2002-11-04 2012-03-27 Oracle America, Inc. Dynamically configurable resource pool
US7865251B2 (en) * 2003-01-28 2011-01-04 Fisher-Rosemount Systems, Inc. Method for intercontroller communications in a safety instrumented system or a process control system
US7275062B2 (en) * 2003-03-10 2007-09-25 Fisher-Rosemount Systems, Inc. Automatic linkage of process event data to a data historian
US7610305B2 (en) 2003-04-24 2009-10-27 Sun Microsystems, Inc. Simultaneous global transaction and local transaction management in an application server
US7743083B2 (en) 2003-04-24 2010-06-22 Oracle America, Inc. Common transaction manager interface for local and global transactions
US20040267823A1 (en) * 2003-06-24 2004-12-30 Microsoft Corporation Reconcilable and undoable file system
US7640545B2 (en) * 2003-07-14 2009-12-29 Sun Microsytems, Inc. Transaction manager freezing
US7739252B2 (en) * 2003-07-14 2010-06-15 Oracle America, Inc. Read/write lock transaction manager freezing
US8521875B2 (en) * 2003-09-04 2013-08-27 Oracle America, Inc. Identity for data sources
US7134008B2 (en) * 2003-09-04 2006-11-07 Sun Microsystems, Inc. Utility for configuring and verifying data sources
EP1513076A1 (en) * 2003-09-05 2005-03-09 Sap Ag Method and computer system for data conversion
US20050188367A1 (en) * 2004-02-25 2005-08-25 Oberholtzer Brian K. Executable application configuration system
US7729789B2 (en) 2004-05-04 2010-06-01 Fisher-Rosemount Systems, Inc. Process plant monitoring based on multivariate statistical analysis and on-line process simulation
CA2577230C (en) * 2004-10-04 2014-12-30 Research In Motion Limited Allocation of threads to user objects in a computer system
EP1805619A4 (en) 2004-10-04 2008-02-13 Research In Motion Ltd SYSTEM AND METHOD FOR THE ADAPTIVE ALLOCATION OF THREADS TO USER OBJECTS IN A COMPUTER SYSTEM
US7516151B2 (en) * 2004-11-01 2009-04-07 Hewlett-Packard Development Company, L.P. Parallel traversal of a dynamic list
US8065318B2 (en) * 2005-04-08 2011-11-22 At&T Intellectual Property I, Lp Systems and methods for managing application configuration
US7908249B1 (en) * 2005-04-13 2011-03-15 Yahoo! Inc. Closed-loop feedback control system for online services
US7293022B2 (en) * 2005-04-14 2007-11-06 International Business Machines Corporation List update employing neutral sort keys
US7676359B2 (en) * 2005-10-06 2010-03-09 International Business Machines Corporation System and method for synchronizing languages and data elements
WO2007067645A2 (en) 2005-12-05 2007-06-14 Fisher-Rosemount Systems, Inc. Multi-objective predictive process optimization with concurrent process simulation
US8712973B2 (en) * 2006-04-11 2014-04-29 International Business Machines Corporation Weighted determination in configuration management systems
US7509325B2 (en) * 2006-04-27 2009-03-24 International Business Machines Corporation Synchronization of configuration values between a data base and its input utility
WO2007136325A1 (en) * 2006-05-18 2007-11-29 Astrazeneca Ab 1- [ (4- [benzoyl (methyl) amino] -3- (phenyl) butyl] azetidine derivatives for the treatment of gastrointestinal disorders 2
US20080016112A1 (en) * 2006-07-07 2008-01-17 Honeywell International Inc. Supporting Multiple Languages in the Operation and Management of a Process Control System
US8149133B2 (en) * 2006-10-20 2012-04-03 Hydril Usa Manufacturing Llc MUX BOP database mirroring
US8365165B2 (en) * 2006-12-30 2013-01-29 Sap Ag Dynamic addition of products and removal of software products on a distribution server
US20080163197A1 (en) * 2006-12-30 2008-07-03 Sap Ag Multi-product installation tool database architecture
US20080183690A1 (en) * 2007-01-26 2008-07-31 Ramachandran Puthukode G Method for providing assistance in making change decisions in a configurable managed environment
US8407716B2 (en) * 2007-05-31 2013-03-26 Fisher-Rosemount Systems, Inc. Apparatus and methods to access information associated with a process control system
US9177115B2 (en) 2007-08-22 2015-11-03 International Business Machines Corporation Data subscription management system
EP2193338B1 (de) * 2007-09-13 2015-12-02 Continental Teves AG & Co. oHG Sicherheitskritische kartenaktualisierung über einen datenkanal eines satellitennavigationssystems
EP2090948B1 (de) * 2008-02-18 2010-11-03 Siemens Aktiengesellschaft Verfahren zum Betrieb eines Automatisierungssystems
DE102008038417B4 (de) * 2008-08-19 2016-08-04 Endress + Hauser Process Solutions Ag Verfahren zum Übertragen von gerätespezifischen Daten zwischen einem Feldgerät der Automatisierungstechnik und einer übergeordneten Steuereinheit
US8302088B2 (en) * 2008-10-15 2012-10-30 International Business Machines Corporation Analysis of effects of a software maintenance patch on configuration items of a CMDB
GB2477655B (en) * 2008-10-21 2012-10-10 Fujitsu Ltd Change impact research support program, change impact research support device and change impact research support method
EP2192460A1 (de) * 2008-11-26 2010-06-02 Siemens Aktiengesellschaft Verfahren zum Betrieb eines Automatisierungsgeräts, nach dem Verfahren arbeitendes Automatisierungsgerät und Computer-programm zur Implementierung des Verfahrens
DE102008063944A1 (de) * 2008-12-19 2010-06-24 Abb Ag System und Verfahren zur Visualisierung eines Adressraumes zur Organisierung automatisierungsbezogener Daten
US8881039B2 (en) 2009-03-13 2014-11-04 Fisher-Rosemount Systems, Inc. Scaling composite shapes for a graphical human-machine interface
US8335171B1 (en) 2009-09-29 2012-12-18 Juniper Networks, Inc. NETCONF-enabled provisioning in rollback agnostic environment
US8527460B2 (en) * 2010-02-19 2013-09-03 Jason Laurence Noble Method for carrying out database version control
US8825183B2 (en) * 2010-03-22 2014-09-02 Fisher-Rosemount Systems, Inc. Methods for a data driven interface based on relationships between process control tags
US8650165B2 (en) 2010-11-03 2014-02-11 Netapp, Inc. System and method for managing data policies on application objects
US8769494B2 (en) * 2010-12-14 2014-07-01 Microsoft Corporation Globally sound and consistent configuration management for distributed datacenter components
US9292562B2 (en) * 2010-12-17 2016-03-22 Avago Technologies General Ip (Singapore) Pte. Ltd. Scatter-gather list usage for a configuration database retrieve and restore function and database blocking and configuration changes during a database restore process
US9396242B2 (en) * 2011-04-11 2016-07-19 Salesforce.Com, Inc. Multi-master data replication in a distributed multi-tenant system
DE102011007384A1 (de) * 2011-04-14 2012-10-18 Endress + Hauser Process Solutions Ag Verfahren zur Offline-Konfiguration eines Feldgeräts
US20120297363A1 (en) * 2011-05-19 2012-11-22 Microsoft Corporation Inferred and shared source control integration across mulitiple program development tools
US9411844B2 (en) * 2012-03-29 2016-08-09 Tracelink, Inc. Methods and systems for managing distributed concurrent data updates of business objects
US10509801B2 (en) * 2013-01-28 2019-12-17 Arris Enterprises Llc Selective data synchronization and transfer to remote distributed database servers
US9489210B2 (en) * 2013-03-07 2016-11-08 International Business Machines Corporation Implementing configuration preserving relocation of SRIOV adapter
US10481981B2 (en) * 2013-06-19 2019-11-19 Virtual Forge GmbH System and method for automatic correction of a database configuration in case of quality defects
JP6248901B2 (ja) 2014-11-13 2017-12-20 横河電機株式会社 入出力装置
US11605037B2 (en) 2016-07-20 2023-03-14 Fisher-Rosemount Systems, Inc. Fleet management system for portable maintenance tools
US10270853B2 (en) * 2016-07-22 2019-04-23 Fisher-Rosemount Systems, Inc. Process control communication between a portable field maintenance tool and an asset management system
US10764083B2 (en) 2016-07-25 2020-09-01 Fisher-Rosemount Systems, Inc. Portable field maintenance tool with resistor network for intrinsically safe operation
US10878140B2 (en) 2016-07-27 2020-12-29 Emerson Process Management Power & Water Solutions, Inc. Plant builder system with integrated simulation and control system configuration
JP6911865B2 (ja) * 2016-10-20 2021-07-28 日本電気株式会社 協調計画システム、協調計画方法および協調計画プログラム
US10967303B2 (en) 2018-03-08 2021-04-06 Mark W. Romers Filter backwash control system for a water or wastewater treatment system to conserve water during the filter backwash process
US10901833B2 (en) * 2017-12-28 2021-01-26 Aveva Software, Llc Automated recovery of execution roles in a distributed online system
US11175802B2 (en) * 2018-09-21 2021-11-16 Sap Se Configuration object deletion manager
US10880159B1 (en) * 2019-03-18 2020-12-29 Amazon Technologies, Inc. Centralized access of configuration data for computing resources
US11418969B2 (en) 2021-01-15 2022-08-16 Fisher-Rosemount Systems, Inc. Suggestive device connectivity planning
CN115167316A (zh) * 2022-08-04 2022-10-11 中国核动力研究设计院 一种核电厂dcs平台的协同处理方法、系统及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09204342A (ja) * 1996-01-26 1997-08-05 Nec Corp 監視制御システムのデータベース整合方式
JPH10320257A (ja) * 1997-05-15 1998-12-04 Casio Comput Co Ltd データ処理システム及びデータ処理プログラムを記録した記録媒体

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4007450A (en) 1975-06-30 1977-02-08 International Business Machines Corporation Data sharing computer network
US4888726A (en) 1987-04-22 1989-12-19 Allen-Bradley Company. Inc. Distributed processing in a cluster of industrial controls linked by a communications network
US6345288B1 (en) * 1989-08-31 2002-02-05 Onename Corporation Computer-based communication system and method using metadata defining a control-structure
JP2810231B2 (ja) * 1990-01-30 1998-10-15 ジヨンソン・サービス・カンパニー ノードを有する分散形ネットワークシステム中のデータの位置付け方法
US5412806A (en) 1992-08-20 1995-05-02 Hewlett-Packard Company Calibration of logical cost formulae for queries in a heterogeneous DBMS using synthetic database
US5596744A (en) 1993-05-20 1997-01-21 Hughes Aircraft Company Apparatus and method for providing users with transparent integrated access to heterogeneous database management systems
US5635940A (en) 1994-02-02 1997-06-03 Hickman; Paul L. Communication configurator and method for implementing same
US5560005A (en) * 1994-02-25 1996-09-24 Actamed Corp. Methods and systems for object-based relational distributed databases
EP1265122A3 (en) * 1994-03-15 2006-01-18 Kabushiki Kaisha Toshiba Shared file editing system with file content secrecy, version management and asynchronous editing
GB2301717B (en) 1995-06-02 1999-08-11 Dsc Communications Network controller for monitoring the status of a network
EP0875023B1 (de) 1996-01-17 1999-09-08 Siemens Aktiengesellschaft Automatisierungsgerät
US5862325A (en) * 1996-02-29 1999-01-19 Intermind Corporation Computer-based communication system and method using metadata defining a control structure
US5838563A (en) 1996-04-12 1998-11-17 Fisher-Rosemont Systems, Inc. System for configuring a process control environment
US5940294A (en) 1996-04-12 1999-08-17 Fisher-Rosemont Systems, Inc. System for assisting configuring a process control environment
US5828851A (en) 1996-04-12 1998-10-27 Fisher-Rosemount Systems, Inc. Process control system using standard protocol control of standard devices and nonstandard devices
US6098116A (en) 1996-04-12 2000-08-01 Fisher-Rosemont Systems, Inc. Process control system including a method and apparatus for automatically sensing the connection of devices to a network
US5980078A (en) * 1997-02-14 1999-11-09 Fisher-Rosemount Systems, Inc. Process control system including automatic sensing and automatic configuration of devices
US5937414A (en) * 1997-02-28 1999-08-10 Oracle Corporation Method and apparatus for providing database system replication in a mixed propagation environment
US6026413A (en) * 1997-08-01 2000-02-15 International Business Machines Corporation Determining how changes to underlying data affect cached objects
US6256712B1 (en) * 1997-08-01 2001-07-03 International Business Machines Corporation Scaleable method for maintaining and making consistent updates to caches
US6343290B1 (en) 1999-12-22 2002-01-29 Celeritas Technologies, L.L.C. Geographic network management system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09204342A (ja) * 1996-01-26 1997-08-05 Nec Corp 監視制御システムのデータベース整合方式
JPH10320257A (ja) * 1997-05-15 1998-12-04 Casio Comput Co Ltd データ処理システム及びデータ処理プログラムを記録した記録媒体

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004038948A (ja) * 2002-04-09 2004-02-05 Fisher Rosemount Syst Inc 工程管理システム、工程管理システムにおけるローカル工程管理ネットワーク、ローカル工程管理ネットワークにおける地域間サーバおよび工程管理システムにおけるデータ送信方法
JP2004234658A (ja) * 2003-01-28 2004-08-19 Fisher Rosemount Syst Inc プロセス制御システムおよび安全システムを備えるプロセスプラントにおける統合型コンフィギュレーション
JP2004280813A (ja) * 2003-03-03 2004-10-07 Fisher Rosemount Syst Inc 分散データのアクセス方法及びプロセス制御システムのための装置
US7809679B2 (en) 2003-03-03 2010-10-05 Fisher-Rosemount Systems, Inc. Distributed data access methods and apparatus for process control systems
JP2015109106A (ja) * 2004-05-04 2015-06-11 フィッシャー−ローズマウント システムズ,インコーポレイテッド プロセスコントロールデータアクセスシステム、及びプロセスコントロールデータ修正方法
JP2009232398A (ja) * 2008-03-25 2009-10-08 Canon Inc 放送受信装置及びその制御方法
JP4590464B2 (ja) * 2008-03-25 2010-12-01 キヤノン株式会社 放送受信装置及びその制御方法
JP2011524718A (ja) * 2008-06-17 2011-09-01 クゥアルコム・インコーポレイテッド ワイヤレス通信デバイスの間のグループ通信をサポートするための改善されたデータベースアーキテクチャ
US8655833B2 (en) 2008-06-17 2014-02-18 Qualcomm Incorporated Database architecture for supporting group communications among wireless communication devices
US10793308B2 (en) 2015-02-09 2020-10-06 Ishida Co., Ltd. Packaging system
JP2018073401A (ja) * 2016-10-17 2018-05-10 フィッシャー−ローズマウント システムズ,インコーポレイテッド プロセス制御データを遠隔デバイスに配布するためのシステム及び装置
JP7034663B2 (ja) 2016-10-17 2022-03-14 フィッシャー-ローズマウント システムズ,インコーポレイテッド プロセス制御データを遠隔デバイスに配布するためのシステム及び装置
US11353854B2 (en) 2016-10-17 2022-06-07 Fisher-Rosemount Systems, Inc. Methods and apparatus for configuring remote access of process control data
US11543805B2 (en) 2016-10-17 2023-01-03 Fisher-Rosemount Systems, Inc. Systems and apparatus for distribution of process control data to remote devices

Also Published As

Publication number Publication date
GB0025370D0 (en) 2000-11-29
US6704737B1 (en) 2004-03-09
JP4739496B2 (ja) 2011-08-03
DE10049503A1 (de) 2001-05-10
DE10049503B8 (de) 2017-11-23
DE10049503B4 (de) 2017-07-27
GB2363871A (en) 2002-01-09
HK1062488A1 (en) 2004-11-05
GB2363871B (en) 2004-03-24

Similar Documents

Publication Publication Date Title
JP4731669B2 (ja) コンフィギュレーション・データベース・システム、分散型のコンフィギュレーション・データベース・システム、コンフィギュレーション・データを格納および使用する方法、データベース・サーバ、データベース・コンポーネントへのアクセスを提供する方法、データベースに格納されたコンポーネントへの並列アクセスを提供するためにデータベース・サーバを使用する方法、およびプロセス制御システム
JP4739496B2 (ja) プロセス制御システム、コンフィギュレーション・データベース・システム、プロセス制御システムでコンフィギュレーション・データを使用する方法、およびプロセス制御システムでコンフィギュレーション動作を行う方法
CA2353845C (en) Integrated data bank combining system
AU2001292691B2 (en) A method and system for remote configuration of process data access servers
US8214409B2 (en) Adapter architecture for mobile data system
US7596611B1 (en) Method and apparatus for maintaining information for use in the configuration of a client
US20070156774A1 (en) Multi-Tier Document Management System
JP2010518490A (ja) 不定期接続されるアプリケーションのための同期フレームワーク
US6711592B2 (en) Information processing system
JP2002041465A (ja) 通信システム、データベースサーバ、制御装置、処理端末、リレーサーバ、および半導体装置の製造方法。
GB2394816A (en) Database server to provide concurrent access for multiple clients to the database uses a shared cache for holding copy of the data being accessed
GB2394334A (en) Configuration database for a process control system distributed between separate locations connected by a slow network
ESPRIT Consortium CCE-CNMA Application Services
Urbano et al. Oracle Database 2 Day+ Data Replication and Integration Guide, 11g Release 2 (11.2) E17516-08

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070904

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100810

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20101108

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20101111

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110209

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: 20110412

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110428

R150 Certificate of patent or registration of utility model

Ref document number: 4739496

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20140513

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250