def __init__(self, parent=None):
        super().__init__(parent=parent)

        addrs = load_ast_if_exists('instr.ini',
                                   default={
                                       'Осциллограф': 'GPIB1::7::INSTR',
                                       'Анализатор': 'GPIB1::18::INSTR',
                                       'P LO': 'GPIB1::6::INSTR',
                                       'P RF': 'GPIB1::20::INSTR',
                                       'Источник': 'GPIB1::3::INSTR',
                                       'Мультиметр': 'GPIB1::22::INSTR',
                                   })

        self.requiredInstruments = {
            'Осциллограф': OscilloscopeFactory(addrs['Осциллограф']),
            'Анализатор': AnalyzerFactory(addrs['Анализатор']),
            'P LO': GeneratorFactory(addrs['P LO']),
            'P RF': GeneratorFactory(addrs['P RF']),
            'Источник': SourceFactory(addrs['Источник']),
            'Мультиметр': MultimeterFactory(addrs['Мультиметр']),
        }

        self.deviceParams = {
            'Демодулятор': {
                'F': 1,
            },
        }

        self.secondaryParams = load_ast_if_exists('params.ini',
                                                  default={
                                                      'Plo_min': -10.0,
                                                      'Plo_max': -10.0,
                                                      'Plo_delta': 1.0,
                                                      'Flo_min': 0.1,
                                                      'Flo_max': 3.0,
                                                      'Flo_delta': 0.1,
                                                      'is_Flo_x2': False,
                                                      'Prf': -10.0,
                                                      'Frf_min': 0.11,
                                                      'Frf_max': 3.1,
                                                      'Frf_delta': 0.1,
                                                      'Usrc': 5.0,
                                                      'OscAvg': True,
                                                      'loss': 0.82,
                                                      'scale_y': 0.7,
                                                      'timebase_coeff': 1.0,
                                                  })

        self._calibrated_pows_lo = load_ast_if_exists('cal_lo.ini', default={})
        self._calibrated_pows_rf = load_ast_if_exists('cal_rf.ini', default={})

        self._instruments = dict()
        self.found = False
        self.present = False
        self.hasResult = False
        self.only_main_states = False

        self.result = MeasureResult()
    def __init__(self, parent=None):
        super().__init__(parent=parent)

        self.requiredInstruments = {
            'Анализатор': NetworkAnalyzerFactory('GPIB1::9::INSTR'),
            'Источник': SourceFactory('GPIB1::4::INSTR')
        }

        self.deviceParams = {
            'Аналоговый фазовращатель': {
                'F':
                [1.15, 1.35, 1.75, 1.92, 2.25, 2.54, 2.7, 3, 3.47, 3.86, 4.25],
                'mul': 2,
                'P1': 15,
                'P2': 21,
                'Istat': [None, None, None],
                'Idyn': [None, None, None]
            },
        }

        if isfile('./params.ini'):
            import ast
            with open('./params.ini', 'rt', encoding='utf-8') as f:
                raw = ''.join(f.readlines())
                self.deviceParams = ast.literal_eval(raw)

        self.secondaryParams = {
            'Pin': -10,
            'F1': 4,
            'F2': 8,
            'U1': 0,
            'U2': 1,
            'Ustep': 0.1,
            'kp': 0,
            'Fborder1': 4,
            'Fborder2': 8
        }

        self.span = 0.1
        self.sweep_points = 81
        self.cal_set = 'Upr_tst'

        self._instruments = dict()
        self.found = False
        self.present = False
        self.hasResult = False

        self.result = MeasureResult()

        self._freqs = list()
        self._mag_s11s = list()
        self._mag_s22s = list()
        self._mag_s21s = list()
        self._phs_s21s = list()
        self._phase_values = list()
Exemple #3
0
    def __init__(self, parent=None):
        super().__init__(parent=parent)

        self.requiredInstruments = {
            'Анализатор': NetworkAnalyzerFactory('GPIB0::9::INSTR'),
            'Источник питания': SourceFactory('GPIB0::5::INSTR'),
            'Программатор': ProgrammerFactory('COM5')
        }

        self.deviceParams = {
            'Цифровой аттенюатор': {
                'F':
                [1.15, 1.35, 1.75, 1.92, 2.25, 2.54, 2.7, 3, 3.47, 3.86, 4.25],
                'mul': 2,
                'P1': 15,
                'P2': 21,
                'Istat': [None, None, None],
                'Idyn': [None, None, None]
            },
        }

        if isfile('./params.ini'):
            import ast
            with open('./params.ini', 'rt', encoding='utf-8') as f:
                raw = ''.join(f.readlines())
                self.deviceParams = ast.literal_eval(raw)

        self.secondaryParams = {
            'Pin': -10,
            'F1': 4,
            'F2': 8,
            'kp': 0,
            'Fborder1': 4,
            'Fborder2': 8
        }

        self.sweep_points = 201
        self.cal_set = '-20db_pyatkin_6G'

        self._instruments = dict()
        self.found = False
        self.present = False
        self.hasResult = False
        self.only_main_states = False

        self.result = MeasureResult()

        self._freqs = list()
        self._mag_s11s = list()
        self._mag_s22s = list()
        self._mag_s21s = list()
        self._phs_s21s = list()
        self._amp_values = list()
        self._current = [0.0, 0.0]
