VUV code overview
User interface
The user interface is written using PyQt5 - python binding for Qt v5.
The interface is divided into three sections.
- Setup control - Displays current value of slow control parameter and their evolution since the start of measurement. Also provides an interface to control the motor in the allowed range.
- Measurement - New measurements can be scheduled and started using this page. The details of the measurement completed are also shown in the bottom half of the page.
- Results - Completed measurements from the current run can be accessed with a simple plot showing the count rate of photons measured by the SiPM. It is also possible to add existing measurements by providing the directory where the measurements are saved.
Motor control
The stepper motor is controlled using Arduino.
Pressure
The pressure is measured using MPT 200 and can be read visually from the inbuilt display. But, the pressure can also be read via serial connection.
Temperature
The temperature of the sample will be measured using a PT 100 sensor. The resistance of PT100 is 100 Ω at 0°C and increases linearly with temperature (138.5 Ω at 100°C).
Using another resistor (1 kΩ) in series with the PT100 and applying known voltage (3.3 V) on the PT100, the voltage drop on PT 100 can be estimated. The external resistor is connected to the ground and the voltage between the resistor and PT100 is measured (as shown in [1]).
The voltage V can be converted to the resistance R of PT100 using:
R = (V)*1000 / (3.3-V).
Now, the temperature T of PT100 can be calculated from R as:
T = (R - 100) / 0.385,
where the factor 0.385 is calculated using R100°C = R0°C ( 1 + α*100°C ).
Note - The circuit is perhaps too simplistic [2] and we should check if the temperature reading is accurate enough for our setup.