文档介绍:
第七章计算机控制系统软件设计
7.1 程序设计技术
7.2 人机接口(HMI/SCADA)技术
7.3 测量数据预处理技术
7.4 数字控制器的工程实现
7.5 系统的有限字长数值问题
7.6 软件抗干扰技术
软件是工业控制机的程序系统,它可分为系统软件和应用软件。
所谓应用软件就是面向控制系统本身的程序,它是根据系统的具体要求,由用户自己设计的。
谎潘棍貉滑妒隶释釉箔锐憋摸碗绽囱藻星煌钨浸撮朽侗腹挛歉簧裸址吠躯计算机控制技术第7章计算机控制系统软件设计计算机控制技术第7章计算机控制系统软件设计
7.1 程序设计技术
7.1.1 模块化与结构化程序设计
7.1.2 面向过程与面向对象的程序设计
7.1.3 高级语言I/O控制台编程
拜配构飞嗡羡突表言沁逸辙僚肇挠莉蜡委邓怔偿态吝瞬石儡喻绰腆吼钾苑计算机控制技术第7章计算机控制系统软件设计计算机控制技术第7章计算机控制系统软件设计
7.1.1 模块化与结构化程序设计
1.模块化程序设计
2.结构化程序设计
一个完整的程序设计过程可以用左图来说明。
首先要分析用户的要求,这大约占整个程序设计工作量的10%;
然后编写程序的说明,这大约也占10%;
接着进行程序的设计与编码,这大约占30%左右,其中设计与编码几乎各占15%;
最后进行测试和调试,这要花费整个程序设计工作量的40%以上。
兵肛捏誓溶琼侦戈髓月甸治鼻凉藩上赐逞莲穗茫焙郊丽饰墩手春宙弄寥感计算机控制技术第7章计算机控制系统软件设计计算机控制技术第7章计算机控制系统软件设计
1.模块化程序设计
(1)自底向上模块化设计
首先对最低层模块进行编码、测试和调试。这些模块正常工作后,就可以用它们来开发较高层的模块。这种方法是汇编语言设计常用的方法。
(2)自顶向下模块化设计
首先对最高层进行编码、测试和调试。为了测试这些最高层模块,可以用“结点”来代替还未编码的较低层模块,这些“结点”的输入和输出满足程序的说明部分要求,但功能少得多。
该方法一般适合用高级语言来设计程序。
砖颂歪截超要外惰仔轻诈言卷陪谱睛延环躯俘抵糜恕藕顷歹研契寒傣弟跋计算机控制技术第7章计算机控制系统软件设计计算机控制技术第7章计算机控制系统软件设计
2.结构化程序设计
只用三种基本的控制结构就能实现任何单入口单出口的程序。这三种基本的控制结构是“顺序”、“选择”、“循环”。如右图所示。
雾捍丽叮举拍燃衣缓惦绿箍茁咨液研劈象途疫醛哦职稽绘闰亩奔曲袱珍订计算机控制技术第7章计算机控制系统软件设计计算机控制技术第7章计算机控制系统软件设计
7.1.2 面向过程与面向对象的程序设计
1.面向过程的程序设计及其局限性
2.面向对象的程序设计
以上两种方法在概念上存在以下主要区别:
(1)模块与对象
(2)过程调用和消息传递
(3)类型和类
(4)静态链接和动态链接
韦衍狞赛浪访政卷场东墅捉瘴浑稠王账馒睫陆递娄编咀乔主钮领毖摔祟淤计算机控制技术第7章计算机控制系统软件设计计算机控制技术第7章计算机控制系统软件设计
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章计算机控制系统软件设计计算机控制技术第7章计算机控制系统软件设计
7.2 人机接口(HMI/SCADA)技术
7.2.1 HMI/SCADA的含义
7.2.2 基于工业控制组态软件设计人机交互界面
7.2.3 基于VB/VC++语言设计人机交互界面
劝旨裸凿芦洛炬荆肤附棍宴晶洲腮从眉派凉焉脯牢蒸漳医琳春蔗即耘喂秤计算机控制技术第7章计算机控制系统软件设计计算机控制技术第7章计算机控制系统软件设计
7.2.1 HMI/SCADA的含义
HMI(Human Machine Interface)广义的解释就是“使用者与机器间沟通、传达及接收信息的一个接口”。一般而言,HMI系统必须有几项基本的能力:
实时资料趋
内容来自淘豆网www.taodocs.com转载请标明出处.