Skip to content

Commit 745e425

Browse files
some changes
1 parent 79a2736 commit 745e425

1 file changed

Lines changed: 12 additions & 9 deletions

File tree

paper/paper.md

Lines changed: 12 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ tags:
88
- condensed matter physics
99
- cryogenics
1010
- scpi
11+
- instrumentation
1112
authors:
1213
- name: Prathamesh Deshmukh
1314
orcid: 0009-0008-3278-0837
@@ -32,31 +33,33 @@ bibliography: paper.bib
3233
PICA (Python-based Instrument Control and Automation) is a modular, open-source software suite designed to automate complex characterisation experiments in condensed matter physics. PICA is designed as a versatile framework capable of operating on any standard laboratory workstation.
3334
It provides an extensible unified graphical user interface (GUI) for orchestrating high-precision instruments, specifically source-measure units, nanovoltmeters, temperature controllers, and LCR metres.
3435

36+
Built on the robust Python scientific ecosystem, PICA leverages community standard libraries as an alternative to licenced commercial software for instrument control.
37+
By utilising threading and multiprocessing capabilities, PICA ensures that the entire hardware ecosystem functions as a single cohesive unit. This allows the system to perform automated protocols, including temperature-dependent resistivity, current voltage (I-V) characterisation, and pyroelectric current measurement, without requiring physical reconfiguration of the measurement setups.
3538
The suite supports characterisation across a vast resistance range of 24 orders of magnitude (10 nΩ to 10 PΩ) and orchestrates measurements under varying magnetic fields and temperatures.
36-
Python was chosen for its free, open source nature, cross-platform capabilities, and extensive ecosystem of over 100,000 packages, offering a powerful, community-supported alternative to licensed commercial software for instrument control.
3739

38-
By utilising threading and multiprocessing capabilities, PICA ensures that the entire hardware ecosystem functions as a single cohesive unit. This allows the system to perform automated protocols, including temperature-dependent resistivity current voltage (I-V) characterisation and pyroelectric current measurement, without requiring physical reconfiguration of the measurement setups.
3940

4041

4142
# Statement of need
4243

4344
Advancements in experimental physics depend on the precise characterisation of material properties under extreme physical conditions. Researchers have to choose between expensive proprietary visual programming software or developing a custom measurement script from scratch.
4445

45-
While powerful ecosystem libraries such as PyVISA [@grecco2023pyvisa] and PyMeasure [@pymeasure_2025] provide the foundational drivers for instrumental communication, they are fundamentally software libraries that require the user to write and maintain code. This creates a technical barrier for researchers who lack programming expertise. PICA addresses this gap by functioning as a turnkey application rather than a library. It offers a "ready-to-run" graphical interface that abstracts the underlying control logic, allowing experimentalists to focus on data acquisition without needing to develop custom software scripts for the supported hardware configurations.
46+
While powerful ecosystem libraries such as PyVISA [@grecco2023pyvisa] and PyMeasure [@pymeasure_2025] provide the foundational drivers for instrumental communication, they are fundamentally software libraries that require the user to write and maintain code. This creates a barrier to entry for researchers requiring immediate data acquisition without the overhead of developing and maintaining a custom codebase.
4647

47-
The software was specifically developed to control a multifunctional, custom-designed probe inserted into the Physical Property Measurement System (PPMS), enabling fully user-defined measurement protocols across the temperature range of 5 K to 350 K. It eliminates the need to alter the measurement setup for full characterisation, handling everything from Delta mode (low resistance) to high impedance electrometry. The primary goal of PICA was to facilitate the precise characterisation of materials ranging from low-noise superconductors to high-band gap insulators (covering 24 orders of magnitude in resistance) using a single unified framework.
48+
PICA addresses this gap by functioning as a turnkey application rather than a library. It offers a "ready-to-run" graphical interface that abstracts the underlying control logic, allowing experimentalists to focus on data acquisition without needing to develop custom software scripts for the supported hardware configurations.
49+
50+
While originally developed to control a multifunctional, custom-designed probe inserted into the Physical Property Measurement System (PPMS), PICA's architecture enables fully user-defined measurement protocols across the temperature range of 5 K to 350 K. It eliminates the need to alter the measurement setup for full characterisation, handling everything from Delta mode (low resistance) to high impedance electrometry. The primary goal of PICA was to facilitate the precise characterisation of materials ranging from low-noise superconductors to high-band gap insulators (covering 24 orders of magnitude in resistance) using a single unified framework.
4851

