《数字量输入输出与抗干扰设计技术.pptx》由会员分享,可在线阅读,更多相关《数字量输入输出与抗干扰设计技术.pptx(68页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、8 8.1 .1 光电耦合隔离技术光电耦合隔离技术 主要知识点主要知识点v 8.1.1 光电耦合隔离器 v 8.1.2 光电耦合隔离电路 第1页/共68页8 8.1.1 .1.1 光电耦合隔离器光电耦合隔离器 光电耦合隔离器按其输出级不同可分为三极管型、单向晶闸管型、双向晶闸管型等几种,如图8-1所示。它们的原理是相同的,即都是通过电光电这种信号转换,利用光信号的传送不受电磁场的干扰而完成隔离功能的。第2页/共68页 现以最简单的现以最简单的三极管型三极管型光电耦合隔离光电耦合隔离器为例来说明它的结构原理,如图器为例来说明它的结构原理,如图 8 8-2-2 所示。所示。图图8-2 8-2 光电
2、耦合隔离器的结构原理光电耦合隔离器的结构原理第3页/共68页光电耦合隔离器的输入输出类似普通三极管的输光电耦合隔离器的输入输出类似普通三极管的输入输出特性,即存在着入输出特性,即存在着截止区、饱和区与线性区截止区、饱和区与线性区三部分。利用光耦隔离器的开关特性(即光敏三三部分。利用光耦隔离器的开关特性(即光敏三极管工作在截止区、饱和区),可传送数字信号极管工作在截止区、饱和区),可传送数字信号而隔离电磁干扰,简称而隔离电磁干扰,简称对数字信号进行隔离对数字信号进行隔离。例。例如在数字量输入输出通道中,以及在模拟量输入如在数字量输入输出通道中,以及在模拟量输入输出通道中的输出通道中的A/DA/D
3、转换器与转换器与CPUCPU或或CPUCPU与与D/AD/A转换器转换器之间的数字信号的耦合传送,都可用光耦的这种之间的数字信号的耦合传送,都可用光耦的这种开关特性对数字信号进行隔离。开关特性对数字信号进行隔离。第4页/共68页例例如如在在现现场场传传感感器器与与A/DA/D转转换换器器或或D/AD/A转转换换器器与与现现场场执执行行器器之之间间的的模模拟拟信信号号的的线线性性传传送送,可可用用光光耦耦的的这这种种线线性性区区对对模拟信号进行隔离。模拟信号进行隔离。第5页/共68页 光耦的这两种隔离方法各有优缺点。模拟信号隔离方法的优点是使用少量的光耦,成本低;缺点是调试困难,如果光耦挑选得不
4、合适,会影响A/D或D/A转换的精度和线性度。数字信号隔离方法的优点是调试简单,不影响系统的精度和线性度;缺点是使用较多的光耦器件,成本较高。但因光耦越来越价廉,数字信号隔离方法的优势凸现出来,因而在工程中使用的最多。第6页/共68页 要注意的是,用于驱动发光管的电源与驱动光敏管的电源不应是共地的同一个电源,必须分开单独供电,才能有效避免输出端与输入端相互间的反馈和干扰;另外,发光二极管的动态电阻很小,也可以抑制系统内外的噪声干扰。因此,利用光耦隔离器可用来传递信号而有效地隔离电磁场的电干扰。为了适应计算机控制系统的需求,目前已生产出各种集成的多路光耦隔离器,如TLP系列就是常用的一种。第7页
5、/共68页 下面以控制系统中常用的数字信号的隔离方法为例说明光电耦合隔离电路。典型的光电耦合隔离电路有数字量同相传递与数字量反相传递两种,如图 8-3 所示。数字量同相传递如图8-3(a)所示,光耦的输入正端接正电源,输入负端接到与数据总线相连的数据缓冲器上,光耦的集电极c 端通过电阻接另一个正电源,发射极 e 端直接接地,光耦输出端即从集电极c 端引出。当数据线为低电平“0”时,发光管导通且发光,使得光敏管导通,输出 c 端接地而获得低电平“0”;当数据线为高电平“1”时,发光管截止不发光,则光敏管也截止使输出 c 端从电源处获得高电平“1”。如此,完成了数字信号的同相传递。8 8.1.2
6、.1.2 光电耦合隔离电路光电耦合隔离电路 第8页/共68页图8-3 光电耦合隔离电路第9页/共68页 数字量反相传递如图数字量反相传递如图8 8-3-3(b b)所示)所示,与,与(a a)不同的是光耦的集电极)不同的是光耦的集电极 c c 端直接接另一端直接接另一个正电源,而发射极个正电源,而发射极 e e 端通过电阻接地,则光端通过电阻接地,则光耦输出端从发射极耦输出端从发射极 e e 端引出。从而完成了数字端引出。从而完成了数字信号的反相传递。信号的反相传递。第10页/共68页第11页/共68页第12页/共68页2光电隔离光电耦合隔离器光电耦合隔离器是目前计算机控制系统中最常用是目前计
7、算机控制系统中最常用的一种抗干扰方法。的一种抗干扰方法。利用光耦隔离器的开关特性,可传送数字信号而利用光耦隔离器的开关特性,可传送数字信号而隔离电磁干扰,即在隔离电磁干扰,即在数字信号通道中进行隔离数字信号通道中进行隔离。第13页/共68页其实在其实在模拟量输入输出通道中模拟量输入输出通道中也主要应用这种也主要应用这种数字信号通道的隔离方法,即在数字信号通道的隔离方法,即在A/DA/D转换器与转换器与CPUCPU或或CPUCPU与与D/AD/A转换器的数字信号之间插入转换器的数字信号之间插入光耦光耦隔离器隔离器,以进行数据信号和,以进行数据信号和控制信号的耦合传控制信号的耦合传送送,如图如图8
8、-48-4所示所示。(。(a a)是在)是在A/DA/D转换器与转换器与CPUCPU接口之间接口之间8 8根数据线之间都各插接一个光耦隔离根数据线之间都各插接一个光耦隔离器器(图中只画出了一个图中只画出了一个),不仅照样无误地传送,不仅照样无误地传送数字信号,而且实现了数字信号,而且实现了A/DA/D转换器及其模拟量输转换器及其模拟量输入通道与计算机的入通道与计算机的完全电隔离完全电隔离;(;(b b)是在)是在CPUCPU与与D/AD/A转换器接口之间转换器接口之间8 8根数据线之间都各插接根数据线之间都各插接一个光耦隔离器一个光耦隔离器(图中也只画出了一个图中也只画出了一个),不仅,不仅照
9、样无误地传送数字信号,而且实现了照样无误地传送数字信号,而且实现了计算机计算机与与D/AD/A转换器及其模拟量输出通道的转换器及其模拟量输出通道的完全电隔离。完全电隔离。第14页/共68页图8-4 光耦隔离器的数字信号隔离第15页/共68页利用光耦隔离器的线性放大区,也可传送模拟信号而隔离电磁干扰,即在模拟信号通道中进行隔离。例如在现场传感器与A/D转换器或D/A转换器与现场执行器之间的模拟信号的线性传送,如图8-5 所示。第16页/共68页图8-5 光耦隔离器的模拟信号隔离第17页/共68页在在图图8-58-5(a a)输入通道的现场传感器与输入通道的现场传感器与A/DA/D转换转换器之间,
10、光电耦合器器之间,光电耦合器一方面把放大器输出的模一方面把放大器输出的模拟信号线性地光耦拟信号线性地光耦(或放大或放大)到到A/DA/D转换器的输入转换器的输入端,端,另一方面又切断了现场模拟地与计算机数另一方面又切断了现场模拟地与计算机数字地之间的联系字地之间的联系,起到了很好的,起到了很好的抗共模干扰作抗共模干扰作用用。在。在图图8-58-5(b b)输出通道的输出通道的D/AD/A转换器与执行转换器与执行器之间,光电耦合器一方面把放大器输出的模器之间,光电耦合器一方面把放大器输出的模拟信号线性地光耦拟信号线性地光耦(或放大或放大)输出到现场执行器,输出到现场执行器,另一方面又切断了另一方
11、面又切断了计算机数字地与现场模拟地计算机数字地与现场模拟地之间之间的联系,起到了很好的的联系,起到了很好的抗共模干扰作用抗共模干扰作用。第18页/共68页8 8.2 .2 数字量输入通道数字量输入通道主要知识点v 引言v 8.2.1 开关输入电路 v 8.2.2 脉冲计数电路 第19页/共68页 数数字字量量输输入入通通道道(DI DI 通通道道)的的任任务务-是是把把生生产产过过程程中中的的数数字字信信号号转转换换成成计计算算机易于接受的形式。机易于接受的形式。信信号号调调理理电电路路-虽虽然然都都是是数数字字信信号号,不不需需进进行行A/DA/D转转换换,但但对对通通道道中中可可能能引引入
12、入的的各各种种干干扰扰必必须须采采取取相相应应的的技技术术措措施施,即即在在外外部部信信号号与与单单片片机机之之间间要要设设置置输输入入信信号调理电路。号调理电路。第20页/共68页 凡在电路中起到通、断作用的各种按钮、触点、开关,其端子引出均统称为开关信号。在开关输入电路中,主要是考虑信号调理技术,如电平转换,RC滤波,过电压保护,反电压保护,光电隔离等。(1)电平转换是用电阻分压法把现场的电流信号转换为电压信号。(2)RC滤波是用 RC 滤波器滤出高频干扰。(3)过电压保护是用稳压管和限流电阻作过电压保护;用稳压管或压敏电阻把瞬态尖峰电压箝位在安全电平上。(4)反电压保护是串联一个二极管防
13、止反极性电压输入。(5)光电隔离用光耦隔离器实现计算机与外部的完全电隔离。8 8.2.1.2.1 开关输入电路开关输入电路 第21页/共68页 典型的开关量输入信号调理电路如图 8-6 所示。点划线右边是由开关 S与电源组成的外部电路,(a)是直流输入电路,(b)是交流输入电路。交流输入电路比直流输入电路多一个降压电容和整流桥块,可把高压交流(如380VAC)变换为低压直流(如5VDC)。开关 S 的状态经 RC 滤波、稳压管 D1 箝位保护、电阻 R2 限流、二极管 D2 防止反极性电压输入以及光耦隔离等措施处理后送至输入缓冲器,主机通过执行输入指令便可读取开关 S 的状态。比如,当开关 S
14、 闭合时,输入回路有电流流过,光耦中的发光管发光,光敏管导通,数据线上为低电平,即输入信号为“0”对应外电路开关 S 的闭合;反之,开关 S 断开,光耦中的发光管无电流流过,光敏管截止,数据线上为高电平,即输入信号为“1”对应外电路开关 S 的断开。第22页/共68页8-6 开关量输入信号调理电路第23页/共68页 4.2.2 脉冲计数电路脉冲计数电路 有些用于检测流量、转速的传感器发出的是脉冲频率信号,对于大量程可以设计一种定时计数输入接口电路,即在一定的采样时间内统计输入的脉冲个数,然后根据传感器的比例系数可换算出所检测的物理量。第24页/共68页8-7 脉冲计数输入电路第25页/共68页
15、 图图8-7为为一一种种定定时时计计数数输输入入接接口口电电路路,传传感感器器发发出出的的脉脉冲冲频频率率信信号号,经经过过简简单单的的信信号号调调理理,引引到到8254芯芯片片的的计计数数通通道道1的的CLK1口口。8254是是具具有有3个个16位位计计数数器器通通道道的的可可编编程程计计数数器器/定定时时器器。图图中中,计计数数通通道道0工工作作于于模模式式3,CLK0用用于于接接收收系系统统时时钟钟脉脉冲冲,OUT0输输出出一一个个周周期期为为系系统统时时钟钟脉脉冲冲N倍倍(N为为通通道道0的的计计数数初初值值)的的连连续续方方波波脉脉冲冲,其其高高、低低电电平平时时段段是是计计数数通通
16、道道1的的采采样样时时间间和和采采样样间间隔隔时时间间,分分别别记记 为为 TS、TW;计计 数数 通通 道道 1和和 2均均 选选 为为 工工 作作 模模 式式 2,且且OUT1串串接接到到CLK2,使使两两者者构构成成一一个个计计数数长长度度为为232的的脉脉冲计数器,以对冲计数器,以对TS内的输入脉冲计数。内的输入脉冲计数。如如果果获获得得TS时时间间内内的的输输入入脉脉冲冲个个数数为为n,则则单单位位时时间间内内的的脉脉冲冲个个数数即即脉脉冲冲频频率率为为n/TS,从从而而可可换换算算出出介介质质的的流流量量或或电电机机的的转转速速值值。比比如如,发发出出脉脉冲冲频频率率信信号号的的是
17、是涡涡轮轮流流量量计计或或磁磁电电式式速速度度传传感感器器,它它们们的的脉脉冲冲当当量量(即即一一个个脉脉冲冲相相当当的的流流量量或或转转数数)为为K,则则介介质质的的流流量量或或电电机机的的转转数数就就为为n/TSK。第26页/共68页8 8.3 .3 数字量输出通道数字量输出通道主要知识点v 引言引言v 8 8.3.1 .3.1 三极管驱动电路三极管驱动电路 v 8 8.3.2 .3.2 继电器驱动电路继电器驱动电路 v 8 8.3.3 .3.3 晶闸管驱动电路晶闸管驱动电路 v 8 8.3.4 .3.4 固态继电器驱动电路固态继电器驱动电路 第27页/共68页 数字量输出通道简称 DO
18、通道,它的任务是把计算机输出的微弱数字信号转换成能对生产过程进行控制的数字驱动信号。根据现场负荷的不同,如指示灯、继电器、接触器、电机、阀门等,可以选用不同的功率放大器件构成不同的开关量驱动输出通道。常用的有三极管输出驱动电路、继电器输出驱动电路、晶闸管输出驱动电路、固态继电器输出驱动电路等。第28页/共68页 对于低压情况下的小电流开关量,用功率三极管就可作开关驱动组件,其对于低压情况下的小电流开关量,用功率三极管就可作开关驱动组件,其输出电流就是输入电流与三极管增益的乘积。输出电流就是输入电流与三极管增益的乘积。4.3.1 4.3.1 三极管驱动电路三极管驱动电路第29页/共68页1.1.
19、普通三极管驱动电路普通三极管驱动电路 当驱动电流只有十几当驱动电流只有十几mAmA或几十或几十mAmA时,只要采用一个普时,只要采用一个普通的功率三极管就能构成驱动电路,如图通的功率三极管就能构成驱动电路,如图 8 8-8 8所示。所示。8-8 小功率 三极管输出电路第30页/共68页2.达林顿驱动电路 当当驱驱动动电电流流需需要要达达到到几几百百毫毫安安时时,如如驱驱动动中中功功率率继继电电器器、电电磁磁开开关关等等装装置置,输输出出电电路路必必须须采采取取多多级级放放大大或或提提高高三三极极管管增增益益的的办办法法。达达林林顿顿阵阵列列驱驱动动器器是是由由多多对对两两个个三三极极管管组组成
20、成的的达达林林顿顿复复合合管管构构成成,它它具具有有高高输输入入阻阻抗抗、高高增增益益、输输出出功功率率大大及及保保护护措措施施完完善善的的特特点点,同同时时多多对对复复合合管管也也非非常常适适用用于于计计算算机机控制系统中的多路负荷。控制系统中的多路负荷。第31页/共68页 图8-9给出达林顿阵列驱动器MC1416的结构图与每对复合管的内部结构,MC1416内含7对达林顿复合管,每个复合管的集电极电流可达500mA,截止时能承受100V电压,其输入输出端均有箝位二极管,输出箝位二极管D2抑制高电位上发生的正向过冲,D1、D3可抑制低电平上的负向过冲。第32页/共68页8-9 MC1416达林
21、顿阵列驱动器第33页/共68页 图图 8 8-1010为达林顿阵列驱动中的一路驱动为达林顿阵列驱动中的一路驱动电路,当电路,当CPUCPU数据线数据线D Di i 输出数字输出数字“0 0”即低即低电平时,经电平时,经74067406反相锁存器变为高电平,反相锁存器变为高电平,使达林顿复合管导通,产生的使达林顿复合管导通,产生的几百毫安几百毫安集集电极电流足以驱动负载线圈,而且利用复电极电流足以驱动负载线圈,而且利用复合管内的合管内的保护二极管保护二极管构成了构成了负荷线圈断电负荷线圈断电时产生的反向电动势的泄流回路。时产生的反向电动势的泄流回路。第34页/共68页8-10 达林顿阵列驱动电路
22、第35页/共68页4.3.2 继电器驱动电路继电器驱动电路 电磁继电器主要由线圈、铁心、衔铁和触点等部件组成,简称为继电器,它分为电压继电器、电流继电器、中间继电器等几种类型。继电器方式的开关量输出是一种最常用的输出方式,通过弱电控制外界交流或直流的高电压、大电流设备。第36页/共68页第37页/共68页 常用的继电器有电压继电器、电流继电器、中间继电器等几种类型。由于继电器线圈需要一定的电流才能动作,所以必须采取措施加以驱动。继电器的驱动电路继电器的驱动电路 驱动电路的设计要根据所用继电器线圈的吸合电压和电流而定,一定要大于继电器的吸合电流才能使继电器可靠地工作。第38页/共68页 图8-1
23、2为经光耦隔离器的继电器输出驱动电路,当CPU数据线Di输出数字“1”即高电平时,经7406反相驱动器变为低电平,光耦隔离器的发光二极管导通且发光,使光敏三极管导通,继电器线圈KA得电,动合触点闭合,从而驱动大型负荷设备。由于继电器线圈是电感性负载,当电路突然关断时,会出现较高的电感性浪涌电压,为了保护驱动器件,应在继电器线圈两端并联一个阻尼二极管,为电感线圈提供一个电流泄放回路。第39页/共68页8-12 继电器输出驱动电路第40页/共68页 4.3.4 固态继电器驱动电路 固态继电器SSR(Solid State Relay)是一种新型的无触点开关的电子继电器,它利用电子技术实现了控制回路
24、与负载回路之间的电隔离和信号耦合,而且没有任何可动部件或触点,却能实现电磁继电器的功能,故称为固态继电器。它具有体积小、开关速度快、无机械噪声、无抖动和回跳、寿命长等传统继电器无法比拟的优点,在计算机控制系统中得到广泛的应用,大有取代电磁继电器之势。第41页/共68页 固态继电器SSR是一个四端组件,有两个输入端、两个输出端,其内部结构类似于图8-12中的晶闸管输出驱动电路。图8-13所示为其结构原理图,共由五部分组成。光耦隔离电路的作用是在输入与输出之间起信号传递作用,同时使两端在电气上完全隔离;控制触发电路是为后级提供一个触发信号,使电子开关(三极管或晶闸管)能可靠地导通;电子开关电路用来
25、接通或关断直流或交流负载电源;吸收保护电路的功能是为了防止电源的尖峰和浪涌对开关电路产生干扰造成开关的误动作或损害,一般由RC串联网络和压敏电阻组成;零压检测电路是为交流型SSR过零触发而设置的。第42页/共68页8-13 SSR结构原理及符号第43页/共68页u SSR 的输入端与晶体管、TTL、CMOS 电路兼容,输出端利用器件内的电子开关来接通和断开负载。工作时只要在输入端施加一定的弱电信号,就可以控制输出端大电流负载的通断。SSR的输出端可以是直流也可以是交流,分别称为直流型 SSR 和交流型 SSR。直流型 SSR 内部的开关组件为功率三极管,交流型 SSR内部的开关组件为双向晶闸管
26、。而交流型 SSR按控制触发方式不同又可分为过零型和移相型两种,其中应用最广泛的是过零型。第44页/共68页u 过零型交流 SSR是指当输入端加入控制信号后,需等待负载电源电压过零时,SSR才为导通状态;而断开控制信号后,也要等待交流电压过零时,SSR才为断开状态。移相型交流 SSR的断开条件同过零型交流 SSR,但其导通条件简单,只要加入控制信号,不管负载电流相位如何,立即导通。直流型SSR的输入控制信号与输出完全同步。直流型 SSR 主要用于直流大功率控制。一般取输入电压为 4-32 V,输入电流5-10 mA。它的输出端为晶体管输出,输出工作电压为 30-180 V。第45页/共68页
27、交流型 SSR 主要用于交流大功率控制。一般取输入电压为4.32V,输入电流小于 500 mA。它的输出端为双向晶闸管,一般额定电流在1AA范围内,电压多为 380 V 或 220 V。图 8-14 为一种常用的固态继电器驱动电路,当数据线Di 输出数字“0”时,经7406反相变为高电平,使NPN型三极管导通,SSR输入端得电则输出端接通大型交流负荷设备RL。第46页/共68页8-14 固态继电器输出驱动电路第47页/共68页4.2.6 4.2.6 接地系统的抗干扰接地系统的抗干扰 广义的接地包含两方面的意思,即接广义的接地包含两方面的意思,即接实地和接实地和接虚地虚地。接实地指的是与大地连接
28、;接虚地指的是与电。接实地指的是与大地连接;接虚地指的是与电位基准点连接,当这个基准点与大地电气绝缘,则称位基准点连接,当这个基准点与大地电气绝缘,则称为为浮地连接浮地连接。正确合理的接地技术对计算机控制系统。正确合理的接地技术对计算机控制系统极为重要,接地的极为重要,接地的目的目的有两个:一是为了保证控制系有两个:一是为了保证控制系统稳定可靠地运行,防止地环路引起的干扰,常称为统稳定可靠地运行,防止地环路引起的干扰,常称为工作接地;二是为了避免操作人员因设备的绝缘损坏工作接地;二是为了避免操作人员因设备的绝缘损坏或下降遭受触电危险和保证设备的安全,或下降遭受触电危险和保证设备的安全,这称为保
29、护这称为保护接地接地。本节主要讨论工作接地技术。本节主要讨论工作接地技术。第48页/共68页在计算机控制系统中,大致有以下几种地线:模拟地、数字地、信号地、系统地、交流地和保护地。模拟地作为传感器、变送器、放大器、A/D和D/A转换器中模拟电路的零电位。模拟信号有精度要求,它的信号比较小,而且与生产现场连接。有时为区别远距离传感器的弱信号地与主机的模拟地关系,把传感器的地又叫信号地。数字地作为计算机各种数字电路的零电位,应该与模拟地分开,避免模拟信号受数字脉冲的干扰。系统地是上述几种地的最终回流点,直接与大地相连作为基准零电位。第49页/共68页交流地是计算机交流供电的动力线地或称零线,它的零
30、电位很不稳定。在交流地上任意两点之间往往就有几伏乃至几十伏的电位差存在。另外,交流地也容易带来各种干扰。因此,交流地绝不允许与上述几种地相连,而且交流电源变压器的绝缘性能要好,绝对避免漏电现象。保护地也叫安全地、机壳地或屏蔽地,目的是使设备机壳与大地等电位,以避免机壳带电影响人身及设备安全。以上这些地线如何处理,是接地还是浮地?是一点接地还是多点接地?这些是实时控制系统设计、安装、调试中的重要问题。第50页/共68页4 4印制线路板的地线分布印制线路板的地线分布设计印制线路板应遵守下列原则,以免系统内部地线产生干扰。(1)TTL,CMOS器件的地线要呈辐射状,不能形成环形。(2)印制线路板上的
31、地线要根据通过的电流大小决定其宽度,不要小于3mm,在可能的情况下,地线越宽越好。(3)旁路电容的地线不能长,应尽量缩短。(4)大电流的零电位地线应尽量宽,而且必须和小信号的地分开。第51页/共68页5主机系统的接地 计算机本身接地,同样是为了防止干扰,提高可靠性。下面介绍三种主机接地方式。(1)全机一点接地 计算机控制系统的主机架内采用图4-25所示的分别回流法接地方式。主机地与外部设备地的连接采用一点接地,如图4-28所示。为了避免多点接地,各机柜用绝缘板垫起来。这种接地方式安全可靠,有一定的抗干扰能力,一般接地电阻选为410左右。接地电阻越小越好,但接地电阻越小,接地极的施工就越困难。第
32、52页/共68页图4-28 全机一点接地双绞线第53页/共68页(2)主机外壳接地,机芯浮空为了提高计算机系统的抗干扰能力,将主机外壳作为屏蔽罩接地,而把机内器件架与外壳绝缘,绝缘电阻大于50M,即机内信号地浮空,如图4-29所示。这种方法安全可靠,抗干扰能力强,但制造工艺复杂,一旦绝缘电阻降低就会引入干扰。第54页/共68页图4-29 外壳接地机芯浮空第55页/共68页(3)多机系统的接地在计算机网络系统中,多台计算机之间相互通信,资源共享。如果接地不合理,将使整个网络系统无法正常工作。近距离的几台计算机安装在同一机房内,可采用类似图4-28那样的多机一点接地方法。对于远距离的计算机网络,多
33、台计算机之间的数据通信,通过隔离的办法把地分开。例如,采用变压器隔离技术、光电隔离技术或无线通信技术。第56页/共68页介绍了这么多的硬件电路抗干扰措施,再来看看软件上又有哪些好的措施。首先是在控制系统的输入输出通道中,采用某种计算方法对通道的信号进行数字处理,以削弱或滤除干扰噪声,这就是前面讨论过的数字滤波方法。这是一种廉价而有效的软件程序滤波,在控制系统中被广泛采用。而对于那些可能穿过通道而进入CPU的干扰,可采取指令冗余、软件陷阱以及程序运行监视等措施来使CPU恢复正常工作。第57页/共68页4.3.1 指令冗余技术当计算机系统受到外界干扰,破坏了CPU 正常的工作时序,可能造成程序计数
34、器PC的值发生改变,跳转到随机的程序存储区。当程序跑飞到某一单字节指令上,程序便自动纳入正轨;当程序跑飞到某一双字节指令上,有可能落到其操作数上,则CPU会误将操作数当操作码执行;当程序跑飞到三字节指令上,因它有两个操作数,出错的机率会更大。为了解决这一问题,可采用在程序中人为地插入一些空操作指令NOP或将有效的单字节指令重复书写,此即指令冗余技术。由于空操作指令为单字节指令,且对计算机的工作状态无任何影响,这样就会使失控的程序在遇到该指令后,能够调整其 PC 值至正确的轨道,使后续的指令得以正确地执行。第58页/共68页但我们不能在程序中加入太多的冗余指令,以免降低程序正常运行的效率。一般是
35、在对程序流向起决定作用的指令之前以及影响系统工作状态的重要指令之前都应插入两、三条NOP指令,还可以每隔一定数目的指令插入NOP指令,以保证跑飞的程序迅速纳入正确轨道。指令冗余技术可以减少程序出现错误跳转的次数,但不能保证在失控期间不干坏事,更不能保证程序纳入正常轨道后就太平无事了。解决这个问题还必须采用软件容错技术,使系统的误动作减少,并消灭重大误动作。第59页/共68页 4.3.2 软件陷阱技术指令冗余使跑飞的程序安定下来是有条件的,首先跑飞的程序必须落到程序区,其次必须执行到冗余指令。当跑飞的程序落到非程序区(如EPROM中未使用的空间、程序中的数据表格区)时,对此情况采取的措施就是设立
36、软件陷阱。软件陷阱,就是在非程序区设置拦截措施,使程序进入陷阱,即通过一条引导指令,强行将跑飞的程序引向一个指定的地址,在那里有一段专门对程序出错进行处理的程序。如果我们把这段程序的入口标号称为ERROR的话,软件陷阱即为一条 JMP ERROR指令。为加强其捕捉效果,一般还在它前面加上两条NOP指令,因此真正的软件陷阱是由3条指令构成:第60页/共68页 NOP NOP JMP ERROR软件陷阱安排在以下四种地方:未使用的中断向量区,未使用的大片ROM空间,程序中的数据表格区以及程序区中一些指令串中间的断裂点处。由于软件陷阱都安排在正常程序执行不到的地方,故不影响程序的执行效率,在当前EP
37、ROM容量不成问题的条件下,还应多多安插软件陷阱指令。第61页/共68页4.4 程序运行监视系统引言4.4.1 Watchdog Timer4.4.1 Watchdog Timer工作原工作原理理 4.4.2 Watchdog Timer4.4.2 Watchdog Timer实现方实现方法法第62页/共68页工业现场难免会出现瞬间的尖峰高能脉冲干扰,可能会长驱直入作用到CPU芯片上,使正在执行的程序跑飞到一个临时构成的死循环中,这时候的指令冗余和软件陷阱技术也无能为力,系统将完全瘫痪。此时必须强制系统复位,摆脱死循环。由于操作者不可能一直监视系统,这就需要一个独立于CPU之外的监视系统,在程
38、序陷入死循环时,能及时发现并自动复位系统,这就是看守大门作用的程序运行监视系统,国外称为“Watchdog Timer”,即看门狗定时器或看门狗。第63页/共68页4.4.1 Watchdog Timer4.4.1 Watchdog Timer工作原理工作原理为了保证程序运行监视系统的可靠性,监视系统中必须包括一定的硬件部分,且应完全独立于CPU之外,但又要与CPU保持时时刻刻的联系。因此,程序运行监视系统是硬件电路与软件程序的巧妙结合。图4-30给出了Watchdog Timer的工作原理。CPU可设计成由程序确定的定时器1,看门狗被设计成另一个定时器2,它的计时启动将因CPU的定时访问脉冲
39、P1的到来而重新开始,定时器2的定时到脉冲P2连到CPU的复位端。两个定时周期必须是 T1T2,T1就是CPU定时访问定时器2的周期,也就是在CPU执行的应用程序中每隔T1时间安插一条访问指令。第64页/共68页在正常情况下,CPU每隔T1时间便会定时访问定时器2,从而使定时器2重新开始计时而不会产生溢出脉冲P2;而一旦CPU受到干扰陷入死循环,便不能及时访问定时器2,那么定时器2会在T2时间到达时产生定时溢出脉冲P2,从而引起CPU的复位,自动恢复系统的正常运行程序。第65页/共68页图4-30 Watchdog Timer工作原理第66页/共68页4.4.2 Watchdog Timer4.4.2 Watchdog Timer实现方法实现方法以前的Watchdog Timer硬件部分是用单稳电路或自带脉冲源的计数器构成,一是电路有些复杂,二是可靠性有些问题。美国Xicor公司生产的X5045芯片,集看门狗功能、电源监测、EEPROM、上电复位等四功能为一体,使用该器件将大大简化系统的结构并提高系统的性能。第67页/共68页感谢您的观看。第68页/共68页
限制150内