第六章 应用程序设计与实现技术
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
电气与自动化工程学院
计算机控制系统
3
6.1 概 述 6.2 应用程序设计技术 6.3 查 表 技 术 6.4 线性化处理技术 6.5 标度变换和量程自动转换 6.6 报警程序设计 6.7 DSP在数据处理中的应用 6.8 小 结
电气与自动化工程学院 计算机控制系统 4
6.1 概
述
在计算机控制系统中,模拟量经A/D转换后 变成数字量送入计算机。这些数字量在进行显示、 报警及控制之前,必须根据需要进行相应的加工 处理,如数字滤波、标度变换、数值计算、逻辑 判断及非线性补偿等,以满足不同系统的需要。 本章主要介绍几种计算机控制系统中常用的 程序设计方法,数据处理方法,如计算法、查表 法、插值法、零点补偿法、标度变换及非线性补 偿等。
电气与自动化工程学院 计算机控制系统 7
2. 应用程序设计的方法
(1) 模块化程序—绘制流程图
优点:① 单一功能模块无论编写或调试都很容易 ② 一个模块可以被多个其他程序调用 ③ 检查错误容易,因为模块功能单一,且相 对独立,不牵涉其他模块 缺点:有些程序难以模块化,把模块装在一起时较困 难,模块相互调用时易产生相互影响。
电气与自动化工程学院 计算机控制系统
22
6.3.3 对分查找法
对于从小到大(或从大到小)顺序排列的表格,通 常采用快速而有效的对分查找法。 对分查找的具体做法:先取数组的中间值D=n/2 进行查找,与要搜索的X值比较,若相等则查到。 对于从小到大的顺序来说,如果X> n/2项,则下一 次取n/2~n间的中值,即与3n/4比较;若X< n/2,则 去0~n/2的中值,即与n/4比较。如此比较下去,则 可逐次逼近要搜索的关键字,直至找到为止。
是关键字否? 否 对分数>关 键字否? 否 对分序号做起点 对分序号做终点
计算机控制系统 24
是
返 回 电气与自动化工程学院
6.4 线性化处理技术
在数据采集和处理系统中,计算机从模拟量 输入通道得到的有关现场信号与该信号所代表的 物理量不一定成线性关系,但在显示时希望系统 的输入与输出呈线性关系,这将使仪表在整个范 围内灵敏度一致,从而便于读数和对系统的分析 和处理。 为了得到线性输出的变量,需要引入非线性 补偿,将非线性关系转化成线性的,这种转化过 程称为线性化处理。最常用的是线性插值法和抛 物线插值法 。
电气与自动化工程学院 计算机控制系统 25
6.4.1 线性插值法
1. 线性插值原理
将输出特性曲线按一定的规则插入若干 个点,将曲线分成若干段,插入点X0和Xi之 间的间距越小,那么在区间(X0, Xi)上实际曲 线和近似直线之间的误差就越小。这就是线 性插值法的思想。将相邻两点用直线连接起 来,用直线替代相应的曲线。这样,原来复 杂的非线性关系就可以通过简单的分段线性 方程加以表示。
电气与自动化工程学院
计算机控制系统
5
6.2 应用程序设计技术
6.2.1 应用程序设计的基本任务
程序设计的第一步是了解系统的工艺流程, 确定控制系统对控制任务的要求,综合考虑软硬 件设计方案,然后分别进行硬件方案的设计和程 序设计。 程序设计最基本的问题是定义输入和输出; 在输入数据和送出控制信号之间要确定处理哪些 数据,控制算法的选择和确定等;最后错误处理 和故障诊断在实时控制系统中也是重要的内容。
电气与自动化工程学院
计算机控制系统
11
6.2.3 工业控制组态软件
组态一词源于“configuration”。从内涵上讲组 态软件是指在软件领域内,操作人员根据应用对象 及控制任务的要求,配置(包括对象的定义、制作和 编辑,对象状态特征属性参数的设定等)用户应用软 件的过程,也就是把组态软件视为“应用程序生成 器”。从应用角度讲,组态软件是完成系统硬件与 软件沟通、建立现场与监控层沟通的人机界面的软 件平台。 组态软件内容主要包括:控制组态、图形生成 系统、显示组态、I/O通道登记、单位名称登记、趋 势曲线登记、报警系统登记、报表生成系统。
线性化处理技术 非线性插值法 量程自动转换 线性参数标度变换 简单报警程序设计 报警程序设计 越限报警程序设计 DSP在数据处理中 的应用
量程自动转换和 标度变换
电气与自动化工程学院
计算机控制系统
2
第十六讲
在计算机控制系统中,除了硬件电路外,还 有(应用)软件。硬件是整个系统能够正常运行的 基础,而应用程序则是系统的灵魂。从数据输入 到数据处理、显示、报警打印等功能的实现,以 及包括各种数据库的相关操作,都是依赖程序完 成的。在进行计算机控制系统设计时,大量的工 作就是如何根据各个生产过程的实际需要设计应 用程序。
电气与自动化工程学院 计算机控制系统 9
3)自底ຫໍສະໝຸດ Baidu上模块化设计
自底向上模块化的设计是首先对最低层模块 进行编码、测试和调试,这些模块正常工作后, 就可以用它们来开发较高层的模块。 这种方法 是汇编语言设计常用的方法。
电气与自动化工程学院
计算机控制系统
10
在工业过程控制系统中,最常用的程序设计 语言有汇编语言、C语言、Visual C++语言、 VB.NET开发平台、工业控制组态软件等。
电气与自动化工程学院
计算机控制系统
14
尾矿胶结充填系统监控主界面
电气与自动化工程学院 计算机控制系统 15
电气与自动化工程学院
计算机控制系统
16
电气与自动化工程学院
计算机控制系统
17
电气与自动化工程学院
计算机控制系统
18
6.2.4 软件工程方法概述
软件工程是开发、运行、维护和修复软件的 系统方法。“软件”定义为计算机程序、方法、 规则、相关的文档资料及在计算机上运行时所必 需的数据。
电气与自动化工程学院 计算机控制系统 12
计算机控制系统的组态功能分为两个主要方面, 即硬件组态和软件组态。 硬件组态:以总线式(PC总线或STD总线)工业控制 机为主进行选择和配置,在硬件上可以根据不同的 控制对象选择相应的功能模板,组成各种不同的应 用系统,使硬件工作量几乎接近于0,只需按要求对 各种功能模块进行安装和接线即可。 软件组态:软件组态常以工业控制组态软件为主来 实现。控制工程师不需了解计算机的硬件和软件, 就可在触摸屏上采用菜单方式,用填表的办法,对 输入、输出信号用“仪表组态”的方法进行软连接。
特点:顺序查找法只适于数据记录个数较少的 情况。
电气与自动化工程学院 计算机控制系统 20
开
始
设定表格初始地址
顺序查找法的步骤如下:
(1) 设定表格的起始地址。
设定表格长度
(2) 设定表格的长度。
(3) 设定要搜索的关键字。 (4) 从表格的第一项开始, 比较表格数据和关键字, 进行数据搜索
否
设置查找失败标志
电气与自动化工程学院
计算机控制系统
26
若输入信号X在区间( X i , X i 1)内,则对应的输出值Y 为: Y Y
Y Yi
i 1
i
X i 1 X i
(X Xi )
将上式化简得: Y 由上图可知:
Yi Ki ( X X i )
(1) 曲线斜率变化越小,替代直线越逼近特性曲线,则 线性插值法带来的误差就越小。因此,线性插值法适用 于斜率变化不大的特性曲线的线性化。 (2) 插值基点取得越多,替代直线越逼近实际的曲线, 插值计算的误差就越小。因此,只要插值基点足够多, 就可以获得足够的精度。
第六章 应用程序设计 与实现技术
第十六讲
电气与自动化工程学院
计算机控制系统
1
应用程序设计的基本任务 应用程序设计的基本步骤与方法 应用程序设计技术 工业控制组态软件 软件工程方法概述 顺序查找法
本 章 知 识 结 构
应 用 程 序 设 计 与 实 现 技 术
查表技术
计算查找法 对分查找法 线性插值法
电气与自动化工程学院
计算机控制系统
28
2. 线性插值的计算机实现
利用计算机实现线性插值的步骤如下:
(1) 用实验法测出传感器输出特性曲线, 应尽可能保证该曲线的精确性;
(2) 选取插值点,将绘制好的曲线分段。 (3) 计算并存储各相邻插值点间逼近曲线 的斜率 Ki ,求出模拟 y=f(x) 的近似表达 Pn(x); (4) 计算X-Xi; (5) 读 出 X 所 在 区 间 的 斜 率 Ki , 计 算 Y=Yi+ Ki(X-Xi); (6) 编写语言程序。
n log 对分查找法的最高搜索次数 2 1 ,和顺序查 找法相比,对分法可以大大减少查找次数,提高检 索效率。
电气与自动化工程学院 计算机控制系统 23
开 始
设置数据起点、终点
读检索关键字
检索项序号=
起点 终点 2
是
到检索范 围边界否? 否 取对分数据
是 否 起点数据= 关键字否? 是 设置检索 失败标志 保存检索到 的数据序号
电气与自动化工程学院 计算机控制系统 29
3. 线性插值法非线性补偿实例
在过程控制中常遇到的两个非线性关系是温度与 热电势,差压与流量。 热电阻:其阻值是温度的函数,故使用热电阻必须通 过电桥将电阻值的变化变为电压的变化。铂电阻的阻 值与温度的关系:
Rt R0 [1 At Bt 2 C (t 100 C )t 3 ] 200 t 0 C Rt R0 [1 At Bt 2 ] 0 t 850 C
如延时程序、显示程序、键盘处理程序和标准函数程序等
电气与自动化工程学院 计算机控制系统 8
把一个完备的功能由若干个小程序或模块共同完成。
2)自顶向下程序设计—绘制流程图
① 写出管理程序并进行测试。
② 对每一个程序标志进行程序设计,使它成为实际的 工作程序。 ③ 对整个程序进行测试。 优点:设计、测试和连接同时按一个线索进行,矛盾 和问题可以较早发现和解决;而且测试能够完全按真 实的系统环境来进行,不需要依赖于测试程序。 缺点:上一级的错误将对整个程序产生严重的影响, 一处修改可能牵动全局;总的设计可能同系统硬件不 能很好的配合。
电气与自动化工程学院 计算机控制系统 6
6.2.2 应用程序设计的基本步骤与方法
1. 应用程序设计的基本步骤
(1) 计划:确定总目标(功能、性能、可靠性及接 口等)
(2) 问题分析:写出软件需求说明书 (3) 程序设计:划分各模块 (4) 程序编写
(5) 测试:在模拟系统使用环境下的条件下检验 软件的各个组成部分 (6) 运行维护
读第一数据 读关键字
判断是关 键字否? 否 取下一数据
是
设置查找成功标志
检索完全 部数据否? 是
取关键字在 表中的地址
电气与自动化工程学院
返
回
计算机控制系统
21
6.3.2 计算查找法
计算查找法适用于数据按一定的规律排列, 并且搜索内容和表格数据地址之间的关系能用公 式表示的有序表格。只要根据所给的数据元素 Xi ,通过一定的计算,求出元素Xi所对应的数值 的地址,然后将该地址单元的内容取出即可。 采用计算查找法的关键在于找出一个计算表 地址的公式 。通常它适用于某些数值计算程序, 功能键地址转移程序以及数码转换程序等。
电气与自动化工程学院 计算机控制系统 27
在分段法进行程序设计之前,必须首先判断输 入值 X i 处于哪一段。为此,需要将 X i 与各分点值进 行比较,以确定出该点所在的区间;然后转到相应 段逼近公式进行计算。
分段方法:
(1) 等距分段法:沿X轴等间距地选取插值点,可简 化计算过程,但若曲线斜率变化较大时,会产生一 定的误差。 (2) 非等距分段法:根据函数曲线形状的变化率的大 小来修正插值点间的距离,但插值点的选取较麻烦。
软件工程包括三个要素:方法、工具和过程。
电气与自动化工程学院
计算机控制系统
19
6.3 查 表 技 术
常用的查表技术有三种方法:直接查找法、 顺序查找法和对分查找法 。
6.3.1 顺序查找法
查找过程:从数据表头开始,依次取出每个记录 的关键字,再与待查记录的关键字比较。若两者 相符,即查到记录;若整个表未找到所需记录, 则查找失败。
电气与自动化工程学院 计算机控制系统 13
国外组态软件:In Touch(万维公司),IFix( 美国通用电气公司(GE)和日本Fanuc公司), WinCC(西门子公司), RSView32(AB公司), Citech(西亚特集团)等。 国内组态软件:世纪星(北京世纪长秋科技 公司),三维力控(北京三维力控科技公司),组态 王KingView(北京亚控科技发展公司),紫金桥 Realinfo(紫金桥软件技术公司),Controx等。