ImageVerifierCode 换一换
格式:DOCX , 页数:15 ,大小:503.44KB ,
资源ID:3716844      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/3716844.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(电容式液位传感器设计.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

电容式液位传感器设计.docx

1、电容式液位传感器设计第2章方案论证2.1设计原理本设计采用筒式电容传感器采集液位的高度。主要利用其两电极的覆盖面积随被测液体液位的变化而变化,从而引起对应电容量变化的关系进行液位测量。由于从传感器得出的电压一般在030mv之间,太小不易测量,所以要通过放大电路进行放大。从放大电路出来的是模拟量,因此送入ADC0809转换成数字量,ADC0809连接于单片机,把信号送入单片机。通过单片机控制水泵的运转。显示电路连接于单片机用于显示水位的高度。该显示接口用一片MC14499和单片机连接以驱动数码管。2.2系统框图被测物理量:主要是指非电的物理量,在这里为水位。传感器:将输入的物理量转换成相应的电信

2、号输出,实现非电量到电量的变换。传感器的精度直接影响到整个系统的性能,所以是系统中一个重要的部件。放大,整形,滤波:传感器的输出信号一般不适合直接去转换数字量,通常要进行放大,滤波等环节的预处理来完成。A/D转换器:实现将模拟量转换成数字量,常用的是并行比较型、逐次逼近式、积分式等。在此用到逐次逼近式。单片机:目前的数据采集系统功能和性能日趋完善,因此主控部分一般都采用单片机。显示设备:在此用到8段数码管。控制设备:控制电动机的运行或关闭。 第三章单元电路设计3.1传感器设计3.1.1传感器原理电容式液位传感器系统; 它利用被测体的导电率, 通过传感器测量电路将液位高度变化转换成相应的电压脉冲

3、宽度变化, 再由单片机进行测量并转换成相应的液位高度进行显示,该系统对液位深度具有测量、显示与设定功能, 并具有结构简单、成本低廉、性能稳定等优点。3.1.2传感器的组成图3-1-2 为传感器部分的结构原理图。它主要是由细长的不锈钢管(半径为R1 ) 、同轴绝缘导线(半径为R0 ) 以及其被测液体共同构成的金属圆柱形电容器构成。该传感器主要利用其两电极的覆盖面积随被测液体液位的变化而变化, 从而引起对应电容量变化的关系进行液位测量。图3-1-2传感器原理图3.1.3 测量原理由图1 可知, 当可测量液位H = 0 时, 不锈钢管与同轴绝缘导线构成的金属圆柱形电容器之间存在电容C0 , 根据文献

4、得到电容量为: (1)式中, C0 为电容量, 单位为F ; 0 为容器内气体的等效介电常数,单位为F/ m; L 为液位最大高度; R1 为不锈钢管半径;R0 为绝缘导线半径, 单位为m。当可测量液位)为H 时, 不锈钢管与同轴绝缘电线之间存在电容CH : (2)式中, 为容器内气体的等效介电常数, 单位为F/ m。因此, 当传感器内液位由零增加到H 时, 其电容的变化量C 可由式(1) 和式(2) 得 (3)由式可知, 参数0 , , R1 , R0 都是定值。所以电容的变化量C 与液位变化量H 呈近似线性关系。因为参数0 , , R1 , R0 , L 都是定值, 由式(2) 变形可得:

5、CH = a0 + b0 H ( a0 和b0 为常数) (4)。可见, 传感器的电容量值CH 的大小与电容器浸入液体的深度H 成线性关系。由此, 只要测出电容值便能计算出水位。3.2将电容转化成电信号部分 采用运算法测量电路来转化。该电路由传感器和固定的标准电容以及运算放大器A组成,如图3-2所示。 图3-2 运算放大器测量电路原理图3.3 电信号放大电路设计由于从传感器得出的电压一般在030mv之间,太小不易测量,所以要通过放大电路进行放大,如图3-3所示,采用最基本的比例运算反放大电路. 图3-3 比例放大电路要将30mV电压放大成5V,根据公式U=-(R1/R2)Uo,所以选择R1=5

6、00K,R2=3K,R4=R1/R2,后边的是一个反相器,把第一个运放得到的电压反相成正的,其中R3=R5=1K,R6=R3/R5。3.4 A/D转换器设计本设计采用A/D转换器ADC0809。ADC0809是CMOS单片型逐次逼近式AD转换器,由于输出级有8位三态输出锁存器,因而0809的数据输出端可以直接与单片机的数据总线连接。ADC0809的工作过程是:首先输入3位地址,并使ALE=1,将地址存入地址锁存器中。此地址经译码选通8路模拟输入之一到比较器。START上升沿将逐次逼近寄存器复位。下降沿启动 A/D转换,之后EOC输出信号变低,指示转换正在进行。直到A/D转换完成,EOC变为高电