Exemple #4
0
    def __init__(self, parent=None):
        super().__init__(parent=parent)

        self.requiredInstruments = {
            # 'Анализатор': AnalyzerFactory('GPIB0::9::INSTR'),
            # 'Осциллограф': OscilloscopeFactory('USB0::0x0957::0x17A4::MY51452204::0::INSTR'),
            'Источник 1': SourceFactory('GPIB1::3::INSTR'),
            # 'Источник 2': SourceFactory('GPIB0::2::INSTR'),
            # 'Генератор 1': GeneratorFactory('GPIB0::3::INSTR'),
            # 'Генератор 2': GeneratorFactory('GPIB0::4::INSTR'),
            'Программатор': ProgrammerFactory('COM12')
        }

        self.deviceParams = {
            'Цифровой делитель': {
                'F':
                [1.15, 1.35, 1.75, 1.92, 2.25, 2.54, 2.7, 3, 3.47, 3.86, 4.25],
                'mul': 2,
                'P1': 15,
                'P2': 21,
                'Istat': [None, None, None],
                'Idyn': [None, None, None]
            },
        }

        if isfile('./params.ini'):
            import ast
            with open('./params.ini', 'rt', encoding='utf-8') as f:
                raw = ''.join(f.readlines())
                self.deviceParams = ast.literal_eval(raw)

        self.secondaryParams = {
            'Pin': -20,
            'F1': 1.5,
            'F2': 4,
            'kp': 0,
            'Fborder1': 4,
            'Fborder2': 8
        }

        self.sweep_points = 201
        self.cal_set = 'CH1_CALREG'

        self._instruments = dict()
        self.found = False
        self.present = False
        self.hasResult = False

        self.result = MeasureResult()
    def __init__(self, parent=None):
        super().__init__(parent=parent)

        self.requiredInstruments = {
            'Анализатор п/п приборов':
            SemiconductorAnalyzerFactory('GPIB1::10::INSTR'),
        }

        self.deviceParams = {
            'Варикап': {
                'F':
                [1.15, 1.35, 1.75, 1.92, 2.25, 2.54, 2.7, 3, 3.47, 3.86, 4.25],
                'mul': 2,
                'P1': 15,
                'P2': 21,
                'Istat': [None, None, None],
                'Idyn': [None, None, None]
            },
        }

        if isfile('./params.ini'):
            import ast
            with open('./params.ini', 'rt', encoding='utf-8') as f:
                raw = ''.join(f.readlines())
                self.deviceParams = ast.literal_eval(raw)

        self.secondaryParams = {
            'Pin': -10,
            'F1': 4,
            'F2': 8,
            'kp': 0,
            'Fborder1': 4,
            'Fborder2': 8
        }

        self.sweep_points = 201
        self.cal_set = '-20db_pyatkin_6G'

        self._instruments = dict()
        self.found = False
        self.present = False
        self.hasResult = False
        self.only_main_states = False

        self.result = MeasureResult()

        self._freqs = list()
    def __init__(self, parent=None):
        super().__init__(parent=parent)

        self.requiredInstruments = {
            'Анализатор': NetworkAnalyzerFactory('GPIB1::9::INSTR'),
        }

        self.deviceParams = {
            'А1449-01 (тип 1)': {
                'Fstart': 10 * MHz,
                'Fend': 9 * GHz,
                'Pin': -20,
            },
        }

        if isfile('./devices.json'):
            import ast
            with open('./devices.json', 'rt', encoding='utf-8') as f:
                raw = ''.join(f.readlines())
                self.deviceParams = ast.literal_eval(raw)

        self.secondaryParams = {
            'Pin': -10,
            'F1': 4,
            'F2': 8,
        }

        self.span = 0.1
        self.sweep_points = 12801
        self.cal_set = 'Upr_tst'

        self._instruments = dict()
        self.found = False
        self.present = False
        self.hasResult = False

        self.result = MeasureResult()

        self._freqs = list()
        self._mag_s11s = list()