Minor changes from lab pc

This commit is contained in:
Silas Labor Zizou
2025-04-08 13:29:12 +02:00
parent 8c49ec62e0
commit f93d61f5d8
5 changed files with 78 additions and 23 deletions

View File

@@ -1,44 +1,45 @@
%% DC Source
desired_voltage = 2.1;
desired_voltage = 2.8;
dcs = DC_supply("active",[1,0],"voltage",[desired_voltage, 0]);
dcs.set("voltage",[desired_voltage, 0]);
[v,i]=dcs.readVals();
%% Laser
desired_wavelength = 1310;
laser = Exfo_laser("mainframe_channel",1,"safety_mode",0,"connection_id",'10','lab_interface','gpib');
laser.setWavelength(1311);
laser.setPower(0);
laser.setWavelength(desired_wavelength);
laser.setPower(10);
laser.enableLaser();
%% Optical Attenuator
voa = OptAtten("active",[2,0,0,0],"value",[-5,0,0,0],"wavelength",[1310,1310,1310,1310]);
voa.set('value',[-5,0,0,0]);
voa.readvals();
voa = OptAtten("active",[0,0,2,0],"value",[0,0,-5,0],"wavelength",[desired_wavelength,desired_wavelength,desired_wavelength,desired_wavelength]);
voa.set('value',[0,0,3,0]);
%% Construct AWG and Scope Modules %%%%%%
fdac = 256e9;
fadc = 160e9;
Scp = ScopeKeysight("model","DSAZ634A",'autoscale',1,"fadc","GSa_160","channel",[0,0,1,0],"recordLen",4000000,"removeDC",1,"extRef",0);
Awg = AwgKeysight("model","M8199A_ILV","fdac",fdac,"scaletodac",[1,1],"skews",[0,0],"voltages",[0,0.1]);
A2S = Awg2Scope(Awg,Scp,[0,3,0,0],"waitUntilClick",0); %
Scp = ScopeKeysight("model","DSAZ634A",'autoscale',1,"fadc","GSa_160","channel",[0,0,1,0],"recordLen",4000000,"removeDC",1,"extRef",1);
Awg = AwgKeysight("model","M8199A_ILV","fdac",fdac,"scaletodac",[1,1],"skews",[0,0],"voltages",[0,0.8]);
A2S = Awg2Scope(Awg,Scp,[0,0,3,0],"waitUntilClick",0); %
%%%%% Symbol Generation %%%%%%
fsym = 56e9;
M = 4;
rcalpha = 0.05;
Pform = Pulseformer("fsym",fsym,"fdac",4*fsym,"pulse","rrc","pulselength",16,"rrcalpha",rcalpha);
rcalpha = 0.2;
Pform = Pulseformer("fsym",fsym,"fdac",4*fsym,"pulse","rrc","pulselength",16,"rrcalpha",rcalpha);
Pamsource = PAMsource(...
"fsym",fsym,"M",M,"order",17,"useprbs",0,...
"fsym",fsym,"M",M,"order",17,"useprbs",1,...
"fs_out",fdac,...
"applyclipping",0,"clipfactor",1.5,...
"applypulseform",0,"pulseformer",Pform,...
"applyclipping",0,"clipfactor",4,...
"applypulseform",1,"pulseformer",Pform,...
"randkey",1,...
"db_precode",0,"db_encode",0,...
"mrds_code",0,"mrds_blocklength",512);
tx_signal = Pamsource.process();
tx_signal.spectrum("displayname",'Tx Spectrum','fignum',10,'normalizeTo0dB',0);
A2S.process("signal2",tx_signal);
[S1,S2,S3,S4] = A2S.process("signal2",tx_signal);
S3.spectrum("displayname",'Rx Spectrum','fignum',10,'normalizeTo0dB',0);