Version 6 (modified by 10 years ago) (diff) | ,
---|
Back to RoblyerAPDTest
Downloads
Overview
The firmware installed on the HVPS board comprises of a serial command line interface that is used primarily to set the high voltage output of the board. Features include a voltage setting control loop, voltage regulation, and continuous monitoring of output voltage.
Setup
The serial interface can be accessed by connecting the board to a PC and using a terminal client such as PuTTY or minicom
Usage
When the board first receives power or is reset it will send the message "HVPS X.X" when X is the version number of the firmware. It will then issue a ">" prompt to indicate that the user may type commands. From here, commands are a string of ASCII characters terminated with \r'. Each command consists of a series of tokens separated by tabs or spaces. The first token is a command word, which is one or more letters long and may be either upper or lower case. The following tokens will always be numbers which may be either decimal or hex (e.g. 15 or 0xF).
A list of valid commands is given below.
Commands:
'Command | Action | Parameters | Working? | Function |
D value | Set DAC | _value_ = 0..4095 | Y | |
A channel | Read ADC | _chan_ = 0..n | Y | Read raw ADC value 0..1023 (Note 1) |
L value | Set LEDs | _value_ = 00, 01, 10, or 11 | Y | Write LED bits (1=on) for two LEDs |
V voltage | Set voltage | _volts_ = 0..500 | Y | Set high voltage desired at 25 dec C (Note 2) |
C | Read deg C | none | Y | Read temperature in deg C as i.e. "28.3" |
R | Read voltage | none | Y | Readback voltage as i.e. "253.4" |
M voltage | Set voltage limit | _volts_ = 0..500 | Y | Set high voltage upper limit (Note 3) |
P p i d | Set PID parameters | _p_ _i_ _d_ | N | Note 4 |
E | Enable PID | none | Y | Start PID (turn on high voltage) |
X | Disable PID | none | Y | Stop PID (turn off high voltage) |
I | Toggle continuous monitoring | none | Y | Displays an updating output voltage when D or V command is passed (Note 5) |
S | Status | none | Y | Display all settings etc in compact format |
T value | Temperature Regulation | Select ADC | Y | Select which ADC/ADC Receiver to regulate voltage with temperature for. |
Command Notes:
APD Temperature Regulation numbers
0 | Temperature Regulation off |
1 | S6045-05 |
2 | S8890-30 |
3 | S11519-30 |
4 | APD Receiver |
CLI Notes
- DAC and voltage setpoint are both forced to zero on startup.
- The maximum voltage limit can be bypassed by setting the DAC directly
- The control loop must be off in order to set the DAC, otherwise the voltage will revert to the setpoint
- The HV OUT LED should not be altered when the high voltage is on for obvious reasons.
- While the backspace key works in PuTTY, the arrow keys do not.
Firmware notes
- Temperature curves for APD are stored in eeprom
Voltage Setting Calibration
This Python script Two sets of data were generated, one for a sweep up from 0V to 500V and one from 500V to 0V
Recipes for Normal Operations
V 150 sets voltage to 150V (not enabled until next command) E turn on voltage R read back voltage X turn off voltage M 250 set maximum voltage limit (error if attempt to set above this) C read temperature in Deg C I enable continuous voltage monitoring (not implemented until E or V is pressed) E turn the voltage back on with continuous monitoring Q turn off continuous monitoring and return to the command prompt T 2 Set the voltage to regulate with temperature based on the temperature curve for the S8890-30