Exemple #1
0
    def __init__(self, name,turnOn=False, portname='COM3'):
        self.ser_args = dict(port=portname, baudrate=500000, timeout=.1, writeTimeout=2)
        #self.ser_port = serial.Serial(portname, 500000, timeout=.1, writeTimeout=2)
        self.powerControlable = True
        #self.isOn=False
        
        self.doPoll=True
        
        
        self.commandQueue = Queue.Queue()
        self.replyQueue = Queue.Queue()
        #self.adhocQueue = Queue.Queue()
        
        self.adHocVals = {}
        
        self.threadPoll = threading.Thread(target=self._poll)
        self.threadPoll.start()
        
        #self.TurnOff()
        
        #self.power = self._getOutputPower()
        time.sleep(1)
        self.power = self._getOutputPower()
        

        Laser.__init__(self, name, turnOn)
Exemple #2
0
    def __init__(self, name, turnOn=False, portname='COM3'):
        self.ser_args = dict(port=portname,
                             baudrate=500000,
                             timeout=.1,
                             writeTimeout=2)
        #self.ser_port = serial.Serial(portname, 500000, timeout=.1, writeTimeout=2)
        self.powerControlable = True
        #self.isOn=False

        self.doPoll = True

        self.commandQueue = Queue.Queue()
        self.replyQueue = Queue.Queue()
        #self.adhocQueue = Queue.Queue()

        self.adHocVals = {}

        self.threadPoll = threading.Thread(target=self._poll)
        self.threadPoll.start()

        #self.TurnOff()

        #self.power = self._getOutputPower()
        time.sleep(1)
        self.power = self._getOutputPower()

        Laser.__init__(self, name, turnOn)
    def __init__(self,
                 name,
                 turnOn=False,
                 portname='COM3',
                 maxpower=0.14,
                 **kwargs):
        self.ser_args = dict(port=portname,
                             baudrate=500000,
                             timeout=.1,
                             writeTimeout=2)
        #self.ser_port = serial.Serial(portname, 500000, timeout=.1, writeTimeout=2)
        self.powerControlable = True
        #self.isOn=False

        self.doPoll = True
        self.maxpower = maxpower  # maximum power, for our current only laser of this type it is 140mW

        self.commandQueue = Queue.Queue()
        self.replyQueue = Queue.Queue()
        #self.adhocQueue = Queue.Queue()

        self.adHocVals = {}

        self.threadPoll = threading.Thread(target=self._poll)
        self.threadPoll.start()

        #self.TurnOff()

        #self.power = self._getOutputPower()
        time.sleep(1)
        self.power = self._getOutputPower()

        Laser.__init__(self, name, turnOn, **kwargs)
Exemple #4
0
    def __init__(self, name,turnOn=False, portname='COM1'):
        self.portname = portname
        self.ser_port = serial.Serial(None, 
                                      timeout=.01, writeTimeout=.01, xonxoff=0, rtscts=0)
        self.ser_port.port = portname
        self.powerControlable = False
        self.isOn=False

        Laser.__init__(self, name, turnOn)
    def __init__(self, name,turnOn=False, portname='COM1', maxpower=0.1, **kwargs):
        self.ser_args = dict(port=portname, baudrate=115200, timeout=2, writeTimeout=2)
        self.powerControlable = True
        self.isOn=True
        self.maxpower = maxpower

        self.power =  0.01#self._getOutputPower()
        
        self._TurnOn()

        Laser.__init__(self, name, turnOn, **kwargs)
Exemple #6
0
    def __init__(self, name, turnOn=False, ios=None, pin=13, **kwargs):
        if ios is None:
            self.ios = IOSlave()
        else:
            self.ios = ios

        self._enable_pin = pin

        self.powerControlable = False
        self.isOn = True

        Laser.__init__(self, name, turnOn, **kwargs)
Exemple #7
0
    def __init__(self, name,turnOn=False, ios = None, maxpower=1):
        if ios == None:
            self.ios = IOSlave()
        else:
            self.ios = ios
            
        self.powerControlable = True
        self.isOn=True
        self.maxpower = maxpower

        self.SetPower(1)

        Laser.__init__(self, name, turnOn)
Exemple #8
0
    def __init__(self, name, turnOn=False, ios=None, maxpower=1):
        if ios == None:
            self.ios = IOSlave()
        else:
            self.ios = ios

        self.powerControlable = True
        self.isOn = True
        self.maxpower = maxpower

        self.SetPower(1)

        Laser.__init__(self, name, turnOn)
Exemple #9
0
    def __init__(self, name,turnOn=False, portname='COM1', maxpower=0.1):
        self.ser_args = dict(port=portname, baudrate=115200, timeout=2, writeTimeout=2)
        #ser = serial.Serial(portname, 115200, 
        #                              timeout=2, writeTimeout=2)
        self.powerControlable = True
        self.isOn=True
        self.maxpower = maxpower

        self.power =  0.01#self._getOutputPower()
        
        self._TurnOn()

        Laser.__init__(self, name, turnOn)
