Files
py-dvt-ate/config/default.yaml

150 lines
4.9 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# py_dvt_ate Default Configuration
# This file contains default settings for the DVT simulation platform.
# Copy this file and modify values as needed for your environment.
# =============================================================================
# Instrument Configuration
# =============================================================================
instruments:
# Backend selection: "simulator" or "pyvisa"
# - simulator: Use virtual instruments with physics simulation (for development)
# - pyvisa: Connect to real instruments via PyVISA (for production testing)
backend: simulator
# Simulator backend configuration
# Used when backend=simulator. Virtual instruments are exposed as TCP servers.
simulator:
host: localhost
thermal_chamber_port: 5001
power_supply_port: 5002
multimeter_port: 5003
# PyVISA backend configuration
# Used when backend=pyvisa. Provide VISA resource strings for real instruments.
# Example: "TCPIP::192.168.1.10::5001::SOCKET"
pyvisa:
thermal_chamber: null
power_supply: null
multimeter: null
# =============================================================================
# Physics Simulation Parameters
# =============================================================================
physics:
# Physics engine update rate (Hz)
# Higher rates provide better accuracy but use more CPU.
update_rate_hz: 100.0
# Thermal model parameters
thermal:
# Chamber thermal time constant (seconds)
# Time for chamber temperature to reach 63% of final value
chamber_time_constant_s: 30.0
# DUT case thermal time constant (seconds)
# Time for case temperature to reach 63% of final value
case_time_constant_s: 5.0
# Junction-to-case thermal resistance (°C/W)
# How much the junction heats above case per watt dissipated
theta_jc: 15.0
# Case-to-ambient thermal resistance (°C/W)
# How much the case heats above ambient per watt dissipated
theta_ca: 5.0
# Thermal chamber behaviour
chamber:
# Maximum temperature ramp rate (°C/min)
# Real chambers have limited heating/cooling rates
ramp_rate_c_per_min: 10.0
# Temperature stability window (°C)
# Chamber is considered stable when within ±this value of setpoint
stability_window_c: 0.5
# Stability duration requirement (seconds)
# Chamber must remain in stability window for this duration
stability_time_s: 30.0
# =============================================================================
# DUT (Device Under Test) Configuration
# =============================================================================
dut:
# DUT model type
# Currently supported: "ldo"
model: ldo
# DUT model parameters
parameters:
# Nominal output voltage at 25°C (V)
nominal_output_voltage: 3.3
# Temperature coefficient (ppm/°C)
# Voltage change per degree: ΔV = V₀ × tempco × ΔT / 1e6
tempco_ppm_per_c: 50.0
# Quiescent current at 25°C (µA)
quiescent_current_ua: 50.0
# Quiescent current temperature coefficient (per °C)
# Iq change per degree: ΔIq = Iq₀ × tempco × ΔT
quiescent_current_tempco: 0.003
# Dropout voltage (V)
# Minimum Vin-Vout differential for regulation
dropout_voltage: 0.3
# =============================================================================
# Data Storage Configuration
# =============================================================================
data:
# SQLite database path for test runs and results
database_path: ./data/py_dvt_ate.db
# Directory for measurement data files (Parquet format)
measurements_dir: ./data/measurements
# Directory for generated reports (PDF, HTML)
reports_dir: ./data/reports
# =============================================================================
# Logging Configuration
# =============================================================================
logging:
# Logging level: DEBUG, INFO, WARNING, ERROR, CRITICAL
level: INFO
# Log file path
# Use null to disable file logging
file: ./data/logs/py_dvt_ate.log
# Log message format
# Uses Python logging format strings
format: "%(asctime)s - %(name)s - %(levelname)s - %(message)s"
# =============================================================================
# Dashboard Configuration (Streamlit)
# =============================================================================
dashboard:
# Enable/disable the Streamlit dashboard
enabled: true
# Dashboard server port
port: 8501
# =============================================================================
# API Configuration (Phase 2)
# =============================================================================
api:
# Enable/disable the REST API server
# Currently not implemented (Phase 2 feature)
enabled: false
# API server host
# Use "0.0.0.0" to listen on all interfaces
host: "0.0.0.0"
# API server port
port: 8000