BNWAS静电放电抗扰度试验分析与改进措施

2019-07-23 01:46俞叶萍潘万欣
关键词:数码管寄存器指示灯

俞叶萍, 潘万欣

(上海船舶运输科学研究所 舰船自动化系统事业部,上海 200135)

0 引 言

静电放电抗扰度试验是中国船级社(China Classification Society,CCS)型式认可试验中电磁兼容类试验中的一个试验项目,目的是通过模拟带静电的人产生的静电放电效应来测试静电放电效应对受试设备的影响,以确保受试设备满足规范的要求[1]。驾驶室航行值班报警系统(Bridge Navigational Watch Alarm System,BNWAS)作为船舶航行安全设备,必须通过CCS型式认可试验,满足上船资质。

本文主要针对BNWAS在首次静电放电抗扰度试验过程中出现的数码管和指示灯瞬间全暗的现象和在试验之后出现的显示功能不能自动恢复的现象,对易受电磁干扰的MAX7219显示驱动电路进行软件和硬件分析,找出故障发生原因并采取相应的措施减少或消除该外部干扰。

1 BNWAS静电放电抗扰度试验

BNWAS受试设备静电放电抗扰度试验的试验条件和试验方法如下。

1.1 试验条件

1) 设备工作:受试设备在AC 220 V额定电压和50 Hz频率下工作,并接入DC 24 V应急电源。

2) 试验电压:接触放电6 kV。

3) 放电点:操作面板单元、I/O控制单元、选择单元、复位单元和报警单元的外壳、按钮及常规操作人员能接触到的点和面。

1.2 试验方法

将BNWAS受试设备放在金属接地平板上,并与其绝缘,用符合IEC 61000-4-2有关规定的静电放电发生器对操作人员在正常使用BNWAS受试设备过程中可能接触的点和面进行接触静电放电。

在试验过程中,静电放电发生器垂直于受试设备表面放置,在预选的放电点上施加6 kV的正负极性脉冲,以20次/s或20次/s以上的频率,每极性各10个脉冲放电,相邻2次放电的时间间隔大于1 s,观察受试设备是否发生故障[1]。试验连接框图见图1,实际试验场景见图2。

图1 试验连接框图

图2 实际试验场景

1.3 首次试验结果

BNWAS受试设备故障情况:当将静电放电发生器垂直作用在复位单元外壳上时,操作面板单元数码管和指示灯瞬间熄灭;当移开静电放电发生器之后,操作面板单元数码管和指示灯仍无法恢复显示功能。

2 试验分析

2.1 故障查找

试验之后,对BNWAS受试设备的功能进行检测,发现只有操作面板单元的显示功能丧失,其他功能均正常。操作面板单元显示电路由1块MAX7219芯片连接2个8段数码管和13个指示灯构成(见图3)。电路连接简单,在排除数码管和指示灯故障之后,MAX7219芯片成为故障定位点。

2.2 故障分析

在一般的实验室环境下,操作面板单元上的数码管和指示灯均正常显示,且能持续稳定运行。在静电放电抗扰度试验中出现数码管和指示灯全暗的现象,这主要是系统中加入6 kV电压的骚扰脉冲引起的,这种外部强干扰造成MAX7219不能正常工作。分析该故障发生的原因,主要有以下2点。

1) 内部缺少限制回转电流的段驱动,抗电磁兼容能力差。

MAX7219内部结构见图4[2],由于箭头所指的段驱动中没有采取限制回转电流的措施来减少电磁干扰(EMI),其本身的抗电磁兼容能力较差。

由于MAX7219是通过加在V+与ISET引脚之间的一个外部电阻来控制数码管和指示灯的显示亮度的,且内部的段驱动电流一般是流入ISET端电流的100倍[3],因此只要流入ISET端的电流上有毛刺或电源纹波,这些干扰就会直接进入实际驱动数码管和指示灯的段电流中,并与有效电流一起放大100倍。因此,在强干扰环境下,这些串入电流的尖刺会严重地干扰数码管和指示灯的正常显示。

图3 操作面板单元显示电路

图4 MAX7219内部结构

2) 工作时序受干扰之后数据易丢失。

MAX7219时序见图5[2],串行数据在DIN端输入16位数据包,无论LOAD端处于何种状态,在CLK时钟的上升沿,数据均被移入内部16位移位寄存器,随后在LOAD端的上升沿被载入数据寄存器或控制寄存器。需注意的是,在数据传送过程中,LOAD端要在第16个时钟的上升沿同时或之后、下个时钟的上升沿之前变为高电平,否则数据会丢失。

因此,在数据传送期间若有毛刺或尖脉冲串扰到LOAD信号线或CLK时钟线,MAX7219的工作时序会受到干扰,影响DIN端数据的正常传送,造成数码管和指示灯不能正常显示。

图5 MAX7219时序

3 改进措施

根据上述分析,对操作面板单元上的显示驱动电路进行硬件和软件改进,改进硬件之后的MAX7219显示驱动电路见图6。

