(57)【特許請求の範囲】
【請求項１】
ホストコンピュータと、このホストコンピュータと通信ラインを介して接続されたコントローラと、このコントローラによって制御されるフィールド機器とを備え、前記ホストコンピュータから前記コントローラへ前記フィールド機器の運転を制御するソフトウェアのダウンロードを行うフィールドバスシステムにおいて、
前記コントローラは、
前記ソフトウェアの実装用の記憶エリアとして設けられた第１および第２のメモリエリアと、
前記ホストコンピュータからのアクティブ化の指令を受けて前記第１および第２のメモリエリアの一方をアクティブなメモリエリア、他方を非アクティブなメモリエリアとして切り替えるアクティブ／非アクティブ切替手段と、
前記アクティブなメモリエリアに記憶されているソフトウェアを用いて、前記フィールド機器から入力値を読み込み、この読み込んだ入力値より前記フィールド機器への制御出力の実値を演算し、この演算した制御出力の実値を前記フィールド機器に送って前記フィールド機器の運転を制御するフィールド機器運転制御手段と、
前記フィールド機器運転制御手段が前記フィールド機器から入力値を読み込む毎に、その読み込まれた入力値が書き込まれるフィールド機器読込値保持エリアと、
前記フィールド機器運転制御手段が前記フィールド機器への制御出力の実値を演算する毎に、その演算された制御出力の実値が書き込まれるフィールド機器出力値保持エリアと、
前記ホストコンピュータから送られてくる更新ソフトウェアを前記非アクティブなメモリエリアにダウンロードするダウンロード手段と、
前記非アクティブなメモリエリアへの更新ソフトウェアのダウンロードの完了後、そのダウンロードされた更新ソフトウェアを用いて、前記フィールド機器読込値保持エリアに書き込まれている入力値より前記フィールド機器への制御出力のシミュレーション値を演算し、この演算したシミュレーション値をシミュレーション用データメモリエリアに書き込むシミュレーション手段とを備え、
前記ホストコンピュータは、
前記コントローラへ前記更新ソフトウェアを送る更新ソフトウェア送信手段と、
前記コントローラへ更新ソフトウェアを用いてのシミュレーションの実行状態のモニタ要求を送り、前記シミュレーション用データメモリエリアに書き込まれている前記フィールド機器への制御出力のシミュレーション値と、前記フィールド機器出力値保持エリアに書き込まれている前記フィールド機器への制御出力の実値とを取得し、前記フィールド機器への制御出力のシミュレーション値のトレンドグラフと前記フィールド機器への制御出力の実値のトレンドグラフとを対比して画面に表示するモニタ手段と、
前記コントローラへ前記アクティブ化の指令を送るアクティブ化指令送信手段と
を備えることを特徴とするフィールドバスシステム。
【請求項２】
請求項１に記載されたフィールドバスシステムにおいて、
前記ホストコンピュータは、
前記更新ソフトウェアを用いてのシミュレーションの実行状態に対する良否の判定結果を問い合わせるダイアログを表示するダイアログ表示手段を備え、
前記アクティブ化指令送信手段は、
前記ダイアログより良否の判定結果が「良」として入力された場合に、前記コントローラへ前記アクティブ化の指令を送る
ことを特徴とするフィールドバスシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、温度・圧力・流量などの発信器、また弁操作器などのフィールド機器をコントローラを用いて制御するフィールドバスシステムに関するものである。
【背景技術】
【０００２】
従来より、この種のフィールドバスシステムは、ホストコンピュータと、このホストコンピュータと通信ラインを介して接続されたコントローラと、このコントローラによって制御されるフィールド機器とを備え、ホストコンピュータからコントローラへフィールド機器の運転を制御するソフトウェアのダウンロードを行うようにしている。
【０００３】
図１１に従来のフィールドバスシステムの要部の構成を示す。同図において、１はホストコンピュータ、２はコントローラ、３−１〜３−ｎはフィールド機器であり、ホストコンピュータ１とコントローラ２とは汎用的な通信ライン４を介して接続され、コントローラ２とフィールド機器３（３−１〜３−ｎ）とはリンクモジュール５を介して接続されている。なお、このフィールドバスシステムでは、コントローラ２とフィールド機器３との間をリンクモジュール５を介して接続する通信ライン６をフィールドバスと呼んでいる。
【０００４】
〔更新前のソフトウェアを用いてのフィールド機器の運転の制御〕
このフィールドバスシステムにおいて、コントローラ２では、フィールド機器３の運転を制御するソフトウェアが用いられる。コントローラ２は、このソフトウェアを用いて、フィールド機器３から入力値（計測値）を読み込み、この読み込んだ入力値よりフィールド機器３への制御出力の実値を演算し、この演算した制御出力の実値（出力値）をフィールド機器３へ送る。これにより、フィールド機器３の運転がコントローラ２によって制御される。
【０００５】
〔ソフトウェアの更新〕
コントローラ２で用いられるソフトウェアを更新する場合、ホストコンピュータ１から更新ソフトウェアを通信ライン４を介してコントローラ２へ送り、コントローラ２内にダウンロードさせる。この場合、更新ソフトウェアをアクティブにする間、コントローラ２をアイドル状態とし、フィールド機器３の制御を停止する。
【０００６】
このようなソフトウェアの更新方法では、コントローラ２を停止できるプロセス／状況では大きな問題はないが、「ソフトウェアを更新したいが、プロセス制御は停止したくない」というような状況には対応できない。
【０００７】
これに対し、例えば、特許文献１や特許文献２に示されているような方法を採用し、コントローラ２への更新ソフトウェアのダウンロードを行うようにすることによって、プロセス制御を停止することなくソフトウェアの更新を行うようにすることが考えられる。
【０００８】
この方法では、例えば、図１２に示すように、マイクロプロセッサ２−１と通信インタフェース２−２とを備えたコントローラ２に第１のメモリエリアＭ１と第２のメモリエリアＭ２とを設け、第１のメモリエリアＭ１に更新前のソフトウェアＳ１をダウンロードさせておく。また、コントローラ２にアクティブ／非アクティブ切替部２−３を設け、アクティブ／非アクティブの切替状態として、第１のメモリエリアＭ１をアクティブなメモリエリアとし、第２のメモリエリアＭ２を非アクティブなメモリエリアとしておく。
【０００９】
これにより、マイクロプロセッサ２−１は、アクティブなメモリエリアＭ１に記憶されている更新前のソフトウェアＳ１を用いて、フィールド機器３の運転を制御する。
【００１０】
ソフトウェアを更新する場合、第２のメモリエリア（非アクティブなメモリエリア）Ｍ２に更新ソフトウェアＳ２をダウンロードし、ダウンロードが完了した時点で、アクティブ／非アクティブ切替部２−３によって、第２のメモリエリアＭ２をアクティブなメモリエリアに切り替え、第１のメモリエリアＭ１を非アクティブなメモリエリアに切り替える。
【００１１】
これにより、マイクロプロセッサ２−１は、第２のメモリエリアＭ２への更新ソフトウェアのダウンロード完了後、直ちにダウンロードされた更新ソフトウェアＳ２を用いて、フィールド機器３の運転の制御を開始する。
【先行技術文献】
【特許文献】
【００１２】
【特許文献１】ＷＯ ２００１／０１４９６８
【特許文献２】特開２００５−１２２５９１号公報
【発明の概要】
【発明が解決しようとする課題】
【００１３】
しかしながら、上述した２つのメモリエリアを用いる方法では、ダウンロード→アクティブ／非アクティブの切り替えの間で、ダウンロードされた更新ソフトウェアの正当性を検証をする術がなく、正当性が検証されないまま更新ソフトウェアが用いられてしまい、制御上の問題が生じる虞があった。
【００１４】
本発明は、このような課題を解決するためになされたもので、その目的とするところは、更新ソフトウェアをダウンロードさせた後、この更新ソフトウェアの正当性をアクティブ／非アクティブの切替前に検証することが可能なフィールドバスシステムを提供することにある。
【課題を解決するための手段】
【００１５】
このような目的を達成するために本発明は、ホストコンピュータと、このホストコンピュータと通信ラインを介して接続されたコントローラと、このコントローラによって制御されるフィールド機器とを備え、ホストコンピュータからコントローラへフィールド機器の運転を制御するソフトウェアのダウンロードを行うフィールドバスシステムにおいて、コントローラに、ソフトウェアの実装用の記憶エリアとして設けられた第１および第２のメモリエリアと、ホストコンピュータからのアクティブ化の指令を受けて第１および第２のメモリエリアの一方をアクティブなメモリエリア、他方を非アクティブなメモリエリアとして切り替えるアクティブ／非アクティブ切替手段と、アクティブなメモリエリアに記憶されているソフトウェアを用いて、フィールド機器から入力値を読み込み、この読み込んだ入力値よりフィールド機器への制御出力の実値を演算し、この演算した制御出力の実値をフィールド機器に送ってフィールド機器の運転を制御するフィールド機器運転制御手段と、フィールド機器運転制御手段がフィールド機器から入力値を読み込む毎に、その読み込まれた入力値が書き込まれるフィールド機器読込値保持エリアと、フィールド機器運転制御手段がフィールド機器への制御出力の実値を演算する毎に、その演算された制御出力の実値が書き込まれるフィールド機器出力値保持エリアと、ホストコンピュータから送られてくる更新ソフトウェアを非アクティブなメモリエリアにダウンロードするダウンロード手段と、非アクティブなメモリエリアへの更新ソフトウェアのダウンロードの完了後、そのダウンロードされた更新ソフトウェアを用いて、フィールド機器読込値保持エリアに書き込まれている入力値よりフィールド機器への制御出力のシミュレーション値を演算し、この演算したシミュレーション値をシミュレーション用データメモリエリアに書き込むシミュレーション手段とを設け、ホストコンピュータに、コントローラへ更新ソフトウェアを送る更新ソフトウェア送信手段と、コントローラへ更新ソフトウェアを用いてのシミュレーションの実行状態のモニタ要求を送り、シミュレーション用データメモリエリアに書き込まれているフィールド機器への制御出力のシミュレーション値と、フィールド機器出力値保持エリアに書き込まれているフィールド機器への制御出力の実値とを取得し、フィールド機器への制御出力のシミュレーション値のトレンドグラフとフィールド機器への制御出力の実値のトレンドグラフとを対比して画面に表示するモニタ手段と、コントローラへアクティブ化の指令を送るアクティブ化指令送信手段とを設けたものである。
【００１６】
この発明において、コントローラは、アクティブなメモリエリアに記憶されているソフトウェアを用いて、フィールド機器から入力値を読み込み、この読み込んだ入力値よりフィールド機器への制御出力の実値を演算し、この演算した制御出力の実値をフィールド機器に送ってフィールド機器の運転を制御する。このフィールド機器の運転の制御中、フィールド機器から入力値が読み込まれる毎に、その読み込まれた入力値はフィールド機器読込値保持エリアに書き込まれ、フィールド機器への制御出力の実値が演算される毎に、その演算された制御出力の実値はフィールド機器出力値保持エリアに書き込まれる。また、コントローラは、非アクティブなメモリエリアに更新ソフトウェアがダウンロードされると、そのダウンロードされた更新ソフトウェアを用いて、フィールド機器読込値保持エリアに書き込まれている入力値よりフィールド機器への制御出力のシミュレーション値を演算し、この演算したシミュレーション値をシミュレーション用データメモリエリアに書き込む。
本発明において、コントローラにおける更新ソフトウェアを用いてのシミュレーションの実行状態は、ホストコンピュータでモニタすることができる。この場合、ホストコンピュータは、コントローラへ更新ソフトウェアを用いてのシミュレーションの実行状態のモニタ要求を送り、シミュレーション用データメモリエリアに書き込まれているフィールド機器への制御出力のシミュレーション値と、フィールド機器出力値保持エリアに書き込まれているフィールド機器への制御出力の実値とを取得し、フィールド機器への制御出力のシミュレーション値のトレンドグラフとフィールド機器への制御出力の実値のトレンドグラフとを対比して画面に表示する。
【００１７】
ここで、例えば、モニタされる更新ソフトウェアを用いてのシミュレーションの実行状態に対する良否の判定結果が「良」であった場合、ホストコンピュータからコントローラへアクティブ化の指令を送るようにする。すると、コントローラにおいて、それまで非アクティブとされていたメモリエリアがアクティブなメモリエリアに切り替えられ、それまでアクティブとされていたメモリエリアが非アクティブなメモリエリアに切り替えられる。
【００１８】
これにより、非アクティブなメモリエリアへの更新ソフトウェアのダウンロードの完了後、そのダウンロードされた更新ソフトウェアの正当性をホストコンピュータ側で検証した後、その更新ソフトウェアを用いてのフィールド機器の運転の制御を開始させるようにすることが可能となる。この場合、アクティブ／非アクティブの切り替えを行うまでの間、アクティブなメモリエリアに記憶されている更新前のソフトウエアを用いて、フィールド機器の運転が制御され続ける。
【発明の効果】
【００１９】
本発明によれば、コントローラに、フィールド機器から入力値が読み込まれる毎に、その読み込まれた入力値が書き込まれるフィールド機器読込値保持エリアと、フィールド機器への制御出力の実値が演算される毎に、その演算された制御出力の実値が書き込まれるフィールド機器出力値保持エリアと、非アクティブなメモリエリアにダウンロードされた更新ソフトウェアを用いて、フィールド機器読込値保持エリアに書き込まれている入力値よりフィールド機器への制御出力のシミュレーション値を演算し、この演算したシミュレーション値をシミュレーション用データメモリエリアに書き込むシミュレーション手段とを設け、ホストコンピュータに、コントローラへ更新ソフトウェアを用いてのシミュレーションの実行状態のモニタ要求を送り、シミュレーション用データメモリエリアに書き込まれているフィールド機器への制御出力のシミュレーション値と、フィールド機器出力値保持エリアに書き込まれているフィールド機器への制御出力の実値とを取得し、フィールド機器への制御出力のシミュレーション値のトレンドグラフとフィールド機器への制御出力の実値のトレンドグラフとを対比して画面に表示するモニタ手段を設けるようにしたので、アクティブ／非アクティブの切替前に、画面に対比して表示されるフィールド機器への制御出力のシミュレーション値のトレンドグラフとフィールド機器への制御出力の実値のトレンドグラフとを比較することにより、コントローラにダウンロードさせた更新ソフトウェアの正当性をホストコンピュータ側で検証することが可能となり、正当性が検証されないまま更新ソフトウェアがコントローラで用いられてしまうことを防ぐことが可能となる。
【図面の簡単な説明】
【００２０】
【図１】本発明に係るフィールドバスシステムの一実施の形態の要部を示す図である。
【図２】このフィールドバスシステムにおいてコントローラへの更新ソフトウェアのダウンロードが行われる様子を説明する図である。
【図３】このフィールドバスシステムにおけるコントローラでの更新ソフトウェアの受信時の処理を示すフローチャートである。
【図４】このフィールドバスシステムにおけるコントローラでの更新ソフトウェアを用いてのシミュレーション時の処理を示すフローチャートである。
【図５】このフィールドバスシステムにおけるホストコンピュータでのシミュレーションの実行状態のモニタが行われる様子を説明する図である。
【図６】ホストコンピュータからシミュレーションの実行状態のモニタ要求があった場合のコントローラでの処理を示すフローチャートである。
【図７】ホストコンピュータの運転画面に表示されるトレンドグラフを例示する図である。
【図８】ホストコンピュータの運転画面に表示されるダイアログを例示する図である。
【図９】ホストコンピュータからのアクティブ化の指令によってコントローラにおいてアクティブ／非アクティブの切り替えが行われる様子を説明する図である。
【図１０】ホストコンピュータからアクティブ化の指令があった場合のコントローラでの処理を示すフローチャートである。
【図１１】従来のフィールドバスシステムの要部の構成を示す図である。
【図１２】特許文献１，２に示されているような方法を採用して更新ソフトウェアのダウンロードを行うようにした場合のコントローラの要部の構成を示す図である。
【発明を実施するための形態】
【００２１】
以下、本発明の実施の形態を図面に基づいて詳細に説明する。図１はこの発明に係るフィールドバスシステムの一実施の形態の要部を示す図である。同図において、図１１，図１２と同一符号は図１１，図１２を参照して説明した構成要素と同一或いは同等構成要素を示し、その説明は省略する。
【００２２】
この実施の形態において、コントローラ２は、マイクロプロセッサ２−１と、通信インタフェース（上位側通信インタフェース）２−２と、アクティブ／非アクティブ切替部２−３と、通信インタフェース（下位側通信インタフェース）２−４と、フィールド機器読込値保持エリア２−５と、シミュレーション用マイクロプロセッサ２−６と、シミュレーション用データメモリエリア２−７と、フィールド機器出力値保持エリア２−８と、第１のメモリエリアＭ１と、第２のメモリエリアＭ２とを備えている。
【００２３】
なお、この実施の形態では、マイクロプロセッサとしてマイクロプロセッサ２−１とシミュレーション用マイクロプロセッサ２−６との２つを設けているが、マイクロプロセッサ２−１が強力である場合には、シミュレーション用マイクロプロセッサ２−６の機能をマイクロプロセッサ２−１に持たせるようにしてもよい。また、アクティブ／非アクティブ切替部２−３についても、マイクロプロセッサ２−１にその機能を持たせるようにしてもよい。
【００２４】
ホストコンピュータ１は、更新ソフトウェア送信部１−１と、モニタ部１−２と、アクティブ化指令送信部１−３とを備えている。なお、ホストコンピュータ１は、プロセッサや記憶装置からなるハードウェアと、これらのハードウェアと協働して各種機能を実現させるプログラムとによって実現され、図１には、ホストコンピュータ１が有する特徴的な機能として、更新ソフトウェア送信部１−１、モニタ部１−２、アクティブ化指令送信部１−３のみを示している。
【００２５】
〔更新前のソフトウェアを用いてのフィールド機器の運転の制御〕
このフィールドバスシステムにおいて、コントローラ２には、第１のメモリエリアＭ１に更新前のソフトウェアＳ１がダウンロードされている。また、アクティブ／非アクティブ切替部２−３は、現在のアクティブ／非アクティブの切替状態として、第１のメモリエリアＭ１をアクティブなメモリエリアとし、第２のメモリエリアＭ２を非アクティブなメモリエリアとしている。
【００２６】
このアクティブ／非アクティブの切替状態において、マイクロプロセッサ２−１は、第１のメモリエリア（アクティブなメモリエリア）Ｍ１に記憶されている更新前のソフトウェアＳ１を用いて、フィールド機器３からリンクモジュール５を経由し下位側通信インタフェース２−４を介して入力値（計測値）を読み込み、フィールド機器読込値保持エリア２−５に保持させる（書き込む）と共に、この読み込んだ入力値よりフィールド機器３への制御出力の実値を演算する。そして、この演算した制御出力の実値を出力値としてフィールド機器出力値保持エリア２−８に保持させる（書き込む）と共に、下位側通信インタフェース２−４を介しリンクモジュール５を経由してフィールド機器３へ送る。
【００２７】
このようにして、マイクロプロセッサ２−１は、アクティブなメモリエリアＭ１に記憶されている更新前のソフトウェアＳ１を用いて、フィールド機器３の運転を制御する。
【００２８】
なお、このフィールド機器３の運転の制御中、フィールド機器読込値保持エリア２−５に保持されているフィールド機器３からの入力値やフィールド機器出力値保持エリア２−８に保持されているフィールド機器３への制御出力の実値（出力値）は、ホストコンピュータ１におけるモニタ部１−２の運転画面やエンジニアリングツールで参照することが可能である。
【００２９】
〔ソフトウェアの更新〕
コントローラ２で用いられるソフトウェアを更新する場合、ホストコンピュータ１から更新ソフトウェアを通信ライン４を介してコントローラ２へ送り、コントローラ２内にダウンロードさせる。この場合、ホストコンピュータ１は、更新ソフトウェア送信部１−１より、更新ソフトウェアＳ２をコントローラ２へ送る（図２参照）。
【００３０】
コントローラ２において、ホストコンピュータ１からの更新ソフトウェアＳ２は、上位側通信インタフェース２−２を介してマイクロプロセッサ２−１へ送られる。マイクロプロセッサ２−１は、ホストコンピュータ１からの更新ソフトウェアＳ２を受信すると（図３：ステップＳ１０１のＹＥＳ）、受信した更新ソフトウェアＳ２を第２のメモリエリア（非アクティブなメモリエリア）Ｍ２にダウンロードする（ステップＳ１０２）。このマイクロプロセッサ２−１が有する更新ソフトウェアＳ２のダウンロード機能が本発明でいうダウンロード手段に相当する。
【００３１】
〔更新ソフトウェアを用いてのシミュレーション〕
マイクロプロセッサ２−１は、非アクティブなメモリエリアＭ２への更新ソフトウェアＳ２のダウンロードを完了すると（ステップＳ１０３のＹＥＳ）、シミュレーション用マイクロプロセッサ２−６にダウンロードされた更新ソフトウェアＳ２を用いてのフィールド機器３の運転の制御のシミュレーションを指示する（ステップＳ１０４）。
【００３２】
シミュレーション用マイクロプロセッサ２−６は、マイクロプロセッサ２−１からのシミュレーションの指示を受けると（図４：ステップＳ２０１のＹＥＳ）、非アクティブなメモリエリアＭ２内の更新ソフトウェアＳ２を用いて、フィールド機器読込値保持エリア２−５に保持されている（書き込まれている）フィールド機器３からの入力値（実際の制御実行の過程で読み込まれた入力値）よりフィールド機器３への制御出力のシミュレーション値を演算し（ステップＳ２０２）、この演算したシミュレーション値をシミュレーション用データメモリエリア２−７に書き込む（ステップＳ２０３）。この場合、演算した制御出力のシミュレーション値は、下位側通信インタフェース２−４を介してフィールド機器３へ送るのではなく、シミュレーション用データメモリエリア２−７に書き込むのみとする。
【００３３】
なお、マイクロプロセッサ２−１は、更新ソフトウェアＳ２を非アクティブなメモリエリアＭ２へダウンロードしている間、またシミュレーション用マイクロプロセッサ２−６が更新ソフトウエアＳ２を用いてシミュレーションを行っている間、アクティブなメモリエリアＭ１に記憶されている更新前のソフトウェアＳ１を用いてフィールド機器３の運転の制御を続ける。すなわち、第１のメモリエリアＭ１がアクティブなメモリエリアとされている間は、このアクティブなメモリエリアＭ１に記憶されているソフトウェアＳ１を用いてフィールド機器３の運転の制御を続ける。
【００３４】
〔シミュレーションの実行状態のモニタ〕
ホストコンピュータ１において、オペレータは、コントローラ２における更新ソフトウェアＳ２を用いてのシミュレーションの実行状態をモニタすることができる。
【００３５】
この場合、オペレータは、ホストコンピュータ１のモニタ部１−２より、コントローラ２へ更新ソフトウェアＳ２を用いてのシミュレーションの実行状態のモニタ要求を送る（図５参照）。このシミュレーションの実行状態のモニタ要求はコントローラ２のシミュレーション用マイクロプロセッサ２−６へ送られる。
【００３６】
シミュレーション用マイクロプロセッサ２−６は、ホストコンピュータ１からのシミュレーションの実行状態のモニタ要求を受信すると（図６：ステップＳ３０１）、シミュレーション用データメモリエリア２−７に書き込まれている制御出力のシミュレーション値と、フィールド機器読込値保持エリア２−５に保持されている（書き込まれている）フィールド機器３からの入力値と、フィールド機器出力値保持エリア２−８に保持されている（書き込まれている）フィールド機器３への制御出力の実値（出力値）とをホストコンピュータ１へ返送する（ステップＳ３０２）。
【００３７】
ホストコンピュータ１において、モニタ部１−２は、コントローラ２から送られてくる制御出力のシミュレーション値、フィールド機器３からの入力値、フィールド機器３への制御出力の実値（出力値）を運転画面に対比させて表示する。
【００３８】
例えば、フィールド機器３を弁操作器とし、制御出力をその弁の開度θとした場合、図７に示すように、制御出力のシミュレーション値のトレンドグラフＧＳと制御出力の実値（出力値）のトレンドグラフＧＲとを対比して表示する。
【００３９】
この場合、トレンドグラフＧＳは更新ソフトウェアＳ２を用いての制御出力のシミュレーション値であり、トレンドグラフＧＲは更新前ソフトウェアＳ１を用いての制御出力の実値（出力値）である。オペレータは、このトレンドグラフＧＳとＧＲとを比較することにより、コントローラ２にダウンロードされた更新ソフトウェアＳ２の正当性を検証をすることができる。
【００４０】
また、モニタ部１−２は、トレンドグラフＧＳとＧＲとが表示されている運転画面中に、更新ソフトウェアＳ２を用いてのシミュレーションの実行状態に対する良否の判定結果を問い合わせるダイアログＤＬ（図８参照）を表示する。
【００４１】
オペレータは、検証の結果、コントローラ２にダウンロードされた更新ソフトウェアＳ２が正当であると判断すれば、このダイアログＤＬから良否の判定結果を「ＯＫ（良）」として入力する。すると、ホストコンピュータ１のアクティブ化指令送信部１−３から、アクティブ化の指令がコントローラ２へ送られる（図９参照）。
【００４２】
〔アクティブ／非アクティブの切り替え〕
コントローラ２において、ホストコンピュータ１からのアクティブ化の指令は、上位側通信インタフェース２−２を介してマイクロプロセッサ２−１へ送られる。マイクロプロセッサ２−１は、ホストコンピュータ１からのアクティブ化の指令を受信すると（図１０：ステップＳ４０１のＹＥＳ）、アクティブ／非アクティブの切り替えをアクティブ／非アクティブ切替部２−３に指示する（ステップＳ４０２）。
【００４３】
これにより、アクティブ／非アクティブ切替部２−３がそれまで非アクティブとしていた第２のメモリエリアＭ２をアクティブなメモリエリアに切り替え、それまでアクティブとしていた第１のメモリエリアＭ１を非アクティブなメモリエリアに切り替える。
【００４４】
これにより、マイクロプロセッサ２−１は、第１のメモリエリア（非アクティブなメモリエリア）に記憶されている更新前ソフトウェアＳ１を用いてのフィールド機器３の運転の制御を中止し、第２のメモリエリア（アクティブなメモリエリア）Ｍ２に記憶されている更新ソフトウェアＳ２を用いてのフィールド機器３の運転の制御を開始する。
【００４５】
このようにして、本実施の形態では、アクティブ／非アクティブの切替前に、コントローラ２にダウンロードさせた更新ソフトウェアＳ２の正当性をホストコンピュータ１側で検証することができ、正当性が検証されないまま更新ソフトウェアＳ２がコントローラ２で用いられてしまうことを防ぐことができるようになる。
【００４６】
なお、上述した実施の形態では、更新ソフトウェアＳ２を用いてシミュレーションを行う場合、フィールド機器読込値保持エリア２−５に保持されているフィールド機器３からの入力値よりフィールド機器３への制御出力のシミュレーション値を演算するようにしたが、ホストコンピュータ１から運転モードその他の設定値を送ってシミュレーション用データメモリエリア２−７に保持させ、このホストコンピュータ１から送った運転モードその他の設定値よりフィールド機器３への制御出力のシミュレーション値を演算させるようにしてもよい。この場合、ホストコンピュータ１側では、そのモニタ部１−２の運転画面に、その演算されたフィールド機器３への制御出力のシミュレーション値を運転モードその他の設定値と対比させて、表示するようにする。
【００４７】
また、上述した実施の形態では、ホストコンピュータ１からコントローラ２へ更新ソフトウェアＳ２をダウンロードさせる際、その更新ソフトウェアＳ２の全てを送るようにしたが、更新ソフトウェアＳ２と更新前ソフトウェアＳ１の内容とがほとんど同じであるような場合は、ホストコンピュータ１からメモリエリアの複製コマンドを送るようにし、アクティブなメモリエリアＭ１に記憶されている更新前ソフトウェアＳ１を非アクティブなメモリエリアＭ２にコピーし、差分だけをホストコンピュータ１からコントローラ２へ送り、非アクティブなメモリエリアＭ２中の更新前ソフトウェアＳ１を更新ソフトウェアＳ２に書き替えるようにしてもよい。このようにすることによって、通信負荷を減らすことができる。
【００４８】
また、上述した実施の形態では、コントローラ２へ更新ソフトウェアをダウンロードさせるものとして説明したが、フィールド機器３でもコントローラ２と同様に構成して、フィールド機器用の更新ソフトウェアをダウンロードさせることができる。この場合、フィールド機器読込値保持エリア２−５にはフィールド機器３自身の入力値（計測値）を保持させ、フィールド機器出力値保持エリア２−８にはフィールド機器３自身の動作出力の実値（出力値）を保持させるようにする。
【産業上の利用可能性】
【００４９】
本発明のフィールドバスシステムは、各種のフィールド機器をコントローラを用いて制御するフィールドバスシステムとして、プロセス制御など各種の分野で利用することが可能である。
【符号の説明】
【００５０】
１…ホストコンピュータ、１−１…更新ソフトウェア送信部、１−２…モニタ部、１−３…アクティブ化指令送信部、２…コントローラ、２−１…マイクロプロセッサ、２−２…通信インタフェース（上位側通信インタフェース）、２−３…アクティブ／非アクティブ切替部、２−４…通信インタフェース（下位側通信インタフェース）、２−５…フィールド機器読込値保持エリア、２−６…シミュレーション用マイクロプロセッサ、２−７…シミュレーション用データメモリエリア、２−８…フィールド機器出力値保持エリア、Ｍ１…第１のメモリエリア、Ｍ２…第２のメモリエリア、Ｓ１…更新前ソフトウェア、Ｓ２…更新ソフトウェア、３（３−１〜３−ｎ）…フィールド機器、４…通信ライン、５…リンクモジュール、６…通信ライン（フィールドバス）、ＧＳ…制御出力のシミュレーション値のトレンドグラフ、ＧＲ…制御出力の実値（出力値）のトレンドグラフ、ＤＬ…ダイアログ。
【図１】
0005508824.tif 000002
【図２】
0005508824.tif 000003
【図３】
0005508824.tif 000004
【図４】
0005508824.tif 000005
【図５】
0005508824.tif 000006
【図６】
0005508824.tif 000007
【図７】
0005508824.tif 000008
【図８】
0005508824.tif 000009
【図９】
0005508824.tif 000010
【図１０】
0005508824.tif 000011
【図１１】
0005508824.tif 000012
【図１２】
0005508824.tif 000013