计算机控制系统软件设计剖析.ppt

  1. 1、本文档共90页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
课件制作:西电科大信息处理研究所 第七章 计算机控制系统软件设计 7.1 程序设计技术 7.2 人机接口(HMI/SCADA)技术 7.3 测量数据预处理技术 7.4 数字控制器的工程实现 7.5 系统的有限字长数值问题 7.6 软件抗干扰技术 7.1 程序设计技术 7.1.1 模块化与结构化程序设计 7.1.2 面向过程与面向对象的程序设计 7.1.3 高级语言I/O控制台编程 7.1.1 模块化与结构化程序设计 1.模块化程序设计 (1)自底向上模块化设计 首先对最低层模块进行编码、测试和调试。这些模块正常工作后,就可以用它们来开发较高层的模块。这种方法是汇编语言设计常用的方法。 (2)自顶向下模块化设计 首先对最高层进行编码、测试和调试。为了测试这些最高层模块,可以用“结点”来代替还未编码的较低层模块,这些“结点”的输入和输出满足程序的说明部分要求,但功能少得多。 该方法一般适合用高级语言来设计程序。 2.结构化程序设计 只用三种基本的控制结构就能实现任何单入口单出口的程序。这三种基本的控制结构是“顺序”、“选择”、“循环”。如右图所示。 7.1.2 面向过程与面向对象的程序设计 1.面向过程的程序设计及其局限性 2.面向对象的程序设计 以上两种方法在概念上存在以下主要区别: (1)模块与对象 (2)过程调用和消息传递 (3)类型和类 (4)静态链接和动态链接 7.1.3 高级语言I/O控制台编程 对于PC总线工业控制机,我们以Turbo C为例来说明其访问I/O端口的编程。Turbo C通常有库函数,允许直接访问I/O端口,头文件〈conio.h〉中定义了I/O端口例程。 例如: a=inportw(0x210) b=inportb(0x220) 第一条指令表示将端口210H的16位二进制数(一个字)输入给变量a,第二条指令表示将端口220H的8位二进制数(一个字节)输入给变量b。在C语言中,0x起头的是16进制数。 又如: outportw(0x230,0x3435) outportb(0x240,0x26) 第一条指令表示将二字节数3435H输出到端口230H中,第二条指令表示将单字节数26H输出到端口240H中。 7.2 人机接口(HMI/SCADA)技术 7.2.1 HMI/SCADA的含义 7.2.2 基于工业控制组态软件设计人机交互界面 7.2.3 基于VB/VC++语言设计人机交互界面 7.2.1 HMI/SCADA的含义 HMI(Human Machine Interface)广义的解释就是“使用者与机器间沟通、传达及接收信息的一个接口”。一般而言,HMI系统必须有几项基本的能力: ◆实时资料趋势显示___当前数据信息立即输出在屏幕上。 ◆历史资料趋势显示___数据库存放资料可视化重新回放。 ◆自动记录资料___自动将资料存入数据库中,以备后期查阅 ◆警报的产生与记录___设立数据门限,超限报警提示并记录。 ◆报表的产生与打印___将数据处理成日常报表,能够打印。 ◆图形接口控制___让用户通过屏幕图形点击、触屏控制系统。 凡是具有系统监控和数据采集功能的软件,都可称为 SCADA (Supervisor Control And Data Acquisition) 软件。SCADA软件和硬件设备的连接方式主要可归纳为三种: (1) 标准通讯协议。 工业控制领域有众多标准协议,软硬件及设备选用同种协议即可实现通信和传输。 (2) 标准的资料交换接口。 计算机控制系统可以通过DDE和OPC等数据交换接口就可完成数据交换,提交数据中心等操作。 (3) 绑定驱动(Native driver)。 具体的SCADA软件和硬件,采用特定的绑定驱动程序。性能极佳。 7.2.2 基于工业控制组态软件设计人机交互界面 1.控制组态 2.图形生成系统 3.显示组态 1.控制组态 控制算法的组态生成在软件上可以分为两种实现方式: 一种方式是采用模块宏的方式,即一个控制规律模块(如PID运算)对应一个宏命令(子程序),在组态生成时,每用到一个控制模块,则组态生成控制算法,产生的执行文件中就将该宏所对应的算法换入执行文件。 另一种常用的方式是将各控制算法编成各个独立的可以反复调用的功能模块,对应每一模块有一个数据结构,该数据结构定义了该控制算法所需要的

文档评论(0)

三四五 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档