控制系统的软件和常用控制程序设计

上传人:宝路 文档编号:47867881 上传时间:2018-07-05 格式:PPT 页数:43 大小:1.24MB
返回 下载 相关 举报
控制系统的软件和常用控制程序设计_第1页
第1页 / 共43页
控制系统的软件和常用控制程序设计_第2页
第2页 / 共43页
控制系统的软件和常用控制程序设计_第3页
第3页 / 共43页
控制系统的软件和常用控制程序设计_第4页
第4页 / 共43页
控制系统的软件和常用控制程序设计_第5页
第5页 / 共43页
点击查看更多>>
资源描述

《控制系统的软件和常用控制程序设计》由会员分享,可在线阅读,更多相关《控制系统的软件和常用控制程序设计(43页珍藏版)》请在金锄头文库上搜索。

1、第四章第四章 控制系统的软件和常控制系统的软件和常 用控制程序设计用控制程序设计第一节 控制系统的软件分类控制系统的软件分类第二节常用控制程序设计常用控制程序设计计算机控制系统除了要有较好性能的硬件配置之外,还 需配置功能齐全的软件,以实现实时监控、数值计算、数据 处理及各种控制算法等功能。计算机控制系统的软件由于其系统功能的要求应当具有 以下特点:1、实时性对系统的一组特定的输入,在未发生变化前,系统能作 出适当的反应。2、并发性能支持多任务并行操作,具有资源共享、保护功能并能 有效地进行联网通信。3、随机性能及时响应偶发性事件,并能对这些事件做出正确的判断和处理。 4、良好的界面软件应当有

2、友好的界面,以利于参数的调整和操作人员的 操作。 第一节 控制系统的软件分类计算机控制系统的软件分为系统软件和应用软件两大类。一、系统软件系统软件包括操作系统,编辑、编译软件,各类工具软件 及诊断系统等;其核心是操作系统。操作系统是一组程序的集合,它控制计算机系统中用户程 序的执行次序,为用户程序与系统硬件之间提供软件接口,并 允许程序之间的信息交换。根据计算机控制系统的结构、控制功能情况选用不同的操 作系统。在以在以8088为CPU的工控机中,一般选用DOS单任务的操 作系统;而对于以386、486和586为CPU的工业控制机或其它 高档控制机,则选用多任务的Windows98、Window

3、sNT或 UNIX更适合。目前在DDS、SCC、DCS中用的计算机常选用WindowsNT作为操作系统。WindowsNT是具有抢先多任务方式和存储保护方式的32位操作系统,支持多任务处理和联网,其主要特点如下:(1) 抢先多任务,可同时执行多个任务,当磁盘在后台存取或打印任务被提交时,用户仍可执行其它任务。(2) 存储器保护可保证多个程序运行在各自的内存区域,不受其它应用程序在使用时的影响。(3) 网络特性提供了用户资源的共享。WindowsNT还提供了文件保护功能,检测并使已损坏的磁盘扇区无效,在电源故障时进行存储处理和信息的保护等。当控制系统比较简单,例如由单片机构成的简单控制器中往往不

4、用操作系统的支持,只需为系统配置一个监控程序即可达到控制的目标。监控程序可以是买硬件时附带,即由厂家提供,也可以由用户自己编写。监控程序应当由以下几个部分组成:初始化程序,键盘和 显示程序,中断处理程序,信息输入/输出程序。1、初始化程序包括各种可编程接口芯片的初始化,堆栈、寄存器和数据缓冲器的设定,中断类别和优先级的设定。2、键盘和显示程序用于监测键盘的操作,执行键盘的功能程序及控制系统中 所用各类显示器的显示。3、中断处理程序完成中断的申请、判断中断优先级和中断服务程序的执行 。4、信息输入/输出程序如模拟量的A/D转换,开关量的输入/输出等。二、计算机控制系统的应用程序1、分类微机控制系

5、统的应用程序从功能分大致可划分为两大类: 专用控制程序:如数据采集程序,实时控制程序,控制算 法程序等。 常用控制程序:如数据处理,数字滤波,标度变换,显示 和键盘程序,通信,报警程序等。几种专用控制程序: l 数据采集程序数据采集包括现场信息的采集、放大、量化、编码、 A/D等过程,配合硬件系统完成数据采集所编写的程序。 l 实时控制程序通常指计算机输出量控制执行器的执行编写的程序, 如交流电机控制程序,步进电机控制程序等。 l 控制算法程序解决计算机控制系统的控制方法,并且用软件来实现 。如为实现PID控制、直接数字控制、最优控制和智能控 制编写的程序。2、 编写控制系统应用程序常用的语言

