资源预览内容
第1页 / 共13页
第2页 / 共13页
第3页 / 共13页
第4页 / 共13页
第5页 / 共13页
第6页 / 共13页
第7页 / 共13页
第8页 / 共13页
第9页 / 共13页
第10页 / 共13页
亲,该文档总共13页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
第七章 单片机控制系统抗干扰技术本章将从干扰源的来源、硬件、软件以及电源系统各方面研究分析并给出有效可行的解决办法。 第一节 干扰的来源及分析一、 主要的干扰源影响正常工作的信号称为噪声,又称干扰。举例:在单片机控制系统中,出现了干扰,就会影响指令的正常执行,造成控制事故或控制失灵;在测量通道中产生了干扰,就会使测量产生误差,计数器收到干扰有可能乱记数,造成记数不准,电压的冲击有可能使系统遭到致命的破坏。 凡是能产生一定能量,可以影响到周围电路正常工作的媒体都可认为是干扰源。干扰有的来自外部,有的来自内部。一般来说,干扰源可分为以下三类: 自然界的宇宙射线,太阳黑子活动,大气污染及雷电因素造成的; 物质固有的,即电子元器件本身的热噪声和散粒噪声;人为造成的,主要是由电气和电子设备引起。举例:在系统工作的环境中广泛存在,包括动力电网的电晕量放电、绝缘不良的弧光放电、交流接触器、开关电感负载的继电器接点引起的电火花,照明灯管所引起的放电、变压器、电焊机、吊车,大功率设备启动浪涌,可控硅开关造成的瞬间尖峰,都会对电网产生影响。另外像大功率广播、电视、通讯、雷达、导航、高频设备以及大功率设备所发出的空间电磁干扰。系统本身电路的过渡过程,电路在状态转换时引起的尖峰电流,电感或电容所产生的瞬间电压和瞬变电流也会对系统工作产生千扰。另外,印制电路板布局不合理、布线不周到、排列不合理、粗细不合理,使电路板自身产生相互影响,系统安装布线不合理,强弱电走线不能分开,造成相互干扰。二、 噪声干扰产生的原因 电路性干扰。电路性干扰是由于两个回路经公共阻抗耦合而产生的,干扰量是电流。 电容性干扰。电容性干扰是由于干扰源与干扰对象之间存在着变化的电场,从而造成了干扰影响,干扰量是电压。 电感性干扰。电感性干扰是由于干扰源的交变磁场在干扰对象中产生了干扰感应电压。而产生感应电压的原因则是由于在干扰源中存在着变化电流。 波干扰。波干扰是传导电磁波或空间电磁波所引起的。空间电磁波的干扰量是电场强度和磁场强度。传导波的干扰量是传导电流和传导电压。三、 干扰窜入系统的渠道环境对单片机控制系统的干扰一般都是以脉冲的形式进人系统的,干扰窜入系统的渠道主要有三条,如图7-1所示。 由图中可见,空间干扰(场干扰)是通过电磁波辐射入系统;过程通道干扰是通过和主机系统相连接的输入通道、输出通道及与其他主机系统相连的通信通道进入单片机系统的;供电系统干扰,主要通过供电系统的直流电源线路或地线进人系统。一般情况下,空间干扰在强度上远小于其他两个渠道进人系统的干扰,而且空间干扰可用良好的屏蔽与正确的接地,或采用高频滤波器加以解决。因此抗干扰的重点应放在供电系统和过程通道的干扰。 第二节 硬件抗干扰技术一、选用可靠的元器件一般情况下,元器件在出厂前都进行了测试。在通常应用时,不再进行测试,而直接将元器件用于电路中进行通电运行考验。在考验中发现问题,直接替换不合格芯片或器件。按着一般的经验,如芯片在通电使用一个月左右而不产生损坏,就可以认为比较稳定。但在购买时,最好到较正规的大公司或商店购买元器件,一般都能保证元器件本身质量的可靠。二、接插件的选择应用 单片机控制系统通常可由几块印制电路板组成,各板之间以及各板与基准电源之间经常选用接插件相联系。在接插件的插针之间也易造成干扰,这些干扰与接插件插针之间的距离以及插针与地线之间的距离都有关系。在设计选用时要注意以下几个问题。 1合理地设置插接件 如电源插接件与信号插接件要尽量远离,主要信号的接插件外面最好带有屏蔽。 2插头座上要增加接地针数 在安排插针信号时,用一部分插针为接地针,均匀分布于各信号针之间,起到隔离作用,以减小针间信号互相干扰。最好每一信号针两侧都是接地针,使信号与接地针理想的比例为1:1。 3信号针尽量分散配置,增大彼此之间的距离。 4. 设计时考虑信号的翻转时差,把不同时刻翻转的插针放在一起。同时翻转的针尽量离开,因信号同时翻转会使干扰叠加。三、印制电路板抗干扰设计技术 印制电路板是器件、信号线、电源线的高密度集合体,布线和布局好坏对可靠性影响很大。1印制电路总体布局原则 印制电路板大小要适中,板面过大印制线路太长,阻抗增加,成本偏高;板子太小,板间相互连线增加,易增加干扰环境。 印制板元件布局时相关元件尽量靠近。如晶振、时钟发生器及CPU时钟输入端相互靠近,大电流电路要远离主板,或另做一块板。 考虑电路板在机箱内的位置,发热大的元器件放置在易通风散热的位置。 2电源线和地线与数据线传输方向一致,有助于增强抗干扰能力。接地线可环绕印制板一周安排,尽可能就近接地。 3地线尽量加宽,数字地、模拟地要分开,根据实际情况考虑一点或多点接地。4配置必要的去耦电容 电源进线端跨接100up以上的电解电容以吸收电源进线引入的脉冲干扰。 原则上每个集成电路芯片都配置一个0.01up的瓷片电容或聚乙烯电容,可吸收高频干扰。 电容引线不能太长,高频旁路电容不能带引线。四、执行机构抗干扰技术 在单片机控制系统输出回路中,存在着执行开关、线圈等回馈干扰。特别是感性负载,电机电枢的反电动势会损坏电子器件,甚至会破坏计算机系统或扰乱程序系统,为防止由于电感负载的瞬间通、断造成的干扰,常采用以下措施: 1触点两端并联阻容吸收电路,控制触点间放电,如图7-2(a)所示。2.电感负载两端并联反向二极管,形成反电动势放电回路,保护设备。如图7-2(b)所示,在继电器线圈两端并接二极管。当开关断开时,感应电动势通过二极管放电,防止击穿电源及开关。 第三节 软件抗干扰技术一、设置软件陷阱 由于系统干扰可能破坏程序指针PC,PC一旦失控,使程序“乱飞”可能进人非程序区,造成系统运行的一系列错误。设置软件陷阱,可防止程序“乱飞”。 方法:在ROM或RAM中,每隔一些指令(十几条即可),就把连续几个单元设置成空操作(所谓陷阱)。当失控的程序掉入“陷阱”,也就是连续执行几个空操作后,程序自动恢复正常,继续执行后面的程序,也可以在程序芯片没有被程序指令字节使用的部分全部置成空操作指令代码,在最后使用跳转指令,一般跳到程序开头。一旦程序飞出到非程序区,执行空操作之后,最后跳回到程序初始化,重新执行程序。或隔一段使用一条跳转到程序开头的指令。二、增加程序监视系统(Watchdog) 利用设置软件陷阱的办法虽在一定程度上解决了程序“飞出”失控问题,但不能有效地解决死循环问题。 设置程序监视器(Watchdog看门狗)可比较有效地解决死循环问题。程序监视器系统有的采用软件解决,大部分都是采用软硬件相结合的办法。下面以两种解决办法来分析其结构原理。1、利用单片机内部定时器进行监视 方法:在程序一开始就启动定时器工作,在主程序中增设定时器赋值指令,使该定时器维持在非溢出工作状态。定时时间要稍大于程序一次循环的执行时间。程序正常循环执行一次给定时器送一次初值,使其不能溢出。但若程序失控,定时器则计满溢出中断,在中断服务程序中使主程序自动复位又进入初始状态。例8051单片机若晶振频率使用6MHz,选定时器T0定时监视程序。程序如下:ORG 0000HSTART:AJMP MAIN ORG 000BH AJMP STARTMAIN:SETB EA SETB IE0 SETB TR0 MOV TMOD,01HMAIN1:MOV TH0,datal MOV TL0,datal用户程序 LJMP MAIN2、利用单稳触发器构成程序监视器 方法:利用软件经常访问单稳电路,一旦程序有问题,CPU不能照常访问,单稳电路则产生翻转脉冲使单片机复位,程序重新开始执行。三、软件冗余技术 软件冗余技术,就是多次使用同一功能的软件指令,以保证指令执行的可靠性,这从以下几个方面考虑。 1采取多次读入法,确保开关量输人正确无误 重要的输人信息利用软件多次读入,比较几次结果一致后再让其参与运算。对于按钮和开关状态读入时,要配合软件延时可消除抖动和误动作。 2不断查询输出状态寄存器,及时纠正输出状态 设置输出状态寄存器,利用软件不断查询,当发现和输出的正确状态不一致时,及时纠正,防止由于干扰引起的输出量变化导致设备误动作。 3对于条件控制系统,把对控制条件的一次采样、处理控制输出改为循环地采样、处理输出。这种方法对于惯性较大的控制系统具有良好的抗偶然干扰作用。 4为防止计算错误,可采用两组计算程序,分别计算,然后将两组计算结果进行比较,如两次计算结果相同,则将结果送出。如出现误差,则再进行一次运算,重新比较,直到结果相同。四、软件可靠性设计 1、利用软件提高系统抗干扰能力 在软件设计时采用如下措施,对提高系统抗干扰能力是积极有力的。 增加系统信息管理软件。它与硬件相配合,对系统信息进行保护。其中包括防止信息被破坏,出故障时保护信息,故障排除之后恢复信息等。 防止信息的输人输出过程中出错。如对关键数据采用多种校验方式,对信息采用重复传送校验技术,从而保证信息的正确无误。 编制诊断程序,及时发现故障,找出故障位置,以便及时检修或启用冗余软件。用软件进行系统调度,包括出现故障时保护现场,迅速将故障装置切换成备用装置,在环境条件发生变化时,采取应急措施,故障排除后,迅速恢复系统,继续投人运行等。 2、提高软件自身的可靠性 1)程序分段和采用层次结构 在进行程序设计时,将程序分成若干个具有独立功能的子程序块。各个程序块可以单独使用,也可与其他程序块一起使用。各程序块之间可通过一固定的通信区和一些指定的单元进行信息传递。每个程序块都可单独进行调整和修改而不影响其他程序块。 2)采用可测试性设计 软件在编制过程中会出现一些错误。为便于查出程序错误,提高软件开发效率,可采用以下三种方法:一是明确软件规格,使测试易于进行;二是将测试设计的程序段作为软件开发的一部分;三是把程序结构本身组成便于测试的形式。 3)对软件进行测试 测试软件的基本方法是,给软件一个典型的输入,观测输出是否符合要求。发现错误进行修改,直至消除错误,达到设计要求。 测试软件可按下述步骤进行: 单元测试,即对每个程序块单独进行测试; 局部或系统测试,即对多个程序块组成的局部或系统程序进行测试,以发现块间连接错误; 系统功能测试,按功能对软件进行测试,如控制功能、显示功能、通信功能、管理功能、报瞥功能等; 现场测试,即硬件安装调试后将软件进行安装测试,以便对整个控制系统的功能及性能作出评价。五、软件自诊断技术 软件诊断技术主要从两个方面进行考虑,一方面是对系统硬件和过程通道的自诊断,另一方面是对过程软件本身进行诊断和故障排除。1、对硬件系统进行诊断 对硬件系统诊断包含两个方面内容:一是确定硬件电路是否存在故障,这叫故障测试;二是指出故障的确切位置,给
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号