Sfoglia il codice sorgente

oude bestanden toegevoegd voor labview en matlab

publish
Wouter Horlings 8 anni fa
parent
commit
32323781b2
63 ha cambiato i file con 1277 aggiunte e 0 eliminazioni
  1. BIN
      MOD2-files/EXP5/SubVIs_2015/AUTOSet TDS2022.vi
  2. +123
    -0
      MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Agilent 33XXX Series Readme.html
  3. +3
    -0
      MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Agilent 33XXX Series.aliases
  4. +62
    -0
      MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Agilent 33XXX Series.lvlib
  5. +76
    -0
      MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Agilent 33XXX Series.lvproj
  6. BIN
      MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Examples/Agilent 33XXX Series Generate Arbitrary Waveform.vi
  7. BIN
      MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Examples/Agilent 33XXX Series Generate Frequency Sweep - SW Triggered.vi
  8. BIN
      MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Examples/Agilent 33XXX Series Generate Frequency Sweep.vi
  9. BIN
      MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Examples/Agilent 33XXX Series Generate Modulated Waveform.vi
  10. BIN
      MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Examples/Agilent 33XXX Series Generate Standard Waveform.vi
  11. BIN
      MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Examples/Agilent 33XXX Series.bin3
  12. BIN
      MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Private/Default Instrument Setup.vi
  13. BIN
      MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Private/Scale Arbitrary Waveform.vi
  14. BIN
      MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Action-Status/Action-Status.mnu
  15. BIN
      MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Action-Status/Clear Arbitrary Waveform.vi
  16. BIN
      MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Action-Status/Enable Output.vi
  17. BIN
      MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Action-Status/Low Level/Action-Status_Low Level.mnu
  18. BIN
      MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Action-Status/Low Level/Send Software Trigger.vi
  19. BIN
      MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Close.vi
  20. BIN
      MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Configure/Configure Arbitrary Waveform.vi
  21. BIN
      MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Configure/Configure Burst.vi
  22. BIN
      MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Configure/Configure Duty Cycle.vi
  23. BIN
      MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Configure/Configure Frequency Sweep.vi
  24. BIN
      MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Configure/Configure Modulation (Amplitude).vi
  25. BIN
      MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Configure/Configure Modulation (Burst).vi
  26. BIN
      MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Configure/Configure Modulation (Frequency).vi
  27. BIN
      MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Configure/Configure Modulation (Frequency-Shift Keying).vi
  28. BIN
      MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Configure/Configure Modulation (Phase).vi
  29. BIN
      MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Configure/Configure Modulation (Pulse Width).vi
  30. BIN
      MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Configure/Configure Modulation.vi
  31. BIN
      MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Configure/Configure Output Impedance.vi
  32. BIN
      MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Configure/Configure Pulse.vi
  33. BIN
      MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Configure/Configure Ramp Symmetry.vi
  34. BIN
      MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Configure/Configure Standard Waveform.vi
  35. BIN
      MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Configure/Configure.mnu
  36. BIN
      MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Configure/Create Arbitrary Waveform.vi
  37. BIN
      MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Configure/Low Level/Configure Trigger.vi
  38. BIN
      MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Configure/Low Level/Configure_Low Level.mnu
  39. BIN
      MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Initialize.vi
  40. BIN
      MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Utility/Error Query.vi
  41. BIN
      MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Utility/Reset.vi
  42. BIN
      MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Utility/Revision Query.vi
  43. BIN
      MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Utility/Self-Test.vi
  44. BIN
      MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Utility/Utility.mnu
  45. BIN
      MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/VI Tree.vi
  46. BIN
      MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/dir.mnu
  47. BIN
      MOD2-files/EXP5/SubVIs_2015/acquire 2 channels.vi
  48. BIN
      MOD2-files/EXP5/SubVIs_2015/bodeplot_mag_phase.vi
  49. BIN
      MOD2-files/EXP5/SubVIs_2015/close scoop & funcgen.vi
  50. BIN
      MOD2-files/EXP5/SubVIs_2015/init scoop & funcgen for continuous signal.vi
  51. BIN
      MOD2-files/EXP5/SubVIs_2015/waveform_cluster2waveform.vi
  52. +336
    -0
      MOD2-files/EXP5/Transfer_Functions_Matlab/Transfer_Function_RC.m
  53. BIN
      MOD2-files/EXP5/Transfer_Functions_Matlab/Transfer_Function_RC.vi
  54. +334
    -0
      MOD2-files/EXP5/Transfer_Functions_Matlab/Transfer_Function_RLC.m
  55. BIN
      MOD2-files/EXP5/Transfer_Functions_Matlab/Transfer_Function_RLC.vi
  56. +53
    -0
      MOD2-files/EXP6/Experiment6_filter.m
  57. +44
    -0
      MOD2-files/EXP6/Experiment6_measurement.m
  58. BIN
      MOD2-files/EXP6/Experiment6_measurement.vi
  59. +51
    -0
      MOD2-files/EXP6/Experiment6_square_wave.m
  60. +136
    -0
      MOD2-files/EXP6/Experiment6_transfer.m
  61. BIN
      MOD2-files/EXP6/Experiment6_transfer.vi
  62. +59
    -0
      MOD2-files/EXP6/Experiment6_triangular_wave.m
  63. BIN
      MOD2-files/LabManual_EC2017_Hueting.pdf

BIN
MOD2-files/EXP5/SubVIs_2015/AUTOSet TDS2022.vi Vedi File


+ 123
- 0
MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Agilent 33XXX Series Readme.html Vedi File

@@ -0,0 +1,123 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Instrument Driver Readme</title>
</head>
<body>
<font face="Times New Roman" size="3">
<h2>Agilent 33XXX Series Instrument Driver Readme</h2>
<para>To rate this driver, go to the driver download page on the <a
href="http://www.ni.com/idnet">Instrument Driver Network</a>.</para>
<h4>1. Overview</h4>
<para>
Instrument Driver Technology: LabVIEW Plug and Play (project-style)
<br>
Manufacturer: Agilent Technologies
<br>
Supported Language(s): LabVIEW
<br>
Supported Model(s): 33120A, 33220A, 33250A, 33210A
<br>
Model(s) Tested: 33120A, 33220A, 33250A, 33210A
<br>
Interface(s): GPIB
<br>
Firmware Revision Tested: 7.0-2.0-1.0
<br>
<br>
Certified: Yes
<br>
NI Supported: Yes
<br>
Source Code Available: Yes
<br>
<br>
Driver Revision: 2.1.4
<br>
Original Release Date: 07/06/2005
<br>
Current Revision Date: 08/12/2013
</para>
<h4>2. Required Software</h4>
<para>Some software components need to be installed before using this
instrument driver. The minimum versions of these components are listed
below, and can be downloaded from the Download Site.
<br>
<br>
VISA 3.0 or later
<br>
<br>
<br>
For more details, refer to the <i>LabVIEW Help</i> under <i>Help
&raquo; VI, Function, &amp; How-To Help</i>.</para>
<h4>3. Known Issues</h4>
<para>
A delay has been included in Create Arbitrary Waveform in order to prevent Query Interrupted (-410) instrument error from
occurring. The error occurs when error query is called from Create Arbitrary Waveform when a small transfer
(8-16 points) is sent over ther serial interface.
<br>
<br>
A delay occurs on the instrument after writing multiple arbitrary waveforms to a 33220A. The instrument has a limited amount of flash memory, and
eventually must clean up the memory, this is when the delay occurs.
</para>
<para><br><br>
To report issues or provide feedback about this instrument driver,
please send an email to <a href="mailto:instrument.drivers@ni.com">instrument.drivers@ni.com</a>.</para></font><font
face="Times New Roman" size="3">
<br>
<font face="Times New Roman" size="3"><para></para>
<h4>4. Revision History</h4>
<para>The latest version of this and other LabVIEW and LabWindows/CVI
instrument drivers can be downloaded at the <a
href="http://www.ni.com/idnet">Instrument Driver Network</a>.<br>
<br>
Revision 2.0, 07/6/2005
<br>
Modified by: Matt Gibson, Rob Hammond, Austin, TX.
<br>
Original release for LabVIEW 8.0 created from ag33xxx driver (v.1.0.1) in LV 7.0
<br><br>
Revision 2.0.1, 10/4/2006
<br>
Modified by Sandy Hermanwan, Austin, TX.
<br>
Documentation updates.
<br><br>
Revision 2.0.2, 01/21/2008
<br>
Modified by Berk Ozdogan, Austin, TX.
<br>
Configure Trigger VI is modified so that trigger delay is only passed in for 33250 models. Overall implementation of the VI is
also revised to better comply with instrument driver standards.
<br><br>
Revision 2.1.0, 10/31/2008
<br>
Modified by Fan Chen, Shanghai, China.
<br>
Add support for Agilent 33210 model. Update the driver template.
Add Configure Burst.vi to support 33210 model's burst function.
<br><br>
Revision 2.1.1, 1/26/2009
<br>
Modified by Nathan T., Austin, Texas.
<br>
Changed the format specifier in Configure Standard Waveform.vi Frequency Command string constant from "%g" to "%f" to correct a problem with frequency rounding.
<br><br>
Revision 2.1.2, 3/10/2010
<br>
Modified by Nathan T., Austin, Texas.
<br>
Fixed the scaling calculation in Scale Arbitrary Waveform.vi by negating the max value and using that for the calculations instead of the min value.
<br><br>
Revision 2.1.3, 9/24/2012<br>
Modified by JP (NI), Wim T. (Phillps)<br>
Modified Scale Arbitrary Waveform.vi to use real min instead of using inverted max value.
<br><br>
Revision 2.1.4, 8/12/2013
<br>
Modified by Stephen Schwahn, Austin, Texas.
<br>
Added the "BURS:STAT OFF" command in the Configure Burst VI to allow the burst to be disabled.
</font></para></font>
</body>
</html>

