各种各样的开关电器被应用在航空、航天、交通及一般工业或民用领域,比如微动开关、按钮开关、转换开关、电源开关等。无论何种开关,都是常开触头和常闭触头的组合,这些触头被用来闭合或断开电路。触头经过一定时间的动作以后,会逐渐丧失正常的开闭功能,比如接触不良、触头不动作等,因此任何开关都存在使用寿命。运用在一般工业及民用领域的开关电器,对开关的寿命没有严格的要求,但如果开关被应用到航空、航天和交通等领域时,开关是否良好直接关系到飞机、轮船和汽车运行时的安全,所以必须对开关的寿命提出严格的要求,要求开关制造商标明开关的触头能正常开闭的次数,因此开关制造商在开关出厂前有必要对同一批号的产品进行抽查测试,以掌握开关的确切寿命。
1 开关寿命的人工测试方法
如图1所示,开关寿命的传统测试方法是,测试人员通过观察指示灯的亮或灭来判断触头的好坏。指示灯应有的亮或灭的状态是:当开关未动作时,与常开触头相连的指示灯熄灭,与常闭触头相连的指示灯点亮;当开关动作时,与常开触头相连的指示灯点亮,与常闭触头相连的指示灯熄灭。如果某个指示灯的状态未按要求变化,说明该指示灯对应的触头已坏。测试人员在测试时对开关的动作次数进行计数,当检查到某个触头损坏时开关动作的次数就是开关的寿命。
开关的寿命一般要求能够动作上万次,有的甚至几十万次,用传统的测试方法完成开关的测试至少存在以下两点不足:一是测试效率极低,因为要使测试人员能正确观察到多个指示灯(开关的触头一般有多个)状态的变化,开关动作的速度就不能过快,测试寿命上万次的开关需要的时间要几个小时,测试寿命几十万次的开关需要的时间要以天来计算;二是多个指示灯长时间的快速亮灭极易损伤测试人员的眼睛。由于这些不足,开关的生产厂迫切需要开关寿命的自动测试系统来取代传统的测试系统。
2 开关寿命的自动测试原理
开关寿命自动测试的原理图如图2所示。当触头K1闭合时,A点的电位应是高电位,当K1断开时,A点的电位应是低电位,因此图中A、B、C、D和E点的电位指示和对应指示灯的作用一样,可以用来指示触头的闭合或断开。从电平的角度来看,当A点是高电位时,A点输出高电平,指示K1闭合;当A点是低电位时,A点输出低电平,指示K1断开。因此,可以由数字量采集装置采集A、B、C、D和E处的电平,将这些电平信号输入到计算机中,由计算机中运行的专门程序判断各点的电平是否按要求改变,进而判断开关的触头是否正确断开或闭合。
3 开关寿命测试仪的设计
3.1 测试仪的硬件设计
测试仪的硬件原理图如图3所示,包括开关负载箱、LPC2138CPU和TG12864液晶显示模块。
开关负载箱的功能是,模拟开关的工作环境,输出能反映触头开闭状态并能被LPC2138CPU芯片采集的开关量。由于不同类型的开关使用的环境不同,有的使用在直流环境中,有的使用在交流环境中,甚至有的开关使用在大电流环境中,因此为了真实反映开关的工作情况,不同的开关应使用不同的负载箱,但各种负载箱的电路原理都与图2中虚线框部分相同。为减小干扰,在每个开关量信号的输出端并联一只104电容。
LPC2138CPU芯片是基于ARM的32位处理器,在本测试仪中处于核心地位,用于采集开关量数据、运用特定的算法判断开关触头的好坏以及将测试结果输出到液晶显示模块。由于开关的触头数一般不会超过32个,因此只将P0口配置成GPIO输入口,用于采集32位开关量数据,而P1口被配置成GPIO输出口,用于向液晶显示模块输出控制信息和数据信息。
TG12864是128×64的液晶显示模块,该模块与LPC2138CPU芯片的P1口接口,用于显示开关的测试次数,当有触点损坏时,还要显示坏触头的序号及开关的寿命。
3.2 测试仪的软件设计
测试仪软件的关键技术是,在采集开关量数据后正确判断开关的好坏和触头的好坏,因此设计测试仪软件关键在于设计如何判断开关好坏和触头好坏的算法以及如何实现算法。
(1)判断开关好坏的算法
CPU的采集频率要高于开关的动作频率,前后两次采集到的32位数据D0和D1可能是开关保持一个状态时采集到的两个数据,也可能是开关动作前后采集到的两个数据。在开关完好的情况下,如果D0和D1是在开关保持一个状态时采集到的,这两个数据应该完全相等,它们异或的结果是0。如果D0和D1是在开关动作前后采集到的,这两个数据的对应位应该相反,它们异或的结果是ffffffff。因此,开关完好时,D0和D1异或的结果只能是0和ffffffffh。如果结果不为0和ffffffffh,则表明开关已坏,但具体是哪些触头损坏,还需进一步判断。
由上述方法,设计出以下判断开关好坏的算法:
a.采集一个32位的开关量数据D0;
b.采集另一个32位的开关量数据D1;
c.求D0和D1的异或运算结果D2;
d.如果D2等于0,则各触头正常;
e.如果D2等于ffffffff,则各触头正常,开关的状态已经转换,开关动作的次数增加1;
f.如果D2等于0到ffffffff之间的任何数,表示有触头损坏,开关的寿命等于到此时开关动作的次数。
(2)判断触头损坏的算法
为了帮助工程技术人员查找问题,测试仪在测量出开关寿命的同时,还要能够判断出是哪些触头损坏,因此有必要设计一个判断触头损坏的算法进一步判断哪些触头损坏。方法如下,当异或运算结果不为0及ffffffffh时,必然某些二进制位为0,而另一些二进制位为1。从生产实践得知,开关的触头很少一起损坏,一般是较少的几个触头先损坏,这样就可以通过比较为0的二进制位数与为1的二进制位数来决定哪些位对应的触点损坏,比如,如果异或运算结果D2为“10000000011000000000000010000000”,则为0的位有28位,为1的位有4位,因此可以判定,为1的位对应的触头是坏触头,共有4个。由以上的方法得到下面判断触头损坏的算法:
a.计算D2中为0的二进制位的位数N0;
b.计算D2中为1的二进制位的位数N1;
c.如果N0》N1,则为1的二进制位对应的触头是坏触头,共有N1个,否则为0的二进制位对应的触头是坏触头,共有N0个。
(3)软件流程图
根据以上的测试算法,可以设计出实现开关寿命测试及触点好坏判断的软件流程图,如图4所示。count是开关寿命计数器变量,开关每正确动作一次,count增加1,开关损坏时count值就是开关的实际寿命。D0和D1是连续两次采集的数据。
4 结束语
在本项目中,基于嵌入式技术来设计开关寿命测试仪的硬件,比采用工控机+采集卡的方案节约成本,而且携带方便。通过使用专门的算法来实现开关寿命的测试,提高了测试效率和测试精度。在某航空集团的应用表明,该测试仪工作可靠、容易使用,适合在开关生产行业推广应用。
创新观点:本项目有两点创新,一是基于嵌入式技术来设计开关寿命测试仪的硬件,比采用工控机+采集卡的方案节约成本,而且便于携带;二是设计了专门的算法来判断开关的好坏和识别坏触头,具有一定的独到之处。
相关文章