RubyスクリプトでCCDSoftを操りCCDカメラを操作する
RubyでCCDSoftを通してCCDカメラを制御する
ここではCCDカメラを簡単に操作するために、Rubyのスクリプトで、WIN32OLEライブラリを利用しCCDSoftを操り、CCDカメラを操作する例を示す。
RubyのスクリプトでWIN32OLEライブラリを利用する詳細はここを参照。
以下のrubyコードは、CCDカメラの現在の冷却温度を得るプログラムである。先にCCDSoftを立ち上げてCCDカメラと接続しておくとよい。このスクリプトは実際に動作を確認してある。
#see http://www.morijp.com/masarl/homepage3.nifty.com/masarl/article/ruby-win32ole/excel-1.html
# tested on 20101124 with CCDSoft by O.Ohshima
require 'win32ole'
class WIN32OLE
@const_defined = Hash.new
def WIN32OLE.new_with_const(prog_id, const_name_space)
result = WIN32OLE.new(prog_id)
unless @const_defined[const_name_space] then
WIN32OLE.const_load(result, const_name_space)
@const_defined[const_name_space] = true
end
return result
end
end
module CCDSoftCamera
def CCDSoftCamera.new()
ccdsoftcamera = WIN32OLE.new_with_const('CCDSoft.Camera', CCDSoftCamera )
return ccdsoftcamera
end
def CCDSoftCamera.runDuring(&block)
begin
ccdsoftcamera = new()
block.call(ccdsoftcamera)
ensure
ccdsoftcamera.quit
end
end
end
ccdsoftcamera = CCDSoftCamera.new()
print ccdsoftcamera.temperature
print ccdsoftcamera.status
#ccdsoftcamera.takeimage
技術的な覚書きへ戻る
3673
Keyword(s):[CCDSoft] [Ruby] [CCDカメラ操作]
References:[技術的な覚書き]