测控系统原理与设计6-监控程序设计_第1页
测控系统原理与设计6-监控程序设计_第2页
测控系统原理与设计6-监控程序设计_第3页
测控系统原理与设计6-监控程序设计_第4页
测控系统原理与设计6-监控程序设计_第5页
已阅读5页,还剩56页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、监控程序设计本章主要内容: 监控程序的功能和组成监控程序的功能和组成 监控主程序和初始化管理监控主程序和初始化管理 键盘管理键盘管理 显示、中断与时钟管理显示、中断与时钟管理 硬件故障的自检硬件故障的自检6.1 监控程序的功能和组成监控程序的功能和组成 监控程序设计是指以空白的微处理器监控程序设计是指以空白的微处理器/控制器为基础,完成全部的软件设计,控制器为基础,完成全部的软件设计, 没有将系统软件和应用软件分开处理,没有将系统软件和应用软件分开处理,其实时性和可靠性与设计人员的水平其实时性和可靠性与设计人员的水平密切相关,密切相关, 适用于功能较为简单的中小型应用系适用于功能较为简单的中小

2、型应用系统。统。测控系统(仪器)中软件的主要功能测控系统(仪器)中软件的主要功能 采集信息采集信息 与外界对话(键盘和显示管理与外界对话(键盘和显示管理 ) 记忆信息记忆信息 处理信息处理信息 控制功能控制功能 自我测试自我测试 自补偿自适应自补偿自适应/自校正自学习自校正自学习图图611 监控程序的基本组成监控程序的基本组成 监控主程序调用各模块,并将它们联系起来,监控主程序调用各模块,并将它们联系起来,形成一个有机整体,从而实现对系统的全部管形成一个有机整体,从而实现对系统的全部管理功能。理功能。 测控算法程序主要实现测量与控制功能,它由测控算法程序主要实现测量与控制功能,它由描述一种或几

3、种测控算法描述一种或几种测控算法(如数字滤波,如数字滤波,PID算算法等法等)的功能模块构成,通常为实时中断程序的功能模块构成,通常为实时中断程序或监控程序所调用。或监控程序所调用。 各功能模块又由各种下层模块各功能模块又由各种下层模块(子程序子程序)所支持。所支持。6.2 监控主程序和初始化管理监控主程序和初始化管理 6.2.1 监控主程序监控主程序 监控主程序通常包括可编程器件、输入、输出端口和参数的初始化,自诊断管理模块,键盘显示管理模块,以及实时中断管理和处理模块等 。 除了初始化和自诊断外,监控主程序一般除了初始化和自诊断外,监控主程序一般总是把其余部分联接起来,构成一个无限总是把其

4、余部分联接起来,构成一个无限循环,测控系统的所有功能都在这一循环循环,测控系统的所有功能都在这一循环中周而复始地、或有选择地执行,除非掉中周而复始地、或有选择地执行,除非掉电或按复位电或按复位(RESET)键,测控系统不会跳键,测控系统不会跳出这一循环。出这一循环。 由于各微机化测控系统的功能不同,硬件由于各微机化测控系统的功能不同,硬件结构不同,程序编制方法不同,因而监控结构不同,程序编制方法不同,因而监控主程序没有统一的模式。主程序没有统一的模式。 图图621 监控主程序流程示例监控主程序流程示例 6.2.2 初始化管理初始化管理 一、可编程器件初始化一、可编程器件初始化对可编程硬件对可编

5、程硬件接口电路的工作模式的初始化接口电路的工作模式的初始化 微机化测控系统中常用的可编程器件有:微机化测控系统中常用的可编程器件有: 键盘显示管理接口键盘显示管理接口8279、 I/O和和RAM扩展接口扩展接口8155, 并行输入输出接口并行输入输出接口8255、 定时计数器接口定时计数器接口8253等。等。 二、堆栈初始化二、堆栈初始化 复位后首先在用户复位后首先在用户RAM中确定一个堆中确定一个堆栈区域,由堆栈指示器栈区域,由堆栈指示器SP来管理来管理 三、参数初始化三、参数初始化 指对测控系统的指对测控系统的整定参数整定参数(如如PID算法的算法的Kp、Ti、Td三个参数的初值三个参数的

6、初值)、报警值报警值以及以及过程过程输入通道的数据输入通道的数据与与过程输出通道的数据过程输出通道的数据初初始化。始化。6.3 键盘管理键盘管理 6.3.1一键一义的键盘管理一键一义的键盘管理 一键一义,即一个按键代表一个确切的命令或一个数字,编程时只要根据当前按键的编码把程序直接分支到相应的处理模块的入口,而无需知道在此以前的按键情况。键盘信号的获得有三种方法: 一、单纯查询法图图631 查询法程序流程(了解)查询法程序流程(了解)功能:按下不同的按键会使功能:按下不同的按键会使SOUNDER 发出不同频率的声音发出不同频率的声音#include#define uchar unsigned

7、char#define uint unsigned intsbit BEEP=P37;sbit K1=P14;sbit K2=P15;sbit K3=P16;sbit K4=P17;.void Play(uchar t) .void main()P1=0 xff;BEEP=0;while(1)if(K1=0) Play(1);if(K2=0) Play(2);if(K3=0) Play(3);if(K4=0) Play(4);二、键盘中断法 按下键盘任何键都引起一个中断请求,键码分析过程放在中断子程序中,这种方法需独自占用一个外部中断源,其监控程序结构如图6-3-2(a)所示。 图图632 中

8、断法和定时法程序框图中断法和定时法程序框图三、定时查询法 每隔一定时间查询一次键盘,由于时间间隔通常很短,对于操作者来说键盘的响应是实时的,键盘的查询过程安排在定时中断程序中完成,其监控程序的结构框图如图6-3-2(b)所示。 6.3.2 一键多义的按键管理一键多义的按键管理 一、一键多义一、一键多义: 一个按键有多种功能,既可作多种命令键,又可作数字键。 在一键多义的情况下,一个命令不是由一次按键,而是由一个按键序列所组成而是由一个按键序列所组成。 换句话说,对一个按键含义的解释,除了取决于本次按键外,还取决于以前按了些什么键。 因此对于一键多义的监控程序,首先要判断一个按键序列(而不是一次

9、按键)是否已构成一个合法命令。 若已构成合法命令,则执行命令,否则等待新按键输入。 二、一键多义的监控程序 一键多义的监控程序:要用多张转移表,组成一个命令的前几个按键起着引导的作用,把控制引向某张合适的转移表,根据最后一个按键编码查阅该转移表,就找到要求的子程序入口。 按键的管理,可以用查询法也可以用中断法。 三、一键多义键服务程序流程实例 8回路微机温控仪键盘有6个按键: C键(回路号18,第8回路为环境温度补偿,其余为控温点) P键(参数号,有设定值,实测值,共8个参数) 键(加1) 键(减1)只用于设定值的修改 R键(运行) S键(停止运行) 第8回路(环境温度补偿回路)只有温度实测值

10、一个参数,没有其它参数 第17个回路有设定值(P、I、D参数,上、下限报警值)、温度实测值8个参数 1、程序流程图633 2、程序清单:参见教材。 设键编码R:00H;S:01H;:02H; :03H;C:04H和P:05H。内存RAM 20H中高4位为通道(回路)号标记,低4位为参数号标记。假设8279命令口地址为7FFFH,数据口地址为7FFEH。 7个回路(17),每个回路8个参数,共有56个转移入口,分别由56个键服务功能模块所支持。第8回路无参数,由其独立子程序C8单独处理。图图633 一键多义键服务程序流程一键多义键服务程序流程6.3.3自动自动/手动切换手动切换 一、微机化控制系

11、统的两种工作方式一、微机化控制系统的两种工作方式 自动方式自动方式微机化控制系统的基本工作微机化控制系统的基本工作方式。方式。 手动方式手动方式在系统调试、测试时,用来在系统调试、测试时,用来调整输出控制值。调整输出控制值。二、自动二、自动/手动切换控制的基本功能是:手动切换控制的基本功能是:在手动方式时,能通过一定的手动操作来在手动方式时,能通过一定的手动操作来方便、准确地调整输出值;方便、准确地调整输出值;能实现手动能实现手动-自动的无扰动切换。自动的无扰动切换。三、实现手动操作的方法三、实现手动操作的方法 实现手动操作,有实现手动操作,有硬件方法硬件方法和和软件方法软件方法两两种。目前大

12、多数微机化系统采用软件方法,种。目前大多数微机化系统采用软件方法,由操作面板上的几个按键来实现。由操作面板上的几个按键来实现。 监控程序通过判断手动监控程序通过判断手动-自动切换键的状态自动切换键的状态来判断是否进入手操方式。在手操方式时,来判断是否进入手操方式。在手操方式时,系统的自动控制功能暂停,改由面板上的系统的自动控制功能暂停,改由面板上的输出加、减两键来调整输出值。输出加、减两键来调整输出值。 四、无扰动切换的实现四、无扰动切换的实现 在用户在用户RAM区中开辟一个输出控制值单元,区中开辟一个输出控制值单元,作为当前输出控制量的映象,无论是手操作为当前输出控制量的映象,无论是手操还是

13、自动控制,都是对这一输出值的映象还是自动控制,都是对这一输出值的映象单元进行加或减,在输出模块程序作用下,单元进行加或减,在输出模块程序作用下,输出通道把此值送到执行机构上去。输出通道把此值送到执行机构上去。 6.4显示、中断与时钟管理显示、中断与时钟管理 6.4.1显示管理显示管理一、微机化系统的主要显示方式一、微机化系统的主要显示方式 模拟指示模拟指示用模拟表头作为显示手段,用模拟表头作为显示手段,无需软件管理。无需软件管理。 数字显示数字显示硬件方案的不同,软件显示硬件方案的不同,软件显示管理方法也不同管理方法也不同二、显示管理软件的基本任务二、显示管理软件的基本任务1、显示更新的数据、

14、显示更新的数据 2、多参数的巡测和定点显示管理、多参数的巡测和定点显示管理 巡回显示方式巡回显示方式每隔一定时间每隔一定时间)改换改换一个新的显示参数一个新的显示参数 定点显示方式定点显示方式只跟踪显示某一参数,只跟踪显示某一参数,不改换通道或参数不改换通道或参数3、指示灯显示管理、指示灯显示管理通常可由与某一指示灯有关的功能模块直通常可由与某一指示灯有关的功能模块直接管理。接管理。P0=DSY_CODEDSY_Buffer0;P1=DSY_CODEDSY_Buffer1;P2=DSY_CODEDSY_Buffer2;DSY_Buffer2=Count/100; DSY_Buffer1=Cou

