Skip to content

GitLaughs/waveforms-lab-toolkit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

WaveForms Lab Toolkit 社区版

面向使用 Digilent WaveForms / Analog Discovery 的模电实验自动化工具集。

本仓库整理了通用 DWF SDK 脚本、MOS 放大器实验示例脚本、Codex skill。

搜索关键词

Digilent WaveForms、Analog Discovery、DWF SDK、dwf.dll、Wavegen、Oscilloscope、CH1/CH2、CSV waveform analysis、Python automation、electronics lab、analog circuit、MOS amplifier、common source、source follower、common gate、frequency response、gain phase clipping、Codex skill、WaveForms 自动化、模电实验脚本、示波器采集、波形发生器、共源极放大、源极跟随器、共栅极放大、两级级联放大。

内容

scripts/
  probe_waveforms.py          # 检查 WaveForms / dwf.dll / 设备连接
  wavegen_scope_capture.py    # W1 正弦输出 + CH1/CH2 示波器采集
  analyze_waveform_csv.py     # 分析 WaveForms 导出 CSV
examples/
  experiment3_mos/            # 单级 MOS 放大器实验脚本、输入电阻测量与 WaveForms 工作区打包工具
  experiment4_cascade/        # 两级级联 MOS 放大器实验脚本
skills/
  waveforms-control/          # Codex skill:WaveForms 控制工作流
docs/
  github中文教程.md           # 从安装到提交 GitHub 的完整教程
  关键词工作流.md             # 关键词、触发语、常见任务模板

快速开始

  1. 安装 Digilent WaveForms。
  2. 接入 Analog Discovery。
  3. 用 Python 运行环境探测:
python .\scripts\probe_waveforms.py
  1. 先干跑,不输出硬件信号:
python .\scripts\wavegen_scope_capture.py --frequency 5000 --vpp 0.1 --seconds 0.02 --sample-rate 100000 --out .\capture.csv --dry-run
  1. 确认接线和幅度后,再显式加 --run
python .\scripts\wavegen_scope_capture.py --frequency 5000 --vpp 0.1 --seconds 0.02 --sample-rate 100000 --out .\capture.csv --run

WaveForms 工作区打包

examples/experiment3_mos/ 包含 MOS 放大器采集脚本、绘图脚本和离线打包脚本,便于把已测 CSV、导入脚本、预览图和 .dwf3work 工作区整理成可打开的实验包:

python .\examples\experiment3_mos\create_waveforms_workspaces.py
python .\examples\experiment3_mos\build_waveforms_openbox.py
python .\examples\experiment3_mos\save_waveforms_projects.py --help

其中 build_waveforms_openbox.py 会生成 live preset 和旧 CSV reference 双模式启动器;默认 live preset 只配置 WaveForms 窗口,不会自动开启输出,旧数据查看需使用 --import-csv

实验三脚本更新

新增或刷新这些脚本:

examples/experiment3_mos/build_waveforms_openbox.py
examples/experiment3_mos/measure_common_gate_input_resistance.py
examples/experiment3_mos/measure_common_gate_output_resistance.py
examples/experiment3_mos/plot_common_gate_input_resistance.py
examples/experiment3_mos/plot_common_gate_output_resistance.py
examples/experiment3_mos/plot_report_waveforms.py
examples/experiment3_mos/redraw_static_bias_plots.py

measure_common_gate_input_resistance.pymeasure_common_gate_output_resistance.py 用于共栅极输入/输出电阻测量,默认只打印 dry-run 计划;只有显式加 --run 才会启用电源、W1 和示波器采集。绘图脚本只读取本地 CSV/JSON,不启用硬件输出;运行绘图脚本需要本地已有对应采集文件,并安装 matplotlib / numpy

GitHub Actions 工作流

仓库包含 .github/workflows/python-ci.yml,会在 push 和 pull request 时运行 Python 语法检查:

python -m compileall scripts examples

安全边界

  • 所有硬件输出必须显式使用 --run
  • 默认先用 --dry-run--demo
  • 模电放大器实验先用小信号,例如 0.05 Vpp0.1 Vpp
  • 脚本结束时应关闭 W1、W2、电源和设备句柄。
  • 不确定接线时,只运行 probe_waveforms.py 和 CSV 离线分析。

开源协议

本项目使用 MIT License,详见 LICENSE

About

Digilent WaveForms, Analog Discovery, DWF SDK, Python automation, MOS amplifier lab scripts, CSV waveform analysis, Codex skill

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages