README.md
  1. Scripts for LIV and optical spectra measurements using following equipment:
    • Keysight B2901A Precision Source/Measure Unit
    • Thorlabs PM100USB Power and energy meter
    • Keysight 8163B Lightwave Multimeter
    • YOKOGAWA AQ6370D Optical Spectrum Analyzer
    • Advanced Temperature Test (ATT) Chuck System A160 CMI
  2. Script to approximate small signal modulation signal (S-parameters) at different currents stored in multiple .s2p files
  3. Script to calculate and plot thermal resistance of a VCSEL

How to use:

To measure LIV run

python measure.py

You will get a small instruction on what arguments to provide. settings.py file contains a dictionary with visa addresses and settings.

following arguments are needed: Equipment_choice WaferID Wavelength(nm) Coordinates Temperature(°C) e.g. run

python measure.py k2 gs15 1550 00C9 25

NOTE: Character ‘-’ is not allowed! It breaks filename parsing.

for equipment choice use:

  • t for Thorlabs PM100USB Power and energy meter
  • k1 for Keysight 8163B Lightwave Multimeter port 1
  • k2 for Keysight 8163B Lightwave Multimeter port 2
  • y for YOKOGAWA AQ6370D Optical Spectrum Analyzer

Analysis

Usage: analyze.py [OPTIONS] [PATHS]...

Options:
-l, --replot_liv       Replot LIV figures
-s, --ssm              Analyze small signal modulation data (.s2p files or
                        automatic system reports)
-r, --rin              Analyze RIN data (automatic system reports)
-o, --optical_spectra  Plot optical spectra
-y, --yaml_project     Read and analize according to settings in YAML files
--help                 Show this message and exit.

Required python libraries (TODO: update)

pip install numpy scikit-rf pandas scipy scikit-learn matplotlib seaborn pyvisa pyvisa-py pyusb pyserial psutil zeroconf

Install from requirements.txt

pip install -r requirements.txt

Make virtual environment

python -m venv env

(note: “env” is the name of a directory with a virtual environment)

Activate an environment (Unix)

source env\bin\activate

Activate an environment (Windows)

env\Scripts\Activate.Ps1

note: PyVISA installation

If you are told your version of pip is out of date, you might as well update it with

python -m pip install --upgrade pip

Once you have that installed, you will need to install pyvisa. Under Windows, that is as simple as running

pip install pyvisa

Finally, as pyvisa is really only a “wrapper” for a VISA layer, you will need to install a supported VISA layer for it to talk to. If you are running Windows, realistically, you should use the National Instruments NI-VISA package. It’s a bulky piece of software, but it is the most well-supported VISA layer generally speaking – a version of it may already be installed on your computer by the “bundled” software that comes with your instrument. It is possible to avoid using NI-VISA on Windows, but then you will need to cook up your own drivers for each instrument and self-sign them and it’s just a whole heap of hassle.

On Linux, however, you will also need to install pyvisa-py which provides a Python-based VISA layer, as well as pyusb (for USB-TMC instruments) and pyserial (for Serial connected instruments). This can be done by using the following command (both with and without sudo)

pip install pyvisa-py pyusb pyserial
pip install psutil zeroconf
  1. https://goughlui.com/2021/03/28/tutorial-introduction-to-scpi-automation-of-test-equipment-with-pyvisa/
  2. https://youtu.be/1HQxnz3P9P4
  3. https://github.com/instrumentkit/InstrumentKit
  4. https://instrumentkit.readthedocs.io/en/latest/_modules/instruments/yokogawa/yokogawa6370.html
Конвейеры
0 успешных
0 с ошибкой