7、平,指示A/D转换结束,结果数据已存入锁存器,这个信号可用作中断申请。当OE输入高电平时,输出三态门打开,转换结果的数字量输出到数据总线上.ADC0809转换是采用逐次比较的方法完成A/D转换的,由单一的+5V供电,片内带有锁存功能的8路选一的模拟开关,由A,B,C引脚的编码来确定所选通道。0809完成一次转换需要100us左右,输出具有TTL三态锁存缓冲器,可直接连到MCS-51的数据总线上,通过适当的外接电路,0809可对0-5V的模拟信号进行转换。ADC0809与单片机的接口电路图3-4 ADC0809与单片机的接口电路3.5 控制电路的设计 控制电路在这里起到非常重要的作用,在水位测量

8、中测量到水罐中水位的高度,当水位高于2.5m水位时,电动机停转,水泵停止对水罐供水;当水位低于2.5m水位时,电动机起转,水泵开始对水罐供水。其电路图如图3-5所示。图3-5 控制电路电路图3.6 显示电路设计发现需要4位的LED足可满足本设计的显示精度要求,为了减少所需的I/O数量,降低成本,采用动态显示控制方式。通过对显示接口电路的综合分析,发现测距仪利用串行输入BCD码十进制译码驱动显示器件MC14499来完成与单片机系统的显示接口较为简单可靠。用MC14499设计的LED显示器动态显示接口电路如图3-6所示。图3-6 MC14499设计的LED显示器动态显示接口电路用MCS - 51系

9、列单片机作为控制核心的水位测量计,其数据输出既可以通过单片机的通用I/O口输出,也可以通过单片机的串口用串行方式输出。这里假设使用的单片机是8051 ,单片机的P1口为数据输出口, 显示器采用共阴极8段LED, 显示位数为4位,由于一片MC14499 可以驱动4 个LED 显示器,因此该显示接口只需用一片MC14499和单片机连接。图是该动态显示接口的原理图。P1.0用来向MC14499 发送数据,P1.1用来向MC14499发送时钟脉冲,P1.2用于控制单片机输出数据向MC14499串行输入(当P1.2 = 0时,允许MC14499输入数据)。反相器74LS06作为显示器的位驱动, 8 个4

10、7的电阻是LED 的限流电阻, 3个5.1k的电阻是上拉电阻,使单片机8031输出电平与MC14499输入电平相兼容。由于MC14499 具有输入自动锁存功能,而串行输入一帧数据又需要一定的时间,所以LED显示的数据不会出现闪烁现象。3.7 软件系统的设计软件主要由主程序、定时中断程序、外中断程序组成。其中主程序完成参数的初始化,中断的管理,结果的显示等工作。主程序流程图如下:程序运行开要初始化各种参数,可以默认液位设定值等,之后如果要进入液位设定的话就按SET按键进入液位设定模式,然后进行比较,看当前的液位有没有超过默认的极限值,如果超过了极限值,通过按键UP或DOWN进行液位调节,直至液位

11、到达正常范围;没有超过极限值就正常显示。报警80%开始初始化取液位值显示液位值是否打开供水阀取液位值是90%取液位值是显示液位值30%30%报警数据测试与误差修正在实际设计中, 取L为100cm,对水位进行实测,当无液时的频率=279.0KHz, 100cm高液位时=3.312KHz,频率最大时小于单片机的最高频率测量范围,频率最小时也不至于降低测频精度。经过测试,实际高度与测试结果如表1。表1 液位实际高度与测试结果比较 (测试水温20)实际值0151015202530354245测量值00.63.26.510.715.621.927.533.541.946.1实际值505560657075

12、80859095100测量值52.759.065.873.378.383.888.994.098.1101.3104.7由上表中可知,测量结果是一条波动曲线, 在0cm、20cm处误差较小,为两线的交点,低误差为负,高端误差为正,90cm以后误差逐渐减小,预计在110cm处达到交点。经分段修正后,测量结果如表2。表2 修正后液位实际高度与测量结果比较(测试水温20)实际值0151015202530354545测量值015.210.414.819.524.730.135.039.644.6实际值50556065707580859095100测量值50.154.859.864.570.375.48

13、0.485.289.395.099.8由表2可知,经过修正后,误差小于0.5cm,分辨率为0.1cm。抽样检测不同水温的不同高度,误差都在1.0cm以内,符合设计要求。液位高度与电压变化曲线:第4章 元器件清单 元器件参数个数筒式液位传感器1电解电容160nF1电解电容174nF1NE55323电阻500K1电阻3K1电阻5.5K1电阻1K2电阻5001电阻478电阻5.1K374LS02274LS041数码管4ADC0809174LS3731NPN4PNP1MC14499174LS741二极管1电解电容0.015uF1MCS-51系列的80511附录一:系统总图附录二:程序清单-MC1449

14、99显示程序-MC14499XS: MOV P2.4,#0 ;将使能端清零,使能端低电平有效 MOV P2.3,#1 ;将时钟信号置1 MOV 30H,#8 ;将8位依次送入MC14499驱动芯片 MOV A,30HAA: ANL A,#01H ;使第一位数码管显示 MOV P2.2,A MOV 30H,A RR A DJNZ 20H,AA MOV P2.4,#1 MOV P2.3,#0 ACALL DELAY1 MOV P2.4,#0 ;将使能端清零,使能端低电平有效 MOV P2.3,#1 ;将时钟信号置1 MOV 30H,#8 ;将8位依次送入MC14499驱动芯片 MOV A,30HB

15、B: ANL A,#01H ;使第二位数码管显示 MOV P2.2,A MOV 30H,A RR A DJNZ 20H,BB MOV P2.4,#1 MOV P2.3,#0 ACALL DELAY1 MOV P2.4,#0 ;将使能端清零,使能端低电平有效 MOV P2.3,#1 ;将时钟信号置1 MOV 30H,#8 ;将8位依次送入MC14499驱动芯片MOV A,30HCC: ANL A,#01H ;使第三位数码管显示 MOV P2.2,A MOV 30H,A RR A DJNZ 20H,CC MOV P2.4,#1 MOV P2.3,#0 ACALL DELAY1 MOV P2.4,#

16、0 ;将使能端清零,使能端低电平有效 MOV P2.3,#1 ;将时钟信号置1 MOV 30H,#8 ;将8位依次送入MC14499驱动芯片 MOV A,30HDD: ANL A,#01H ;使第四位数码管显示 MOV P2.2,A MOV 30H,A RR A DJNZ 20H,DD MOV P2.4,#1 MOV P2.3,#0 ACALL DELAY1 RET-初始化程序- 晶振:12MHZ ; WATER EQU 32H ;设定的水位值 NUB_VAL EQU 34H ;加1、减1的暂存值 WATER_1 EQU 36H ;采集到的水位值 WATER_NUM EQU 30H ;ORG

17、0000H LJMP START ORG 0030HSTART: MOV SP,#60H ;设置堆栈值 MOV IE,#00H ;屏蔽所有的中断信号 MOV TCON,#00H ; MOV TMOD,#10H ;选用T0定时/计数器 SETB P2.1 ;关水泵电机 MOV R0,#20H MOV R1,#20H MOV A,#00HSTART_1: MOV R0,A INC R0 DJNZ R1,START_1START_2: CLR P2.1 ;开水泵电机 MOV WATER,#2.5H ;初始水位值设为2.5m -主程序- MAIN: ACALL DISPLAY MOV A,WATER_

18、NUM CJNE A,WATER,MAIN1 CLR CMAIN1: JC MIAN2 CLR P2.1 ;启动水泵 LJMP MAINMAIN2:CJNE A, WATER,MAIN3 CLR CMAIN3: JNC MAIN4SETB P2.1 ;关闭水泵 LJMP MAINMAIN4: CLR P2.1 ;水泵复位 LJMP MAIN-A/D转换程序- ORG 0000H LJMP A/D_ABCD ;转主程序 ORG 0003H ;中断服务程序入口地址 LJMP INT0F ;中断服务程序 ORG 0100HA/D_ABCD: MOV R0,#30H ;内部数据指针指向30H单元 MOV DPTR,#7FF8H ;指向P2.7口,且选通IN0(低三位地址为 000H) SETB IT0 ;设置外部中断0为下降沿出发 SETB EX0 ;开允许中断 SETB EA ;开总中断允许 MOVX DPTR,A ;启动A/D转换 LJMP $ ;等待转换结束中断-A/D中断服务程序-INT0F: MOVX A,DPTR ;取A/D转换结果 MOV R0,A ;存结果 CLR EX0 ;关中断允许RETI ;中断返回

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1