Skip to content

Commit bdfd2cc

Browse files
Readme updated
1 parent c4360d5 commit bdfd2cc

1 file changed

Lines changed: 9 additions & 15 deletions

File tree

README.md

Lines changed: 9 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -53,15 +53,10 @@
5353

5454
## Overview
5555

56-
**PICA (Python-based Instrument Control and Automation)** is a software suite designed to provide a robust framework for automating laboratory instruments in materials science and condensed matter physics research. The suite features a central graphical user interface (GUI), the **PICA Launcher**, which serves as a dashboard for managing and executing a variety of characterization experiments.
57-
58-
A key architectural feature is the use of **isolated process execution** for each measurement module via Python's `multiprocessing` library. This ensures high stability, prevents inter-script conflicts, and allows the main dashboard to remain responsive during long-running experiments.
59-
60-
> **⚠️ Important Note on Testing & Validation**
61-
>
62-
> This software is actively used for daily laboratory measurements and has been verified on physical instruments (Keithley, Lakeshore, etc.).
63-
>
64-
> Recently, significant updates were made to the codebase to integrate **Automated CI/CD Testing** (simulations and logic checks). While these automated tests pass successfully, the refactoring required for them may have introduced subtle timing or hardware-specific regressions. **A comprehensive round of manual validation on the physical instruments is currently underway** to ensure full operational stability.
56+
PICA (Python-based Instrument Control and Automation) is a modular, open-source software suite specifically designed to automate complex characterisation experiments and provide a robust framework for automating laboratory instruments in materials science and condensed matter physics research.
57+
Developed to operate as a custom laboratory-built measurement system, PICA provides a unifying graphical user interface (GUI) for orchestrating high-precision instruments, specifically Keithley SourceMeters/Nanovoltmeters, Lakeshore Temperature Controllers, and Keysight LCR Meters. The suite regulates the cryogenic environment to perform automated protocols such as temperature-dependent resistivity, current-voltage (I-V) characteristics, and pyroelectric current measurements.
58+
The suite features a central graphical user interface (GUI), the **PICA Launcher**, which serves as a dashboard for managing and executing a variety of characterisation experiments. Built to streamline data acquisition and enhance experimental reproducibility, PICA leverages Python's `multiprocessing` library to ensure high stability by isolating each measurement process.
59+
.
6560

6661
---
6762

@@ -92,10 +87,9 @@ The core design philosophy of PICA is the separation of concerns, implemented th
9287
---
9388

9489
## Core Features
95-
90+
- **Modular Design:** Each experimental setup is a self-contained module, making the codebase easy to extend.
9691
- **Centralized Control Dashboard:** A comprehensive GUI for launching all measurement modules.
9792
- **Integrated VISA Instrument Scanner:** An embedded utility for identifying and troubleshooting GPIB/VISA connections via the NI-VISA backend.
98-
- **Modular Design:** Each experimental setup is a self-contained module, making the codebase easy to extend.
9993
- **Embedded Documentation:** In-application viewer for technical manuals and project guides.
10094
- **System Console Log:** A real-time logging system that provides status updates and error diagnostics.
10195

@@ -143,7 +137,7 @@ PICA is now structured as a standard Python package. Follow these steps to insta
143137
pip install -e .
144138
```
145139

146-
## 🖥️ Running the Software
140+
## ��️ Running the Software
147141

148142
You can now run PICA in two modes: the standard Graphical User Interface (GUI) or the new Command Line Interface (CLI) for headless operation.
149143

@@ -161,7 +155,7 @@ You can now run PICA in two modes: the standard Graphical User Interface (GUI) o
161155

162156
---
163157

164-
## 🧪 Running Tests
158+
## �� Running Tests
165159

166160
This repository includes a robust test suite using `pytest`. It mocks hardware interactions and GUI components, allowing the logic to be verified in a headless environment (CI).
167161

@@ -189,7 +183,7 @@ To run the tests locally:
189183

190184
PICA has evolved from a collection of offline utility scripts into a modular software suite. The development timeline highlights the shift from manual instrument handling to a fully automated, asynchronous control system.
191185

192-
> **📜 Project Lore:** For a detailed chronological log of the project's development history, including the offline prototyping phase and specific version changelogs, please refer to [`Change_Logs.md`](Change_Logs.md).
186+
> **�� Project Lore:** For a detailed chronological log of the project's development history, including the offline prototyping phase and specific version changelogs, please refer to [`Change_Logs.md`](Change_Logs.md).
193187
194188
---
195189
[1.0.1] - 2025-12-02 (Current)
@@ -232,7 +226,7 @@ This period marked the transition to the **GUI-Backend isolated architecture**.
232226
233227
---
234228
235-
## 📚 Resources & Documentation
229+
## �� Resources & Documentation
236230
237231
* **User Manual:** Detailed setup and troubleshooting guides are available in [docs/User_Manual.md](docs/User_Manual.md).
238232
* **Instrument Manuals:** Original PDF manuals for the supported hardware are located in `assets/Manuals/`.

0 commit comments

Comments
 (0)