15、nt%100/10;DSY_Buffer0=Count%10;void main()LED=1;EA=1;EX0=1;IT0=1;while(1);/INT0 中断函数void EX_INT0() interrupt 0LED=LED; /控制LED 亮灭#include#define uchar unsigned char#define uint unsigned intsbit LED=P00;/主程序 测控系统的中断源:u过程通道u实时时钟u面板按键u通信接口u系统故障6.4.2中断管理中断管理一、一个中断源的中断过程一、一个中断源的中断过程 :暂时保护程序计数器的内容。暂时保护程序计数

16、器的内容。将中断服务程序的入口地址送入程序计数将中断服务程序的入口地址送入程序计数器。器。在服务程序开始时,必须将服务程序需要在服务程序开始时,必须将服务程序需要使用的使用的CPU寄存器寄存器(例如累加器、进位位、例如累加器、进位位、专用的暂存寄存器等专用的暂存寄存器等)的内容暂时地保护起的内容暂时地保护起来,并在服务程序结束时再恢复其内容。来,并在服务程序结束时再恢复其内容。 对于引起中断而将对于引起中断而将INT变为低电平的设备,变为低电平的设备,系统必须进行适当的操作使系统必须进行适当的操作使INT再次变为高再次变为高电平。电平。如果允许发生中断,则必须将允许中断触如果允许发生中断,则必

