ユーザ用ツール

サイト用ツール


tabuchi:qtxtop

差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

両方とも前のリビジョン前のリビジョン
次のリビジョン
前のリビジョン
tabuchi:qtxtop [2020/02/26 04:43] mtabtabuchi:qtxtop [2020/08/13 13:09] (現在) mtab
行 1: 行 1:
 ====== QtXTop : FLIライブラリを利用して CCD カメラ等を使用するための Stars ドライバ ====== ====== QtXTop : FLIライブラリを利用して CCD カメラ等を使用するための Stars ドライバ ======
  
 +===== - 概要 =====
 FLIのライブラリを使用し、FLI のライブラリに認識されるCCDカメラに対して FLIのライブラリを使用し、FLI のライブラリに認識されるCCDカメラに対して
 Stars 経由でコマンドを送って制御する為の Strs ドライバです。 Stars 経由でコマンドを送って制御する為の Strs ドライバです。
  
 +===== - ダウンロード =====
 +  * {{:tabuchi:qtxtop-pack-20200227.zip|実行ファイルのパッケージ}}(Windows版, 64bit, 2020,2,27, 2.26版を少改定)
   * {{:tabuchi:prog:qtxtoppack-20160223.zip|実行ファイルのパッケージ}}(Windows版, 2016.02.23)   * {{:tabuchi:prog:qtxtoppack-20160223.zip|実行ファイルのパッケージ}}(Windows版, 2016.02.23)
  
行 10: 行 13:
   * 2016.02.23 : カメラにシャッターがないので、露光と読み出しを連続で行ってしまうと像が流れる。\\ その対策として、Exposure コマンドの中身を3つのコマンド(StartExposure, RBIFlush, DownLoadImage)に分割。\\ 外部でシャッター制御を行う余地を作った。   * 2016.02.23 : カメラにシャッターがないので、露光と読み出しを連続で行ってしまうと像が流れる。\\ その対策として、Exposure コマンドの中身を3つのコマンド(StartExposure, RBIFlush, DownLoadImage)に分割。\\ 外部でシャッター制御を行う余地を作った。
  
-履歴 +===== - 履歴 =====
   * 2016.2.18 : この Wiki ページでの公開を開始しました。   * 2016.2.18 : この Wiki ページでの公開を開始しました。
   * 2016.2.19 : 更新   * 2016.2.19 : 更新
   * 2016.2.23 : Exposure を分解した 3つのコマンドを実装。StartExposure, RBIFlush, DownLoadImage   * 2016.2.23 : Exposure を分解した 3つのコマンドを実装。StartExposure, RBIFlush, DownLoadImage
 +  * 2020.2.26 : 64bit Windows10 で動作確認したバージョンを upload しました。
  
-簡単な説明 +===== - 簡単な説明 ===== 
  
-QtXTop の設定ファイル(config.cfg)の内容+==== - 設定ファイル ==== 
 +QtXTop の設定は、同じフォルダに置いた config.cfg に書けます。 
 +次にあげるのは設定ファイル(config.cfg)の内容の例です。
 <code> <code>
 STARS_IP     192.168.11.111  # Stars サーバの IP アドレス STARS_IP     192.168.11.111  # Stars サーバの IP アドレス
行 27: 行 32:
 CAMERA_NO 0       # PC に FLI ライブラリが認識する複数のカメラがある場合、何番目のカメラを制御するかを指定 CAMERA_NO 0       # PC に FLI ライブラリが認識する複数のカメラがある場合、何番目のカメラを制御するかを指定
 </code> </code>
- \\ 
- \\ 
  
- +==== - Stars経由でのコマンド ==== 
-QtXTop が認識する Stars 経由のコマンド+QtXTop は Stars 経由で送られてくる下記のコマンドを認識します。
  
 ^ コマンド名 ^ 引数 ^ 説明 ^ 凡例/応答例 ^ ^ コマンド名 ^ 引数 ^ 説明 ^ 凡例/応答例 ^
 ||||| |||||
 |IsBusy   | 無し | 撮影中は 1 そうでなければ 0 を返す | | |IsBusy   | 無し | 撮影中は 1 そうでなければ 0 を返す | |
-| | | | |+^ ^ ^ ^ ^
 |GetLibVer   | 無し | ライブラリのバージョンを表す文字列を返す | | |GetLibVer   | 無し | ライブラリのバージョンを表す文字列を返す | |
 |GetModel   | 無し | モデル名を表す文字列を返す | | |GetModel   | 無し | モデル名を表す文字列を返す | |
行 49: 行 52:
 |GetBaseTemp   | 無し | デバイスの ベース温度を返す | |GetBaseTemp   | 無し | デバイスの ベース温度を返す |
 |GetCoolerPWR  | 無し | クーラーパワーの数値を返す | |GetCoolerPWR  | 無し | クーラーパワーの数値を返す |
