LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Integrating Multi-Dimensional Temperature Loops into a Laser 2D Mapping System (Current/Spectrum/WL/SMSR)

Hi everyone,
I am currently developing a Laser 2D Mapping system using LabVIEW to
characterize laser performance. I am looking for advice on expanding the system
architecture to include temperature variables.
Current System & Instrumentation:
Source Meter: Keithley 2400 (for current sourcing and IV measurements).
Optical Spectrum Analyzer (OSA): Anritsu MS9740A (for spectral data
acquisition).
Capabilities: The system successfully automates current stepping (I-scan)
and captures Spectrum, Peak Wavelength, and SMSR (Side-Mode
Suppression Ratio) at each point, exporting data to CSV.
The Goal:
The next phase is to introduce Temperature (T) as a third dimension using an
Arroyo 5300 TEC Temperature Controller. I need the system to execute a full
current-range scan (Current vs. Spectrum/WL/SMSR) at each temperature
setpoint defined in a list (e.g., 25 degC to 85 degC).
Questions for the Community:
1. Loop Architecture & Thermal Stabilization:
What is the best practice for implementing "Thermal Stabilization" logic? After
sending a command to the Arroyo 5300, should I use a simple wait timer, or is it
better to poll the PV (Process Variable) until it stays within a tolerance band (e.g.,
+/- 0.1 degC) for a specific duration before triggering the inner current scan?
2. Data Structure for 3D Mapping:
As the dataset grows (Temp x Current x Spectrum), managing hundreds of
CSV files is becoming difficult. Would you recommend switching to TDMS? How
should I best organize the Groups and Channels to keep the relationship between
Temperature and Current steps clear and easy to post-process?

3. State Machine vs. Producer/Consumer:
To handle the instrument synchronization (TEC -> SMU -> OSA) while maintaining
a responsive UI, would a Queued State Machine (QSM) be sufficient, or is a
Producer/Consumer architecture preferred for handling data logging and UI
updates in parallel?
Any advice, code snippets, or architecture patterns for this specific instrument
setup would be greatly appreciated!

0 Kudos
Message 1 of 2
(159 Views)

Hi washang,

 


@washang wrote:

1. Loop Architecture & Thermal Stabilization:
What is the best practice for implementing "Thermal Stabilization" logic? After
sending a command to the Arroyo 5300, should I use a simple wait timer, or is it
better to poll the PV (Process Variable) until it stays within a tolerance band (e.g.,
+/- 0.1 degC) for a specific duration before triggering the inner current scan?
2. Data Structure for 3D Mapping:
As the dataset grows (Temp x Current x Spectrum), managing hundreds of
CSV files is becoming difficult. Would you recommend switching to TDMS? How
should I best organize the Groups and Channels to keep the relationship between
Temperature and Current steps clear


  1. That depends on your requirements! What does "stable" mean to you? Does your temperature controller offer a "target reached" indication?
    Is your test setup really "stable" (wih respect to temperature) when the controller indicates stable conditions? (Once I had a setup where we placed our DUTs inside a large metal block inside a temperature chamber to improve the temperature stability…)
  2. TDMS is quite good to handle lots of measurement data. You could set temperature/current values as properties of the spectrum data…
Best regards,
GerdW


using LV2016/2019/2021 on Win10/11+cRIO, TestStand2016/2019
0 Kudos
Message 2 of 2
(145 Views)