系列文章目录
提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加
第二章 Python 横河功率计谐波数据读取
提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档
前言
逆变器测试经常需要测试谐波数据,机构多用横河功率计测试。谐波测试较为简单,可设定后自动测试、处理数据判断测试结果。数据生成csv文件,后续文章会继续讲解如何基于EXCEL的VBA快速处理生成报告。
一、需要准备什么?
WT系列功率计的类定义代码可翻看另一篇文章。
二、使用步骤
1.引入库
代码如下(示例):
import WT
import time
2.读入数据
代码如下(示例):
import WT
import time
try:
Output_Channel=["4","5","6"]
Output_Channel_int=[4,5,6]
Input_Channel=["1"]
Save_path="D:\\"
WT=WT.WT()
if WT.answer.find("YOKOGAWA,WT")==-1 :
print("error, can not find WT,please be sure WT can be connected")
exit(0)
WT.WT_Integrate(Status="reset")
WT.WT_HarSet(PLL="U" + Output_Channel[0],Order="1,50")
WT.WT_Range(Channel='all',Auto='1',Type="Voltage")
WT.WT_Range(Channel='all',Auto='1',Type="Current")
WT.WT_Update() #设置功率计记录数据间隔,即更新率
WT.SaveUpdate=200 #设置记录数据的时间间隔,WT类定义中,记录数据为电脑端不断读入,不是WT自己生成CSV。该参数不影响功率计的updateRate
WT_SaveItem1=["Urms","Irms","P","S","Q","PF","Idc","FreqU","I(k)","Ihdf(k)","Ithd","U(k)","Uthd"]
WT_SaveItem2=["F1","F2","F3","F4","F5","F6"]
##以下为设置功率计单/三相的接线方式,同时设置逆变器输入接线通道
if len(Input_Channel)==1:
WT.WT_UDF(1, "UDC(E"+Input_Channel[0]+")", "UDC"+Input_Channel[0], "V")
WT.WT_UDF(2, "IDC(E"+Input_Channel[0]+")", "IDC"+Input_Channel[0], "A")
WT.WT_UDF(3, "P(E"+Input_Channel[0]+")", "P"+Input_Channel[0], "W")
if len(Output_Channel)==1:
WT.WT_UDF(4, "WH(E"+Output_Channel[0]+")", "WH"+Output_Channel[0], "%")
WT.WT_UDF(5, "WH(E"+Input_Channel[0]+")", "WH"+Input_Channel[0], "%")
WT.WT_UDF(6, "WH(E"+Output_Channel[0]+")/"+"WH(E"+Input_Channel[0]+")", "EFF", "%")
elif len(Output_Channel)==3:
WT.WT_UDF(4, "WH(E"+Output_Channel[0]+")+"+"WH(E"+Output_Channel[1]+")+"+"WH(E"+Output_Channel[2]+")", 'WHSIGMA', "%")
WT.WT_UDF(5, "WH(E"+Input_Channel[0]+")", "WH"+Input_Channel[0], "%")
WT.WT_UDF(6, "(WH(E"+Output_Channel[0]+")+"+"WH(E"+Output_Channel[1]+")+"+"WH(E"+Output_Channel[2]+"))/"+"WH(E"+Input_Channel[0]+")", 'EFF', "%")
if "1" in Output_Channel[0]:
WT.WT_Wiring("P3W4,P1W2")
WT.WT_Wiring("P3W4,P1W2,P1W2,P1W2")
elif "2" in Output_Channel[0]:
WT.WT_Wiring("P1W2,P3W4")
WT.WT_Wiring("P1W2,P3W4,P1W2,P1W2")
elif "3" in Output_Channel[0]:
WT.WT_Wiring("P1W2,P1W2,P3W4,P1W2")
elif "4" in Output_Channel[0]:
WT.WT_Wiring("P1W2,P1W2,P1W2,P3W4")
elif len(Input_Channel)==2:
WT.WT_UDF(1, "UDC(E"+Input_Channel[0]+")", "UDC"+Input_Channel[0], "V")
WT.WT_UDF(2, "IDC(E"+Input_Channel[0]+")+"+"IDC(E"+Input_Channel[1]+")", "IDC"+Input_Channel[0]+"+IDC"+Input_Channel[1], "A")
WT.WT_UDF(3, "P(E"+Input_Channel[0]+")+"+"P(E"+Input_Channel[1]+")", "P"+Input_Channel[0]+"+P"+Input_Channel[1], "W")
if len(Output_Channel)==1:
WT.WT_UDF(5, "WH(E"+Input_Channel[0]+")+"+"WH(E"+Input_Channel[1]+")", "WH"+Input_Channel[0], "%")
WT.WT_UDF(6, "WH(E"+Output_Channel[0]+")/"+"(WH(E"+Input_Channel[0]+")+"+"WH(E"+Input_Channel[1]+"))", "EFF", "%")
WT.WT_UDF(4, "WH(E"+Output_Channel[0]+")", "WH"+Output_Channel[0], "%")
elif len(Output_Channel)==3:
WT.WT_UDF(5, "WH(E"+Input_Channel[0]+")+"+"WH(E"+Input_Channel[1]+")", "WH"+Input_Channel[0], "%")
WT.WT_UDF(6, "(WH(E"+Output_Channel[0]+")+"+"WH(E"+Output_Channel[1]+")+"+"WH(E"+Output_Channel[2]+"))/"+"(WH(E"+Input_Channel[0]+")+"+"WH(E"+Input_Channel[1]+"))", 'EFF', "%")
WT.WT_UDF(4, "WH(E"+Output_Channel[0]+")+"+"WH(E"+Output_Channel[1]+")+"+"WH(E"+Output_Channel[2]+")", 'WHSIGMA', "%")
if "1" in Output_Channel[0]:
WT.WT_Wiring("P3W4,P1W2")
WT.WT_Wiring("P3W4,P1W2,P1W2,P1W2")
elif "2" in Output_Channel[0]:
WT.WT_Wiring("P1W2,P3W4")
WT.WT_Wiring("P1W2,P3W4,P1W2,P1W2")
elif "3" in Output_Channel[0]:
WT.WT_Wiring("P1W2,P1W2,P3W4,P1W2")
elif "4" in Output_Channel[0]:
WT.WT_Wiring("P1W2,P1W2,P1W2,P3W4")
WT.SavePath=Save_path #文件保存路径
WT.WT_SaveSetting(Output_Channel_int, WT_SaveItem1, WT_SaveItem2, 40) # Output_Channel_int设置记录channel,WT_SaveItem1为常规数据存储设定,WT_SaveItem2为谐波数据设定,40为设置的最大记录谐波次数
WT.WT_Range(Channel='all',Auto='0',Type="Voltage")
time.sleep(5)
WT.WT_Range(Channel='all',Auto='0',Type="Current")
WT.Save_Name="谐波数据"
WT.Save_Stop=False
WT.WT_SaveFile()
WT.Save_Stop=True #用来给多线程测试用的标志,单线程设定False,可不管
except Exception as e:
print("异常退出:"+str(e)+" \n"+str(e.__traceback__.tb_lineno))
该代码只提供了类WT的一个使用思路,代码未验证。
总结
提示:这里对文章进行总结:
使用功率计仪器时,需先设置仪器的一系列参数,如谐波同步源、量程、连线方式、自定义参数、需要记录哪些数据等等。