+ 3
- 0
MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Agilent 33XXX Series.aliases Vedi File

@@ -0,0 +1,3 @@
[My Computer]
My Computer = "130.89.15.22"


+ 62
- 0
MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Agilent 33XXX Series.lvlib Vedi File

@@ -0,0 +1,62 @@
<?xml version='1.0' encoding='UTF-8'?>
<Library LVVersion="11008008">
<Property Name="Instrument Driver" Type="Str">True</Property>
<Property Name="NI.Lib.DefaultMenu" Type="Str">dir.mnu</Property>
<Property Name="NI.Lib.Description" Type="Str">This driver controls the Agilent 33XXX Series function generators. For additional information about this driver, please refer to the Agilent 33XXX Series Readme.html</Property>
<Property Name="NI.Lib.HelpPath" Type="Str"></Property>
<Property Name="NI.Lib.Icon" Type="Bin">%1#!#!!!!!)!"1!&amp;!!!-!%!!!@````]!!!!"!!%!!!)U!!!*Q(C=\&gt;3^=&gt;N!%)&lt;B4RY&amp;3NG"BSVM#YC:81P&lt;!F/&amp;&gt;!H&lt;!NS"U)##42WC"&lt;9!PTCM;%ET*B.JRJY2I*8!\`Y?(C")`8C1\L8=/AZ8$^K8L3Y8BT@HS]87O^@\^K5O`N3F[[PRSV`(([[P@]/PK]&gt;8_V@\`^V_Y[$0Y]V/HXR)&gt;VV+*2755^;`X:,E3:\E3:\E32\E12\E12\E1?\E4O\E4O\E4G\E2G\E2G\E2NZ0=J',8/4M3L*YMF!S;4*"UBG+EF_**`%EHM4$2S7?R*.Y%E`CI9M34_**0)EH]4"-C3@R**\%EXC9KEOSH_2Y%A`4+`!%HM!4?!)03SLQ")"AM7$C9")9#BK$C]!4?!)0FQI]A3@Q"*\!1\-#4_!*0)%H]$#E\UJUT8K3YW%;/2\(YXA=D_.B;DE?R_.Y()`D94EZ(M@D)*Q&amp;H=EBS"HE&gt;(!_/"\(QR]Z(M@D?"S0Y['JXS(P/\.KVJ-=D_%R0)&lt;(]"A?JJ$B-4S'R`!9(K;6Y4%]BM@Q'"[7EO%R0)&lt;(A"C,MLS-S9S"2C=D-$T]^+@&amp;_FW+,L&amp;_VL`G^K#K(E$6A[6[9&amp;10AOI'KW[=[I;I.FKVA;K.58VBV2&gt;2!65,KS:5&gt;&gt;3:XT-V53.VIIZ5IQ:K4_X7I2`=]8Q_;ZZH4&gt;/E=2RV/JVU0"\67N-Q$.LP^^LN&gt;J?XV8@/\&lt;B\?3]^=DX.P^JYX^J40P]9B^:_]HH.0\/W^^+`]'\5.SWP8P0MU7]U88+?!!!!!!</Property>
<Property Name="NI.Lib.Version" Type="Str">2.1.4.0</Property>
<Property Name="NI.SortType" Type="Int">3</Property>
<Item Name="Public" Type="Folder">
<Property Name="NI.LibItem.Scope" Type="Int">1</Property>
<Item Name="Action-Status" Type="Folder">
<Item Name="Low Level" Type="Folder">
<Item Name="Action-Status_Low Level.mnu" Type="Document" URL="/&lt;instrlib&gt;/Agilent 33XXX Series/Public/Action-Status/Low Level/Action-Status_Low Level.mnu"/>
<Item Name="Send Software Trigger.vi" Type="VI" URL="/&lt;instrlib&gt;/Agilent 33XXX Series/Public/Action-Status/Low Level/Send Software Trigger.vi"/>
</Item>
<Item Name="Action-Status.mnu" Type="Document" URL="/&lt;instrlib&gt;/Agilent 33XXX Series/Public/Action-Status/Action-Status.mnu"/>
<Item Name="Clear Arbitrary Waveform.vi" Type="VI" URL="/&lt;instrlib&gt;/Agilent 33XXX Series/Public/Action-Status/Clear Arbitrary Waveform.vi"/>
<Item Name="Enable Output.vi" Type="VI" URL="../Public/Action-Status/Enable Output.vi"/>
</Item>
<Item Name="Configure" Type="Folder">
<Item Name="Low Level" Type="Folder">
<Item Name="Configure_Low Level.mnu" Type="Document" URL="/&lt;instrlib&gt;/Agilent 33XXX Series/Public/Configure/Low Level/Configure_Low Level.mnu"/>
<Item Name="Configure Trigger.vi" Type="VI" URL="/&lt;instrlib&gt;/Agilent 33XXX Series/Public/Configure/Low Level/Configure Trigger.vi"/>
</Item>
<Item Name="Configure.mnu" Type="Document" URL="/&lt;instrlib&gt;/Agilent 33XXX Series/Public/Configure/Configure.mnu"/>
<Item Name="Configure Arbitrary Waveform.vi" Type="VI" URL="/&lt;instrlib&gt;/Agilent 33XXX Series/Public/Configure/Configure Arbitrary Waveform.vi"/>
<Item Name="Configure Burst.vi" Type="VI" URL="/&lt;instrlib&gt;/Agilent 33XXX Series/Public/Configure/Configure Burst.vi"/>
<Item Name="Configure Duty Cycle.vi" Type="VI" URL="/&lt;instrlib&gt;/Agilent 33XXX Series/Public/Configure/Configure Duty Cycle.vi"/>
<Item Name="Configure Frequency Sweep.vi" Type="VI" URL="/&lt;instrlib&gt;/Agilent 33XXX Series/Public/Configure/Configure Frequency Sweep.vi"/>
<Item Name="Configure Modulation (Amplitude).vi" Type="VI" URL="/&lt;instrlib&gt;/Agilent 33XXX Series/Public/Configure/Configure Modulation (Amplitude).vi"/>
<Item Name="Configure Modulation (Burst).vi" Type="VI" URL="/&lt;instrlib&gt;/Agilent 33XXX Series/Public/Configure/Configure Modulation (Burst).vi"/>
<Item Name="Configure Modulation (Frequency).vi" Type="VI" URL="/&lt;instrlib&gt;/Agilent 33XXX Series/Public/Configure/Configure Modulation (Frequency).vi"/>
<Item Name="Configure Modulation (Frequency-Shift Keying).vi" Type="VI" URL="/&lt;instrlib&gt;/Agilent 33XXX Series/Public/Configure/Configure Modulation (Frequency-Shift Keying).vi"/>
<Item Name="Configure Modulation (Phase).vi" Type="VI" URL="/&lt;instrlib&gt;/Agilent 33XXX Series/Public/Configure/Configure Modulation (Phase).vi"/>
<Item Name="Configure Modulation (Pulse Width).vi" Type="VI" URL="/&lt;instrlib&gt;/Agilent 33XXX Series/Public/Configure/Configure Modulation (Pulse Width).vi"/>
<Item Name="Configure Modulation.vi" Type="VI" URL="/&lt;instrlib&gt;/Agilent 33XXX Series/Public/Configure/Configure Modulation.vi"/>
<Item Name="Configure Output Impedance.vi" Type="VI" URL="../Public/Configure/Configure Output Impedance.vi"/>
<Item Name="Configure Pulse.vi" Type="VI" URL="/&lt;instrlib&gt;/Agilent 33XXX Series/Public/Configure/Configure Pulse.vi"/>
<Item Name="Configure Ramp Symmetry.vi" Type="VI" URL="/&lt;instrlib&gt;/Agilent 33XXX Series/Public/Configure/Configure Ramp Symmetry.vi"/>
<Item Name="Configure Standard Waveform.vi" Type="VI" URL="../Public/Configure/Configure Standard Waveform.vi"/>
<Item Name="Create Arbitrary Waveform.vi" Type="VI" URL="/&lt;instrlib&gt;/Agilent 33XXX Series/Public/Configure/Create Arbitrary Waveform.vi"/>
</Item>
<Item Name="Utility" Type="Folder">
<Item Name="Utility.mnu" Type="Document" URL="/&lt;instrlib&gt;/Agilent 33XXX Series/Public/Utility/Utility.mnu"/>
<Item Name="Error Query.vi" Type="VI" URL="../Public/Utility/Error Query.vi"/>
<Item Name="Reset.vi" Type="VI" URL="../Public/Utility/Reset.vi"/>
<Item Name="Revision Query.vi" Type="VI" URL="/&lt;instrlib&gt;/Agilent 33XXX Series/Public/Utility/Revision Query.vi"/>
<Item Name="Self-Test.vi" Type="VI" URL="/&lt;instrlib&gt;/Agilent 33XXX Series/Public/Utility/Self-Test.vi"/>
</Item>
<Item Name="dir.mnu" Type="Document" URL="/&lt;instrlib&gt;/Agilent 33XXX Series/Public/dir.mnu"/>
<Item Name="Close.vi" Type="VI" URL="../Public/Close.vi"/>
<Item Name="Initialize.vi" Type="VI" URL="../Public/Initialize.vi"/>
<Item Name="VI Tree.vi" Type="VI" URL="/&lt;instrlib&gt;/Agilent 33XXX Series/Public/VI Tree.vi"/>
</Item>
<Item Name="Private" Type="Folder">
<Property Name="NI.LibItem.Scope" Type="Int">2</Property>
<Item Name="Default Instrument Setup.vi" Type="VI" URL="../Private/Default Instrument Setup.vi"/>
<Item Name="Scale Arbitrary Waveform.vi" Type="VI" URL="/&lt;instrlib&gt;/Agilent 33XXX Series/Private/Scale Arbitrary Waveform.vi"/>
</Item>
<Item Name="Agilent 33XXX Series Readme.html" Type="Document" URL="/&lt;instrlib&gt;/Agilent 33XXX Series/Agilent 33XXX Series Readme.html"/>
</Library>

