def run(self):

        I_forward = range(0, self.gridColumns)
        I_backward = range(self.gridColumns-1, -1, -1)
        cnt = 0
        for j in range(self.gridRows):
            rowMS = self.row2ms(j)
            arduinoCtrl.set_ud_servo(rowMS)
            I = []
            for i in I_forward:# if j%2 is 0 else I_backward:
                colMS = self.col2ms(i)

                arduinoCtrl.set_lr_servo(colMS)
                acolMS = arduinoCtrl.get_lr_servo()
                if acolMS != colMS:
                    print ('{0},{1}'.format(colMS, acolMS))
                temp = arduinoCtrl.temperature()
                print('A[{},{}]={}'.format(j, i, temp))
                self.new_value.emit(i, j, temp)
                cnt += 1

               # if cnt % 50 is 0:
                self.progress.emit(cnt)

        self.progress.emit(100000)
    def handle_scan(self, param):

        ox_len = int(abs(Settings.settings['lrServoMax'] - Settings.settings['lrServoMin']) / Settings.settings['lrStep'])+1
        oy_len = int(abs(Settings.settings['udServoMax'] - Settings.settings['udServoMin']) / Settings.settings['udStep'])+1

        arduinoCtrl.set_lr_servo(Settings.settings['lrServoMin'])
        arduinoCtrl.set_ud_servo(Settings.settings['udServoMin'])

        total_points = ox_len * oy_len
        progress = QProgressDialog('Scanning thermal image', 'Stop', 0, total_points)

        self.mMatrix = np.zeros((oy_len, ox_len))+23

        self.mQPixmap = QPixmap(ox_len, oy_len)
        self.mQPixmap.fill()

        rectangleScanJob = RectangleScanJob()
        rectangleScanJob.new_value.connect(self.handle_temperature)
        rectangleScanJob.progress.connect(progress.setValue)
        rectangleScanJob.start()

        #rectangleScanJob.run()

        progress.exec_()

        if progress.wasCanceled():
            rectangleScanJob.terminate()
            return

        self.update_picture_from_matrix()
Beispiel #3
0
    def run(self):

        I_forward = range(0, self.gridColumns)
        I_backward = range(self.gridColumns - 1, -1, -1)
        cnt = 0
        for j in range(self.gridRows):
            rowMS = self.row2ms(j)
            arduinoCtrl.set_ud_servo(rowMS)
            I = []
            for i in I_forward:  # if j%2 is 0 else I_backward:
                colMS = self.col2ms(i)

                arduinoCtrl.set_lr_servo(colMS)
                acolMS = arduinoCtrl.get_lr_servo()
                if acolMS != colMS:
                    print('{0},{1}'.format(colMS, acolMS))
                temp = arduinoCtrl.temperature()
                print('A[{},{}]={}'.format(j, i, temp))
                self.new_value.emit(i, j, temp)
                cnt += 1

                # if cnt % 50 is 0:
                self.progress.emit(cnt)

        self.progress.emit(100000)
Beispiel #4
0
 def handle_test_lrCenter(self):
     value = self.spin_lrCenter.value()
     arduinoCtrl.set_lr_servo(value)
     self.update_grid_info()
 def handle_test_lrCenter(self):
     value = self.spin_lrCenter.value()
     arduinoCtrl.set_lr_servo(value)
     self.update_grid_info()