计算机软件抗干扰技术
- 格式:doc
- 大小:37.50 KB
- 文档页数:6
西交《计算机控制技术》在线作业
一、单选题(共25 道试题,共50 分。
)
1. 在微计算机系统中,高速外设与内存储器进行批量数据传送时,应采用()
A. 无条件传送
B. 程序查询控制
C. 中断控制
D. 直接存储其存取
正确答案:D 满分:2 分得分:2
2. 8255A与外设间每个端口的数据线为()
A. 4位
B. 8位
C. 16位
D. 32位
正确答案:B 满分:2 分得分:2
3. CPU被动,外设主动的接口方式为()
A. 无条件程控方式
B. 查询控制方式
C. 中断控制方式
D. A,B,C都不对
正确答案:C 满分:2 分得分:2
4. 设被测温度的变化范围为0~100摄氏度,要求测量误差不超过0.1摄氏度,则应选用的A/D转换器的分辨率至少为()位
A. 4
B. 0
C. 10
D. 12
正确答案:C 满分:2 分得分:2
5. 完整的计算机系统应该包括()
A. 运算器、存储器和控制器
B. 主机和外设
C. 主机和应用程序
D. 硬件系统和软件系统
正确答案:D 满分:2 分得分:2
6. 字符A的ASCII码为41H,字符a的ASCII码为()
A. 41H
B. 42H
C. 61H
D. 62H
正确答案:C 满分:2 分得分:2
7. 在PID调节系统中,若想增强微分作用,正确的作法是()。
A. 加大系数TI
B. 加大系数KP
C. 加大系数KI。
大学生《计算机控制技术》考试复习题及答案一.单选题1.由于计算机只能接收数字量,所以在模拟量输入时需经()转换。
A.A/D转换器B.双向可控硅C.D/A转换器D.光电隔离器参考答案:A2.若系统欲将一个D/A转换器输出的模拟量参数分配至几个执行机构,需要接入()器件完成控制量的切换工作。
A.锁存器锁存B.多路开关C.A/D转换器转换?D.反多路开关参考答案:D3.在LED显示系统中,若采用共阳极显示器,则将段选模型送至()。
A.阳极B.阴极C.阴极或阳极D.先送阴极再送阳极参考答案:B4.电机控制意味着对其转向和转速的控制,微型机控制系统的作法是通()实现的。
A.改变定子的通电方向和通电占空比B.改变转子的通电方向和通电占空比C.改变定子的通电电压幅值D.改变转子的通电电压幅值参考答案:B5.RS-232-C串行总线电气特性规定逻辑“1”的电平是()。
A.0.3伏以下B.0.7伏以上C.-3伏以下D.+3伏以上参考答案:C6.采用共阴极LED多位数码管显示时,应()。
A.位选信号为低电平,段选信号为高电平B.位选信号为高电平,段选信号为低电平C.位选信号、段选信号都是高电平D.位选信号、段选信号都是低电平参考答案:A7.关于微型计算机控制技术的叙述,正确的是()。
A.微型计算机控制技术只能用于单片机系统B.任何控制系统都可以运用微型计算机控制技术C.微型计算机控制技术不能用于自动化仪表D.微型计算机控制技术可用于计算机控制系统及自动化仪表参考答案:D8.计算机监督系统(SCC)中,SCC计算机的作用是()。
A.接受测量值和管理命令并提供给DDC计算机B.按照一定的数学模型计算给定值并提供给DDC计算机C.当DDC计算机出现故障时,SCC计算机也无法工作D.SCC计算机与控制无关参考答案:B9.闭环控制系统是指()。
A.系统中各生产环首尾相接形成一个环B.输出量经反馈环节回到输入端,对空置产生影响C.系统的输出量供显示和打印D.控制量只与控制算法和给定值相关10.下列缩写表示现场可编程控制逻辑阵列的是()。
学习-----好资料1. 若连续信号的最高频率为「max,按采样定理要求,采样频率“应>=2 5 _。
2. 通常在传感器与A/D之间加入调理电路的目的是使模拟输入电压满足A/D转换量程要求_______________ 。
3. 计算机控制系统的输入与输出信号主要分为数字信号与模拟信号。
4. 计算机控制系统的工作过程可归纳为以下三步:实时数据采集、实时控制决策、实时输出控制。
5. 共模干扰的抑制方法主要有:变压器隔离、光电隔离、浮地屏蔽、采用仪表放大器提高共模抑制比。
6. 一般数控系统组成包括:输入装置、输出装置、控制器和插补器等四大部分组成。
7. 控制系统的四大要素是:给定量、执行机构、控制对象以及被控量。
8. 传感器把生产过程的信号转换成电信号,然后用A/D转换器把模拟信号变成数字信号,读入计算机中,对于这样得到的数据,一般要进行一些预处理,其中最基本的处理有线性化处理、标度变换和系统误差的自动校准。
9. 计算机控制中的数字PID控制算法有数字PID位置型控制算法和数字PID增量型控制算法两种基本形式。
10. 经常采用的软件抗干扰技术包括:数字滤波技术、开关量的软件抗干扰技术___________________ 、指令冗余技术____ 、软件陷阱技术等。
11. 采用差分放大器作为信号前置放大是抑制串模干扰的方法之一。
12. 通常把叠加在被测信号上 ____________ 的干扰信号称为串模干扰。
13. 若信号的动态范围为N,计算机字长n > log2 (1+N) _____________ 。
1、计算机控制系统由计算机和被控对象(或生产过程)两部分组成。
计算机控制系统的基本工作原理可以归纳为:实时数据处理、实时监督决策、实时控制及输出。
3、若3 max为被采样的连续信号的最高频率,根据香农采样定理,采样周期必须满足T< n /3 max4、人机接口的作用:一是输入程序或数据,完成各种操作控制;二是显示生产过程的工艺状况与运行结果。
智能仪表常用的软件抗干扰措施在实际应用中,干扰信号可能影响到智能仪表的CPU、程序计数器(PC)或RAM等,导致程序运行失常。
因此,在设计智能仪表时除了在硬件方面采取抗干扰措施外,必须考虑软件的抗干扰措施。
干扰对软件的影响有两个方面,即程序运行失常和数据受干扰而发生变化。
单片机系统受到干扰后,会使RAM、程序计数器或总线上的数字信号错乱,从而引发一系列不良后果。
CPU得到错误的数据,就会使运行操作出错,导致错误结果,并将错误一直传递下去,形成一系列错误。
如果CPU获得错误地址信息,会使程序失控,即便此后程序恢复到正常状态,但是已经造成不良后果,埋下隐患,最终导致后续程序出错。
同时,如果干扰改变RAM以及特殊功能寄存器的状态,可能导致数值误差,改变程序状态,引起误动作。
软件抗干扰的任务在于CPU抗干扰技术和输入输出的抗干扰技术两方面。
前者主要是防止因干扰造成的程序“跑飞”,后者主要是消除信号中的干扰以便提高系统准确度。
1、数字滤波技术随机干扰会使仪表产生随机误差。
随机误差是指在相同条件下测量某一量时,其大小符号作无规律变化的误差,但随机误差在多次测量中服从统计规律。
在硬件设计中可以模拟滤波器来削弱随机误差,但是它在低频、甚低频时实现较困难。
数字滤波可以完成模拟滤波的功能,而且与模拟滤波相比,它具有如下优势:数字滤波是用程序实现的,无须添加硬件,可靠性高,稳定性好,不存在阻抗匹配的问题,而且多个输入通道可以共用,从而降低系统硬件成本;可以根据需要选择不同的滤波方法或改变滤波器的参数,使用灵活方便;数字滤波器可以对频率很低的信号进行滤波,而模拟滤波由于受电容容量的限制,频率不能太低。
常用的数字滤波算法有程序判断滤波、中值滤波、算术平均值滤波、滑动平均值滤波、加权滑动平均滤波、一阶惯性滤波等。
(1)程序判断滤波经验说明,许多物理量的变化都需要一定时间,相邻两次采样值之间的变化有一定的限度。
程序判断滤波的方法,便是根据生产经验,确定出相邻两次采样信号之间可能出现的偏差ΔY。
《计算机控制技术》复习大作业及参考答案==========================================================一、选择题(共20题)1。
由于计算机只能接收数字量,所以在模拟量输入时需经( A )转换。
A.A/D转换器B.双向可控硅C.D/A转换器D.光电隔离器2。
若系统欲将一个D/A转换器输出的模拟量参数分配至几个执行机构,需要接入( D )器件完成控制量的切换工作。
A.锁存器锁存B.多路开关C.A/D转换器转换D.反多路开关3。
某控制系统中,希望快速采样,保持器的保持电容CH应取值( A )。
A.比较小B.比较大C.取零值D.取负值4. 在LED显示系统中,若采用共阳极显示器,则将段选模型送至( B ).A.阳极B.阴极C.阴极或阳极D.先送阴极再送阳极5。
电机控制意味着对其转向和转速的控制,微型机控制系统的作法是通过( B )实现的。
A.改变定子的通电方向和通电占空比B.改变转子的通电方向和通电占空比C.改变定子的通电电压幅值D.改变转子的通电电压幅值6。
计算机监督系统(SCC)中,SCC计算机的作用是(B)A.接收测量值和管理命令并提供给DDC计算机B.按照一定的数学模型计算给定植并提供给DDC计算机C.当DDC计算机出现故障时,SCC计算机也无法工作D.SCC计算机与控制无关7。
键盘锁定技术可以通过(C)实现.A.设置标志位B.控制键值锁存器的选通信号C.A和B都行D.定时读键值8。
RS-232-C串行总线电气特性规定逻辑“1”的电平是(C).A.0.3 伏以下B.0.7伏以上C.—3伏以下D.+3伏以上9。
在工业过程控制系统中采集的数据常搀杂有干扰信号,( D)提高信/躁比.A.只能通过模拟滤波电路B.只能通过数字滤波程序C。
可以通过数字滤波程序/模拟滤波电路D.可以通过数字滤波程序和模拟滤波电路10.步进电机常被用于准确定位系统,在下列说法中错误的是( B )。
1. DAC0832 的VREF 接-5V,IOUT1 接运算放大器异名端,输入为1000000B ,输出为()。
+2.5V2. 采用ADC0809 构成模拟量输入通道,ADC0809 在其中起()作用。
A. 模拟量到数字量的转换3. 系统采用程序判断滤波,实验发现总有一些杂波残留,原因是()。
△Y 取值太大4. 当键盘与单片机间通过INT0 中断方式接口时,中断服务程序的入口地址是2040H,只有()才能正常工作。
C.把AJMP 2040H 的机器码存入0003H5. 在PID 调节系统中,若想增强微分作用,正确的作法是()。
加大系数KP6. 在计算机控制系统中,T 的确定十分重要,原因是()。
A.T 太大,系统精度不够7. 在计算机交流电机控制系统中,需要解决的问题是()。
设双向开关,使交流电通过并放大8. 在微型机控制系统中的模拟量输出通道中,最关键的器件是( )。
D/A 转换器9. 若系统中采样保持器的保持电容值比较小,则其()。
A.采样速度快但保持性能差10.RS—232C 的电气特性规定使用 ( )。
逻辑电平1.下面关于微型计算机控制技术的叙述,正确的是微型计算机控制技术可用于计算机控制系统及自动化仪表2.计算机监督系统(SCC)中,SCC计算机的作用是()。
按照一定的数学模型计算给定值并提供给DDC计算机3.关于现场总线控制系统,下面的说法中,不正确的是(C)。
C.只有同一家的FCS产品才能组成系统4.闭环控制系统是指(B)。
B.输出量经反馈环节回到输入端,对空置产生影响5.下列缩写表示现场可编程控制逻辑阵列的是(D)。
D.FPGA6.多路开关的作用(A)。
A.完成模拟量的切换7.采样-保持器的逻辑端接+5V,输入端从2.3V变至2.6V,输入端为(A)。
A.从2.3V变至2.6V8.CD4051的INH端接地,C、B、A端依次接101B,(C)被选通。
C.IN/OUT5通道9.CD4097的INH端接+5V,C、B、A端依次接111B,(D)被选通。
计算机控制系统试卷一答案一、简答题(每小题5分,共50分)1. 画出典型计算机控制系统的基本框图。
答:典型计算机控制系统的基本框图如下:2. 根据采样过程的特点,可以将采样分为哪几种类型?答:根据采样过程的特点,可以将采样分为以下几种类型。
(1) 周期采样指相邻两次采样的时间间隔相等,也称为普通采样。
(2) 同步采样如果一个系统中有多个采样开关,它们的采样周期相同且同时进行采样,则称为同步采样。
(3) 非同步采样如果一个系统中有多个采样开关,它们的采样周期相同但不同时开闭,则称为非同步采样。
(4) 多速采样如果一个系统中有多个采样开关,每个采样开关都是周期采样的,但它们的采样周期不相同,则称多速采样。
(5) 随机采样若相邻两次采样的时间间隔不相等,则称为随机采样。
3. 简述比例调节、积分调节和微分调节的作用。
答:(1)比例调节器:比例调节器对偏差是即时反应的,偏差一旦出现,调节器立即产生控制作用,使输出量朝着减小偏差的方向变化,控制作用的强弱取决于比例系数K P。
比例调节器虽然简单快速,但对于系统响应为有限值的控制对象存在静差。
加大比例系数K P可以减小静差,但是K P过大时,会使系统的动态质量变坏,引起输出量振荡,甚至导致闭环系统不稳定。
(2)积分调节器:为了消除在比例调节中的残余静差,可在比例调节的基础上加入积分调节。
积分调节具有累积成分,只要偏差e不为零,它将通过累积作用影响控制量u,从而减小偏差,直到偏差为零。
积分时间常数T I大,则积分作用弱,反之强。
增大T I将减慢消除静差的过程,但可减小超调,提高稳定性。
引入积分调节的代价是降低系统的快速性。
(3)微分调节器:为加快控制过程,有必要在偏差出现或变化的瞬间,按偏差变化的趋向进行控制,使偏差消灭在萌芽状态,这就是微分调节的原理。
微分作用的加入将有助于减小超调,克服振荡,使系统趋于稳定。
4. 采样保持器LF398工作原理图如下图,试分析其工作原理。
计算机控制系统习题3《计算机控制系统》习题3一、单项选择题1.双线性变换的一个特性是,连续传递函数经过双线性变换后所得Z传递函数的稳态增益()。
A、增大B、不变C、减小2. 用于定量描述计算机控制系统的实时性的术语是()。
A、响应时间B、实时时钟C、实时中断能力D、实时管理程序3. 一个8位的A/D转换器,其量化精度约为()。
A、1%B、0.5%C、0.4%D、0.2%4. 热继电器在电路中做电动机的()保护。
A、短路B、过载C、过流D、过压5. 满量程为10V的8位DAC芯片的分辨率为()。
A、39mvB、153mvC、78mvD、156mv6. 计算机控制系统中,采样周期T减少时,由于字长有限所引起的量化误差将()。
A、增大B、减小C、不变7. S平面的原点,映射到Z平面,相应的点为()。
A、原点B、位于Z平面单位圆外一点C、Z平面单位圆内一点D、Z=18. 采样控制系统的稳定性与输入信号的大小和形式(), 采样控制系统的稳态误差与输入信号的形式、类型()。
A、有关,有关B、无关,有关C、无关,无关D、有关,无关二、多项选择题1.以下属于数字滤波的优点的是()。
A、可靠性高B、灵活方便C、能处理低频信号D、功能强大2.以下是数字积分法的特点的是()。
A、运算速度快B、脉冲分配均匀C、易于实现多轴联动D、能描绘多种函数曲线3.下列的抗干扰方法中,属于硬件滤波的有()。
A、RC滤波B、光电隔离滤波C、平均值滤波D、中值滤波E、惯性滤波4.下述选项中,属于应用软件的有()。
A、汇编语言B、发电机故障分析软件C、DOS软件D、变电站综自软件E、惠普打印机驱动软件5.下列的抗干扰方法中,()可以抑制共模干扰。
A、带通滤波B、光电隔离C、浮地屏蔽D、终端屏蔽6.计算机控制系统中常用的离散化方法是()。
A、连续变换法B、双线性变换法C、脉冲函数法D、零极点匹配法7.下述选项中,属于外部总线的有()。
A、PCI总线B、PC总线C、USB总线D、ISA总线E、RS-488串行总线8.计算机控制系统中常用的离散化方法是()。
计算机控制技术复习资料一、填空1.若连续信号的最高频率为ωmax,按采样定理要求,采样频率ωs应>=2ωmax。
2.常用的数字滤波算法主要包括:算术平均值法、中位值滤波法、限幅滤波法、惯性滤波法等。
3.通常在传感器与A/D之间加入调理电路的目的是使模拟输入电压满足A/D转换量程要求。
4.计算机控制系统的输入与输出信号主要分为数字信号与模拟信号。
5.计算机控制系统的工作过程可归纳为以下三步:实时数据采集、实时控制决策、实时输出控制。
6.CPU在与I/O设备进行数据交换时主要存在以下问题:速度不匹配、时序不匹配、信息格式不匹配、信息类型不匹配。
7.计算机控制系统的过程通道分为四类:模拟量输入通道、模拟量输出通道、数字量输入通道和数字量输出通道。
8.共模干扰的抑制方法主要有:变压器隔离、光电隔离、浮地屏蔽、采用仪表放大器提高共模抑制比。
9.一般数控系统组成包括:输入装臵、输出装臵、控制器和插补器等四大部分组成。
10.数控系统按控制方式来分类,可以分为点位控制、直线切削控制和轮廓切削控制,这三种控制方式都是运动的轨迹控制。
11.逐点比较法插补计算的四个步骤:偏差判别、坐标进给、偏差计算、终点判断。
12.控制系统的四大要素是:给定量、执行机构、控制对象以及被控量。
13.软件是工业控制机的程序系统,它可分为系统软件、支持软件和应用软件三部分。
14.传感器把生产过程的信号转换成电信号,然后用A/D转换器把模拟信号变成数字信号,读入计算机中,对于这样得到的数据,一般要进行一些预处理,其中最基本的处理有线性化处理、标度变换和系统误差的自动校准。
15.计算机控制中的数字PID控制算法有数字PID位臵型控制算法和数字PID增量型控制算法两种基本形式。
16.经常采用的软件抗干扰技术包括:数字滤波技术、开关量的软件抗干扰技术、指令冗余技术、软件陷阱技术等。
17.采用差分放大器作为信号前臵放大是抑制串模干扰的方法之一。
计算机控制技术本课程学习指导资料根据该课程教学大纲的要求,参照现行采用教材《微型计算机控制技术》(于海生等主编,清华大学出版社,1999年3月第一版)以及课程学习光盘,并结合远程网络业余教育的特点和教学规律进行编写,适用于电气工程及其自动化专业专升本学生。
计算机控制技术是为了适应计算机的工业控制领域的需要而发展起来的一门专业技术,主要研究如何将计算机技术和自动控制理论应用于工业生产过程,并设计出所需要的计算机控制系统。
随着我国电力工业的发展,计算机及自动化控制技术在电力系统中的应用越来越广泛,本课程将帮助学生理解现有的自动控制设备的原理,提高对此类产品的认识,更好的利用这些设备或设计出相应的满足电力系统要求的控制设备。
学习本课程需首先具备一定的计算机软(汇编和C语言程序设计)、硬件(计算机构成、原理)知识,模拟、数字电子技术知识,以及自动控制理论的相关知识。
学完本课程后,应当结合实际设备进行深入的理解。
通过对本门课程的学习,学生应了解:计算机控制系统的发展及现状;计算机控制系统的在过程控制中的作用,及在本专业应用;主要模板的性能与应用范围;计算机控制系统中的复杂控制技术。
通过本门课程的学习,学生应熟悉:数字程序控制系统技术;计算机控制系统的初步分析、设计方法;能完成简单计算机控制系统构成、实时软件编制;计算机控制系统调试维护的基本知识。
通过本门课程的学习,学生应掌握:模拟自动控制系统与计算机控制系统的区别;计算机控制系统的分类及其特点;计算机控制系统的输入/输出通道的构成,及主要参数的选择;计算机控制系统中的常规控制技术(如PID控制器的设计);分散型控制系统(DCS)与现场总线(Fieldbus)技术。
11、本章学习要求本章应熟悉的内容有计算机技术、计算机控制理论的发展过程和计算机控制系统的发展趋势;应掌握的内容有:计算机控制系统的典型形式、工业控制机的特点和工业控制机的总线结构;应熟悉掌握的内容有:工业控制机的硬件组成及软件组成、计算机控制系统的工作原理。
计算机控制技术复习第一章1. 典型的工业生产过程分为哪几种?答:典型的工业过程分为3种:连续过程,离散过程和批量过程.2. 什么是计算机控制系统?计算机控制系统就是利用计算机来实现生产过程自动控制的系统。
3.常规控制系统的一般形式分为那两类?闭环控制系统、开环控制系统4. 计算机控制系统的工作步骤分为哪几步?答:计算机的工作步骤分为3步:实时数据采集,实时数据决策和实时数据处理.5. 计算机控制技术的工作方式有哪几种和各自的含义?答:计算机控制技术的工作方式有2种,即在线方式和离线方式.生产过程和计算机直接连接,并受计算机控制的方式称为在线方式,生产过程不和计算机相连,且不受计算机控制,而是靠人们进行联系并做相应操作的方式称为离线方式。
所谓实时,是指信号的输入、计算和输出都要在一定时间范围内完成。
在线系统不一定是实时系统,丹实时系统必定是在线系统。
6.为什么要强调计算机控制中的实时性?答:所谓实时性,就是指信号的输入,计算和输出都要在一定的时间范围内完成,亦即计算机对输入信息,以足够快的速度进行控制,超出了这个时间,就失去了控制的时机,控制也就失去的意义.所以要强调计算机控制中的实时性.8. 常用的计算机控制系统主机有哪几种?答:常用的计算机控制系统主机有可编程控制器,工控机,单片机,DSP和智能调节器. 9.生产过程主要包括哪些装置?(被控对象、测量变送、执行机构、电气开关等)10. 计算机控制系统中集散控制系统的体系结构分为哪几部分?答:计算机控制系统中集散控制系统(DCS)的体系结构分为分散过程控制级,集中操作监控级,综合信息管理级三部分.11.什么是操作指导控制系统?有那些优缺点?计算机测得的信号数据,根据一定的控制算法,计算出可供操作人员选择的最优操作条件及操作方案优点:结构简单,控制灵活和安全缺点:开环控制。
由人操作,实时性12.什么是直接数字控制(DDC)?有那些优缺点?计算机首先通过模拟量输入通道、开关量输入通道实时采集数据,然后按照一定的控制规律进行计算,最后发出控制信息,并通过模拟量输出通道、开关量输出通道直接控制生产过程。
工控计算机软件抗干扰技术0引言工业现场各种动力设备在不断地启停运行。
使得现场环境恶劣,电磁干扰严重。
工业控制计算机在这样的环境里面临着巨大的考验。
可以说我们研制的工业控制系统能否正常运行,并且产生出应有的经济效益,其抗干扰能力是一个关键的因素。
因此,除了整个系统的结构和每个具体的工控机都需要仔细设计硬件抗干扰措施之外,还需要注重软件抗干扰措施的应用。
我们在多年的工业控制研究中,深感工业现场意外因素太多并且危害很大。
有时一个偶然的人为或非人为干扰,例如并不很强烈的雷击,就使得我们自认为无懈可击的硬件抗干扰措施无能为力,工控机死机了(即程序跑飞了)或者控制出错了(此时CPU内部寄存器内容被修改或者RAM和I/O口数据被修改)。
这在某些重要的工业环节上将造成巨大的事故。
使用软件抗干扰措施就可以在一定程度上避免和减轻这些意外事故的后果。
软件抗干扰技术就是利用软件运行过程中对自己进行自监视,和工控网络中各机器间的互监视,来监督和判断工控机是否出错或失效的一个方法。
这是工控系统抗干扰的最后一道屏障。
1工控软件的结构特点及干扰途径在不同的工业控制系统中,工控软件虽然完成的功能不同,但就其结构来说,一般具有如下特点:* 实时性:工业控制系统中有些事件的发生具有随机性,要求工控软件能够及时地处理随机事件。
* 周期性:工控软件在完成系统的初始化工作后,随之进入主程序循环。
在执行主程序过程中,如有中断申请,则在执行完相应的中断服务程序后,继续主程序循环。
* 相关性:工控软件由多个任务模块组成,各模块配合工作,相互关联,相互依存。
* 人为性:工控软件允许操作人员干预系统的运行,调整系统的工作参数。
在理想情况下,工控软件可以正常执行。
但在工业现场环境的干扰下,工控软件的周期性、相关性及实时性受到破坏,程序无法正常执行,导致工业控制系统的失控,其表现是:* 程序计数器PC值发生变化,破坏了程序的正常运行。
PC值被干扰后的数据是随机的,因此引起程序执行混乱,在PC值的错误引导下,程序执行一系列毫无意义的指令,最后常常进入一个毫无意义的“死循环”中,使系统失去控制。
* 输入/输出接口状态受到干扰,破坏了工控软件的相关性和周期性,造成系统资源被某个任务模块独占,使系统发生“死锁”。
* 数据采集误差加大。
干扰侵入系统的前向通道,叠加在信号上,导致数据采集误差加大。
特别是当前向通道的传感器接口是小电压信号输入时,此现象更加严重。
* RAM数据区受到干扰发生变化。
根据干扰窜入渠道、受干扰数据性质的不同,系统受损坏的状况不同,有的造成数值误差,有的使控制失灵,有的改变程序状态,有的改变某些部件(如定时器/计数器、串行口等)的工作状态等。
* 控制状态失灵。
在工业控制系统中,控制状态的输出常常是依据某些条件状态的输入和条件状态的逻辑处理结果而定。
在这些环节中,由于干扰的侵入,会造成条件状态错误,致使输出控制误差加大,甚至控制失常。
2 工控计算机实时控制软件运行过程中的自监视法自监视法是工业控制计算机自己对自己的运行状态的监视。
一般的工控机CPU内部具有Watchdog Timer,使用定时中断来监视程序运行状态。
定时器的定时时间稍大于主程序正常运行一个循环的时间,在主程序运行过程中执行一次定时器时间常数刷新操作。
这样,只要程序正常运行,定时器不会出现定时中断。
而当程序运行失常,不能及时刷新定时器时间常数而导致定时中断,利用定时中断服务程序将系统复位。
在8031应用系统中作为软件抗干扰的一个事例,具体做法是:* 使用8155的定时器所产生的“溢出”信号作为8031的外部中断源INT1。
用555定时器作为8155中定时器的外部时钟输入;* 8155定时器的定时值稍大于主程序的正常循环时间;* 在主程序中,每循环一次,对8155定时器的定时常数进行刷新;* 在主控程序开始处,对硬件复位还是定时中断产生的自动恢复进行分类判断处理。
然而,这并不等于万无一失。
例如,① Watchdog电路本身失效;②设置Watchdog的指令正好在取指令时被干扰而读错;③ Watchdog“发现”程序跑飞之后,其产生的复位脉冲或者NMI申请信号正好被干扰而没奏效等等。
虽然以上的导致Watchdog失效的因素的几率很小,但总是存在的。
另一个方面,还有相当数量的工业控制计算机没有Watchdog电路。
因此,以下重点讨论的软件自监视法就势在必行了。
2.1 随时监督检查程序计数器PC的值是否超出程序区计算机正常运行,其PC值一定在程序区内。
如果PC值跑出程序区,计算机肯定已发生了程序跑飞。
检查程序计数器PC值是否在程序区内的方法,是在一个经常要产生外部中断的某个中断服务程序中,读取转入该中断时压入堆栈的断点地址。
如果该地址在程序区内,则认为PC值正常,否则一定是程序跑飞了。
此时,程序跳转到机器的重启动入口或者复位入口,机器重新启动。
于是机器又自救活了。
如果没有一个这样合适的中断源,可以专门设置一个定时中断或者几个定时中断,在中断服务程序中检查PC值是否合法,一旦发现不对就立即转入机器的重启动入口。
定时器中断的时间常数,可视机器的繁忙程度和重要性设定,一般从几个毫秒到几十毫秒都可以。
这个方法的局限性是不能查出PC值在程序区内的乱跳,即此时PC值虽受干扰却并没有超出程序区,而是错位乱拼指令而构成一些莫名其妙的操作,或者死循环。
2.2 主循环程序和中断服务程序相互监视每个工控机的主循环程序和中断服务程序都有一定的运行规律可循。
因此可以设计出主循环程序与各中断服务程序、各中断服务程序之间的相互监视。
每个监视对要定义一个RAM单元,依靠对其计数/清零的方法表达相互监视信息。
例如,某工控机的主循环程序循环一次最长时间为80 ms,它的一个定时中断时间常数为10 ms,当我们安排该定时中断监视主循环程序运行时,可以每次10 ms中断对该RAM单元加1计数,而主循环程序每循环一次对该RAM单元清零。
因此,正常运行时,这个监视计数RAM单元的计数值不可能≥9,如果10 ms定时中断服务程序发现其计数值≥9,就知道主循环程序已经被干扰跑飞或出现死循环,于是就跳转到机器的重启动入口,重新恢复运行。
使用这个方法,如果设计得当的话,是非常有效的。
我们多年的经验是:主循环程序被干扰跑飞可能性最大,中断服务程序越短小越不易跑飞。
主循环程序和中断服务程序以及中断服务程序之间的相互监视,应当多设计几个监视对会更好。
2.3 随时校验程序代码的正确性工业控制计算机的实时控制程序代码通常都采用EPROM固化运行,一般不易发生被改写的情况。
但成年累月运行,我们有时也会发现极个别的单元出错。
其原因可能是芯片质量问题或者因静电、雷击干扰等造成的改写。
程序出错了,将直接造成运行错误或者无法运行。
校验的方式可以采用累加和校验或者BCH校验(一种CRC校验方法)。
当采用BCH校验时,其分组附加的冗余字节可以集中在程序区之外的某个EPROM区域里。
校验方法是在某个短小而且经常发生的中断服务程序内安排一个校验模块,可以设计成每次循环校验一部分程序代码,分若干次校验完成;或者当代码少,任务轻松时也可以一次校验完。
如果发现校验错,应当立即向工控网络主站报告或者以自身报警的办法告知操作人员,以便及时处理。
这个方法的局限性是被损坏的程序代码不是校验程序块,而且以该中断还可以正常响应为前提。
由于该中断服务程序短小,通常还是有很大的概率自监视程序代码的正确性。
2.4 随时校验RAM的正确性在实时控制过程中,干扰造成比较严重的危害之一就是冲毁RAM中的数据,由于RAM中保存的是各种原始数据、标志、变量等,如果被破坏,会造成系统出错或无法运行,根据数据被冲毁的程度,一般可分为三类:* 整个RAM数据被冲毁;* RAM中某片数据被冲毁;* 个别数据被冲毁。
因此需要经常监视RAM的正确性。
在工业控制系统中,RAM的大部分内容是为了进行分析、比较而临时存放的,不允许丢失的数据只占极少部分。
在这种情况下,除了这些不允许丢失的数据外,其余大部分内容允许短时间被破坏,最多只引起系统的一个很短时间的波动,很快能自动恢复正常。
因此,在工控软件中,只要注意对少数不允许丢失的数据保护,一般常用的方法有“校验法”和“设标法”。
这两种方法各有千秋,校验法比较繁锁,但查错的可信度高。
设标法简单,但对数据表中个别数据冲毁的情况,查错则无难为力。
在编程中一般应综合使用,其具体做法为:* 将RAM工作区重要区域的始端和尾端各设置一个标志码“0”或“1”;* 对RAM中固定不变的数据表格设置校验字。
在程序的执行过程中,每隔一定的时间通过事先设计的查错程序来检查其各标志码是否正常,如果不正常,则利用数据冗余技术通过抗干扰处理程序来进行修正;冗余数据表的一般设计原则是:* 各数据表应相互远离分散设置,减少冗余数据同时被冲毁的概率。
* 数据表应尽可能远离栈区,减少由于操作错误造堆栈被成数据冲的可能。
上述对RAM区域的恢复处理方法,在不同的应用系统中应根据的具体情况进行取舍3 实时控制系统的互监视法在实时控制系统中,人们关注的问题是能否确保正常的控制状态。
如果干扰进入系统,会影响各种控制条件、造成控制输出失误。
为了确保系统安全可以采取下述软件抗干扰措施:3.1.软件冗余对于条件控制系统,将控制条件的一次采样、处理控制输出,改为循环采样、处理控制输出。
这种方法具有良好的抗偶然因素干扰作用。
3.2.设置当前输出状态寄存单元当干扰侵入输出通道造成输出状态破坏时,系统可以及时查询当前输出状态寄存单元的输出状态信息,及时纠正错误的输出状态。
3.3.设置自检程序在计算机系统内的特定部位或某些内存单元设状态标志,在运行中不断循环测试,以保证系统中信息存储、传输、运算的高可靠性。
4 其它常采用的软件抗干扰方法4.1 陷井法有时意想不到的干扰,破坏了中断和所有程序的正常运行。
此时PC值可能在程序区内,也可能在程序区之外,要使其能够自恢复正常运行,只有依赖于广布“陷井”的绝招了。
这里所谓的“陷井”,是指某些类型的CPU提供给用户使用的软中断指令或者复位指令。
例如,Z80指令RST 38H,其机器码为FFH。
CPU执行该指令时,则将当前程序计数器PC的值压入堆栈,然后转到0038H地址执行程序。
如果把0038H作为一个重启动入口,则机器就可以恢复新的工作了。
再例如,INTEL8098、80198系列的复位指令RST,机器码也为FFH。
CPU执行该指令时,其内部进行复位操作,然后从2080H开始执行程序。
当然,80198系列还有更多的非法操作码可作为陷井指令使用,这时只需要在2012H的一个字的中断矢量单元里安排中断入口,并且编制一个处理非法操作码的中断服务程序,一遇非法操作码就能进行故障处理。