情况说明,现在有一个电流采样放大器,输入信号是一个占空比信号,我要去看电流采样放大器的线性度怎么样,所以就做了个这么一个小东西。
接线框图如下图所示:
图1:接线框图
表1:使用的仪器仪表
信号发生器 | KEYSIGHT 33500B |
万用表 | KEITHLEY THD2015 |
电源 | KEYSIGHT E36312A |
mport time
import pyvisa
import serial
import logging
import random
TestStep=100
#设置Logging的格式
logging.basicConfig(level=logging.INFO, filename='coder.log', filemode='a',
format='%(asctime)s- %(levelname)s: %(message)s')
logLevel=logging.StreamHandler()
logLevel.setLevel(level="INFO")
logger = logging.getLogger('simpleExample')
#打开资源管理器
rm = pyvisa.ResourceManager()
#打印计算机现有的资源
print(rm.list_resources())
#打开资源并命名成想要命名的名字
E_Source=rm.open_resource('USB0::0x2A8D::0x1102::MY61002562::INSTR')
DMM=rm.open_resource('GPIB0::4::INSTR')
WaveGen=rm.open_resource('GPIB0::10::INSTR')
#设置电源参数
E_Source.write("INST P25V")
E_Source.write("VOLT 13.3")
#设置电压范围 x 代表电压
for x in range(15,40):
#
E_Source.write("VOLT "+str(x))
for y in range(0,99):
#设置占空比
WaveGen.write('SOURce1:FUNCtion:SQUare:DCYCle '+str(y))
#读取信号发生器占空比 型号:33500b
duty=WaveGen.query('SOURce1:FUNCtion:SQUare:DCYCle?')
#等待两S数据稳定
time.sleep(2)
#万用表查询电压值
Voltage = DMM.query("MEAS:VOLT:DC?")
#记录占空比 芯片输出电流 直流源给定电压
logger.info("DUTY: "+duty+"IPROP: "+Voltage+"DC SOURCE V:"+str(x))
参考文档
Keysight Trueform Series Operating and Service Guide
点点关注不迷路
我的公众号