-| | | | |+^ ^ ^ ^ ^
 |SetBin     | 3つ | bin を設定する。hbin, vbin, rbin の順 デフォルトは全部 1 | SetBin 1 1 1 | |SetBin     | 3つ | bin を設定する。hbin, vbin, rbin の順 デフォルトは全部 1 | SetBin 1 1 1 |
 |GetBin     | 無し | bin を表す3つの数字を返す。 hbin, vbin, rbin の順 | 1 1 1 | |GetBin     | 無し | bin を表す3つの数字を返す。 hbin, vbin, rbin の順 | 1 1 1 |
 |SetRBIFlushes | 1つ | 何回 RBI Flush を行うかを指定 (デフォルト は 0) | | |SetRBIFlushes | 1つ | 何回 RBI Flush を行うかを指定 (デフォルト は 0) | |
 |GetRBIFlushes | 無し | 設定されている RBIFlushes の数字を返す | | |GetRBIFlushes | 無し | 設定されている RBIFlushes の数字を返す | |
-|SetRBIExpTime | 1つ | RBI Flush に際して露光を行う時間を指定。デフォルトは 500 (500ミリ秒?) | |+|SetRBIExpTime | 1つ | RBI Flush に際して露光を行う時間を指定。\\ デフォルトは 500 (500ミリ秒?) | |
 |GetRBIExpTime | 無し | 設定されている RBIExpTime の数字を返す | | |GetRBIExpTime | 無し | 設定されている RBIExpTime の数字を返す | |
 |SetTDIRate   | 1つ | 本番撮影の際の TDI Rate を指定。デフォルトは 0 | | |SetTDIRate   | 1つ | 本番撮影の際の TDI Rate を指定。デフォルトは 0 | |
 |GetTDIRate   | 無し | 設定されている TDIRate の数字を返す | | |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経由で発生するイベント ====
  
-<code>+QtXTop は、下記のイベントを Stars 経由で発生します。
  
 +^ イベント名 ^ 説明 ^
 +|EvChangedIsBusy | QtXTop 側から能動的に発生するイベントメッセージ。\\ 撮影が始まるった時点で 1, 終わった時点で 0 が発生。 |
  
  
-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, +それは、Stars 経由で GetVisArea を送た時回答の 4つの数字を x1 y1 x2 y2 とた時、 
-           FileName, TDIRate の数使われます。  +幅 = x2-x1高さ = y2-y1 
-StartExposure   : 引数 無し : 撮影。即 OK が返てきます。CCDからデータ読み出は行いません。 +で求まります。 
-           事前に設定した hbinvbin, ExpTime, TDIRate の値が使われます。 +   
-DownLoadImage     : 引数 無し : 撮影されて CCD 上に残っているを読みだし、ファイルに書き出します。 +==== - 画像ファイルの ImageJ での読み込み ====
-           事前に設定した FileName が使われます。 +
-RBIFlush      : 引数 無し : 決められた条件で CCD に借り露光動作とデータの空読みを行います。 +
-           撮影前のデバイスクリアの動作? +
-            rbin, RBIFlushes, RBIExpTime の値が使われます。+
  
-EvChangedIsBusy : QtXTop 側から能動的発生すイベントメッセージ。撮影が始るった時点で 1, 終わった時点で 0 が発生+ImageJで読む場合は、Import/Raw...から、上記縦横のピクセル数の情報を入力し、 
 +Image type = 16-bit Unsigned、Offset = 0, Little-endian byte orderチェックを入れと読み込め
  
-SetUseSeqFNo   : 引数 1つ : ファイル名番号付けるかどうか。 : Yes, : No。 +==== - ImageJ での画像解析の前に ==== 
-                 Yes にすると、SetFileName したファイル名に通し番がついた名前データが保存されます。 +  - 撮影と同じ露光時間で測定たダークレベル差し引く 
-GetUseSeqFNo   : 引数 無し : ファイル通し番号を付ける設定かどうかを尋ねる。 1 : Yes, 0 : No +  - Process/Filters/Median... Radius = 1.pixel(2.0などでも可;数字が大きくなほど分解能は下がる) 
-SetSeqFileNo   : 引数 1つ : 通し最初数字を指定。以降データファイルが作られるたびに一つづつ増えま。 +をしておくと、かなり弱い信まで高S/N比で見えるようになります。 
-GetSeqFileNo   : 引数 無し : 次に使われ通し番号。セットした数字との保存されたデータファイルわかります。 + 
-</code>+==== - 画像の回転 ==== 
 +FLIGrabで見える画像はカメラで見そのまま保存される.rawファイルは、180°回転像なっています。 
 + 
 +===== - What to Do ===== 
 +  * 連番のナンバリングは修正すべし\\ SetUseSeqFNo 1とき、連続ファイルの番号は1ずつ増えて、scan_0001-0000.raw, scan_0002-0000.raw, scan_0003-0000.raw ...などとなるが、SetImageで連続撮影の指定をした場合、scan_0001-0000.raw, scan_0002-0001.raw,, scan_0003-0002.raw ...などとなってし。 
 +  * FLIGrabと同時に使っていると、FLIGrab終了時にCCD冷却が止まってしまう。\\ 起動時に "SetTemp -20"を自動的に送る、あるいは GetTemp温度を監視するなど機能あるといいと思います。>> 温度変化はイベント化すべし ?
  
 +------
 +当 web ページとその下のページに関するお問い合わせ等ございましたら、[[連絡先|連絡先]]にご連絡をお願いします。 \\
 +[[start|田渕のページのルート]]
  
tabuchi/qtxtop.1582692206.txt.gz · 最終更新: 2020/02/26 04:43 by mtab