05-06-2026 05:26 AM
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!
05-06-2026 05:43 AM
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