+ 76
- 0
MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Agilent 33XXX Series.lvproj Vedi File

@@ -0,0 +1,76 @@
<?xml version='1.0' encoding='UTF-8'?>
<Project Type="Project" LVVersion="10008000">
<Item Name="My Computer" Type="My Computer">
<Property Name="CCSymbols" Type="Str">OS,Win;CPU,x86;OS_hidden,Win;CPU_hidden,x86</Property>
<Property Name="NI.SortType" Type="Int">3</Property>
<Property Name="specify.custom.address" Type="Bool">false</Property>
<Item Name="Examples" Type="Folder">
<Item Name="Agilent 33XXX Series.bin3" Type="Document" URL="/&lt;instrlib&gt;/Agilent 33XXX Series/Examples/Agilent 33XXX Series.bin3"/>
<Item Name="Agilent 33XXX Series Generate Arbitrary Waveform.vi" Type="VI" URL="/&lt;instrlib&gt;/Agilent 33XXX Series/Examples/Agilent 33XXX Series Generate Arbitrary Waveform.vi"/>
<Item Name="Agilent 33XXX Series Generate Frequency Sweep - SW Triggered.vi" Type="VI" URL="/&lt;instrlib&gt;/Agilent 33XXX Series/Examples/Agilent 33XXX Series Generate Frequency Sweep - SW Triggered.vi"/>
<Item Name="Agilent 33XXX Series Generate Frequency Sweep.vi" Type="VI" URL="/&lt;instrlib&gt;/Agilent 33XXX Series/Examples/Agilent 33XXX Series Generate Frequency Sweep.vi"/>
<Item Name="Agilent 33XXX Series Generate Modulated Waveform.vi" Type="VI" URL="/&lt;instrlib&gt;/Agilent 33XXX Series/Examples/Agilent 33XXX Series Generate Modulated Waveform.vi"/>
<Item Name="Agilent 33XXX Series Generate Standard Waveform.vi" Type="VI" URL="/&lt;instrlib&gt;/Agilent 33XXX Series/Examples/Agilent 33XXX Series Generate Standard Waveform.vi"/>
</Item>
<Item Name="Agilent 33XXX Series.lvlib" Type="Library" URL="/&lt;instrlib&gt;/Agilent 33XXX Series/Agilent 33XXX Series.lvlib"/>
<Item Name="Dependencies" Type="Dependencies">
<Item Name="vi.lib" Type="Folder">
<Item Name="subSigGeneratorBlock.vi" Type="VI" URL="/&lt;vilib&gt;/express/express input/SimulateSignalBlock.llb/subSigGeneratorBlock.vi"/>
<Item Name="Nearest Frequency for Block.vi" Type="VI" URL="/&lt;vilib&gt;/express/express input/SimulateSignalConfig.llb/Nearest Frequency for Block.vi"/>
<Item Name="Nearest Freq in Int Cycles.vi" Type="VI" URL="/&lt;vilib&gt;/express/express input/SimulateSignalConfig.llb/Nearest Freq in Int Cycles.vi"/>
<Item Name="ex_CorrectErrorChain.vi" Type="VI" URL="/&lt;vilib&gt;/express/express shared/ex_CorrectErrorChain.vi"/>
<Item Name="ex_GenAddAttribs.vi" Type="VI" URL="/&lt;vilib&gt;/express/express input/SimulateSignalBlock.llb/ex_GenAddAttribs.vi"/>
<Item Name="ex_WaveformAttribsPlus.ctl" Type="VI" URL="/&lt;vilib&gt;/express/express shared/transition.llb/ex_WaveformAttribsPlus.ctl"/>
<Item Name="Waveform Array To Dynamic.vi" Type="VI" URL="/&lt;vilib&gt;/express/express shared/transition.llb/Waveform Array To Dynamic.vi"/>
<Item Name="ex_SetExpAttribsAndT0.vi" Type="VI" URL="/&lt;vilib&gt;/express/express shared/transition.llb/ex_SetExpAttribsAndT0.vi"/>
<Item Name="ex_WaveformAttribs.ctl" Type="VI" URL="/&lt;vilib&gt;/express/express shared/transition.llb/ex_WaveformAttribs.ctl"/>
<Item Name="ex_SetAllExpressAttribs.vi" Type="VI" URL="/&lt;vilib&gt;/express/express shared/transition.llb/ex_SetAllExpressAttribs.vi"/>
<Item Name="Timestamp Add.vi" Type="VI" URL="/&lt;vilib&gt;/Waveform/TSOps.llb/Timestamp Add.vi"/>
<Item Name="I128 Timestamp.ctl" Type="VI" URL="/&lt;vilib&gt;/Waveform/TSOps.llb/I128 Timestamp.ctl"/>
<Item Name="DU64_U32AddWithOverflow.vi" Type="VI" URL="/&lt;vilib&gt;/Waveform/TSOps.llb/DU64_U32AddWithOverflow.vi"/>
<Item Name="Timestamp Subtract.vi" Type="VI" URL="/&lt;vilib&gt;/Waveform/TSOps.llb/Timestamp Subtract.vi"/>
<Item Name="DU64_U32SubtractWithBorrow.vi" Type="VI" URL="/&lt;vilib&gt;/Waveform/TSOps.llb/DU64_U32SubtractWithBorrow.vi"/>
<Item Name="subInternalTiming.vi" Type="VI" URL="/&lt;vilib&gt;/express/express input/SimulateSignalBlock.llb/subInternalTiming.vi"/>
<Item Name="NI_MABase.lvlib" Type="Library" URL="/&lt;vilib&gt;/measure/NI_MABase.lvlib"/>
<Item Name="NI_AALBase.lvlib" Type="Library" URL="/&lt;vilib&gt;/Analysis/NI_AALBase.lvlib"/>
<Item Name="subShouldUseDefSigName.vi" Type="VI" URL="/&lt;vilib&gt;/express/express input/SimulateSignalBlock.llb/subShouldUseDefSigName.vi"/>
<Item Name="Clear Errors.vi" Type="VI" URL="/&lt;vilib&gt;/Utility/error.llb/Clear Errors.vi"/>
<Item Name="sub2ShouldUseDefSigName.vi" Type="VI" URL="/&lt;vilib&gt;/express/express input/SimulateSignalBlock.llb/sub2ShouldUseDefSigName.vi"/>
<Item Name="subGetSignalName.vi" Type="VI" URL="/&lt;vilib&gt;/express/express input/SimulateSignalBlock.llb/subGetSignalName.vi"/>
<Item Name="Dynamic To Waveform Array.vi" Type="VI" URL="/&lt;vilib&gt;/express/express shared/transition.llb/Dynamic To Waveform Array.vi"/>
<Item Name="Error Cluster From Error Code.vi" Type="VI" URL="/&lt;vilib&gt;/Utility/error.llb/Error Cluster From Error Code.vi"/>
<Item Name="Trim Whitespace.vi" Type="VI" URL="/&lt;vilib&gt;/Utility/error.llb/Trim Whitespace.vi"/>
<Item Name="whitespace.ctl" Type="VI" URL="/&lt;vilib&gt;/Utility/error.llb/whitespace.ctl"/>
<Item Name="Simple Error Handler.vi" Type="VI" URL="/&lt;vilib&gt;/Utility/error.llb/Simple Error Handler.vi"/>
<Item Name="DialogType.ctl" Type="VI" URL="/&lt;vilib&gt;/Utility/error.llb/DialogType.ctl"/>
<Item Name="General Error Handler.vi" Type="VI" URL="/&lt;vilib&gt;/Utility/error.llb/General Error Handler.vi"/>
<Item Name="DialogTypeEnum.ctl" Type="VI" URL="/&lt;vilib&gt;/Utility/error.llb/DialogTypeEnum.ctl"/>
<Item Name="General Error Handler CORE.vi" Type="VI" URL="/&lt;vilib&gt;/Utility/error.llb/General Error Handler CORE.vi"/>
<Item Name="Check Special Tags.vi" Type="VI" URL="/&lt;vilib&gt;/Utility/error.llb/Check Special Tags.vi"/>
<Item Name="TagReturnType.ctl" Type="VI" URL="/&lt;vilib&gt;/Utility/error.llb/TagReturnType.ctl"/>
<Item Name="Set String Value.vi" Type="VI" URL="/&lt;vilib&gt;/Utility/error.llb/Set String Value.vi"/>
<Item Name="GetRTHostConnectedProp.vi" Type="VI" URL="/&lt;vilib&gt;/Utility/error.llb/GetRTHostConnectedProp.vi"/>
<Item Name="Error Code Database.vi" Type="VI" URL="/&lt;vilib&gt;/Utility/error.llb/Error Code Database.vi"/>
<Item Name="Format Message String.vi" Type="VI" URL="/&lt;vilib&gt;/Utility/error.llb/Format Message String.vi"/>
<Item Name="Find Tag.vi" Type="VI" URL="/&lt;vilib&gt;/Utility/error.llb/Find Tag.vi"/>
<Item Name="Search and Replace Pattern.vi" Type="VI" URL="/&lt;vilib&gt;/Utility/error.llb/Search and Replace Pattern.vi"/>
<Item Name="Set Bold Text.vi" Type="VI" URL="/&lt;vilib&gt;/Utility/error.llb/Set Bold Text.vi"/>
<Item Name="Details Display Dialog.vi" Type="VI" URL="/&lt;vilib&gt;/Utility/error.llb/Details Display Dialog.vi"/>
<Item Name="ErrWarn.ctl" Type="VI" URL="/&lt;vilib&gt;/Utility/error.llb/ErrWarn.ctl"/>
<Item Name="eventvkey.ctl" Type="VI" URL="/&lt;vilib&gt;/event_ctls.llb/eventvkey.ctl"/>
<Item Name="Not Found Dialog.vi" Type="VI" URL="/&lt;vilib&gt;/Utility/error.llb/Not Found Dialog.vi"/>
<Item Name="Three Button Dialog.vi" Type="VI" URL="/&lt;vilib&gt;/Utility/error.llb/Three Button Dialog.vi"/>
<Item Name="Three Button Dialog CORE.vi" Type="VI" URL="/&lt;vilib&gt;/Utility/error.llb/Three Button Dialog CORE.vi"/>
<Item Name="Longest Line Length in Pixels.vi" Type="VI" URL="/&lt;vilib&gt;/Utility/error.llb/Longest Line Length in Pixels.vi"/>
<Item Name="Convert property node font to graphics font.vi" Type="VI" URL="/&lt;vilib&gt;/Utility/error.llb/Convert property node font to graphics font.vi"/>
<Item Name="Get Text Rect.vi" Type="VI" URL="/&lt;vilib&gt;/picture/picture.llb/Get Text Rect.vi"/>
<Item Name="Get String Text Bounds.vi" Type="VI" URL="/&lt;vilib&gt;/Utility/error.llb/Get String Text Bounds.vi"/>
<Item Name="LVBoundsTypeDef.ctl" Type="VI" URL="/&lt;vilib&gt;/Utility/miscctls.llb/LVBoundsTypeDef.ctl"/>
<Item Name="BuildHelpPath.vi" Type="VI" URL="/&lt;vilib&gt;/Utility/error.llb/BuildHelpPath.vi"/>
<Item Name="GetHelpDir.vi" Type="VI" URL="/&lt;vilib&gt;/Utility/error.llb/GetHelpDir.vi"/>
</Item>
<Item Name="lvanlys.dll" Type="Document" URL="../../../resource/lvanlys.dll"/>
</Item>
<Item Name="Build Specifications" Type="Build"/>
</Item>
</Project>

