Speaker
Description
Automating measurements is an increasingly important skill in experimental physics for laborious and repetitive tasks. A typical automation process uses Python to create interfacing modules for controlling and reading instruments. However, even if the modules are experiment-agnostic, the top-level experimental control scripts are often highly specialised, acting as instruction sequences instead of an interactive instrument console. Where real-time data visualisation is needed, the control scripts become complicated quickly, with graphical user interfaces (GUI) that are difficult to adapt for different setups. To address this problem, we introduce a drop-in live plotting Python module with a generalised input format; a “data logger” control script uses it to generate asynchronous live plot windows while still controlling instruments via simple interactive shell function calls. If desired, a separate GUI wrapper can then be applied on top of the data logger. We demonstrate this scheme of work in the context of single-photon source experiments and show its versatility with different experimental configurations.