(57)【特許請求の範囲】
【請求項１】
機能毎に作成され、かつ具体的動作指示が記述された動作プログラムを有する複数の部品オブジェクトと、
前記部品オブジェクトから展開される部品オブジェクトのタイプを設定する記述及び部品オブジェクトをツリー構造として展開するための各部品オブジェクト相互の親子関係を示す記述を自然言語で記述した関連付けファイルと、
前記各部品オブジェクトおよび前記関連付けファイルとは独立したメインプログラムとを有し、
前記各部品オブジェクトは相互依存なく存在し、形成された共通インターフェイスによってメインプログラムに対して直接的に接続されるよう構成され、
動作する場合には、前記メインプログラムが、少なくとも、前記共通インターフェイスを有する各部品オブジェクトをメインプログラムに関連付けて認識するステップと、
かかる認識と前記関連付けファイルの記述に基づいて、前記各部品オブジェクトを相互に関連付けてメモリ上にツリー構造に展開するステップと、
作業者の操作に従って、そのメモリ上に展開した前記各部品オブジェクトを実行するステップとを測定機器の演算処理部に実行させる
ことを特徴とする測定機器の制御用プログラム。
【請求項２】
機能毎に作成され、かつ具体的動作指示が記述された動作プログラムを有する各部品オブジェクトと、
前記部品オブジェクトを任意の単位毎に纏めたモジュールと、
前記部品オブジェクトから展開される部品オブジェクトのタイプを設定する記述及び部品オブジェクトをツリー構造として展開するための各部品オブジェクト相互の親子関係を示す記述を自然言語で記述した関連付けファイルと、
前記各部品オブジェクト、モジュールおよび関連付けファイルとは独立したメインプログラムとを有し、
かつ、前記各部品オブジェクトが、相互依存なく存在し、前記メインプログラムと前記各部品オブジェクトとを媒介し、メインプログラムに対して直接的に接続されるための前記各部品オブジェクトに共通のインターフェイス（外部関数）を有する一方、
前記各モジュールが、相互依存なく存在し、前記メインプログラムと前記各モジュールとを媒介し、メインプログラムに対して直接的に接続されるための前記各モジュールに共通のインターフェイス（外部関数）を有し、
動作する場合には、前記メインプログラムが、少なくとも、前記各モジュールにおける共通のインターフェイス（外部関数）を介して前記各モジュールをメインプログラムに関連付けて認識するステップと、
かかる認識と前記関連付けファイルの記述に基づいて、前記各モジュールに含まれ、前記共通のインターフェイス（外部関数）を有する各部品オブジェクトを相互に関連付けてメモリ上にツリー構造に展開するステップと、
作業者の操作に従って、前記各部品オブジェクトに共通のインターフェイス（外部関数）を介して、そのメモリ上に展開した前記各部品オブジェクトを実行するステップとを測定機器の演算処理部に実行させる
ことを特徴とする測定機器の制御用プログラム。
【請求項３】
前記部品オブジェクトが、各種測定機器の基本機能に関する動作指示を行なうものであって、各種測定機器に共通に利用できる共通の動作プログラムまたは、各種測定機器に固有の動作指示を行なう固有の動作プログラムである請求項１または２に記載の測定機器の制御用プログラム。
【請求項４】
前記部品オブジェクトにそれぞれ対応する測定部を制御可能とする複数の動作プログラムが含まれており、前記メインプログラムが、これらの部品オブジェクトを適宜実行することにより、複数種類の測定部を制御可能とする請求項１〜３の何れかに記載の測定機器の制御用プログラム。
【請求項５】
前記部品オブジェクトに測定部からのデータを共通の読取形式で保存する動作プログラムが含まれており、前記メインプログラムが、これらの部品オブジェクトを適宜実行することにより、複数種類の測定部からのデータを処理可能とする請求項１〜４の何れかに記載の測定機器の制御用プログラム。
【請求項６】
測定機器の測定部に固有の操作を行うために必要な処理を実行するための部品オブジェクトが追加されるとともに、
前記関連付けファイルに、この追加された部品オブジェクトの機能をメインプログラムが呼び出すための指示が追加されることにより、
測定部に適切な固有の操作を実現可能とすることを特徴とする請求項１に記載の測定機器の制御用プログラム。
【請求項７】
測定機器の測定部に固有の操作を行うために必要な処理を実行するための部品オブジェクトを有するモジュールが追加されるとともに、
このモジュールにメインプログラムとのアクセスを可能とする共通インターフェイスが形成される一方、前記関連付けファイルに、この追加されたモジュールに含まれる部品オブジェクトの機能をメインプログラムが呼び出すための指示が追加されることにより、
測定部に適切な固有の操作を実現可能とすることを特徴とする請求項２に記載の測定機器の制御用プログラム。
【請求項８】
機能毎に作成され、かつ具体的動作指示が記述された動作プログラムを有する各部品オブジェクトと、
前記部品オブジェクトから展開される部品オブジェクトのタイプを設定する記述及び部品オブジェクトをツリー構造として展開するための各部品オブジェクト相互の親子関係を示す記述を自然言語で記述した関連付けファイルと、
前記各部品オブジェクトおよび前記関連付けファイルとは独立したメインプログラムとを有し、
前記各部品オブジェクトは相互依存なく存在し、形成された共通インターフェイスによってメインプログラムに対して直接的に接続されるよう構成された制御用プログラムを記憶する記憶部を有するとともに、
動作する場合には、この制御用プログラムによって、少なくとも、前記共通インターフェイスを有する各部品オブジェクトをメインプログラムに関連付けて認識するステップと、かかる認識と前記関連付けファイルの記述に基づいて、前記各部品オブジェクトを相互に関連付けてメモリ上にツリー構造に展開するステップと、
作業者の操作に従って、そのメモリ上に展開した前記各部品オブジェクトを実行するステップとを実行する演算処理部を有する
ことを特徴とする測定機器。
【請求項９】
機能毎に作成され、かつ具体的動作指示が記述された動作プログラムを有する各部品オブジェクトと、
前記部品オブジェクトを任意の単位毎に纏めたモジュールと、
前記部品オブジェクトから展開される部品オブジェクトのタイプを設定する記述及び部品オブジェクトをツリー構造として展開するための各部品オブジェクト相互の親子関係を示す記述を自然言語で記述した関連付けファイルと、
前記各部品オブジェクト、モジュールおよび関連付けファイルとは独立したメインプログラムとを有し、
かつ、前記各部品オブジェクトが、相互依存なく存在し、前記メインプログラムと前記各部品オブジェクトとを媒介し、メインプログラムに対して直接的に接続されるための前記各部品オブジェクトに共通のインターフェイス（外部関数）を有する一方、
前記各モジュールが、相互依存なく存在し、前記メインプログラムと前記各モジュールとを媒介し、メインプログラムに対して直接的に接続されるための前記各モジュールに共通のインターフェイス（外部関数）を有する制御用プログラムを記憶する記憶部を有するとともに、
動作する場合には、この制御用プログラムによって、少なくとも、前記各モジュールにおける共通のインターフェイス（外部関数）を介して各モジュールをメインプログラムに関連付けて認識するステップと、
かかる認識と前記関連付けファイルの記述に基づいて、前記各モジュールに含まれ、前記共通のインターフェイス（外部関数）を有する各部品オブジェクトを相互に関連付けてメモリ上にツリー構造に展開するステップと、
作業者の操作に従って、前記各部品オブジェクトに共通のインターフェイス（外部関数）を介して、そのメモリ上に展開した前記各部品オブジェクトを実行するステップとを実行する演算処理部を有する
ことを特徴とする測定機器。
【請求項１０】
前記部品オブジェクトが、各種測定機器の基本機能に関する動作指示を行なうものであって、各種測定機器に共通に利用できる共通の動作プログラムまたは、各種測定機器に固有の動作指示を行なう固有の動作プログラムである請求項８または９に記載の測定機器。
【請求項１１】
前記部品オブジェクトにそれぞれ対応する測定部を制御可能とする複数の動作プログラムが含まれており、前記メインプログラムが、これらの部品オブジェクトを適宜実行することにより、複数種類の測定部を制御可能とする請求項８〜１０の何れかに記載の測定機器。
【請求項１２】
前記部品オブジェクトに測定部からのデータを共通の読取形式で保存する動作プログラムが含まれており、前記メインプログラムが、これらの部品オブジェクトを適宜実行することにより、複数種類の測定部からのデータを処理可能とする請求項８〜１１の何れかに記載の測定機器。
【請求項１３】
機能毎に作成され、かつ具体的動作指示が記述された動作プログラムを有する各部品オブジェクトと、
前記部品オブジェクトから展開される部品オブジェクトのタイプを設定する記述及び部品オブジェクトをツリー構造として展開するための各部品オブジェクト相互の親子関係を示す記述を自然言語で記述した関連付けファイルと、
前記各部品オブジェクトおよび前記関連付けファイルとは独立したメインプログラムとを有し、
前記各部品オブジェクトは相互依存なく存在し、形成された共通インターフェイスによってメインプログラムに対して直接的に接続されるよう構成され、
動作する場合には、前記メインプログラムが、少なくとも、前記共通インターフェイスを有する各部品オブジェクトをメインプログラムに関連付けて認識するステップと、
かかる認識と前記関連付けファイルの記述に基づいて、前記各部品オブジェクトを相互に関連付けてメモリ上にツリー構造に展開するステップと、
作業者の操作に従って、そのメモリ上に展開した前記各部品オブジェクトを実行するステップとを測定機器の演算処理部に実行させる
ことを特徴とする測定機器の制御用プログラムを記憶したコンピュータ読取可能な記憶媒体。
【請求項１４】
機能毎に作成され、かつ具体的動作指示が記述された動作プログラムを有する各部品オブジェクトと、
前記部品オブジェクトを任意の単位毎に纏めたモジュールと、
前記部品オブジェクトから展開される部品オブジェクトのタイプを設定する記述及び部品オブジェクトをツリー構造として展開するための各部品オブジェクト相互の親子関係を示す記述を自然言語で記述した関連付けファイルと、
前記各部品オブジェクト、モジュールおよび関連付けファイルとは独立したメインプログラムとを有し、
かつ、前記各部品オブジェクトが、相互依存なく存在し、前記メインプログラムと前記各部品オブジェクトとを媒介し、メインプログラムに対して直接的に接続されるための前記各部品オブジェクトに共通のインターフェイス（外部関数）を有する一方、
前記各モジュールが、相互依存なく存在し、前記メインプログラムと前記各モジュールとを媒介し、メインプログラムに対して直接的に接続されるための前記各モジュールに共通のインターフェイス（外部関数）を有し、
動作する場合には、前記メインプログラムが、少なくとも、前記各モジュールにおける共通のインターフェイス（外部関数）を介して前記各モジュールをメインプログラムに関連付けて認識するステップと、
かかる認識と前記関連付けファイルの記述に基づいて、前記各モジュールに含まれ、前記共通のインターフェイス（外部関数）を有する各部品オブジェクトを相互に関連付けてメモリ上にツリー構造に展開するステップと、
作業者の操作に従って、前記各部品オブジェクトに共通のインターフェイス（外部関数）を介して、そのメモリ上に展開した前記各部品オブジェクトを実行するステップとを測定機器の演算処理部に実行させる
ことを特徴とする測定機器の制御用プログラムを記憶したコンピュータ読取可能な記憶媒体。
【請求項１５】
前記部品オブジェクトが、各種測定機器の基本機能に関する動作指示を行なうものであって、各種測定機器に共通に利用できる共通の動作プログラムまたは、各種測定機器に固有の動作指示を行なう固有の動作プログラムである請求項１３または１４に記載の測定機器の制御用プログラムを記憶したコンピュータ読取可能な記憶媒体。
【請求項１６】
前記部品オブジェクトにそれぞれ対応する測定部を制御可能とする複数の動作プログラムが含まれており、前記メインプログラムが、これらの部品オブジェクトを適宜実行することにより、複数種類の測定部を制御可能とする請求項１３〜１５の何れかに記載の測定機器の制御用プログラムを記憶したコンピュータ読取可能な記憶媒体。
【請求項１７】
前記部品オブジェクトに測定部からのデータを共通の読取形式で保存する動作プログラムが含まれており、前記メインプログラムが、これらの部品オブジェクトを適宜実行することにより、複数種類の測定部からのデータを処理可能とする請求項１３〜１６の何れかに記載の測定機器の制御用プログラムを記憶したコンピュータ読取可能な記憶媒体。
【請求項１８】
測定機器の測定部に固有の操作を行うために必要な処理を実行するための部品オブジェクトが追加されるとともに、
前記関連付けファイルに、この追加された部品オブジェクトの機能をメインプログラムが呼び出すための指示が追加されることにより、
測定部に適切な固有の操作を実現可能とすることを特徴とする測定機器の制御用プログラムを記憶した請求項１３に記載のコンピュータ読取可能な記憶媒体。
【請求項１９】
測定機器の測定部に固有の操作を行うために必要な処理を実行するための部品オブジェクトを有するモジュールが追加されるとともに、
このモジュールにメインプログラムとのアクセスを可能とする共通インターフェイスが形成される一方、前記関連付けファイルに、この追加されたモジュールに含まれる部品オブジェクトの機能をメインプログラムが呼び出すための指示が追加されることにより、
測定部に適切な固有の操作を実現可能とすることを特徴とする測定機器の制御用プログラムを記憶した請求項１４に記載のコンピュータ読取可能な記憶媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、複数種類の測定部を１つのソフトウェアで操作可能とした測定機器の制御用プログラム、測定機器および測定機器の制御用プログラムを記憶したコンピュータ読取可能な記憶媒体に関する。
【０００２】
【従来の技術】
従来より、分析計などの測定機器はそれぞれ異なる演算処理部に接続されており、各演算処理部には分析計を制御するためのそれぞれ異なる制御用プログラムが、個別にプログラムされていた。図７は従来の分析計に接続された演算処理部の例を示す図である。
【０００３】
図７において、３１，３２は一つの測定対象試料Ｓをそれぞれ異なる方法で測定する測定部（分析部）、３３，３４は測定部３１，３２にそれぞれ対応する演算処理部（以下、パソコンという）である。３３ｍ，３４ｍはパソコン３３，３４の記憶部であり、この記憶部３３ｍ，３４ｍにはそれぞれ測定部３１，３２を制御するための制御用プログラム３３ｐ，３４ｐが記憶されて実行されている。そして、３３ｄ，３４ｄはパソコン３３，３４の表示部であり、この表示部３３ｄ，３４ｄには前記制御用プログラム３３ｐ，３４ｐによって演算処理された測定結果がそれぞれの形で表示されている。
【０００４】
【発明が解決しようとする課題】
ところが、前記構成の測定機器では、前記測定部３１，３２が別々のパソコン３３，３４によって制御されているので、一つの測定対象試料Ｓを複数の測定部３１，３２を用いて異なる方法で分析しようとする場合には、作業者が２台のパソコン３３，３４をそれぞれ操作する必要があり、これが煩わしかった。また、両方の測定部３１，３２から同時に測定値を得たい場合には、両方のパソコン３３，３４を同時に操作して、各表示部３３ｄ，３４ｄを見比べて測定結果を比較する必要があり、操作性が悪かった。
【０００５】
そして、測定結果を管理する場合にも、複数のパソコン３３，３４でそれぞれの形式によって保存されるので、各パソコン３３，３４で保存された測定値の関連性を確認することも難しかった。とりわけ、複数の測定部３１，３２からの測定値データを用いて演算処理をすることにより始めて何らかの測定結果が得られる場合にも、測定値データが複数のパソコン３３，３４でそれぞれ保存されているので、これらの測定値データを用いて演算処理を行うことが難しかった。
【０００６】
また、前記測定部３１，３２を制御するために組み込まれた制御用プログラム３３ｐ，３４ｐは、それぞれの測定部３１，３２のみの制御を目的として開発されているので、測定部３１，３２の性能向上や仕様変更のために、それぞれの制御用プログラム３３ｐ，３４ｐが別々にバージョンアップされたり、これに対応する制御用プログラム３３ｐ，３４ｐの仕様変更なども行われていた。そして、制御用プログラム３３ｐ，３４ｐの仕様変更に伴って各制御用プログラム３３ｐ，３４ｐの基本構成部分が大きくなり、その内容が煩雑になるだけでなく、作業者による操作性もそれぞれ異なっていた。
【０００７】
なお、上述の問題点は測定部３１，３２を制御するために複数のパソコン３３，３４を用いる場合だけ生じるものではない。すなわち、たとえ一つのパソコンによって一つの測定部を制御する場合であっても、新たな測定部を制御するためのプログラムを作成する場合には、そのプログラムを始めから作成する必要が生じていた。また、測定部に仕様変更が生じた場合であってもプログラムの各部が別の部分と関連性があるために、プログラム全体の変更を行う必要があり、開発に時間がかかることは避けられなかった。
【０００８】
加えて、複数の測定部を制御する必要が生じた場合には、各測定部に対応する複数のプログラムを一つのパソコンによって同時に実行することも可能であったが、そのために別々のプログラムを動作させると、その基本部分の構成もプログラマによって異なるものとなるので、そのアウトルックや操作性に統一がなく、結果として操作性が悪くなることがあった。
【０００９】
さらには、複数の測定部を制御する別の方法として、複数の測定部を制御可能とする一つのプログラムを作成することも考えられる。しかしながら、この場合は、測定部の組合せの変更に伴って、プログラム全体にわたる大幅でかつ複雑な修正が必要となっていた。
【００１０】
いずれにしても、従来の構成では、制御用プログラムが複雑にならざるを得ず、プログラムが複雑になればなるほどバグの発生を誘発し、開発期間が長くなったり動作が不安定になったりする原因ともなっていた。そして、プログラマは測定部３１，３２を制御するための全てのプログラムを作成する必要があり、開発に手間がかかっていた。
【００１１】
本発明は、上述の事柄を考慮に入れてなされたものであって、新たな測定部を制御するための制御用プログラムの作成および、プログラム変更の際に、必要部分（部品）のみを独立して容易に組み込み又は取り外して流用することにより、プログラムの作成・変更等を容易に行うことができる測定機器の制御用プログラム、測定機器および測定機器の制御用プログラムを記憶したコンピュータ読取可能な記憶媒体を提供することを目的とする。
【００１２】
【課題を解決するための手段】
上記目的を達成するため、第１発明の測定機器の制御用プログラムは、機能毎に作成され、かつ具体的動作指示が記述された動作プログラムを有する複数の部品オブジェクトと、前記部品オブジェクトから展開される部品オブジェクトのタイプを設定する記述及び部品オブジェクトをツリー構造として展開するための各部品オブジェクト相互の親子関係を示す記述を自然言語で記述した関連付けファイルと、前記各部品オブジェクトおよび前記関連付けファイルとは独立したメインプログラムとを有し、前記各部品オブジェクトは相互依存なく存在し、形成された共通インターフェイスによってメインプログラムに対して直接的に接続されるよう構成され、動作する場合には、前記メインプログラムが、少なくとも、前記共通インターフェイスを有する各部品オブジェクトをメインプログラムに関連付けて認識するステップと、かかる認識と前記関連付けファイルの記述に基づいて、前記各部品オブジェクトを相互に関連付けてメモリ上にツリー構造に展開するステップと、作業者の操作に従って、そのメモリ上に展開した前記各部品オブジェクトを実行するステップとを測定機器の演算処理部に実行させることを特徴としている。（請求項１）
【００１３】
また、前記第１発明の前記測定機器の制御用プログラムは、コンピュータ読取可能な記録媒体に記録して、持ち運び自在にしてもよい。すなわち、測定機器の制御用プログラムを記録したコンピュータ読取可能な記録媒体は、機能毎に作成され、かつ具体的動作指示が記述された動作プログラムを有する各部品オブジェクトと、前記部品オブジェクトから展開される部品オブジェクトのタイプを設定する記述及び部品オブジェクトをツリー構造として展開するための各部品オブジェクト相互の親子関係を示す記述を自然言語で記述した関連付けファイルと、前記各部品オブジェクトおよび前記関連付けファイルとは独立したメインプログラムとを有し、前記各部品オブジェクトは相互依存なく存在し、形成された共通インターフェイスによってメインプログラムに対して直接的に接続されるよう構成され、動作する場合には、前記メインプログラムが、少なくとも、前記共通インターフェイスを有する各部品オブジェクトをメインプログラムに関連付けて認識するステップと、かかる認識と前記関連付けファイルの記述に基づいて、前記各部品オブジェクトを相互に関連付けてメモリ上にツリー構造に展開するステップと、作業者の操作に従って、そのメモリ上に展開した前記各部品オブジェクトを実行するステップとを測定機器の演算処理部に実行させることを特徴とする測定機器の制御用プログラムを記憶したことを特徴とするものである。（請求項１３）
【００１４】
第２発明の測定機器の制御用プログラムは、機能毎に作成され、かつ具体的動作指示が記述された動作プログラムを有する各部品オブジェクトと、前記部品オブジェクトを任意の単位毎に纏めたモジュールと、前記部品オブジェクトから展開される部品オブジェクトのタイプを設定する記述及び部品オブジェクトをツリー構造として展開するための各部品オブジェクト相互の親子関係を示す記述を自然言語で記述した関連付けファイルと、前記各部品オブジェクト、モジュールおよび関連付けファイルとは独立したメインプログラムとを有し、かつ、前記各部品オブジェクトが、相互依存なく存在し、前記メインプログラムと前記各部品オブジェクトとを媒介し、メインプログラムに対して直接的に接続されるための前記各部品オブジェクトに共通のインターフェイス（外部関数）を有する一方、前記各モジュールが、相互依存なく存在し、前記メインプログラムと前記各モジュールとを媒介し、メインプログラムに対して直接的に接続されるための前記各モジュールに共通のインターフェイス（外部関数）を有し、動作する場合には、前記メインプログラムが、少なくとも、前記各モジュールにおける共通のインターフェイス（外部関数）を介して前記各モジュールをメインプログラムに関連付けて認識するステップと、かかる認識と前記関連付けファイルの記述に基づいて、前記各モジュールに含まれ、前記共通のインターフェイス（外部関数）を有する各部品オブジェクトを相互に関連付けてメモリ上にツリー構造に展開するステップと、作業者の操作に従って、前記各部品オブジェクトに共通のインターフェイス（外部関数）を介して、そのメモリ上に展開した前記各部品オブジェクトを実行するステップとを測定機器の演算処理部に実行させることを特徴とするものである。（請求項２）
【００１５】
また、前記第２発明の測定機器の制御用プログラムは、コンピュータ読取可能な記録媒体に記録して、持ち運び自在にしてもよい。すなわち、機能毎に作成され、かつ具体的動作指示が記述された動作プログラムを有する各部品オブジェクトと、前記部品オブジェクトを任意の単位毎に纏めたモジュールと、前記部品オブジェクトから展開される部品オブジェクトのタイプを設定する記述及び部品オブジェクトをツリー構造として展開するための各部品オブジェクト相互の親子関係を示す記述を自然言語で記述した関連付けファイルと、前記各部品オブジェクト、モジュールおよび関連付けファイルとは独立したメインプログラムとを有し、かつ、前記各部品オブジェクトが、相互依存なく存在し、前記メインプログラムと前記各部品オブジェクトとを媒介し、メインプログラムに対して直接的に接続されるための前記各部品オブジェクトに共通のインターフェイス（外部関数）を有する一方、前記各モジュールが、相互依存なく存在し、前記メインプログラムと前記各モジュールとを媒介し、メインプログラムに対して直接的に接続されるための前記各モジュールに共通のインターフェイス（外部関数）を有し、動作する場合には、前記メインプログラムが、少なくとも、前記各モジュールにおける共通のインターフェイス（外部関数）を介して前記各モジュールをメインプログラムに関連付けて認識するステップと、かかる認識と前記関連付けファイルの記述に基づいて、前記各モジュールに含まれ、前記共通のインターフェイス（外部関数）を有する各部品オブジェクトを相互に関連付けてメモリ上にツリー構造に展開するステップと、作業者の操作に従って、前記各部品オブジェクトに共通のインターフェイス（外部関数）を介して、そのメモリ上に展開した前記各部品オブジェクトを実行するステップとを測定機器の演算処理部に実行させることを特徴とする測定機器の制御用プログラムを記憶していることを特徴とするものである。（請求項１４）
【００１６】
何れの場合においても、各部品オブジェクトが機能毎に作成され、かつ具体的動作指示が記述された動作プログラムを有するものであるから、相互に依存するものではなく、これによってプログラムの変更または作成が容易となる。また、メインプログラムは各部品オブジェクトの機能や動作を認識することなく、関連付けファイルに基づいて動作プログラムをメインプログラムに関連付けてメモリ上に展開し、これを呼び出すことができるので、プログラムの変更または作成が容易となる。
【００１７】
前記部品オブジェクトが、各種測定機器の基本機能に関する動作指示を行なうものであって、各種測定機器に共通に利用できる共通の動作プログラムまたは、各種測定機器に固有の動作指示を行なう固有の動作プログラムである場合（請求項３，１５）には、共通の動作プログラムを活用することによって、分析部の制御プログラムの開発を可及的に簡素に行うことができる。例えば、前記プログラムによる制御対象として新たな測定部を組合わせる場合には、新たに必要となった部分のみの動作プログラムを作成または追加し、その他の部分は共通する動作プログラムを流用することが可能となる。この場合、複数の測定部を一つのプログラムで極めて簡単に制御できる。つまり、それだけプログラム作成上の手間を少なくし、時間的コストを低減することができ、バグの発生を抑えることも可能となる。
【００１８】
前記制御プログラムは、前記メインプログラムを用いた測定機器の制御用プログラムであって、測定機器の測定部に固有の操作を行うために必要な処理を実行するための部品オブジェクトが追加されるとともに、前記関連付けファイルに、この追加された部品オブジェクトの機能をメインプログラムが呼び出すための指示が追加されることにより、測定部に適切な固有の操作を実現可能としてもよい。（請求項４，１６）
【００１９】
また、前記制御プログラムは、前記部品オブジェクトに測定部からのデータを共通の読取形式で保存する動作プログラムが含まれており、前記メインプログラムが、これらの部品オブジェクトを適宜実行することにより、複数種類の測定部からのデータを処理可能としてもよい。（請求項５，１７）
【００２０】
前記構成のメインプログラムを用いた測定機器の制御用プログラムは、測定機器の測定部に固有の操作を行うために必要な処理を実行するための部品オブジェクトが追加されるとともに、前記関連付けファイルに、この追加された部品オブジェクトの機能をメインプログラムが呼び出すための指示が追加されることにより、測定部に適切な固有の操作を実現可能とするものであってもよい。（請求項６，１８）
【００２１】
また、前記構成のメインプログラムを用いた測定機器の制御用プログラムは、測定機器の測定部に固有の操作を行うために必要な処理を実行するための部品オブジェクトを有するモジュールが追加されるとともに、このモジュールにメインプログラムとのアクセスを可能とする共通インターフェイスが形成される一方、前記関連付けファイルに、この追加されたモジュールに含まれる部品オブジェクトの機能をメインプログラムが呼び出すための指示が追加されることにより、測定部に適切な固有の操作を実現可能とするものであってもよい。（請求項７，１９）
【００２２】
つまり、前記測定機器の制御用プログラムは、部品オブジェクトを呼び出す（実行する）ための基本となるメインプログラムを中心に、各部品オブジェクトが単独で動作するので、制御したい測定部を加えるためには、この測定部の制御に必要な部品オブジェクトを作成し、必要に応じて部品オブジェクトの追加および削除を関連付けファイルにて行うことができる。
【００２３】
とりわけ請求項２に記載の測定機器の制御用プログラムでは、各部品オブジェクトの呼び出し形式が共通インターフェイスによって共通化されるので、メインプログラムとモジュールおよび各モジュール間を完全に切り離して考えることができ、モジュールの作成が極めて容易となる。
【００２４】
すなわち、前記測定機器の制御用プログラムを用いることにより、測定機器の固有の測定に必要なものは、その固有のオブジェクトをつくり、関連付けファイルを書きかえるだけであり、簡単に固有の測定機能を実現できる。
【００２５】
また、部品オブジェクトの書換えや関連付けファイルの変更を行っても、測定機器の制御用プログラムを構成する他のプログラムに対するリンクを行う必要が全くないので、プログラムの全体をコンパイルしなおす必要がなく、部品オブジェクトの書換えや関連付けファイルの変更を行った後、これをそのまま実行することができる。
【００２６】
前記部品オブジェクトが、各種測定機器の基本機能に関する動作指示を行なうものであって、各種測定機器に共通に利用できる共通の部品オブジェクトまたは、各種測定機器に固有の動作指示を行なう固有の部品オブジェクトである場合には、共通の部品オブジェクトによって、測定機器の制御用プログラムを構成するソフトウェアの基本構成部分（プラットフォーム）を共通の部品オブジェクトによって共通化することができ、この部品オブジェクトを複数の測定部を制御するのに再利用することができ、開発費用を抑えることができると共に、バグの発生を最小限に抑えることができる。そして、使用者にとっては基本的な操作が統一されるので、その操作性が良くなる。
【００２７】
すなわち、前記メインプログラムと共通の部品オブジェクトとによって、測定部の種類に依存することのない制御用プログラムの基本を成すフレームワークを形成する場合には、フレームワークによる処理がどの測定部を有する測定機器においても共通となるから、ソフトウェアのプラットフォームを共通化でき、操作時における見た目（アウトルック）が同じであり、その操作性に一貫性を持たせることができ、デザインを統合できる。
【００２８】
前記関連付けファイルが、人間が読取可能な形式で記述されている場合には、プログラマが関連付けファイルの編集を行うときに書かれている内容を理解しやすく、関連付けファイルの記載の変更を容易に行うことができるので、プログラムの変更を容易に行うことができる。
【００２９】
前記部品オブジェクトにそれぞれ対応する測定部を制御可能とする複数の動作プログラムが含まれており、前記メインプログラムが、これらの部品オブジェクトを適宜実行することにより、複数種類の測定部を１つのアプリケーション（測定機器の制御用プログラム）で動作させることが可能となる。そして、１つの測定機器の制御用プログラムによって複数の測定部を制御することにより、複数の測定部を同時に操作することも可能となり、操作性が向上する。
【００３０】
前記部品オブジェクトに測定部からのデータを共通の読取形式で保存する動作プログラムが含まれており、前記メインプログラムが、これらの部品オブジェクトを適宜実行することにより、複数種類の測定部からのデータをまとめて処理可能とする場合には、複数の測定部からの測定値データを１つの制御用プログラムによって処理できるので、各測定値データを組み合わせた演算処理を行って分析結果を出力することも可能となる。
【００３１】
前記部品オブジェクトが複数の測定部から得られた測定値データを合成する演算処理によって新たな測定結果を生成する演算部品オブジェクトを有する場合には、複数の測定部から得られる測定値データを有効に活用して、意味のある分析を行うことができる。
【００３２】
本発明の測定機器の制御用プログラムの作成方法は、前記メインプログラムを用い、測定機器の測定部に固有の操作を行うために必要な処理を実行するための部品オブジェクトを作成し、この部品オブジェクトに対応してメインプログラムがその機能を呼び出すための指示を記した前記関連付けファイル（スクリプトファイル）の追加または変更を行うことにより、測定部に適切な固有の操作を実現可能とすることを特徴としている。
【００３３】
第３発明の測定機器は、機能毎に作成され、かつ具体的動作指示が記述された動作プログラムを有する各部品オブジェクトと、前記部品オブジェクトから展開される部品オブジェクトのタイプを設定する記述及び部品オブジェクトをツリー構造として展開するための各部品オブジェクト相互の親子関係を示す記述を自然言語で記述した関連付けファイルと、前記各部品オブジェクトおよび前記関連付けファイルとは独立したメインプログラムとを有し、前記各部品オブジェクトは相互依存なく存在し、形成された共通インターフェイスによってメインプログラムに対して直接的に接続されるよう構成された制御用プログラムを記憶する記憶部を有するとともに、動作する場合には、この制御用プログラムによって、少なくとも、前記共通インターフェイスを有する各部品オブジェクトをメインプログラムに関連付けて認識するステップと、かかる認識と前記関連付けファイルの記述に基づいて、前記各部品オブジェクトを相互に関連付けてメモリ上にツリー構造に展開するステップと、作業者の操作に従って、そのメモリ上に展開した前記各部品オブジェクトを実行するステップとを実行する演算処理部を有することを特徴としている。（請求項８）
【００３４】
また、第４発明の測定機器は、機能毎に作成され、かつ具体的動作指示が記述された動作プログラムを有する各部品オブジェクトと、前記部品オブジェクトを任意の単位毎に纏めたモジュールと、前記部品オブジェクトから展開される部品オブジェクトのタイプを設定する記述及び部品オブジェクトをツリー構造として展開するための各部品オブジェクト相互の親子関係を示す記述を自然言語で記述した関連付けファイルと、前記各部品オブジェクト、モジュールおよび関連付けファイルとは独立したメインプログラムとを有し、かつ、前記各部品オブジェクトが、相互依存なく存在し、前記メインプログラムと前記各部品オブジェクトとを媒介し、メインプログラムに対して直接的に接続されるための前記各部品オブジェクトに共通のインターフェイス（外部関数）を有する一方、前記各モジュールが、相互依存なく存在し、前記メインプログラムと前記各モジュールとを媒介し、メインプログラムに対して直接的に接続されるための前記各モジュールに共通のインターフェイス（外部関数）を有する制御用プログラムを記憶する記憶部を有するとともに、動作する場合には、この制御用プログラムによって、少なくとも、前記各モジュールにおける共通のインターフェイス（外部関数）を介して各モジュールをメインプログラムに関連付けて認識するステップと、かかる認識と前記関連付けファイルの記述に基づいて、前記各モジュールに含まれ、前記共通のインターフェイス（外部関数）を有する各部品オブジェクトを相互に関連付けてメモリ上にツリー構造に展開するステップと、作業者の操作に従って、前記各部品オブジェクトに共通のインターフェイス（外部関数）を介して、そのメモリ上に展開した前記各部品オブジェクトを実行するステップとを実行する演算処理部を有することを特徴としている。（請求項９）
【００３５】
【実施例】
図１は、測定対象試料Ｓを２つの測定原理を有する測定部によって分析する測定機器１の例を示す図である。図１において、２は本例における測定機器１の測定部、３は測定部２に接続されて演算処理などを行なう演算処理部（以下、パソコンという）である。２ａは測定対象試料ＳにＸ線を照射して、その顕微画像を出力する測定部、２ｂは測定対象試料Ｓにレーザ光を照射して、その散乱光を測定する粒径分布の測定部である。すなわち、本例の測定機器１は測定対象試料Ｓを異なる原理によって測定する測定部２ａ，２ｂと、パソコン３とからなる。
【００３６】
なお、本例では一例としてＸ線画像を撮像する測定部２ａと、粒径分布を測定する測定部２ｂを例示しているが、本発明はこれに限られたものではなく、あらゆる測定原理を用いることが可能であることはいうまでもない。また、前記測定部２ａ，２ｂは同じ測定対象試料Ｓを測定するものであることに限定されるものではない。
【００３７】
３ｍはパソコン３の記憶部であり、この記憶部３ｍにはそれぞれ測定部２ａ，２ｂを制御するための制御用プログラムＰが記憶されて実行可能である。制御用プログラムＰは後述するメインプログラムＰｋ（以下、カーネルという）および各機能に分けられた複数のモジュールを集めて成るモジュール群Ｐａ〜Ｐｆなどからなる。
【００３８】
また、３ｄはパソコン３の表示部であり、この表示部３ｄには前記制御用プログラムＰによって演算処理された測定結果のデータＤａ，Ｄｂがそれぞれの形で表示されている。なお、本例では、測定部２ｂによって測定される測定値データＤｂとして、数値の一覧であるテーブルデータＤｂｔとグラフにして示すグラフデータＤｂｇとを表示している。
【００３９】
図２は、前記測定機器１において、制御用プログラムＰの概略を概念的に説明する概略図である。なお、図２はソフトウェア構成および動作を説明するものであるから、ハードウェア構成は記載していない。つまり、本発明を実施するのにハード的なプラットフォームは問題ではないのでこれを省略して、ソフトウェア的なプラットフォームを詳述している。
【００４０】
図２において、Ｐｋは前記測定機器の制御用プログラムＰの核心を形成するカーネル、Ｐａは作業者からの操作を入力したり、作業者に対して測定値などを出力したりするためのＧＵＩなどを構成するためのボックス，ボタンといったグラフィック部品などの部品オブジェクトを含む複数のモジュールを集めてなるモジュール群、Ｐｂはごく基本的な動作をするために必要とされる部品オブジェクトを含む複数のモジュールを集めてなるモジュール群であって、例えば、測定機器の種類に依存しないファイル操作機能および各種データの出力機能を有する。
【００４１】
そして、これらの構成要素Ｐｋ，Ｐａ，Ｐｂによってフレームワーク４を構成している。すなわち、フレームワーク４は、カーネルＰｋと一般的な分析計の制御における基本的な動作を実行するために必要とされる部品オブジェクトを含む複数のモジュールを集めてなるモジュール群Ｐａ，Ｐｂを有してなるから、その他の測定機器においても共通に利用できるものである。
【００４２】
Ｐｃ，Ｐｄは本発明の制御用プログラムによって測定部２ａ，２ｂを制御するために必要とされる特有の処理を実行するための固有の部品オブジェクトを含む複数のモジュールを集めてなるモジュール群、Ｐｅは各測定部２ａ，２ｂから得られた測定値データを合成する演算処理によって新たな測定結果を生成する演算部品オブジェクトを含む複数のモジュールを集めてなるモジュール群、Ｐｆ…は測定値を加工したり、演算によって分析したりするなどの処理を行なう部品オブジェクトを含む複数のモジュールを集めてなるほかの各モジュール群である。すなわち、本例の実行用アプリケーションはモジュールＰａ〜Ｐｆ群…からなる。
なお、本例においては、複数のモジュールをある一定の機能ごとにまとめてモジュール群として表現しているが、本発明は、かかる場合に限定されるものではない。すなわち、本件発明は、モジュール群を構成することなく、複数のモジュールがそれぞれ単独で存在する場合にも、適用できる。
【００４３】
そして、モジュール群Ｐａ，Ｐｂ…を構成する群全てのモジュールはそれぞれ共通インターフェイスＩａを有しており、この共通インターフェイスＩａによって、それぞれがカーネルＰｋに対して直接的に接続されている。また、各モジュール同士でデータのやり取りをするインターフェイスは用意されておらず、全てのモジュールはカーネルＰｋを介して接続される。これによって、各モジュールは相互に依存することがない。
【００４４】
６，７…は前記モジュール群Ｐａ，Ｐｂ…を構成するモジュールの例を示し、このモジュール６，７…内にはそれぞれ一又は複数の部品オブジェクトＯ１，Ｏ２…及びＯ３，Ｏ４，Ｏ５，Ｏ６…を収納している。
【００４５】
そして、各モジュール６，７…にそれぞれ対応して少なくとも一つの関連付けファイル６ａ，７ａ…を有している。なお、関連付けファイル６ａ，７ａ…はモジュール６，７…に対して一つずつであるとは限らず、一つのモジュール６に対して複数の関連付けファイル６ａ，６ｂ…が存在してもよい。
【００４６】
また、各モジュール６，７…内には部品オブジェクトＯ１，Ｏ２ …及びＯ３，Ｏ４，Ｏ５，Ｏ６…を形成し、各オブジェクトＯ１，Ｏ２…のそれぞれにカーネル１との共通インターフェイスＩｂを形成し、それぞれがカーネルＰｋに対して直接的に接続されるように構成している。また、このとき各部品オブジェクトＯ１，Ｏ２…はカーネルＰｋに関連付けられるが、相互依存がないので、各部品オブジェクトＯ１，Ｏ２…の着脱は極めて容易に行うことができる。
【００４７】
特に、前記基本モジュールＰｂに対応するモジュール７には、測定機器の種類に依存しない各種データの出力機能を実現するためのオブジェクトＯ３，Ｏ４…を有している。これらのオブジェクトＯ３，Ｏ４…には、後で詳述するように、例えば、テーブルデータ，２次元データ，３次元データの表示機能など測定部２ａ，２ｂの種類に関係なく含められる。
【００４８】
図３は前記カーネルＰｋが各部品オブジェクトＯ１，Ｏ２…及びＯ３，Ｏ４，Ｏ５，Ｏ６…を展開して、その各部品オブジェクトＯ１，Ｏ２…及びＯ３，Ｏ４，Ｏ５，Ｏ６…を実行する場合の動作の例を示す流れ図である。
図３に示すように、カーネルＰｋはまず全てのファイルにアクセスし、モジュール６，７…を検索する。（ステップＳ１）
【００４９】
そして、カーネルＰｋは見つけた全てのモジュールに対して前記共通インターフェイスＩａを用いたアクセスを試みて、その中から前記カーネルＰｋに対応するインターフェイスＩａを有するモジュール６，７…を、このカーネル１に対応するものとして登録（認識）する。（ステップＳ２）すなわち、この時点でカーネル１は所有するモジュール６，７…の数を把握することになる。
【００５０】
次いで、カーネルＰｋは、モジュール６，７…に対応する関連付けファイル６ａ，６ｂ，７ａ…を検索する（ステップＳ３）。
さらに、カーネルＰｋは発見した関連付けファイル６ａ，６ｂ，７ａ…の内容を読み出して、その内容をメモリに収納する。（ステップＳ４）
【００５１】
カーネルＰｋは読み出した関連付けファイル６ａ，６ｂ，７ａ…を解釈して、そこでの部品オブジェクトに関する記載に基づき、各モジュール６，７…内の例えばオブジェクトＯ１，Ｏ２…及びＯ３，Ｏ４，Ｏ５，Ｏ６…を相互に関連付けて展開する。そして、カーネルＰｋはかかる展開された部品オブジェクトを実行し、画面上に対応するウィンドウを生成したり、操作スイッチなどを生成したりする。（ステップＳ５）
【００５２】
また、カーネルＰｋは関連付けファイル６ａ，６ｂ，７ａ…の指示によっては一つのオブジェクトＯ１，Ｏ２…を複数回用いて展開し、関連付けを行う場合もある。そして、カーネルＰｋはモジュールの数や関連付けファイルの内容、そして各部品オブジェクトＯ１，Ｏ２…によってどのような処理が行われるのかなどをあらかじめ把握しておく必要がない。すなわち、各モジュール及び各部品オブジェクトＯ１，Ｏ２…が予め関連付けられていないだけでなく、カーネルＰｋとそれらも相互に依存することなく存在している。
【００５３】
カーネルＰｋは、収納したすべての関連付けファイル６ａ，６ｂ，７ａ…の内容を実行し、部品オブジェクトを展開し終えたかどうかを判断する。（ステップＳ６）そして、例えば関連付けファイル７ａ…に基づく展開が残されている場合には、ステップＳ５に処理を戻す。
【００５４】
全ての関連付けファイルに基づくオブジェクトＯ１，Ｏ２…の展開を完了し、オブジェクトＯ１，Ｏ２…の関連付けを終えると、カーネルＰｋは展開作業を終了する。次いで、カーネルＰｋは作業者の操作に従って、展開したオブジェクトＯ１，Ｏ２…を実行することができる。（ステップＳ７）すなわち、ステップＳ７において、カーネル１は、作業者の操作に従って各部品オブジェクトＯ１，Ｏ２…を実行することにより、作業者が望む動作を行うことができる。
【００５５】
図４は各関連付けファイル６ａ，６ｂ，７ａ…の一例と部品オブジェクトのツリー構造の一例及び画面に表示されるウィンドウを示す図である。図４（Ａ）は例示された関連付けファイルの内容を示し、図４（Ｂ）はその関連付けファイルに基づいて部品オブジェクトＯ１，Ｏ２…を相互に関連付けてツリー構造に展開したものを示している。また、図４（Ｃ）はカーネル１がこの関連付けファイルを解釈して画面上に生成するウィンドウを示している。
【００５６】
図４（Ａ）に示す符号１０はこの関連付けファイルに対応して展開される部品オブジェクトのタイプを設定する記述（Dialog) であり、記述１０は、Ｗｉｄｇｅｔという部品オブジェクトから、Ｄｉａｌｏｇというタイプの部品オブジェクトを展開することを示している。また、このウィンドウタイプの設定には他にも、ポップアップウィンドウ（popup window) やＭＤＩビュー（MDI view) など種々の設定が可能である。
【００５７】
また、１４，１５，１６は、それぞれこの関連付けファイルに対応して展開される部品オブジェクトのタイプを設定する記述（Ｅｄｉｔ) , （ＰｕｓｈＢｏｔｔｏｎ),（ＰｕｓｈＢｏｔｔｏｎ) である。
すなわち、記述１４は、Ｗｉｄｇｅｔという部品オブジェクトから、Ｅｄｉｔというタイプの部品オブジェクトを展開することを示している。
また、記述１５は、Ｗｉｄｇｅｔという部品オブジェクトから、ＰｕｓｈＢｏｔｔｏｎというタイプの部品オブジェクトを展開することを示している。
そして、記述１６は、Ｗｉｄｇｅｔという部品オブジェクトから、ＰｕｓｈＢｏｔｔｏｎというタイプの部品オブジェクトを展開することを示している。
【００５８】
本例の場合、カーネルＰｋは、まず関連付けファイル図４（Ａ）のこれら記述にしたがって、メモリ上に部品オブジェクトを展開して図４（Ｂ）に示すようなツリー構造でもって関連付ける。すなわち、カーネルＰｋは関連付けファイルの記述１０を解釈して、図４（Ｂ）に示す通り、Ｄａｉｌｏｇ１０ｔとして展開し、記述１４，１５，１６のそれぞれにしたがって、このＤａｉｌｏｇの下位にそれぞれＥｄｉｔ１４ｔ，Ｐｕｓｈｂｏｔｔｏｎ１５ｔ, Ｐｕｓｈｂｏｔｔｏｎ１６ｔとして展開し、これら部品オブジェクト相互の関係（親子関係）を示す関連付けファイルの記述（図４（Ａ）では省略している。）にしたがって、Ｄａｉｌｏｇ１０ｔ，Ｅｄｉｔ１４ｔ，Ｐｕｓｈｂｏｔｔｏｎ１５ｔ, Ｐｕｓｈｂｏｔｔｏｎ１６ｔをツリー構造として関連付けている。
【００５９】
そして、カーネルＰｋは、ツリー構造として関連付けて展開したそれらの部品オブジェクトを実行して、図４（Ｃ）に示すように編集枠１７，プッシュボタン１８，１９などを有するダイアログボックスウィンドウ１１を生成する。なお、１２は設定を終了したときに押されるＯＫボタン、１３は設定を中止するときに押されるキャンセルボタンである。
【００６０】
これらも図４（Ａ）及び（Ｂ）には図示しないが、上記の手順と同様の手順で展開され、表示される。１５ａ，１６ａは、部品オブジェクトＰｕｓｈｂｏｔｔｏｎ, Ｐｕｓｈｂｏｔｔｏｎそれぞれに関する記述であって、各プッシュボタン１８，１９に表示する文字を指定する記述である。カーネルＰｋが部品オブジェクトＰｕｓｈｂｏｔｔｏｎ, Ｐｕｓｈｂｏｔｔｏｎそれぞれを実行し、各プッシュボタン１８，１９を表示する場合に、文字１８ａ，１９ａがプッシュボタン１８、１９内に表示される。
【００６１】
また、２０，２１は部品オブジェクトＰｕｓｈｂｏｔｔｏｎ, Ｐｕｓｈｂｏｔｔｏｎそれぞれに関する記述であって、前記プッシュボタン１８，１９を表示する位置を示す記述であり、各々ダイアログボックス１１内の指定された位置に前記プッシュボタン１８，１９が表示される。本例ではプッシュボタン１８が縦方向に８０の位置、プッシュボタン１９が縦方向に１６０の位置に表示されるように設定されている。
【００６２】
さらに、２２，２３は作業者が各プッシュボタン１８，１９を操作した場合の処理を示す記述であり、記述２２はオープン（Open) であり、記述２３はクローズ（Close)である。
【００６３】
前記関連付けファイル２２，２３の記述は、何れもリンク先として他の部品オブジェクトに関連付ける記述２２ａ，２３ａを有している。すなわち、本例では、記述２２ａ，２３ａは、そのリンク先の部品オブジェクトのアドレスを示している。そして、作業者がマウスなどのポインティングデバイスを用いてプッシュボタン１８，１９を指定した場合には、カーネルＰｋが既にツリー構造に展開したリンク先の部品オブジェクトを実行することにより、ウィンドウボックスを生成し、画面上に表示する。
【００６４】
以上、具体例を用いて詳述したように、本例では、前記関連付けファイル６ａ，６ｂ，７ａ…はいずれも決まった形の自然言語によって記述されており、人間が容易に読取可能な形式で記述されている。そして、この関連付けファイル６ａ，６ｂ，７ａ…は、カーネルＰｋがモジュール６，７…内のオブジェクトＯ１，Ｏ２…を認識し、その認識した部品オブジェクトＯ１，Ｏ２を展開してツリー構造として関連付けるための記述、展開された部品オブジェクトに関する記述である部品オブジェクトのパラメータ、展開された部品オブジェクト相互の親子関係を示す記述及びリンク先として展開された他の部品オブジェクトに関連付ける記述などの非ノイマン型の指示（すなわち、順次実行されるための指示ではなく、配置やリンク先などの状態を示すための指示）を記述したものである。
【００６５】
図５は前記オブジェクトＯ１，Ｏ２…として、モジュール６，７…内に収容されるソフトウェア部品の例を示す図である。具体的には、図５に示すように、オブジェクトＯ１，Ｏ２…として、メニュー，ツールバー，ボタン，ダイアログ，編集枠などのＧＵＩ部品のオブジェクトＯｇ、二次元データ，三次元データ，テーブルデータの表示用部品のオブジェクトＯｄ、測定値の演算処理などのメソッドファイル処理用部品のオブジェクトＯｆ、および、プロパティ表示用部品のオブジェクトＯｐなどがある。
【００６６】
上記オブジェクトＯｇ，Ｏｄ，Ｏｆ，Ｏｐ等は全て共通インターフェイスＩｂの関数を揃えることにより、カーネルＰｋは部分オブジェクトＯｇ，Ｏｄ，Ｏｆ，Ｏｐ等に直接的に接続される。また、部品オブジェクトＯｇ，Ｏｄ，Ｏｆ，Ｏｐ等は、各部品オブジェクトＯｇ，Ｏｄ，Ｏｆ，Ｏｐ等はそれら同士でデータのやり取りをするインターフェイスは有さず、全てはカーネルＰｋを介して接続され、各々独立したものとなっている。また、図４に示した例のように、ボタンなどの部品を幾つか用いる場合には、ＧＵＩ部品であるオブジェクトＯｇを複数回用いて展開し、関連付けを行うこともある。つまり、プログラマは同じようなオブジェクトを幾つも作成する必要がない。
【００６７】
さらに、前記ＧＵＩ部品などの基本的なオブジェクトＯｇは部品オブジェクトＯｇに何ら手を加えることなく、これを他のプログラムで流用することができる。これによってソフトウェアの開発を容易にするだけでなく、作業者にとっても画面の見た目（アウトルック）および操作性が統一されるので、扱いやすくなる。
【００６８】
つまり、ソフトウェアのプログラマは余り重要でないＧＵＩ部品などのプログラミングから開放されて、測定値の演算処理などその測定機器に固有の動作を司る部品オブジェクトのプログラムに集中することができ、より効果的で、高性能なソフトウェアを提供することができる。
【００６９】
さらに、各オブジェクトＯｇ，Ｏｄ，Ｏｆ，ＯｐはカーネルＰｋに対して直接的にアクセスするための共通インターフェイスＩｂとなる関数を有しており、他のオブジェクトＯｇ，Ｏｄ，Ｏｆ，Ｏｐとのアクセスについて考慮する必要が全くないので、測定機器１の仕様変更やグレードアップのためにプログラムを変更する場合にも、フォルダ５内の必要とする部品オブジェクトの変更、追加又は削除を行い、これに伴なってモジュールや関連付けファイルを変更または追加等するなどして極めて容易にプログラムに変更を行いうる。すなわち、プログラム変更の際に、部品オブジェクト相互の依存関係を考慮せずに、必要とする部分のみの変更を加えることができ、変更部分を他のプログラムにリンクしたり、コンパイルを再び行ったりする必要もない。
【００７０】
また、他のプログラマが作ったアプリケーションを分析装置のプログラム内に機能として組み込みたい場合には、共通インターフェイスＩｂを持たせるためのプログラミングを行うだけで、これをオブジェクトとして用いることができる。なお、共通インターフェイスＩａを持たせるようにプログラミングすることにより、共通インターフェイスＩｂを有する複数の部品オブジェクトをたとえば関連機能単位などの任意の単位でまとめたモジュールとして追加することも可能となる。
【００７１】
以上の具体例を用いて詳述したように、本発明の測定機器の制御用プログラムＰでは、測定部２ａ，２ｂの固有の部品オブジェクトを含む複数のモジュールを集めてなるモジュール群Ｐｃ，Ｐｄを有しているので、これらのモジュール群Ｐｃ，Ｐｄ内モジュールが有する固有の部品オブジェクトにより各測定部２ａ，２ｂに特有の制御を行って、測定値を入力し、この測定値をその他のモジュール群Ｐａ，Ｐｂ，Ｐｅ…内のモジュールに含まれる部品オブジェクトを用いて演算処理、画面への表示、ファイルへの出力を行うことができる。
【００７２】
すなわち、図１に示した本例の場合のように一つの測定対象試料Ｓを異なる測定部２ａ，２ｂによって分析する場合にも、一つの制御用プログラムＰによって複数の測定部２ａ，２ｂを同時に制御することができ、２つの測定部２ａ，２ｂによって測定されたデータを同じ表示画面３ｄなどに出力することが可能となる。なお、オブジェクトＯｄによる出力は表示画面３ｄに表示することのみならず、記録用紙に対する印刷などによって行われてもよいことはいうまでもない。
【００７３】
さらに、モジュール群Ｐｅ内のモジュールに含まれる前記演算部品オブジェクトは測定部２ａ，２ｂから得られた測定値を互いに関連付けて演算処理することにより、新たな分析結果を算出するものであり、２つの測定部２ａ，２ｂによって得られた測定値をリアルタイムに活用して、より有用な分析結果を得ることができる。たとえば、温度などの測定パラメータを変化させながら２つの測定部２ａ，２ｂからの測定値を温度値とともに演算処理することにより、１回の測定パラメータの変化に対して複数の分析を行うことができる。
【００７４】
また、例えば測定部２ａ，２ｂが動的粒径分布測定装置とレーザ光散乱式粒度分布測定装置の組み合わせである場合のように、測定部２ａ，２ｂの測定値が互いに補い合うことができるものである場合には、モジュール群Ｐｅ内のモジュールに含まれる前記演算部品オブジェクトによる補償演算によって全ての測定範囲において精度の高い測定を行うことができる。なお、本発明は演算の方法や、測定部２ａ，２ｂの構成を限定するものでないことはいうまでもない。
【００７５】
むしろ、本発明では、各種の測定部の様々な組み合わせを容易にする。すなわち、上述の動的粒径分布測定装置とレーザ光散乱式粒度分布測定装置の組み合わせに、さらに他の測定原理を利用した測定部を付加したとしても、従来の制御プログラムにその付加された測定部に固有の部品オブジェクトを単に追加することにより、制御プログラムの作成、変更を容易に行うことができる。
【００７６】
なお、この際の部品オブジェクトの追加等は、上述したプログラム作成変更と同様の手順で行うことができる。また、かかる固有の部品オブジェクトが、過去にプログラムされている場合には、この過去のものを流用することにより、何ら部品オブジェクトを別途作成することなく、関連付けファイルを書き換えるだけで、制御用プログラムを作成、変更することができる。したがって、様々なバリエーションで各種測定部を組み合わせたとしても、制御用プログラムを極めて容易に作成することができる。
【００７７】
図６は同一画面３ｄ上で、複数種類の測定部２ａ，２ｂによって測定したデータを表示させる例を示す図である。図６において、３０は測定値データＤａ，Ｄｂを表示する枠であり、この部分に粒度分布計で測定した分布グラフや、電子顕微鏡で観測した画面などを読み出すことができる。本例の場合、Ｄｂｔは粒径分布測定装置２の測定結果の数値を一覧表にして示す測定値データであり、Ｄｂｇは粒径分布をグラフにして示す測定値データである、一方、Ｄａは同じサンプルを別の測定部２ａで観察した電子顕微鏡画像を示す測定値データである。
【００７８】
これらの測定値データＤｂ，Ｄａの表示は何れも測定部２ａ，２ｂの種類に関係なく予め組み込まれるモジュール群Ｐｂ内のモジュールに含まれる、各種データ（数値からなるテーブルデータ、グラフからなる二次元データ、画像からなる三次元データ）の出力機能を持つ部品オブジェクトＯｄを展開することにより行われるものである。したがって、表示部３ｄに対する測定値データＤｂ，Ｄａの表示は測定部２ａ，２ｂの種類に全く依存することなく行うことができ、両測定部２ａ，２ｂの測定値データＤｂ，Ｄａを同じ表示画面３ｄに出力して、これを比較検討できる。
【００７９】
なお、Ｇ1 〜Ｇ5 は前記ＧＵＩを構成する部品オブジェクトＯｇを展開することにより形成されたアイコンである。これら部品オブジェクトを測定機器の他の制御用プログラムにおいても共通化することにより、統一したロゴや色などを用いることが容易になり、操作性の向上のみならず、同じフレームワーク４を有する測定装置１を扱ったことのある作業者であればその表示画面３ｄを一目するだけで、共通の操作で制御可能であることを認識できる。
【００８０】
上述した例では、カーネルＰｋ，モジュール６，７…，関連付けファイル６ａ，６ｂ，７ａ…が始めからコンピュータのメモリおよびハードディスクに記録されている例を開示しているが、これらのプログラムおよびデータのファイルはＣＤ−ＲＯＭやフロッピーディスクなどの補助記録媒体に記録されていてもよい。この場合、既存の測定装置の制御用プログラムとして、本発明の測定機器の制御用プログラムＰを記録した記録媒体を用いることができる。
【００８１】
また、上述した例では、測定機器１を測定部２と演算処理を行なうパソコン３に分けた例を示しているが、本発明は測定部が演算処理部と分離されていることを限定するものではない。つまり、本発明の測定機器の制御用プログラムは測定機器１に内蔵のマイクロコンピュータなど、あらゆる形態のコンピュータによって実行されるものであってもよい。
【００８２】
【発明の効果】
以上説明したように、本発明によれば、複数種類の測定部を１つのアプリケーションで制御することが可能となる。また、測定機器の制御用プログラムを構成するソフトウェアの基本構成部分を基本部品オブジェクトによって共通化することにより、基本部品オブジェクトを複数の測定部を制御するのに再利用することができ、開発費用を抑えることができると共に、バグの発生を最小限に抑えることができる。そして、使用者にとっては基本的な操作が基本部品オブジェクトによって統一されるので、各種測定機器の操作が容易になる。
【００８３】
また、各固有の部品オブジェクトは各測定部に対応して作成されるので、複数の測定部を制御するための各固有の部品オブジェクトを追加等するだけで、複数種類の測定部を１つのアプリケーション（測定機器の制御用プログラム）で動作させることが可能となる。そして、１つの測定機器の制御用プログラムによって複数の測定部を制御することにより、複数の測定部を同時に操作することも可能となり、操作性が向上する。さらに、複数の測定部からの測定値データが１つの制御用プログラムによって処理されるので、各測定値データを組み合わせた演算処理を行って分析結果を出力することも可能となる。
【００８４】
前記モジュールが複数の測定部から得られた測定値データを合成する演算処理によって新たな測定結果を生成する演算部品オブジェクトを含む演算モジュールを有する場合には、複数の測定部から得られる測定値データを有効に活用して、極めて容易に付加価値の高い、新たな意味のある分析結果を算出することができる。
【図面の簡単な説明】
【図１】  本発明の測定機器の構成を説明する図である。
【図２】  前記測定機器の制御用プログラムの構成および動作を説明する図である。
【図３】  前記測定機器の制御用プログラムを構成するカーネル１の動作を説明するフローチャートである。
【図４】  前記測定機器の制御用プログラムによって用いられる関連付けファイルと画面表示との関係を説明する図である。
【図５】  前記測定機器の制御用プログラムによって用いられるオブジェクトの例を示す図である。
【図６】  本発明の測定機器の制御用プログラムによる表示画面の例を示す図である。
【図７】  従来の測定機器の例を示す図である。
【符号の説明】
１…測定機器、２（２ａ，２ｂ）…測定部、３…コンピュータ、３ｍ…記録媒体、４…フレームワーク、６，７，…モジュール、６ａ，６ｂ，７ａ，…関連付けファイル、Ｉａ，Ｉｂ…共通インターフェイス、Ｏ１，Ｏ２，…部品オブジェクト、Ｐ…制御用プログラム、Ｐａ，Ｐｂ…基本モジュール、Ｐｃ，Ｐｄ，Ｐｅ，Ｐｆ…固有モジュール、Ｐｋ…メインプログラム（カーネル）。
【図１】
0003971915.tif 000002
【図２】
0003971915.tif 000003
【図３】
0003971915.tif 000004
【図４】
0003971915.tif 000005
【図５】
0003971915.tif 000006
【図６】
0003971915.tif 000007
【図７】
0003971915.tif 000008