BIN
MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Examples/Agilent 33XXX Series Generate Arbitrary Waveform.vi Vedi File


BIN
MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Examples/Agilent 33XXX Series Generate Frequency Sweep - SW Triggered.vi Vedi File


BIN
MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Examples/Agilent 33XXX Series Generate Frequency Sweep.vi Vedi File


BIN
MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Examples/Agilent 33XXX Series Generate Modulated Waveform.vi Vedi File


BIN
MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Examples/Agilent 33XXX Series Generate Standard Waveform.vi Vedi File


BIN
MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Examples/Agilent 33XXX Series.bin3 Vedi File


BIN
MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Private/Default Instrument Setup.vi Vedi File


BIN
MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Private/Scale Arbitrary Waveform.vi Vedi File


BIN
MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Action-Status/Action-Status.mnu Vedi File


BIN
MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Action-Status/Clear Arbitrary Waveform.vi Vedi File


BIN
MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Action-Status/Enable Output.vi Vedi File


BIN
MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Action-Status/Low Level/Action-Status_Low Level.mnu Vedi File


BIN
MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Action-Status/Low Level/Send Software Trigger.vi Vedi File


BIN
MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Close.vi Vedi File


BIN
MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Configure/Configure Arbitrary Waveform.vi Vedi File


BIN
MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Configure/Configure Burst.vi Vedi File


BIN
MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Configure/Configure Duty Cycle.vi Vedi File


BIN
MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Configure/Configure Frequency Sweep.vi Vedi File


BIN
MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Configure/Configure Modulation (Amplitude).vi Vedi File


BIN
MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Configure/Configure Modulation (Burst).vi Vedi File


BIN
MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Configure/Configure Modulation (Frequency).vi Vedi File


BIN
MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Configure/Configure Modulation (Frequency-Shift Keying).vi Vedi File


BIN
MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Configure/Configure Modulation (Phase).vi Vedi File


BIN
MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Configure/Configure Modulation (Pulse Width).vi Vedi File


BIN
MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Configure/Configure Modulation.vi Vedi File


BIN
MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Configure/Configure Output Impedance.vi Vedi File


BIN
MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Configure/Configure Pulse.vi Vedi File


BIN
MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Configure/Configure Ramp Symmetry.vi Vedi File


BIN
MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Configure/Configure Standard Waveform.vi Vedi File


BIN
MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Configure/Configure.mnu Vedi File


BIN
MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Configure/Create Arbitrary Waveform.vi Vedi File


BIN
MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Configure/Low Level/Configure Trigger.vi Vedi File


BIN
MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Configure/Low Level/Configure_Low Level.mnu Vedi File


BIN
MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Initialize.vi Vedi File


BIN
MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Utility/Error Query.vi Vedi File


BIN
MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Utility/Reset.vi Vedi File


BIN
MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Utility/Revision Query.vi Vedi File


BIN
MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Utility/Self-Test.vi Vedi File


BIN
MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/Utility/Utility.mnu Vedi File


BIN
MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/VI Tree.vi Vedi File


BIN
MOD2-files/EXP5/SubVIs_2015/Agilent 33XXX Series/Public/dir.mnu Vedi File


BIN
MOD2-files/EXP5/SubVIs_2015/acquire 2 channels.vi Vedi File


BIN
MOD2-files/EXP5/SubVIs_2015/bodeplot_mag_phase.vi Vedi File


BIN
MOD2-files/EXP5/SubVIs_2015/close scoop & funcgen.vi Vedi File


BIN
MOD2-files/EXP5/SubVIs_2015/init scoop & funcgen for continuous signal.vi Vedi File


BIN
MOD2-files/EXP5/SubVIs_2015/waveform_cluster2waveform.vi Vedi File


+ 336
- 0
MOD2-files/EXP5/Transfer_Functions_Matlab/Transfer_Function_RC.m Vedi File

@@ -0,0 +1,336 @@
% clear;
% clc;

fprintf('Bode diagram of the RC-circuit\n\n');
fprintf('Figure 1: Bode diagram theory+asymptote + average measurement\n')
fprintf('Figure 2: Bode diagram average measurement+SD + theory\n');
fprintf('Figure 3: Bode diagram average measurement+SD\n\n');
fprintf('N.B. SD=0 is not displayed in the figures!\n\n');

% fprintf('\nWatch out! This script searches the file in "D:\"\n\n');
%
% f_name=input('Filename: ','s');
% f_name1=sprintf('%s%s',f_name,'_theorie');
% f_name2=sprintf('%s%s',f_name,'_meting');
%
% wd=cd;
% cd 'D:\'
%
% [th]=dlmread(f_name1,' ',0,0);
% [met]=dlmread(f_name2,' ',0,0);
%
% cd(wd);



f_th=th(1,:);
amp_th=th(2,:);
fase_th=th(3,:);
asym=th(4,:);
if mean(met(1,:))==0;
nr_met=0;
end;

if mean(met(1,:))~=0;
size_met=size(met);
nr_met=(size_met(1)-1)/2;
nr_punt=size_met(2);
f_m=met(1,:);
for i=1:nr_met;
for j=1:nr_punt;
amp_met(i,j)=met(i+1,j);
fase_met(i,j)=met(i+1+nr_met,j);
end;
end;
if nr_met~=1;
for i=1:nr_punt;
av_amp(i)=mean(amp_met(:,i));
av_log_amp(i)=20*log10(av_amp(i));
av_fase(i)=mean(fase_met(:,i));
end;
sd_amp=std(amp_met,0,1);
for i=1:nr_punt;
if sd_amp(i)==0;
sd_log_amp(i)=0;
elseif av_amp(i)==1;
av_amp(i)=1.0001;
else
sd_log_amp(i)=2/log(av_amp(i))*sd_amp(i);
end;
end;
sd_fase=std(fase_met,0,1);
else
av_log_amp=20*log10(amp_met);
av_fase=fase_met;
sd_log_amp=zeros(1,nr_punt);
sd_fase=zeros(1,nr_punt);
end;
end;

