def __init__(self):
        CameraBase.__init__(self)
        FilterWheelBase.__init__(self)

        self.__apogee_manager = ApogeeManager()

        self.__cooling = False

        self.__lastFilter = self._getFilterName(0)
        self.__temperature = 20.0
        self.__setpoint = 0
        self.__lastFrameStart = 0
        self.__isFanning = False

        # my internal CCD code
        self._MY_CCD = 1 << 1
        self._MY_ADC = 1 << 2
        self._MY_READOUT_MODE = 1 << 3

        self._ccds = {self._MY_CCD: CCD.IMAGING}

        self._adcs = {"12 bits": self._MY_ADC}

        self._binnings = {"1x1": self._MY_READOUT_MODE}

        self._binning_factors = {"1x1": 1}

        self._supports = {
            CameraFeature.TEMPERATURE_CONTROL: True,
            CameraFeature.PROGRAMMABLE_GAIN: False,
            CameraFeature.PROGRAMMABLE_OVERSCAN: False,
            CameraFeature.PROGRAMMABLE_FAN: True,
            CameraFeature.PROGRAMMABLE_LEDS: False,
            CameraFeature.PROGRAMMABLE_BIAS_LEVEL: False
        }

        readoutMode = ReadoutMode()
        readoutMode.mode = 0
        readoutMode.gain = 1.0
        readoutMode.width = 1024
        readoutMode.height = 1024
        readoutMode.pixelWidth = 9.0
        readoutMode.pixelHeight = 9.0

        self._readoutModes = {
            self._MY_CCD: {
                self._MY_READOUT_MODE: readoutMode
            }
        }

        #  TODO : necessario?
        self._binning_factors = {"1x1": 1, "2x2": 2, "3x3": 3, "9x9": 9}
示例#2
0
文件: apogee.py 项目: agati/chimera
    def __init__(self):
        CameraBase.__init__(self)
        FilterWheelBase.__init__(self)

        self.__apogee_manager = ApogeeManager()

        self.__cooling = False

        self.__lastFilter = self._getFilterName(0)
        self.__temperature = 20.0
        self.__setpoint = 0
        self.__lastFrameStart = 0
        self.__isFanning = False

        # my internal CCD code
        self._MY_CCD = 1 << 1
        self._MY_ADC = 1 << 2
        self._MY_READOUT_MODE = 1 << 3

        self._ccds = {self._MY_CCD: CCD.IMAGING}

        self._adcs = {"12 bits": self._MY_ADC}

        self._binnings = {"1x1": self._MY_READOUT_MODE}

        self._binning_factors = {"1x1": 1}

        self._supports = {CameraFeature.TEMPERATURE_CONTROL: True,
                          CameraFeature.PROGRAMMABLE_GAIN: False,
                          CameraFeature.PROGRAMMABLE_OVERSCAN: False,
                          CameraFeature.PROGRAMMABLE_FAN: True,
                          CameraFeature.PROGRAMMABLE_LEDS: False,
                          CameraFeature.PROGRAMMABLE_BIAS_LEVEL: False}

        readoutMode = ReadoutMode()
        readoutMode.mode = 0
        readoutMode.gain = 1.0
        readoutMode.width = 1024
        readoutMode.height = 1024
        readoutMode.pixelWidth = 9.0
        readoutMode.pixelHeight = 9.0

        self._readoutModes = {self._MY_CCD:
                              {self._MY_READOUT_MODE: readoutMode}}

        #  TODO : necessario?
        self._binning_factors = {"1x1": 1,
                                 "2x2": 2,
                                 "3x3": 3,
                                 "9x9": 9}
