tabuchi:qtxtop
文書の過去の版を表示しています。
QtXTop : FLIライブラリを利用して CCD カメラ等を使用するための Stars ドライバ
FLIのライブラリを使用し、FLI のライブラリに認識されるCCDカメラに対して Stars 経由でコマンドを送って制御する為の Strs ドライバです。
-
実行ファイルのパッケージ(Windows版, 64bit, 2020,2,27, 2.26版を少改定)
-
実行ファイルのパッケージ(Windows版, 2016.02.23)
内容
-
各バージョンへのコメント
-
2016.02.18 : 実際にX線を使って正しく撮影されているかどうかは確認していません。
光がない状態で、実装されているコマンドを送って応答が正しいこと、撮影コマンドを送った時内部状態が正しく遷移しデータファイルができること、は確認してあります。 -
2016.02.23 : カメラにシャッターがないので、露光と読み出しを連続で行ってしまうと像が流れる。
その対策として、Exposure コマンドの中身を3つのコマンド(StartExposure, RBIFlush, DownLoadImage)に分割。
外部でシャッター制御を行う余地を作った。
履歴
-
2016.2.18 : この Wiki ページでの公開を開始しました。
-
2016.2.19 : 更新
-
2016.2.23 : Exposure を分解した 3つのコマンドを実装。StartExposure, RBIFlush, DownLoadImage
-
2020.2.26 : 64bit Windows10 で動作確認したバージョンを upload しました。
簡単な説明
設定ファイル
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 ライブラリが認識する複数のカメラがある場合、何番目のカメラを制御するかを指定
Stars経由でのコマンド
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 無し 次に使われる通し番号。セットした数字との差で保存されたデータファイルの数がわかります。 Stars経由で発生するイベント
QtXTop は、下記のイベントを Stars 経由で発生します。
イベント名 説明 EvChangedIsBusy QtXTop 側から能動的に発生するイベントメッセージ。
撮影が始まるった時点で 1, 終わった時点で 0 が発生。 -
tabuchi/qtxtop.1584601649.txt.gz · 最終更新: 2020/03/19 07:07 by mtab