figure(1);
set(clf,'PaperType','A4');
set(clf,'Color',[1,1,1]);
%set(clf,'PaperPosition',[1.13386 3.97146 5.5 4.125]);
subplot(2,1,1);
if mean(met(1,:))~=0;
graf=semilogx(f_th,amp_th,'r',f_th,asym,'g',f_m,av_log_amp,'.-b','LineWidth',1);
legend([graf],'theory','asymp.','measurement',3);
else
graf=semilogx(f_th,amp_th,'r',f_th,asym,'g','LineWidth',1);
legend([graf],'theory','asymp.',3);
end;
ylabel('Amplitude [dB]','Fontsize',10)

% grid bepaling
startf=floor(log10(f_th(1)));
sizef=size(f_th);
endf=ceil(log10(f_th(sizef(2))));
xf(1)=10^startf;
i=startf+1;
count=2;
while i<=endf;
xf(count)=10^(i);
count=count+1;
i=i+1;
end;
set(gca, 'XTick',xf,'Fontsize',9);

if mean(met(1,:))~=0;
min_amp_th=floor(min(amp_th));
min_amp_met=floor(min(av_log_amp-abs(sd_log_amp)));
min_amp=min(min_amp_th,min_amp_met);
max_amp_th=ceil(max(amp_th));
max_amp_met=ceil(max(av_log_amp+abs(sd_log_amp)));
max_amp=max(max_amp_th,max_amp_met)+2;
else
min_amp=floor(min(amp_th));
max_amp=ceil(max(amp_th))+2;
end;
axis([10^startf,10^endf,min_amp,max_amp]);
grid on;
title('Bode diagram RC-circuit','Fontsize',10,'Fontweight','bold');

subplot(2,1,2);
if mean(met(1,:))~=0;
graf=semilogx(f_th,fase_th,'r',f_m,av_fase,'.-b','LineWidth',1);
legend([graf],'theory','measurement',3);
else
graf=semilogx(f_th,fase_th,'LineWidth',1);
legend([graf],'theory',3);
end;
xlabel('Frequency [Hz]','Fontsize',10);
ylabel('Phase [rad]','Fontsize',10);
set(gca, 'XTick',xf,'Fontsize',9);

if mean(met(1,:))~=0;
min_fase_th=floor(min(fase_th));
min_fase_met=floor(min(av_fase-abs(sd_fase)));
min_fase=min(min_fase_th,min_fase_met);
max_fase_th=ceil(max(fase_th));
max_fase_met=ceil(max(av_fase+abs(sd_fase)));
max_fase=max(max_fase_th,max_fase_met);
else
min_fase=floor(min(fase_th));
max_fase=ceil(max(fase_th));
end;
axis([10^startf,10^endf,min_fase,max_fase]);
grid on;

if nr_met~=0;
figure(2);
set(clf,'PaperType','A4');
set(clf,'Color',[1,1,1]);
% set(clf,'PaperPosition',[1.13386 3.97146 5.5 4.125]);
subplot(2,1,1);
graf=semilogx(f_m,av_log_amp,'.-b',f_th,amp_th,'-r','LineWidth',1);
legend([graf],'measurement','theory',3);
hold on;
width_sd=(log10(f_m(2))-log10(f_m(1)))/3;
for i=1:nr_punt;
if sd_log_amp(i)~=0;
x=[f_m(i),f_m(i)];
y=[av_log_amp(i)+sd_log_amp(i),av_log_amp(i)-sd_log_amp(i)];
xl1=[10^(log(f_m(i))/log(10)-width_sd),10^(log(f_m(i))/log(10)+width_sd)];
yl1=[av_log_amp(i)+sd_log_amp(i),av_log_amp(i)+sd_log_amp(i)];
yl2=[av_log_amp(i)-sd_log_amp(i),av_log_amp(i)-sd_log_amp(i)];
plot(x,y,'-b');
plot(xl1,yl1,'-b');
plot(xl1,yl2,'-b');
end;
end;
hold off;
ylabel('Amplitude [dB]','Fontsize',10);

% grid bepaling
startfm=floor(log10(f_m(1)));
sizefm=size(f_m);
endfm=ceil(log10(f_m(sizefm(2))));
% xfm(1)=10^startfm;
xfm(1)=f_m(1);
i=startfm+1;
countm=2;
flag=0;
while flag~=1;
if xfm(countm-1)<f_m(nr_punt);
xfm(countm)=10^(i);
countm=countm+1;
i=i+1;
else flag=1;
end;
end;
xfm(countm-1)=f_m(nr_punt);
% set(gca,'XTick',xfm,'Fontsize',9);
fmin_th=f_th(1);
count_min=1;
while fmin_th<f_m(1);
count_min=count_min+1;
fmin_th=f_th(count_min);
end;

size_fth=size(f_th);
size_fm=size(f_m);
fmax_th=f_th(size_fth(2));
count_max=size_fth(2);
while fmax_th>f_m(size_fm(2));
count_max=count_max-1;
fmax_th=f_th(count_max);
end;

amp_th2=amp_th(count_min:count_max);
min_amp_met=floor(min(av_log_amp-abs(sd_log_amp)));
min_amp_th2=floor(min(amp_th2));
max_amp_met=ceil(max(av_log_amp+abs(sd_log_amp)));
max_amp_th2=ceil(max(amp_th2));
min_amp_met2=floor(min(min_amp_met,min_amp_th2))-2;
max_amp_met2=ceil(max(max_amp_met,max_amp_th2))+2;

set(gca,'Fontsize',9);
axis([xfm(1),xfm(countm-1),min_amp_met2,max_amp_met2]);
grid on;
title('Bode diagram RC-circuit','Fontsize',10,'Fontweight','bold');

subplot(2,1,2);
graf=semilogx(f_m,av_fase,'.-b',f_th,fase_th,'-r','LineWidth',1);
legend([graf],'measurement','theory',3);
hold on;
width_sd=(log10(f_m(2))-log10(f_m(1)))/3;
for i=1:nr_punt;
if sd_fase(i)~=0;
x=[f_m(i),f_m(i)];
y=[av_fase(i)+sd_fase(i),av_fase(i)-sd_fase(i)];
xl1=[10^(log10(f_m(i))-width_sd),10^(log10(f_m(i))+width_sd)];
yl1=[av_fase(i)+sd_fase(i),av_fase(i)+sd_fase(i)];
yl2=[av_fase(i)-sd_fase(i),av_fase(i)-sd_fase(i)];
plot(x,y,'-b');
plot(xl1,yl1,'-b');
plot(xl1,yl2,'-b');
end;
end;
hold off;
xlabel('Frequency [Hz]','Fontsize',10);
ylabel('Phase [rad]','Fontsize',10);
% set(gca, 'XTick',xfm,'Fontsize',9);
min_fase_met=floor(min(av_fase-abs(sd_fase)));
max_fase_met=ceil(max(av_fase+abs(sd_fase)));
fase_th2=fase_th(count_min:count_max);
min_fase_th2=floor(min(fase_th2));
max_fase_th2=ceil(max(fase_th2));
min_fase_met2=floor(min(min_fase_met,min_fase_th2))-1;
max_fase_met2=ceil(max(max_fase_met,max_fase_th2));
set(gca,'Fontsize',9);
axis([f_m(1),f_m(nr_punt),min_fase_met2,max_fase_met2]);
grid on;
end;

if nr_met~=0;
figure(3);
set(clf,'PaperType','A4');
set(clf,'Color',[1,1,1]);
% set(clf,'PaperPosition',[1.13386 3.97146 5.5 4.125]);
subplot(2,1,1);
graf=semilogx(f_m,av_log_amp,'.-b','LineWidth',1);
% legend([graf],'meting',3);
hold on;
width_sd=(log10(f_m(2))-log10(f_m(1)))/3;
for i=1:nr_punt;
if sd_log_amp(i)~=0;
x=[f_m(i),f_m(i)];
y=[av_log_amp(i)+sd_log_amp(i),av_log_amp(i)-sd_log_amp(i)];
xl1=[10^(log(f_m(i))/log(10)-width_sd),10^(log(f_m(i))/log(10)+width_sd)];
yl1=[av_log_amp(i)+sd_log_amp(i),av_log_amp(i)+sd_log_amp(i)];
yl2=[av_log_amp(i)-sd_log_amp(i),av_log_amp(i)-sd_log_amp(i)];
plot(x,y,'-b');
plot(xl1,yl1,'-b');
plot(xl1,yl2,'-b');
end;
end;
hold off;
ylabel('Amplitude [dB]','Fontsize',10);