示例#3
0
    def __start__(self):

        self.open()

        # my internal CCD code
        self._MY_CCD = 1 << 1
        self._MY_ADC = 1 << 2
        self._MY_READOUT_MODE = 1 << 3

        self._ccds = {self._MY_CCD: CCD.IMAGING}

        self._adcs = {"12 bits": self._MY_ADC}

        self._binnings = {"1x1": 0,
                          "2x2": 1,
                          "3x3": 2,
                          "9x9": 3,
                          "10x10": 4}

        self._binning_factors = {"1x1": 1,
                                 "2x2": 2,
                                 "3x3": 3,
                                 "9x9": 9,
                                 "10x10": 10}

        self._supports = {CameraFeature.TEMPERATURE_CONTROL: True,
                          CameraFeature.PROGRAMMABLE_GAIN: False,
                          CameraFeature.PROGRAMMABLE_OVERSCAN: False,
                          CameraFeature.PROGRAMMABLE_FAN: False,
                          CameraFeature.PROGRAMMABLE_LEDS: False,
                          CameraFeature.PROGRAMMABLE_BIAS_LEVEL: False}

        self._readout_modes = [0]

        self._readoutModes = {self._MY_CCD: {}}
        i_mode_tot = 0
        for i_mode in range(len(self._readout_modes)):
            for binning, i_mode in self._binnings.iteritems():
                readoutMode = ReadoutMode()
                vbin, hbin = [int(v) for v in binning.split('x')]
                readoutMode.mode = i_mode
                # TODO:  readoutMode.gain = self._ccdsoft.ElectronsPerADU
                readoutMode.width = self["ccd_width"] / hbin
                readoutMode.height = self["ccd_height"] / vbin
                readoutMode.pixelWidth = self['ccd_pixsize_x'] * hbin
                readoutMode.pixelHeight = self['ccd_pixsize_y'] * vbin
                self._readoutModes[self._MY_CCD].update({i_mode: readoutMode})
                i_mode_tot += 1

        self.setHz(2)
示例#4
0
    def __start__(self):

        self.open()

        # my internal CCD code
        self._MY_CCD = 1 << 1
        self._MY_ADC = 1 << 2
        self._MY_READOUT_MODE = 1 << 3

        self._ccds = {self._MY_CCD: CCD.IMAGING}

        self._adcs = {"12 bits": self._MY_ADC}

        self._binnings = {"1x1": 0,
                          "2x2": 1,
                          "3x3": 2,
                          "9x9": 3,
                          "10x10": 4}

        self._binning_factors = {"1x1": 1,
                                 "2x2": 2,
                                 "3x3": 3,
                                 "9x9": 9,
                                 "10x10": 10}

        self._supports = {CameraFeature.TEMPERATURE_CONTROL: True,
                          CameraFeature.PROGRAMMABLE_GAIN: False,
                          CameraFeature.PROGRAMMABLE_OVERSCAN: False,
                          CameraFeature.PROGRAMMABLE_FAN: False,
                          CameraFeature.PROGRAMMABLE_LEDS: False,
                          CameraFeature.PROGRAMMABLE_BIAS_LEVEL: False}

        self._readout_modes = [0]

        self._readoutModes = {self._MY_CCD: {}}
        i_mode_tot = 0
        for i_mode in range(len(self._readout_modes)):
            for binning, i_mode in self._binnings.iteritems():
                readoutMode = ReadoutMode()
                vbin, hbin = [int(v) for v in binning.split('x')]
                readoutMode.mode = i_mode
                # TODO:  readoutMode.gain = self._ccdsoft.ElectronsPerADU
                readoutMode.width = self["ccd_width"] / hbin
                readoutMode.height = self["ccd_height"] / vbin
                readoutMode.pixelWidth = self['ccd_pixsize_x'] * hbin
                readoutMode.pixelHeight = self['ccd_pixsize_y'] * vbin
                self._readoutModes[self._MY_CCD].update({i_mode: readoutMode})
                i_mode_tot += 1

        self.setHz(2)
示例#5
0
    def __start__(self):

        self.open()

        self["camera_model"] = self.camera0.DeviceModelName
        self["device"] = "Ethernet"
        self["ccd_model"] = self.camera0.SensorType
        # self["CCD"] = CCD.TRACKING
        self.camera0.DeviceTemperatureSelector = "Sensor"

        readoutMode = ReadoutMode()
        readoutMode.mode = 0
        readoutMode.gain = 1.0
        readoutMode.width = self.camera0.WidthMax
        readoutMode.height = self.camera0.HeightMax
        readoutMode.pixelWidth = 5.5
        readoutMode.pixelHeight = 5.5


        self.readOutModes = {self.ccd : {0 : readoutMode}}