6、控制系统对实时性和可靠性有特殊的要求,因此在编写控制系统的应用软件时应当考虑使用的编程语言。控制系统常用的语言有汇编语言和C、PL/M等高级语言。(1)汇编语言汇编语言是一种介于高级语言和机器语言之间的语言,其特点是与机器语言一一对应。由于该语言直接与计算机的硬件 相联系,因此用汇编语言编写的程序执行速度快,节省存储空 间,适用于各种实时控制系统中。目前常用的微型计算机的汇编程序有MASM、MC6800、MCS-51、MCS-96等。(2)高级语言常用于控制系统的高级语言有C语言和PL/M语言。1 、C语言C语言是一种能取代汇编语言,又具有高级语言特点的语言。C语言的特点是: 结构化语言,适合

7、于模块化设计 数据类型和运算符丰富,具有较强的汇编特性 丰富的库函数为用户提供良好的软件开发环境C语言广泛用于系统软件和控制软件的开发中。2 、 PL/M语言PL/M语言是Intel从8080微处理器开始为其系列产品开发 的编程语言 ,用于微机系列、单片机和系统软件编程的一种 高级语言,PL/M语言的特点是:模块化结构,可读性好,可靠性高,便于维护占用内存小,运行速度快,开发成本低支持多种数据类型的运算可与汇编语言和其它高级语言连接生成目标代码PL/M语言适用于控制系统的应用软件编程开发。 3、 实时工业控制软件FIXFIX DMACS控制软件由美国Intellution公司推出,是具有数据采

8、集及控制、报警、图形数据显示等功能的工业自动化软 件。(1)主要功能l 数据采集和控制功能: FIX提供监控生产过程的实时数据库。数据以文本、模拟量或数字量的形式从控制现场采集得到 ,通过对实时数据的操作实现监视或控制功能。l 统计及数据处理功能: FIX有统计选项和数据的实时处理功能,操作人员可由此功能监视和调整生产过程。l 图像化组态: FIX允许使用图像化的组态方式进行系统控制的配置,便于开发和应用系统的维护。l 报警和管理:FIX可对生产过程的重要部分进行实时监控并 报警。报警信息可用图像画面或打印机输出,并形成文件存储 。操作人员可根据报警信息对生产过程出现的问题进行确认分析和判断,

9、及时对过程进行调整,并监视调整后的结果。l 历史趋势再现:软件可提供历史数据和趋势显示功能供离线 分析用,历史数据和趋势可用曲线表示并指示不同变量间的动 态关系供详细的分析和判断。 l 安全保护: FIX提供用户操作的安全功能,用户被定义为独 立和组特权,能够控制对系统应用和数据的访问。 l 交叉平台集成功能:该软件可兼顾不同的操作系统,生成的 数据库、操作员画面和历史文件能在不同的操作系统 (Windows,OS/2,VMS)之间实现传递和共享,简化了多个操作系 统共存时的网络设置。(2)主要接口l 图形化用户接口 : FIX提供了一个直观的基于对象的 图形化用户接口(GUI),使用户可用图

10、标和对话框设置整个系统。在建立图面时,用户可定义某些功能特性,生成 所需的画面形状。画面中的对象可以旋转、改变尺寸、填 充颜色等。GUI还提供常用设备的字符集,供生成画面时调用。l 通信接口: FIX提供通用的通信接口,可以和不同的硬件设备连接进行数据通信。l 报表接口 : 通过一个双向接口,使数据库的数据与应用程序连接并共享,便于用户用电子表格或字处理程序生 成各种报表和图形。l 实时SQL接口: 该接口允许FIX与符合SQL标准的其它 关系数据之间进行双向和实时的数据互访。l 可编程接口 : 允许用户用C语言编程访问FIX的数据库和各类实时历史数据,以达到特定的目标值分析和获取最佳 控制。