图6 改进硬件之后的MAX7219显示驱动电路

3.1 在V+和ISET引脚端对地并接滤波电容

如图6所示,在MAX7219芯片的V+和ISET引脚端对地并接的滤波电容C21上并接一个4.7 μF/16 V的电解电容C22,用来滤去电路中的低频干扰,提高流入ISET端电流的纯净度。

改进时注意:在电路制板上,滤波电容C21和电解电容C22要就近V+和ISET引脚,并尽可能地靠近地脚布放[4]。

3.2 在CLK、LOAD和DIN信号线上对地并接滤波电容

如图6所示,分别在CLK、LOAD和DIN信号线上就近对地并接0.1 μF的滤波电容C18、C19和C20,用来滤除信号线上的毛刺。

改进时注意:连接单片机与MAX7219的3根信号线在电路板上的布线要尽可能短。

另外,单片机在不对MAX7219读写时,CLK时钟线是处于低电平状态的,而LOAD信号线保持高电平状态。为避免信号线在不工作时因发生电平跳变而造成电路不稳定,在CLK时钟线上加一个下拉电阻R37,使该端口电压在不工作时固定在低电平上;在LOAD信号线上加一个上拉电阻R38,使该端口电压在不工作时固定在高电平上。

3.3 在程序中加入抗干扰保护代码

对于MAX7219显示驱动电路的应用,关键是管理和设置好其内部的14个寄存器(如图4所示),其中:数据寄存器8个,寄存着与DIG 0-DIG 7相对应的显示数据;控制寄存器6个,分别为译码控制、显示亮度控制、扫描频率限制、消隐控制、显示测试和无操作寄存器,寄存着译码模式、亮度调节、扫描个数和消隐点亮等参数[5]。在BNWAS显控程序中,用到MAX7219的4个数据寄存器和5个控制寄存器。

图7为显控主程序的部分流程图,其中对控制寄存器的配置仅在“系统初始化”程序中完成。在“CAN通信故障报警”“复位按钮故障报警”和“失电报警处理”等其他调用数码管和指示灯的显示子程序中,除了显示参数需要更改以外,不再配置控制寄存器,缺少相应的容错机制。

MAX7219内部结构具有一定的局限性,容易受到外部干扰。为了使MAX7219能在强干扰环境下正常工作,避免片内寄存器受到干扰之后丢失数据,除了要在电路上做一定的滤波之外,还要在显控程序中加入抗干扰保护代码。

改进措施:在所有调用显示指令的子程序中加入MAX7219抗干扰保护代码。即在对MAX7219数据寄存器进行写操作之前,需重新配置MAX7219控制寄存器,以保证缓冲区内的数据实时准确。

改进之后的“CAN通信故障报警”子程序流程图见图8,其中虚线框部分是加入的MAX7219抗干扰保护代码。其他调用显示的子程序作相同改进,这里不再赘述。

图7 显控主程序的部分流程图

图8 改进之后的“CAN通信故障报警”子程序流程图

4 改进之后的试验验证

按第1.1节所述的试验条件和第1.2节所述的试验方法对改进之后的BNWAS受试设备进行静电放电抗扰度试验。受试设备在试验过程中和试验之后都能正常工作,操作面板单元上的数码显示和指示灯无跳变、笔画不全、全亮或全暗等现象出现,始终正常稳定显示。

CCS的试验结果表明:在试验过程中和试验之后,BNWAS受试设备的性能均应能达到CCS规范要求的性能判据A(性能判据 A:在试验过程中和试验之后, 受试设备均应能连续地开展预期的工作,无有关设备标准和制造厂制定的技术条件规定的性能降低或功能丧失[1]),受试设备静电放电抗扰度试验通过。

5 结 语

在BNWAS静电放电抗扰度试验中,由于静电放电发生器会对受试设备进行高压接触放电,对系统加入强干扰源,致使操作面板单元上的MAX7219显示驱动电路受到影响,出现数码管和指示灯瞬间全暗的现象。在对显示驱动电路进行软件和硬件改进之后,有效提高了电路的抗外部强干扰能力,其中在程序中加入抗干扰保护代码是解决该问题的关键。

因此,在设计MAX7219显示驱动电路时,需采取一定的抗干扰措施,以保证在受到外部强干扰的情况下,数码管和指示灯能正常稳定地运行。

猜你喜欢
数码管寄存器指示灯
物理项目教学设计,用单片机控制四位数码管显示
蓝桥杯树莓派模拟题解析三:“电子测距仪”
一闪一闪亮晶晶浅析笔记本身上的指示灯
“软”指示灯同时监控键盘磁盘网络
Arduino编程
常用电子测速法在某数字信号处理器中的应用*
MC9S08FL16单片机数码管静态显示分析
飞思卡尔单片机脉宽调制模块用法研究
移位寄存器及算术运算应用
一种矩阵键盘的MCU实现