问题
以下一则 Python 示例演示了如何将 IQ 数据文件从频谱分析仪传输至控制器电脑并使用 VSE 信号分析软件打开。
有关测试与测量设备远程控制的更多信息,请参阅设备的使用手册和罗德与施瓦茨网站:
https://www.rohde-schwarz.com/driver-pages/remote-control/drivers-remote-control_110753.html
以下一则 Python 示例演示了如何将 IQ 数据文件从频谱分析仪传输至控制器电脑并使用 VSE 信号分析软件打开。
有关测试与测量设备远程控制的更多信息,请参阅设备的使用手册和罗德与施瓦茨网站:
https://www.rohde-schwarz.com/driver-pages/remote-control/drivers-remote-control_110753.html
以下一则 Python 示例演示了如何将 IQ 数据文件从频谱分析仪传输至控制器电脑并使用 VSE 信号分析软件打开。
使用以下工具进行测试:
作者:罗德与施瓦茨支持部门 ─ MP
更新时间:2021 年 1 月 22 日
版本:v1.3
技术支持 -> https://www.rohde-schwarz.com/support
运行之前,请检查脚本是否存在不当设置!
本示例并不完整。所有信息均
精心编写, 但不保证无任何错误。
import pyvisa
rm = pyvisa.ResourceManager()
# 根据仪器调整合适的 VISA 资源字符串
instr = rm.open_resource('TCPIP::192.168.0.1::INSTR') # 替换为您的 IP 地址
instr.write_termination = '\n'
instr.read_termination = '\n'
instr.timeout = 3000
vse = rm.open_resource('TCPIP::127.0.0.1::INSTR') # 请勿更改本地主机
vse.timeout = 3000
vse.write('*RST')
vse.query('*OPC?')
instr.write('*RST')
instr.query('*OPC?')
instr.write('*CLS')
instr.write('INIT:CONT OFF')
print('\n' + instr.query('*IDN?'))
instr.write('FREQ:CENT 1e9')
instr.write('DISP:TRAC:Y:RLEV 0')
instr.write('TRAC1:IQ ON')
instr.write('TRAC1:IQ:SRAT 32 MHZ')
instr.write('TRAC1:IQ:RLEN 691') # 范围:1...209715200(200*1024*1024)
instr.query('*OPC?')
filePathPc = r"c:\temp\data.iq.tar"
filePathInstr = r"c:\temp\dev_data.iq.tar"
instr.write('INIT')
instr.query('*OPC?')
# 将 IQ 数据文件保存到仪器硬盘
instr.write(f'MMEM:STOR:IQ:STAT 1, "{filePathInstr}"')
# 请求获取仪器中的文件数据并保存到本机硬盘
fileData = bytes(instr.query_binary_values(f'MMEM:DATA? "{filePathInstr}"', datatype='s'))
newFile = open(filePathPc, "wb")
newFile.write(fileData)
newFile.close()
print(instr.query('SYST:ERR?'))
instr.close()
# 将文件加载到 VSE 软件
vse.write(f'MMEM:LOAD:IQ:STAT 1, "{filePathPc}"')
vse.close()