Exemple #10
0
    def __init__(self,
                 name,
                 turnOn=False,
                 portname='COM1',
                 minpower=0,
                 maxpower=0.1,
                 **kwargs):  # minpower, maxpower in Watts
        self.ser_args = dict(port=portname,
                             baudrate=115200,
                             timeout=1,
                             writeTimeout=2)

        self.powerControlable = True
        self.isOn = True
        self.maxpower = maxpower
        self.minpower = minpower
        self.power = 0.01

        Laser.__init__(self, name, turnOn)
    def __init__(self,
                 name,
                 turnOn=False,
                 portname='COM3',
                 maxpower=0.14,
                 **kwargs):
        self.ser_port = serial.Serial(portname,
                                      500000,
                                      timeout=.1,
                                      writeTimeout=2)
        self.powerControlable = True
        #self.isOn=False

        self.doPoll = True

        self.qLock = threading.Lock()

        self.maxpower = maxpower

        self.commandQueue = Queue.Queue()
        self.replyQueue = Queue.Queue()
        self.ilbit = '0'
        #self.adhocQueue = Queue.Queue()

        self.adHocVals = {}

        self.threadPoll = threading.Thread(target=self._poll)
        self.threadPoll.start()

        #self.TurnOff()

        #self.power = self._getOutputPower()
        time.sleep(1)

        try:
            self.power = self._getOutputPower()
        except RuntimeError:
            self.power = 0

        Laser.__init__(self, name, turnOn)
Exemple #12
0
    def __init__(self,
                 name,
                 turnOn=False,
                 portname='COM1',
                 minpower=0,
                 maxpower=0.1,
                 **kwargs):  # minpower, maxpower in Watts
        self.ser_args = dict(port=portname,
                             baudrate=115200,
                             timeout=1,
                             writeTimeout=2)

        self.powerControlable = True
        self.isOn = True
        self.maxpower = maxpower
        self.minpower = minpower
        self.power = 0.01

        with serial.Serial(**self.ser_args) as ser:
            ser.write(b'talk robot\r\necho off\r\n')
            ser.flush()

        Laser.__init__(self, name, turnOn, **kwargs)
    def __init__(self,
                 name,
                 turnOn=False,
                 portname='COM3',
                 maxpower=0.14,
                 power_fudge=1.0,
                 **kwargs):
        self.ser_args = dict(port=portname,
                             baudrate=500000,
                             timeout=.1,
                             writeTimeout=2)
        #self.ser_port = serial.Serial(portname, 500000, timeout=.1, writeTimeout=2)
        self.powerControlable = True
        #self.isOn=False

        self.doPoll = True
        self.maxpower = maxpower  # maximum power, for our current only laser of this type it is 140mW
        # optionally de-rate the maximum power that we can set. Used as a work-around for calibration issues
        # in the built-in power meter which causes the erroneous detection of an over-power failure and triggers
        # and interlock
        self.power_fudge = power_fudge
        self.commandQueue = Queue.Queue()
        self.replyQueue = Queue.Queue()
        #self.adhocQueue = Queue.Queue()

        self.adHocVals = {}

        self.threadPoll = threading.Thread(target=self._poll)
        self.threadPoll.start()

        #self.TurnOff()

        #self.power = self._getOutputPower()
        time.sleep(1)
        self.power = self._getOutputPower()

        Laser.__init__(self, name, turnOn, **kwargs)
Exemple #14
0
    def __init__(self,
                 serial_port='COM3',
                 name='MPBCW',
                 turn_on=False,
                 init_power=200,
                 **kwargs):
        """

        Parameters
        ----------
        serial_port: str
            Name of the serial port to connect to
        name
        turn_on
        init_power: float
            In units of mW
        kwargs
        """
        self.serial_port = serial.Serial(serial_port, 9600, timeout=0.5)
        self.lock = threading.Lock()

        self.is_on = False

        time.sleep(1)

        self.power = 0

        Laser.__init__(self, name, turn_on, **kwargs)
        if self.IsOn():
            self.SetPower(init_power)

        self.MIN_POWER, self.MAX_POWER = [
            float(p)
            for p in self.query(b'getpowersetptlim 0', lines_expected=1)
            [0].strip(b'\rD >').split()
        ]
Exemple #15
0
    def __init__(self,
                 serial_port='COM8',
                 turn_on=False,
                 name='OBIS',
                 init_power=5,
                 **kwargs):
        """

        Parameters
        ----------
        serial_port: str
            serial port
        turn_on: bool
            Whether or not to turn on the laser on instantiating the class
        name: str
            Name of the laser
        init_power: float
            In units of mW
        kwargs
        """
        self.serial_port = serial.Serial(serial_port, timeout=.1)
        self.lock = threading.Lock()

        time.sleep(1)

        self.power = 0
        self.SetPower(init_power)
        self.MIN_POWER = 1e3 * float(
            self.query(b'SOUR:POW:LIM:LOW?\r\n', lines_expected=1)[0])
        self.MAX_POWER = 1e3 * float(
            self.query(b'SOUR:POW:LIM:HIGH?\r\n', lines_expected=1)[0])
        self.is_on = False

        # self.query(b'SYST:COMM:HAND OFF\r\n', lines_expected=0)

        Laser.__init__(self, name, turn_on, **kwargs)
Exemple #16
0
 def registerStateHandlers(self, scopeState):
     Laser.registerStateHandlers(self, scopeState)
     scopeState.registerHandler('Lasers.%s.AOTFSetting' % self.name,
                                self.GetAOTFPower, self.SetAOTFPower)
     scopeState.registerHandler('Lasers.%s.LaserPower' % self.name,
                                self.GetLaserPower, self.SetLaserPower)