储罐液位系统设计.ppt
《储罐液位系统设计.ppt》由会员分享,可在线阅读,更多相关《储罐液位系统设计.ppt(17页珍藏版)》请在优知文库上搜索。
1、核心:单片机 89s52片外扩展:8KB RAM存储器6264,I/O口扩展8155转换器:ADC0809,DAC0832锁存器等:74HC373,74H377,74HC245和3-8译码器74HC138输入/输出部件:6个LED,4个按键89S52的RD及PSEN用与门接在一起后送入6264的OE端,使得 6264既可以作为数据存储器,也可以作为程序存储器。液位信号(电压值)从ADC0809的IN0引脚输入,A/D转换后存储。液位给定值由键盘设定,与液位信号比较得出偏差值。若超限,则报警,LED4现实P,同时以P1.0驱动报警器,以P1.1驱动蜂鸣器。按达林算法计算控制器的输出值。输出值经D
2、/A转换得到模拟电压值并输出。液位信号的电压值经标度转换后,变为液位值存储,送LED显示。6个LED显示如图a所示。LED5显示H或L,LED4为超限指示,LED3LED0显示液位值,LED1数码管加小数点,显示范围为000.0999.9。显示器与键盘设置LED5 LED4 LED3 LED2 LED1 LED0 H 1 9 9.5键盘设定液位的高低报警限。采用4键方式,4个按键的功能如图b所示。显示与键盘循环扫描,无键按下时,LED显示实时液位,右键按下时,进入液位报警限的修改。先按选择键方可进入修改,先按其他3个键无效。进入修改状态后,待修改的显示位LED5闪动,按+或-键可循环选择H或L
3、,同时后4位LED显示对应的液位值。按确认件后调到下一个待修改的显示为LED3并闪动,按+或-键循环修改09数字,再按确认键调到下一位置,如此进行,知道4个数字修改完毕后退出修改状态。在修改状态时,若不按确认键,则8秒后退出修改状态。从视觉舒适的角度考虑,数字应为每0.4秒闪动一次。显示器与键盘设计 选择+-确定数据采集:A/D转换,采样周期为10s。数字滤波:采用5个数平均滤波法。标度转换:将液位变送器的标准电压信号转换为液位值。动态显示:动态循环显示。键盘扫描:读键值并判断功能。控制计算:达林算法。控制输出:D/A转换。报警处理:超过高、低报警器限时驱动报警灯及蜂鸣器。#include r
4、eg51.h#include Absacc.h#define STARTAD XBYTE0 x7F00#define ADRESULT XBYTE0 x7F08sbit ADBUSY=P33;void Delay()unsigned char i;for(i=0;i100;i+);unsigned char AD0809(void)unsigned char result;STARTAD=0;/启动 AD while(ADBUSY=1);/等待转换结束 Delay();result=ADRESULT;return result;/返回转换结果void A_D(void)unsigned cha
5、r ADV;/变量 while(1)ADV=AD0809();Delay();/设置断点 TH0=0 x3c;TL0=0 xb0;EA=1;ET0=1;TR0=1;Void timer0()TH0=0 x3c;THL0=0 xb0;num+;if(num=200)num=0;A_D();#define N 5char filter()char count;int sum=0;for(count=0;countN;count+)sum+=get_ad();delay();return(char)(sum/N);头文件:height.h#include#include#define g 10flo
6、at q,a,h,p,s,r;float ADC(float q,a,s,r);void main()floatADC();printf(%d,h);float ADC(float q,r,a,s,r)h=(q*r)/(r*a*s+1);return(h);#include reg52.h#define uchar unsigned char sbit CLK=P36;sbit A1=P25;sbit A2=P26;sbit A3=P27;uchar aa;uchar code table=0 x3f,0 x06,0 x5b,0 x4f,0 x66,0 x6d,0 x7d,0 x07,0 x7
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 储罐液位 系统 设计