1
第 5章 应用程序设计和实现技术 (3)
抗干扰技术
5.1 干扰的来源与传播途径
5.1.1 干扰的来源
5.1.2 干扰的传播途径
5.2 硬件抗干扰措施
5.2.1 串模干扰的抑制
5.2.2 共模干扰的抑制
5.2.3 长线传输干扰的抑制
5.2.4 信号线的选择与敷设
5.2.5 电源系统的抗干扰
5.2.6 接地系统的抗干扰
5.3 软件抗干扰措施
5.3.1 指令冗余技术
5.3.2 软件陷阱技术
5.4 程序运行监视系统
5.4.1 Watchdog Timer工作原理
5.4.2 Watchdog Timer实现方法
2
计算机控制系统的 被控变量分布在生产现场的各个角落,因而计算机是处于干扰频繁的恶劣环境中,干扰是有用信号以外的噪声,这些干扰会影响系统的测控精度,降低系统的可靠性,甚至导致系统的运行混乱,造成生产事故,
但干扰是客观存在的,所以,人们必须研究干扰,以采取相应的抗干扰措施,本章主要讨论干扰的来源、传播途经及抗干扰的措施,
3
干扰的来源是多方面的,有时甚至是错综复杂的,干扰有的来自 外部,有的来自 内部,
外部干扰 由使用条件和外部环境因素决定,外部干扰环境如图 5-1所示,有 天电干扰,如 雷电或大气电离 作用以及其他气象引起的干扰电波 ;天体 干扰,如太阳或其他星球辐射的电磁波 ;电气设备 的干扰,如广播电台或通讯发射台发出的电磁波,动力机械、高频炉、电焊机等都会产生干扰 ;此外,荧光灯、开关,电流断路器、过载继电器,指示灯等具有 瞬变过程的设备 也会产生较大的干扰 ;来自电源的 工频干扰 也可视为外部干扰,
5.1.1 干扰的 来源
5.1 干扰的 来源 与 传播途径
4
高压电缆闪电 雷达、电台等天线发射微机控制系统地电位波动电机、电焊机等大用电设备引入噪声交流动力线图 5-1 外部干扰环境
5
内部干扰 则是由系统的结构布局、制造工艺所引入的,内部干扰环境如图 5-2所示,有 分布电容、分布电感引起的 耦合感应,电磁场辐射感应,长线传输 造成的 波反射;多点接地造成的电位差 引入的干扰;装臵及设备中各种寄生振荡引入的干扰以及热噪声、闪变噪声、尖峰噪声等引入的干扰;甚至 元器件产生的噪声 等,
图 5-2 内部干扰环境
PCB
Printed Circuit Board
6
干扰传播的途径主要有三种,静电耦合,磁场耦合,
公共阻抗耦合,
1.静电耦合
5.1.2 干扰的传播途径 (了解 )
导线 1 导线 2
C 12
C 1g
U 1
C 2g
R
U n
图 5-3 导线之间的静电耦合
7
静电耦合是电场 通过电容耦合 途径窜入其它线路的,两根并排的导线 之间会构成 分布电容,如 PCB
版上 印制线路之间,变压器绕线之间都会构成分布电容,
图 5-3给出两根平行导线之间静电耦合的示意电路,Cl2是两个 导线之间 的 分布电容,C1g,C2g是 导线对地 的电容,R是导线 2对地电阻,如果 导线 1上有信号 U1存在,那么它就会成为导线 2的干扰源,在导线
2上产生 干扰电压 Un.显然,干扰电压 Un与干扰源 U1、
分布电容 Cl2,C2g的大小有关,
8
空间的 磁场耦合是通过导体间的互感耦合 进来的,在任何载流导体周围空间中都会产生磁场,而 交变磁场 则对其周围闭合电路产生 感应电势,如设备内部的线圈或变压器的漏磁会引起干扰,还有普通的两根导线平行架设时,也会产生磁场干扰,如图 5-4所示,
如果导线 1为承载着 10kV的交流输电线,导线 2为与之 相距 1米并平行走线 10米 的信号线,两线之间的 互感 M会使信号线上感应到的 干扰电压 Un高达几十毫伏,
如果导线 2是连接 热电偶的信号线,那么这几十毫伏的干扰噪声 足以淹没 热电偶传感器的有用信号,
2.磁场耦合
9
1线导 2线导
R2
R3R1
I1
U1
Un
M
图 5-4 导线之间的磁场耦合
10
公共阻抗耦合发生在 两个电路的电流流经一个 公共阻抗 时,一个电路在该阻抗上的电压降会影响到另一个电路,从而产生干扰噪声的影响,
图 5-5给出一个公共电源线的阻抗耦合示意图,
3.公共阻抗耦合
11
在一块印制电路板上,运算放大器 A1和 A2是 两个独立的回路,但都接入一个 公共电源,电源回流线的等效电阻 R1,R2是两个回路的公共阻抗,当回路电流 i1变化时,
在 R1和 R2上产生的电压降 变化就会影响到另一个回路电流 i2.反之,也如此,
R 3 R 1
i2 i1
R 4 R 2
图 5-5 公共电源线的阻抗耦合
A 1A 2
12
了解了干扰的来源与传播途径,我们就可以采取相应的抗干扰措施,在硬件抗干扰措施中,除了按照干扰的三种主要作用方式 —— 串模,共模及长线传输干扰 来分别考虑外,还要从 布线,电源,接地 等方面考虑,
5.2 硬件 抗干扰措施
13
扼流圈
14
串模干扰是指迭加在被测信号上的干扰噪声,
即干扰源串联在信号源回路中,其表现形式与产生原因如图 5-6所示,
图中 Us为信号源,Un为串模干扰电压,邻近导线 (干扰线 )有交变电流 Ia流过,由 Ia产生的电磁干扰信号就会通过 分布电容 C1和 C2的耦合,引至计算机控制系统的输入端,
5.2.1 串模干扰 的抑制
15
对串模干扰的抑制较为困难,因为 干扰 Un直接与 信号 Us串联,目前常采用 双绞线与滤波器 两种措施,
sU
nU
U
1C
2C
干扰线
s计算机控制系统 计算机控制系统
aI
图 5-6 串模干扰
(a)表现形式 (b)产生原因
16
1,双绞线 (twisted-paircable)做信号引线双绞线是由 两根互相绝缘的导线 扭绞缠绕组成,为了增强抗干扰能力,可在双绞线的外面 加金属编织物或护套 形成 屏蔽双绞线,图 5-7给出了 带有屏蔽护套 的多股双绞线 实物图,
图 5-7 双绞线
17
采用双绞线作信号线的目的,就是因为外界电磁场会在 双绞线相邻的小环路上 形成 相反方向的感应电势,从而 互相抵消减弱干扰 作用,双绞线 相邻的扭绞处之间为双绞线的 节距,双绞线不同节距会对串模干扰起到不同的的抑制效果,见表 5-1.
双绞线可用来传输 模拟信号和数字信号,用于点对点连接和多点连接应用场合,传输距离为 几公里,数据传输速率可达 2Mbps.
18
节距 (mm) 干扰衰减比 屏蔽效果
100 14.1 23
75 71.1 37
50 112.1 41
25 141.1 43
平行线 1.1 0
表 5-1 双绞线节距 对串模干扰的抑制效果
19
2.引入滤波电路采用 硬件滤波器 抑制串模干扰是一种常用的方法,
根据 串模干扰频率与被测信号频率 的分布特性,可以选用具有 低通 /高通 /带通滤波器,
如果 干扰频率比被测信号频率高,则选用低通滤波器 ;
如果干扰频率比被测信号频率 低,则选用 高通 滤波器;
如果干扰频率落在被测信号频率的 两侧 时,则需用 带通滤波器,
20
一般采用 电阻 R、电容 C、电感 L等无源元件构成滤波器,图 5-8(a)所示为在模拟量输入通道中引入的一个 无源二级阻容低通滤波器,但它的 缺点是对有用信号也会有较大的衰减,
为了把增益与频率特性结合起来,对于 小信号 可以采取以 反馈放大器为基础的有源滤波器,它不仅可以达到滤波效果,而且能够 提高信号的增益,如图
5-8(b)所示,
21
22
23
共模干扰 是指计算机控制系统 输入通道中信号放大器两个输入端上共有的干扰电压,可以是直流电压,也可以是交流电压,其幅值达 几伏甚至更高,这取决于现场产生干扰的环境条件和计算机等设备的接地情况,其表现形式与产生原因如图 5-9所示,
6.2.2 共模干扰 的抑制
24
)a(
mcU
sU
rZ
计控系统
mcU
源号信
U
)b(式形现表 因原生产图 8 -9 共模 干扰
Z
s
r
计控系统
25
在计算机控制系统中一般都用 较长的导线把现场中的传感器或执行器引入至计算机系统的输入通道或输出通道 中,这类信号传输线通常长达 几十米以至上百米,这样,现场信号的 参考接地点 与计算机系统输入或输出通道的 参考接地点之间 存在一个 电位差 Ucm.这个 Ucm是加在放大器输入端上共有的干扰电压,故称 共模干扰电压,
26
既然共模干扰产生的原因是 不同,地,之间存在的电压,以及 模拟信号系统对地的漏阻抗,因此,共模干扰电压的抑制就应当是 有效的隔离两个地之间的电联系,以及采用被测信号的 双端差动输入 方式,
具体的有 变压器隔离、光电隔离与浮地屏蔽等三种措施,
27
1.变压器隔离利用 变压器把现场信号源的地与计算机的地隔离开来,也就是把,模拟地,与,数字地,断开,被测信号通过变压器耦合获得通路,而共模干扰电压由于不形成回路而得到有效的抑制,
放大器 调制器 解调器 A /D 计算机
sU B
模拟地 数字地图 8 -10 变 压器隔离双绞线
s 1U s 2U
28
要注意的是,隔离前和隔离后应分别采用两组互相 独立的电源,以 切断两部分的地线联系,如图
5-10所示,
被测信号 Us经双绞线引到输入通道中的放大器,放大后的 直流信号 US1,先通过 调制器变换成交流信号,经 隔离变压器 B由原边传输到副边,然后用解调器再将它变换为 直流信号 US2,再对 US2进行 A/D
转换,这样,被测信号通过变压器的耦合获得通路,
而 共模电压由于变压器的隔离无法形成回路而得到有效的抑制,
29
2.光电耦合器 -光耦 (Opto-isolator) 参第 2章高速光耦 6N137
PT261
4N25,4N27
30
浮地屏蔽是 利用屏蔽层使输入信号的,模拟地,浮空,使 共模输入阻抗大为提高,共模电压在输入回路中引起的 共模电流大为减少,从而抑制了共模干扰的来源,使共模干扰降至很低,图 5-13
给出了一种 浮地输入双层屏蔽放大电路,
3,浮地屏蔽
31
图 8-13 浮地输入双层屏蔽放大电路信号源
cm
U
外屏蔽层内屏蔽层计算机
s
U
sU
1sZ
2sZ
3sZ 2cZ
c
1cZ
3Z
(a ) 原理框图 (b) 等效电路
1I
2I
3I
A
cm
U
计算机屏蔽层
32
由生产现场到计算机的连线往往长达几十米,
甚至数百米,即使在中央控制室内,各种连线也有几米到十几米,对于采用 高速集成电路的计算机来说,
长线的,长,是一个 相对的概念,是否,长线,取决于 集成电路的运算速度,例如,对于 ns级 的数字电路来说,lm左右的连线就应当作长线来看待 ;而对于
10us级 的电路,几米长 的连线才需要当作长线处理,
5.2.3 长线传输干扰 的抑制 (了解 )
33
信号在长线中传输除了会受到外界干扰和引起信号延迟外,还可能会产生 波反射现象,
当信号在长线中传输时,由于传输线的 分布电容和分布电感 的影响,信号会在 传输线内部产生正向前进的电压波和电流波,称为 入射波,
34
1.波阻抗的测量为了进行阻抗匹配,必须事先知道 信号传输线的波阻抗 RP,波阻抗 RP的测量如图 5-14所示,
图中的信号传输线为 双绞线,在传输线始端通过非门加入标准信号,用示波器观察非门 A的输出波形,调节 传输线终端的可变电阻 R,当 门 A输出的波形不畸变 时,即是 传输线的波阻抗与终端阻抗完全匹配,反射波完全消失,这时的 R值就是该传输线的波阻抗,即 Rp=R.
35
为了避免外界干扰的影响,在计算机中常常采用 双绞线和同轴电缆作信号线,
双绞线的波阻抗一般在 100~ 200Ω 之间,绞花愈密,波阻抗愈低,
同轴电缆的波阻抗约 50~ 100Ω 范围,
双绞线示波器信号 A
R
RP
图 5-14 传输线波阻抗的测量
36
2,终端阻抗匹配最简单的终端阻抗匹配方法如图 5-15(a)
所示,如果 传输线的波阻抗是 RP,那么当 R=RP时,
便实现了终端匹配,消除了波反射,此时 终端波形和始端波形的形状一致,只是时间上滞后,
由于终端电阻变低,则加大负载,使波形的高电平下降,从而降低了高电平的抗干扰能力,
但对波形的低电平没有影响,为了克服上述匹配方法的缺点,可采用图 5-15( b)所示的终端匹配方法,
37
双绞线A
RP
B
R2
双绞线A
RP
B
R
R1
EC
(a)
(b)
图 5-15 终端阻抗匹配
38
适当调整 R1和 R2的阻值,可使 R=Rp.这种匹配方法也能消除波反射,优点是 波形的高电平下降较少,缺点是低电平抬高,从而降低了低电平的抗干扰能力,
为了同时兼顾高电平和低电平两种情况,可选取 R1=R2=2Rp,此时 等效电阻 R=Rp.实践中 宁可使高电平降低得稍多一些,而让低电平抬高得少一些,
可通过适当选取电阻 R1和 R2,并使 R1> R2来达到此目的,当然还要保证 等效电阻 R=Rp.
39
3.始端阻抗匹配在 传输线始端串入电阻 R,如图 5-16所示,
也能 基本上消除反射,达到改善波形的目的,一般选择始端匹配电阻 R=RP-RSC
其中,RSC为门 A输出低电平时的输出阻抗,
双绞线A
RP
B
R
图 5-16始端阻抗匹配
40
这种匹配方法的优点是 波形的高电平不变,
缺点是波形低电平会抬高,其原因是终端门 B的输入电流在始端匹配电阻 R上的压降所造成的,
显然,终端所带负载门个数越多,则低电平抬高得越显著,
41
42
5.2.4 信号线的 选择与敷设 (了解 )
在计算机控制系统中,信号线的选择与敷设也是个不容忽视的问题,如果能 合理地选择信号线,并在实际施工中又能正确地敷设信号线,那么可以抑制干扰 ;反之,将会给系统引入干扰,造成不良影响,
43
1.信号线的选择对信号线的选择,一般应从抗干扰和经济实用这几个方面考虑,而 抗干扰能力则应放在首位,不同的使用现场,干扰情况不同,应选择不同的信号线,在不降低抗干扰能力的条件下,
应该尽量选用 价钱便宜,敷设方便的信号线,
44
有线电视传输线双绞线
45
( 1) 信号线类型 的选择在精度要求高、干扰严重的场合,应当采用 屏蔽信号线,表 6-2列出几种 常用的屏蔽信号线 的结构类型及其对干扰的抑制效果,
屏蔽结构 干扰衰减比 屏蔽效果 (dB) 备注铜网 (密度 85%) 103:1 40.3 电缆的可挠性好,适合近距离使用铜带迭卷 (密度 90%) 376:1 51.5 带有焊药,易接地,
通用性好铝聚酯树脂带迭卷 6610:1 76.4 应使用电缆沟,抗干扰效果最好表 5-2 屏蔽信号线性能及其效果
46
有屏蔽层的塑料电缆 是按抗干扰原理设计的,几十对信号在同一电缆中也不会互相干扰,
屏蔽双绞线 与屏蔽电缆相比性能稍差,但波阻抗高、体积小、可挠性好、装配焊接方便,特别适用于互补信号的传输,
双绞线之间的串模干扰小、价格低廉,是计算机控制实时系统常用的传输介质,
47
( 2)信号线 粗细 的选择从信号线价格、强度及施工方便等因素出发,信号线的截面积在 2mm以下 为宜,一般采用
1.5mm2和 1.0mm2两种,采用 多股线电缆 较好,其优点是可挠性好,适宜于 电缆沟有拐角和狭窄的地方,
48
2.信号线的 敷设选择了合适的信号线,还必须合理地进行敷设,
否则,不仅达不到抗干扰的效果,反而会引进干扰,
信号线的敷设要注意以下事项,
(1)模拟信号线与数字信号线不能合用同一根电缆,
要绝对避免信号线与电源线合用同一根电缆,
(2)屏蔽信号线的 屏蔽层要一端接地,同时要 避免多点接地,
49
( 3)信号线的敷设要 尽量远离干扰源,如避免敷设在大容量变压器、电动机 等电器设备的附近,
如果有条件,将 信号线单独穿管配线,在电缆沟内从上到下依次架设信号电缆、直流电源电缆、交流低压电缆、交流高压电缆,
表 6-3信号线和交流电力线之间的最少间距,供布线时参考,
50
电力线容量信号线和电力线之间的最少间距
( cm)电压( V) 电流( A)
125 10 12
250 50 18
440 200 24
5000 800 48
表 5-3 信号线和电力线之间的最少间距
51
(4)信号电缆与电源电缆必须分开,并尽量 避免平行敷设,如果现场条件有限,信号电缆与电源电缆不得不敷设在一起时,则应满足以下条件,
① 电缆沟内要设臵隔板,且使 隔板与大地连接,如图 5-17(a)所示,
② 电缆沟内用 电缆架或在沟底自由敷设 时,信号电缆与电源电缆间距一般应在 15cm以上,如图 5-17
(b)(c)所示;如果电源电缆无屏蔽,且为交流电压
220VAC、电流 10A时,两者间距应在 60cm以上,
③ 电源电缆使用屏蔽罩,如图 5-17( d)所示,
52
图 5-17 信号线的敷设信号电缆电源电缆隔板
(a)
信号电缆电源电缆
>15cm
(b)
信号电缆电源电缆
>15cm
(c)
电源电缆信号电缆屏蔽罩
(d)
53
5.2.5 电源系统 的抗干扰计算机控制系统一般是由 交流电网供电,电网电压与频率的波动将直接影响到控制系统的可靠性与稳定性,
实践表明,电源的干扰是计算机控制系统的一个主要干扰,抑制这种干扰的主要措施有以下几个方面,
54
理想的交流电应该是 50Hz的正弦波,但事实上,
由于 负载的变动如电动机、电焊机、鼓风机等电器设备的启停,甚至日光灯的开关都可能造成 电源电压的波动,严重时会使电源正弦波上出现 尖峰脉冲,如图 5-18所示,
这种 尖峰脉冲,幅值可达几十甚至几千伏,持续时间也可达几毫秒之久,容易造成计算机的,死机,,
甚至会损坏硬件,对系统威胁极大,在 硬件 上可以用以下方法加以解决,
1.交流电源 系统
55
u
o
t
图 5-18 交流电源正弦波上的尖峰脉冲
56
(1)选用 供电比较稳定的进线电源计算机控制系统的 电源进线要尽量选用比较稳定的交流电源线,至少不要将控制系统接到负载变化大、晶闸管设备多或者有高频设备的电源上,
57
( 2)利用 瞬态电压抑制器 TVS (Transient
Voltage Suppressor)消除尖峰干扰工作原理也称为 抗瞬变二极管,当 TVS管两端经受瞬间的高能量冲击 时,它能以 极高的速度使其阻抗骤然降低,同时 吸收一个大电流,将其两端间的 电压箝位在一个预定的数值 上,从而确保 后面的电路元件免受瞬态高能量的冲击而损坏,
58
( 3)采用 交流稳压器 稳定电网电压计算机控制的交流供电系统一般如图 5-20所示,图中 交流稳压器是为了抑制电网电压的波动,
提高计算机控制系统的稳定性,交流稳压器能 把输出波形畸变控制在 5%以内,还可以对 负载短路起限流保护作用,低通滤波器 是为了滤除电网中混杂的 高频干扰信号,保证 50Hz基波通过,
~ 2 2 0 V
图 9 -2 0 一般交流供电系统交流稳压器低通滤波器计算机控制系统直流稳压器图 5-20 一般交流供电系统
59
( 4)利用 UPS (Uninterrupted Power Supply)
保证不中断供电
60
~ 220 V
电 池充电器电池组 逆变器控制器交 流稳压器计算机切换直 流稳压器图 9- 21 不间断 电源 UPS 供电系统图 5-21 不间断电源 UPS供电系统
61
电网瞬间断电或电压突然下降等掉电事件会使计算机系统陷入混乱状态,是可能产生严重事故的恶性干扰,对于要求更高的计算机控制系统,可以 采用不间断电源即 UPS向系统供电,如图 5-21所示,
正常情况下由交流电网通过交流稳压器、切换开关、直流稳压器供电 至计算机系统 ;同时交流电网也给 电池组充电,所有的 UPS设备都装有 一个或一组电池和传感器,并且也包括交流稳压设备,
62
如果交流供电中断,系统中的 断电传感器检测到断电后就会将供电通路在极短的时间内 (3ms)切换到电池组,从而保证流入计算机控制系统的电流不因停电而中断,这里,逆变器能把电池直流电压逆变到正常电压频率和幅度的交流电压,具有 稳压和稳频 的双重功能,提高了供电质量,
63
( 5) 掉电保护电路对于没有使用 UPS的计算机控制系统,为了防止掉电后 RAM中的信息丢失,可以采用 镍电池对
RAM数据进行掉电保护,
图 5-22是一种某计算机系统 64kB存储板所使用的掉电保护电路,
系统电源 正常工作时,由外部电源 +5V供电,A
点电平高于备用电池 (3.6V)电压,VD2截止,存储器由主电源 (+5V)供电,
系统掉电时,A点电位低于备用电池电压,VD1
截止,VD2导通,由 备用电池向 RAM供电,当 系统恢复供电 时,VD1重新导通,VD2截止,又恢复主电源供电,
64
+5V AVD 1
VD2
3.6V
220|ìF
VCC
R A M
(8K× 8)
GND
VCC
R A M
(8K× 8)
GND
6264 6264
图 5-22掉电保护电路
0.1|ìF 0.1|ìF
65
对于没有采用镍电池进行掉电保护的一些控制系统,至少应设臵 电源监控电路 即硬件掉电检测电路,
在掉电电压下降到 CPU最低工作电压之前应能提出中断申请 ( 提前时间为几百微妙到数毫秒 ),使系统能及时对掉电作出保护反应 —— 在掉电中断子程序中,
首先进行现场保护,把当时的重要参数,中间结果以及输入输出状态作出妥善处理,并在片内 RAM中设臵掉电标志,
66
当电源恢复正常时,CPU重新复位,复位后应首先检查是否有掉电标记,如果没有,按一般开机程序执行,即首先系统初始化 ;如果有掉电标记,则说明 本次复位是掉电保护之后的复位,不应将系统初始化,而应按 掉电中断子程序相反的方式恢复现场,以一种合理的安全方式使系统继续工作,
67
这种监控电路有许多,其中一种简便实用的应用电路见后面介绍的 X5045与 CPU的接口电路,
上电时,电压超过 4.5V后,经过约 200ms的稳定时间后 RESET信号由高电平变为低电平 ;
掉电时,当电源电压低于 4.5V时,RESET信号立即变为高电平,使 CPU的 RESET端为高电平,系统复位,
68
RESET
D0
D1
D2
D3
SO
SI
SCK
CS
VCC
WP
VSS
X5045
+5V
RESET
CPU
图 5-31 X5045与 CPU的接口电路
69
2,直流电源 系统在 自行研制 的计算机控制系统中,无论是模拟电路还是数字电路,都需要 低压直流供电,为了进一步抑制来自于电源方面的干扰,一般在直流电源侧也要采用相应的抗干扰措施,
70
( 1) 交流电源变压器的屏蔽把 高压交流变成低压交流 的简单方法是用交流电源变压器,因此,对电源变压器设臵合理的 静电屏蔽和电磁屏蔽,就是一种十分有效的抗干扰措施,通常将电源变压器的 一、二次绕组分别加以屏蔽,一次绕组屏蔽层与铁心同时接地,如图 5-23(a)所示,在要求更高的场合,可采用 层间也加屏蔽的结构,如图 5-23(b)所示,
71
一次绕组二次绕组二次绕组一次绕组图 5-23 电源变压器的屏蔽
( a) ( b)
72
73
( 2)采用 直流开关电源直流开关电源是一种 脉宽调制型电源,由于脉冲频率高达 20kHz,所以 甩掉 了传统的 工频变压器,具有 体积小、重量轻、效率高 (> 70%)、电网电压范围大 [220V× (- 20%~ 10%) ]、电网电压变化时不会输出过电压或欠电压、输出电压保持时间长等优点,开关电源初、次级之间具有较好的隔离,对于 交流电网上的高频脉冲干扰 有较强的隔离能力,
现在已有许多直流开关电源产品,一般都有几个独立的电源,如 ± 5V,± 12V,± 24V等,
74
75
( 3)采用 DC-DC变换器如果系统供电电网波动较大,或者对直流电源的精度要求较高,就可以采用 DC-DC变换器,它们可以将 一种电压的直流电源,变换成另一种电压的直流电源,它们有 升压型或降压型,或升压 /降压型,DC-DC变换器具有体积小、性能价格比高、输入电压范围大、输出电压稳定(有的还可调)、
环境温度范围广等一系列优点,
显然,采用 DC-DC变换器可以方便地实现 电池供电,从而制造便携式或手持式计算机测控装臵,
76
( 4)每块电路板的 直流电源当一台计算机测控系统有几块功能电路板时,为了防止板与板之间的相互干扰,可以 对每块板的直流电源采取分散独立供电环境,在每块板上装一块或几块三端稳压集成块
( 7805/7905/7812/7912等)组成稳压电源,每个功能板单独对电压过载进行保护,不会因为某个稳压块出现故障而使整个系统遭到破坏,
而且也减少了公共阻抗的相互耦合,大大提高供电的可靠性,也有利于 电源散热,
77
( 5) 集成电路块 的 Vcc加旁路电容集成电路的 开关高速动作时会产生噪声,
因此无论电源装臵提供的电压多么稳定,Vcc和
GND端也会产生噪声,
为了降低集成电路的开关噪声,在印制线路板上的 每一块 IC上都接入高频特性好的旁路电容,将开关电流经过的线路局限在板内一个极小的范围内,旁路电容可用 0.01~ 0.1μF 的陶瓷电容器,旁路电容器的 引线要短而且紧靠 需要旁路的集成器件的 Vcc或 GND端,否则会毫无意义 (PCB布局 ).
78
6.2.6 接地 系统的抗干扰广义的接地包含两方面的意思,即接实地和接虚地,
接实地指的是与大地连接 ;
接虚地指的是与电位基准点连接,当这个基准点与大地电气绝缘,则称为 浮地连接,
正确合理的接地技术对计算机控制系统极为重要,
接地的目的有两个,
一、为了保证控制系统稳定可靠地运行,防止地环路引起的干扰,常称为 工作接地,本节主要讨论工作接地技术,
二、为了避免操作人员 因设备的绝缘损坏或下降遭受触电危险和保证设备的安全,这称为 保护接地,
79
在计算机控制系统中,大致有以下几种地线,模拟地 /信号地 /数字地 /系统地 /交流地和保护地,
(1)模拟地 AGND作为 传感器、变送器、放大器、
A/D和 D/A转换器中模拟电路的零电位,模拟信号有精度要求,它的信号比较小,而且与生产现场连接,有时为区别远距离传感器的弱信号地与主机的模拟地关系,把 传感器的地又叫信号地,
(2)数字地 DGND作为计算机各种 数字电路的零电位,应该与模拟地分开,避免模拟信号受数字脉冲的干扰,
(3)系统地 是 上述几种地的最终回流点,直接与大地相连作为基准零电位,
80
(5)交流地 是计算机交流供电的 动力线地 或称 零线,它的零电位很不稳定 (左零 右火 上接地 ).在交流地上任意两点之间往往就有 几伏乃至几十伏的电位差存在,另外,交流地也容易带来各种干扰,因此,交流地绝不允许与上述几种地相连,而且交流电源变压器的绝缘性能要好,绝对避免漏电现象,
(6)保护地 也叫 安全地、机壳地或屏蔽地,目的是使设备机壳与大地等电位,以避免机壳带电影响 人身及设备安全 (热水器安全问题 ).
以上这些地线如何处理,是接地还是浮地?是一点接地还是多点接地?这些是 实时控制系统设计、安装、调试中的重要问题,
81
1,单点接地 与多点接地低频电路应单点接地,这主要是避免形成产生干扰的地环路 ;当 频率低于 1MHz时,采用 单点接地 方式为好;
高频电路应该就近多点接地,这主要是避免,长线传输,
引入的干扰,当 频率高于 10MHz时,采用 多点接地 方式为好;
在 1~ 10MHz之间,如果采用单点接地,其地线长度不得超过波长的 1/20,否则应采用多点接地方式,
在工业控制系统中,信号频率大多小于 1MHz,所以通常采用单点接地方式,如图 5-24所示,
82
83
2.分别回流法单点接地在计算机控制系统中,各种地一般应采用分别 回流法单点接地,模拟地、数字地、安全地的分别回流法如图 6-25所示,
汇流条由多层铜导体构成,截面呈 矩形,各层之间有绝缘层,采用多层汇流条以减少自感,可减少干扰的窜入途径,在稍考究的系统中,分别使用 横向汇流条及纵向汇流条,机柜内各层机架之间分别设臵汇流条,以最大限度减小公共阻抗的影响,在空间将 数字地汇流条与模拟地汇流条间隔开,以避免通过汇流条间电容产生耦合,安全地(机壳地)始终与模拟地和数字地隔离开,这些地之间只是在最后才汇聚一点,
而且常常通过铜接地板交汇,然后用线径不小于 30mm2的多股软铜线焊接在接底板上深埋地下,
84
模拟地横汇流条模拟地纵汇流条数字地横汇流条数字地纵汇流条接地板系统地安全地
(机壳地)
图 9-25 分别回流法单点接地方式大地图 5-25 单点回流法接地方式
85
3,输入系统 的接地在计算机控制输入系统中,传感器、变送器和放大器通常采用屏蔽罩,而信号的传送往往使用屏蔽线,对于 屏蔽层的接地要慎重,也应遵守单点接地原则,输入信号源有 接地和浮地 两种情况,接地电路也有两种情况,
在图 5-26(a)中,信号源端接地,而 接收端放大器浮地,则屏蔽层应在信号源端接地( A点),
图 5-26(b)相反,信号源浮地,接收端接地,则屏蔽层应在接收端接地( B点),这样单点接地是为了避免在屏蔽层与地之间的回路电流,从而通过屏蔽层与信号线间的电容产生对信号线的干扰,一般输入信号比较小,而模拟信号又容易接受干扰,因此,对输入系统的接地和屏蔽应格外重视,
86
图 9-26 输入系统接地方式信号源遮蔽层屏蔽层放大器
sU
(a) 信号源端接地 (b) 接收端接地
A
信号源遮蔽层屏蔽层放大器
sU
B
图 5-26 输入系统接地方式
87
高增益放大器常常用金属罩屏蔽起来,但屏蔽罩的接地也要合理,否则将引起干扰,放大器与屏蔽罩间存在寄生电容,如图 5-27(a)所示,由图 5-27(b)的等效电路可以看出,寄生电容 C1和 C2使放大器的 输出端到输入端有一反馈通路,如不将此反馈消除,放大器可能产生振荡,解决的办法就是将 屏蔽罩接到放大器的公共端,如 5-27(c)所示,这样便将 寄生电容短路了,从而消除了反馈通路,
88
A A
A
U i
U i
U i
U 0
U 0
U 0
C 1
C 2
C 3
C 1 C 2C 3
C 1
C 2屏蔽罩屏蔽罩图 8 -27 放 大器公共端接屏蔽罩
( a ) (c)(b)
C 3
+
89
4,印制线路板 (PCB)的地线分布设计印制线路板应遵守下列原则,以免系统内部地线产生干扰,
( 1) TTL/CMOS器件的 地线要呈辐射状,不能形成环形,
( 2)印制线路板上的 地线要根据通过的电流大小决定其宽度,不要小于 3mm,在可能的情况下,地线越宽越好,
( 3) 旁路电容 的地线不能长,应尽量缩短,
( 4) 大电流的零电位地线应尽量宽,而且必须和小信号的地分开,
90
5.主机系统 的接地计算机本身接地,同样是为了防止干扰,提高可靠性,下面介绍三种主机接地方式,
(1)全机一点接地计算机控制系统的主机架内采用图 5-25所示的分别回流法接地方式,主机地与外部设备地的连接采用一点接地,如图 5-28所示,为了避免多点接地,各 机柜用绝缘板垫起来,这种接地方式安全可靠,有一定的抗干扰能力,一般接地电阻选为 4~ 10Ω 左右,接地电阻越小越好,但接地电阻越小,接地极的施工就越困难,(摇表 )
91
大地 地线绝缘板机印打道通程过机主机图绘 台作操图 9- 28 全 机一点接地图 5-28 全机一点接地
92
( 2) 主机外壳接地,机芯浮空为了提高计算机系统的抗干扰能力,将 主机外壳作为屏蔽罩接地,而把 机内器件架与外壳绝缘,
绝缘电阻大于 50MΩ,即机内信号地浮空,如图 5-29
所示,这种方法安全可靠,抗干扰能力强,但 制造工艺复杂,一旦绝缘电阻降低就会引入干扰,
93
芯机芯机地内机层缘绝壳外机主图 5-29 外壳接地 机芯浮空
94
( 3) 多机系统 的接地在计算机网络系统中,多台计算机之间相互通信,资源共享,如果接地不合理,将使整个网络系统无法正常工作,近距离的几台计算机安装在同一机房内,可采用类似 图 5-28那样的多机一点接地 方法,对于远距离的计算机网络,
多台计算机之间的数据通信,通过隔离的办法把地分开,例如,采用变压器隔离技术、光电隔离技术或无线通信技术,
95
介绍了这么多的硬件电路抗干扰措施,再来看看软件上又有哪些好的措施,
首先是在控制系统的输入输出通道中,采用某种计算方法对通道的信号进行数字处理,以削弱或滤除干扰噪声,这就是前面讨论过的 数字滤波方法,这是一种廉价而有效的软件程序滤波,在 控制系统中被广泛采用,
而对于那些可能穿过通道而进入 CPU的干扰,可采取 指令冗余、软件陷阱以及程序运行监视等措施 来使 CPU恢复正常工作,
6.3 软件 抗干扰 措施
96
看如下程序片段,PC( Program Counter)跑飞
PC 反汇编 源代码
97
6.3.1 指令冗余 技术当计算机系统受到外界干扰,破坏了 CPU正常的工作时序,
可能造成程序计数器 PC的值发生改变,跳转到 随机的程序存储区,当程序 跑飞 到某一单字节指令上,程序便自动纳入正轨 ;当程序跑飞到某一双字节指令上,有可能落到其操作数上,则 CPU会误将操作数当操作码执行;当程序跑飞到 三字节 指令上,因它有两个操作数,出错的机率会更大,
为了解决这一问题,可采用在程序中 人为地插入一些空操作指令 NOP或将有效的单字节指令重复书写,此即 指令冗余技术,由于空操作指令为单字节指令,且对计算机的工作状态无任何影响,这样就会使失控的程序在遇到该指令后,
能够调整其 PC值至正确的轨道,使后续的指令得以正确地执行,
98
但我们不能在程序中加入太多的冗余指令,以免降低程序正常运行的效率,一般是在 对程序流向起决定作用的指令之前 以及 影响系统工作状态的重要指令之前都应插入两、三条 NOP指令,还可以每隔一定数目的指令插入 NOP指令,以保证跑飞的程序迅速纳入正确轨道,
指令冗余技术可以减少程序出现错误跳转的次数,
但不能保证在失控期间不干坏事,更不能保证程序纳入正常轨道后就太平无事了,解决这个问题还必须采用 软件容错技术,使系统的误动作减少,并消灭重大误动作,
99
6.3.2 软件 陷阱 技术指令冗余 使跑飞的程序安定下来是有 条件的,首先跑飞的程序必须落到 程序区,其次必须执行到冗余指令,
当跑飞的程序落到 非程序区 (如 EPROM中未使用的空间、
程序中的数据表格区 )时,对此情况采取的措施就是设立软件陷阱,
软件陷阱,就是在非程序区设臵拦截措施,使程序进入陷阱,即通过一条引导指令,强行将跑飞的程序引向一个指定的地址,在那里有一段专门对程序出错进行处理的程序,
如果我们把这段程序的入口标号称为 ERROR的话,软件陷阱即为一条 LJMP ERROR指令,为加强其捕捉效果,一般还在它前面加上两条 NOP指令,因此真正的软件陷阱是由 3条指令构成,
100
NOP
NOP
LJMP ERROR
软件陷阱安排在以下四种地方,未使用的中断向量区,未使用的大片 ROM空间,程序中的数据表格区以及程序区中一些指令串中间的断裂点处,
由于软件陷阱 都安排在正常程序执行不到的地方,故不影响程序的执行效率,在当前
EPROM容量不成问题的条件下,还应多多安插软件陷阱指令,
101
工业现场难免会出现瞬间的 尖峰高能脉冲干扰,可能会长驱直入作用到 CPU芯片上,使正在执行的程序跑飞到一个 临时构成的死循环 中,这时候的指令冗余和软件陷阱技术也无能为力,系统将完全瘫痪,此时 必须强制系统复位,摆脱死循环,
由于操作者不可能一直监视系统,这就 需要一个独立于 CPU之外的监视系统,在程序陷入死循环时,能及时发现并自动复位系统,这就是看守大门作用的程序运行监视系统,国外称为,Watchdog Timer”,即 看门狗定时器或 看门狗,
5.4 程序运行监视系统 (重要 )
102
看门狗 实质上是一个 监视定时器,它的 定时时间是固定不变的,一旦定时时间到,产生中断或产生溢出脉冲,使系统复位 (记忆 !).
在正常运行时,如果 在 小于 定时时间间隔内对其进行刷新 (即重臵定时器,称为喂狗 ),定时器处于不断的重新定时过程,就不会产生中断或溢出脉冲,
5.4.1 Watchdog Timer工作原理 (理解 )
103
利用 这一原理给单片机加一看门狗电路,在执行程序中 在 小于 定时时间间隔内对其进行重臵,
而当程序因干扰而跑飞时,因没能执行正常的程序而 不能在小于定时时间内对其刷新,
当定时时间到,定时器产生中断,在中断程序中使其返回到起始程序,或利用溢出产生的脉冲控制单片机复位,
104
为了保证程序运行监视系统的可靠性,监视系统中 必须包括一定的硬件部分,且应完全独立于 CPU之外,但又要与 CPU保持时时刻刻的联系,因此,程序运行监视系统是 硬件电路与软件程序 的巧妙结合,图 5-30给出了
Watchdog Timer的工作原理,
CPU可设计成由程序确定的定时器 1,看门狗被设计成另一个定时器 2,它的计时启动将因 CPU的定时访问脉冲 P1的到来而重新开始,定时器 2的定时到脉冲 P2连到
CPU的复位端,两个定时周期必须是 T1< T2,T1就是 CPU定时访问定时器 2的周期,也就是在 CPU执行的应用程序中每隔 T1时间安插一条访问指令,
105
CPU
(T 1)
定时器
(T2)定时访问脉冲 P1
重新启动复位定时到脉冲 P2
图 5-30 Watchdog Timer 工作原理
P1
P2
T2
应用程序访问指令访问指令访问指令
T1
T1
T1
死循环T1
106
在正常情况下,CPU每隔 T1时间便会定时访问定时器 2,从而使定时器 2重新开始计时而不会产生溢出脉冲 P2;而 一旦 CPU受到干扰陷入死循环,便不能及时访问定时器 2,那么定时器 2会在 T2时间到达时产生定时溢出脉冲 P2,从而引起 CPU的复位,自动恢复系统的正常运行程序,(理解 )
107
5.4.2 Watchdog Timer实现方法以前的 Watchdog Timer硬件部分是用单稳电路或自带脉冲源的计数器构成,一是电路有些复杂,二是可靠性有些问题,
美国 Xicor公司生产的 X5045芯片 (datasheet),
集 看门狗功能、电源监测,EEPROM、上电复位等四功能为一体 (记忆 !),使用该器件将大大简化系统的结构并提高系统的性能,
108
X5045
(1)CS*(Chip Select):片选信号,低电平时 X5045工作,变为高电平时将使看门狗定时器重新开始计时
(7)RESET:复位,高电平有效,用于电源检测和看门狗超时输出
(6)SCK(Serial Clock):串行时钟
(2)SO(Serial Output):串行输出,时钟 SCK的下降沿同步输出数据
(5)SI(Serial Input):串行输入,时钟 SCK的上升沿锁存数据
(3)WP*(Write Protect):写保护,低电平时写操作被禁止,高电平时所有功能正常
(4)Vss:地
(8)Vcc:电源电压
109
图 5-31 X5045与 CPU的接口电路
RESET
D0
D1
D2
D3
SO
SI
SCK
CS
WCC
WP
VSS
X5045
+5V
RESET
CPU
MCS-51
110
它与 CPU的接口电路很简单,X5045的信号线
SO/SI/SCK/CS 与 CPU的数据线 D0~ D3相连,用软件控制引脚的读 (SO)/写 (SI)及选通 (CS*).X5045的引脚 RESET与
CPU的复位端 RESET相连,利用 访问程序 造成 CS*引脚上的信号变化,就算访问了一次 X5045.
在 CPU正常工作时,每隔一定时间 (小于 X5045的定时时间 )运行一次这个访问程序,X5045就不会产生溢出脉冲,
一旦 CPU陷入死循环,不再执行该程序也即不对 X5045进行访问,则 X5045就会在 RESET端输出宽度 100ms/400ms的正脉冲,足以使 CPU复位,
这里,X5045中的看门狗对 CPU提供了完全独立的保护系统,它提供了三种定时时间,200ms/600ms/1.4s,可用编程选择,
111
5.4.3 复位电路电路设计复位电路是单片机系统所必需的,没有正确的复位信号,单片机就不能正常工作,通常单片机的复位操作有 上电复位、人工手动复位和运行监视复位,而运行监视复位又包括 看门狗监视复位和电源监视复位,其详细的功能介绍如下,
(1)上电复位,上电复位是指单片机系统在 上电时的复位操作,此复位必须保证单片机 上电后能立即进入规定的复位状态,
(2)入工手动复位,人工手动复位是指在单片机运行过程中出现异常或其他情形下,需要重新开始运行程序时,
在 复位引脚加复位信号而产生的复位,
112
(3)看门狗监视复位,看门狗监视复位是指 程序运行失常、跑飞或死机时的系统复位,
(4)电源监测复位 电源监测复位是指在 电源电压下降到一定门槛电平值,或电源未达到额定要求时的系统复位,
根据对复位信号按要求不同,又有 低电平复位和高电平复位之分,不管是何种复位电路,其输出的复位信号必须有一定的 宽度,通常复位信号应持续 24个振荡周期 以上,这样才能保证系统可靠复位,
113
使用芯片 MAX706 进行复位 (实验电路板 )
up监控器 MAX706
MAX706内部由时基信号发生器,看门狗定时器,复位信号发生器及掉电电压比较器构成,其中时基信号发生器提供看门狗定时器定时脉冲,
芯片的引脚如图所示,各引脚愈义如下,
(1)MR*(Manual-Reset Input)手动复位
(2)Vcc 电源
(3)GND 地
(4)PFI(Power Fail Voltage Monitor Input)电源故障电压监控输入
(5)PFO*(Power-Fail Output)电源故障输出,当监控电压 PFI<1.25V,
PFO变低,
(6)WDI(Watchdog Input)看门狗输入
(8)WDO*(Watchdog Output)看门狗输出
(7)RESET高电平复位信号输出端
114
115
1.复位功能手动复位,当接 在 MR*引脚上的按键按下,MR*
接收低电平信号,RESET变为高电平,延时时间为
200ms,使 8XX51复位,
当 电源电压降至 4.4V以下,内部的电压比较器使 RESET变为高电平 使单片机复位,直到 Vcc上升到正常值,
116
2.
MAX706的内部看门狗的定时器的 定时时间为 1.6秒,如果在 1.6秒内 WDI引脚保持为固定电平 (高电平或低电平 ),看门狗定时器 输出端 WDO*变为低电平,二极管导通,使低电平加到 MR*
端,MAX706产生 RESET信号使 8XX51复位,直到复位后看门狗被清零,WDO*才变为高电平,
当 WDI有一个跳变沿 (上升沿或下降沿 )信号 时,看门狗定时器被清零,如图将 DI接到 8XX51的某根并行口线上,在程序中只要 在小于 1.6秒时间内将该口线取反一次,即能使定时器 清零而重新计数,不产生超时溢出,程序正常运行,
当程序跑飞,不能执行产生 WDI的跳变指令,到 1.6秒,WDO
因超时溢出而变低,产生复位信号使程序复位,
看门狗定时器有三种情况被清零,发生复位,WDI处于三态和
WDI检测到一个上升沿或一个下降沿,
117
3.
当电源电压 (如电池 )电压下降,监测点小于
1.25V(即 PFI< 1.25V),PFO变为低电平,产生中断请求,
在中断服务中,可以采用相应的措施,
μp监控器的型号很多,选择时应注意是 高电平复位还是低电平复位,要和自己选择的机型匹配,美国
Xicor公司的 X5043(低电平 复位 ),X5045(高电平 复位 )
监控器,有电压检测和看门狗定时器,还有 512× 8位的串行 EEPROM,且价格低廉,对提高系统可靠性很有利,
118
看门狗定时器也可以用 软件的方式构成,这需要单片机内有富裕的定时 /计数器,由于软件运行受单片机状态的影响,其 监控效果 远不及 硬件看门狗定时器好,软件看门狗仅在环境干扰小或对成本要求高的系统中采用,
不少 单片机内带有看门狗定时器,在 ATMEL的 89S51/52系列 (datasheet)的单片机中内设有 看门狗定时器,89S51与
89C51功能相同,指令兼容,HEX程序无需任何转换可以直接使用,89S51/52比起 89C51/52除可 在线编程 ISP外,就是 增加了一个看门狗功能,
89S51/52内的看门狗定时器是一个 14位的计数器,每过
16384个机器周期看门狗定时器溢出,产生一个 98/fosc的正脉冲加到复位引脚上,使系统复位,使用看门狗功能,需初始化看门狗寄存器 WDTRST(地址为 0A6H),对其写入 01EH,再写入 0E1H,即激活看门狗,在正常执行程序时,在 必须在小于
16383个机器周期内需进行喂狗,即对看门狗寄存器 WDTRST
(地址为 0A6H)再写入 01EH和 0E1H.
119
看门狗具体使用方法如下,
在程序初始化中向看门狗寄存器( WDTRST地址是 0A6H)
中先写入 01EH,再写入 0E1H.即可激活看门狗,
WDTRST EQU 0A6H
ORG 0000H
LJMP START
……,
START,MOV WDTRST,#1EH ;先送 1EH,激活看门狗
MOV WDTRST,#0E1H ;后送 E1H
DOG,……
MOV WDTRST,#1EH ;先送 1EH,喂狗指令
MOV WDTRST,#0E1H ;后送 E1H
……
LJMP DOG
120
注意事项,
1.89S51的看门狗必须 由程序激活后才开始工作,所以必须保证 CPU有可靠的上电复位,否则看门狗也无法工作
2.看门狗使用的是 CPU的晶振,在晶振停振的时候看门狗也无效,
3.89S51只有 14位计数器,在 16383个机器周期 内必须至少喂狗一次,而且这个时间是固定的,无法更改,当晶振为
12MHz(1μs) 时每 16个毫秒 以内需喂狗一次,
121
本章小结计算机控制系统总是处在干扰频繁的恶劣环境中,
因此如果没有足够的抗干扰措施,即使系统的各种硬件与软件的设计都很合理,也未必能正常地工作,抗干扰能力是设计与运行一个计算机控制系统必须要考虑的重要指标,但干扰的形式与危害多种多样,而系统的结构与功能又是各式各样,因此,应当 根据具体的实际系统采取相应的抗干扰措施,
本章从干扰的来源与传播途径入手,分析了硬件与软件方面的各种抗干扰措施,重点讨论了对系统过程通道中串模干扰与共模干扰的抑制,对 CPU主机的程序运行监视复位系统,另外对施工工程中的信号线、
电源系统与接地系统的抗干扰措施也作了介绍,