AnsweredAssumed Answered

GPIB connection of Agilent 33500B with matlab

Question asked by mbr1 on Feb 10, 2015
Hi 

I try to send an arbitrary waveform from matlab  to an agilent 33500B via GPIB. The IVI driver is already installed in my PC and the used GPIB adress is identified with the Agilent Connection Expert and tmtool. 
I used the example given in: 
http://cp.literature.agilent.com/litweb/pdf/5990-3465EN.pdf


%% Example application to generate an arbitrary waveform and download it to an Agilent Arbitrary Waveform Generator.
% Generate the arbitrary waveform in MATLAB
time = 0:0.001:1; % Defi ne time vector to contain whole number of cycles of waveform
amplitude1 = 0.2;
frequency1 = 10;
amplitude2 = 0.8;
frequency2 = 14;
amplitude3 = 0.6;
frequency3 = 18;
waveform1 = amplitude1*sin(2*pi*frequency1*time);
waveform2 = amplitude2*sin(2*pi*frequency2*time);
waveform3 = amplitude3*sin(2*pi*frequency3*time);
waveform = waveform1 + waveform2 + waveform3;
waveform = waveform + 0.3*rand(1,size(waveform,2));
waveformArray = (waveform./max(waveform))';
plot(waveformArray);
xlabel('Samples');
ylabel('Amplitude');
% Connect to the Agilent 33220. Using the IVI driver, load the arbitrary waveform and enable it.
device = icdevice('agilent33500.mdd','GPIB0::10::INSTR');
connect(device);
invoke(device.Arbitrarywaveform,'SetData',waveformArray);
invoke(device.Arbitrarywaveform,'CopyData','MATLABWFM1');
set(device.Arbitrarywaveform,'User','MATLABWFM1');
set(device.Output, 'Function', 'agilent33500OutputFunctionUser');
set(device.Output, 'Frequency', 1);
set(device.OutputVoltage, 'Amplitude', 10);
set(device.Output,'State','on')


I just change the driver name "agilent33500.mdd" and the GPIB adress is the same.
but when running an error message appear" *There is no 'Arbitrarywaveform' property for device objects.* 

when calling the invoke function

Someone have an idea

thanks  

Outcomes