OTO - Ohshima Tamashima Observatory- - operate_ccd_via_ccdsoft Diff
- Added parts are displayed like this.
- Deleted parts are displayed
like this.
!RubyでCCDSoftを通してCCDカメラを制御する
ここではCCDカメラを簡単に操作するために、Rubyのスクリプトで、WIN32OLEライブラリを利用しCCDSoftを操り、CCDカメラを操作する例を示す。
RubyのスクリプトでWIN32OLEライブラリを利用する詳細は[[ここを参照|RubyでTheSky6を操る]]。
以下の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
>>>
----
[[技術的な覚書き]]へ戻る
[[OTO-Ohshima Tamashima Observatory-]]トップへ戻る
{{counter}}
ここではCCDカメラを簡単に操作するために、Rubyのスクリプトで、WIN32OLEライブラリを利用しCCDSoftを操り、CCDカメラを操作する例を示す。
RubyのスクリプトでWIN32OLEライブラリを利用する詳細は[[ここを参照|RubyでTheSky6を操る]]。
以下の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
>>>
----
[[技術的な覚書き]]へ戻る
[[OTO-Ohshima Tamashima Observatory-]]トップへ戻る
{{counter}}