Home
Publications
Labview
Film Scanners

This is a collection of National Instruments Labview©  Programs, that I use for test and measurements of optoelectronics devices and systems. Some of the instrument drivers are modified by me from the initial programs offered by instrument manufacturers or National Instruments, some are written by me. The application programs (user.llb) are written by me unless stated otherwise. These programs are offered for free private use. Any commercial use, sale, or redistribution is prohibited.

If you have any questions, please contact me at

General Considerations I use in writing Labview Programs:

  1. You will need Labview 6.0 Full Development License to run most of these programs, I use advanced library functions fairly often.
  2. I avoid using VISA library functions. Initially (until release 3.0) VISA library was not available, and first so called "VISA transition" library was extremely unreliable. When regular VISA appeared in releases 4.0 and 5.0 it required so called "VISA Session" handle to be passed from subVI to subVI once the session was open, which made debugging rather cumbersome. This was fixed in Labview 6.0, but I still don't quite trust VISA, except when used for Serial Port interfaces.
  3. I avoid using Sequence Frames. Initially (in releases 3.0 and 4.0) using multiple nested Sequence Frames made Labview programs unstable, polite way to say it crushed all the time:). Given that there was no Undo button then, this was enough to stay away from sequences as much as possible. I was told that this has been fixed now but I avoid using them anyway, since sequences also make diagrams less "transparent". Instead I try to structure the programs with subVI's as mush as possible and use "Error" cluster as a handle to insure proper sequencing.
  4. I don't use Charts. Release 6.0 has a bug, which sometimes adds a zero-element at the start of the chart buffer.
  5. There is a set of frequently used programs, that I collected in the library My_Tools_ges.llb. You will most likely need to download it if you want to use any of the programs from this site. Some of the VI's in it, again, are my own, some are modified form sources available on National Instrument site.

GRAPHIC LIBRARIES

Library Comments
Poincare_Sphere.llb Plots Poincare Sphere and adds a point (array of points) represented by Stokes coordinates. The Poincare Sphere is generated from the data array saved internally.
Smith_Chart.llb Plots S-parameter data on a Smith Chart. The Smith Chart grid is generated from the data array saved internally. The same technique is used in Vector Network Analyzer instrument library VI's. This program was first written when Labview did not have its own Smith Chart functions. Release 6.0 has it, but the picture variable representation is quite inconvenient, in my opinion, and takes more space/memory.
Plot_BER.llb This is a library that allows to plot BER in a scale linear for corresponding Q (The program finds Q corresponding to input BER, according to the formula:
BER=1/4*erfc(Q/sqrt(2)). The result is a picture variable that can be saved as a PNG file. The library with all required sub'VI's is rather large - 3Mb, so I did not place it here, but can e-mail to you on request.
Plot_BER_Matlab.llb Alternatively, same function can be performed using Matlab graphic libraries. Matlab must be installed on the computer and Matlab release 12.0 or higher in combination with Labview 6.0, the fix needs to be performed.

INSTRUMENT LIBRARIES

Library Comments
Agilent_8753_VNA_ges.llb Agilent 8753 Vector Network Analyzer
Agilent_8712_VNA_ges.llb Agilent 8712 Vector Network Analyzer
Agilent_8565_Spectrum_Analyzer_ges.llb Agilent 8565 RF Spectrum Analyzer. Also contains the programms to calculate the RMS jitter from the phase noise spectrum of the clock signal, and RIN calculations for lasers
Agilent_86100A_DCA_ges.llb Agilent 86100 Digital Communications Analyzer
Agilent_86141B_ges.llb Agilent 86141B Optical Spectrum Analyzer
Ando AQ6317 OSA_ges.llb Ando 6317 Optical Spectrum Analyzer
Advantest_Q8384_OSA.llb Advantest Q8384 Optical Spectrum Analyzer
Agilent_8614_Tunable_Laser_ges.llb Agilent 8614 Tunable Laser Source
HP8509B_OPA_ges.llb Agilent 8609 Optical Polarization Analyzer
Advantest D3286 ERRD_ges.llb Advantest D3286 Error Detector
Anritsu MP1764 ERRD_ges.llb Anritsu MP1764 Error Detector
Agilent_71612_BERT_ges.llb Agilent 71612 BERT (70843 Error Detector)

APPLICATIONS / MEASUREMNTS LIBRARIES

Library Comments
CD_measmnt_Agilent_8753+8614.llb Chromatics Dispersion Measurement using Agilent 8753/8720 VNA and Agilent 8614 TLS
CD_measmnt_Agilent_8712+8614.llb Chromatics Dispersion Measurement using Agilent 8712 VNA and Agilent 8614 TLS
TRS_measurements_ges.llb Time-Resolved Chirp Measurement using Agilent 86141 OSA and Agilent 86100DCA
PMD_Measurement_ges.llb PMD Measurements using  Agilent 8509 Optical Polarization Analyzer and Agilent 8614 TLS
FP_ASE_spectral_analysis.llb Spectral Analysis of  the output spectra of Fabry- Perot resonator. In particular its application to FP laser Amplified Spontaneous Emission spectra. See my review paper for detailed descriptions of the techniques.