OSDN Git Service

add vem
authorayaka <gyzdisk@gmail.com>
Thu, 5 Nov 2015 02:47:24 +0000 (11:47 +0900)
committerayaka <gyzdisk@gmail.com>
Thu, 5 Nov 2015 02:47:24 +0000 (11:47 +0900)
22 files changed:
vem/.feicontrol.rb.un~ [new file with mode: 0644]
vem/.test.rb.un~ [new file with mode: 0644]
vem/druby_server.rb [new file with mode: 0644]
vem/feicontrol.rb [new file with mode: 0644]
vem/feicontrol.rb~ [new file with mode: 0644]
vem/hitachicontrol.rb [new file with mode: 0644]
vem/jeolcontrol.rb [new file with mode: 0644]
vem/test.rb [new file with mode: 0644]
vem/test.rb~ [new file with mode: 0644]
vem/tool/.getCondition.js.swp [new file with mode: 0644]
vem/tool/.setStageR.js.un~ [new file with mode: 0644]
vem/tool/getCondition.js [new file with mode: 0644]
vem/tool/setBeamTilt.js [new file with mode: 0644]
vem/tool/setMagnification.js [new file with mode: 0644]
vem/tool/setObj.js [new file with mode: 0644]
vem/tool/setSpeed.js [new file with mode: 0644]
vem/tool/setSpotSize.js [new file with mode: 0644]
vem/tool/setStageA.js [new file with mode: 0644]
vem/tool/setStageA.js~ [new file with mode: 0644]
vem/tool/setStageR.js [new file with mode: 0644]
vem/tool/setStageR.js~ [new file with mode: 0644]
vem/vem.rb [new file with mode: 0644]