% grid bepaling
startfm=floor(log10(f_m(1)));
sizefm=size(f_m);
endfm=ceil(log10(f_m(sizefm(2))));
% xfm(1)=10^startfm;
xfm(1)=f_m(1);
i=startfm+1;
countm=2;
flag=0;
while flag~=1;
if xfm(countm-1)<f_m(nr_punt);
xfm(countm)=10^(i);
countm=countm+1;
i=i+1;
else flag=1;
end;
end;
xfm(countm-1)=f_m(nr_punt);
% set(gca,'XTick',xfm,'Fontsize',9);
min_amp_met=floor(min(av_log_amp-abs(sd_log_amp)))-2;
max_amp_met=ceil(max(av_log_amp+abs(sd_log_amp)))+2;

set(gca,'Fontsize',9);
axis([xfm(1),xfm(countm-1),min_amp_met,max_amp_met]);
grid on;
title('Bode diagram RC-circuit (measurement)','Fontsize',10,'Fontweight','bold');

subplot(2,1,2);
graf=semilogx(f_m,av_fase,'.-b','LineWidth',1);
% legend([graf],'meting',3);
hold on;
width_sd=(log10(f_m(2))-log10(f_m(1)))/3;
for i=1:nr_punt;
if sd_fase(i)~=0;
x=[f_m(i),f_m(i)];
y=[av_fase(i)+sd_fase(i),av_fase(i)-sd_fase(i)];
xl1=[10^(log10(f_m(i))-width_sd),10^(log10(f_m(i))+width_sd)];
yl1=[av_fase(i)+sd_fase(i),av_fase(i)+sd_fase(i)];
yl2=[av_fase(i)-sd_fase(i),av_fase(i)-sd_fase(i)];
plot(x,y,'-b');
plot(xl1,yl1,'-b');
plot(xl1,yl2,'-b');
end;
end;
hold off;
xlabel('Frequency [Hz]','Fontsize',10);
ylabel('Phase [rad]','Fontsize',10);
% set(gca, 'XTick',xfm,'Fontsize',9);
min_fase_met=floor(min(av_fase-abs(sd_fase)));
max_fase_met=ceil(max(av_fase+abs(sd_fase)))+2;
set(gca,'Fontsize',9);
axis([f_m(1),f_m(nr_punt),min_fase,max_fase]);
grid on;
end;

BIN
MOD2-files/EXP5/Transfer_Functions_Matlab/Transfer_Function_RC.vi Vedi File


+ 334
- 0
MOD2-files/EXP5/Transfer_Functions_Matlab/Transfer_Function_RLC.m Vedi File

@@ -0,0 +1,334 @@
clear;
clc;

fprintf('Bode diagram of the RLC-circuit\n\n');
fprintf('Figure 1: Bode diagram theory+asymptote + average measurement\n')
fprintf('Figure 2: Bode diagram average measurement+SD + theory\n');
fprintf('Figure 3: Bode diagram average measurement+SD\n\n');
fprintf('N.B. SD=0 is not displayed in the figures!\n\n');

fprintf('\nWatch out! This script searches the file in "D:\"\n\n');

f_name=input('Filename: ','s');
f_name1=sprintf('%s%s',f_name,'_theorie');
f_name2=sprintf('%s%s',f_name,'_meting');

wd=cd;
cd 'D:\'

[th]=dlmread(f_name1,' ',0,0);
[met]=dlmread(f_name2,' ',0,0);

cd(wd);

f_th=th(1,:);
amp_th=th(2,:);
fase_th=th(3,:);
asym=th(4,:);
if mean(met(1,:))==0;
nr_met=0;
end;

if mean(met(1,:))~=0;
size_met=size(met);
nr_met=(size_met(1)-1)/2;
nr_punt=size_met(2);
f_m=met(1,:);
for i=1:nr_met;
for j=1:nr_punt;
amp_met(i,j)=met(i+1,j);
fase_met(i,j)=met(i+1+nr_met,j);
end;
end;
if nr_met~=1;
for i=1:nr_punt;
av_amp(i)=mean(amp_met(:,i));
av_log_amp(i)=20*log10(av_amp(i));
av_fase(i)=mean(fase_met(:,i));
end;
sd_amp=std(amp_met,0,1);
for i=1:nr_punt;
if sd_amp(i)==0;
sd_log_amp(i)=0;
elseif av_amp(i)==1;
av_amp(i)=1.0001;
else
sd_log_amp(i)=2/log(av_amp(i))*sd_amp(i);
end;
end;
sd_fase=std(fase_met,0,1);
else
av_log_amp=20*log10(amp_met);
av_fase=fase_met;
sd_log_amp=zeros(1,nr_punt);
sd_fase=zeros(1,nr_punt);
end;
end;

figure(1);
set(clf,'PaperType','A4');
set(clf,'Color',[1,1,1]);
%set(clf,'PaperPosition',[1.13386 3.97146 5.5 4.125]);
subplot(2,1,1);
if mean(met(1,:))~=0;
graf=semilogx(f_th,amp_th,'r',f_th,asym,'g',f_m,av_log_amp,'.-b','LineWidth',1);
legend([graf],'theory','asymp.','measurement',3);
else
graf=semilogx(f_th,amp_th,'r',f_th,asym,'g','LineWidth',1);
legend([graf],'theory','asymp.',3);
end;
ylabel('Amplitude [dB]','Fontsize',10)

% grid bepaling
startf=floor(log10(f_th(1)));
sizef=size(f_th);
endf=ceil(log10(f_th(sizef(2))));
xf(1)=10^startf;
i=startf+1;
count=2;
while i<=endf;
xf(count)=10^(i);
count=count+1;
i=i+1;
end;
set(gca, 'XTick',xf,'Fontsize',9);

if mean(met(1,:))~=0;
min_amp_th=floor(min(amp_th));
min_amp_met=floor(min(av_log_amp-abs(sd_log_amp)));
min_amp=min(min_amp_th,min_amp_met);
max_amp_th=ceil(max(amp_th));
max_amp_met=ceil(max(av_log_amp+abs(sd_log_amp)));
max_amp=max(max_amp_th,max_amp_met)+2;
else
min_amp=floor(min(amp_th));
max_amp=ceil(max(amp_th))+2;
end;
axis([10^startf,10^endf,min_amp,max_amp]);
grid on;
title('Bode diagram RLC-circuit','Fontsize',10,'Fontweight','bold');

subplot(2,1,2);
if mean(met(1,:))~=0;
graf=semilogx(f_th,fase_th,'r',f_m,av_fase,'.-b','LineWidth',1);
legend([graf],'theory','measurement',3);
else
graf=semilogx(f_th,fase_th,'LineWidth',1);
legend([graf],'theory',3);
end;
xlabel('Frequency [Hz]','Fontsize',10);
ylabel('Phase [rad]','Fontsize',10);
set(gca, 'XTick',xf,'Fontsize',9);

if mean(met(1,:))~=0;
min_fase_th=floor(min(fase_th));
min_fase_met=floor(min(av_fase-abs(sd_fase)));
min_fase=min(min_fase_th,min_fase_met);
max_fase_th=ceil(max(fase_th));
max_fase_met=ceil(max(av_fase+abs(sd_fase)));
max_fase=max(max_fase_th,max_fase_met);
else
min_fase=floor(min(fase_th));
max_fase=ceil(max(fase_th));
end;
axis([10^startf,10^endf,min_fase,max_fase]);
grid on;

if nr_met~=0;
figure(2);
set(clf,'PaperType','A4');
set(clf,'Color',[1,1,1]);
% set(clf,'PaperPosition',[1.13386 3.97146 5.5 4.125]);
subplot(2,1,1);
graf=semilogx(f_m,av_log_amp,'.-b',f_th,amp_th,'-r','LineWidth',1);
legend([graf],'measurement','theory',3);
hold on;
width_sd=(log10(f_m(2))-log10(f_m(1)))/3;
for i=1:nr_punt;
if sd_log_amp(i)~=0;
x=[f_m(i),f_m(i)];
y=[av_log_amp(i)+sd_log_amp(i),av_log_amp(i)-sd_log_amp(i)];
xl1=[10^(log(f_m(i))/log(10)-width_sd),10^(log(f_m(i))/log(10)+width_sd)];
yl1=[av_log_amp(i)+sd_log_amp(i),av_log_amp(i)+sd_log_amp(i)];
yl2=[av_log_amp(i)-sd_log_amp(i),av_log_amp(i)-sd_log_amp(i)];
plot(x,y,'-b');
plot(xl1,yl1,'-b');
plot(xl1,yl2,'-b');
end;
end;
hold off;
ylabel('Amplitude [dB]','Fontsize',10);

% grid bepaling
startfm=floor(log10(f_m(1)));
sizefm=size(f_m);
endfm=ceil(log10(f_m(sizefm(2))));
% xfm(1)=10^startfm;
xfm(1)=f_m(1);
i=startfm+1;
countm=2;
flag=0;
while flag~=1;
if xfm(countm-1)<f_m(nr_punt);
xfm(countm)=10^(i);
countm=countm+1;
i=i+1;
else flag=1;
end;
end;
xfm(countm-1)=f_m(nr_punt);
% set(gca,'XTick',xfm,'Fontsize',9);
fmin_th=f_th(1);
count_min=1;
while fmin_th<f_m(1);
count_min=count_min+1;
fmin_th=f_th(count_min);
end;

size_fth=size(f_th);
size_fm=size(f_m);
fmax_th=f_th(size_fth(2));
count_max=size_fth(2);
while fmax_th>f_m(size_fm(2));
count_max=count_max-1;
fmax_th=f_th(count_max);
end;

