Power Supply Control
Overview
The PSUs (Power Supply Units) view provides dedicated controls for programmable power supplies connected to the Accordion system. This interface allows you to configure voltage and current limits, monitor power consumption, enable/disable outputs, and program PMBus devices.
Accessing PSU Controls
- Click PSUs in the navigation panel
- PSU control panel displays all available power supplies
- Each PSU shows individual controls and monitoring
PSU Interface Elements
Individual PSU Control
Each power supply typically includes:
Voltage Control
- Voltage Setpoint: Target output voltage
- Voltage Readback: Actual measured voltage
- Voltage Limits: Minimum and maximum voltage range
- Step Size: Increment/decrement amount
Current Control
- Current Limit: Maximum allowed current
- Current Readback: Actual current draw
- Over-Current Protection (OCP): Protection threshold
- Current Compliance: Indicates if current-limited
Enable/Disable
- Output Enable: Turn output on/off
- Status Indicator: Shows output state (On/Off)
- Fault Indicator: Shows if fault condition exists
Monitoring
- Power: Calculated power (V × I)
- Status: Operational state (OK, OCP, OVP, etc.)
- Temperature: Power supply temperature (if supported)
Basic PSU Operations
Set Output Voltage
Method 1: Direct Entry
- Click voltage value field
- Enter desired voltage (e.g., "3.3")
- Press Enter or click Apply
- Voltage setpoint updated
Method 2: Increment/Decrement
- Use up/down arrows or spin buttons
- Voltage adjusts by step size
- Hold for continuous adjustment
Method 3: Slider
- Drag voltage slider
- Fine-tune with slider position
- Real-time voltage adjustment
Set Current Limit
- Click current limit field
- Enter maximum current (e.g., "1.5" for 1.5A)
- Press Enter or Apply
- Current limit configured
- PSU enters current limit mode if load exceeds limit
Enable/Disable Output
Enable Output:
- Click "Enable" button or toggle switch
- Output turns on
- Status indicator shows "ON"
- Voltage rises to setpoint
- Current readback shows load current
Disable Output:
- Click "Disable" button or toggle switch
- Output turns off
- Status indicator shows "OFF"
- Voltage drops to zero
- Current readback shows zero
Monitor Power
Real-Time Monitoring:
- Voltage and current update automatically (if polling enabled)
- Power calculated and displayed (V × I)
- Status indicates any fault conditions
- Temperature shows thermal state
Polling Configuration:
- Use main polling settings (Ribbon → Appearance)
- Typical interval: 100-500ms for power monitoring
- Higher frequency for dynamic loads
Advanced PSU Features
Over-Current Protection (OCP)
Configure OCP:
- Find OCP threshold setting
- Enter protection threshold (typically 110-150% of expected)
- Apply setting
- PSU shuts down if current exceeds threshold
OCP Trip Recovery:
- Disable PSU output
- Remove or fix over-current condition
- Re-enable output
- Monitor current on startup
Over-Voltage Protection (OVP)
Configure OVP:
- Set OVP threshold (if configurable)
- Typically 110-120% of nominal voltage
- PSU shuts down if voltage exceeds threshold
OVP Trip Recovery:
- Disable output
- Investigate cause (load, feedback issue)
- Re-enable and monitor
Under-Voltage Protection (UVP)
Configure UVP:
- Set UVP threshold
- Typically 80-90% of nominal voltage
- Alerts if output drops below threshold
Power Sequencing
Sequence Multiple PSUs:
Not directly supported in PSU GUI. Use AccordionShell or custom script:
# Power-up sequence
AccordionShell set --channel "PSU_1_ENABLE" --value "1"
sleep 0.1
AccordionShell set --channel "PSU_2_ENABLE" --value "1"
sleep 0.1
AccordionShell set --channel "PSU_3_ENABLE" --value "1"
Power-down sequence (reverse order):
AccordionShell set --channel "PSU_3_ENABLE" --value "0"
sleep 0.1
AccordionShell set --channel "PSU_2_ENABLE" --value "0"
sleep 0.1
AccordionShell set --channel "PSU_1_ENABLE" --value "0"
Voltage Slew Rate
Control rise/fall time:
If PSU supports slew rate control:
- Find slew rate setting
- Enter rate (e.g., V/ms)
- Slower = gentler on load
- Faster = quicker startup
PMBus Power Management
PMBus Overview
PMBus is a standardized protocol (based on SMBus/I2C) for power device configuration and monitoring. Many modern power supplies, voltage regulators, and power management ICs support PMBus.
Load PMBus Project File
Using AccordionShell:
AccordionShell pmbus --module "PMBUS_MODULE" --file "power_config.pmbx"
Project file contains:
- Device I2C addresses
- Voltage/current setpoints
- Protection thresholds
- Timing parameters
- Telemetry configuration
Program PMBus Devices
Program to RAM (Volatile):
# Changes take effect immediately but lost on power cycle
AccordionShell pmbus --module "PMBUS_MODULE" --program
Program to NVM (Non-Volatile):
# Changes persist across power cycles
AccordionShell pmbus --module "PMBUS_MODULE" --program --nvm
⚠️ Warning: NVM has limited write cycles (10k-100k). Use sparingly.
Verify PMBus Configuration
# Reads device registers and compares with project file
AccordionShell pmbus --module "PMBUS_MODULE"
PMBus Monitoring
Read PMBus Telemetry:
PMBus devices often provide extensive telemetry:
- Input voltage
- Output voltage
- Output current
- Temperature
- Fault status
- Warnings
These appear as channels in the channel list:
PMBUS_VOUTPMBUS_IOUTPMBUS_TEMPPMBUS_STATUS
Enable polling to monitor in real-time.
PMBus Fault Handling
Fault Types:
- Over-Voltage: Output exceeded OVP threshold
- Over-Current: Output exceeded OCP threshold
- Over-Temperature: Device too hot
- Under-Voltage: Output dropped below UVP
- Communication Lost: I2C communication failure
Clear Faults:
- Identify fault type from status channel
- Disable output
- Correct fault condition
- Send CLEAR_FAULTS command (if channel available)
- Re-enable output
Multiple PSU Management
PSU Groups
If using PSU view with multiple supplies:
- Organize by rail (e.g., 12V, 5V, 3.3V)
- Label with alias file for clarity
- Monitor all in single view
Example Alias Configuration:
<Channel NetName="PSU_0_VOUT" Alias="12V_Main" GroupName="12V Rails" />
<Channel NetName="PSU_1_VOUT" Alias="12V_Aux" GroupName="12V Rails" />
<Channel NetName="PSU_2_VOUT" Alias="5V_Logic" GroupName="5V Rails" />
<Channel NetName="PSU_3_VOUT" Alias="3V3_Digital" GroupName="3.3V Rails" />
Synchronized Control
Control multiple PSUs together:
Not directly supported in GUI. Use AccordionShell script or custom application.
Example - Set all 3.3V rails:
AccordionShell set --channel "PSU_3V3_.*" --value "3.3"
AccordionShell set --channel "PSU_3V3_.*_ENABLE" --value "1"
Extended PSU View
Some Accordion configurations include an "Extended PSU View" with:
- Graphical representation of PSU
- Visual voltage/current meters
- Trend charts for V/I over time
- Efficiency calculations
- Historical max/min values
Access:
- Navigate to PSUs page
- Select extended view mode (if available)
- Or right-click PSU → "Extended View"
Safety Features
Protection Mechanisms
Modern power supplies include multiple protection features:
- OCP (Over-Current Protection): Limits or shuts down on excessive current
- OVP (Over-Voltage Protection): Shuts down on over-voltage
- OTP (Over-Temperature Protection): Reduces output or shuts down when hot
- UVP (Under-Voltage Protection): Alerts or shuts down on under-voltage
- Short Circuit Protection: Immediate shutdown on output short
Safe Operating Guidelines
- Set Current Limit: Always set appropriate current limit before enabling
- Verify Connections: Check wiring before powering on
- Gradual Ramp: Use slew rate control for sensitive loads
- Monitor Initially: Watch voltage/current on first power-up
- Emergency Disable: Know how to quickly disable all outputs
Protection Testing
Test OCP:
- Set current limit to safe test value (e.g., 100mA)
- Enable output
- Short output or connect low-resistance load
- Verify PSU enters current limit or shuts down
- Remove short and disable output
⚠️ Caution: Only test with safe current levels. High current shorts can damage equipment.
Common PSU Workflows
Basic Power-Up Sequence
1. Set voltage: 3.3V
2. Set current limit: 2.0A
3. Connect load
4. Enable output
5. Verify voltage readback: ~3.3V
6. Check current draw
7. Monitor for faults
Voltage Sweep Test
1. Set starting voltage (e.g., 3.0V)
2. Set current limit
3. Enable output
4. Gradually increase voltage to max (e.g., 3.6V)
5. Monitor load behavior at each step
6. Record current at each voltage
7. Plot V-I curve
Current Limit Testing
1. Set voltage: 3.3V
2. Set current limit: 0.5A
3. Enable output
4. Increase load until current limit reached
5. Verify PSU enters constant-current mode
6. Check voltage drops as expected
7. Reduce load
8. Verify return to constant-voltage mode
Load Regulation Test
1. Set voltage: 5.0V
2. Enable output with no load
3. Measure no-load voltage
4. Apply 50% load
5. Measure voltage (should be close to 5.0V)
6. Apply 100% load
7. Measure voltage
8. Calculate regulation: (Vno_load - Vfull_load) / Vnominal × 100%
Line Regulation Test
1. Configure input voltage adjustment (if available)
2. Set output: 3.3V
3. Set input to minimum (e.g., 10V)
4. Measure output
5. Set input to nominal (e.g., 12V)
6. Measure output
7. Set input to maximum (e.g., 14V)
8. Measure output
9. Calculate regulation
Troubleshooting
Output Won't Enable
Problem: Output stays off when enabled
Solutions:
- Check for fault condition (OCP, OVP, OTP)
- Verify current limit set (not zero)
- Check enable channel value
- Review logs for error messages
- Try hardware reset
- Check for interlock signals
Voltage Incorrect
Problem: Output voltage doesn't match setpoint
Solutions:
- Verify setpoint was applied
- Check voltage readback channel
- Verify load not excessive (current limit mode)
- Check for voltage drop in wiring
- Calibrate PSU if supported
- Check for fault conditions
Current Limit Activated Unexpectedly
Problem: PSU enters current limit with normal load
Solutions:
- Check current limit setpoint (may be too low)
- Measure actual load current
- Check for short circuits
- Verify load is within PSU capability
- Check startup inrush current
- Increase current limit if safe
High Ripple/Noise
Problem: Output voltage shows excessive noise
Solutions:
- Check output capacitors on load
- Verify proper grounding
- Check for switching noise coupling
- Measure with proper techniques (bandwidth limiting)
- Add output filtering if needed
Temperature Warning
Problem: PSU reports over-temperature
Solutions:
- Reduce output current
- Improve cooling/airflow
- Check ambient temperature
- Verify thermal sensor working
- Allow cooldown period
Best Practices
- Always Set Current Limit: Protection against shorts
- Monitor First Power-On: Watch for unexpected behavior
- Gradual Voltage Ramp: Use slew rate for sensitive loads
- Verify Before Enabling: Double-check setpoints
- Label Outputs: Use aliases for clear identification
- Document Settings: Record working configurations
- Regular Calibration: Verify accuracy periodically
- Safe Shutdown: Power down in reverse of power-up sequence
See Also
- Channel Management - Individual PSU channels
- Bus Transactions - PMBus transactions
- AccordionShell pmbus - PMBus programming
- AccordionShell set - Set PSU values
- System Settings - Configuration
- Troubleshooting - Common issues