文档介绍:2017 年2月27日星期一第3章第3章常用控制程序设计 巡回检测程序 数字滤波程序 标度变换程序 上、下限报警程序 数码管显示程序 键处理程序 2017 年2月27日星期一第3章程序所用语言: BASIC 、C及汇编语言等本章主要介绍微型计算机控制系统的常用程序, 如巡回检测程序、数字滤波程序、标度变换程序、上下限报警程序、显示程序、面板操作程序等。它虽然不是微型机控制系统的全部,但它是最基本最常用的程序。学完本章后,只需根据系统的需要,把这些程序进行排列组合即可。 2017 年2月27日星期一第3章 巡回检测程序 概述在现代冶金、石油、化工以及电力生产过程中,往往需要测量和控制几十点甚至几百点的参数。随着电子计算机的发展,特别是利用其速度快的特点,可以用一台计算机同时对几十点进行检测,即巡回检测。巡回检测就是对生产过程中的各个参数以一定的周期进行检查和测量,检测的结果经计算机处理后再进行显示、打印和报警, 以提醒操作人员注意或直接用于控制。图 3-1 微机巡回检测结构图生产过程多路开关 A/D 转换器计算机显示打印···· ····声光报警····由于计算机在巡视中是利用采样开关对输入通道进行逐个采样,依次处理,再逐个输出。采样是计算机巡回检测的特点之一。 2017 年2月27日星期一第3章 巡回检测举例某厂有一组退火炉,要求用一台工业控制计算机对八座炉子进行温度巡回检测,并存入 SV 单元,其系统原理图如图 3-2 所示。 74LS393 图3-2 用微型机实现巡回检测原理图 Q…Q ADC 0809 IN0 IN1 :: IN7 V REF+ V REF- GND EOC START ALE OE CLK D0 ::: D7 ABC 煤气 1 #炉 2 #炉···热电偶 8 #炉变送器+ 数据总线 D0 ::: D7 A0 A1 A2 IRQ +5V IOW 220~227H IOR ··· ···+ CP 8MHz 1 #炉退火是将金属缓慢加热到一定温度,保持足够时间,然后以适宜速度冷却的一种金属热处理工艺。(1) 系统硬件:测量温度的传感器为热电偶,由于系统测量温度的范围为 0-800 ℃,故选用镍铬热电偶,其输出的 mV 信号,经变送器转换成 0-5V 直流信号,供 A/D 转换用。由于 ADC0809 的工作频率为 500KHZ ,而 IBM 计算机的时钟频率较高,故利用 74LS393 四位二进制计数器进行 16 分频得到 500 k HZ 供 ADC0809 的时钟。 A/D 转换结束信号 EOC 送 IBM 计算机的 IRQ 2 中断请求输入端,以便在 A/D 转换结束后,向 CPU 发中断请求。选择那个通道的模拟量进行转换,由地址总线 A 0、A 1、A 2的状态定。(2)系统软件: 采样的方法是先将八个通道的模拟量各采样一次,再采八个通道的第二次, ……,直至第五次全采完,其数据存放方法如图 3-3 所示。图3- 3 数据存放方法????第0 #通道地址????第1 #通道地址????第2 #通道地址????第7 #通道地址图 3-4 为系统的程序框图。主程序主要是初始化。其中, 05 为每个炉子采 5 个值, 08 为采八个炉子, 220 H 对应 ADC0809 的地址,采样数据存放 SV 单元中。图3-4 巡回检测系统程序框图主程序用 INT 21H 的 25H子功能设置 IRQ 2 的中断向量取中断屏蔽寄存器的内容保存在 BP 中, 开放 IRQ 2 中断 05? CH, 220? DX 08? CL, 7000 ? DS 0? BX,0? DI 开中断起动 A/D 等待起动 A/D 读入 A/D值存 A/D值修改存数地址指针 DI值修改通道号 DX+1 ? DX 8 个通道采完? CL=0 ? 发中断结束命令开中断,返回继续采 5 次采完? CH=0 ? 08? CL, 220? DX BX+1 ? BX,BX ? DI 发中断结束命令开中断返回,继续采发中断结束命令恢复中断屏蔽字返回 DOS 继续采中断服务子程序 N Y Y N程序如下: DATA SEGMENT SV DB 40 DUP(?) ; 采样值单元 DATA ENDS CODE SEGMENT ASSUME CS:CODE, DS:DATA START: PUSH DS ; 保护 DS MOV AX, SEG ADINT