4952
The system is currently validated with industry-standard hardware, including the Keithley 6221 Current Source, Keithley 2182 Nanovoltmeter, and Keithley 6517B Electrometer.
5053

51-
While the current implementation drives specific instruments, the underlying framework is universal. Researchers using different hardware models need only replace the specific SCPI commands with their instrument equivalent commands to utilise the suite.
54+
While the current implementation drives specific instruments, the underlying framework is hardware agnostic. Researchers using different hardware models need only replace the specific SCPI commands with their instrument equivalent commands to utilise the suite.
5255

5356
It differentiates itself through the following unique features:
5457

5558
* **Accessibility:** A professional dashboard that allows researchers without coding experience to configure and run a complex measurement protocol immediately using the suite's pre-packaged measurement modules.
5659

57-
* **Physical Validation:** PICA's protocols are actively used for cryogenic transport measurements (80K - 320K) at the UGC DAE Consortium for Scientific Research, Mumbai Centre, validating the software's core architecture in a real-world research environment and providing a stable, tested foundation for the university and researchers to build upon.
60+
* **Operational Validation:** PICA's protocols are actively used for cryogenic transport measurements (80K - 320K) at the UGC DAE Consortium for Scientific Research, Mumbai Centre, validating the software's core architecture in a real-world research environment and providing a stable, tested foundation for the university and researchers to build upon.
5861

59-
* **Process Isolation:** PICA deploys a `multiprocessing` architecture that runs instrumentation control logic in an isolated process. This ensures that hardware timeouts or driver crashes do not freeze the main dashboard, a common issue in single-threaded Python scripts.
62+
* **Fault Tolerance:** PICA prevents hardware timeouts or driver crashes from freezing the main dashboard by isolating control logic from the user interface, a critical advantage over single-threaded scripts
6063

6164
* **Modular CLI Architecture:** As demonstrated in the repository, measurement modules also contain CLI measurement module counterparts that allow researchers to utilise PICA's measurement protocol and logic for headless automation or integration into other workflows without GUI overhead.
6265

@@ -73,7 +76,7 @@ PICA is built on a modular architecture characterised by self-contained modules,
7376

7477
### Process Isolation and Concurrency
7578

76-
Unlike simple script-based automation, PICA decouples the User Interface (UI) from the instrumentation control logic. It utilises Python's standard 'multiprocessing' libraries to spawn isolated processes for measurement tasks.
79+
Unlike simple script-based automation, PICA decouples the User Interface (UI) from the instrumentation control logic. It utilises Python's standard `multiprocessing` libraries to spawn isolated processes for measurement tasks.
7780

7881
* **Stability:** If an instrument hangs or a communication bus times out, the isolated process can be terminated safely without freezing the main GUI or losing previous data.
7982

@@ -87,7 +90,7 @@ PICA utilises **PyVISA** [@grecco2023pyvisa] to abstract the low-level communica
8790

8891
1. **Connection Verification:** A built-in "VISA Instrument Scanner" queries the bus (`*IDN?`) to map the connected instrument addresses.
8992

90-
2. **Instrument Reset Protocol:** To eliminate the influence of all previous experiments, all stored data, cache in buffers, and existing settings or configurations are explicitly reset, thereby providing a clean initial state before each measurement.
93+
2. **Instrument Reset Protocol:** To eliminate the influence of all previous experiments, all stored data, instrument buffers, and existing settings or configurations are explicitly reset, thereby providing a clean initial state before each measurement.
9194

9295
3. **Graceful Shutdown:** A "Safety Shutdown Routine" logic ensures that sources are ramped down to zero and heaters are disabled safely, even if the software is interrupted unexpectedly.
9396

0 commit comments

Comments
 (0)