微机测控技术ch6.ppt
1,Ch6监控程序设计,,,,微机测控技术,2,,测控系统构成硬件、软件。软件分类按功能1、监控程序管理整个系统,协调各软件模块正常工作;2、功能程序执行指定任务。软件设计的核心问题监控程序设计系统工作流程,微机测控技术,3,本章内容,1、监控程序的功能和组成2、监控主程序及初始化管理3、键盘管理4、显示、中断及时钟管理5、硬件故障的自检,微机测控技术,4,6.1监控程序的功能和组成,监控程序的作用1、响应系统内部各种服务请求功能响应;2、管理测控系统自身软、硬件及人-机设备;3、与系统中其它设备交换信息大型系统;4、系统故障时及时作出相应处理故障处理。,微机测控技术,5,监控程序的功能,1、键盘和显示管理按键入的命令转入相应的按键服务程序;2、接收中断请求区分优先级,实现中断嵌套,并转入相应的实时测量、控制功能子程序3、对硬件定时器的处理及由此形成的软件定时器的管理;4、系统自身的诊断处理;5、初始化,自动/手动切换,掉电保护等。,微机测控技术,6,监控程序的组成,组成取决于测控系统的组成规模,及系统的硬件配备与功能。1、监控主程序2、初始化管理3、键盘管理4、显示管理5、中断管理6、时钟管理7、自诊断8、自动/手动切换,,微机测控技术,7,监控主程序及算法模块,监控主程序调用各功能模块,并按照测控过程将它们联系起来,形成一个有机整体,实现对系统的管理。测控算法程序1、实现测量与控制功能;2、由一种或几种测控算法如数字滤波、PID算法等功能模块构成,通常为实时中断程序或监控程序所调用。,微机测控技术,8,常用功能模块,1、逻辑运算2、测量算法3、控制算法4、过程通道5、人机联系6、初始化7、实时时钟管理8、自诊断,微机测控技术,9,6.2监控主程序及初始化管理,一、监控主程序监控主程序的起始上电复位后进入监控主程序,起始地址为0;监控主程序的功能1、识别、解释命令并获得完成该命令的相应模块的入口。2、保证测控系统正常运行,协调软、硬件工作。例,微机测控技术,10,监控主程序的内容,1、可编程器件、输入输出端口和参数的初始化只做一次;2、自诊断管理模块只做一次;3、键盘显示管理模块;4、实时中断管理和处理模块等;,微机测控技术,11,监控主程序的执行,除初始化和自诊断外,其余程序构成死循环,所有功能程序周而复始地或有选择地执行;除非掉电或复位,否则测控系统不会跳出这一循环圈。,微机测控技术,12,温控仪监控流程,,,微机测控技术,13,功能说明,1、上电或复位后,首先初始化;2、软、硬件模块的自诊断;3、开放中断;4、中断发生后,判明中断源后进入相应的中断服务程序;5、中断返回,修改标志位。开始新循环。,微机测控技术,14,注意点,考虑模块运行时可能遇到的各种情况,使模块程序在运行后返回主程序中的规定入口,考虑可能出现的各种意外情况。例如乘法时溢出,除法时除数为零等可采用设置标志位的方式来避免错误的操作。,微机测控技术,15,二、初始化管理,初始化的内容1、可编程器件初始化;2、堆栈初始化;3、参数初始化。,微机测控技术,16,1、可编程器件初始化,内容可编程硬件接口电路的工作模式的初始化。8279、8155、8255、8253、LCD控制模块等。特点1)初始化都有固定的格式;2)应用方式、场合不同,初始化参数也不同。,微机测控技术,17,2、堆栈初始化,堆栈初始化复位后在用户RAM中确定一个堆栈区域。堆栈结构及大小1)设置大小;2)向上或向下生长。堆栈的设置由用户根据系统的特点决定,由堆栈指针SP来管理。例单片机堆栈的初始化。,微机测控技术,18,3、参数初始化,内容1)测控系统的整定参数、报警值;初值由被控对象的特性确定,如PID算法中3个参数的初值。2)输入通道的初始化;由测控算法决定。如采样初值、偏差初值、模拟开关初始状态、滤波初值等。,微机测控技术,19,,3)输出通道的初始化置模拟量输出为0状态或其它预定状态阀门开度大小;置开关量输出为无效状态,如继电器处于释放状态等。,微机测控技术,20,结构化设计,1)将各初始化参数集中在一个模块中,集中管理,实现模块独立性。2)初始化管理模块作为监控程序的第二层次,分别调用上述三类初始化功能模块第三层次,实现对整个测控系统的初始化。,微机测控技术,21,6.3键盘管理,键盘类型1、编码键盘2、非编码键盘,微机测控技术,22,键盘功能的实现,对编码式键盘或非编码键盘,获得当前按键的编码后,转入相应按键服务程序,完成相应功能。对功能键、数字键的实现方法类似,各键对应的具体功能,应根据系统总体要求,兼顾软、硬件来决定。例,微机测控技术,23,一、一键一义的键盘管理,一键一义的特点一般而言,多数测控系统用一个按键代表一个确切的命令功能键或一个数字数字键;编程时根据当前按键的编码转到相应的处理模块的入口,无需知道在此以前的按键情况。,微机测控技术,24,键盘读取方式,1)单纯查询法2)中断3)定时查询,微机测控技术,25,单纯查询法过程,1)主程序扫描键盘;2)按键按下时,判别是命令键还是数字键;3)若是数字键,把按键读数读入存储器,备程序处理;4)若是命令键,根据按键功能读数查阅转移表,获得功能子程序入口。5)子程序执行完后继续扫描键盘。,,,微机测控技术,26,程序流程及转移表如下,程序流程转移表一键一义键盘管理的核心一维的转移表;转移表内记录各功能子程序的转移指令。,,,微机测控技术,27,中断方法,按键动作引起中断请求,中断子程序完成键码分析,采用外部中断方式,如图,,微机测控技术,28,定时查询,定时间隔查询键盘,时间间隔通常很短,且按键要维持一定时间,对操作者来说键盘的响应是实时的;键盘的查询安排在定时中断程序中完成。,,微机测控技术,29,二、一键多义的键盘管理,一键多义键盘的适用场合1)交互信息较大的测控系统,按键较多时,如采用一键一义,则按键使用过多,费用增加,面板布置困难;2)键盘设计成一键多义,进行功能复用;3)一个按键有多种功能,既可作多种命令键,又可作数字键。,微机测控技术,30,一键多义键盘的设置,1)命令由一个按键序列所组成;2)对一个按键含义的解释,除取决于本次按键外,还取决于以前按了什么键。3)一键多义的监控程序,首先判断按键序列是否为合法命令。如是,则执行命令,否则等待新按键输入。,微机测控技术,31,按键程序设计,1)采用多张转移表,命令序列的前几个按键起着引导的作用,把控制引向某张合适的转移表;2)根据最后一个按键查阅转移表,找到对应的子程序入口。,微机测控技术,32,按键管理,实现方法查询法或中断法。查询法对执行需较长时间的按键功能,若用查询法处理键盘,系统的实时处理功能会降低。如修改一个参数,采用单键递增或递减方法,当参数的变化范围比较大时,运行时间较长。,微机测控技术,33,,中断法测控系统中响应具有实时性,按键响应不应干扰正在进行的控制运算(除非是停止等按键)。按键服务的优先级低于过程通道中断优先级。,微机测控技术,34,8回路温控仪按键处理方法,,微机测控技术,35,切纸机操作界面,,微机测控技术,36,三、自动/手动切换,系统工作状态的确定自动/手动切换是微机控制系统必须具备的一个功能。在正常运行阶段,测控系统工作在自动状态;在系统调试、测试及故障时,采用手动操来调整输出控制值。,微机测控技术,37,,自动/手动切换的基本功能1)手动操作时,通过一定的手动操作方便、准确地调整输出值;2)实现手动/自动的无扰动切换。,微机测控技术,38,手动操作的实现,实现方法1)硬件实现方法2)软件实现方法多数微机测控系统采用软件实现的方法,由操作面板上的几个按键来实现。常用的按键1)手动/自动切换键;2)手动操作输出加;3)手动操作输出减。,微机测控技术,39,实现过程,1)监控程序判断手动/自动切换键的状态判断是否进入手动操作方式;2)手动操作时,系统的自动控制功能暂停,改由面板上的输出加、减两键来调整输出控制值;3)在进行手动/自动切换时,必须保证无扰动切换。,微机测控技术,40,无扰动切换的实现,1)RAM中设置一个输出控制值变量作为当前输出控制量的映像;2)手动/自动方式下,都对这一输出值的映像单元进行加或减,根据实际的控制量进行刷新;3)在输出模块程序作用下,输出通道把此值送到执行机构;,微机测控技术,41,,4)手动和自动对同一输出控制量单元进行操作,当从自动切换到手动时,手动操作的初值就是切换前自动调节的结果;5、手动切换到自动时,自动调节的初值就是原手动操作的结果,无需作特别的处理。,微机测控技术,42,特点,1)软切换方案比硬件方法要简单得多,不增加硬件;2)当主机、输出通道等硬件电路故障时,软手动控制无法实现。3)有时需保留硬手动切换。,微机测控技术,43,6.4显示、中断及时钟管理,一、显示管理测控系统的显示方式分类1、模拟指示模拟表头作为显示手段,在输入通道的模拟量部分取出信号送入指示表即可,无需软件管理。2、数字显示硬件方案的不同,显示管理方法也不同。,微机测控技术,44,显示管理的基本任务,1、显示更新的数据2、多参数巡检和定点显示管理3、指示灯显示管理,微机测控技术,45,1、显示更新的数据,显示更新的数据来源1)从输入通道采集到新的过程参数;2)从键盘获得参数;3)测控系统出现异常情况;当需要更新数据时,显示管理软件应及时调用显示驱动程序模块,以更新当前的显示数据或显示特征符号。,微机测控技术,46,,一般而言,过程信息、按键内容与显示缓冲器的内容总是关联的,设计时可在用户RAM区开辟一个参数区域,作为显示管理模块与其它功能模块的数据接口。例,微机测控技术,47,2、多参数巡检和定点显示管理,多回路系统的显示电路设计对多回路系统,系统不可能为每个回路的参数独立设计一组显示电路,通常采用巡回显示的方法辅以定点显示功能;实现在一般情况下作巡回显示,当操作员对某一参数需作特别观察时,可中止巡回方式,进入定点跟踪方式。显示方法的切换由面板按键控制。,微机测控技术,48,显示方式的特点,1)定点显示方式中,只是不断地把当前显示参数的更新值送出显示,而不改换通道或参数;2)巡回显示方式中,每隔一定时间改换一个新的显示参数,并显示该值;3)巡回显示中,延时时间一般不采用软件延时的方法;在软件延时期间,主机不能做其它事。,微机测控技术,49,3、指示灯显示管理,一般而言,为使报警或使按键操作参数显示醒目,测控系统常在面板上设置一定数量的指示灯发光二极管。指示灯的管理很简单,通常可由与某一指示灯有关的功能模块直接管理。,微机测控技术,50,二、中断管理,中断的功能1、及时响应各种实时事件,提高实时处理能力;2、解决快速CPU和慢速外设间矛盾,使CPU、外设并行工作3、及时处理测控系统中各种随机的参数和信息;4、具备故障处理的能力,提高系统的可靠性。例,微机测控技术,51,中断特点,1、过程的某一状态或实时时钟或键操作中止当前任务,转而处理该过程的实时请求;2、处理完请求后,继续执行原任务;3、中断未开放时,不能响应中断。,微机测控技术,52,中断源,定义能发出中断请求信号的外设或事件称为中断源。类型1、过程通道;2、实时时钟;3、面板按键;4、通信接口和系统故障。,微机测控技术,53,一般特点,系统开机时,不响应中断请求,初始化后,主程序执行开放中断命令,一旦有中断请求,即进入中断工作方式。,微机测控技术,54,中断过程,1、断点保护保护程序计数器的内容,使CPU在中断服务程序执行完时能回到它在产生中断之前所处的状态;进栈保护2、将中断服务程序入口地址送入程序计数器;,微机测控技术,55,,3、现场保护中断服务程序开始时,必须将服务程序使用的寄存器如累加器、进位位、专用的暂存寄存器等的内容压入堆栈保护;在中断服务程序结束时恢复。,微机测控技术,56,,4、对引起中断而将INT变为低电平的设备,系统必须进行适当的操作使INT再次变为高电平;5、如允许下次中断,须将允许中断触发器再次置位;6、恢复程序计数器原先保存的内容,返回到被中断的程序,微机测控技术,57,多中断源的处理,1、根据测控系统的功能特点,决定多个中断源的优先级,在软件上作出相应处理;2、多个中断源同时发出中断申请时,主机要识别出是哪些中断源在申请中断,且判断优先级;3、响应优先级高的中断请求;4、当CPU在处理中断时,还要能响应更高优先级的中断请求,而屏蔽较低级的中断请求;5、对同级中断请求,按事先规定的情况决定。,微机测控技术,58,中断服务,1、不同的微处理器的中断结构有所不同,处理方法也不同;2、根据微处理器的中断结构,设计相应的中断程序模块。,微机测控技术,59,中断管理,中断管理软件模块,通常应包括以下功能1、断点现场保护2、识别中断源3、判断优先级4、恢复现场如图系统掉电作为最高级中断源。其它中断源优先级,由系统的功能特点来确定,,,微机测控技术,60,单片机的中断管理,对两个以上中断源,可采用如下两种方法1、利用定时器/计数器的外部事件计数输入端T0或T1,作为边沿触发的外部中断输入端;定时器/计数器应工作于计数器方式,计数寄存器预置满度数。,微机测控技术,61,,2、采用同一个外部中断输入端INT0或INTl上,利用输入口识别具体的中断请求只要有中断请求,INT0引脚电平变低。具体是哪个外部装置申请的中断,可以查询P1.4P1.7的逻辑电平获知,这4个中断源的优先级由软件给定。,,微机测控技术,62,三、时钟管理,测控系统时钟主要作为定时器,用途如下1、输入通道的采样周期定时;2、输出通道控制周期的定时;3、参数修改按键数字增减速度的定时对采用/-按键来修改参数的测控系统,通常先慢加减几步,然后快加减或呈指数速度变化;,微机测控技术,63,,4、多参数巡回显示时的显示周期定时;5、动态保持方式输出过程通道的动态刷新周期定时;6、电压-频率型A/D转换器定时电路;7、故障监视电路Watchdog的定时信号。,微机测控技术,64,实现,1、硬件方法实现采用可编程定时/计数器接口电路如CTC8253及单片机内的定时电路。特点使用时,在初始化程序或时钟管理程序中,对工作方式预置和时间常数预置即可。受硬件的限制,定时间隔不可能做得太长,难以实现多种不同时间的定时。,微机测控技术,65,2、软件延时实现,a、方案简单,无需硬件成本;b、占用大量CPU时间;c、实时性差;d、定时精度低;,微机测控技术,66,3、软件与硬件相结合的实现原理,a、定时电路产生一个基本的脉冲;b、硬件定时时间到,产生一中断;c、主程序转入时钟中断管理模块;,微机测控技术,67,软件与硬件相结合实现的方法,a、软件设计时,串行或并行的设置几个软件定时器RAM中。若一个定时间隔是另一个的整数倍,软件定时器可设计成串行;若不是整数倍,则可设计成并行的。b、硬件定时中断一到,软件时钟累加递减计时;c、软件判断是否溢出或回零,即定时时间到。,微机测控技术,68,4、实现的特点,a、程序段一般不会很长,对测控系统的实时性影响极小;b、方便地实现多个定时器功能;c、时钟管理任务是在主程序中对各定时器预置初值和在响应时钟中断过程中判断是否时间到;d、时间到重新预置初值,建立标志,提示应该执行前述7种功能中某项服务程序;e、服务程序的执行一般都安排在时钟中断返回以后进行。由查询中断中建立的标志状态来决定是否执行该功能。,微机测控技术,69,小结,,