def awg():
    awg_sim = AWG5208('awg_sim',
                      address='GPIB0::1::INSTR',
                      visalib=visalib)
    yield awg_sim

    awg_sim.close()
Beispiel #2
0
def awg5208():

    import qcodes.instrument.sims as sims
    from qcodes.instrument_drivers.tektronix.AWG5208 import AWG5208
    visalib = sims.__file__.replace('__init__.py',
                                    'Tektronix_AWG5208.yaml@sim')

    logger.start_logger()

    inst = AWG5208('awg_sim', address='GPIB0::1::INSTR', visalib=visalib)

    try:
        yield inst
    finally:
        inst.close()
Beispiel #3
0
def upload_waveform_and_marker_data(awg: AWG5208, wf: np.ndarray,
                                    filename: str, channels: List[str]):
    short_filename = filename.replace('.wfmx', '')
    wfmx_file = awg.makeWFMXFile(wf, 0.350)
    awg.sendWFMXFile(wfmx_file, filename)
    awg.loadWFMXFile(filename)

    for chan in channels:
        exec('awg.' + chan + '.setWaveform(short_filename)')

    for chan in channels:
        exec('awg.' + chan + '.state(1)')

    awg.play()
Beispiel #4
0
    plt.show()


def upload_waveform_and_marker_data(awg: AWG5208, wf: np.ndarray,
                                    filename: str, channels: List[str]):
    short_filename = filename.replace('.wfmx', '')
    wfmx_file = awg.makeWFMXFile(wf, 0.350)
    awg.sendWFMXFile(wfmx_file, filename)
    awg.loadWFMXFile(filename)

    for chan in channels:
        exec('awg.' + chan + '.setWaveform(short_filename)')

    for chan in channels:
        exec('awg.' + chan + '.state(1)')

    awg.play()


def stop_and_disable(awg: AWG5208, channels: List[str]):
    pass


if __name__ == '__main__':
    awg_address = 'TCPIP0::192.168.15.118::inst0::INSTR'
    awg_channels = ['ch1', 'ch2', 'ch3', 'ch4', 'ch5', 'ch6', 'ch7', 'ch8']

    wf, wf_name = generate_waveform_and_marker_data()
    awg = AWG5208('awg5208', awg_address)
    upload_waveform_and_marker_data(awg, wf, wf_name, awg_channels)