基于Python的插头放电计算器设计与实现
2023-08-04何浩铭范建波林志雄
何浩铭 范建波 林志雄 罗 兵 李 俊
(珠海格力电器股份有限公司 珠海 519070)
引言
随着安全体系的完善和消费者安全意识的提高,防触电安全已经成为家电产品设计最为关注的方向之一。插头放电测试作为防触电评估的重要测试项目,一直受到家电产品开发人员的关注。
GB 4706.1-2005 《家用和类似用途电器的安全 第1部分:通用要求》[1]中明确规定产品插头的残余电压不能超过34 V。若插头放电测试结果超出标准要求的电压限值,产品将存在人员触电隐患,且设计人员在试错性选型中需多次更换主板硬件,也变相延长了产品开发周期。
本文通过分析插头放电测试的影响因素,介绍如何利用Python 语言开发一款集插头放电仿真计算、X 电容选型和放电电阻选型功能为一体的计算器,目的在于给产品开发人员提供选型指导和仿真计算,在提高产品测试效率的同时缩短了产品的开发周期。
1 插头放电测试的影响因素分析
导致插头放电测试结果异常的常规因素包括:示波器探头选用、X 电容选型、Y 电容选型、放电电阻选型、产品运行模式选择等[3]。下面具体分析各因素的影响。
1.1 示波器探头对插头放电的影响
目前插头放电主要测试设备为示波器和峰值断开装置,测试设备连接如图1 所示[2]。产品在额定工作电压状态下通过峰值断开装置使产品电源从峰值断开,然后利用示波器抓取峰值断开1 s 时的残余电压值。
图1 插头放电设备连接示意图
CTI 决议NO.PSH-0716 规定,测试插头放电的示波器探头应满足内阻≥100 MΩ 以及寄生电容≤25 pF的要求。在测试过程中示波器探头以并联的方式接入电路[4],根据电阻并联公式(1)和电容并联公式(2)可知,探头的内阻越大或电容量越小,对测试结果的影响越小。公式如下:
式中:
R—插头等效电阻阻值,MΩ;
R0—探头内阻或放电电阻的阻值,MΩ;
R1—产品电路的等效电阻值,MΩ;
C—插头等效电容量,μF;
C0—探头寄生电容,μF;
C1—产品电路电容,μF。
由于探头寄生电容一般为pF 级别,对测试影响非常小,因此式(2)中的插头电容C 近似等于主板电容C1。
1.2 X 电容对插头放电的影响
X 电容跨接在开关电源L-N 之间,用于抑制电源差模干扰。在选型方面,开发人员通常选择电容量更大的X 电容以满足电磁兼容的需求,致使产品插头L-N 之间的电容量普遍大于0.1μF。根据RC 放电原理,插头放电可用以下公式表示:
结合式(1),得到:
式中:
Ut—t 秒后插头的残余电压,V;
U0—插头峰值电压,V;
exp—自然常数;
t—测量时间,s;
k—修正系数,默认为1,可通过对比实测值和计算值设定。
由上式可知,当其余参数一定时,X 电容的电容量越大,插头L-N 之间的残余电压越大。
1.3 Y 电容对插头放电的影响
Y 电容跨接在电源火线L 和地线G 之间以及零线N和地线G 之间,用于抑制电源共模干扰,为了确保Y 电容在击穿或短路的情况下对人体不产生电击危险,Y 电容必须在L-G 之间和N-G 之间成对出现,Y 电容的电容量和放电量计算公式如下:
式中:
I—L/N 对地漏电流,mA;
f—产品额定电源频率,Hz;
CY—Y 电容的电容量,mF;
U—产品额定电压,V。
内销家电产品最大允许漏电流3.5 mA(电热器具为5.0 mA)[2],根据公式(5)和家电产品电源规格,可以得出家电产品的Y 电容最大允许电容量为0.07μF<0.1μF,说明在正常选型的情况下,Y 电容对插头放电没有影响。
1.4 放电电阻对插头放电的影响
如图2 所示,放电电阻设置在主板的L-N 之间,与X 电容并联,用于主板断电后释放X 电容剩余电压[5]。
图2 采用RC 并联的滤波电路
由式(3)可知,当其余参数一定的条件下,放电电阻阻值越高,插头L-N 之间的残余电压越大,而导致这一现象的根本原因是放电电阻的阻值越大或者X 电容的放电功率越小,放电时间越长,推导公式如下:
综合上式,得到:
式中:
P—电阻放电功率,w;
Q—电容放电量,μC
T—放电时间常数,s;
W—X 电容的电功,J。
结合式(2)和式(8)可知,放电时间T 越短,放电速度越快,则插头断电1 s 时的残余电压越小。
根据公式(1),假设主板L-N 之间的等效电阻为1 MΩ,在增加阻值为0.1 MΩ 的放电电阻后,L-N 之间的阻值可降低至0.09 MΩ。
通过以上分析可知,降低放电电阻的阻值,可降低L-N 之间的等效电阻值,从而加快L-N 之间的放电速度。由于主板一般采用贴片电阻,为了避免单个电阻失效或短路对电路造成不良影响,通常采用桥式电路设计[1],如图3 所示,4 个阻值为330 kΩ 的电阻通过桥式组合在一起,总阻值仍为330 kΩ。
图3 放电电阻连接方式
1.5 产品运行模式对插头放电的影响
以某分体式空调为例,如图4 所示。某分体式空调通过内机主板继电器控制外机的通断电。在待机模式下,插头L-N 之间的电容量和电阻值是内机主板输入端L-N之间的电容量和电阻值。在制冷模式下,插头L-N 之间的电容量和电阻值则是内机和外机主板并联的电容量和电阻值,因此待机和制冷两种模式下插头的电容量和电阻值不一致,最终会导致两个模式下的插头放电测试结果存在差异。
图4 某空调供电原理
综上所述,产品在不同工作模式下所接通的电路不同,使得不同模式下主板L-N 之间的等效电容量和等效电阻值不一致,最终会影响插头放电测试的结果。
2 插头放电计算器的设计
根据插头放电测试的主要影响因素,利用Python 语言中的tkinter库和matplotlib库开发一款集插头放电计算、插头放电曲线图绘制、X 电容选型、放电电阻选型等功能为一体的可视化计算器。其中tkinter 用于人机交互界面设计,matplotlib 用于放电绘图功能设计。计算器设计过程包括整体功能规划、界面设计以及计算逻辑设计三个部分。
2.1 计算器整体功能规划
计算器应具有良好的人机交互功能,如图5 所示,计算器应能够对输入、输出内容作出相应的判断和提示,以指导使用人员输入正确的参数和选择使用对应的功能。
图5 计算器功能设计流程
图6 插头放电计算器界面
2.2 界面设计
根据公式(1)可知,计算插头放电测试结果需要产品的额定工作电压、示波器探头阻值、主板电源零火线之间的阻值、主板电源L-N 之间的电容量以及测量时间六个参数。利用tkinter 库中的entry 输入框组件为计算器设计相应的六个输入窗口,将输入窗口的参数作为变量赋值给相应的函数,并设计四个名为“放电计算”、“放电绘图”、“X 电容选型”和“电阻选型”的button 组件分别用于输出插头放电计算值、插头放电放电图、X电容的电容量选型计算和放电电阻的阻值计算。最后利用lambda 表达式将相应功能的函数分别与四个功能按键进行绑定。当按键被按下时,相应的函数被执行,最后利用text.insert 组件将产生的计算结果显示在文本框中,并利用messagebox 组件设计相应的弹出提示。
放电绘图功能则通过matplotlib 库组件实现,界面整体设计效果如图(6)所示。
2.3 逻辑设计
完成计算器界面框架的搭建后,应进行各项功能计算逻辑的设计。计算器中的“放电计算”和“放电绘图”功能可直接使用公式(4)作为计算函数,而“X 电容选型”和“电阻选型”功能则要先将公式(3)分别转换成主板电容计算公式(9)和主板电阻计算公式(10),公式如下:
当主板电阻值确定时,主板X 电容的总电容量应小于式(9)中C 的值,而当主板X 电容量确定时,主板的总阻值应小于式(10)中R1的计算值。由于放电电阻、主板等效电阻和探头阻值三者为并联关系,因此放电电阻的阻值计算公式转化为式(11):
式(11)中:
R2—放电电阻的推荐阻值,MΩ,在实际选型中放电电阻的阻值应小于R2。
值得注意的是,主板电阻值可通过实际测量或者电路仿真测量得到。使用万用表测量主板电阻时,由于电解电容等元器件的影响,读数可能会持续上升,此时应读取1 min 后的稳定值。
3 效果验证
在完成软件功能设计后,通过对比仿真计算和实测结果,验证插头放电计算、X 电容选型、放电电阻选型功能是否满足需求。通过表1 可以得知,插头放电软件计算值与示波器实测值绝对误差均不超过2 V,可通过调整修正系数以提高计算准确度。通过表2 和表3 可以得知,软件的选型功能均能满足元器件实际选用要求。图7、图8、图9 分别为计算器仿真绘图、示波器实测波形图、软件输出效果演示图。
表1 某空调在不同模式下的插头放电情况
表2 插头放电计算值与实测值对比
表3 X 电容计算值与实际值对比
表4 放电电阻计算值与实际值对比
图7 计算器仿真波形
图8 示波器实测波形
图9 软件输出效果演示图
关键代码演示:
import matplotlib.pyplot as plt
import numpy as np
import tkinter as tk #导入相应的库
txt = tk.Text(win,height=20,width=45,font=(‘楷体’,15))
txt.grid(row=1,column=5,rowspan=20,columnspan=25) #输出框设计
a1 = tk.Entry(win, justify=tk.LEFT, width=15 , font=(‘楷体’, 15))
a1.grid(row=1,column=1) #额定电压输入框设计
def discharge(): #定义插头放电函数
volt = float(a1.get()) #获取额定电压输入框内容
Y = Vmax*np.exp(-(res1+res2)*X/(res1*res2*cap)) #放电计算逻辑
tkinter.messagebox.showinfo(‘插头放电超标风险提示’)#放电结果超标提示
BT1 = tk.Button(win, text=’ 放电计算’,justify=tk.CENTER, width=10, font=(‘楷体’,15),command = lambda discharge(),background=’mistyrose’) #利用lambda 表达式将相应功能的函数进行绑定。
4 结论
通过对插头放电测试影响因素进行分析,影响插头放电测试的主要因素包括:
1)示波器探头选用错误:探头内阻越小,插头放电测试准确度越低。
2)X 电容选型不合理:产品X 电容的容量大于0.1 μF,且电容量越大,插头的残余电压越高;
3)放电电阻选型不合理:放电电阻的阻值越大,放电速度越慢,插头的残余电压越高。
针对以上主要影响因素,利用Python 语言开发了一款集插头放电理论计算、X 电容选型指导、放电电阻选型指导功能为一体的计算器,经过效果验证,插头放电计算器所得到的理论计算值和实测值基本一致,能够满足开发使用需求,并且为插头放电仿真测试提供新的思路。