VISA 仪器调试
用途
本技能用于在需要调试 GPIB/USB/TCP/Serial VISA 仪器通信时使用,帮助识别和探测连接的 VISA 仪器(如示波器、万用表、信号源等),并进行仪器级测量验证。
主要能力
- 探测连接的 VISA 仪器
- 发送 SCPI 命令查询或控制仪器
- 从示波器捕获波形数据并保存为 CSV
- 捕获仪器屏幕截图
- 持续监控某个测量值的变化
必要输入
- VISA 资源字符串,例如 TCPIP::192.168.1.100::INSTR、USB0::0x1AB1::0x04CE::DS1ZA1234::INSTR
- SCPI 命令(查询、写入、监控模式需要)
依赖
- pyvisa(pip install pyvisa)
- pyvisa-py(纯 Python 后端,pip install pyvisa-py)或 NI-VISA 驱动
使用方式
先阅读 references/usage.md 确认操作参数,然后探测环境:
python scripts/visa_tool.py --detect
根据需求执行操作:
# 查询仪器标识
python scripts/visa_tool.py --resource "TCPIP::192.168.1.100::INSTR" --idn
# 发送 SCPI 查询
python scripts/visa_tool.py --resource "TCPIP::192.168.1.100::INSTR" --query ":MEAS:VOLT?"
# 捕获波形
python scripts/visa_tool.py --resource "TCPIP::192.168.1.100::INSTR" --waveform --output wave.csv
失败分流
- connection-failure:VISA 资源未找到或无法打开连接。
- timeout:仪器未响应。
- command-error:SCPI 命令被仪器拒绝。
- data-error:波形或截图数据传输失败。
输出约定
示例输出格式:
结果: ✅ Rigol Technologies,DS1054Z,DS1ZA1234,00.04.04.SP4
资源: TCPIP::192.168.1.100::INSTR
交接关系
- 从 build-keil / build-platformio 烧录固件后,用此技能验证硬件输出信号。
- 与 serial-monitor 互补:serial-monitor 查看串口调试输出,visa-debug 进行仪器级测量验证。
- 与 modbus-debug / can-debug 互补:协议调试配合仪器测量。