(57)【要約】【課題】制御装置及び制御対象機器のプログラムの作成を容易にする。【解決手段】制御装置１０のプログラム実行部１１は、制御対象機器２０の共有フォルダ２２０にアクセスして、制御対象機器２０を制御するための制御コマンドを含むコマンドファイル２２１を作成する。制御対象機器２０のコマンド実行部２１は、共有フォルダ２２０からコマンドファイル２２１を読み込んで、このコマンドファイル２２１に含まれる制御コマンドに基づく処理を実行し、共有フォルダ２２０内に、制御コマンドを実行した結果を含む結果ファイル２２２を作成する。制御装置１０のプログラム実行部１１は、共有フォルダ２２０から結果ファイル２２２を読み込み、制御対象機器２０のコマンド実行部２１により実行された制御コマンドの実行結果を表示部１２に表示させる。【選択図】図１
2008071126.tif 000002
【特許請求の範囲】
【請求項１】
制御装置と、制御対象機器と、前記制御装置及び制御対象機器の双方からアクセス可能な共有フォルダを有するファイル格納手段と、を備え、
前記制御装置は、前記共有フォルダにアクセスして前記制御対象機器を制御するための制御コマンドを含むコマンドファイルを作成するコマンドファイル作成手段を備え、
前記制御対象機器は、前記共有フォルダにアクセスして前記共有フォルダから前記コマンドファイルを読み込んで、当該コマンドファイルに含まれる制御コマンドを実行するコマンド実行手段を備えたことを特徴とする制御システム。
【請求項２】
前記制御対象機器は、さらに、前記共有フォルダにアクセスして前記制御コマンドを実行した結果を含む結果ファイルを作成する結果ファイル作成手段を備え、
前記制御装置は、さらに、前記共有フォルダにアクセスして前記共有フォルダから前記結果ファイルを読み込む読み込み手段を備えたことを特徴とする請求項１に記載の制御システム。
【請求項３】
前記共有フォルダは、前記制御対象機器内に設けられることを特徴とする請求項１又は２に記載の制御システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御対象機器を制御する制御システムに関する。
【背景技術】
【０００２】
従来、アナライザや信号発生器等の機器を外部から制御する場合には、ＰＣ（Personal Computer）等の制御装置と制御対象となる機器（以下、制御対象機器という。）とを通信インターフェースを介して接続し、制御装置から制御対象機器に、通信インターフェースを制御するＡＰＩ（Application Program Interface）を使用して、パラメータの設定や、ある動作をさせるための制御コマンドを送信している（例えば、特許文献１、特許文献２、特許文献３参照）。
【０００３】
図５を参照して、従来の制御システム１００について説明する。
制御システム１００は、制御装置１１０と制御対象機器１２０（例えば、信号発生器等）とがＧＰＩＢ（General Purpose Interface Bus）ケーブル１３０により接続されて構成されており、制御装置１１０及び制御対象機器１２０に対して、それぞれ通信先のＧＰＩＢアドレスが設定されている。
【０００４】
制御装置１１０のプログラム実行部１１１は、プログラムに従って、制御対象機器１２０へ制御コマンドを送信する。図６に、プログラム実行部１１１により実行される従来のプログラム（Ｃ言語）の一部を示す。図６に示す命令文１４０では、予め設定したＧＰＩＢアドレスを持つ制御対象機器１２０のボードアドレスを取得している。また、命令文１４１は、取得したボードアドレスの制御対象機器１２０に対して、“ＯＵＴＰＵＴ  ＯＮ”という制御コマンド（出力をＯＮにする制御コマンド）を送信することを示している。このように、従来のプログラムには、iopen（）、iwrite（）等のコマンド、すなわち、通信インターフェース制御用ＡＰＩ（ＧＰＩＢのＡＰＩ）を使用するためのコマンドが含まれている。
【０００５】
制御対象機器１２０では、制御装置１１０から制御コマンドを受信し、コマンド実行部１２１により制御コマンドに基づく処理を実行して結果を出力する。
【０００６】
制御装置１１０のプログラム実行部１１１は、通信インターフェース制御用ＡＰＩを使用するためのコマンドを含むプログラムに従って、制御対象機器１２０から制御コマンドの実行結果を取得し、表示部１１２に表示させる。
【特許文献１】特開平５−１１８８８６号公報
【特許文献２】特開２００２−１４８２８２号公報
【特許文献３】特開２００２−２１４２５２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかし、従来技術においては、制御装置１１０のプログラム実行部１１１により実行される制御対象機器１２０を制御するためのプログラムを作成する際、Visual  Basic（登録商標）やＣ言語にデフォルトで用意されていないiopen（）、iwrite（）等のコマンドを使用しなければならないため、一般のプログラム作成者には馴染みの少ない通信インターフェース制御用ＡＰＩを使用するためのコマンドを新たに学習する必要があった。このように慣れないコマンドを使用することは、不具合の発生やプログラム開発工数の増加の要因となっていた。
【０００８】
本発明は、上記の従来技術における問題に鑑みてなされたものであって、制御装置及び制御対象機器のプログラムの作成を容易にすることを課題とする。
【課題を解決するための手段】
【０００９】
上記課題を解決するために、請求項１に記載の制御システムは、制御装置と、制御対象機器と、前記制御装置及び制御対象機器の双方からアクセス可能な共有フォルダを有するファイル格納手段と、を備え、前記制御装置は、前記共有フォルダにアクセスして前記制御対象機器を制御するための制御コマンドを含むコマンドファイルを作成するコマンドファイル作成手段を備え、前記制御対象機器は、前記共有フォルダにアクセスして前記共有フォルダから前記コマンドファイルを読み込んで、当該コマンドファイルに含まれる制御コマンドを実行するコマンド実行手段を備えたことを特徴とする。
【００１０】
請求項２に記載の発明は、請求項１に記載の制御システムにおいて、前記制御対象機器は、さらに、前記共有フォルダにアクセスして前記制御コマンドを実行した結果を含む結果ファイルを作成する結果ファイル作成手段を備え、前記制御装置は、さらに、前記共有フォルダにアクセスして前記共有フォルダから前記結果ファイルを読み込む読み込み手段を備えたことを特徴とする。
【００１１】
請求項３に記載の発明は、請求項１又は２に記載の制御システムにおいて、前記共有フォルダは、前記制御対象機器内に設けられることを特徴とする。
【発明の効果】
【００１２】
請求項１に記載の発明によれば、制御装置及び制御対象機器の双方からアクセス可能な共有フォルダに対するファイル操作によって、制御コマンドの受け渡しを実現することができるので、制御装置及び制御対象機器のプログラムを容易に作成することができる。
【００１３】
請求項２に記載の発明によれば、制御装置及び制御対象機器の双方からアクセス可能な共有フォルダに対するファイル操作によって、制御コマンドを実行した結果の受け渡しを実現することができるので、制御装置及び制御対象機器のプログラムを容易に作成することができる。
【００１４】
請求項３に記載の発明によれば、共有フォルダが制御対象機器内に設けられるので、制御対象機器が外部の共有フォルダを検索してファイルを読み書きする必要がない。これにより、制御対象機器の構成が簡素化され、制御対象機器の小型化、コストダウン、設計の容易化を図ることができる。
【発明を実施するための最良の形態】
【００１５】
以下、図面を参照して本発明の実施の形態について詳細に説明する。
図１に、本発明の実施の形態における制御システム１の構成を示す。
図１に示すように、制御システム１は、制御装置１０と制御対象機器２０とがＬＡＮ（Local Area Network）ケーブル３０により接続されて構成されている。
【００１６】
制御装置１０は、プログラム実行部１１、表示部１２等を備える。制御装置１０として、一般のＰＣを用いることができる。
【００１７】
プログラム実行部１１は、ＣＰＵ（Central Processing Unit）、ＲＯＭ（Read Only Memory）、ＲＡＭ（Random Access Memory）等により構成され、ＣＰＵとＲＯＭに格納されたプログラムとの協働によってソフトウェア処理で実現される。具体的には、プログラム実行部１１は、制御対象機器２０の共有フォルダ２２０にアクセスして、共有フォルダ２２０内に、制御対象機器２０を制御するための制御コマンドを含むコマンドファイル２２１を作成する。また、プログラム実行部１１は、制御対象機器２０の共有フォルダ２２０にアクセスして、共有フォルダ２２０から結果ファイル２２２を読み込み、制御対象機器２０のコマンド実行部２１により実行された制御コマンドの実行結果を表示部１２に表示させる。すなわち、プログラム実行部１１は、コマンドファイル作成手段及び読み込み手段として機能する。
【００１８】
表示部１２は、ＬＣＤ（Liquid Crystal Display）等のモニタにより構成され、プログラム実行部１１から入力される表示信号の指示に従って、制御対象機器２０による制御コマンドの実行結果等を表示する。
【００１９】
制御対象機器２０は、アナライザや信号発生器等の測定器であり、コマンド実行部２１、メモリ２２等を備える。
【００２０】
コマンド実行部２１は、ＣＰＵ、ＲＯＭ、ＲＡＭ等により構成され、ＣＰＵとＲＯＭに格納されたプログラムとの協働によってソフトウェア処理で実現される。具体的には、コマンド実行部２１は、共有フォルダ２２０にアクセスして共有フォルダ２２０からコマンドファイル２２１を読み込んで、このコマンドファイル２２１に含まれる制御コマンドに基づく処理を実行する。また、コマンド実行部２１は、共有フォルダ２２０にアクセスして、共有フォルダ２２０内に、制御コマンドを実行した結果を含む結果ファイル２２２を作成する。すなわち、コマンド実行部２１は、コマンド実行手段及び結果ファイル作成手段として機能する。
【００２１】
メモリ２２は、制御装置１０と制御対象機器２０の双方からアクセス可能な共有フォルダ２２０を有するファイル格納手段である。制御装置１０からは、ＬＡＮケーブル３０を介して共有フォルダ２２０にアクセスが行われる。
【００２２】
次に、制御システム１の動作を説明する。
図２は、制御システム１において実行される処理を示すフローチャートである。
まず、制御装置１０のプログラム実行部１１により、制御対象機器２０の共有フォルダ２２０にアクセスが行われ、制御対象機器２０を制御するための制御コマンドが共有フォルダ２２０の一時ファイルに書き込まれる（ステップＳ１）。
【００２３】
図３に、制御装置１０のプログラム実行部１１により実行されるプログラム（Ｃ言語）の一部を示す。図３の命令文４０は、ＤＩＲフォルダ（共有フォルダ２２０）にある“Temp.in”というファイルを開くことを示し、命令文４１は、“Temp.in”に“ＯＵＴＰＵＴ  ＯＮ”という制御コマンド（出力をＯＮにするコマンド）を書き込むことを示し、命令文４２は、ファイルを閉じることを示している。
【００２４】
次に、プログラム実行部１１により、制御コマンドを含む一時ファイルのファイル名が“Command.in”にリネームされ、コマンドファイル２２１が作成される（ステップＳ２）。
【００２５】
一方、制御対象機器２０では、コマンド実行部２１により、共有フォルダ２２０にアクセスが行われ、“Command.in”という名前のコマンドファイル２２１が共有フォルダ２２０に存在するか否かがチェックされる（ステップＴ１）。“Command.in”が共有フォルダ２２０に存在しない場合には（ステップＴ２；Ｎｏ）、ステップＴ１に戻る。
【００２６】
制御装置１０のプログラム実行部１１によりコマンドファイル２２１が作成され、“Command.in”が共有フォルダ２２０に存在する場合には（ステップＴ２；Ｙｅｓ）、コマンド実行部２１により、共有フォルダ２２０からコマンドファイル２２１が読み込まれる（ステップＴ３）。
【００２７】
図４に、制御対象機器２０のコマンド実行部２１により実行されるプログラム（Ｃ言語）の一部を示す。図４の命令文５０は、ＤＩＲフォルダ（共有フォルダ２２０）にある“Command.in”というファイルを開くことを示し、命令文５１は、ファイルの内容をcmdに格納する（読み込む）ことを示し、命令文５２は、ファイルを閉じることを示している。
【００２８】
次に、コマンドファイル２２１に、実行されていない制御コマンドが存在する場合には（ステップＴ４；Ｙｅｓ）、コマンド実行部２１により、その制御コマンドに基づく処理が実行され（ステップＴ５）、制御コマンドを実行した結果が共有フォルダ２２０の一時ファイルに書き込まれる（ステップＴ６）。そして、ステップＴ４に戻り、コマンドファイル２２１に含まれる全ての制御コマンドが実行されるまでステップＴ４〜ステップＴ６の処理が繰り返される。
【００２９】
ステップＴ４において、実行されていない制御コマンドが存在しない場合（ステップＴ４；Ｎｏ）、すなわち、コマンドファイル２２１に含まれる全ての制御コマンドの実行が完了した場合には、共有フォルダ２２０のコマンドファイル２２１（“Command.in”）が削除される（ステップＴ７）。そして、コマンド実行部２１により、制御コマンドを実行した結果を含む一時ファイルのファイル名が“Result.out”にリネームされ、結果ファイル２２２が作成される（ステップＴ８）。
【００３０】
制御装置１０では、プログラム実行部１１により、制御対象機器２０の共有フォルダ２２０にアクセスが行われ、“Result.out”という名前の結果ファイル２２２が共有フォルダ２２０に存在するか否かがチェックされる（ステップＳ３）。“Result.out”が共有フォルダ２２０に存在しない場合には（ステップＳ４；Ｎｏ）、ステップＳ３に戻る。
【００３１】
制御対象機器２０のコマンド実行部２１により結果ファイル２２２が作成され、“Result.out”が共有フォルダ２２０に存在する場合には（ステップＳ４；Ｙｅｓ）、プログラム実行部１１により、共有フォルダ２２０から結果ファイル２２２が読み込まれ（ステップＳ５）、制御対象機器２０のコマンド実行部２１により実行された制御コマンドの実行結果が表示部１２に表示される。そして、プログラム実行部１１により、共有フォルダ２２０の結果ファイル２２２（“Result.out”）が削除される（ステップＳ６）。
以上で、制御システム１における処理が終了する。
【００３２】
以上説明したように、制御システム１によれば、制御装置１０及び制御対象機器２０の双方からアクセス可能な共有フォルダ２２０に対するファイル操作によって、制御コマンド及び制御コマンドを実行した結果の受け渡しを実現することができる。したがって、プログラムにおいて、制御装置１０と制御対象機器２０とを接続する通信インターフェースを制御するＡＰＩを使用するためのコマンドが必要がなくなり、代わりにfopen（）、fprintf（）、fscanf（）等のプログラム作成者が使い慣れているコマンド（ファイル操作のＡＰＩを使用するためのコマンド）を用いるだけで済むので、制御装置１０及び制御対象機器２０のプログラムを容易に作成することができる。これに伴って、制御システム１における不具合の減少、開発工数の削減を図ることができる。
【００３３】
また、制御装置１０からコマンドファイル２２１を直接変更することで、直接編集したファイルを制御対象機器２０に読み込ませることができ、制御対象機器２０を制御することができる。
【００３４】
また、従来使用されていたＧＰＩＢケーブルの長さは規格で決められており、（ｉ）総延長は「２０ｍ」以下、又は、「同一バス上の機器の台数×２ｍ」以下、（ｉｉ）機器間の距離は「４ｍ」以下、を満たさなければならないが、制御システム１では、制御装置１０と制御対象機器２０とをＧＰＩＢケーブルで接続しなくてよいため、制御装置１０を制御対象機器２０の近くに設置する必要がなくなる。
【００３５】
また、共有フォルダ２２０が制御対象機器２０内に設けられるので、制御対象機器２０がＬＡＮを介して外部の共有フォルダを検索してファイルを読み書きする必要がない。これにより、制御対象機器２０の構成が簡素化され、制御対象機器２０の小型化、コストダウン、設計の容易化を図ることができる。
【００３６】
また、本実施の形態のように、制御対象機器２０が測定器である場合には、時間的な遅れを生ずることなく所定の時間内に信号を解析したり、信号を発生する必要がある。しかし、ＬＡＮを介してファイルを読み書きする場合、ＬＡＮの負荷状態によっては測定に時間的な遅れが生ずるおそれがある。図１に示す制御システム１では、共有フォルダ２２０が制御対象機器２０側に設けられているので、ＬＡＮの負荷状態によらずに所定の時間内に測定を行うことができ、測定の高速化を図ることができる。
【００３７】
なお、上記実施の形態における記述は、本発明に係る制御システムの例であり、これに限定されるものではない。制御システムを構成する各装置の細部構成及び細部動作に関しても本発明の趣旨を逸脱することのない範囲で適宜変更可能である。
【００３８】
例えば、本発明は、制御装置１０と制御対象機器２０の間だけでなく、制御装置１０又は異なる制御装置において実行されるプログラムを他のプログラムから制御するために使用することも可能である。つまり、プログラムの言語が異なっている装置同士でも、共有フォルダ内のファイルを介して一方が他方を制御することも可能である。
【００３９】
また、制御対象機器２０は、測定器に限らず、例えば、シーケンサや調節計等の機器、ＸＹ方向に移動する２次元可動ステージ等であってもよい。また、カメラに対する姿勢制御や撮像動作に関する各種設定等に本発明を利用することも可能である。
【００４０】
また、上記実施の形態では、制御装置１０と制御対象機器２０の双方からアクセス可能な共有フォルダ２２０が制御対象機器２０内に設けられている場合について説明したが、共有フォルダ２２０は、制御装置１０内や、制御装置１０及び制御対象機器２０の外部に設けられていてもよい。例えば、制御装置１０のＵＳＢ（Universal Serial Bus）インターフェースに接続されるＵＳＢメモリデバイス、ネットワーク上のファイルサーバ、バスで接続された共有メモリ、シリアルＡＴＡ（Advanced Technology Attachment）に接続されたメモリデバイス等に共有フォルダ２２０が設けられることとしてもよい。
【図面の簡単な説明】
【００４１】
【図１】本発明の実施の形態における制御システム１の構成図である。
【図２】制御システム１において実行される処理を示すフローチャートである。
【図３】制御装置１０のプログラム実行部１１により実行されるプログラムの例である。
【図４】制御対象機器２０のコマンド実行部２１により実行されるプログラムの例である。
【図５】従来の制御システム１００の構成図である。
【図６】制御装置１１０のプログラム実行部１１１により実行される従来のプログラムの例である。
【符号の説明】
【００４２】
１  制御システム
１０  制御装置
１１  プログラム実行部
１２  表示部
２０  制御対象機器
２１  コマンド実行部
２２  メモリ
２２０  共有フォルダ
２２１  コマンドファイル
２２２  結果ファイル
３０  ＬＡＮケーブル
１００  制御システム
１１０  制御装置
１１１  プログラム実行部
１１２  表示部
１２０  制御対象機器
１２１  コマンド実行部
１３０  ＧＰＩＢケーブル
【図１】
2008071126.tif 000003
【図２】
2008071126.tif 000004
【図３】
2008071126.tif 000005
【図４】
2008071126.tif 000006
【図５】
2008071126.tif 000007
【図６】
2008071126.tif 000008