11、目前,类似FIX DMACS类型的控制软件系列已经引入国内,企业在应用中取得了良好的经济效果。第二节 常用控制程序设计生产对象种类繁多,要求各异,常用控制程序的类型和内 容也十分丰富。本节仅选择一些最基本和常用的程序进行简单 的介绍:(1)查表法实现数值计算(2)数字滤波程序(3)标度变换程序(4)非线性参数补偿方法(5)报警程序用软件实现常用控制功能的优点是:灵活性好,精度高, 稳定可靠,不受外界干扰。一、查表法实现数值计算在计算机控制系统中,有些参数的计算非常复杂,直接计 算要耗费较多的时间。影响控制的实时性。为了解决上述问题 ,可采用查表法。l 查表法是将事先计算或测得的数据按一定顺序编

12、制成表格 ,根据任务的需要从被测参数的值或中间结果中找出所需要的 结果。l 查表是一种非数值计算方法,利用此方法可完成数据的计 算、转换、补偿等工作,具有程序简单、执行速度快等优点。l 表格的排列有两种方法:(1)无序排列 (2)有序排列。 表格的排列方法对查表的速度和繁简程度有影响。l 常用的查表方法有:(1)顺序查表法 (2)计算查表法 (3)对分搜索法。1、 顺序查表法对无顺序排列的表格,一般采用顺序查表法。在51单片机 中,用CJNE比较指令对要查找数据的表中的数进行比较,然后 用MOVC A,A+PC(DPTR)指令进行查找。顺序查表的步骤如下:(1)表的起始位置送PC和DPTR(2

13、)表格的长度存放在某个寄存器中(3)要查找的关键字放在某一内存单元(4)用CJNE A,direct, rel指令进行查找把A当中的值和直接地址中的值比较, 若相同则继续执行。例6-1 以DATA为首地址的存储单元中,存放一长度为100个字节的无序表 格,要寻找的关键字存放在HWORD单元。编程进行查找,若找到,则将 关键字所在内存单元地址存到R2、R3中,若未找到,将R2、R3清零。解:顺序查表(CHE) 关键字(R4) 表长度取表中数与关键字相等?地址修正(R2、R3) 地址 查完?(R2、R3) 0ENDNNORG8000HSTART:MOV CHE,HWORD DONE:RET MOV

14、 R4,#100 A1: POP AMOV A,#0 INC AMOV DPTR,#TABLELOOP:PUSH A DJNZ R4 , LOOPMOVC A,A+DPTR MOV R2 , #0CJNE A, CHE, A1MOV R3 , #0MOV R2, DPH AJMP DONEMOV R3, DPL TABLE:DB xx CHE EQU 20HHWORD EQU 21H2、计算查表法根据所给元素,通过一定规律 的计算,求出元素所对应的数值的 地址,将该地址单元的内容取出。计算查表法要求表格有序,各 个元素在表中排列与占用的地址空 间一致。例 6-2 用计算查表法求整数的平 方根。

15、见课本P189.START建立平方值表AX所求元素值BX平方值表首 地址BXBX+AX平 方值所在地址YBXEND3、对分查表法当实际应用中表格较长,又难以用计算法时,可用对分查 表法。对分查表法要求表格从大小或从小大的顺序排列。 对分查表法比顺序查表法快很多倍。l 设一个线性表字节长度为n,采用顺序法平均查表次数 =N/2,采用对分查表法最多查找2 N-1次。l 具体方法:设表格中数据从小大的顺序排列,先取中间 值D = n/2,与要搜索的X值进行比较,若X n/2,则下次取 n/2n 中间值即3/4n进行比较,若X n/2,取1/4 n比较,一直 到找到。l 程序设计步骤如下:(1)设R2中存放元素表中下限元素的序号(R2=0),R3存放 上限元素的序号(R3=n)(2) 计算中点元素序号R4 = ( R3 + R2 ) / 2(3) 计算中点元素的地址(MIADR)= 表首地址+字节数* R4(4)要查找的元素与中点元素比较,若XMIADR,R3不变, (R2)(R4);转到(2)。(5)直到X = R4,使某标志位(CY)置1。程序流程图(图4-3)对分查表程序 (R2)0,(R3)n(R4) (R2 ) +(R3 )/2MIADR基地址+字 节数*(R4)X=MIADRXMAX1吗?ALARM1:CJNEA , 31H , BB ;

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 教学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号