(57)【特許請求の範囲】
【請求項１】
稼動側アナログ入力モジュールおよび待機側アナログ入力モジュールを有するアナログ入力二重化装置であって、
前記稼動側アナログ入力モジュールは、
入力されるアナログ値の範囲とデジタル値の範囲の対応関係を示す理論調整スケール値を登録する稼動側基本情報登録手段と、
該稼動側アナログ入力モジュールのＡ／Ｄ変換誤差を修正するための稼動側校正値および外部機器から出力されるアナログ信号のＡ／Ｄ変換値をそれぞれ入力する稼動側計測値入力手段と、
前記外部機器の特性に合わせるための機器調整値を保持する稼動側記憶手段と、
前記機器調整値と前記理論調整スケール値と前記稼動側校正値とを用いて前記待機側アナログ入力モジュールのＡ／Ｄ変換値の修正に使用する補正値を演算し、この補正値を周期的に前記待機側アナログ入力モジュールへ送信する補正値送信手段と、
前記稼動側計測値入力手段によって入力されたアナログ信号のＡ／Ｄ変換値を前記稼動側記憶手段に保持されている機器調整値によって修正したＡ／Ｄ変換値を出力する出力値算出手段と、を備え、
前記待機側アナログ入力モジュールは、
入力されるアナログ値の範囲とデジタル値の範囲の対応関係を示す理論調整スケール値を登録する待機側基本情報登録手段と、
該待機側アナログ入力モジュールのＡ／Ｄ変換誤差を修正するための待機側校正値および前記外部機器から出力されるアナログ信号のＡ／Ｄ変換値をそれぞれ入力する待機側計測値入力手段と、
前記補正値送信手段によって送信された補正値を受信し、この補正値と前記理論調整スケール値と前記待機側校正値とを用いて待機側の機器調整値を演算して待機側記憶手段に保存する演算保存手段と、を備え、
前記待機側アナログ入力モジュールは、所定の期間、前記補正値送信手段から補正値を受信しないことにより、稼動側アナログ入力モジュールとして動作することを特徴とするアナログ入力二重化装置。
【請求項２】
前記出力値算出手段は、前記修正したＡ／Ｄ変換値をユーザが要求するスケール範囲にさらにスケール変換することを特徴とする請求項１に記載のアナログ入力二重化装置。
【請求項３】
稼動側と待機側とからなりアナログ値をデジタル値に変換して入力するアナログ入力モジュールを二重化して用いるアナログ入力二重化方法であって、
入力するアナログ値の範囲とデジタル値の範囲の対応関係を稼動側と待機側の両方に共通の設定値として設定し、
稼動側と待機側のそれぞれでＡ／Ｄ変換誤差を修正するための校正値を入力し、該校正値と前記対応関係から調整用スケール変換データを計算し、
稼動側において、外部機器の特性に合わせるための機器調整値を入力し、入力した機器調整値と校正値との差分を稼動側の調整用スケール変換データによってスケール変換して補正値を算出すると共に該補正値を待機側へ送信し、
待機側において、受信した補正値と待機側の調整用スケール変換データを用いて、待機側の機器調整値を計算し、
稼動側と待機側の少なくともいずれか一方において、入力した計測値を夫々が保持する機器調整値を用いて修正することを特徴とするアナログ入力二重化方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、主にプログラムコントローラやネットワーク端末などの計測機能として用いられるアナログ入力装置の二重化技術に関する。
【背景技術】
【０００２】
図６は、従来の二重化構成によるアナログ入力二重化装置のブロック図である。この図において、従来のアナログ入力二重化装置１００は、ＣＰＵモジュール２と二以上のアナログ入力モジュール９９で構成されている。ＣＰＵモジュール２とアナログ入力モジュール９９は、複数の信号線からなるバス３で接続されている。なお、バス３に代えてネットワークで各モジュールを接続する場合もある。また、図示していないが、アナログ入力二重化装置１００は、電源モジュールも有しており、電源線またはベースボード上の電源パターンを通して各モジュールに電力を供給している。なお、バス３はベースボードを使わず直接コネクタでモジュール間を接続する場合もある。
【０００３】
各アナログ入力モジュール９９は、共有メモリを有しバス３を介してＣＰＵモジュール２との間でデータの受け渡しを行うバスインタフェース回路（以下、ＢＵＳＩ／Ｆ）１５、アナログ入力処理や二重化切替処理などの種々の演算処理を実行するＣＰＵ回路１１、外部機器９から出力されるアナログ信号を入力し、入力したアナログ信号の大きさに基づいて所定の大きさの電気信号を出力する複数の入力回路９８、各入力回路９８から出力される電気信号のうち一つを選択するマルチプレクサ回路（以下、ＭＰＸ）１４、ＭＰＸ１４の出力信号を一定時間保持するサンプルホールド回路（以下、ＳＨ）１９、アナログ信号をデジタル信号に変換してＣＰＵ回路１１に渡すＡ／Ｄ変換器（以下、ＡＤＣ）１２を備えている。このＡＤＣ１２、ＳＨ１９、ＭＰＸ１４、入力回路９８によって入力部９７を構成する。
なお、ＡＤＣ１２を絶縁型にするなど、必要により入力部９７側とＣＰＵ回路１１側は絶縁されている。
【０００４】
アナログ入力二重化装置１００は、上記の構成を有するアナログ入力モジュール９９を複数有し、各アナログ入力モジュール９９はＣＰＵモジュール２からの指令によって種々の動作パラメータの設定が行われる。また、稼動側アナログ入力モジュール（以下、「稼動側モジュール」または単に「稼動側」という。）と待機側アナログ入力モジュール（以下、「待機側モジュール」または単に「待機側」という。）は、外部機器９との間で二重化のための配線が施され、運用時はＣＰＵモジュール２からの指令によって稼動／待機の切替が行われる。なお、二重化のための配線のしかたは図６に限らず、外部機器９から二重化された各入力回路９８を直列に配線したり、必要により入力端に切替スイッチを設けて稼動側モジュールのみに外部機器９からの信号が入力されるように構成されている。
【０００５】
ところで、アナログ入力モジュール９９は、現地でシステム立ち上げ時に、現地の外部機器（センサ、アクチュエータ等）の特性に合わせて調整する必要がある。
これは、図７に示すように、アナログ入力値（横軸）とそのＡ／Ｄ変換値（縦軸）の対応関係をユーザが変更したり、アナログ入力二重化装置１００の設置環境、たとえば、外部機器９のアナログ出力回路の特性、接続ケーブル９２のインピーダンス、各装置の接地状態などによって、アナログ出力値のＡ／Ｄ変換値が所望の値からずれる場合があり、このずれを補正する必要があるからである。
【０００６】
このため、システム立ち上げ時には、稼動側モジュール、待機側モジュールの両方とも現地調整を行い取得した機器調整値によってＡ／Ｄ変換値を補正していた。また、もし、一方が故障して別のアナログ入力モジュールと交換するような場合は、その交換品に対しても現地調整を行う必要があり、システムの停止を余儀無くされることも度々あった。
従来、アナログ入力装置やアナログ出力装置の二重化構成に関する技術はいろいろ提案されている。（例えば、特許文献１〜３を参照のこと。）
【０００７】
しかしながら、いずれの文献も現地調整やモジュール交換時の効率化を目的としたものではなく、外部機器に合わせて精度良く計測しようとすると、モジュール交換時等の現地調整は必要となる。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開平６−２０７９６１号公報
【特許文献２】特開２００８−１１８５８３号公報
【特許文献３】特開２００８−１０７２２４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
本発明は、上述のかかる事情に鑑みてなされたものであり、アナログ入力の二重化構成において、現地調整時には稼動側モジュールのみについて現地調整を実施すれば足り、片側故障時のモジュール交換の際には現地調整を行う必要のないアナログ入力二重化装置およびアナログ入力二重化方法を提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記の目的を達成するため、本発明に係るアナログ入力二重化装置は、稼動側アナログ入力モジュールおよび待機側アナログ入力モジュールを有するアナログ入力二重化装置であって、前記稼動側アナログ入力モジュールは、入力されるアナログ値の範囲とデジタル値の範囲の対応関係を示す理論調整スケール値を登録する稼動側基本情報登録手段と、該稼動側アナログ入力モジュールのＡ／Ｄ変換誤差を修正するための稼動側校正値および外部機器から出力されるアナログ信号のＡ／Ｄ変換値をそれぞれ入力する稼動側計測値入力手段と、前記外部機器の特性に合わせるための機器調整値を保持する稼動側記憶手段と、前記機器調整値と前記理論調整スケール値と前記稼動側校正値とを用いて前記待機側アナログ入力モジュールのＡ／Ｄ変換値の修正に使用する補正値を演算し、この補正値を周期的に前記待機側アナログ入力モジュールへ送信する補正値送信手段と、前記稼動側計測値入力手段によって入力されたアナログ信号のＡ／Ｄ変換値を前記稼動側記憶手段に保持されている機器調整値によって修正したＡ／Ｄ変換値を出力する出力値算出手段と、を備え、前記待機側アナログ入力モジュールは、入力されるアナログ値の範囲とデジタル値の範囲の対応関係を示す理論調整スケール値を登録する待機側基本情報登録手段と、該待機側アナログ入力モジュールのＡ／Ｄ変換誤差を修正するための待機側校正値および前記外部機器から出力されるアナログ信号のＡ／Ｄ変換値をそれぞれ入力する待機側計測値入力手段と、前記補正値送信手段によって送信された補正値を受信し、この補正値と前記理論調整スケール値と前記待機側校正値とを用いて待機側の機器調整値を演算して待機側記憶手段に保存する演算保存手段と、を備え、前記待機側アナログ入力モジュールは、所定の期間、前記補正値送信手段から補正値を受信しないことにより、稼動側アナログ入力モジュールとして動作することを特徴とする。
【００１１】
ここで、「所定の期間」とは、補正値の送信周期をもとに予め設定される値であり、プログラマブルコントローラの制御周期（データリフレッシュ周期）に影響を与えない程度の期間をいう。例えば、制御周期を１０ｍｓとしたプログラマブルコントローラシステムに適用する場合は、所定の期間は１０ｍｓ以下の値に設定し、送信周期はこの設定値の数分の１程度にするのが好ましい。
【００１２】
本発明では、稼動側アナログ入力モジュールは、現地で機器調整値を入力して自モジュールの記憶部に保存する一方で、この機器調整値を用いて補正値を演算し、当該補正値を待機側アナログ入力モジュールへ送信する。待機側アナログ入力モジュールでは、受信した補正値を用いて、当該アナログモジュールとしての機器調整値を算出して自モジュールの記憶部に保存しておく。そして、所定の期間補正値が受信されないことにより稼動側入力モジュールの異常を検知して、自モジュールが稼動側アナログ入力モジュールとして動作する。このとき、自モジュールの記憶部に保存されている機器調整値を用いて、入力したＡ／Ｄ変換値の修正を行うので、待機側アナログ入力モジュールとしては外部機器の特性に合わせるための機器調整値の入力は不要になる。また、故障したアナログ入力モジュールの交換時には、交換され待機側として立ち上がったアナログ入力モジュールは新たに稼動側になったアナログ入力モジュールから自動的に補正値を受信することになるので、交換するアナログ入力モジュールについても外部機器の特性に合わせるための機器調整が不要になる。このため稼働率が向上する。
【００１３】
また、本発明に係るアナログ入力二重化方法は、稼動側と待機側からなりアナログ値をデジタル値に変換して入力するアナログ入力モジュールを二重化して用いるアナログ入力二重化方法であって、入力するアナログ値の範囲とデジタル値の範囲の対応関係（６３）を稼動側と待機側の両方に共通の設定値として設定し、稼動側と待機側のそれぞれでＡ／Ｄ変換誤差を修正するための校正値（６４）を入力し、該校正値と前記対応関係（６３）から調整用スケール変換データを計算し、稼動側において、外部機器（９）の特性に合わせるための機器調整値（６５）を入力し、入力した機器調整値（６５）と校正値（６４）との差を稼動側の調整用スケール変換データによってスケール変換して下限値および上限値による補正値（６８）を算出すると共に該補正値を待機側へ送信し、待機側において、受信した補正値と待機側の調整用スケール変換データを用いて、待機側の機器調整値（６５）を計算し、稼動側と待機側の少なくともいずれか一方において、入力した計測値を夫々が保持する機器調整値（６５）を用いて修正することを特徴とする。
【００１４】
本発明によれば、稼動側において、現地調整により機器調整値を求め、これを用いて補正値を算出し、この補正値を待機側へ送信し、待機側モジュールではこの補正値を用いて自モジュール用の機器調整値を計算するようにしたので、システム立ち上げ時は、稼動側モジュールのみ現地調整を行えば良く、また、片方のアナログ入力モジュールが故障した場合には、他方のアナログ入力モジュールが稼動側となり、待機側として実装される交換品に対して、当該補正値を転送するので、交換作業時の現地調整は不要となる。
【００１５】
また、本発明に係るアナログ入力モジュール（１０）は、稼動側か或いは待機側かの動作モードが設定可能なアナログ入力モジュールであって、動作モードの初期値（６１）、入力するアナログ値の範囲とデジタル値の範囲の対応関係を示す理論調整スケール値（６３）を登録する基本情報登録手段（４２）と、Ａ／Ｄ変換誤差を修正するための校正値（６４）および外部機器（９）から出力されるアナログ信号のＡ／Ｄ変換値（６６）を入力する計測値入力手段（４３）と、動作モードが稼動側のときに、外部機器（９）の特性に合わせるための機器調整値（６５）を入力し、当該入力した機器調整値（６５）と理論調整スケール値（６３）と校正値（６４）とを用いて補正値（６８）を演算し、当該演算した補正値を送信する手段（調整値変換手段４４，補正値算出手段４５，補正値送信手段４７）と、動作モードが待機側のときに、稼動側から送られてくる補正値（６８）を受信し、当該受信した補正値（６８）と理論調整スケール値（６３）と校正値（６４）とを用いて機器調整値を演算する手段（補正値受信手段４８，機器補正値変換手段５０，機器調整値算出手段５１）と、計測値入力手段（４３）によって入力されたＡ／Ｄ変換値（６６）を機器調整値（６５）によって修正する出力値算出手段（４６）と、を備えたことを特徴とする。
【００１６】
本発明では、動作モードが稼動側のときは、入力した機器調整値と理論調整スケール値と校正値とを用いて補正値を算出して送信し、動作モードが待機側のときは、稼動側から送られてくる補正値を受信し、当該受信した補正値を用いて機器調整値を演算する。そして、計測値入力手段によって入力されたＡ／Ｄ変換値を機器調整値によって修正する。
【００１７】
好ましくは、出力値算出手段（４６）は、入力するアナログ値の範囲とデジタル値の範囲のアプリケーションプログラムへ渡すデジタル値の範囲の対応関係を示すユーザ要求スケール値によって、前記修正したＡ／Ｄ変換値をさらにスケール変換するようにすると良い。
【００１８】
本発明に係るアナログ入力モジュール（１０）は、さらに、動作モードが稼動側のときは、補正値（６８）を周期的に待機側へ送信する一方、待機側からの該補正値の送信に対する応答の有無によって待機側の異常の有無を判定し、動作モードが待機側のときは、補正値の受信に対して応答する一方、補正値が周期的に送られてくるか否かによって稼動側の異常の有無の判定を行う稼動／待機判定手段（５２）を備えたことを特徴とする。
【００１９】
本発明では、補正値を周期的に送信することにより、アナログ入力モジュールを活線状態で差替えても自動的に待機側へ補正値が転送されるので、システム停止やリセットの必要がなく稼働率が向上する。
【発明の効果】
【００２０】
本発明によれば、現地でのシステム立ち上げ時、故障モジュールの交換の作業効率が向上する。また、稼動側と待機側の間に通信機能を設け、アプリケーション層を介さずに補正値の転送を実行するので、上位層やＣＰＵモジュールは待機側への考慮をする必要がなくなり負荷を軽減させることができる。
【図面の簡単な説明】
【００２１】
【図１】本発明の実施の形態によるアナログ入力二重化装置１のブロック図である。
【図２】図１のアナログ入力モジュール１０の機能ブロック図である。
【図３】図２に示すアナログ入力モジュール１０を稼動側と待機側の二重化構成で用いた場合の処理概要を説明するためのブロック図である。
【図４】図１のアナログ入力二重化装置１の現地での動作概要の処理手順を示すフローチャートである。
【図５】外部Ａ／Ｄ変換値（理論調整値scale）と、内部Ａ／Ｄ変換値（校正値および機器調整値）との関係を示す説明図であり、図５（ａ）は稼動側モジュールの説明図、図５（２）は待機側モジュールの説明図である。
【図６】従来技術によるアナログ入力二重化装置１００のブロック図である。
【図７】現地調整時の外部機器の特性への合わせこみの説明図である。
【発明を実施するための形態】
【００２２】
以下、図面を参照しながら本発明の実施の形態を説明する。図１は、一実施の形態によるアナログ入力二重化装置１のブロック図である。図６に示した従来のハードウェア構成との主な違いは、二重化構成による稼動側と待機側のアナログ入力モジュール間のシリアル通信を行う通信部９６を設け、通信ケーブル５で稼動側と待機側を接続したことである。この通信部９６は、データを送信回路２１、データを受信する受信回路２２、および、信号を絶縁する絶縁回路２３から構成されている。
【００２３】
図２は、図１のアナログ入力モジュール１０の機能ブロック図である。図２において、アナログ入力モジュール１０は、ＢＵＳＩ／Ｆ回路１５を介して、ＣＰＵモジュール２との間でデータの受け渡し処理を行うＣＰＵＩ／Ｆ手段４１、ＣＰＵモジュール２から送られてくる基本情報（稼動／待機の初期値６１，ユーザ要求値scale６２，理論調整値scale６３）をＣＰＵ回路１１の内部の図示しない記憶部４０に保存する基本情報登録手段４２、外部機器９などから出力されるアナログ信号を入力部９７を介して入力し、入力された計測値をＣＰＵモジュール２からの指令によって、校正値６４、機器調整値６５、計測値６６のそれぞれの記憶領域へ保存する計測値入力手段４３、稼動モードのときに理論調整値scale６３，校正値６４，機器調整値６５を用いて理論調整値６７を演算する調整値変換手段４４、この理論調整値６７と理論調整値scale６３を用いて稼動側から待機側へ送るための補正値を演算する補正値演算手段４５、機器調整値６５，計測値６６，ユーザ要求値scale６２を用いてＣＰＵモジュール２のアプリケーションプログラムへ渡すための修正後計測値（以下、これを出力値という。）、補正値算出手段４５によって算出された補正値を待機側へ送信する補正値送信手段４７、待機モードのときに稼動側から送られてくる補正値を受信する補正値受信手段４８、二重化構成において相手側の健全性確認その他のパラメータの受け渡しを行い相手側が正常か異常かの判定結果を出力するコマンド送受信手段４９、補正値受信手段４８によって補正値が受信されたときに、この補正値と理論調整値scale６３，校正値６４を用いて機器補正値６９を演算する機器補正値変換手段５０、この機器補正値６９と校正値６４を用いて機器調整値６５を演算する機器調整値算出手段５１、稼動／待機の初期値６１とコマンド送受信手段４９から出力される判定結果から自系が稼動モードで動作すべきか待機モードで動作すべきかを決定する稼動／待機判定手段５２を備えている。ここで、各手段４１〜５２はＣＰＵ回路１１の演算部によって動作するプログラムによって実現可能な機能であり、各データ６１〜７０は、ＣＰＵ回路１１の記憶部に保存されるデータである。なお、記憶部として、電源断時にもデータ保持可能な不揮発メモリを用いるのが好ましい。
【００２４】
次に上記の構成を有するアナログ入力二重化装置１の動作を図２と図３を用いて説明する。ここで、図３は、図２に示すアナログ入力モジュール１０を稼動側と待機側の二重化構成で用いた場合の処理概要の説明図である。
【００２５】
［稼動側の動作］
＜基本情報登録処理＞
基本情報登録手段４２は、ＣＰＵＩ／Ｆ手段４１を介してＣＰＵモジュール２から渡された基本情報を記憶部４０の基本情報保存領域に格納する。
【００２６】
上記において、ＣＰＵモジュール２から渡される基本情報には、稼動モードあるいは待機モードの初期値（稼動／待機）６１、アプリケーションプログラムに渡すアナログ入力値のデータレンジを示すユーザ要求スケール値（ユーザ要求値scale）６２、入力するアナログ値の範囲とデジタル値の範囲との対応関係を指定する稼動側と待機側共通のスケール値（理論調整値scale）６３がある。なお、ユーザ要求値scale６２と理論値scale６３は共通にすることもできるが、ユーザ要求値scale６２はアプリケーションプログラムと密接に関連するものであり、ＯＳや下位層のいわゆる基本プログラムで管理するのが好ましい理論調整値scale６３とは別々に設定できるようにしておくのが良い。
【００２７】
なお、基本情報のうち稼動／待機の初期値６１などは、ＣＰＵモジュールから渡すことに代えて、アナログ入力モジュール１０にスイッチ等の入力手段を設けて、この設定状態を初期値として読み込むようにしても良い。また、運用状態においてアナログ入力モジュールの故障によって差替えられた新たなアナログ入力モジュールは、初期値として待機の設定がなされるものとする。
【００２８】
スケール値などの範囲を指定するデータは、下限（Low側）と上限（High側）で指定するので、以降の説明において、Low側のデータを［Lo］、High側のデータを［Hi］で表す。
【００２９】
＜計測値入力処理＞
計測値入力手段４３は、入力部９７を介して外部機器９から出力されたアナログ信号を入力する。
なお、入力信号は、入力部９７のＡ／Ｄ変換器１２によってデジタルデータとして入力され、当該外部機器のＩＤと関連付けられてＣＰＵ回路１１の記憶部に保存される。
【００３０】
＜校正値登録処理＞
アナログ入力モジュール１０は、出荷に際して校正が必要になるが、入力信号として校正用の基準となるアナログ信号が入力される。この信号は、計測値入力手段４３によって入力処理されるが、このときＣＰＵモジュール２を経由して同モジュールに接続されたユーザインタフェース（タッチパネルやメンテナンスツール）から入力信号が校正値であることを示す指令を送信するようにし、この指令から当該アナログ入力モジュール１０の計測値入力手段４３は、入力信号が校正値であることを認識して、記憶部４０の該当する校正値保存領域に保存する。この校正処理は、稼動側、待機側を問わず全てのアナログ入力モジュールについて実施する。
【００３１】
＜機器調整値登録処理＞
現地では、運用前に外部機器９の特性に合わせるための調整処理が行われる。調整処理としては、上記校正値登録処理と同様にＣＰＵモジュール２から入力信号が機器調整値であることを示す指令をアナログ入力モジュール１０へ送り、外部機器９から調整用の信号を入力する。アナログ入力モジュール１０の計測値入力手段４３は、この指令から入力信号が機器調整値であることを認識して、記憶部４０の該当する機器調整値保存領域に保存する。この調整処理は、二重化されたアナログ入力モジュール１０のうち、稼動側のモジュールに対してのみ実施する。なお、読み込んだ校正値、機器調整値の記憶部４０への書き込み処理もＣＰＵモジュール２からの指令によって行われる。
【００３２】
＜調整値変換処理＞
次に、調整値変換手段４４は、記憶部に保存されている理論調整値scaleと校正値と機器調整値を抽出し、次の式（１Ｌ），式（１Ｈ）により理論調整値を計算する。計算結果は、記憶部の理論調整値保存領域に格納される。
【００３３】
理論調整値[Lo] = 理論調整値Scale[Lo] + (機器調整値[Lo] - 校正値[Lo])×(理論調整値Scale[Hi] - 理論調整値Scale[Lo])／（校正値[Hi]−校正値[Lo]）
・・・（１Ｌ）
理論調整値[Hi] = 理論調整値Scale[Lo] + (機器調整値[Hi] - 校正値[Lo])×(理論調整値Scale[Hi] - 理論調整値Scale[Lo])／（校正値[Hi]−校正値[Lo]）
・・・（１Ｈ）
【００３４】
なお、上記の式（１Ｌ），式（１Ｈ）のうち、(理論調整値Scale[Hi] - 理論調整値Scale[Lo])／（校正値[Hi]−校正値[Lo]）を調整用スケール変換データという。
【００３５】
具体例として、設定された理論調整値Scale[Lo]＝0，理論調整値Scale[Hi]＝30000、ユーザ要求値Scale[Lo] ＝ 0，ユーザ要求値Scale[Hi]＝16000、収集された校正値[Lo]＝0，校正値[Hi]＝32000、機器調整値[Lo]＝3200，機器調整値[Hi]＝32000，稼動側計測値＝32000の場合について以下に各手段の計算結果を示す。
【００３６】
この具体例の場合、調整値変換手段４４の出力は、式（１Ｌ），式（１Ｈ）より、理論調整値[Lo]＝3000，理論調整値[Hi]＝30000となる。
【００３７】
理論調整値を求める理由は、稼動側モジュールが何Ｖ調整したかを待機側モジュールに伝えるためには0-10V/0-30000のように電圧とスケールを一致させておく必要があるからである。
【００３８】
＜補正値算出処理＞
次に、補正値算出手段４５は、記憶部に格納されている理論調整値６７と理論調整値scale６３を抽出し、式（２Ｌ），式（２Ｈ）により補正値を計算する。計算結果は、記憶部の補正値保存領域に格納される。
【００３９】
補正値[Lo]＝理論調整値[Lo]−理論調整値Scale[Lo]      ・・・（２Ｌ）
補正値[Hi]＝理論調整値[Hi]−理論調整値Scale[Hi]      ・・・（２Ｈ）
【００４０】
上記具体例では、理論調整値Scale[Lo]＝0，理論調整値Scale[Hi] ＝30000、調整値変換手段４４で算出した理論調整値[Lo]＝3000，理論調整値[Hi]＝30000であるから式（２Ｌ）,式（１Ｈ）より、補正値[Lo]＝3000，補正値[Hi]＝0となる。
【００４１】
＜補正値送信処理＞
次に、補正値送信手段４７は、算出した補正値を待機側モジュールへ向けて送信する。
【００４２】
＜出力値算出処理＞
その後、運用状態において、入力処理を実行する。計測値入力手段４３は、外部機器９からの入力信号を記憶部４０の計測値保存領域に格納する。
【００４３】
出力値算出手段４６は、この計測値保存領域に保存されている計測値６６と、同じく記憶部４０に保存されている機器調整値６５とユーザ要求値scale６２を用いて、次の式（５）によりＣＰＵモジュール２へ出力するためのデータ（稼動側出力値）を計算する。
【００４４】
稼動側出力値 = ユーザ要求値Scale[Lo]＋(稼動側計測値−機器調整値[Lo])×(ユーザ要求値Scale[Hi]−ユーザ要求値Scale[Lo])／(機器調整値[Hi]−機器調整値[Lo])
・・・  （５）
【００４５】
上記具体例では、ユーザ要求値Scale[Lo] = 0，ユーザ要求値Scale[Hi] = 16000、機器調整値[Lo] = 3200，機器調整値[Hi] = 32000、稼動側計測値=32000であるから、式（５）より、ＣＰＵモジュール２へ渡す計測データとして、稼動側出力値=16000となる。
【００４６】
［待機側の動作］
待機側モジュールの処理として、上記の基本情報登録処理、計測値入力処理、校正値登録処理、および出力値算出処理は稼動側モジュールと同様の処理内容を実行するが、このとき機器調整値については、計測値入力手段４３によって入力するのではなく次の処理によって受信した補正値から演算する。
【００４７】
＜補正値受信処理＞
待機側モジュールの補正値受信手段４８は、稼動側から送られてきた補正値６８を受信すると、記憶部４０の補正値保存領域に格納する。
【００４８】
＜機器補正値変換処理＞
次に、機器補正値変換手段５０によって、記憶部４０に保存されている補正値６８と理論調整値scale６３と校正値６４とを用いて、次の式（３Ｌ），式（３Ｈ）によって、機器補正値６９を計算する。計算結果は、記憶部４０の機器補正値保存領域に格納される。
【００４９】
機器補正値[Lo] = (補正値[Lo]−理論調整値Scale[Lo])×（校正値[Hi]−校正値[Lo]）／(理論調整値Scale[Hi]−理論調整値Scale[Lo])                 ・・・（３Ｌ）
機器補正値[Hi] = (補正値[Hi]−理論調整値Scale[Lo])×（校正値[Hi]−校正値[Lo]）／(理論調整値Scale[Hi]−理論調整値Scale[Lo])                 ・・・（３Ｈ）
【００５０】
なお、上記の式（３Ｌ），式（３Ｈ）のうち、（校正値[Hi]−校正値[Lo]）／(理論調整値Scale[Hi]−理論調整値Scale[Lo])の項は、調整用スケール変換データに該当している。
【００５１】
具体例として、ＣＰＵモジュール２から設定される理論調整値は稼動側と同じ値であり、理論調整値Scale[Lo] = 0，理論調整値Scale[Hi] = 30000である。また、校正値としては校正値[Hi] = 28000，校正値[Lo] =0とする。このとき、稼動側から送られてくる補正値は、補正値[Lo] = 3000，補正値[Hi] = 0なので、上記の式（３Ｌ），式（３Ｈ）より、機器補正値[Lo] =2800 ，機器補正値[Hi] =0となる。
【００５２】
＜機器調整値算出処理＞
次に、機器調整値算出手段５１は、記憶部４０に格納されている機器補正値６９と校正値６４を抽出して、次の式（４Ｌ），式（４Ｈ）により、機器調整値６５を計算する。計算結果は、記憶部４０の機器調整値保存領域に格納される。
【００５３】
機器調整値[Lo]＝校正値[Lo]＋機器補正値[Lo]        ・・・（４Ｌ）
機器調整値[Hi]＝校正値[Hi]＋機器補正値[Hi]        ・・・（４Ｈ）
【００５４】
上記具体例では、校正値[Lo]＝0，校正値[Hi]＝28000、機器補正値[Lo]＝2800，機器補正値[Hi]＝0なので、式（４Ｌ），式（４Ｈ）より、機器調整値[Lo]＝2800，機器調整値[Hi]＝28000になる。この機器調整値算出手段５１によって算出された機器調整値で計測値を修正することにより、アナログ入力モジュールの個体差が吸収される。
【００５５】
＜出力値算出処理＞
待機側モジュールでアナログ入力処理を行う場合は、記憶部４０に保存されている計測値６６、ユーザ要求値scale６２、および機器調整値６５を抽出し、上記の式（５）により、待機側入力値を計算する。そして、稼動／待機判定手段５２によって、稼動側モジュールが故障したと判定した場合は、待機側が新たな稼動側となり、ユーザ要求値scale６２によってスケール変換された計測値をＣＰＵモジュール２に送る。なお、具体例として、待機側計測値=28000の場合には、式（５）より、待機側出力値=16000となる。すなわち、本実施の形態の演算処理によれば、ＣＰＵモジュール２へ出力するデータ値は、稼動側と待機側で同じになる。  
【００５６】
なお、故障したモジュールは、新たなアナログ入力モジュールと交換されるが、このとき、この新たなアナログ入力モジュールは待機側に設定され、出荷時に校正処理が行われ、校正値６４が記憶部４０に保存されているものとする。このモジュールが現地のアナログ入力二重化装置１に実装されると、稼動側モジュールは、保存されている補正値を補正値送信手段４７によって、当該交換された待機側モジュールへ送り、待機側モジュールは、上述した待機側モジュールの処理を実行する。
【００５７】
以上、アナログ入力二重化装置１の各手段の処理内容について説明した。次にアナログ入力二重化装置１の現地での動作、特に補正値の送信処理、他系の異常検出処理、および稼動/待機の切替処理について図４のフローチャートを用いて説明する。
【００５８】
まず、アナログ入力モジュール１０は、電源ＯＮによってＣＰＵ回路１１の記憶部４０から「調整値」、「二重化設定」のフラグ、「稼動／待機」の別、「補正値」を各データの保存エリアから読み出し（Ｓ１０１）、二重化設定でない場合は、単独運転処理を実行する（Ｓ１０２，Ｓ１０３）。この場合は、補正値送信手段４７、補正値受信手段４８、コマンド送受信手段４９は機能させない。
【００５９】
稼動／待機判定手段５２は、稼動／待機の初期状態６１から、自モジュールが稼動設定されている場合は（Ｓ１０４で「ＹＥＳ」）、計測値入力手段４３はＣＰＵモジュール２からの指令により自モジュールは調整中か否かを判定する（Ｓ１０５）。
【００６０】
自モジュールが調整中の場合は（Ｓ１０５で「ＹＥＳ」）、調整用の入力値（機器調整値）を取得して、調整値変換手段４４により理論調整値を算出する（１０６）。
【００６１】
次に、補正値算出手段４５を起動して、理論調整値を元に補正値を算出する（Ｓ１０７）。そして、記憶部４０への書き込み要求が有る場合は、機器調整値と補正値を記憶部４０へ書き込む（Ｓ１０９）。
【００６２】
続いて、補正値送信手段４７により算出した補正値を待機側モジュールへ転送する（Ｓ１１０）。なお、この転送により待機側モジュールは稼動側モジュールの健全性を検知する。
【００６３】
その後、コマンド送受信手段４９は待機側モジュールから補正値の受信完了のレスポンスがあったか否かを判定し（Ｓ１１１）、レスポンスがあった場合は、その後周期的に待機側モジュールへ生存確認等の所定のコマンドを送信する（Ｓ１１３）。なお、互いに相手方の正常性を確認する手法としては、いわゆるハローコールなど予め定められた手順によって所定のデータ（補正値でも良い）を受け渡すことによって実現することができる。
【００６４】
一方、レスポンスが無い場合は、再度、補正値を待機側モジュールに転送すると共に（Ｓ１１２）、入力処理を実行し（Ｓ１１４）、出力値算出手段４６により機器調整値等をもとに入力値を補正する（Ｓ１１５）。
【００６５】
そして、待機側モジュールが正常か否かをステップＳ１１３のコマンド送信のレスポンスによって確認し（Ｓ１１６）、一定時間または一定回数レスポンスが無い場合は、ＣＰＵモジュール２に待機側モジュールが異常であることを通知して（Ｓ１１７）、ステップＳ１０５へ戻り以降の処理を繰り返す。
【００６６】
一方、ステップＳ１０４で、自モジュールが待機側設定の場合は、補正値受信手段４８により補正値の受信があったか否かを判定し（Ｓ１１８）、補正値の受信があった場合は、受信した補正値を記憶部４０に書き込む（Ｓ１１９）。
【００６７】
そして、機器補正値変換手段５０および機器調整値算出手段５１により補正値を機器調整値に変換する（Ｓ１２０）。また、稼動側モジュールに補正値の受信完了レスポンスを送信する（Ｓ１２１）。
【００６８】
その後は、稼動側モジュールへ生存確認等のコマンド送受信処理を行い（Ｓ１２２）、稼動側モジュールが正常か否かの確認を行う（Ｓ１２３）。
【００６９】
そして、稼動側モジュールが正常の場合は、入力処理を実行して、ステップＳ１１８へ戻り以降の処理を繰り返す。一方、ステップＳ１２３で、稼動側モジュールが正常でないと判定した場合は、稼動／待機判定手段５２によりＣＰＵモジュール２へ稼動側が異常であることを通知して、記憶部４０の稼動／待機の設定を稼動に書き換えて、自モジュールが稼動側に切り替わり（Ｓ１２６）、ステップＳ１０５へ移行して、以降の処理を実行する。
【００７０】
なお、このとき、オンライン状態で新たに稼動側へ切り替わったアナログ入力モジュールは、ステップＳ１０５では、自モジュールは調整中ではないため、ステップＳ１１１へジャンプする。このとき、異常と判定された相手側モジュールは、待機側扱いとなるが、この待機側モジュールからは、補正値受信完了レスポンスはないため、ステップＳ１１２へ移行し、自モジュールの記憶部４０に保存されている機器調整値を用いて入力値を補正し、ＣＰＵモジュール２へ渡す。
【００７１】
その後、待機側モジュールが交換された場合は、ステップＳ１１２の処理によって、新たに稼動側となったモジュールの記憶部４０に保存されている補正値が待機側モジュールへ転送されることになる。一方、交換された待機側モジュールは、ステップＳ１０４で「ＮＯ」となり、ステップＳ１１８へ移行し、補正値を受信し自モジュールの記憶部４０へ保存し、以後はこの補正値を用いて機器調整値を算出し、これにより入力値を補正することになる。  
【００７２】
［理論調整値scaleと校正値・機器調整値との関係］
図５は、理論調整値scale（外部Ａ／Ｄ変換値）と、校正値および機器調整値（以下、単に「調整値」ともいう。）との関係を示す説明図である。ここで、理論調整値scaleは、ＣＰＵモジュール２から指定されるＡ／Ｄ変換の範囲を示す値（スケール値）であるため、外部Ａ／Ｄ変換値と言い、校正値および調整値は、入力されたアナログ値（この例では電圧値）に対応するアナログ入力モジュール内のＡＤＣ１２のＡ／Ｄ変換値であるため内部Ａ／Ｄ変換値と言う。
【００７３】
この表において、電圧の単位を[v]、デジタル値の単位を[d]で表している。
まず、ＣＰＵモジュール２からは、基準となるスケール値として0[v]−10[v]の入力範囲に対して、電圧0[v]に対しては、0[d]（理論調整値scale[Lo]）、電圧10[v]に対しては、30000[d]（理論調整値scale[Hi]）の対応関係が設定される。
【００７４】
次に、校正段階において、電圧0[v]の印加に対する内部Ａ／Ｄ変換値（校正値[Lo]）が0[d]、電圧10[v]の印加に対する内部Ａ／Ｄ変換値（校正値[Hi]）が32000[d]であったとすると、校正値（内部Ａ／Ｄ変換値）と理論調整値scale（外部Ａ／Ｄ変換値）との関係は図５（ａ）の直線Ａのようになる。なお、この例では、説明の便宜上、原点（0[d]）を合わせるように、入力値をシフト、すなわち[Lo]側の差分だけ [Hi]側も差し引くように補正することを前提としているが、計測値をそのまま用いるようにしても良い。
【００７５】
次に、現地での調整段階において、電圧0[v]の印加に対する内部Ａ／Ｄ変換値（機器調整値[Lo]）が3200[d]、電圧10[v]の印加に対する内部Ａ／Ｄ変換値（機器調整値[Hi]）が32000[d]であったとすると、調整値（内部Ａ／Ｄ変換値）と理論調整値scale（外部Ａ／Ｄ変換値）との関係は図５（ａ）の直線Ｂのようになる。なお、この例では、機器調整値[Hi]を校正値[Hi]に合わせるようにシフトしているが、計測値をそのまま用いるようにしても良い。
【００７６】
このとき、式（１Ｌ），式（１Ｈ）から理論調整値[Lo]＝3000、理論調整値[Hi]＝30000となるが、これは、機器調整値[Lo]、機器調整値 [Hi]をそれぞれ、校正値のスケール（すなわち内部Ａ／Ｄ変換値のスケール）から理論調整値のスケール（外部Ａ／Ｄ変換値のスケール）に変換することを意味している。すなわち、式（２Ｌ），式（２Ｈ）で算出される補正値は外部Ａ／Ｄ変換値のスケール上での補正値を意味する。
【００７７】
このように、稼動側では、ＣＰＵモジュール２から指定された入力範囲のデジタル値（理論調整値scale）と校正値から調整用スケール変換データ（直線Ａ）を求め、入力した機器調整値をこの調整用スケール変換データによってスケール変換して、補正値を求め、該補正値を待機側へ送信しているのである。
【００７８】
そして、待機側では、この補正値から式（３Ｌ），式（３Ｈ）により、機器補正値[Lo]、機器補正値[Hi]を計算する。この式（３Ｌ），式（３Ｈ）は、補正値を外部Ａ／Ｄ変換値のスケールから内部変換Ａ／Ｄ変換値のスケールへ変換する処理であり、機器補正値は、内部変換Ａ／Ｄ変換値のスケール上での値を意味している。
【００７９】
そして、待機側の出荷時の校正値に対してこの機器補正値を加算することによって、機器調整値をそれぞれ[Lo]側、[Hi]側について求める（式（４Ｌ）,式（４Ｈ））。このときの校正値と機器調整値は、それぞれ図５（ｂ）の直線Ｃ、直線Ｄのようになる。
【００８０】
この機器調整値を用いて、式（５）により計測値を修正して、ＣＰＵモジュール２へ出力するのである。
【００８１】
すなわち、待機側では受信した補正値をもとに調整用スケール変換データ（直線Ｃ）によって、待機用の補正値である機器補正値を算出し、該機器補正値を用いて、待機側の機器調整値を求めて、計測値を修正し出力値を算出しているのである。
【００８２】
以上、本実施の形態によれば、入力範囲のデジタル値（理論調整値scale）と校正値から調整用スケール変換データを求め、入力した機器調整値をこの調整用スケール変換データによってスケール変換して補正値を求め、該補正値を待機側へ送信し、待機側では受信した補正値をもとに待機側の調整用スケール変換データによって、待機側の補正値である機器補正値を算出し、該機器補正値を用いて待機側の機器調整値を求めて、計測値を修正しＣＰＵモジュールへの出力値を算出する。
【００８３】
これにより、現地の外部機器との接続に伴う調整は、最初に稼動側モジュールに対してのみ行えば良く、待機側モジュール、およびその後の交換したアナログ入力モジュールについては、最初の稼動側モジュールで計算した補正値を用いることによって、外部機器の特性に合わせる調整を自動的に行うことができるので、現地調整の手間が省け、作業効率が向上する。
【００８４】
本発明は、上述した実施の形態に限定されること無く、その要旨を逸脱しない範囲で種々変形して実施をすることができる。
たとえば、稼動側から待機側へ補正値に送信の都度インクリメントされる連番を付して周期的に送るようにし、待機側はこの補正値の受信によって応答を返すようにしても良い。これにより、運用中に待機側が故障したときに活線状態で交換されたときでも稼動側から待機側へ補正値が送られ、稼動側においてその応答によって待機側の健全性を確認することができる。
【００８５】
また、上述したように補正値送信手段４７は、理論調整値と理論調整スケール値（理論調整値scale）との差分を補正値として送信しても良いが、調整値変換手段４４で算出する理論調整値または基本情報を用いてこのデータに変換可能なデータを補正値として送信するようにしても良い。
【符号の説明】
【００８６】
１  アナログ入力二重化装置
２  ＣＰＵモジュール
３  バス
５  通信ケーブル
９  外部機器
１０  アナログ入力モジュール
１１  ＣＰＵ回路
１２  ＡＤＣ（Ａ／Ｄ変換器）
１４  ＭＰＸ（マルチプレクサ）
１５  ＢＵＳ  Ｉ／Ｆ
１９  サンプルホールド回路（ＳＨ）
２１  送信回路
２２  受信回路
２３  絶縁回路
４０  記憶部
４１  ＣＰＵＩ／Ｆ手段
４２  基本情報登録手段
４３  計測値入力手段
４４  調整値変換手段
４５  補正値算出手段
４６  出力値算出手段
４７  補正値送信手段
４８  補正値受信手段
４９  コマンド送受信手段
５０  機器補正値変換手段
５１  機器調整値算出手段
５２  稼動／待機判定手段  
９６  通信部
９７  入力部
９８  入力回路
９９  従来のアナログ入力モジュール
１００  従来のアナログ入力二重化装置
【図１】
0005477070.tif 000002
【図２】
0005477070.tif 000003
【図３】
0005477070.tif 000004
【図４】
0005477070.tif 000005
【図６】
0005477070.tif 000006
【図７】
0005477070.tif 000007
【図５】
0005477070.tif 000008