[信息与通信]第7章 计算机控制系统软件设计.ppt

[信息与通信]第7章 计算机控制系统软件设计.ppt

  1. 1、本文档共164页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[信息与通信]第7章 计算机控制系统软件设计

应多采用单字节指令,并在关键地方人为插入一些单字节指令,或将有效单字节指令重复书写,提高弹飞程序纳入正轨的机会,这便是指令冗余。 实现方法: 在一些对程序流向起决定作用的指令之前插入两条NOP指令,以保证弹飞的程序迅速纳入正确的控制轨道。这些指令有:RET、RETI、LCALL、LJMP、JZ/JNZ、JC/JNC、JB/JNB、JBC、CJNE、DJNZ等。 如:利用减法比较两无符号数的大小程序(数放A、B中): 无指令冗余程序: CLR C SUBB A, B JC BBIG … … BBIG:NOP ….. 有指令冗余的情况: CLR C SUBB A, B NOP NOP JC BBIG … … BBIG:NOP ….. 指令冗余缺点: 降低指令执行效率 指令冗余特点: 1.降低正常程序执行的效率; 2.可以减少程序弹飞的次数,使其很快纳入程序轨道,但不能保证失控期间不干坏事,更不能保证程序纳入正常轨道后太平无事。因为弹飞的程序已经偏离正常顺序,做了不该做的事。解决这个问题还要靠软件容错技术,减少或消灭程序误动作。 3. 指令冗余使弹飞程序安定下来是有条件的,首先弹飞的程序要落到程序区,其次必须执行到冗余的指令。 当程序弹飞到非程序区时,或弹飞的程序碰到冗余指令前已形成死循环,都会使冗余指令失去作用。 7.6.4 软件陷阱技术 ☆所谓软件陷阱,就是一条引导指令,强行将扑获的程序引向一个指定的地址,在那里有一段专门对程序出错进行处理的程序。 ☆软件陷阱由三条指令构成: NOP NOP LJMP ERR ;ERR错误处理程序入口 ☆软件陷阱安排在下列四种地方: 1)未使用的中断向量区 2)未使用的大片ROM区 3)表格区尾部 4)程序区 习 题 l.在计算机控制系统中,一般要对测量数据进行哪些预处理技术? 2.何为数字调零?何为系统校准? 3.简述数字滤波及其特点。 4.简述各种数字滤波方法的原理或算法及适用场合。 5.分析说明标度变换的概念及其变换原理。 * * * * 7.5.1 量化误差来源 1. 量化误差 设计算机的字长为n1,采用定点无符号数,量化单位q,也就是机内数的最小单位。 举例,8位和12位的A/D转换器,在0~5V时通过A/D转换可计算出模拟电压x相当于多少个整量化单位,即: x=Lq+ε 式中L为整数,对于余数ε(ε<q)可以用截尾或舍入来处理 。 所谓截尾就是舍掉数值中小于q的余数ε(ε<q),其截尾误差εt为:εt=xt-x,式中x为实际数值,xt为截尾后的数值。 所谓舍入是指,当被舍掉的余数ε大于或等于量化单位的一半时,则最小有效位加1;而当余数ε小于量化单位的一半时,则舍掉ε。这时舍入误差为εr=xr-x,式中x为实际数值,xr舍入后的数值。 2.量化误差来源 产生量化误差的原因主要有以下几个方面: (1) A/D转换的量化效应 (2) 控制规律计算中的量化效应 (3) 控制参数的量化效应 (4) D/A转换的量化效应 7.5.2 A/D、D/A及运算字长的选择 1. A/D转换器的字长选择 2. D/A转换器的字长选择 3. 运算的字长选择 1. A/D转换器的字长选择 为把量化误差限制在所允许的范围内,应使A/D转换器有足够的字长。确定字长要考虑的因素是:输入信号x的动态范围和分辨率。 (1) 已知输入信号的动态范围 λ为转换当量(系统能分辨的模拟量的最小值) (2)已知分辨率 2. D/A转换器的字长选择 执行机构的最大输入值为umax 最小输入值为umin 灵敏度为λ 3. 运算的字长选择 由8位或12位A/D变换器采集数据之后,为了保证运算精度,在CPU内几乎毫无例外的至少采用16位字长运算。运算精度不仅取决于字长,而且还取决于采用定点数或浮点数。如果采用浮点数,运算精度可以大大提高。 不管采用定点还是浮点数,输入标准数0至1对应A/D转换结果的全0至全1;输出标准数0至1对应D/A转换器数字位状态的全0至全1。 (1) 输入位数大于输出位数 当输入器件精度比输出器件精度高时,如采用10位A/D转换器采样,而把处理后的10位二进制数通过8位D/A转换器输出,就会出现输入位数大于输出位数的情况。 在计算机中通过移位的方法实现上述处理过程是非常容易的。设输入值

文档评论(0)

qiwqpu54 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档