Quantum Materials Data Acquisition and Processing QuDAP
, a Python-based and open-source software package, is designed to control and automate material characterizations based on the Physical Property Measurement System (PPMS). The software supports major hardware interfaces and protocols (USB, RS232, GPIB, and Ethernet), enabling communication with the measurement modules associated with the PPMS. It integrates multiple Python libraries to realize instrument control, data acquisition, and real-time data visualization. Here, we present features of QuDAP, including direct control of instruments without relying on proprietary software, real-time data plotting for immediate verification and analysis, full automation of data acquisition and storage, and real-time notifications of experiment status and errors. These capabilities enhance experimental efficiency, reliability, and reproducibility.
The software provides the benefits as summarized below:
-
Provide direct Python script communication and control of PPMS and instruments without using the built-in software, which improves the tunability and efficiency of the experiment.
-
Built-in demagnetization process before each measurement to enhance the reliability of the measurement.
-
Fully automated data acquisition and saving process with real-time plotting and progress visualization.
-
Save the data with specific identifiers to avoid data overwrite and record the experiment configuration of each measurement.
-
Real-time notification on the measurement status and program error through push notification, allowing the user to promptly identify and verify the experimental and parameter setup.
Note: This package is for academic and educational research (WITHOUT WARRANTIES or instrument issues; our software does not collect any data from users).
-
QuDAP
is compatible with Python 3.10 or newer. -
Hardware requirements:
i). Physical Property Measurement System from Quantum Design.
ii). GPIB cables, RS232, USB, or Ethernet.
iii). Supported instruments (Keithley 6221, Keithley 2182, etc.) or try out our software using the demo feature.
-
Software requirements:
i). OS: Windows 11.
ii). Dependencies: Listed in
pyproject.toml
(no defaultrequirements.txt
is included — see Generate Your Own Requirements File (Optional)).
- Experimental Features: QuDAP’s experimental modules require the Physical Property Measurement System (PPMS) and any associated hardware (e.g., VSM attachments).
- Data Processing: The processing and analysis tools can run without any specialized hardware, so you can analyze data offline without a live instrument.
QuDAP
is available via PyPi for Windows and can be installed by:
$ pip install QuDAP
or installed from source:
git clone https://github.com/CharlieGPA40/QuDAP.git
cd QuDAP
pip install .
If you prefer installing pinned dependencies (exact versions for reproducibility), you can create a 'requirements.txt' from the 'pyproject.toml' using pip-tools. This way, you control which versions get installed without QuDAP shipping a pre-generated file.
- Install 'pip-tools':
pip install pip-tools
- Compile dependencies from 'pyproject.toml':
pip-compile --output-file requirements.txt pyproject.toml
You have two primary options:
- Install 'pyproject.toml':
pip install .
This reads '[QuDAP] dependencies' in 'pyproject.toml' and installs the most recent compatible versions. 2. Install from your compiled 'requirements.txt' (for locked versions):
To run the program, run theQuDAP/StartGUI.py
or
$ python ./QuDAP/StartGUI.py
Check the docs
file to learn how to use the software.
Demonstration
More coming...
This project is contributed by:
- Chunli Tang (Auburn University, Auburn AL – Electrical and Computer Engineering: [email protected])
- Skai White - Hampton University, Hampton, VA USA
- Jingyu Jia - Great Neck South High School, Lake Success, NY USA
Advisor:
- Dr. Masoud Mahjouri-Samani (Auburn University – Electrical and Computer Engineering: [email protected])
- Dr. Wencan Jin (Auburn University – Physics Department: [email protected])