17、须将允许中断触发器再次置位。发器再次置位。最后,恢复程序计数器原先被保存的内容,最后,恢复程序计数器原先被保存的内容,以便返回到被中断的程序。以便返回到被中断的程序。二、多个中断源的处理 确定多个中断源的优先级,在软件上作出确定多个中断源的优先级,在软件上作出相应处理。相应处理。 当当CPU在处理中断时,还要能响应更高级在处理中断时,还要能响应更高级的中断请求,而屏蔽掉同级或较低级的中的中断请求,而屏蔽掉同级或较低级的中断请求。断请求。 三、中断程序模块三、中断程序模块 中断模块分中断管理模块和中断服务模块中断模块分中断管理模块和中断服务模块两部分。两部分。 1、中断服务模块、中断服务模块具体

18、服务内容,由各具体服务内容,由各测控系统的功能所决定。测控系统的功能所决定。 2、中断管理模块、中断管理模块 中断管理软件模块,通常应包括以下功能:中断管理软件模块,通常应包括以下功能:断点现场保护;识别中断源;判断优先级;断点现场保护;识别中断源;判断优先级;如果允许中断嵌套,则再次开放中断如果允许中断嵌套,则再次开放中断(单片单片机除外机除外);中断服务结束后恢复现场,如图;中断服务结束后恢复现场,如图6-4-1所示。所示。 图图641 中断流程中断流程四、多中断源识别 通常,系统掉电总是作为最高级中断源。其它通常,系统掉电总是作为最高级中断源。其它中断源的优先级,则由设计人员根据系统的功