amp_th2=amp_th(count_min:count_max);
min_amp_met=floor(min(av_log_amp-abs(sd_log_amp)));
min_amp_th2=floor(min(amp_th2));
max_amp_met=ceil(max(av_log_amp+abs(sd_log_amp)));
max_amp_th2=ceil(max(amp_th2));
min_amp_met2=floor(min(min_amp_met,min_amp_th2))-2;
max_amp_met2=ceil(max(max_amp_met,max_amp_th2))+2;

set(gca,'Fontsize',9);
axis([xfm(1),xfm(countm-1),min_amp_met2,max_amp_met2]);
grid on;
title('Bode diagram RLC-circuit','Fontsize',10,'Fontweight','bold');

subplot(2,1,2);
graf=semilogx(f_m,av_fase,'.-b',f_th,fase_th,'-r','LineWidth',1);
legend([graf],'measurement','theory',3);
hold on;
width_sd=(log10(f_m(2))-log10(f_m(1)))/3;
for i=1:nr_punt;
if sd_fase(i)~=0;
x=[f_m(i),f_m(i)];
y=[av_fase(i)+sd_fase(i),av_fase(i)-sd_fase(i)];
xl1=[10^(log10(f_m(i))-width_sd),10^(log10(f_m(i))+width_sd)];
yl1=[av_fase(i)+sd_fase(i),av_fase(i)+sd_fase(i)];
yl2=[av_fase(i)-sd_fase(i),av_fase(i)-sd_fase(i)];
plot(x,y,'-b');
plot(xl1,yl1,'-b');
plot(xl1,yl2,'-b');
end;
end;
hold off;
xlabel('Frequency [Hz]','Fontsize',10);
ylabel('Phase [rad]','Fontsize',10);
% set(gca, 'XTick',xfm,'Fontsize',9);
min_fase_met=floor(min(av_fase-abs(sd_fase)));
max_fase_met=ceil(max(av_fase+abs(sd_fase)));
fase_th2=fase_th(count_min:count_max);
min_fase_th2=floor(min(fase_th2));
max_fase_th2=ceil(max(fase_th2));
min_fase_met2=floor(min(min_fase_met,min_fase_th2))-1;
max_fase_met2=ceil(max(max_fase_met,max_fase_th2));
set(gca,'Fontsize',9);
axis([f_m(1),f_m(nr_punt),min_fase_met2,max_fase_met2]);
grid on;
end;

if nr_met~=0;
figure(3);
set(clf,'PaperType','A4');
set(clf,'Color',[1,1,1]);
% set(clf,'PaperPosition',[1.13386 3.97146 5.5 4.125]);
subplot(2,1,1);
graf=semilogx(f_m,av_log_amp,'.-b','LineWidth',1);
% legend([graf],'meting',3);
hold on;
width_sd=(log10(f_m(2))-log10(f_m(1)))/3;
for i=1:nr_punt;
if sd_log_amp(i)~=0;
x=[f_m(i),f_m(i)];
y=[av_log_amp(i)+sd_log_amp(i),av_log_amp(i)-sd_log_amp(i)];
xl1=[10^(log(f_m(i))/log(10)-width_sd),10^(log(f_m(i))/log(10)+width_sd)];
yl1=[av_log_amp(i)+sd_log_amp(i),av_log_amp(i)+sd_log_amp(i)];
yl2=[av_log_amp(i)-sd_log_amp(i),av_log_amp(i)-sd_log_amp(i)];
plot(x,y,'-b');
plot(xl1,yl1,'-b');
plot(xl1,yl2,'-b');
end;
end;
hold off;
ylabel('Amplitude [dB]','Fontsize',10);

% grid bepaling
startfm=floor(log10(f_m(1)));
sizefm=size(f_m);
endfm=ceil(log10(f_m(sizefm(2))));
% xfm(1)=10^startfm;
xfm(1)=f_m(1);
i=startfm+1;
countm=2;
flag=0;
while flag~=1;
if xfm(countm-1)<f_m(nr_punt);
xfm(countm)=10^(i);
countm=countm+1;
i=i+1;
else flag=1;
end;
end;
xfm(countm-1)=f_m(nr_punt);
% set(gca,'XTick',xfm,'Fontsize',9);
min_amp_met=floor(min(av_log_amp-abs(sd_log_amp)))-2;
max_amp_met=ceil(max(av_log_amp+abs(sd_log_amp)))+2;

set(gca,'Fontsize',9);
axis([xfm(1),xfm(countm-1),min_amp_met,max_amp_met]);
grid on;
title('Bode diagram RLC-circuit (measurement)','Fontsize',10,'Fontweight','bold');

subplot(2,1,2);
graf=semilogx(f_m,av_fase,'.-b','LineWidth',1);
% legend([graf],'meting',3);
hold on;
width_sd=(log10(f_m(2))-log10(f_m(1)))/3;
for i=1:nr_punt;
if sd_fase(i)~=0;
x=[f_m(i),f_m(i)];
y=[av_fase(i)+sd_fase(i),av_fase(i)-sd_fase(i)];
xl1=[10^(log10(f_m(i))-width_sd),10^(log10(f_m(i))+width_sd)];
yl1=[av_fase(i)+sd_fase(i),av_fase(i)+sd_fase(i)];
yl2=[av_fase(i)-sd_fase(i),av_fase(i)-sd_fase(i)];
plot(x,y,'-b');
plot(xl1,yl1,'-b');
plot(xl1,yl2,'-b');
end;
end;
hold off;
xlabel('Frequency [Hz]','Fontsize',10);
ylabel('Phase [rad]','Fontsize',10);
% set(gca, 'XTick',xfm,'Fontsize',9);
min_fase_met=floor(min(av_fase-abs(sd_fase)));
max_fase_met=ceil(max(av_fase+abs(sd_fase)))+2;
set(gca,'Fontsize',9);
axis([f_m(1),f_m(nr_punt),min_fase,max_fase]);
grid on;
end;

BIN
MOD2-files/EXP5/Transfer_Functions_Matlab/Transfer_Function_RLC.vi Vedi File


+ 53
- 0
MOD2-files/EXP6/Experiment6_filter.m Vedi File

@@ -0,0 +1,53 @@
clear;
clc;

fprintf('Bodediagram of the filter\n\n');

R2 = input('R2 [Ohm] : ');
R3n = input('R3:[kOhm] : ');
C4n = input('C4 [nF] : ');
L5n = input('L5 [mH] : ');
fprintf('\n');

R3 = R3n*1e3;
C4 = C4n*1e-9;
L5 = L5n*1e-3;

t0 = 0;
t1 = L5;
n0 = R2+R3;
n1 = L5;
n2 = n0*C4*L5;

fstep = 4;
f=596;

for i=1:251
f = f + fstep;
frequentie(i) = f;
w = 2*pi*f;
H(i)=((1i*w*t1)/(n0+1i*w*n1+n2*(1i*w)^2));
end

figure(1);
fig_label=('Bodediagram Fourierfilter');
set(clf,'PaperType','A4');
set(clf,'Color',[1,1,1]);
subplot(211);
semilogx(frequentie, abs(H))
axis([600 1600 0.0 1.2])
ylabel('amplitude','Fontsize',10)
hndl=title(fig_label,'Fontsize',10,'Fontweight','bold');
h=get(hndl);
set(gca, 'XTick', [600 700 800 900 1000 1100 1200 1300 1400 1500 1600],'Fontsize',8)
set(gca, 'YTick', [0.0 0.2 0.4 0.6 0.8 1.0 1.2],'Fontsize',8)
grid;

subplot(212);
semilogx(frequentie, angle(H)/pi)
axis([600 1600 -0.6 0.6])
xlabel('frequency [Hz]','Fontsize',10)
ylabel('phase [rad]','Fontsize',10)
set(gca, 'XTick', [600 700 800 900 1000 1100 1200 1300 1400 1500 1600],'Fontsize',8)
set(gca, 'YTick', [-0.6 -0.4 -0.2 0.0 0.2 0.4 0.6],'Fontsize',8)
grid;

+ 44
- 0
MOD2-files/EXP6/Experiment6_measurement.m Vedi File

@@ -0,0 +1,44 @@
clear;
clc;

fprintf('Fourieranalysis of signals\n\n');
fprintf('Figuur 1: input and output signals of the Fourierbox\n\n')

fprintf('\nWARNING!This script looks for the file in the working directory.\n\n');

f_name=input('Filenaam: ','s');

freq=input('frequency=1 kHz (j/n): ','s');
if freq=='n';
f=input('frequency [Hz]: ');
else
f=1000;
end;



[data]=dlmread(f_name,' ',0,0);

%cd(wd);

T=1/f;
t=0:3*T/2500:3*T;

s_data=size(data);
nr_punt=s_data(2);

signaal_in=data(2500:5000);
signaal_uit=data(5001:7501);

figure(1);
set(clf,'PaperType','A4');
set(clf,'Color',[1,1,1]);
subplot(2,1,1);
plot(t,signaal_in);
axis([0,3*T,-5,5]);
ylabel('Vin [V]','Fontsize',10);
subplot(2,1,2);
plot(t,signaal_uit);
axis([0,3*T,-0.5,0.5]);
xlabel('time [s]','Fontsize',10);
ylabel('Vuit [V]','Fontsize',10);

