以下、本発明の実施の形態に係る測定装置の設定方法、測定システム、測定装置用データ処理装置、及びコンピュータプログラムについて、図面を参照しながら具体的に説明する。
図1は、本発明の実施の形態に係る測定システムの構成を示す模式図である。図1に示すように、本実施の形態に係る測定システム1は、粒子分析装置2と、データ処理装置3とによって主として構成されている。かかる測定システム1は、一般的に粒子等の測定を実施する企業施設、研究施設、病院または病理検査施設等の施設内に設けられている。粒子分析装置2とデータ処理装置3とは、互いにデータ通信が可能であるように電気信号ケーブル7にて接続されている。
図2は、本発明の実施の形態に係る測定システムの構成を示す斜視図である。本実施の形態に係る粒子分析装置2は、粒子画像を撮像し、この粒子画像から粒子像を含む部分画像を生成し、この部分画像をデータ処理装置3へ送信するように構成されている。データ処理装置3には、後述するようなアプリケーションプログラム34aがインストールされており、このアプリケーションプログラム34aによって、受信した部分画像に対して画像処理、解析処理等の処理を実行し、また粒子分析装置2の測定条件の設定処理を実行するようになっている。
図3は、本発明の実施の形態に係るの粒子分析装置の構成を示すブロック図であり、図4は、本発明の実施の形態に係る粒子分析装置が備える測定部2aの構成を示す模式図である。図3に示すように、粒子分析装置2は、測定部2aと、画像処理部2bと、制御部2cとによって主として構成されている。
図4に示すように、測定部2aは、試料液容器21と、シースフローセル22と、シリンジポンプ23,24,25と、シース液容器26と、排出液容器27と、ストロボランプ28と、ビデオカメラ29とから主として構成されており、試料液容器21から粒子懸濁液をシースフローセル22へ供給し、この粒子懸濁液を取り囲むようにシース液をシースフローセル22へ送り込んで、扁平な懸濁液流を形成し、その懸濁液流に含まれる粒子をビデオカメラ29によって撮像するようになっている。
測定部2aの構成をさらに詳しく説明する。図3に示すように、シースフローセル22は、シース液受給口22aと、試料液受給口22bと、シース液と試料液の混合液を排出する排出口22cとを有する。試料液容器21は上部が開放されており、内部に試料液を貯留することが可能であるように構成されており、その下部に排出口が設けられている。試料液容器21の排出口は流路を介して試料液受給口22bに接続されている。試料液容器21の排出口と試料液受給口22bとの間の流路には電磁バルブ(以下、バルブという)21aが設けられている。また、試料液容器21内の試料液を攪拌するための攪拌装置21bを備える。試料液は粒子を含む粒子懸濁液からなる。
シリンジポンプ23は吐出口23a、シース液供給口23bを有する。吐出口23aは、流路を介してシースフローセル22のシース液受給口22aに接続されている。吐出口23aとシース液受給口22aの間の流路にはバルブ23cが設けられている。シース液容器26は内部にシース液を貯留することが可能であるように構成されており、その下部に排出口が設けられている。シース液容器26の排出口は流路を介してシース液供給口23bに接続されている。シース液容器26の排出口とシース液供給口23bの間の流路にはバルブ26aが設けられている。
シリンジポンプ24は2つの吐出口24a、吸引口24bを有し、シリンジポンプ25は2つの吸引口25a、シース液供給口25bを有する。シリンジポンプ24の吐出口24aは流路を介してシリンジポンプ25の吸引口25aに接続されている。
シースフローセル22の排出口22cは流路を介してシリンジポンプ24の吸引口24bに接続され、当該流路は途中から分岐され、分岐先が排出液容器27の上部に開放された開口部へ接続されている。排出口22cから流路の分岐点までの間には、バルブ22dが設けられており、当該分岐点から吸引口24bの間の流路にはバルブ24cが設けられている。また、前記分岐点から排出液容器27の開口部の間の流路にはバルブ22eが設けられている。
そして、シリンジポンプ25のシース液供給口25bは流路を介してシース液容器26の排出口に接続されている。シース液供給口25bとシース液容器26の排出口の間の流路にはバルブ26bが設けられている。
シリンジポンプ23,24は単一の第1駆動源23dによって連動して駆動され、シリンジポンプ25は第2駆動源25cによって駆動されるようになっている。第1駆動源23dは、ステッピングモータ23eと、モータ23eの回転運動を直線運動に変換してシリンジポンプ23と24とに伝達する伝達機構23fとを備える。伝達機構23fは、ステッピングモータ23eの駆動軸に備えられた駆動プーリとタイミングベルトが張架された従動プーリから構成され、ステッピングモータ23eの回転運動を直線運動に変換する。
第2駆動源25cは、ステッピングモータ25dと、モータ25dの回転運動を直線運動に変換してシリンジポンプ25に伝達する伝達機構25eを備える。伝達機構25eは、ステッピングモータ25dの駆動軸に備えられた駆動プリーとタイミングベルトが張架された従動プーリから構成され、ステッピングモータ25dの回転運動を直線運動に変換する。試料液容器21には、開放された上部から撹拌装置21bが挿入され、容器21に貯留された試料液が撹拌されるようになっている。
また、シースフローセル22には、シース液に包まれて細く絞られた試料液流に光を照射するためのストロボランプ28と、試料液流中の粒子を撮像するための対物レンズ28a、リレーレンズ28b、およびビデオカメラ29が設けられている。対物レンズ28aは、5倍、10倍、20倍の3種類の倍率のものが設けられており、この3種類の対物レンズ28aの中から撮像に使用するものを選択的に設定することが可能であるように構成されている。また、リレーレンズ28bは、2倍、0.5倍の2種類の倍率のものが設けられており、この2種類のリレーレンズ28bの中から撮像に使用するものを選択的に設定することが可能であるように構成されている。
一方、画像処理部2bは、CPU、ROM、RAM、画像処理プロセッサ等が設けられており、図3に示すように、測定部2aと電気信号ケーブルで接続されている。また、画像処理部2bは、測定部2aのビデオカメラ29から粒子画像を取り込んで、この粒子画像に対して画像処理を実行するようになっている。この画像処理の結果、粒子画像に含まれる粒子像を含む部分画像が切り出されることとなる。また、画像処理部2bは、電気信号ケーブルを介して制御部2cに接続されており、電気信号ケーブル7を介してデータ処理装置3に接続されている。
制御部2cは、CPU29a、ROM29b、RAM29c、入出力インタフェース29dが設けられている。CPU29aは、ROM29bに記憶されているコンピュータプログラムおよびRAM29cにロードされたコンピュータプログラムを実行することが可能である。ROM29bは、マスクROM、PROM、EPROM、EEPROM等によって構成されており、CPU29aに実行される制御プログラム29eおよびこれに用いるデータ等が記録されている。RAM29cは、SRAMまたはDRAM等によって構成されている。RAM29cは、ROM29bに記録されている制御プログラム29eを実行するときに、CPU29aの作業領域として利用される。
図5は、制御プログラム29eの構成を示す模式図である。制御プログラム29eは、オブジェクト指向プログラミングによって作成されたコンピュータプログラムであり、複数のオブジェクト29f〜29hを有している。オブジェクト29fは、“MeasSettings”という名称であり、測定部2aを各種設定を行う機能を有する。オブジェクト29gは、“LimResult”という名称であり、測定部2aの測定結果を格納する機能を有する。また、オブジェクト29hは、“PASettings”という名称であり、測定部2aの解析条件を設定する機能を有する。なお、これらのオブジェクト29f〜29hは、制御プログラム29eに含まれるオブジェクトのうちの一部であり、当該制御プログラム29eには、例えば測定部2aに含まれる複数の圧力センサ(図示せず)から測定部2aの各部の圧力値を読み出す機能を有するオブジェクト等、他のオブジェクトも含まれているが、説明を簡単にするために省略する。かかるオブジェクト29f〜29hが機能することにより、粒子分析装置2の動作が制御され、また粒子分析装置2の測定結果が保持されることとなる。
各オブジェクト29f〜29hは、夫々複数のプロパティ(属性)を有しており、後述するようにデータ処理装置3からプロパティを設定することができるようになっている。ここでは、オブジェクト29fがプロパティ29i〜29kを有しており、オブジェクト29gがプロパティ29m〜29oを有している場合について説明する。
プロパティ29iは、対物レンズ28aの設定用のプロパティであり、名称は“OLensUnit”とされている。このプロパティ29iは、“1”,“2”,“3”のいずれかの設定値によって設定されるようになっており、設定値“1”で設定された場合には、拡大倍率が5倍に設定され、設定値“2”で設定された場合には、拡大倍率が10倍に設定され、設定値“3”で設定された場合には、拡大倍率が20倍に設定されるようになっている。プロパティ29jは、測定部2aの目標温度設定用のプロパティであり、名称は“TempTarget”とされている。このプロパティ29jは、整数の設定値によって設定されるようになっており、例えば設定値“250”で設定された場合には、測定部2aの目標温度が25℃に設定されるようになっている。プロパティ29kは、測定の繰り返し回数設定用のプロパティであり、名称は“MaxMeasCount”とされている。このプロパティ29kは、整数の設定値によって設定されるようになっており、例えば設定値“2”で設定された場合には、測定の繰り返し回数が2回に設定されるようになっている。
また、プロパティ29mは、粒子分析装置2の測定結果の一つである粒子濃度のデータを保持するためのプロパティであり、名称は“Density”とされている。このプロパティ29mは、浮動小数点型のデータがセットされるようになっており、例えば測定結果の粒子濃度が5000の場合には、“5000”の値がセットされるようになっている。プロパティ29nは、粒子分析装置2の測定結果の一つである小粒子率のデータを保持するためのプロパティであり、名称は“DSSizeRatio”とされている。このプロパティ29nは、浮動小数点型のデータがセットされるようになっており、例えば測定結果の小粒子率が20.5の場合には、“20.5”の値がセットされるようになっている。プロパティ29oは、粒子分析装置2の測定結果の一つである中粒子率のデータを保持するためのプロパティであり、名称は“DMSizeRasio”とされている。このプロパティ29oもまた、浮動小数点型のデータがセットされるようになっている。
なお、これらのプロパティ29i〜29k及び29m〜29oは、オブジェクト29f,29gが有するプロパティのうちの一部であり、オブジェクト29f,29gには他のプロパティも設けられているが、説明を簡単にするために省略する。
次に、データ処理装置3の構成について説明する。図6は、本発明の実施の形態に係るデータ処理装置3の構成を示すブロック図である。データ処理装置3は、本体31と、画像表示部32と、入力部33とから主として構成されたコンピュータ3aによって構成されている。本体31は、CPU31aと、ROM31bと、RAM31cと、ハードディスク31dと、読出装置31eと、入出力インタフェース31fと、通信インタフェース31gと、画像出力インタフェース31hとから主として構成されており、CPU31a、ROM31b、RAM31c、ハードディスク31d、読出装置31e、入出力インタフェース31f、通信インタフェース31g、および画像出力インタフェース31hは、バス31iによって接続されている。
CPU31aは、ROM31bに記憶されているコンピュータプログラムおよびRAM31cにロードされたコンピュータプログラムを実行することが可能である。そして、後述するようなアプリケーションプログラム34aを当該CPU31aが実行することにより、コンピュータ3aがデータ処理装置3として機能する。
ROM31bは、マスクROM、PROM、EPROM、EEPROM等によって構成されており、CPU31aに実行されるコンピュータプログラムおよびこれに用いるデータ等が記録されている。
RAM31cは、SRAMまたはDRAM等によって構成されている。RAM31cは、ROM31bおよびハードディスク31dに記録されているコンピュータプログラムの読み出しに用いられる。また、これらのコンピュータプログラムを実行するときに、CPU31aの作業領域として利用される。
ハードディスク31dは、オペレーティングシステムおよびアプリケーションプログラム等、CPU31aに実行させるための種々のコンピュータプログラムおよび当該コンピュータプログラムの実行に用いるデータがインストールされている。後述するアプリケーションプログラム34aも、このハードディスク31dにインストールされている。
読出装置31eは、フレキシブルディスクドライブ、CD−ROMドライブ、またはDVD−ROMドライブ等によって構成されており、可搬型記録媒体34に記録されたコンピュータプログラムまたはデータを読み出すことができる。また、可搬型記録媒体34には、コンピュータを本発明に係る測定装置用データ処理装置として機能させるためのアプリケーションプログラム34aが格納されており、コンピュータ3aが当該可搬型記録媒体34から本発明に係るアプリケーションプログラム34aを読み出し、当該アプリケーションプログラム34aをハードディスク31dにインストールすることが可能である。
なお、前記アプリケーションプログラム34aは、可搬型記録媒体34によって提供されるのみならず、電気通信回線(有線、無線を問わない)によってコンピュータ3aと通信可能に接続された外部の機器から前記電気通信回線を通じて提供することも可能である。例えば、前記アプリケーションプログラム34aがインターネット上のサーバコンピュータのハードディスク内に格納されており、このサーバコンピュータにコンピュータ3aがアクセスして、当該アプリケーションプログラム34aをダウンロードし、これをハードディスク31dにインストールすることも可能である。
また、ハードディスク31dには、例えば米マイクロソフト社が製造販売するWindows(登録商標)等のグラフィカルユーザインタフェース環境を提供するオペレーティングシステムがインストールされている。以下の説明においては、本実施の形態に係るアプリケーションプログラム34aは当該オペレーティングシステム上で動作するものとしている。
このアプリケーションプログラム34aは、粒子分析装置2による画像処理の結果得られた画像処理結果データを受信し、受信した画像処理結果データに含まれる部分画像に対して画像処理を実行し、各粒子像の粒径(円相当径)、円形度等を算出する。そして、受信した部分画像をディスプレイ画面にマトリックス状に並べて表示したり、選択されている部分画像の粒子の粒径および円形度を表示したり、処理結果の粒径及び円形度等をデータベースに保存したり、所定の解析処理の結果得られたスキャッタグラム等の図表を表示する等の機能を有する。また、当該アプリケーションプログラム34aは、粒子分析装置2の設定を行う機能も備えている。また、前述したハードディスク31dには、粒子分析装置2の基本設定用の設定値を格納するためのデータベースDB1と、粒子分析装置2の測定条件設定用の設定値を格納するためのデータベースDB2と、粒子分析装置2の測定条件設定用の設定項目を定義するデータベースDB3と、粒子分析装置2を設定する場合の設定値の格納領域並びに設定対象のオブジェクト名及びプロパティ名が格納されたデータベースDB4と、粒子分析装置2が測定を実行した場合の設定値及び測定値の読み出し元のオブジェクト名及びプロパティ名並びに前記設定値及び測定値の書き込み先のデータベース名及びフィールド名が格納されたデータベースDB5と、粒子分析装置2が測定を実行した場合の設定値を格納するデータベースDB6と、粒子分析装置2の測定値を格納するデータベースDB7とが設けられている。
ここで、データベースDB1の構成について説明する。図7は、データベースDB1の構成を示す模式図である。図7に示すように、データベースDB1は、複数のフィールドを有するテーブル形式のデータベースである。このデータベースDB1は、“SYSTEMM”という名称であり、アプリケーションプログラム34aの処理では、この名称を使用して当該データベースDB1が特定されるようになっている。このデータベースDB1に格納される設定値(パラメータ)は、夫々固有の設定項目に対応付けられている。また、各設定項目は、「識別番号」、「ブランクチェック」、「空圧源タイマ」等の種類項目によって区分されており、更に各種類項目は、「システム」、「測定ユニット(測定部)」、「送信」等の分類項目によって区分されている。このように、各設定値は、分類項目、種類項目、設定項目の三段階の階層で区分されている。これにより、ユーザが設定値を探すときに、分類項目、種類項目、設定項目の順で探索することにより容易に目的の設定値に到達することができる。データベースDB1には、設定パラメータのIDが格納されるIDフィールド35aと、分類項目の番号が格納される分類番号フィールド35bと、分類項目の表示名が格納される分類項目表示名フィールド35cと、種類項目の表示名が格納される種類項目表示名フィールド35dと、設定項目名が格納される設定項目名フィールド35eと、設定項目の表示名が格納される設定項目表示名フィールド35fと、設定値が格納されるデータフィールド35gと、設定値のデータ型が格納されるデータ型フィールド35hと、設定値の範囲の最小値が格納される最小値フィールド35iと、設定値の範囲の最大値が格納される最大値フィールド35jと、コンボリストとして表示される項目が格納されるコンボリストフィールド35kとを有している。ここで、分類番号は各分類項目に固有の番号であり、この番号により分類項目を特定することができるように設けられている。また、分類項目表示名、種類項目表示名、設定項目表示名は、夫々画面に表示される分類項目、種類項目、設定項目の名称をいう。これらの分類項目表示名、種類項目表示名、設定項目表示名は、ユーザが理解しやすいように、ユーザがそれらの表示名を見ただけで、その項目の概略が把握できるような名称とされている。また、データ型は、対象となるデータの性質及びデータがとり得る数値の範囲を規定する情報であり、整数型(Int)、長整数型(Long)、浮動小数点型(float型)、選択型(Sel)等が存在する。ここで、選択型とは、予め定義された複数のパラメータ候補から、ユーザが選択して指定する形式のパラメータのデータ型をいう。また、コンボリストとは、パラメータとしてユーザが設定可能なパラメータ候補の集合であり、このパラメータ候補からユーザは所望のパラメータを選択することができる。このコンボリストが設定されているパラメータのデータ型は、全て選択型となる。データベースDB1では、図7に示すように、パラメータ候補が“|”によって区切られて定義されている。即ち、この実施の形態においては、データベースDB1のコンボリストフィールド35kにて、区切り記号“|”で区切られたデータが、パラメータ候補とされている。
なお、データベースDB1には、これらの他にも、アプリケーションプログラム34aの処理で分類項目を特定するために使用される分類項目名が格納される分類項目名フィールド、アプリケーションプログラム34aの処理で種類項目を特定するために使用される種類項目名が格納される種類項目名フィールド等も設けられているが、ここでは説明を簡単にするために省略する。
図7には、データベースDB1の一部が示されている。図7に示した例では、設定項目名“OLensUnit”、設定項目表示名“対物レンズユニット”に対応する設定値“2”と、設定項目名“TempTarget”、設定項目表示名“検出部目標温度”に対応する設定値“250”とが夫々データベースDB1に格納されている。設定項目“OLensUnit”は、データ型として選択型が定義されており、この項目の設定値“2”は、コンボリストに登録されている“5倍”、“10倍”、“20倍”のコンボメニューのうち、左から2番目の“10倍”に対応している。一方、設定項目“TempTarget”は、データ型として整数型が定義されている。
次に、データベースDB2の構成について説明する。図8は、データベースDB2の構成を示す模式図である。図8に示すように、データベースDB2は、複数のフィールドを有するテーブルが複数設けられたデータベースである。このデータベースDB2は、“SOPMDT”という名称であり、アプリケーションプログラム34aの処理では、この名称を使用して当該データベースDB2が特定されるようになっている。また、粒子分析装置2では、例えばラテックス、トナー等の測定対象の試料の種類等によって測定条件が異なり、またユーザによって頻繁に使用する測定条件は異なるので、アプリケーションプログラム34aでは、ユーザの使用頻度の高い複数の測定条件(以下、SOPという)が予め登録されており、この中からユーザが所望のSOPを選択することができるようになっている。よってデータベースDB2にはSOPに対応した複数のテーブルが設けられており、夫々のテーブルに粒子分析装置2の設定データが格納されている。なお、図8には、データベースDB2に含まれるテーブルのうち、ラテックス測定用のSOPに対応するテーブルのみが示されている。アプリケーションプログラム34aの処理においては、SOPMDTという名称と、そのとき指定されているSOPを特定するIDとによって、該当するテーブルが特定されるようになっている。このSOPを特定するIDは、対応するテーブルにレコードとして格納されるようになっている。なお、上述したデータベースDB1は、ただ1つのテーブルのみを有しており、全てのSOPで共通してこのテーブルに格納された設定値が使用される。
データベースDB2に格納されるパラメータには、夫々固有の設定項目が対応付けられている。データベースDB2には、このような設定項目の名称が格納される設定項目名フィールド36aと、設定値が格納されるデータフィールド36bとが設けられている。各パラメータは、設定項目名フィールドに格納されている設定項目名に対応させて、データフィールド36bに格納されるようになっている。ここで、図8には、データベースDB2の一部が示されている。図8に示した例では、設定項目名“MaxMeasCount”に対応する設定値“1”がデータベースDB2に格納されている。
次に、データベースDB3の構成について説明する。図9は、データベースDB3の構成を示す模式図である。図9に示すように、データベースDB3は、複数のフィールドを有するテーブル形式のデータベースである。このデータベースDB3は、“SOPCODEDEF”という名称であり、アプリケーションプログラム34aの処理では、この名称を使用して当該データベースDB3が特定されるようになっている。このデータベースDB3には、データベースDB2に登録された設定値を定義するために、設定パラメータのIDが格納されるIDフィールド37aと、測定終了後に設定値を格納する格納先のデータベース名が格納されるデータベースフィールド37bと、設定項目名を格納する設定項目名フィールド37cと、設定項目の表示名が格納される設定項目表示名フィールド37dと、設定値のデータ型が格納されるデータ型フィールド37eと、設定値のデフォルト値が格納されるデフォルト値フィールド37fと、コンボリストとして表示される項目が格納されるコンボリストフィールド37gと、設定値の範囲の最大値が格納される最大値フィールド37hと、設定値の範囲の最小値が格納される最小値フィールド37iとが設けられている。なお、データ型フィールド37e及びコンボリストフィールド37gは、上述したデータベースDB1のデータ型フィールド35h及びコンボリストフィールド35kと構成が同様であるので、その説明を省略する。なお、データベースDB2には、これらの他にもフィールドが設けられているが、ここでは説明を簡単にするために省略する。
図9には、データベースDB3の一部が示されている。図9に示した例では、設定項目名“MaxMeasCount”、設定項目表示名“繰り返し回数”のレコードがデータベースDB3に登録されている。かかる設定項目“MaxMeasCount”は、データ型として長整数型が定義されており、デフォルト値は“1”、設定値の範囲の最大値は“9999”、最小値は“1”とされている。
次に、データベースDB4の構成について説明する。図10は、データベースDB4の構成を示す模式図である。図10に示すように、データベースDB4は、複数のフィールドを有するテーブル形式のデータベースである。このデータベースDB4は、“CMDMSU”という名称であり、アプリケーションプログラム34aの処理では、この名称を使用して当該データベースDB4が特定されるようになっている。このデータベースDB4には、送信アイテム、即ち粒子分析装置2へ送信する設定項目のIDが格納されるIDフィールド38aと、送信アイテムの表示名が格納されるアイテム表示名フィールド38bと、設定値の入力元(読み出し元)のテーブル名が格納される入力テーブルフィールド38cと、前記テーブルにおける入力元の設定項目が格納される入力項目フィールド38dと、設定対象のオブジェクト名が格納されるオブジェクトフィールド38eと、前記オブジェクトにおける設定対象のプロパティ名が格納されるプロパティフィールド38fと、設定のタイミングに関するフラグが格納されるフラグ1フィールド38g,フラグ2フィールド38h,フラグ3フィールド38iとが設けられている。なお、データベースDB4には、これらの他にもフィールドが設けられているが、ここでは説明を簡単にするために省略する。
IDフィールド38aに格納されているIDは、送信アイテムの送信順序を示す番号でもあり、アプリケーションプログラム34aを実行中のCPU31aは、粒子分析装置2に設定値を含むデータを送信するときに、このIDの順番に従って設定対象を特定するデータ及び設定値等を読み出し、粒子分析装置2に送信するようになっている。アイテム表示名フィールド38bに格納されているアイテム表示名は、ユーザが理解しやすいように、ユーザがそれらの表示名を見ただけで、その送信アイテムの概略が把握できるような名称とされている。かかるアイテム表示名は、このデータベースDB4への新規データの登録及びデータ更新を行うためのウィンドウ等において、各レコードに対応付けて表示される。また、入力テーブル名は、設定値を読み出す対象のデータベースを特定するデータであり、ここにはデータベースDB1であれば“SYSTEMM”、データベースDB3であれば“SOPCODEDEF”というように、対象のデータベースの名称が格納される。なお、本実施の形態においては、詳しくは詳述するが、入力テーブル名が“SOPCODEDEF”の場合、データベースDB3が読み出し対象とされるのではなく、データベースDB2が読み出し対象とされるようなっている。入力項目名は、入力テーブル名で特定されたデータベースのうち、設定値を読み出す対象の設定項目を特定するデータであり、ここには設定項目名が格納される。これらの入力テーブル名及び入力項目名によって、設定値が格納された格納領域が特定されることとなる。また、オブジェクトフィールド38eに格納されるオブジェクト名は、粒子分析装置2の制御プログラム29eが有するオブジェクトの名称に対応しており、プロパティフィールド38fに格納されるプロパティ名は、前記オブジェクトのプロパティの名称に対応している。これらのオブジェクト名及びプロパティ名によって、設定値の設定対象が特定されることとなる。即ち、前述した入力テーブル名及び入力項目名で特定される格納領域に格納されている設定値で、この送信アイテムのオブジェクト名、プロパティ名で特定されるオブジェクトのプロパティが設定されることとなる。
フラグ1フィールド38gに格納されるフラグ1は、対応する設定項目を測定開始時において設定するか否かを示すフラグであり、フラグ1に“1”がセットされている、即ちフラグ1フィールド38gに“1”が格納されている設定項目は、測定開始時に設定されるようになっている。一方、フラグ1に“0”がセットされている、即ちフラグ1フィールド38gに“0”が格納されている設定項目は、測定開始時に設定されない。フラグ2フィールド38hに格納されるフラグ2は、対応する設定項目を粒子分析装置2の起動時において設定するか否かを示すフラグであり、フラグ2に“1”がセットされている、即ちフラグ2フィールド38hに“1”が格納されている設定項目は、粒子分析装置2の起動時に設定されるようになっている。一方、フラグ2に“0”がセットされている、即ちフラグ2フィールド38hに“0”が格納されている設定項目は、粒子分析装置2の起動時に設定されない。また、フラグ3フィールド38iに格納されるフラグ3は、対応する設定項目を粒子分析装置2のリセット時において設定するか否かを示すフラグであり、フラグ3に“1”がセットされている、即ちフラグ3フィールド38iに“1”が格納されている設定項目は、粒子分析装置2のリセット時に設定されるようになっている。一方、フラグ3に“0”がセットされている、即ちフラグ3フィールド38iに“0”が格納されている設定項目は、粒子分析装置2のリセット時に設定されない。
図10には、データベースDB4の一部が示されている。図10に示した例では、入力テーブル名“SOPCODEDEF”及び入力項目名“MaxMeasCount”の送信アイテム、入力テーブル名“SYSTEMM”及び入力項目名“TempTarget”の送信アイテム、並びに入力テーブル名“SYSTEMM”及び入力項目名“OLensUnit”の送信アイテムが夫々データベースDB4に登録されている。入力項目名“MaxMeasCount”の送信アイテムは、その名称が“繰り返し総数”とされており、オブジェクト名が“MeasSettings”、プロパティ名が“MaxMeasCount”とされている。また、設定項目“MaxMeasCount”は、フラグ1〜3が全て“1”にセットされている。入力項目名“TempTarget”の送信アイテムは、その名称が“検出部目標温度”とされており、オブジェクト名が“MeasSettings”、プロパティ名が“TempTarget”とされている。また、設定項目“TempTarget”は、フラグ1〜3が全て“1”にセットされている。更に、入力項目名“OLensUnit”の送信アイテムは、その名称が“対物レンズユニット”とされており、オブジェクト名が“MeasSettings”、プロパティ名が“TempTarget”とされている。また、設定項目“TempTarget”は、フラグ1〜3が全て“1”にセットされている。
次に、データベースDB5の構成について説明する。図11は、データベースDB5の構成を示す模式図である。図11に示すように、データベースDB5は、複数のフィールドを有するテーブル形式のデータベースである。このデータベースDB5は、“CMDSAU”という名称であり、アプリケーションプログラム34aの処理では、この名称を使用して当該データベースDB5が特定されるようになっている。このデータベースDB5には、受信アイテム、即ち粒子分析装置2から受信する項目のIDが格納されるIDフィールド39aと、受信アイテムの表示名が格納されるアイテム表示名フィールド39bと、粒子分析装置2から測定結果を受信した場合に、設定値の出力先(書き込み先)のテーブル名が格納される出力テーブルフィールド39cと、前記テーブルにおける出力先のフィールド名が格納される出力フィールドフィールド39dと、制御プログラム29eのオブジェクト名が格納されるオブジェクトフィールド39eと、前記オブジェクトにおけるプロパティ名が格納されるプロパティフィールド39fとが設けられている。なお、データベースDB5には、これらの他にもフィールドが設けられているが、ここでは説明を簡単にするために省略する。
アイテム表示名フィールド38bに格納されているアイテム表示名は、ユーザが理解しやすいように、ユーザがそれらの表示名を見ただけで、その受信アイテムの概略が把握できるような名称とされている。かかるアイテム表示名は、このデータベースDB5への新規データの登録及びデータ更新を行うためのウィンドウ等において、各レコードに対応付けて表示される。また、出力テーブル名は、受信したデータを書き込む対象のデータベースを特定するデータであり、ここにはデータベースDB6であれば“MRESULT”、データベースDB7であれば“ANARESULT”というように、対象のデータベースの名称が格納される。出力フィールド名は、出力テーブル名で特定されたデータベースのうち、受信データを書き込む対象のフィールドを特定するデータであり、ここにはフィールド名が格納される。これらの出力テーブル名及び出力フィールド名によって、受信データが格納される格納領域が特定されることとなる。また、オブジェクトフィールド39eに格納されるオブジェクト名は、粒子分析装置2の制御プログラム29eが有するオブジェクトの名称に対応しており、プロパティフィールド39fに格納されるプロパティ名は、前記オブジェクトのプロパティの名称に対応している。これらのオブジェクト名及びプロパティ名によって、受信データの読み出し元が特定されることとなる。即ち、受信アイテムに含まれるオブジェクト名、プロパティ名で特定されるオブジェクトのプロパティから読み出されたデータが、前述した出力テーブル名及び出力フィールド名で特定される格納領域に格納されることとなる。
図11には、データベースDB5の一部が示されている。図11に示した例では、オブジェクト名“MeasSettings”及びプロパティ名“MaxMeasCount”のレコード、オブジェクト名“MeasSettings”及びプロパティ名“TempTarget”のレコード、オブジェクト名“MeasSettings”及びプロパティ名“OLensUnit”のレコード、オブジェクト名“LimResult”及びプロパティ名“Density”のレコード、オブジェクト名“LimResult”及びプロパティ名“DSSizeRatio”のレコード、並びにオブジェクト名“LimResult”及びプロパティ名“DMSizeRasio”のレコードが夫々データベースDB4に登録されている。プロパティ名“MaxMeasCount”、“TempTarget”、“OLensUnit”のレコードは、夫々出力テーブル名が“MRESULT”、出力フィールド名が“MetaData”とされている。また、プロパティ名“Density”のレコードは、出力テーブル名が“ANARESULT”、出力フィールド名が“Density”とされている。プロパティ名“DSSizeRatio”のレコードは、出力テーブル名が“ANARESULT”、出力フィールド名が“DSSizeRatio”とされている。プロパティ名“DMSizeRatio”のレコードは、出力テーブル名が“ANARESULT”、出力フィールド名が“DMSizeRatio”とされている。
次に、データベースDB6の構成について説明する。図12は、データベースDB6の構成を示す模式図である。図12に示すように、データベースDB6は、複数のフィールドを有するテーブル形式のデータベースである。このデータベースDB6は、“MRESULT”という名称であり、アプリケーションプログラム34aの処理では、この名称を使用して当該データベースDB6が特定されるようになっている。このデータベースDB6は、粒子分析装置2が測定を行ったときの粒子分析装置2の各種設定値が格納されるデータベースである。図12には、データベースDB6の一部が示されている。図12に示した例では、レコード番号を格納するためのレコード番号フィールド310aと、測定モードを格納するための測定モードフィールド310bと、設定値のデータセットを格納するためのメタデータフィールド310cとがデータベースDB6に設けられている。このデータベースDB6は、後述するように粒子分析装置2から測定結果を受信するたびにレコードが新たに作成されるようになっている。レコードには、作成時刻順にレコード番号が付与され、レコード番号フィールド310aに格納される。測定モードフィールド310bは、“MeasMode”という名称であり、また、メタデータフィールド310cは、“MetaData”という名称とされている。アプリケーションプログラム34aの処理では、これらの名称を使用して測定モードフィールド310b及びメタデータフィールド310cが特定されるようになっている。測定モードフィールド310bには、粒子分析装置2が測定したときの測定モードを示すデータが格納されるようになっている。また、メタデータフィールド310cには、繰り返し回数、MAXカウント数、使用シース液、使用シース液ID、目標圧力、シリンジスピード等の設定値が記号“,”で区切られたデータの集合が格納されるようになっている。
次に、データベースDB7の構成について説明する。図13は、データベースDB7の構成を示す模式図である。図13に示すように、データベースDB7は、複数のフィールドを有するテーブル形式のデータベースである。このデータベースDB7は、“ANARESULT”という名称であり、アプリケーションプログラム34aの処理では、この名称を使用して当該データベースDB7が特定されるようになっている。このデータベースDB7は、粒子分析装置2が測定を行ったときの各種測定値が格納されるデータベースである。図13には、データベースDB7の一部が示されている。図13に示した例では、レコード番号を格納するためのレコード番号フィールド311aと、粒子濃度を格納するための粒子濃度フィールド311bと、小粒子率を格納するための小粒子率フィールド311cと、中粒子率を格納するための中粒子率フィールド311dと、大粒子率を格納するための大粒子率フィールド311eと、粒子限定率を格納するための粒子限定率フィールド311fと、検出粒子数を格納するための検出粒子数フィールド311gと、有効解析数を格納するための有効解析数フィールド311hと、限定粒子数を格納するための限定粒子数フィールド311iとがデータベースDB7に設けられている。このデータベースDB7は、後述するように粒子分析装置2から測定結果を受信するたびにレコードが新たに作成されるようになっている。レコードには、作成時刻順にレコード番号が付与され、レコード番号フィールド311aに格納される。粒子濃度フィールド311bは“Density”、小粒子率フィールド311cは“DSSizeRatio”、中粒子率フィールド311dは“DMSizeRatio”、大粒子率フィールド311eは“DLSizeRatio”、粒子限定率フィールド311fは“DLimRatio”、検出粒子数フィールド311gは“TotalCount”、有効解析数フィールド311hは“ValidCount”、限定粒子数フィールド311iは“LimCount”という名称とされている。アプリケーションプログラム34aの処理では、これらの名称を使用して粒子濃度モードフィールド311b、小粒子率フィールド311c、中粒子率フィールド311d、大粒子率フィールド311e、粒子限定率フィールド311f、検出粒子数フィールド311g、有効解析数フィールド311h、限定粒子数フィールド311iが特定されるようになっている。
出力インタフェース31fは、例えばUSB,IEEE1394,RS-232C等のシリアルインタフェース、SCSI,IDE,IEEE1284等のパラレルインタフェース、およびD/A変換器、A/D変換器等からなるアナログインタフェース等から構成されている。入出力インタフェース31fには、キーボードおよびマウスからなる入力部33が接続されており、ユーザが当該入力部33を使用することにより、コンピュータ3aにデータを入力することが可能である。
通信インタフェース31gは、例えばEthernet(登録商標)インタフェースであり、粒子分析装置2と電気信号ケーブル7を介してデータ通信が可能であるように接続されている。コンピュータ3aは、当該通信インタフェース31gにより、所定の通信プロトコルを使用して粒子分析装置2との間でデータの送受信が可能である。
画像出力インタフェース31hは、LCDまたはCRT等で構成された画像表示部32に接続されており、CPU31aから与えられた画像データに応じた映像信号を画像表示部32に出力するようになっている。画像表示部32は、入力された映像信号にしたがって、画像(画面)を表示する。
次に、本発明の実施の形態に係る測定システム1の動作について説明する。ユーザは、コンピュータ3aの入力部33を操作して、アプリケーションプログラム34aの起動指示に対応付けられたアイコン、メニュー、ボタン等をクリックし、又はアプリケーションプログラム34aの起動を指示するコマンドを入力することによって、アプリケーションプログラム34aを起動させることができる。ユーザが、この状態で、データ処理装置3に対して所定の操作を行うことにより、データ処理装置3の画像表示部32には、次に説明するようなウィンドウが表示される。図14は、測定・解析条件の設定を行うためのウィンドウを示す模式図である。図14に示すように、このウィンドウ4においては、装置の状態を設定するためのボタン類が表示された装置状態設定領域41と、測定対象の試料に関する情報を設定するための入力ボックス、コンボボックス等が表示された試料情報設定領域42と、SOPを設定するためのコンボボックス43aが表示されたSOP設定領域43と、測定条件を設定するためのコンボボックス、入力ボックス、ラジオボタン等が表示された測定条件設定領域44と、解析条件を設定するためのコンボボックス等が表示された解析条件設定領域45とが設けられている。また、このウィンドウ4には、測定開始を指示するための測定スタートボタン46a、設定をキャンセルするためのキャンセルボタン46b、測定解析条件の詳細設定を可能にするためのチェックボックス47a、測定解析条件の詳細設定を行うためのウィンドウを表示させる詳細設定開始ボタン47bが設けられている。このウィンドウ4の表示が指示されたときには、CPU31aは、前述したデータベースDB2,DB3からデータをRAM31cにロードし、コンボボックス、入力ボックス等にその時点での最新のデータを表示させ、またコンボボックスの選択項目等をセットする。
このウィンドウ4では、簡単な測定条件の設定等、各種の設定項目のうちの一部について設定を行うことが可能である。かかるウィンドウ4のSOP設定領域43には、コンボボックス43aが設けられている。ユーザが入力部33に設けられたマウスを移動させることにより、画面に表示されたマウスポインタをコンボボックス43aの左端に設けられた三角矢印ボタン上に位置させ、その状態でマウスの左ボタンを1回押下する(以下、この操作を左クリックという)ことにより、選択項目の一覧(コンボリスト)がプルダウン表示される。ユーザが、かかる選択項目のうち所望の一つの項目をマウスで左クリックすることにより、この項目が選択されることとなる。図14では、“ラテックス”という名称が付与されたSOPが選択された場合を示している。ここで、ユーザがコンボボックス43aで他の項目を選択した場合には、そのSOPに対応した設定値がコンボボックス、入力ボックス等に表示され、またコンボボックスのコンボリスト等がセットされる。
ウィンドウ4の測定条件設定領域44には、分散媒(シース液)を指定するためのコンボボックス44aと、測定モードを指定するためのコンボボックス44bと、トータルカウントを指定するためのラジオボタン44cと、トータルカウント数を指定するためのコンボボックス44dと、時間カウントを選択するためのラジオボタン44eと、繰り返し回数を指定するためのコンボボックス44fとが設けられている。ユーザは、上述と同様の操作によってコンボボックス44aから選択項目をプルダウン表示させることが可能であり、ここで所望のシース液を指定することが可能である。測定モードのコンボボックス44bには、データベースDB3の設定項目名“MeasMode”に対応するコンボリスト(|LPF|HPF|LPF−>HPF|)がセットされる。ここで、「LPF」とは、0.5倍のリレーレンズを用いる低倍率の測定モードをいう。また、「HPF」とは、2倍のリレーレンズを用いる高倍率の測定モードをいい、「LPF−>HPF」とは、測定の途中でLPFからHPFへ変更する測定モードをいう。ラジオボタン44c,44eは、何れかか一方のみをセットすることが可能であるように構成されている。図14には、時間カウントがセットされている例を示している。図に示すように、時間カウントがセットされている場合には、コンボボックス44dは淡色(グレー)表示され、ユーザのクリックに反応せず、使用することができないようになっており、その一方でコンボボックス44fは通常の色(濃色)で表示され、例えば2以上9999以下の計測回数をセットすることができるようになっている。トータルカウントがセットされている場合には、これとは反対にコンボボックス44dが濃色表示され、コンボボックス44fが淡色表示される。コンボボックス44dは、トータルカウント数(測定した粒子の総数)を例えば1以上30000以下の範囲でセットすることができるようになっている。
このウィンドウ4で新たに設定された内容は、データベースDB2,DB3には反映されず、RAM31cにロードされたの内容のみが変更されるようになっている。ユーザは、このウィンドウ4で測定に必要なデータを入力した後に、測定スタートボタン46aを左クリックすることにより、セットされた条件(設定値)で粒子分析装置2を設定し、測定を開始することを指示することができる。
また、ウィンドウ4でユーザがチェックボックス47aをチェックし、詳細設定開始ボタン47bを左クリックした場合には、以下に説明するような詳細設定用のウィンドウがデータ処理装置3の画面に表示される。図15は、測定条件等の詳細設定を行うためのウィンドウを示す模式図である。詳細設定開始ボタン47bが左クリックされたときには、CPU31aは、RAM31cにロードされたデータベースDB2,DB3のデータを用いてウィンドウ5を作成し、画面上に描画する。図15に示すように、このウィンドウ5においては、SOPを指定するためのコンボボックス51と、設定値のテーブル52と、上書き保存を指示するためのボタン53と、新規保存を指示するためのボタン54と、このウィンドウ5のクローズを指示するためのボタン55とが設けられている。
コンボボックス51は、左端の三角矢印ボタンが左クリックされることにより、定義されているSOPのコンボリストがプルダウン表示される。ユーザはこの中から所望のSOPを左クリックすることにより選択することが可能である。ここでSOPが選択された場合には、データベースDB2のデータのうち、そのSOPに対応する設定値がテーブル52に表示される。テーブル52は、設定項目の種類名が表示される種類フィールド52aと、設定項目表示名が表示される設定項目表示名フィールド52bと、設定値が表示される設定値フィールド52cとが設けられている。種類フィールド52aにはデータベースDB3に登録された種類名が表示され、設定項目表示名フィールド52bにはデータベースDB3の設定項目表示名フィールド37d(図9参照)に登録された設定項目表示名が表示される。また、設定値フィールド52cには、データベースDB2のデータフィールド36b(図8参照)に登録された設定値が表示される。
設定値フィールド52cのセルは、対象セルにユーザがダブルクリック(左クリックを連続して2回行う操作)を行うことにより、データを入力可能な状態となる。ユーザは、設定値を変更する場合には、このようにセルをダブルクリックし、新たな設定値を入力する。CPU31aは、このように新たに入力された設定値で、RAM31aのデータを更新する。そして、設定値が変更された後、ボタン53が左クリックされた場合には、CPU31aは、データベースDB2の該当するテーブルのデータを変更後の内容(RAM31aに格納されたデータ)で更新する。また、設定値が変更された後、ボタン54が左クリックされた場合には、CPU31aは、変更後の内容(RAM31aに格納されたデータ)のテーブルをデータベースDB2に新たに作成する。また、ボタン55が左クリックされた場合には、CPU31aは、ウィンドウ5を閉じる。このようにして、ユーザはデータベースDB2,DB3へのデータ登録、データ更新を行うことができる。
また、上記のようにアプリケーションプログラム34aを実行中の状態で、ユーザがデータ処理装置3に対して所定の操作を行うことにより、データ処理装置3の画像表示部32には、次に説明するようなウィンドウが表示される。図16は、粒子分析装置2の基本設定を行うためのウィンドウを示す模式図である。CPU31aは、この操作を受け付けた場合には、RAM31cにロードされたデータベースDB1のデータを用いてウィンドウ6を作成し、画面上に描画する。図16に示すように、このウィンドウ6においては、設定値のテーブル61と、印刷を指示するためのボタン62と、ファイルへの設定値の出力を指示するためのボタン63と、設定値の保存を指示するためのボタン64と、設定値を保存せずにウィンドウ6のクローズを指示するためのボタン65とが設けられている。
テーブル61には、設定項目の分類項目表示名が表示される分類項目表示名フィールド61aと、種類項目表示名が表示される種類項目表示名フィールド61bと、設定項目表示名が表示される設定項目表示名フィールド61cと、設定値が表示される設定値フィールド61dとが設けられている。分類項目表示名フィールド61aには、データベースDB1の分類項目表示名フィールド35c(図7参照)に登録された分類項目表示名が表示され、種類項目表示名フィールド61bには、データベースDB1の種類項目表示名フィールド35dに登録された種類項目表示名が表示され、設定項目表示名フィールド61cには、データベースDB1の設定項目表示名フィールド35fに登録された設定項目表示名が表示される。また、設定値フィールド61dには、データベースDB1のデータフィールド35gに登録された設定値が表示される。
設定値フィールド61dのセルは、対象セルにユーザがダブルクリックを行うことにより、データを入力可能な状態となる。ユーザは、設定値を変更する場合には、このようにセルをダブルクリックし、新たな設定値を入力する。CPU31aは、このように新たに入力された設定値で、RAM31aのデータを更新する。そして、設定値が変更された後、ボタン64が左クリックされた場合には、CPU31aは、データベースDB1の該当するテーブルのデータを変更後の内容(RAM31aに格納されたデータ)で更新する。また、ボタン62が左クリックされた場合には、CPU31aは、データ処理装置3にUSBケーブル等の電気信号ケーブルを介して接続されたプリンタへテーブル61の内容の印刷指示を行う。これにより、ユーザは基本設定を印刷することが可能である。また、ボタン63が左クリックされた場合には、CPU31aは、テーブル61(RAM31aに格納されたデータ)の内容を例えばCSV形式のファイルに出力する。また、ボタン65が左クリックされた場合には、CPU31aは、ウィンドウ6を閉じる。このようにして、ユーザはデータベースDB1へのデータ登録、データ更新を行うことができる。
また、データベースDB4〜DB7については、ここでは詳細な説明を省略するが、上記と同様の処理によって、データ登録、データ更新を行うことが可能であるように構成されている。また、このようにアプリケーションプログラム34aの機能を用いてデータベースDB1〜DB7のデータ登録、データ更新を行うのではなく、ユーザが他のデータベース用ソフトウェア、表計算ソフトウェア、テキストエディター等を使用してデータベースDB1〜DB7を登録、編集することも可能である。
次に、粒子分析装置2による試料の測定を開始する場合の測定システム1の動作について説明する。図17及び図18は、かかる場合における測定システム1の動作の流れを示すフローチャートである。ウィンドウ4の測定スタートボタン46a(図14参照)が左クリックされ、ユーザから測定開始の指示を受け付けた場合には、CPU31aは、送信アイテムのIDを示す変数iを0にセットし(ステップS1)、RAM31cに送信データ(以下、設定値送信データという)を作成するための領域(以下、設定値送信データ作成領域という)を確保する(ステップS2)。次にCPU31aは、変数iの値がデータベースDB4のIDフィールド38a(図10参照)に登録されているIDの最大値N未満であるか否かを判別し(ステップS3)、変数iの値がN未満である場合には(ステップS3においてYes)、変数iの値を1だけインクリメントする(ステップS4)。次に、CPU31aは、データベースDB4の変数iの値と同一のIDのレコードから、フラグ1フィールド38gのデータを読み出し(ステップS5)、このデータが“1”か否かを判別する(ステップS6)。上述したように、フラグ1は、このレコードの設定値を測定開始時に設定するか否かを示すフラグである。ここで、CPU31aは、フラグ1が“1”にセットされている場合には(ステップS6でYes)、ステップS7以降の処理を実行し、フラグ1が“0”にセットされている場合には(ステップS6でNo)、ステップS3へと処理を戻す。
CPU31aは、データベースDB4の変数iの値と同一のIDのレコードから、入力テーブルフィールド38c及び入力項目フィールド38dのデータを読み出す(ステップS7)。例えば、変数iの値が“7”の場合、CPU31aは、データベースDB4から入力テーブルデータ“SOPCODEDEF”及び入力項目データ“MaxMeasCount”を読み出し、変数iの値が“57”の場合には、データベースDB4から入力テーブルデータ“SYSTEMM”及び入力項目データ“TempTarget”を読み出す(図10参照)。次にCPU31aは、ステップS7の処理で取得した入力テーブルデータで特定されるデータベースの入力項目データで特定される設定項目に対応する設定値を読み出す(ステップS8)。なお、ステップS8の処理では、入力テーブルデータが“SOPCODEDEF”の場合には、データベースDB3ではなく、データベースDB2から設定値が読み出されることとなる。つまり、変数iの値が“7”の場合には、CPU31aは、データベースDB2から、設定項目“MaxMeasCount”に対応する設定値“1”を読み出す。また、変数iの値が“57”の場合には、CPU31aは、データベースDB1から設定項目“TempTarget”に対応する設定値“250”を読み出す。また、このステップS8の処理においては、データベースDB1のデータについてはハードディスク31dに格納されているデータベースDB1から設定値が読み出されるが、データベースDB2のデータについてはハードディスク31dのデータベースDB2から設定値を読み出すのではなく、ウィンドウ4が開かれている間にRAM31cに格納されている設定値が読み出されることとなる。
次にCPU31aは、データベースDB4の変数iの値と同一のIDのレコードから、オブジェクトフィールド38e及びプロパティフィールド38fのデータを読み出す(ステップS9)。例えば、変数iの値が“7”の場合、CPU31aは、データベースDB4からオブジェクト名“MeasSettings”及びプロパティ名“MaxMeasCount”を読み出し、変数iの値が“57”の場合には、データベースDB4からオブジェクト名“MeasSettings”及びプロパティ名“TempTarget”を読み出す(図10参照)。
そして、CPU31aは、ステップS8で読み出した設定値と、ステップS9で読み出したオブジェクト名及びプロパティ名とを対応付けてRAM31cの設定値送信データ作成領域に書き込む(ステップS10)。このステップS10の処理では、以前の処理で作成した設定値送信データの末尾に新たな設定値、オブジェクト名、及びプロパティ名が追加される。即ち、変数iの値が“7”の場合には、変数iの値が“1”から“6”までの処理で書き込まれたデータの末尾に、“1”、“MeasSettings”、“MaxMeasCount”のデータが追加される。また、変数iの値が“57”の場合には、変数iの値が“1”から“56”までの処理で書き込まれたデータの末尾に、“250”、“MeasSettings”、“TempTarget”のデータが追加される。このようなステップS10の処理を終えた後、CPU31aは、処理をステップS3へと戻す。
ステップS3において、変数iの値がN以上である場合には(ステップS3においてNo)、CPU31aは、上記の処理で作成した設定値送信データを粒子分析装置2へと送信する(ステップS11)。粒子分析装置2のCPU29aは、データ処理装置3から設定値送信データを受信した場合には(ステップS12においてYes)、この設定値送信データに含まれる設定値のうちの1つ(設定値送信データのうちの最初の設定値)を設定対象として選択する(ステップS13)。次にCPU29aは、設定対象の設定値に対応付けられているオブジェクト名及びプロパティ名にて特定されるオブジェクトのプロパティを、当該設定値で設定する(ステップS14)。上記の例で説明すると、オブジェクト29f(オブジェクト名“MeasSettings”)のプロパティ29k(プロパティ名“MaxMeasCount”)が設定値“1”で設定され、オブジェクト29fのプロパティ29j(プロパティ名“TempTarget”)が設定値“250”で設定されることとなる。そして、CPU29aは、設定対象として選択されていない設定値が設定値送信データに存在するか否かを判別し(ステップS15)、存在する場合には(ステップS15においてYes)、次の設定値を設定対象として選択し(ステップS16)、ステップS14へと処理を戻す。また、ステップS15において、設定対象として選択されていない設定値が設定値送信データに含まれていない場合には(ステップS15においてNo)、CPU29aは、処理を終了する。
なお、ここでは粒子分析装置2による試料の測定を開始する場合の処理について述べたが、同様の制御プログラム29eのオブジェクト及びプロパティの設定は、粒子分析装置2の起動時、及びリセット時にも実行される。粒子分析装置2の起動時においては、上記の測定開始時のようにフラグ1に“1”がセットされている設定値で設定値送信データを作成するのではなく、フラグ2に“1”がセットされている設定値で設定値送信データが作成されることとなる。また、粒子分析装置2のリセット時においては、フラグ3に“1”がセットされている設定値で設定送信データが作成される。粒子分析装置2の起動時又はリセット時における設定処理においては、フラグ1ではなくフラグ2又はフラグ3を使用する他は、上記の測定開始時における処理と同様であるので、その説明を省略する。
次に、粒子分析装置2が測定を終了した場合の測定システム1の動作について説明する。図19及び図20は、かかる場合における測定システム1の動作の流れを示すフローチャートである。試料の測定を終了したとき、粒子分析装置2のCPU29aは、RAM29cに送信データ(以下、測定結果送信データという)を作成するための領域(以下、測定結果送信データ作成領域という)を確保する(ステップS21)。次にCPU29aは、制御プログラム29eのオブジェクトを1つ選択し(ステップS22)、このオブジェクトのプロパティを1つ選択する(ステップS23)。そして、選択したプロパティの値を読み出し(ステップS24)、この値と、選択したオブジェクトの名称及び選択したプロパティの名称とを測定結果送信データ作成領域に書き込む(ステップS25)。このステップS26の処理では、以前の処理で作成した測定結果送信データの末尾に新たな値、オブジェクト名、及びプロパティ名が追加される。例えば、オブジェクト29f(オブジェクト名“MeasSettings”)のプロパティ29i(プロパティ名“OLensUnit”)が選択されている場合には、このプロパティ29iのその時点における値(例えば“2”)が読み出され、“MeasSettings”,“MaxMeasCount”,“2”のデータが作成中の測定結果送信データの末尾に追加されることとなる。
CPU29aは、選択されているオブジェクトに未選択のプロパティが存在するか否かを判別し(ステップS26)、未選択のプロパティが存在する場合には(ステップS26においてYes)、未選択のプロパティのうちの1つを選択し(ステップS27)、処理をステップS24へ戻す。また、ステップS26において、選択されているオブジェクトに未選択のプロパティが存在しない、即ちこのオブジェクトの全てのプロパティが既に選択されている場合には(ステップS26においてNo)、CPU29aは、選択されていない制御プログラム29eのオブジェクトが存在するか否かを判別し(ステップS28)、未選択のオブジェクトが存在する場合には(ステップS28においてYes)、未選択のオブジェクトのうちの1つを選択し(ステップS29)、処理をステップS23へ戻す。また、CPU29aは、未選択のオブジェクトが存在しない、即ち全てのオブジェクトが既に選択されている場合には(ステップS28においてNo)、作成された測定結果送信データをデータ処理装置3へと送信する(ステップS30)。以下においては、上記のような動作によって、オブジェクト名“MeasSettings”及びプロパティ名“MaxMeasCount”に対応付けられた値“1”、オブジェクト名“MeasSettings”及びプロパティ名“TempTarget”に対応付けられた値“160”、オブジェクト名“LimResult”及びプロパティ名“Density”に対応付けられた値“5000”、オブジェクト名“LimResult”及びプロパティ名“DSSizeRatio”に対応付けられた値“9.8”、並びにオブジェクト名“LimResult”及びプロパティ名“DMSizeRatio”に対応付けられた値“71.4”の各データが測定結果送信データに含まれている場合について説明する。
データ処理装置3のCPU31aは、粒子分析装置2から測定結果送信データを受信した場合には(ステップS31においてYes)、この測定結果送信データをRAM31cに格納する(ステップS32)。次に、CPU31aは、受信アイテムのIDを示す変数jを0にセットし(ステップS33)、データベースDB6,DB7に新規レコードを作成する(ステップS34)。次にCPU31aは、変数jの値がデータベースDB5のIDフィールド38a(図11参照)に登録されているIDの最大値n未満であるか否かを判別し(ステップS35)、変数jの値がn未満である場合には(ステップS35においてYes)、変数jの値を1だけインクリメントする(ステップS36)。
次に、CPU31aは、データベースDB5の変数jの値と同一のIDのレコードから、オブジェクトフィールド39e及びプロパティフィールド39fのデータを読み出す(ステップS37)。例えば、変数jの値が“7”の場合、CPU31aは、データベースDB5からオブジェクト名“MeasSettings”及びプロパティ名“MaxMeasCount”を読み出し、変数jの値が“57”の場合には、データベースDB5からオブジェクト名“MeasSettings”及びプロパティ名“TempTarget”を読み出す。また、変数jの値が“177”の場合、CPU31aは、データベースDB5からオブジェクト名“LimResult”及びプロパティ名“Density”を読み出し、変数jの値が“178”の場合には、データベースDB5からオブジェクト名“LimResult”及びプロパティ名“DSSizeRatio”を読み出し、変数jの値が“178”の場合には、データベースDB5からオブジェクト名“LimResult”及びプロパティ名“DMSizeRatio”を読み出す。
次にCPU31aは、RAM31cに格納した測定結果送信データから、ステップS37の処理で取得したオブジェクト名及びプロパティ名に対応する値を読み出す(ステップS38)。つまり、変数jの値が“7”の場合には、CPU31aは、前記測定結果送信データから、オブジェクト名“MeasSettings”及びプロパティ名“MaxMeasCount”に対応する値“1”を読み出し、変数jの値が“177”の場合には、オブジェクト名“LimResult”及びプロパティ名“Density”に対応する値“5000”を読み出す。
次にCPU31aは、データベースDB5の変数jの値と同一のIDのレコードから、出力テーブルフィールド39c及び出力フィールドフィールド39dのデータを読み出す(ステップS39)。例えば、変数jの値が“7”の場合、CPU31aは、データベースDB5から出力テーブルデータ“MRESULT”及び出力フィールドデータ“MaxMeasCount”を読み出し、変数iの値が“177”の場合には、データベースDB5から出力テーブルデータ“ANARESULT”及び出力フィールドデータ“Density”を読み出す(図11参照)。
そして、CPU31aは、ステップS38で読み出した値を、ステップS39で読み出した出力テーブルデータ及び出力フィールドデータで特定されるデータベースのフィールドにおける新たに追加されたレコードに書き込む(ステップS40)。つまり、変数jの値が“7”の場合、CPU31aは、データベースDB6のステップS34で追加したレコード(図12におけるレコード番号“5”のレコード)内のメタデータフィールド310cに値“1”に区切り記号“,”を付加した“1,”を追加する。これは、メタデータフィールド310cには、複数のプロパティの値が“,”で区切られたデータの集合が格納されるためである。また、変数jの値が“177”の場合には、CPU31aは、データベースDB7のステップS34で追加したレコード(図13におけるレコード番号“5”のレコード)内の粒子濃度フィールド311bに値“5000”を書き込む。このようなステップS40の処理を終えた後、CPU31aは、処理をステップS35へと戻す。また、ステップS35において、変数jの値がn以上である場合には(ステップS35においてNo)、CPU31aは、処理を終了する。
以上の如き構成とすることにより、データベースDB1及びデータベースDB2のデータフィールド35g,36bに粒子分析装置2の設定値を格納しており、またデータベースDB4の入力テーブルフィールド38c及び入力項目フィールド38dに設定値の格納領域を特定する入力テーブル名及び入力項目名を格納しているので、データベースDB4から所望の設定値が格納されている入力テーブル名及び入力項目名を取得して、当該入力テーブル名及び入力項目名にて特定される領域にアクセスすることで所望の設定値を読み出すことができる。また、データベースDB4のオブジェクトフィールド38e及びプロパティフィールド38fに設定対象のオブジェクト名及びプロパティ名を格納しているので、データベースDB4から設定対象のオブジェクト名及びプロパティ名を取得して、オブジェクト名で特定されるオブジェクトのプロパティ名で特定されるプロパティに前記設定値をセットすることができる。また、このようにすることによって、例えば設定項目を追加したり、設定値を変更する場合等には、アプリケーションプログラム34aを更新しなくても、データベースDB1〜DB4のうちの必要なものを修正するだけでよく、煩雑な手間を必要としない。
また、血液分析装置、尿分析装置、便分析装置等、粒子分析装置2とは異なる種類の測定装置にも、アプリケーションプログラム34aの測定装置の設定機能に係るコンポーネントを利用し、対象とする測定装置に合わせたデータベースDB1〜DB4を用意することで、前記測定装置に適応した設定機能を容易に実現することができ、測定装置の設定機能の設計工数・開発工数を従来に比して低減することが可能となる。
また、粒子分析装置2からデータ処理装置3へと送信する測定結果送信データに、オブジェクト名及びプロパティ名に対応付けて当該プロパティの値を含ませ、データベースDB5のオブジェクトフィールド39e及びプロパティフィールド39fに、制御プログラム29eのオブジェクト名及びプロパティ名を格納しているので、データベースDB6,DB7に登録する必要のある値と、その値に対応するオブジェクト及びプロパティとを特定することができる。また、データベースDB6及びデータベースDB7のフィールド310b,310c,311b〜311iに粒子分析装置2の測定時の設定状態(設定値)及び測定結果を格納可能とし、データベースDB5の出力テーブルフィールド39c及び出力フィールドフィールド39dに前記オブジェクト名及びプロパティ名と対応付けて値の格納先の出力テーブル名及び出力フィールド名を格納しているので、データベースDB5から格納対象の出力テーブル名及び出力フィールド名を取得し、当該出力テーブル名及び出力フィールド名で特定される領域に、送信されてきた測定結果送信データに含まれる値を格納することができる。また、このようにすることによって、例えばデータベースに登録する測定結果データを追加したり、測定結果データの登録先データベースを変更する場合等には、アプリケーションプログラム34aを更新しなくても、データベースDB5〜DB7のうちの必要なものを修正するだけでよく、煩雑な手間を必要としない。
また、血液分析装置、尿分析装置、便分析装置等、粒子分析装置2とは異なる種類の測定装置にも、アプリケーションプログラム34aの測定装置の測定結果管理機能に係るコンポーネントを利用し、対象とする測定装置に合わせたデータベースDB5〜DB7を用意することで、前記測定装置に適応した測定結果管理機能を容易に実現することができ、測定装置の測定結果管理機能の設計工数・開発工数を従来に比して低減することが可能となる。
なお、本実施の形態においては、データ処理装置3を粒子分析装置2とは別に設け、粒子分析装置2とデータ処理装置3とを互いにデータ通信することが可能であるように接続し、データ処理装置3から粒子分析装置2の設定を行い、また粒子分析装置2の測定結果及び測定時の設定条件をデータ処理装置3で管理する構成について述べたが、データ処理装置3の機能を粒子分析装置2に備えさせ、1台の粒子分析装置2で測定条件等の設定並びに測定結果及び測定時の設定状態の管理を行う構成としてもよい。
また、本実施の形態においては、データベースDB4の入力テーブルフィールド38cに格納されている入力テーブル名が“SOPCODEDEF”の場合、データベースDB3が読み出し対象とされるのではなく、データベースDB2が読み出し対象とされる構成について述べたが、これに限定されるものではなく、入力テーブル名“SOPMDT”によってデータベースDB2を読み出し対象として特定する構成としてもよい。
また、本実施の形態においては、ハードディスク31dのデータベースDB2から読み出した設定値ではなく、RAM31cに格納された設定値を読み出し、これを粒子分析装置2を設定するために粒子分析装置2へ送信する構成について述べたが、これに限定されるものではなく、設定値を送信するときに、ハードディスク31dのデータベースDB2から設定値を読み出し、この設定値を粒子分析装置2へ送信する構成としてもよい。
また、本実施の形態においては、測定装置として粒子測定装置2を使用した場合について述べたが、これに限定されるものではなく、例えば、血球分析装置、血液凝固分析装置、免疫分析装置、尿中有形成分分析装置、尿定性分析装置、便分析装置等、他の測定装置に対して設定を行い、また測定結果の管理を行う構成としてもよい。
また、本実施の形態においては、粒子分析装置2とデータ処理装置3とを個別に設ける構成について述べたが、これに限定されるものではなく、粒子分析装置2にデータ処理装置3の機能を付加させて、粒子分析装置2とデータ処理装置3とを一体の装置として構成してもよい。また、データベースDB1〜DB7をデータ処理装置3のハードディスク31dに設ける構成について述べたが、これに限定されるものではなく、データ処理装置3の外部にデータベースDB1〜DB7の一又は複数を有するデータベースサーバを設け、データベースDB1〜DB7に対してデータを読出し又は書込む場合には、データ処理装置3が当該データベースサーバにアクセスする構成としてもよい。