19、中断源的优先级,则由设计人员根据系统的功能特点来确定。当有两个以上中断源时,可以能特点来确定。当有两个以上中断源时,可以采用如下两种方法:采用如下两种方法:利用定时器利用定时器/计数器的外部事件计数输入端计数器的外部事件计数输入端(T0或或T1),作为边沿触发的外部中断输入端,这时,作为边沿触发的外部中断输入端,这时定时器定时器/计数器应工作于计数器方式,计数寄存计数器应工作于计数器方式,计数寄存器应预置满度数。器应预置满度数。每个中断源都接在同一个外部中断输入端每个中断源都接在同一个外部中断输入端(INT0或或INT1)上,同时利用输入口来识别某装置的中上,同时利用输入口来识别某装置的中断请

20、求。断请求。 图图642 多中断源识别电路多中断源识别电路6.4.3时钟管理时钟管理 一、时钟作为定时器的用途一、时钟作为定时器的用途过程输入通道的数据采样周期定时;过程输入通道的数据采样周期定时;过程输出通道控制周期的定时;过程输出通道控制周期的定时;参数修改按键数字增减速度的定时;参数修改按键数字增减速度的定时;多参数巡回显示时的显示周期定时;多参数巡回显示时的显示周期定时;动态保持方式输出过程通道的动态刷新周期定动态保持方式输出过程通道的动态刷新周期定时;时;电压电压-频率型频率型A/D转换器定时电路;转换器定时电路;故障监视电路故障监视电路(Watch dog)的定时信号。的定时信号。

21、二、实现定时的方法二、实现定时的方法1、硬件方法、硬件方法 采用可编程定时采用可编程定时/计数器接口电路计数器接口电路(如如CTC 8253)以及单片机内的定时电路。这种定时以及单片机内的定时电路。这种定时方法的定时间隔不可能做得太长。方法的定时间隔不可能做得太长。 采用实时时钟芯片。采用实时时钟芯片。 2、软件方法。、软件方法。 采用软件延时方案,无需硬件成本,但要采用软件延时方案,无需硬件成本,但要占用大量占用大量CPU时间,且实时性差,定时精时间,且实时性差,定时精度低。度低。 3、软件与硬件相结合定时的方法、软件与硬件相结合定时的方法 这种方案几乎不影响测控系统的实时响应,这种方案几乎

