FAQs from Rohde & Schwarz

Captura de una traza en modo de analizador de espectro con Matlab

Pregunta

El siguiente script de Matlab proporciona una referencia rápida de cómo mover los datos de traza del analizador de espectro R&S®FSV3030 al área de trabajo de Matlab.

Se utilizó una simple señal de onda continua no modulada de 1 GHz y -30 dbm como ejemplo para la prueba de concepto.

Respuesta

+++Código+++

% Condiciones previas:
% - último R&S VISA
clc instalado;
analyzer_handle = visa('rs','TCPIP::10.205.0.101::INSTR'); %se requiere conexión visa, caja de herramientas
analyzer_handle.OutputBufferSize = 1000000; %tamaño del búfer de salida en bytes
analyzer_handle.InputBufferSize = 1000000; %tamaño del búfer de entrada en bytes
fopen(analyzer_handle);

fprintf(analyzer_handle,'*RST;*WAI');
fprintf(analyzer_handle,'*IDN?');
a=fscanf(analyzer_handle);
disp(a);

fprintf(analyzer_handle,'INIT:CONT OFF'); %Selecciona modo de solo barrido.

%--------------Configurar la frecuencia y el span-------------
fcenter=1000000000;
fprintf(analyzer_handle,'FREQ:CENT %d',fcenter); %Define la frecuencia central
fspan=5000000;
fprintf(analyzer_handle,'FREQ:SPAN %d',fspan); %Configura el span

%--------------Configurar el barrido--------------------------
fprintf(analyzer_handle,'SENS:SWE:COUN 1'); %Define barrido 1
puntos=10000; %número de puntos configura la resolución de la traza
fprintf(analyzer_handle, 'SENS:SWE:POIN %d',puntos);

%--------------Configurar el ancho de banda----------------------
fprintf(analyzer_handle,'BAND:AUTO OFF');
fprintf(analyzer_handle,'BAND 100000'); %Define el ancho de banda de resolución
fprintf(analyzer_handle,'BAND:VID 500kHz'); %desacopla el ancho de banda de video del ancho de banda de resolución y lo disminuye para suavizar la traza.

%--------------adquisición de traza-----------------------------
tiempo límite=30; %tiempo límite en segundos
set(analyzer_handle,'Timeout',tiempo límite); %el tiempo límite se aumentó antes de la adquisición para evitar errores de sincronización
fprintf(analyzer_handle,'INIT:IMM;*WAI');
fprintf('Buscando forma de onda ...\n ');
fprintf(analyzer_handle,':FORM REAL,32');
fprintf(analyzer_handle,':TRAC? TRACE1;*WAI');
datos=binblockread(analyzer_handle,'float32');
fread(analyzer_handle,1); %fread remueve el terminador extra en el búfer
tiempo límite=1; %el tiempo límite en segundos regresa a un valor normal
set(analyzer_handle,'Timeout',tiempo límite);

%--------------Presentación de la traza en un gráfico---------
fstart=fcenter-fspan/2;
fstop=fcenter+fspan/2;
resolution=fspan/points;
points_array=1:1:points;

for c = 1:points %escala del eje temporal y datos de potencia

points_array(1,c)=points_array(1,c)*resolution;
points_array(1,c)=points_array(1,c) + fstart;

fin

plot(points_array,data);
title('Adquisición de espectro SA')
xlabel('dominio de la frecuencia [Hz]')
ylabel('potencia [dbm]')

%--------------comprobación de errores--------------------
fprintf(analyzer_handle,'SYST:ERR?');
a=fscanf(analyzer_handle);
disp(a);

fclose(analyzer_handle);

+++

A continuación se muestra la traza que se observó en el analizador de espectro después de ejecutar el script anterior con Matlab.

Captura de una traza en modo de analizador de espectro con Matlab

Aquí la salida del código que presenta los datos de la traza como una prueba de concepto.

Captura de una traza en modo de analizador de espectro con Matlab
Captura de una traza en modo de analizador de espectro con Matlab

Además, puede utilizarse el R&S Visa Tester para revisar en detalle el proceso de adquisición de los puntos de datos, para este caso en particular se adquirieron 10000 puntos, cada punto dado como un valor flotante de 4 bytes. Por esta razón uno lee 40000 bytes en el registro al inicio de la captura para que el búfer de adquisición se establezca como corresponde,

Referencias:

- Página del R&S®FSV3030
https://www.rohde-schwarz.com/de/produkt/fsv3000-produkt-startseite_63493-601503.html

Consejos y trucos para controlar remotamente analizadores de espectro y de redes - Nota de aplicación 1EF62_1E
https://www.rohde-schwarz.com/applications/hints-and-tricks-for-remote-control-of-spectrum-and-network-analyzers-application-note_56280-15635.html

-Control remoto y drivers de instrumentos:
https://www.rohde-schwarz.com/driver-pages/remote-control/drivers-remote-control_110753.html