Initial MPPT testbench: unified CLI for IT6500D + Prodigit 3366G + HIOKI 3193-10

Combines three instrument drivers (as git submodules) into a single
testbench for MPPT tracker efficiency testing. Features:
- Voltage sweep and load current sweep with CSV export
- Auto-range aware meter polling (waits for HIOKI to settle)
- Supply keepalive during long meter waits to prevent USB-TMC timeouts
- Live monitoring with real-time 4-panel matplotlib graphs
- Safe shutdown (load first, then supply)
- Post-sweep returns to 75V idle with supply ON

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-03-11 13:19:18 +07:00
commit e55caa59b1
10 changed files with 1672 additions and 0 deletions

26
pyproject.toml Normal file
View File

@@ -0,0 +1,26 @@
[project]
name = "mppt-testbench"
version = "0.1.0"
description = "MPPT tracker testbench: IT6500D (solar sim) + Prodigit 3366G (load) + HIOKI 3193-10 (power analyzer)"
requires-python = ">=3.12"
dependencies = [
"matplotlib>=3.10.8",
"pyvisa>=1.16.2",
"pyvisa-py>=0.8.1",
"pyserial>=3.5",
]
[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
[tool.hatch.build.targets.wheel]
packages = ["testbench"]
[tool.hatch.build.targets.wheel.force-include]
"IT6500D/it6500" = "it6500"
"PRODIGIT-3366G/prodigit3366g" = "prodigit3366g"
"HIOKI-3193-10/hioki3193" = "hioki3193"
[project.scripts]
mppt = "testbench.cli:main"