FLIのライブラリを使用し、FLI のライブラリに認識されるCCDカメラに対して Stars 経由でコマンドを送って制御する為の Strs ドライバです。
QtXTop の設定は、同じフォルダに置いた config.cfg に書けます。 次にあげるのは設定ファイル(config.cfg)の内容の例です。
STARS_IP 192.168.11.111 # Stars サーバの IP アドレス STARS_PORT 6057 # Stars サーバの Port 番号 KEY_FILE_NAME QtXTop # Stars のコネクション確立に使う Key ファイルの名前 NAME_ON_STARS QtXTop # Stars 上で名乗る自分の名前 CAMERA_NO 0 # PC に FLI ライブラリが認識する複数のカメラがある場合、何番目のカメラを制御するかを指定
QtXTop は Stars 経由で送られてくる下記のコマンドを認識します。
コマンド名 | 引数 | 説明 | 凡例/応答例 |
---|---|---|---|
IsBusy | 無し | 撮影中は 1 そうでなければ 0 を返す | |
GetLibVer | 無し | ライブラリのバージョンを表す文字列を返す | |
GetModel | 無し | モデル名を表す文字列を返す | |
GetSerialSTR | 無し | シリアル番号を表す文字列を返す | |
GetHWRev | 無し | ハードウエアのバージョンを表す数字を返す | |
GetPixSize | 無し | ピクセルサイズを表す 2つの数字を返す | |
GetArrayArea | 無し | デバイスのピクセルサイズ?を表す 4 つの数字を返す | 0 0 3448 2574 |
GetVisArea | 無し | デバイスの有効サイズ?を表す 4 つの数字を返す | 43 46 3369 2550 |
SetTemp | 1つ | 温度を設定する(実数、℃) | |
GetTemp | 無し | デバイスの CCD温度と、ベース温度を示す2つの数字を返す | |
GetCCDTemp | 無し | デバイスの CCD温度を返す | |
GetBaseTemp | 無し | デバイスの ベース温度を返す | |
GetCoolerPWR | 無し | クーラーパワーの数値を返す | |
SetBin | 3つ | bin を設定する。hbin, vbin, rbin の順 デフォルトは全部 1 | SetBin 1 1 1 |
GetBin | 無し | bin を表す3つの数字を返す。 hbin, vbin, rbin の順 | 1 1 1 |
SetRBIFlushes | 1つ | 何回 RBI Flush を行うかを指定 (デフォルト は 0) | |
GetRBIFlushes | 無し | 設定されている RBIFlushes の数字を返す | |
SetRBIExpTime | 1つ | RBI Flush に際して露光を行う時間を指定。 デフォルトは 500 (500ミリ秒?) | |
GetRBIExpTime | 無し | 設定されている RBIExpTime の数字を返す | |
SetTDIRate | 1つ | 本番撮影の際の TDI Rate を指定。デフォルトは 0 | |
GetTDIRate | 無し | 設定されている TDIRate の数字を返す | |
SetImages | 1つ | 連続して何枚イメージを撮影するかの指定。デフォルトは 1 | |
GetImages | 無し | 設定されている Images の数字を返す。 | |
SetExpTime | 1つ | 本番撮影の露光時間を指定。デフォルトは 500 (500ミリ秒?) | |
GetExpTime | 無し | 設定されている露光時間を返す。 | |
SetInterval | 1つ | 複数枚イメージを取る際、間を開ける時間。 デフォルトは 0。現在内部では使われていない(無効)。 | |
GetInterval | 無し | 設定されている Interval を返す。 | |
SetFileName | 1つ | 撮影されたデータを保存するファイル名の設定。 実際の保存の際には、指定された名前にイメージ番号が加わわります。 | |
GetFileName | 無し | 設定されているデータファイル名を返す。 | |
Exposure | 無し | 撮影。即 OK が返ってきます。 撮影が終わったかどうかは IsBusy できくか、EvChangedIsBusy 0 を待つかしてください。 このコマンドを実行する前に設定した hbin, vbin, rbin, RBIFlushes, RBIExpTime, Images, ExpTime, FileName, TDIRate の数字/値が使われます。 | |
StartExposure | 無し | 撮影。即 OK が返ってきます。CCDからのデータ読み出しは行いません。 事前に設定した hbin, vbin, ExpTime, TDIRate の値が使われます。 | |
DownLoadImage | 無し | 撮影されて CCD 上に残っている像を読みだし、ファイルに書き出します。 事前に設定したFileName が使われます。 | |
RBIFlush | 無し | 決められた条件で CCD に借りの露光動作とデータの空読みを行います。 撮影前のデバイスクリアの動作? rbin, RBIFlushes, RBIExpTime の値が使われます。 | |
SetUseSeqFNo | 1つ | ファイル名に通し番号を付けるかどうか。 1 : Yes, 0 : No。 Yes にすると、SetFileName したファイル名に通し番号がついた名前で保存されます。 | |
GetUseSeqFNo | 無し | ファイル名に通し番号を付ける設定かどうかを尋ねる。 1 : Yes, 0 : No | |
SetSeqFileNo | 1つ | 通し番号の最初の数字を指定。データファイル保存のたびに一つづつ増えます。 | |
GetSeqFileNo | 無し | 次に使われる通し番号。 |
QtXTop は、下記のイベントを Stars 経由で発生します。
イベント名 | 説明 |
---|---|
EvChangedIsBusy | QtXTop 側から能動的に発生するイベントメッセージ。 撮影が始まるった時点で 1, 終わった時点で 0 が発生。 |
ファイルから画像を復元するときには、縦横のピクセル数が必要になります。 それは、Stars 経由で GetVisArea を送った時の回答の 4つの数字を x1 y1 x2 y2 とした時、 幅 = x2-x1, 高さ = y2-y1 で求まります。
ImageJで読む場合は、Import/Raw…から、上記縦横のピクセル数の情報を入力し、 Image type = 16-bit Unsigned、Offset = 0, Little-endian byte orderにチェックを入れると読み込めます。
をしておくと、かなり弱い信号まで高いS/N比で見えるようになります。
FLIGrabで見える画像はカメラで見たそのままですが、保存される.rawファイルは、180°回転像になっています。
当 web ページとその下のページに関するお問い合わせ等ございましたら、連絡先にご連絡をお願いします。
田渕のページのルート