(57)【要約】  【課題】  操作が容易で使い勝手がよく、特殊なプログラムがなくても分析機器の遠隔監視や遠隔操作が可能になり、しかも低コストで製造可能な分析機器用コントローラを提供する。  【解決手段】  液体クロマトグラフ等の分析機器１０に、ネットワークインターフェース１０６を備えるコントローラ１２を組み込み、そのコントローラ１２上で、機器制御部１０８、ＣＧＩ１１０、Ｗｅｂサーバ１１２等のプログラムを動作させる。ユーザは、パソコン１４にインストールされたＷｅｂブラウザ１５０を用いて、ＬＡＮ１６経由でＷｅｂサーバ１１２にアクセスし、分析機器１０の動作状態の確認、分析機器１０の制御パラメータの設定、分析の開始／中断／停止等を行うことができる。【選択図】  図１
2005227144.tif 000002
【特許請求の範囲】
【請求項１】
所定の分析機器に組み込んで使用するコントローラであって、
前記分析機器全体を制御するための機器制御回路、所定のデータ通信ネットワークに接続するためのネットワークインターフェース回路、及び、前記ネットワークインターフェース回路を通じて所定の通信プロトコルで外部の端末と通信を行うサーバプログラムを含む組み込みプログラムを備え、
前記サーバプログラムは、
外部の端末から、前記分析機器の動作状態を示す情報の取得要求を受けたときに、前記分析機器の動作状態を示す情報を前記外部端末に送信する処理、及び、
外部の端末から、前記分析機器の動作を制御するためのパラメータの設定要求を受けたときに、該設定要求に応じて前記機器制御回路を通じて前記パラメータを設定する処理、
を実行することを特徴とする分析機器用コントローラ。
【請求項２】
前記ネットワークインターフェース回路は、イーサネット規格（IEEE802.3）（「イーサネット」は登録商標）に準拠していることを特徴とする請求項１に記載の分析機器用コントローラ。
【請求項３】
前記サーバプログラムは、ＨＴＴＰで前記外部端末と通信することを特徴とする請求項１又は２に記載の分析機器用コントローラ。
【請求項４】
前記組み込みプログラムは、前記機器制御回路を通じて前記分析機器の動作を制御する制御プログラムを含み、前記サーバプログラムは、前記制御プログラムから前記分析機器の動作状態を示す情報を取得し、前記制御プログラムを通じて前記パラメータの新たな設定を前記機器制御回路に送ることを特徴とする請求項１〜３のいずれかに記載の分析機器用コントローラ。
【請求項５】
前記組み込みプログラムは、更に、分析機器の設定及び動作に関する情報を二以上の分析機器用コントローラ間で共有するためのコントローラ間通信プログラムを含むことを特徴とする請求項１〜４のいずれかに記載の分析機器用コントローラ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、高速液体クロマトグラフ等の分析機器の動作を制御するためのコントローラに関する。
【背景技術】
【０００２】
液体クロマトグラフ（以下、ＬＣと呼ぶ）のような分析機器を使用するには、通常、その動作を制御するためのコントローラが必要である。例えば、ＬＣの場合、その動作を制御するには以下のような方法が採られている。
・ＬＣ専用の制御用ファームウェア（組み込みプログラム）を搭載した独立の制御ユニットを製造し、通信ケーブルでＬＣに接続する。
・パーソナルコンピュータ（以下、パソコンと呼ぶ）等の汎用コンピュータにＬＣ専用の制御用プログラムをインストールすることによりコントローラを構成し、通信ケーブルでＬＣに接続する。
【０００３】
独立の制御ユニットは、製造にコストがかかる。また、それに搭載するファームウェアは、一般に製品ごとに異なっているため、ファームウェアの開発や修正には製品固有の情報が必要となり、プログラム開発者にとって負担の大きい作業となる。一方、汎用コンピュータに制御用プログラムをインストールする場合、そのプログラムには、ＬＣを制御する機能だけではなく、ＬＣの出力データを処理するデータ処理機能も実装するのが通常である。その結果、全体として非常に多機能になり、プログラムの開発や修正に時間とコストがかかる。
【０００４】
また、ユーザの側からみると、多機能なプログラムを使いこなすにはある程度の知識や経験が必要になるため、操作方法の習得に時間がかかる。実際には、分析機器の動作状態を監視するというような定型的な作業でプログラムを利用する機会がかなり多い。このような作業を行う場合、多機能なプログラムよりも、シンプルな機能構成のプログラムの方が使い勝手がよい。ところが、従来の制御用プログラムは、前述したように多機能化しており、使い勝手の点で問題がある。
【０００５】
一方、独立の制御ユニットの場合、前述のような使い勝手の問題はあまりないが、分析機器の動作状態をモニタしたり、分析条件を設定／変更するためには制御ユニットの設置場所まで出向かなければならず、そのために余分な時間がかかる。分析機器の動作状態を遠隔監視できるようにする技術は従来より多数知られている（例えば、特許文献１参照）が、分析条件の設定／変更まで可能にしたものは知られていない。
【特許文献１】特開2000-283935号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
以上のような技術的背景に鑑みて成された本発明の目的は、操作が容易で使い勝手がよく、特殊なプログラムがなくても分析機器の遠隔監視や遠隔操作が可能になり、しかも低コストで製造可能な分析機器用コントローラを提供することにある。
【課題を解決するための手段】
【０００７】
上記課題を解決するために成された本発明に係る分析機器用コントローラは、
所定の分析機器に組み込んで使用するコントローラであって、
前記分析機器全体を制御するための機器制御回路、所定のデータ通信ネットワークに接続するためのネットワークインターフェース回路、及び、前記ネットワークインターフェース回路を通じて所定の通信プロトコルで外部の端末と通信を行うサーバプログラムを含む組み込みプログラムを備え、
前記サーバプログラムは、
外部の端末から、前記分析機器の動作状態を示す情報の取得要求を受けたときに、前記分析機器の動作状態を示す情報を前記外部端末に送信する処理、及び、
外部の端末から、前記分析機器の動作を制御するためのパラメータの設定要求を受けたときに、該設定要求に応じて前記機器制御回路を通じて前記パラメータを設定する処理、
を実行することを特徴とする。
【０００８】
前記ネットワークインターフェース回路は、イーサネット規格（IEEE802.3）に準拠したものとすることができる。
【０００９】
前記サーバプログラムは、ＨＴＴＰで前記外部端末と通信する構成とすることができる。
【００１０】
前記組み込みプログラムは、前記機器制御回路を通じて前記分析機器の動作を制御する制御プログラムを含み、前記サーバプログラムは、前記制御プログラムから前記分析機器の動作状態を示す情報を取得し、前記制御プログラムを通じて前記パラメータの新たな設定を前記機器制御回路に送る構成とすることができる。
【００１１】
前記組み込みプログラムは、更に、分析機器の設定及び動作に関する情報を二以上の分析機器用コントローラ間で共有するためのコントローラ間通信プログラムを含む構成とすることができる。「分析機器の設定及び動作に関する情報」の例としては、分析機器のグループ分け（ネットワーク上の所属ドメイン）に関する情報、複数の分析機器の分析動作を同期又は連携させる場合に必要となる制御情報等が挙げられる。
【発明の効果】
【００１２】
本発明に係る分析機器用コントローラは、独立の制御ユニットを用いる方法やパソコン等の汎用コンピュータに制御用プログラムをインストールする方法に比べて、低コストで開発及び製造することができる。また、分析機器の動作状態の監視や分析条件の設定／変更といった定型的な作業に関連する機能に特化したシンプルな機能構成としたため、使い勝手がよく、操作方法の習得も容易である。
【００１３】
また、ネットワークインターフェース回路をイーサネット規格に準拠したものとする構成によれば、一般にローカルエリアネットワーク（ＬＡＮ）等で広く使われている汎用的なネットワークに本発明のコントローラを接続することができるため、ＬＡＮに接続されているパソコン等を本発明の外部端末として利用することができる。
【００１４】
また、サーバプログラムがＨＴＴＰで外部端末と通信する構成では、多くのパソコンに標準的に搭載されているＷｅｂブラウザを、情報の表示やパラメータの設定等を行うためのクライアントアプリケーションプログラムとして利用することができるため、ユーザ端末（外部端末）に特殊なプログラムを用意する必要がなくなる。
【００１５】
また、組み込みプログラムが制御プログラムを含む構成では、サーバプログラムが制御プログラムとは独立しているため、制御系に影響を与えることなく、サーバプログラムのプログラム本体やその動作設定ファイル等を更新することができる。これにより、端末に表示させる情報の内容やパラメータの設定内容を容易にカスタマイズできるようになる。
【００１６】
また、組み込みプログラムがコントローラ間通信プログラムを含む構成では、分析機器の設定及び動作に関する情報を随時交換することができるため、例えば、端末でいずれかの分析機器のコントローラにアクセスして、同一グループに含まれるすべての分析機器の一覧を閲覧し、更にそこから他の分析機器の動作状態の確認画面に移動する、といったことが可能になる。また、複数の分析機器の分析動作を同期又は連携させて一つの分析を行うことも可能になる。
【発明を実施するための最良の形態】
【００１７】
本発明の一実施形態について図面を参照しながら説明する。図１は、本発明に係る分析機器用コントローラ（以下、単にコントローラと呼ぶ）を応用した分析システムの一例の概略構成を示すブロック図である。このシステム１は、コントローラ１２が組み込まれた分析機器１０、パソコン１４、及び、イーサネット規格に準拠したＬＡＮ１６を含む。
【００１８】
分析機器１０は、分析部１８とコントローラ１２から主として構成されている。分析部１８は、実際に試料の分析を行う部分であって、例えばＬＣの場合、送液部、インジェクタ、カラム、検出器等がこれに含まれる。コントローラ１２は、箱型、ボード型あるいはカード型といった適宜形状の部品であって、例えばパソコンに機能拡張ボードを組み込むようにして分析機器１０に組み込まれる。コントローラ１２は、ＣＰＵ（図示せず）、ファイルシステム１０２が構築された記憶装置、データの読み出しや書き込みが可能なメモり１０４、ネットワークインターフェース（I/F）１０６等を備えている。
【００１９】
ファイルシステム１０２には、コントローラ１２の動作に必要なプログラムが保存されている。このプログラムには、例えば、オペレーティングシステム（ＯＳ）を構成するプログラムやライブラリ、ＯＳ上で動作するアプリケーション、アプリケーションが使用するデータ等が保存されている。アプリケーションには、Ｗｅｂサーバ、ＣＧＩアプリケーション、スクリプト（例えば、JavaScript（登録商標））等が含まれている。
【００２０】
メモリ１０４には、分析機器１０の状態を示すパラメータ（以下、状態パラメータと呼ぶ）や分析機器１０の動作を制御するためのパラメータ（以下、制御パラメータと呼ぶ）が保存されている。例えばＬＣの場合、制御パラメータには、オートサンプラで選択されている試料の種類や注入量、カラムを流れている溶媒の流量、カラムの温度、検出器の検出波長（分光光度計を検出器として用いる場合）等が含まれる。また、状態パラメータには、前記制御パラメータの他、分析開始からの経過時間、機器の動作状態（例えば「分析開始前」「分析実行中」「一時中断」「分析終了」）等が含まれる。
【００２１】
ネットワークインターフェース１０６は、イーサネット規格に準拠したもので、ＬＡＮ１６内で一意のＩＰアドレスが割り当てられている。
【００２２】
コントローラ１２は、いずれも所定のプログラムを実行することによりソフトウェア的に構成された機能部である機器制御部１０８、ＣＧＩアプリケーション１１０（以下、ＣＧＩ１１０と呼ぶ）、Ｗｅｂサーバ１１２およびコントローラ間通信部１１４を備えている。これらの機能部の動作については後述する。
【００２３】
パソコン１４は、ＣＰＵ（図示せず）、記憶装置（ＲＯＭ、ＲＡＭ、ハードディスク等。図示せず）、入力装置（キーボード、マウス等。図示せず）、表示装置１４２（ＣＲＴ、ＬＣＤ等）、ネットワークインターフェース（I/F）１４４等を備えている。パソコン１４には、オペレーティングシステム（図示せず）の他に、Ｗｅｂブラウザ１５０、ＸＭＬモジュール１５２といったアプリケーションやライブラリがインストールされている。Ｗｅｂブラウザ１５０にはJavaScript実行エンジンが搭載されている。なお、ＸＭＬモジュール１５２としては、例えば、マイクロソフト社が提供しているライブラリ「MSXML」を利用することができる。
【００２４】
ユーザがＷｅｂブラウザ１５０を起動し、目的の分析機器に対応するＵＲＬにアクセスすると、Ｗｅｂブラウザ１５０のウィンドウにトップページが表示される。図２はトップページの一例を示したものである。このトップページ２００には、以下のようなハイパーリンクを含むメニューが含まれている。
・分析機器の動作状態の確認
・制御パラメータの設定
・分析の開始／中断／停止
【００２５】
分析機器の動作状態の確認処理は、次のような手順で実行される。
【００２６】
ユーザがトップページ２００の「分析機器の動作状態の確認」リンクをクリックすると、Ｗｅｂブラウザ１５０からＷｅｂサーバ１１２に動作状態確認画面２０２の取得要求が送信される。この要求を受けたＷｅｂサーバ１１２は、図２に示した動作状態確認画面２０２を表示するためのＨＴＭＬ文書１５４（図１）をＷｅｂブラウザ１５０に送信する。ＨＴＭＬ文書１５４を受け取ったＷｅｂブラウザ１５０は、そのＨＴＭＬ文書に埋め込まれたJavaScriptコードを実行することにより、JavaScriptモジュール１５６（以下、JavaScript１５６と呼ぶ）を生成する。JavaScript１５６は、ＣＧＩ１１０宛の状態パラメータ取得要求をＷｅｂサーバ１１２に送信する。
【００２７】
前記状態パラメータ取得要求を受けたＷｅｂサーバ１１２は、該当するＣＧＩ１１０を起動し、状態パラメータ取得要求を渡す。この要求を受けたＣＧＩ１１０は、機器制御部１０８に機器の状態を問い合わせる。この問い合わせを受けた機器制御部１０８は、メモリ１０４から各状態パラメータの値を読み出し、ＣＧＩ１１０に返す。各状態パラメータの値を受け取ったＣＧＩ１１０は、各状態パラメータの名前及び値を所定形式で記述したＸＭＬファイルオブジェクト１５８を生成し、それをＷｅｂサーバ１１２に渡す。Ｗｅｂサーバ１５０は、ＸＭＬファイルオブジェクト１５８と、同オブジェクト１５８をＨＴＭＬ形式に変換する規則を記述したＸＳＬＴオブジェクト１６０とを、Ｗｅｂブラウザ１５０に送信する。
【００２８】
前記ＸＭＬファイルオブジェクトを受け取ったＷｅｂブラウザ１５０では、JavaScript１５６が、ＸＭＬモジュール１５２を用いて、ＸＭＬファイルオブジェクト１５８及びＸＳＬＴオブジェクト１６０を所定の方法で処理することにより、各状態パラメータの名前及び値を含む動作状態確認画面２０２のＨＴＭＬコードを出力する。Ｗｅｂブラウザ１５０は、JavaScript１５６が出力するＨＴＭＬコードを解析し、動作状態確認画面２０２を表示装置１４２に表示する。
【００２９】
分析機器の制御パラメータの設定処理は、次のような手順で実行される。
【００３０】
ユーザがトップページの「分析機器の制御パラメータの設定」リンクをクリックすると、Ｗｅｂブラウザ１５０に各パラメータの名前及び値を所定形式で表示したパラメータ設定画面２０４が表示される（図２）。パラメータ設定画面２０４の表示手順は、動作状態確認画面２０２の場合とほぼ同様である。ただし、動作状態確認画面２０２では、すべてのパラメータの値は単に表示されるだけであるのに対し、パラメータ設定画面２０４では、ＨＴＭＬのフォームや入力コンポーネント（テキストボックス等）を利用して、いくつかのパラメータの値が編集可能な形で表示される。このように、同一のＸＭＬファイルオブジェクト１５８から画面の種類に応じて異なるＨＴＭＬコードを生成するには、画面の種類に応じて変換処理を分岐させるようにＸＳＬＴオブジェクト１６０を記述しておけばよい。
【００３１】
パラメータ設定画面２０４において、ユーザは、変更可能なパラメータの入力欄に所望の値を入力し、送信ボタン２０５を押下する。この操作を受けたJavaScript１５６は、各パラメータの入力値をチェックし、不正な入力値があれば警告を出す。例えば、正の値を設定すべきパラメータの入力欄に負の値を入力した場合、あるいは、設定可能範囲の上限及び下限が決まっているパラメータの入力欄に設定可能範囲外の値を入力した場合などに警告が出される。
【００３２】
入力値がすべて正常であれば、JavaScript１５６は、変更されたパラメータの値をＷｅｂサーバ１１２経由でＣＧＩ１１０に送信する。前記パラメータの値を受け取ったＣＧＩ１１０は、機器制御部１０８に対して、該当するパラメータの値を新たに設定された値に変更するよう指示する。この指示を受けた機器制御部１０８は、該当するパラメータの値に対応するメモリ１０４の領域に新たな値を格納する。これ以降は、新たなパラメータ設定の下で分析が行われることになる。
【００３３】
分析の開始／中断／停止の処理は、次のような手順で実行される。
【００３４】
ユーザが「分析機器の動作状態の確認」リンクをクリックすると、Ｗｅｂブラウザ１５０に動作状態変更画面２０６が表示される（図２）。動作状態変更画面２０６の表示手順は、前記動作状態確認画面２０２の場合とほぼ同様である。ただし、動作状態変更画面２０６には、動作状態確認画面２０２の内容に加えて、分析の開始／中断／停止の指示を出すためのボタン２０８が設けられている。
【００３５】
ユーザが開始／中断／停止のいずれかに対応するボタン２０８を押下すると、JavaScript１５６が、押下されたボタンに対応する操作が現在の分析機器の動作状態に対して実行可能であるかどうかをチェックする。例えば、分析機器の動作状態が「停止中」であれば、中断操作や停止操作は意味を成さない。そこで、このような場合、JavaScript１５６が、当該操作は実行不能であることを示すメッセージを出す。なお、予め現在の分析機器の動作状態に対して実行可能な操作のボタンだけを表示したり、そのようなボタン以外を操作不能にすることで、前記チェックを省略することも可能である。
【００３６】
選択された操作が実行可能であれば、JavaScript１５６は、その操作の実行要求をＷｅｂサーバ１１２経由でＣＧＩ１１０に送信する。この要求を受けたＣＧＩ１１０は、分析部１８を要求された動作状態に移行させるよう機器制御部１０８に指示を出す。機器制御部１０８は、分析部１８を指示された動作状態に移行させる。
【００３７】
次に、コントローラ間通信部１１４の機能について説明する。図３に示したように、ＬＡＮ１６に複数の分析機器１０Ａ、１０Ｂが接続されている場合、一の分析機器１０Ａのコントローラ間通信部１１４は、他の分析機器１０Ｂのコントローラ間通信部１１４と、分析機器の設定及び動作に関する情報を随時交換することができる。従って、例えば、Ｗｅｂブラウザ１５０でいずれかの分析機器１０のＷｅｂサーバ１１２にアクセスして、同一グループに含まれるすべての分析機器１０の一覧を閲覧し、更にそこから他の分析機器１０の動作状態の確認画面に移動する、といったことが可能である。また、複数の分析機器１０の分析動作を同期又は連携させて一つの分析を行うことも可能である。なお、このようなコントローラ間通信は、Ｗｅｂサーバ１１２及びＣＧＩ１１０を経由してＴＣＰ／ＩＰで行ってもよいし、より簡単な通信プロトコルであるＵＤＰを使って、コントローラ間通信部１１４同士が直接通信するようにしてもよい。
【００３８】
以上のように、本実施形態のシステムでは、ＴＣＰ／ＩＰ、ＨＴＴＰ、ＨＴＭＬ、ＸＭＬ、ＸＳＬＴ、イーサネット、JavaScriptといった様々な標準技術またはデファクトスタンダード技術を積極的に活用している。従って、本発明に係るコントローラさえあれば、後はイーサネット規格のＬＡＮ、パソコン、Ｗｅｂブラウザといった汎用の情報機器及び情報インフラを利用することで、簡単に上記のようなシステムを構築することができる。
【図面の簡単な説明】
【００３９】
【図１】本発明に係る分析機器用コントローラを応用した分析システムの一例の概略構成を示すブロック図。
【図２】Ｗｅｂブラウザに表示される画面の遷移を表す説明図。
【図３】分析機器の設定及び動作に関する情報を複数の分析機器間で交換する仕組みを示すブロック図。
【符号の説明】
【００４０】
１…分析システム
１０…分析装置
１２…コントローラ
１４…パソコン
１６…ＬＡＮ
【図１】
2005227144.tif 000003
【図２】
2005227144.tif 000004
【図３】
2005227144.tif 000005