22、不影响测控系统的实时响应,而且能实现多种时间间隔的定时。而且能实现多种时间间隔的定时。 首先由定时电路产生一个基本的脉冲。硬首先由定时电路产生一个基本的脉冲。硬件定时时间到,产生一中断。监控主程序件定时时间到,产生一中断。监控主程序随即转入时钟中断管理模块。随即转入时钟中断管理模块。 在设计软件结构时,可串行地或并行地设在设计软件结构时,可串行地或并行地设置几个软件定时器置几个软件定时器(在用户在用户RAM区区)。当硬。当硬件定时中断一到,这些软件时钟分别用累件定时中断一到,这些软件时钟分别用累加或递减方法计时,并由软件来判断是否加或递减方法计时,并由软件来判断是否定时时间到。定时时间到。 6

23、.5 硬件故障的自检硬件故障的自检 6.5.1自检方式自检方式一、自检的基本原理一、自检的基本原理 自检就是利用事先编制的程序对测控系统的主自检就是利用事先编制的程序对测控系统的主要部件进行自动检测,以确定是否有故障以及要部件进行自动检测,以确定是否有故障以及故障的内容和位置。故障的内容和位置。 故障诊断的基本原理是对被测部件输入一串数故障诊断的基本原理是对被测部件输入一串数据据试验数据,然后观察相应的输出数据,试验数据,然后观察相应的输出数据,并对观察结果进行分析,确定故障的内容和位并对观察结果进行分析,确定故障的内容和位置。试验数据、观察到的结果数据和故障的对置。试验数据、观察到的结果数据

24、和故障的对应关系应在故障诊断前准备好。应关系应在故障诊断前准备好。 二、自检方式的三种类型:一、开机自检在电源接通或系统复位之后进行。自检中如果没发现问题,就进入测量程序,如果发现问题,则及时报警。 2、周期性自检、周期性自检 在测控系统运行过程中,间断插入的自检在测控系统运行过程中,间断插入的自检操作,这种操作可以保证测控系统在使用操作,这种操作可以保证测控系统在使用过程中一直处于正常状态。周期性自检不过程中一直处于正常状态。周期性自检不影响测控系统的正常工作,因而只有当出影响测控系统的正常工作,因而只有当出现故障给予报警时,用户才会觉察。现故障给予报警时,用户才会觉察。 键盘自检具有键盘自

25、检功能的测控系统面板上应设有“自检”按键,当用户对系统的可信度发出怀疑时,便通过该键来启动一次自检过程。 三、自检结果的提示“出错代码” 自检过程中,微机化测控系统一般都借用本身的显示器,以文字或数字的形式显示“出错代码”,出错代码通常以“Error X”字样表示,其中“X”为故障代号,操作人员根据“出错代码”,查阅操作手册便可确定故障内容。除了给出故障代号之外,往往还给出指示灯的闪烁或者音响报警信号,以提醒操作人员注意。 6.5.2自检算法自检算法一、一、ROM或或EPROM的检测的检测 ROM故障的检测常用故障的检测常用“校验和校验和”方法,具体作方法,具体作法是:在将程序机器码写入法是:

26、在将程序机器码写入ROM的时候,保留的时候,保留一个单元一个单元(一般是最后一个单元一般是最后一个单元),此单元不写,此单元不写程序机器码而是写程序机器码而是写“校验字校验字”,“校验字校验字”应应能满足能满足ROM中所有单元的每一列都具有奇数个中所有单元的每一列都具有奇数个1。自检程序的内容是:对每一列数进行异或运。自检程序的内容是:对每一列数进行异或运算,如果算,如果ROM无故障,各列的运算结果应都为无故障,各列的运算结果应都为“1”,即校验和等于,即校验和等于FFH。 二、RAM的检测 常用的方法是“异或法”,即把RAM单元的内容求反并与原码进行“异或”运算,如果结果为FFH,则表明该RAM单元读写功能正常,否则,说明该单元有故障。最后再恢复原单元内容。RAM的自检流程如图651所示。 图图651 RAM自检流程图自检流程图三、总线的自检 总线的自检是指对经过缓冲器的总线进行检测。总线的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论