# -*- coding: utf-8 -*- """ Created on Wed Aug 11 14:37:17 2021 @author: User """ import time import pyvisa as visa import numpy as np """ Generador de funciones Tektronix AFG 3021B Manual U (web): https://github.com/hgrecco/labosdf-bin/raw/master/manuals/TektronixAFG3000.pdf Manual P (web): https://github.com/hgrecco/labosdf-bin/raw/master/manuals/TektronixAFG3000_p.pdf Manual U (local): \\Srvlabos\manuales\Tektronix\AFG3012B (M Usuario).pdf Manual P (local): \\Srvlabos\manuales\Tektronix\AFG3012B (Prog Manual).pdf """ rm = visa.ResourceManager() instrumentos = rm.list_resources() print(instrumentos) # Este string determina el intrumento que van a usar. # Lo tienen que cambiar de acuerdo a lo que tengan conectado. resource_name2 = instrumentos[1] # Abre la sesion VISA de comunicacion fungen = rm.open_resource(resource_name2) print(fungen.query('*IDN?')) ####################################################################### # tiempo = float(input("Introduzca el tiempo a medir: ")) frec = 1#fija el tiempo entre mediciones #float(input("Introduzca la frecuencia de muestreo en Hz: ")) frec1 = 10.0 #float(input("Introduzca la frecuencia minima en Hz: ")) frec2 = 10000.0 #float(input("Introduzca la frecuencia maxima en Hz: ")) #paso = float(input("Introduzca el paso en Hz: ")) N=100 #int(input("Introduzca el nĂºmero de mediciones: ")) datos=[] # Rampa lineal de frequencias #frecuencias = np.linspace(frec1, frec2, int((frec2-frec1)/paso)+1) #Rampa logaritmica de frecuencias frecuencias=np.geomspace(frec1,frec2,N) print(frecuencias) for freq in frecuencias: fungen.write('FREQ %f' % freq) time.sleep(1/frec) datos.append(freq) A = np.array(datos)