您好,欢迎访问三七文档
当前位置:首页 > 机械/制造/汽车 > 机械/模具设计 > MCS-51单片机应用教程 第14章
第14章单片机系统抗干扰技术14.1干扰的来源14.2硬件抗干扰技术14.3软件抗干扰技术14.4单片机系统的抗干扰技术应用单片机系统抗干扰技术随着单片机技术的发展,单片机已应用到工农业生产和国防技术等各个领域。虽然单片机本身的抗干扰能力较强,但是用单片机构造的控制系统仍存在着抗干扰的问题。为防止外界对系统的干扰,并确保单片机控制系统安全可靠地运行,必须采取相应的抗干扰措施。单片机控制系统的应用很广泛,引起系统干扰的原因也很多,概括起来有以下几种:(1)交流电源的干扰电源开关的通断、电机和大的用电设备的启停都会造成供电电网的波动,从而影响同一电网供电的单片机控制系统的正常运行。14.1干扰的来源(2)信号输入输出通道的干扰在单片机应用系统中,开关量输入、输出和模拟量输入、输出通道是必不可少的。而在这些输入输出通道中,如果有用于大的用电设备(如可控硅)的控制的单片机,就会引起相关通道的干扰,从而造成单片机应用系统的程序错误等,以至使整个系统无法正常运行。(3)空间的辐射干扰在广阔的空间中有各种各样的电磁波,如果单片机应用系统工作在电磁波较强的区域而没有采取相关的抗干扰措施,就很容易引起干扰。单片机应用系统的抗干扰设计应针对不同的干扰源采取必要的抗干扰措施。具体方法有硬件抗干扰技术和软件抗干扰技术。使用硬件抗干扰技术是抑制干扰的有效方法,常用的硬件抗干扰技术有:滤波技术、屏蔽技术、隔离技术、去耦技术、接地技术等。14.2硬件抗干扰技术1.抑制来自电源的干扰(1)屏蔽电源变压器将电源变压器的原、副边分别加以屏蔽。(2)使用交流稳压器交流稳压器主要用于克服电网电压波动对系统的影响。(3)应用隔离变压器可抑制高频噪声干扰。(4)低通滤波器可抑制由电网侵入的外部高频干扰。(5)系统采用性能优良的直流稳压线路,增大输入输出滤波电容,减少电源纹波系数。(6)交流电引进线应尽量短,防止50Hz信号对系统的干扰。(7)电源变压器的容量留有一定余地。(8)系统中数字地、模拟地应一点相连;外壳地线和公共地线应分开走线,若允许直接相连,则应在某一点可靠连接,否则用1~10μF的电容相连。2.抑制来自系统输入输出通道的干扰输入输出通道是控制系统与被控对象间进行信息传输的路径。采用的抗干扰措施有:(1)采用变压器隔离利用隔离变压器将模拟通道部分与数字部分隔离开来,提高抗干扰能力。(2)光电隔离利用光电隔离技术把前后电路隔离,提高抗干扰能力。(3)浮地屏蔽采用光电耦合器将系统控制部分与其他外接通道实行浮地屏蔽的处理方法。(4)双绞线传输采用双绞线传输的目的是减少电磁感应,抑制噪声。(5)滤波在输入输出通道中使用低通、高通、带通等滤波器技术,可有效提高系统对特定频率干扰的抑制。3.抑制空间干扰和电感性干扰空间干扰主要指磁场在线路和导线上的辐射引起的系统工作不稳定;电感性负载干扰是指由电感性负载如电动机、变压器、继电器、接触器和电磁铁等产生的干扰,当对它们进行启停操作时,会产生幅值较大的高频干扰,影响系统的正常工作。所采取的抑制措施主要有:(1)应用阻容吸收网络采用在负载两端并联R-C网络的方法,能够抑制由电感性负载启停所产生的干扰,降低干扰幅值,减小干扰频率,较好地抑制干扰。(2)应用压敏电阻压敏电阻是一种对电压敏感的非线性电阻器件,随着加在其两端的电压升高到某一值,压敏电阻的阻值会迅速减小。因此它能够快速降低干扰幅值,既适用于直流电路,也适用于交流电路。4.接地抗干扰技术接地抗干扰技术是单片机系统抗干扰技术的主要方法之一。在单片机控制系统中,主要有以下几种地线:模拟地、数字地、信号地、系统地、交流地和保护地。模拟地作为传感器、放大器、A/D和D/A转换器中模拟电路的零电位;数字地作为计算机各种数字电路的零电位,它应该与模拟地分开,避免模拟信号受数字信号的干扰;系统地是上述几种地的最终回流点,直接与大地相连作为基准零电位;交流地是计算机交流供电电源地,即动力线地,它的地电位很不稳定。因此,交流地不允许与上述几种地相连,而且交流电源变压器的绝缘性能要好,应绝对避免漏电现象;保护地也称为安全地,目的是使设备机壳与大地等电位,以避免机壳带电影响人身及设备安全。单片机系统中的接地技术主要有:浮地技术、一点接地技术等。浮地技术指控制系统的地线与外壳或大地浮置,提高对电源、外壳引进干扰的抑制;一点接地是指控制系统的模拟地、数字地以及系统地最后应在一点集中连接在接地点上。软件方面的抗干扰措施通常有以下几种方法:1.数字滤波(1)算术平均法对某一点的数值连续多次采样,取其算术平均值。这种方法可以减小系统的随机干扰对数据采集的影响。(2)比较取舍法对某一点数据连续采样多次,剔除较大偏差。14.3软件抗干扰技术(3)中值法对某一点数值连续采样多次,依次排序,取其中间值作为采样结果。(4)一阶递推数字滤波法这种方法是利用软件完成RC低通滤波器的算法,代替硬件实现RC滤波。2.设置软件陷阱当系统受到干扰后可能引起程序计数器PC值的改变,使系统程序没有按照预定的顺序执行,而是执行其他程序区的程序,或使PC值超出程序区,将非程序区的随机数作为指令码运行,影响了系统的正常运行。为此,可在非程序区安排指令强迫系统复位,如用LJMP0000H的机器码填满非程序区,这样不论PC失控后飞到非程序区的哪个字节,都能使系统复位。3.应用“看门狗”技术设置软件陷阱能解决一部分程序失控的问题,但当程序进入某种非正常的死循环时,软件陷阱可能不起作用。应用“看门狗”技术能够使程序从死循环中恢复到正常状态,“看门狗”就是一个时间监视器,时间监视器有两种:一种是硬时钟,另一种是软时钟。硬时钟是在CPU芯片外用硬件构成一个定时器,软时钟是利用片内定时/计数器,定时时间比正常执行一次程序循环所需时间要长。程序正常运行未受干扰时,CPU每隔一段时间就对硬时钟输出复位脉冲使其复位,或对软时钟重置时间常数并使其复位,复位时间应比设定的定时时间要短,使系统不受影响地正常工作。当受到干扰使程序不能正常运行陷入死循环时,因不能及时发出复位脉冲,硬时钟或软时钟运行至既定的定时时间,硬时钟会输出一个复位脉冲使单片机复位。软时钟可产生中断,在中断服务子程序中进行相应处理。1.复位技术对于由干扰引起的系统失控,最简单的方法是使系统复位,使程序从0000H开始执行,即在8051系列单片机的RESET端加上一个持续两个机器周期以上的高电平信号,使系统复位。有两种方法可使系统复位:一是手动复位,通过手动复位键使系统复位;二是使用“看门狗”技术使系统恢复正常。14.4单片机系统的抗干扰技术应用“看门狗”技术可以采用硬件电路实现,也可采用软件技术通过内部定时/计数器实现。图14-1是一个用专用芯片MAX706实现的硬件“看门狗”,它完全独立于单片机之外。MAX706内部有一个定时器,当定时时间到,在MAX706的RESET端输出一个脉冲给单片机的RESET端,使单片机复位。单片机正常工作时,每隔一段时间就通过P1.1向“看门狗”输出一个脉冲,使外部“看门狗”复位。“看门狗”从0开始重新计时,不会向单片机输出复位脉冲,当单片机由于干扰等原因不能正常向“看门狗”输出复位脉冲时,外部“看门狗”将输出复位脉冲,使单片机系统复位。图14-1MAX706实现的硬件“看门狗”电路软件“看门狗”应用一个内部定时器来定时,此时应将它的溢出中断设定为高级中断。定时16ms的软件“看门狗”的程序初始化如下:MOVTMOD,#01H;T0为16位定时器SETBET0;允许T0中断SETBPT0;T0中断为高优先权MOVTL0,#0C0HMOVTH0,#0E0H;定时时间常数SETBTR0SETBEA启动软件“看门狗”以后,在系统运行正常时,程序必须在定时器的定时间内重新设定定时器的定时时间常数,从而使定时器不产生溢出中断;当程序陷入死循环后,不能在定时器的定时时间内重新设其定时时间常数,使得定时器产生溢出中断,程序通过执行中断处理而退出死循环。在中断处理程序中要进行错误处理并用软件使系统复位。2.电压监测及掉电保护技术如果单片机系统的供电电源瞬间断电或电压突然下降,将使控制系统陷入混乱状态,此时即使电源电压恢复正常,系统也很难恢复正常状态。掉电保护就可以避免上述现象发生。掉电保护必须通过硬件电路检测到系统供电电源的瞬间断电或电压突然下降,然后将检测信号加到单片机的外部中断输入端,使系统能够及时地对掉电做出反应。在软件设计中应将掉电引起的中断设定为高级中断。单片机系统电源电压的硬件监测可以通过专用芯片来完成。如美国MAXIM公司生产的MAX791能为单片机提供可靠的上电复位、低压报警、看门狗及后备电源等多种功能,能够实现电压监测和掉电保护功能。3.指令冗余与软件陷阱技术当由于干扰等原因引起单片机系统程序计数器PC值发生变化,使得程序计数器指示的指令单元的机器码不是正常的指令代码时,将引起程序的运行出现错误。解决的方法是采用指令冗余技术。MCS-51单片机指令系统中的所有指令都不超过3B,而且有很多单字节指令。在程序关键的地方人为插入一些单字节指令NOP,或将有效单字节指令重复书写,这便是指令冗余。当程序弹飞到某一条单字节指令上时,便自动恢复正常。这样在双字节指令和三字节指令之后插入两条NOP指令,可保护NOP后的指令不被拆散。因此,常在一些对程序流向起决定作用的指令之前插入两条NOP指令,以保证弹飞的程序迅速恢复正常,如RET、RETI、AJMP、DJNZ等指令。当干扰使得程序弹飞到非程序区时,指令冗余技术就无能为力了,这时采用的抗干扰方法是设置软件陷阱。所谓软件陷阱,就是一条跳转指令,强行使程序到指定的地址运行,在那里放置了一段专门对程序出错进行处理的程序。如出错处理程序的标号为ERR,则软件陷阱即为一条LJMPERR指令。为取得更好的抗干扰效果,可以同时加入指令冗余技术,即在跳转指令前加两条NOP指令,因此,软件陷阱由三条指令构成:NOPNOPLJMPERR软件陷阱一般安排在下列位置:(1)未使用的中断向量区当干扰使没有被使用的中断开放,并激活这些中断时,就会进一步引起混乱。如果在这些地方布上陷阱,就能及时捕捉到错误中断并进行处理。(2)未使用的大片ROM空间在剩余的没有使用的程序存储器空间,每隔一段设置一个陷阱,就能捕捉到跑飞的程序。(3)表格表格有两类,一类是数据表格,另一类是散转表格,其内容为一系列三字节指令LJMP或两字节指令AJMP。由于表格内容和检索值有一一对应关系,在表格中间安排陷阱将会破坏其连续性和对应关系,因此只能在表格的最后安放陷阱。(4)程序区程序区是由若干指令构成的,不能在这些指令中间任意安排陷讲,而是应安放在如指令LJMP、SJMP、AJMP、RET、RETI等之后。如下面程序所示:MOVA,#0AHLJMPHHHNOP;加入软件陷阱NOPLJMPERREND4.数字滤波技术应用数字滤波器不需要增加任何硬件设备,具有高可靠性、稳定性等特点,可以多个通道共用。(1)程序判断固定值滤波程序判断固定值滤波方法应用于因传感器受到随机干扰而不稳定引起严重失真的情况。主要原理为:预先确定两次采样允许的最大偏差U,若两次采样信号的差值大于U,则表明输入的是干扰信号,应予以去除,用上次采样值作为本次采样值;若两次采样信号的差值小于或等于U,则表明没有受到干扰,本次采样值有效。如下面程序所示:GLL:MOVA,60H;60H本次采样值CLRCSUBBA,61H;与上次采样值相减JNCGLL0;本次值大于上次值则转移CPLA;否则求补ADDA,#01HGLL0:CLRCMOVR2,ASUBBA,R1;R1存放固定值JCGLL1;采样差值大于固定值则转移GLL3:MOV62H,60H;否则本次采样值有效RETGLL1:MOVA,R2CJNEA,R1,GLL2;采样值差与固定值相同,则本次采样值有效LJMPGLL3GLL2:MOV62H,61H;上次采样值替代本次采样值RET(2)中值滤波值滤波就是连续采集N个数据,从中选择一个中间值作为有效信号。
本文标题:MCS-51单片机应用教程 第14章
链接地址:https://www.777doc.com/doc-4006005 .html