diff --git a/vem/.feicontrol.rb.un~ b/vem/.feicontrol.rb.un~
new file mode 100644 (file)
index 0000000..89cfd2f
Binary files /dev/null and b/vem/.feicontrol.rb.un~ differ
diff --git a/vem/.test.rb.un~ b/vem/.test.rb.un~
new file mode 100644 (file)
index 0000000..637cc76
Binary files /dev/null and b/vem/.test.rb.un~ differ
diff --git a/vem/druby_server.rb b/vem/druby_server.rb
new file mode 100644 (file)
index 0000000..6f5fb5e
--- /dev/null
@@ -0,0 +1,9 @@
+require 'drb/drb'
+require './vem'
+require './feicontrol'
+require 'win32ole'
+
+URI = "druby://192.168.4.145:8787"
+DRb.start_service(URI, VEM.create("fei"))
+puts DRb.uri
+sleep
diff --git a/vem/feicontrol.rb b/vem/feicontrol.rb
new file mode 100644 (file)
index 0000000..b79b005
--- /dev/null
@@ -0,0 +1,148 @@
+require 'win32ole'
+require 'open3'
+require 'json'
+
+require '../vem/vem'
+
+
+
+class FEIControl < VEM
+  def initialize
+    puts "FEI initialize"
+
+    #@@tem = WIN32OLE.new('TEMScripting.Instrument')
+  end
+
+  def setStageA(x, y, z, a)
+    puts "FEI setStageA"
+
+    o,s = Open3.capture2("cscript vem/tool/setStageA.js " + x.to_s + " " + y.to_s + " " + z.to_s + " " + a.to_s)
+    position = o.lines.to_a[3]
+    puts position
+    return position
+  end
+
+  def setStageR(x, y, z, a)
+
+    puts "FEI setStageR"
+    o,s = Open3.capture2("cscript vem/tool/setStageR.js " + x.to_s + " "+ y.to_s + " " + z.to_s + " " + a.to_s)
+    position = o.lines.to_a[3]
+    puts position
+    return position
+  end
+
+  def setSpotSize(spsize)
+    puts "FEI setSpotSize"
+
+    ill    = @@tem.Illumination
+    ill.SpotsizeIndex = ill.SpotsizeIndex + spsize
+    return ill.SpotsizeIndex
+  end
+
+  def setMagnification(magsize)
+    puts "FEI setMagnification"
+
+    proj = @@tem.Projection
+    proj.MagnificationIndex = proj.MagnificationIndex + magsize
+    return proj.MagnificationIndex
+  end
+
+  def acquisition
+    puts "FEI acquisition"
+
+    WIN32OLE.ole_initialize    
+    @@tem = WIN32OLE.new('TEMScripting.Instrument')
+
+    # get acquitision object
+    acq = @@tem.Acquisition
+    # acquire an image from "CCD" camera
+    acq.AddAcqDeviceByName("CCD")
+
+    ## settings for acquisition parameters
+    # ccdCamerasAcqParams
+    ccdCamerasAcqParams = acq.Cameras.Item(0).AcqParams
+    # binning
+    ccdCamerasAcqParams.Binning = 4
+    # exposuretime
+    ccdCamerasAcqParams.ExposureTime = 0.07
+    # imagesize
+    ccdCamerasAcqParams.ImageSize = 2
+
+    # acquisition Image
+    imageCollection = acq.AcquireImages
+
+    img     = imageCollection.Item(0)
+    imgData = img.AsSafeArray
+    return imgData.to_json
+  end
+
+  def acquisitiona255
+    puts "FEI acquisition"
+
+    WIN32OLE.ole_initialize    
+    @@tem = WIN32OLE.new('TEMScripting.Instrument')
+
+    # get acquitision object
+    acq = @@tem.Acquisition
+    # acquire an image from "CCD" camera
+    acq.AddAcqDeviceByName("CCD")
+
+    # ---settings for acquisition parameters
+
+    # ccdCamerasAcqParams
+    ccdCamerasAcqParams = acq.Cameras.Item(0).AcqParams
+    # binning
+    ccdCamerasAcqParams.Binning = 4
+    # exposuretime
+    ccdCamerasAcqParams.ExposureTime = 0.07
+    # imagesize
+    ccdCamerasAcqParams.ImageSize = 2
+
+    # ---end
+
+    # acquisition Image
+    imageCollection = acq.AcquireImages
+
+    img     = imageCollection.Item(0)
+    imgData = img.AsSafeArray
+
+    imgLength = imgData.length
+
+    # ---conversion
+
+    #max, min
+    imgMax = imgData.flatten.max
+    imgMin = imgData.flatten.min
+
+    #conversion factor for 255 scale
+    conversion = 255/(imgMax.to_f - imgMin.to_f)
+
+    img255 = Array.new(imgLength){ Array.new(imgLength) }
+
+    imgLength.times do |y|
+      imgLength.times do |x|
+        img255[y][x] = ((imgData[y][x]-imgMin.to_f)*conversion).to_i
+      end
+    end
+    
+    # ---end
+
+    return img255.to_json
+  end
+
+  def setObj(params)
+    puts "FEI setObj"
+  end
+
+  def setBeamTilt(params)
+    puts "FEI setBeamTilt"
+  end
+
+  def setSpeed(params)
+  end
+
+  def getCondition
+    puts "FEI getCondition"
+  end
+end
+
diff --git a/vem/feicontrol.rb~ b/vem/feicontrol.rb~
new file mode 100644 (file)
index 0000000..db293b9
--- /dev/null
@@ -0,0 +1,105 @@
+require 'win32ole'
+require 'open3'
+require 'json'
+
+require '../vem/vem'
+
+
+
+class FEIControl < VEM
+       def initialize
+               puts "FEI initialize"
+
+               #@@tem = WIN32OLE.new('TEMScripting.Instrument')
+       end
+
+       def setStageA(x, y, z, a)
+               puts "FEI setStageA"
+
+               o,s = Open3.capture2("cscript vem/tool/setStageA.js " + x.to_s + " " + y.to_s + " " + z.to_s + " " + a.to_s)
+               position = o.lines.to_a[3]
+               puts position
+               return position
+       end
+
+       def setStageR(x, y, z, a)
+
+               puts "FEI setStageR"
+               o,s = Open3.capture2("cscript vem/tool/setStageR.js " + x.to_s + " "+ y.to_s + " " + z.to_s + " " + a.to_s)
+               position = o.lines.to_a[3]
+               puts position
+               return position
+       end
+
+       def setSpotSize(spsize)
+               puts "FEI setSpotSize"
+
+               ill    = @@tem.Illumination
+               ill.SpotsizeIndex = ill.SpotsizeIndex + spsize
+               return ill.SpotsizeIndex
+       end
+
+       def setMagnification(magsize)
+               puts "FEI setMagnification"
+
+               proj = @@tem.Projection
+               proj.MagnificationIndex = proj.MagnificationIndex + magsize
+               return proj.MagnificationIndex
+       end
+
+       def acquisition
+               puts "FEI acquition"
+
+               WIN32OLE.ole_initialize 
+               @@tem = WIN32OLE.new('TEMScripting.Instrument')
+               # get acquitision object
+               acq = @@tem.Acquisition
+               # acquire an image from "CCD" camera
+               acq.AddAcqDeviceByName("CCD")
+               # ccdCamerasAcqParams
+               ccdCamerasAcqParams = acq.Cameras.Item(0).AcqParams
+               # binning
+               ccdCamerasAcqParams.Binning = 4
+               # exposuretime
+               ccdCamerasAcqParams.ExposureTime = 0.07
+               # imagesize
+               ccdCamerasAcqParams.ImageSize = 2
+
+               imageCollection = acq.AcquireImages
+
+               img     = imageCollection.Item(0)
+               imgData = img.AsSafeArray
+               sendImgData = imgData
+
+               imgMax = sendImgData.max.max
+               imgMin = sendImgData.min.min
+
+               conversion = 255/(imgMax.to_f - imgMin.to_f)
+
+               array = Array.new
+
+               sendImgData.length.times do |i|
+                       array[i] = sendImgData[i].map{|item| item*conversion}
+               end
+
+               puts sendImgData.length
+
+               return array.to_json
+       end
+
+       def setObj(params)
+               puts "FEI setObj"
+       end
+
+       def setBeamTilt(params)
+               puts "FEI setBeamTilt"
+       end
+
+       def setSpeed(params)
+       end
+
+       def getCondition
+               puts "FEI getCondition"
+       end
+end
+
diff --git a/vem/hitachicontrol.rb b/vem/hitachicontrol.rb
new file mode 100644 (file)
index 0000000..c3887f9
--- /dev/null
@@ -0,0 +1,62 @@
+require "./vem"
+
+class HITACHIControl < VEM
+    @@condition = {
+        "TEM"    => "HITACHI",
+        "GonioX" => 0,
+        "GonioY" => 0,
+        "GonioZ" => 0,
+        "GonioA" => 0,
+        "SpotSizeIndex" => 0,
+        "MagIndex" => 0,
+        "Obj" => 0,
+        "BeamTiltX" => 0,
+        "BeamTiltY" => 0,
+        "Speed" => 0
+    }
+
+    def initialize
+    end
+
+    def setStageA(params)
+        @@condition["GonioX"] = params["x"]
+        @@condition["GonioY"] = params["y"]
+        @@condition["GonioZ"] = params["z"]
+        @@condition["GonioA"] = params["a"]
+        return @@condition.to_json
+    end
+
+    def setStageR(params)
+    end
+
+    def setSpotSize(params)
+        @@condition["SpotSizeIndex"] = params["sps"]
+        return @@condition.to_json
+    end
+
+    def setMagnification(params)        
+        @@condition["MagIndex"] = params["mag"]
+        return @@condition.to_json
+    end
+
+    def setObj(params)
+        @@condition["Obj"] = params["obj"]
+        return @@condition.to_json
+    end
+
+    def setBeamTilt(params)
+        @@condition["BeamTiltX"] = params["btx"]
+        @@condition["BeamTiltY"] = params["bty"]
+        return @@condition.to_json
+    end
+
+    def setSpeed(params)
+        @@condition["Speed"] = params["sp"]
+        return @@condition.to_json
+    end
+
+    def getCondition
+        return @@condition.to_json
+    end
+end
+
diff --git a/vem/jeolcontrol.rb b/vem/jeolcontrol.rb
new file mode 100644 (file)
index 0000000..38c77c7
--- /dev/null
@@ -0,0 +1,62 @@
+require "./vem"
+
+class JEOLControl < VEM
+     @@condition = {
+         "TEM" => "JEOL",
+        "GonioX" => 0,
+        "GonioY" => 0,
+        "GonioZ" => 0,
+        "GonioA" => 0,
+        "SpotSizeIndex" => 0,
+        "MagIndex" => 0,
+        "Obj" => 0,
+        "BeamTiltX" => 0,
+        "BeamTiltY" => 0,
+        "Speed" => 0
+    }
+
+    def initialize
+    end
+
+    def setStageA(params)
+        @@condition["GonioX"] = params["x"]
+        @@condition["GonioY"] = params["y"]
+        @@condition["GonioZ"] = params["z"]
+        @@condition["GonioA"] = params["a"]
+        return @@condition.to_json
+    end
+
+    def setStageR(params)
+    end
+
+    def setSpotSize(params)
+        @@condition["SpotSizeIndex"] = params["sps"]
+        return @@condition.to_json
+    end
+
+    def setMagnification(params)        
+        @@condition["MagIndex"] = params["mag"]
+        return @@condition.to_json
+    end
+
+    def setObj(params)
+        @@condition["Obj"] = params["obj"]
+        return @@condition.to_json
+    end
+
+    def setBeamTilt(params)
+        @@condition["BeamTiltX"] = params["btx"]
+        @@condition["BeamTiltY"] = params["bty"]
+        return @@condition.to_json
+    end
+
+    def setSpeed(params)
+        @@condition["Speed"] = params["sp"]
+        return @@condition.to_json
+    end
+
+    def getCondition
+        return @@condition.to_json
+    end
+end
+
diff --git a/vem/test.rb b/vem/test.rb
new file mode 100644 (file)
index 0000000..46ea24c
--- /dev/null
@@ -0,0 +1,26 @@
+require "../../vem/vem"
+require "../../vem/feicontrol"
+
+class TEST
+       def initialize
+               @@vem = VEM.create("fei")
+       end
+
+       def test_setStageA
+               @@vem.setStageA(2, 0, 0, 0)
+       end
+
+       def test_setStageR
+               @@vem.setStageR(1, 0, 0, 0)
+       end
+
+       def test_setSpotSize
+               @@vem.setSpotSize(1)
+       end
+
+       def test_acquisition
+               @@vem.acquisition
+       end
+end
+
+
diff --git a/vem/test.rb~ b/vem/test.rb~
new file mode 100644 (file)
index 0000000..9ca51bc
--- /dev/null
@@ -0,0 +1,26 @@
+require "./vem/vem"
+require "./vem/feicontrol"
+
+class TEST
+       def initialize
+               @@vem = VEM.create("fei")
+       end
+
+       def test_setStageA
+               @@vem.setStageA(2, 0, 0, 0)
+       end
+
+       def test_setStageR
+               @@vem.setStageR(1, 0, 0, 0)
+       end
+
+       def test_setSpotSize
+               @@vem.setSpotSize(1)
+       end
+
+       def test_acquisition
+               @@vem.acquisition
+       end
+end
+
+
diff --git a/vem/tool/.getCondition.js.swp b/vem/tool/.getCondition.js.swp
new file mode 100644 (file)
index 0000000..b59cb28
Binary files /dev/null and b/vem/tool/.getCondition.js.swp differ
diff --git a/vem/tool/.setStageR.js.un~ b/vem/tool/.setStageR.js.un~
new file mode 100644 (file)
index 0000000..e959e65
Binary files /dev/null and b/vem/tool/.setStageR.js.un~ differ
diff --git a/vem/tool/getCondition.js b/vem/tool/getCondition.js
new file mode 100644 (file)
index 0000000..d71a429
--- /dev/null
@@ -0,0 +1,23 @@
+var m;
+var Proj;
+var Ill;
+
+m = new ActiveXObject("TEMScripting.Instrument");
+
+Proj = m.Projection;
+Ill = m.Illumination;
+
+var data = {
+X:m.Stage.Position.X*1000000,
+Y:m.Stage.Position.Y*1000000,
+Z:m.Stage.Position.Z*1000000,
+A:m.Stage.Position.A*3.14159/180.0,
+SpotSizeIndex:Ill.SpotsizeIndex,
+Mag:Proj.Magnification
+//Obj:,
+//BeamTiltX:,
+//BeamTiltY:
+};
+
+WScript.echo('{"X":'+data["X"]+', "Y":'+data["Y"]+', "Z":'+data["Z"]+', "A":'+data["A"]+', "SpotSizeIndex":'+data["SpotSizeIndex"]+', "Mag":'+data["Mag"]+'}');
+
diff --git a/vem/tool/setBeamTilt.js b/vem/tool/setBeamTilt.js
new file mode 100644 (file)
index 0000000..c2a16db
--- /dev/null
@@ -0,0 +1,23 @@
+var m;
+var proj;
+var magIndex;
+
+var objParm = WScript.arguments;
+
+magIndex = objParm(0);
+
+
+//create TEMScripting Scripting
+m = new ActiveXObject("TEMScripting.Instrument");
+
+//create Projection object
+proj = m.Projection;
+
+
+
+WScript.echo(proj.Magnification, proj.MagnificationIndex);
+
+//proj.MagnificationIndex = 30;
+
+//WScript.echo(proj.Magnification, proj.MagnificationIndex);
+
diff --git a/vem/tool/setMagnification.js b/vem/tool/setMagnification.js
new file mode 100644 (file)
index 0000000..1f0bdea
--- /dev/null
@@ -0,0 +1,20 @@
+var m;
+var proj;
+var magIndex;
+
+var objParm = WScript.arguments;
+
+magIndex = objParm(0);
+
+
+//create TEMScripting Scripting
+m = new ActiveXObject("TEMScripting.Instrument");
+
+//create Projection object
+proj = m.Projection;
+proj.MagnificationIndex = magIndex;
+
+
+WScript.echo('{"Mag":'+proj.Magnification+', "MagIndex":'+proj.MagnificationIndex+'}');
+
+
diff --git a/vem/tool/setObj.js b/vem/tool/setObj.js
new file mode 100644 (file)
index 0000000..c2a16db
--- /dev/null
@@ -0,0 +1,23 @@
+var m;
+var proj;
+var magIndex;
+
+var objParm = WScript.arguments;
+
+magIndex = objParm(0);
+
+
+//create TEMScripting Scripting
+m = new ActiveXObject("TEMScripting.Instrument");
+
+//create Projection object
+proj = m.Projection;
+
+
+
+WScript.echo(proj.Magnification, proj.MagnificationIndex);
+
+//proj.MagnificationIndex = 30;
+
+//WScript.echo(proj.Magnification, proj.MagnificationIndex);
+
diff --git a/vem/tool/setSpeed.js b/vem/tool/setSpeed.js
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/vem/tool/setSpotSize.js b/vem/tool/setSpotSize.js
new file mode 100644 (file)
index 0000000..bebe8bc
--- /dev/null
@@ -0,0 +1,15 @@
+var m;
+var ill;
+var spsize;
+
+var objParm = WScript.arguments;
+
+m = new ActiveXObject("TEMScripting.Instrument");
+
+ill = m.Illumination;
+
+spsize = objParm(0);
+
+ill.SpotsizeIndex = spsize;
+
+WScript.echo('{"SpotSizeIndex":'+ill.SpotsizeIndex+'}');
diff --git a/vem/tool/setStageA.js b/vem/tool/setStageA.js
new file mode 100644 (file)
index 0000000..ea4506a
--- /dev/null
@@ -0,0 +1,39 @@
+var m;
+var Position;
+var x;
+var y;
+var z;
+var a;
+var b;
+
+var objParm = WScript.arguments;
+
+//create TEMScripting Scripting
+m = new ActiveXObject("TEMScripting.Instrument");
+
+//create StagePosition object
+Position = new m.StagePosition(0,0,0,0,0);
+
+x = objParm(0)*1e-7;
+y = objParm(1)*1e-7;
+z = objParm(2)*1e-7;
+a = objParm(3) * 3.14159/180.0;
+
+Position.X = x;
+Position.Y = y;
+Position.Z = z;
+Position.A = a;
+
+
+//move stage
+m.Stage.GoTo(Position, 15);
+
+var data = {
+x:m.Stage.Position.X * 1000000,
+y:m.Stage.Position.Y * 1000000,
+z:m.Stage.Position.Z * 1000000,
+a:m.Stage.Position.A * 180.0/3.14159
+};
+
+
+WScript.echo('{"X":'+data["x"]+', "Y":'+data["y"]+', "Z":'+data["z"]+', "A":'+data["a"]+'}');
diff --git a/vem/tool/setStageA.js~ b/vem/tool/setStageA.js~
new file mode 100644 (file)
index 0000000..ea4506a
--- /dev/null
@@ -0,0 +1,39 @@
+var m;
+var Position;
+var x;
+var y;
+var z;
+var a;
+var b;
+
+var objParm = WScript.arguments;
+
+//create TEMScripting Scripting
+m = new ActiveXObject("TEMScripting.Instrument");
+
+//create StagePosition object
+Position = new m.StagePosition(0,0,0,0,0);
+
+x = objParm(0)*1e-7;
+y = objParm(1)*1e-7;
+z = objParm(2)*1e-7;
+a = objParm(3) * 3.14159/180.0;
+
+Position.X = x;
+Position.Y = y;
+Position.Z = z;
+Position.A = a;
+
+
+//move stage
+m.Stage.GoTo(Position, 15);
+
+var data = {
+x:m.Stage.Position.X * 1000000,
+y:m.Stage.Position.Y * 1000000,
+z:m.Stage.Position.Z * 1000000,
+a:m.Stage.Position.A * 180.0/3.14159
+};
+
+
+WScript.echo('{"X":'+data["x"]+', "Y":'+data["y"]+', "Z":'+data["z"]+', "A":'+data["a"]+'}');
diff --git a/vem/tool/setStageR.js b/vem/tool/setStageR.js
new file mode 100644 (file)
index 0000000..25ec306
--- /dev/null
@@ -0,0 +1,39 @@
+var m;
+var Position;
+var x;
+var y;
+var z;
+var a;
+var b;
+
+var objParm = WScript.arguments;
+
+//create TEMScripting Scripting
+m = new ActiveXObject("TEMScripting.Instrument");
+
+//create StagePosition object
+Position = new m.StagePosition(0,0,0,0,0);
+
+x = objParm(0)*1e-7;
+y = objParm(1)*1e-7;
+z = objParm(2)*1e-7;
+a = objParm(3) * 3.14159/180.0;
+
+Position.X = m.Stage.Position.X + x;
+Position.Y = m.Stage.Position.Y + y;
+Position.Z = m.Stage.Position.Z + z;
+Position.A = m.Stage.Position.A + a;
+
+
+//move stage
+m.Stage.GoTo(Position, 15);
+
+var data = {
+x:m.Stage.Position.X*1000000,
+y:m.Stage.Position.Y*1000000,
+z:m.Stage.Position.Z*1000000,
+a:m.Stage.Position.A
+};
+
+
+WScript.echo(data["x"], data["y"], data["z"], data["a"]);
diff --git a/vem/tool/setStageR.js~ b/vem/tool/setStageR.js~
new file mode 100644 (file)
index 0000000..01a3480
--- /dev/null
@@ -0,0 +1,39 @@
+var m;
+var Position;
+var x;
+var y;
+var z;
+var a;
+var b;
+
+var objParm = WScript.arguments;
+
+//create TEMScripting Scripting
+m = new ActiveXObject("TEMScripting.Instrument");
+
+//create StagePosition object
+Position = new m.StagePosition(0,0,0,0,0);
+
+x = objParm(0)*1e-6;
+y = objParm(1)*1e-6;
+z = objParm(2)*1e-6;
+a = objParm(3) * 3.14159/180.0;
+
+Position.X = m.Stage.Position.X + x;
+Position.Y = m.Stage.Position.Y + y;
+Position.Z = m.Stage.Position.Z + z;
+Position.A = m.Stage.Position.A + a;
+
+
+//move stage
+m.Stage.GoTo(Position, 15);
+
+var data = {
+x:m.Stage.Position.X*1000000,
+y:m.Stage.Position.Y*1000000,
+z:m.Stage.Position.Z*1000000,
+a:m.Stage.Position.A
+};
+
+
+WScript.echo(data["x"], data["y"], data["z"], data["a"]);
diff --git a/vem/vem.rb b/vem/vem.rb
new file mode 100644 (file)
index 0000000..466d0f4
--- /dev/null
@@ -0,0 +1,46 @@
+
+class VEM
+
+  def self.create (inst)
+    if inst == "hitachi" then
+      HITACHIControl.new()
+    elsif inst == "fei" then
+      FEIControl.new()
+    elsif inst == "jeol" then
+      JEOLControl.new()
+    end
+  end
+
+  def initialize
+  end
+
+  def setStageA(x, y, z, a)
+  end
+
+  def setStageR(x, y, z, a)
+  end
+
+  def setSpotSize(spsize)
+  end
+
+  def setMagnification(magsize)
+  end
+
+  def acquisition
+  end
+
+  def acquisition255
+  end
+
+  def setObj(params)
+  end
+
+  def setBeamTilt(params)
+  end
+
+  def setSpeed(params)
+  end
+
+  def getCondition
+  end
+end