BIN
MOD2-files/EXP6/Experiment6_measurement.vi Vedi File


+ 51
- 0
MOD2-files/EXP6/Experiment6_square_wave.m Vedi File

@@ -0,0 +1,51 @@
clear;
clc;

fprintf('Fouriercomponenten of a square wave\n\n');

A = input('Amplitude A of the square wave [V]: ');
T = input('Period T of the square wave [ms]: ');
fprintf('\n');

w0 = 2*pi/T;
amp = 4*A/pi;

tv = 0:T/50:2*T;

ehv = amp*sin(w0*tv);
dhv = (amp/3)*sin(3*w0*tv);
vhv = (amp/5)*sin(5*w0*tv);
blv = A*(sign(ehv));

epdhv = ehv + dhv;
epdpvhv = epdhv + vhv;

maxamp=max(ehv);
mA=ceil(maxamp);

figure(1);
set(clf,'PaperType','A4');
set(clf,'Color',[1,1,1]);
subplot(221);
plot(tv, blv, tv, ehv, tv, dhv, tv, vhv);
xlabel('time [ms]','Fontsize',8);
title('first three harmonics','Fontsize',8);
set(gca,'Fontsize',8);

subplot(222);
plot(tv, blv, tv, ehv);
xlabel('time [ms]','Fontsize',8);
title('first harmonic','Fontsize',8);
set(gca,'Fontsize',8);

subplot(223);
plot(tv, blv, tv, epdhv);
xlabel('time [ms]','Fontsize',8);
title('sum first and third harmonic','Fontsize',8);
set(gca,'Fontsize',8);

subplot(224);
plot(tv, blv, tv, epdpvhv);
xlabel('time [ms]','Fontsize',8);
title('sum of all harmonics','Fontsize',8);
set(gca,'Fontsize',8);

+ 136
- 0
MOD2-files/EXP6/Experiment6_transfer.m Vedi File

@@ -0,0 +1,136 @@
clear;
clc;

fprintf('Bode diagram of the Fourier-box\n\n');
fprintf('Figure 1: Bodediagram average measurement+SD\n\n');
fprintf('N.B. SD=0 is not displayed in the graph!\n\n');

fprintf('\nWARNING!This script looks for the file in the working directory.\n\n');

f_name=input('Filename: ','s');

[met]=dlmread(f_name,' ',0,0);

if mean(met(1,:))==0;
nr_met=0;
end;

if mean(met(1,:))~=0;
size_met=size(met);
nr_met=(size_met(1)-1)/2;
nr_punt=size_met(2);
f_m=met(1,:);
for i=1:nr_met;
for j=1:nr_punt;
amp_met(i,j)=met(i+1,j);
fase_met(i,j)=met(i+1+nr_met,j);
end;
end;
if nr_met~=1;
for i=1:nr_punt;
av_amp(i)=mean(amp_met(:,i));
av_log_amp(i)=20*log10(av_amp(i));
av_fase(i)=mean(fase_met(:,i));
end;
sd_amp=std(amp_met,0,1);
for i=1:nr_punt;
sd_log_amp(i)=2/log(av_amp(i))*sd_amp(i);
end;
sd_fase=std(fase_met,0,1);
else
av_log_amp=20*log10(amp_met);
av_fase=fase_met;
sd_log_amp=zeros(1,nr_punt);
sd_fase=zeros(1,nr_punt);
end;
end;

min_amp=floor(min(av_log_amp-abs(sd_log_amp)));
max_amp=ceil(max(av_log_amp+abs(sd_log_amp)));
min_fase=floor(min(av_fase-abs(sd_fase)));
max_fase=ceil(max(av_fase+abs(sd_fase)));

if nr_met~=0;
figure(1);
set(clf,'PaperType','A4');
set(clf,'Color',[1,1,1]);
subplot(2,1,1);
graf=semilogx(f_m,av_log_amp,'.-b','LineWidth',1);
% legend([graf],'meting',3);
hold on;
width_sd=(log10(f_m(2))-log10(f_m(1)))/3;
for i=1:nr_punt;
if sd_log_amp(i)~=0;
x=[f_m(i),f_m(i)];
y=[av_log_amp(i)+sd_log_amp(i),av_log_amp(i)-sd_log_amp(i)];
xl1=[10^(log(f_m(i))/log(10)-width_sd),10^(log(f_m(i))/log(10)+width_sd)];
yl1=[av_log_amp(i)+sd_log_amp(i),av_log_amp(i)+sd_log_amp(i)];
yl2=[av_log_amp(i)-sd_log_amp(i),av_log_amp(i)-sd_log_amp(i)];
plot(x,y,'-b');
plot(xl1,yl1,'-b');
plot(xl1,yl2,'-b');
end;
end;
hold off;
ylabel('Amplitude [dB]','Fontsize',10);

% grid bepaling
startfm=floor(log10(f_m(1)));
sizefm=size(f_m);
endfm=ceil(log10(f_m(sizefm(2))));
% xfm(1)=10^startfm;
xfm(1)=f_m(1);
i=startfm+1;
countm=2;
flag=0;
while flag~=1;
if xfm(countm-1)<f_m(nr_punt);
xfm(countm)=10^(i);
countm=countm+1;
i=i+1;
else flag=1;
end;
end;
xfm(countm-1)=f_m(nr_punt);
% set(gca,'XTick',xfm,'Fontsize',9);
min_amp_met=floor(min(av_log_amp-abs(sd_log_amp)))-2;
max_amp_met=ceil(max(av_log_amp+abs(sd_log_amp)))+2;
set(gca,'Fontsize',9);
axis([xfm(1),xfm(countm-1),min_amp_met,max_amp_met]);
grid on;
title('Bodediagram Fourierbox (Measurement)','Fontsize',10,'Fontweight','bold');

subplot(2,1,2);
graf=semilogx(f_m,av_fase,'.-b','LineWidth',1);
% legend([graf],'meting',3);
hold on;
width_sd=(log10(f_m(2))-log10(f_m(1)))/3;
for i=1:nr_punt;
if sd_fase(i)~=0;
x=[f_m(i),f_m(i)];
y=[av_fase(i)+sd_fase(i),av_fase(i)-sd_fase(i)];
xl1=[10^(log10(f_m(i))-width_sd),10^(log10(f_m(i))+width_sd)];
yl1=[av_fase(i)+sd_fase(i),av_fase(i)+sd_fase(i)];
yl2=[av_fase(i)-sd_fase(i),av_fase(i)-sd_fase(i)];
plot(x,y,'-b');
plot(xl1,yl1,'-b');
plot(xl1,yl2,'-b');
end;
end;
hold off;
xlabel('Frequency [Hz]','Fontsize',10);
ylabel('Fase [rad]','Fontsize',10);
% set(gca, 'XTick',xfm,'Fontsize',9);
min_fase_met=floor(min(av_fase-abs(sd_fase)));
max_fase_met=ceil(max(av_fase+abs(sd_fase)))+2;
set(gca,'Fontsize',9);
axis([f_m(1),f_m(nr_punt),min_fase,max_fase]);
grid on;
end;

BIN
MOD2-files/EXP6/Experiment6_transfer.vi Vedi File


+ 59
- 0
MOD2-files/EXP6/Experiment6_triangular_wave.m Vedi File

@@ -0,0 +1,59 @@
clear;
clc;

fprintf('Fouriercomponenten of a triangle wave\n\n');

B = input('Amplitude B of the triangle wave [V]: ');
T = input('Period T of the triangle wave [ms]: ');
fprintf('\n');

w0 = 2*pi/T;
amp = -(8*B)/(pi^2);

tv = 0:T/50:2*T;

ehv = amp*cos(w0*tv);
dhv = (amp/9)*cos(3*w0*tv);
vhv = (amp/25)*cos(5*w0*tv);

rc = 4*B/T;
T2 = T/2;
T15 = 3*T/2;

drv=[];
for t=0:T/50:2*T;
if (t<T/2) drv=[drv -B+rc*t]; end;
if (T/2<=t)&(t<T) drv=[drv 3*B-rc*t]; end;
if (T<=t)&(t<T15) drv=[drv -5*B+rc*t]; end;
if (T15<=t) drv=[drv 7*B-rc*t]; end;
end;

epdhv = ehv + dhv;
epdpvhv = epdhv + vhv;

figure(1);
set(clf,'PaperType','A4');
set(clf,'Color',[1,1,1]);
subplot(221);
plot(tv, drv, tv, ehv, tv, dhv, tv, vhv);
xlabel('time [ms]','Fontsize',8);
title('first three harmonics','Fontsize',8);
set(gca,'Fontsize',8);

subplot(222);
plot(tv, drv, tv, ehv);
xlabel('time [ms]','Fontsize',8);
title('first harmonic','Fontsize',8);
set(gca,'Fontsize',8);

subplot(223);
plot(tv, drv, tv, epdhv);
xlabel('time [ms]','Fontsize',8);
title('sum first and third harmonic','Fontsize',8);
set(gca,'Fontsize',8);

subplot(224);
plot(tv, drv, tv, epdpvhv);
xlabel('time [ms]','Fontsize',8);
title('sum of all harmonics','Fontsize',8);
set(gca,'Fontsize',8);

BIN
MOD2-files/LabManual_EC2017_Hueting.pdf Vedi File


Loading…
Annulla
Salva