欢迎来到天天文库
浏览记录
ID:52440749
大小:320.18 KB
页数:50页
时间:2020-03-27
《微型计算机控制技术_第6章 [兼容模式].pdf》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第6章应用程序设计与实现技术软件是工业控制机的程序系统,它可分为系统软件和应用软件。所谓应用软件就是面向控制系统本身的程序,它是根据系统的具体要求,由用户自己设计的。软件设计的方法:利用计算机语言自己编制需要的应用程序;利用组态软件。6.1程序设计技术6.2测量数据预处理技术6.3数字控制器的工程实现6.4系统的有限字长数值问题国家精品课程《计算机控制技术》6.1程序设计技术6.1.1模块化与结构化程序设计6.1.2面向过程与面向对象的程序设计6.1.3高级语言I/O控制台编程国家精品课程《计算机控制技术》6.1.1模块化与结构化程序设计一个完整的程序设计过程可以用左图来说明
2、。首先要分析用户的要求,这大约占整个程序设计工作量的10%;然后编写程序的说明,这大约也占10%;接着进行程序的设计与编码,这大约占30%左右,其中设计与编码几乎各占15%;最后进行测试和调试,这要花费整个程序设计工作量的40%以上。国家精品课程《计算机控制技术》1.模块化程序设计(1)自底向上模块化设计 首先对最低层模块进行编码、测试和调试。这些模块正常工作后,就可以用它们来开发较高层的模块。这种方法是汇编语言设计常用的方法。(2)自顶向下模块化设计 首先对最高层进行编码、测试和调试。为了测试这些最高层模块,可以用“结点”来代替还未编码的较低层模块,这些“结点”的输入和输出
3、满足程序的说明部分要求,但功能少得多。该方法一般适合用高级语言来设计程序。国家精品课程《计算机控制技术》2.结构化程序设计1966年,C.Bohm和G.Jacopini证明了只用三种基本的控制结构就能实现任何单入口单出口的程序。这三种基本的控制结构是“顺序”、“选择”、“循环”。如右图所示。国家精品课程《计算机控制技术》6.1.2面向过程与面向对象的程序设计1.面向过程的程序设计及其局限性过程式程序设计是面向功能的。首先要定义所要实现的功能,然后设计为实现这些功能所要执行的步骤。这些步骤就是过程。编写代码实际上等于分解这些步骤,使每一步直接对应一行代码。这就是过程式编程中的“
4、逐步求精”的过程。这种方式不利于中大型软件的开发与维护,小部分数据或功能的改变会涉及到很多的相关程序。2.面向对象的程序设计以上两种方法在概念上存在以下主要区别:(1)模块与对象(2)过程调用和消息传递(3)类型和类(4)静态链接和动态链接国家精品课程《计算机控制技术》6.1.3高级语言I/O控制台编程对于PC总线工业控制机,我们以TurboC为例来说明其访问I/O端口的编程。TurboC通常有库函数,允许直接访问I/O端口,头文件〈conio.h〉中定义了I/O端口例程。例如:a=inportw(0x210) b=inportb(0x220) 第一条指令表示将端口210H的
5、16位二进制数(一个字)输入给变量a,第二条指令表示将端口220H的8位二进制数(一个字节)输入给变量b。在C语言中,0x起头的是16进制数。又如:outportw(0x230,0x3435) outportb(0x240,0x26) 第一条指令表示将二字节数3435H输出到端口230H中,第二条指令表示将单字节数26H输出到端口240H中。国家精品课程《计算机控制技术》6.2测量数据预处理技术传感器把生产过程的信号转换成电信号,然后用A/D转换器把模拟信号变成数字信号,读入计算机中。对于这样得到的数据,一般要进行一些预处理,其中最基本的处理有线性化处理、标度变换和误差自动校
6、准。6.2.1误差自动校准6.2.2线性化处理和非线性补偿6.2.3标度变换方法6.2.4越限报警处理6.2.5量化误差来源6.2.6A/D、D/A及运算字长的选择国家精品课程《计算机控制技术》6.2.1误差自动校准定义:系统误差是指在相同条件下,经过多次测量,误差的数值(包括大小符号)保持恒定,或按某种已知的规律变化的误差。特点:在一定的测量条件下,其变化规律是可以掌握的,产生误差的原因一般也是知道的。方法:偏移校准在实际中应用最多,并且常采用程序来实现,称为数字调零。数字调零:在测量时,先把多路输入接到所需测量的一组输入电压上进行测量,测出这时的输入值为x,然后把多路1开
7、关的输入接地,测出零输入时A/D转换器的输出为x,用x01减去x即为实际输入电压x。0除了数字调零外,还可以采用偏移和增益误差的自动校准。国家精品课程《计算机控制技术》1.全自动校准先把开关接地,测出这时的输入值x0,然后把开关接VR,测出输入值x1,并存放x1、x0,在正式测量时,如测出的输入值为x,则这时的V可用下式计算xx0V()VRxx10采用这种方法测得的V与放大器的漂移和增益变化无关,与V和R的精度也无关。这样可大大提高测量精度,降低对电路器件的要求。国家精品课程《计算机控制技术》2
此文档下载收益归作者所有