文章详情

预付费三相电度表的抗干扰设计

日期:2025-04-30 19:40
浏览次数:335
摘要:以IC卡预付费三相电度表为例分析了单片机的干扰来源及其产生的危害,并详细论述了针对各类干扰的解决措施。

抗干扰问题是从事单片机设计的工程技术人员都将碰到一个大难题,单片机的工作可靠90%取决于抗干扰设计,不同系统的工作环境不同,干扰源不同,抗干扰所采取的措施就有所不同。

例如,工业用电度表的安装环境较差,通常的干扰源有:电网电压的波动,大型用电设备(如:天车`电炉`大电机`电焊机等)的启停,高压设备和电磁开关的电磁辐射等等。较强的干扰很容易造成IC卡电度表控制系统出现软件故障,使程序因干扰而脱离正常运行顺序或飞出程序可执行区而进入死循环失去控制,如不能快速脱离此状态,恢复程序的运行,电度表将无法正常工作。若干扰窜入计量采样脉冲,将会导致计量失误,造成单片机误动作而失去计量的准确性。因此必须采取有效措施遏制干扰的窜入,保证电度表可靠地运行。以IC卡预付费三相电度表为例,阐述针对不同干扰源所采取的抗干扰措施。

电源的抗干扰设计

 单片机的电源中存在着交流干扰和直流干扰。在工业现场中,由于生产负荷的变化`大型用电设备的启停,常常造成电源电压的波动,有时还会产生50~4000V持续几个毫微秒的尖峰脉冲,很容易造成程序失控死机,对此,采用无源四端网络的抗尖峰干扰抑制器可以很好地将尖峰干扰抑制掉。对交流电转换成直流电后所窜入的干扰信号,我们采用小型直流开关电源。直流开关电源是一种采用脉冲宽度调制型电源,它省去了传统的工频变压器,具有体积小`重量轻`效率高`电网电压范围宽`输出电压稳定等特点,并对电网上的高频脉冲干扰有较强的隔离能力,可以抑制直流干扰。

采用开关电源并不能保证万无一失,当电网电压波动超过±10%时,开关电源的输出也会产生波动。为了防止电网电压的波动而造成开关电源电压的波动,并导致CPU的误动作和数据丢失等问题,采用美国TI公司的电源电压监视器TL7705设计了电源电压监视电路(如图1所示)。该电路能随时监测电源电压的变化,一旦发现电源故障,能及时可靠地使单片机复位,禁止对RAM的操作,避免数据破坏。被监测的电压由TL7705SENSE7)脚引入,4.6V~20V,可由RS 来设定。当被监测电压为4.75V时,RS 200Ω左右。CS RS 构成RC 延时网络,延长响应时间,以降低噪声影响和器件灵敏度。综合以上措施,可以有效地抑制电源干扰的窜入。

计量采样脉冲的抗干扰设计

 计量采样脉冲输出接到单片机的中断引脚,MCS-51单片机的中断触发方式有电平触发和边沿触发两种方式。IC卡预付费三相电度表的采样脉冲在工业现场工作时有尖峰干扰,很容易造成计量失误,为此我们采用了边沿触发中断与查询电平相结合的方式,即在硬件上设计成中断引脚与某一1/0引脚相连(如图1所示),将中断设置为边沿触发方式,当CPU响应中断后,在中断处理程序的开始,经延时适当的时间(大于干扰脉冲宽度而小于*小的计量脉冲宽度)查询此1/0脚电平是否符合要求,这种措施能有效地去除尖峰脉冲对计量采样脉冲的干扰。

程序失控的处理

 单片机窜入强干扰后,程序计数器PC的数值可能会改变,破坏程序的正常运行,造成一些误动作,甚至导致程序死循环,从而引起严重的后果。在IC卡预付费三相电度表中采取了如下几个措施来解决程序失控的问题。

1 WATCHDOG监控程序的运行

 通常的硬件WATCHDOG在系统受到干扰而不能正常运行时,只发出一个复位脉冲,如果遇到长时间连续的干扰,这种WATCHDOG电路就束手无策。我们采用74LS123制作了一个WATCHDOG电路,在程序正常运行时,CPU通过一根1/0接口线定时防问该电路,使其不能发出复位脉冲。若系统受到连续干扰时,此电路会不断产生复位信号,直到系统正常工作时为止,因而能抵抗长时间的连续干扰。CPU访问该电路的程序如下:

CLR P1.3

NOP

NOP

SETB P1.3

设置软件陷阱

 当程序失控而弹飞时,我们在弹飞区域(一般为转移指令后,如:LCALL RET RETI JC JNC等,未使用的中断向量区,未使用的大片ROM空间等)设置软件陷阱,即设计一段专门处理程序执行时出错的程序,以保证弹飞的程序能迅速纳入正确控制轨道。软件陷阱及出错处理程序如下:

NOP NOP LJMP ERR ERRCLR EA;关中断

MOV DPTR#ERRI;准备返回地址

PUSH DPL PUSH DPH

RETI;****中断激活标志 ERRICLR A;准备复位地址

PUSH ACC PUSH ACC;压入复位地址 RETI;**低级中断激活标志

系统复位的处理

 在单片机实时控制系统中,大多数系统有它自己特定的运行要求。一旦系统复位后,就不允许改变以前的状态而重新开始运行,但可以采取下述措施:

定时(如:每一个循环周期)将运行过程中的重要数据写入RAM中保护起来;

 对外设的动作控制,设立动作标志,并将该标志与重要数据一并写入PAM中保护起来;

 硬件上设计一掉电保护电路。系统复位后,用备用电池给RAM供电,使重要数据不被破坏;

 复位重新启动时,将重要数据和动作标志从PAM中读出,再据此做出判断,发出动作指令。这样就保证了状态的连续性,而不至造成控制现场的混乱。