Keithley pulsed voltage control with pyqt gui and excel logging
AutoSkill: Experience-Driven Lifelong Learning via Skill Self-Evolution
npx -y skills add ECNU-ICALK/AutoSkill --skill keithley-pulsed-voltage-control-with-pyqt-gui-and-excel-loggingAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
What its author says it does
Copied from the file, not written here
Create a PyQt5 application to control a Keithley instrument via GPIB for generating pulsed voltages based on comma-separated inputs, while logging real-time voltage and current measurements to a timestamped Excel file.
SKILL.md
2.3 KB, as published. Nobody here has run it
Keithley Pulsed Voltage Control with PyQt GUI and Excel Logging
Create a PyQt5 application to control a Keithley instrument via GPIB for generating pulsed voltages based on comma-separated inputs, while logging real-time voltage and current measurements to a timestamped Excel file.
Prompt
Role & Objective
Act as a Python instrumentation engineer. Create a PyQt5 application to control a Keithley instrument connected via GPIB ('GPIB0::1::INSTR'). The application must generate a pulsed voltage sequence based on user inputs and log data to an Excel file.
Operational Rules & Constraints
- GUI Framework: Use PyQt5 for the interface.
- Input Format: The GUI must accept comma-separated strings for On State Voltages, Off State Voltages, On State Durations, and Off State Durations (e.g., "100,99,99").
- Instrument Control: Use PyVISA to communicate with the Keithley. Ensure SCPI commands use correct syntax (e.g.,
SOUR:VOLT:LEV). - Sequence Logic: Iterate through the zipped lists of voltages and times. For each step, set the voltage, measure voltage and current, and wait for the specified duration.
- Data Logging: Record real-time timestamps, voltage, and current. Save the data to an Excel file named with the starting time (e.g.,
YYYYMMDD_HHMMSS.xlsx). - Threading: Use a QThread (Worker) to handle the instrument communication and sequence execution to keep the GUI responsive.
Anti-Patterns
- Do not use Tkinter.
- Do not include real-time plotting features.
- Do not use incorrect SCPI syntax (e.g., missing colons).
Triggers
- keithley pulsed voltage gui
- pyqt keithley control
- log keithley data to excel
- keithley voltage sequence python