基于单片机的液位测量系统
工作频率:压电晶片的共振频率,波长越长,频率越小,检测距离越大但是精度会降低。
灵敏度:输出功率越高,灵敏度高。
波束角:以传感器中轴线延长线为轴,能量强度减少一半(-3dB)处,这个角度被称为波束角。可以理解为超声波的指向性。该数值越大,容易测到周围物体
盲区:超声波无法检测到的距离值
超声波传感器的种类有很多,根据不同分类方法有以下几类:以使用方法可分为收发一体型、收发分体型(收发各一只);以据结构可分为开放型、防水型、高频型等;以使用环境可分为空气中和水声、固体换能器;
测量原理:
声音在空气中的速度已知,并随温度变化而变化,温度与声速的关系:V=331.3+0.607°C, 超声波传播时间由模块获得,距离就可知。高度h可由h=H-S求得
因为之前做过超声波测量的课程设计,用的是分立元件搭起来的电路,可分为3各部分:第一个为超声波发射电路,用555电路产生的40KHz的方波并上RC非门产生4Hz的方波,产生的波形如下(即模块的多少秒脉冲信号)第二部分为接收电路,将收到的信号进行放大、比较在经触发(器)电路得到返回时间波形。第三部分是功率驱动电路。详细的波形如下图2
当时对模电内容真的不是很了解,对原件的选型都不清楚的,所以大家都会用同一种电路,减少工作量嘛,当时放大器选的op37,op07应该能用,这个要两级放大。这个调试的过程就不详细说了,有点曲折,也是因为不太理解模拟的东西。测出来的有1m多吧,但是要求只看你的波形,不要求精度,所以就完成了。当然自己设计的模拟类的东西是效果肯定是没有人家研究出来模块的好,这是肯定的可能当时也就为了完成这个任务而已。也因为之前做过,比较熟悉,所以才选这个课题,,当然上面的不是毕设的作品,只是简单的课程设计,介绍只是为了让大家先了解了解电路,直接用模块就不是涉及这些了。
回归到正题
超声波模块用的是KS103这款,测量范围大,可选择多种量程测量和多种测量指令可返回时间和距离,模块内含有温度传感器,可进行温度补偿,补偿后精度最高可达到毫米级,系统稳定。使用也比较方便,该模块由两种接口IIC、TTL串口,可通过硬件连接选择。
最简单的是串口模式,串口发送16进制的指令,串口中断要判断高电位且接受完数据后要清除接收寄存器,不然容易造成接收错误,这个就是核心,简单但是容易出错。当然建议先用USB—TTL连接器电脑,用串口助手先调试,弄清楚数据类型,指令发送,最后应用在单片机上。STM32串口发送还是有个小问题,这是我后来才发现的,但不影响该作品的功能,在下个帖子我会涉及到。
显示屏用的是0.91寸OLED屏,屏幕小,IIC接口,就4pin线。
wifi传输数据用的是ESP8266这个模块,把它配置成路由器模式与单片机连接,将数据通过WIFI发送至移动终端。也是先连接到电脑。用串口助手进行AT指令调试。
单片机我用的是stm32F103ZET6,其实用小的芯片就够了比如说48pin的RCT6之类的,双串口就行了。但串口也可以,超声波模块就要改用IIC。
硬件部分就是这样,在作品中软件加入了按键选择测量模式的功能,可选择发送不同的测试指令。
成品:
毕设做的不是做的太好,也很丑,总体的测距功能是能实现的精度也够,这个不一定用来测液面的,正常测距就可以,液面低的时候会测不准。备注下:不同物体对超声波的反射吸收不一样,会有一定的误差。
一种基于单片机的液位控制器设计
吴兴中,屈泽明 (湖南湘潭钢铁集团有限公司,湖南 湘潭 411101)
随着控制技术越来越成熟,芯片运行愈来愈稳定,目前越来越多的各种控制器被应用于工矿企业,用于替代过去的人工操作和控制,并取得了巨大的效益和超越人工控制的令人满意的效果。
湖南湘潭钢铁集团公司五米宽厚板厂水处理车间许多电缆、管道铺设在管廊沟内,由于管廊沟内四壁渗水、水管老化而产生漏水,存在淹没管道和电缆的风险,由此可能造成管道腐蚀或电缆短路“放炮”的重大事故。故原设计时在管廊沟的积水坑内都安装了潜水泵控制器,它通过在水中放置3个电极监测积水坑液位的高水位和低水位,实现高水位自动启动潜水泵运行,低水位时自动停止潜水泵运行。此控制器只能指示高、低两个液位,不能显示液位实际值。目前由于潜水泵控制器投运时间较长,元件老化严重,90%的控制器已经出现电路板元件烧毁不能使用的现象。为了保证管廊沟内积水不淹没管道和电缆,湖南湘潭钢铁集团公司五米宽厚板厂水处理车间员工需要每天3次去管廊沟内点检。如果发现有积水,则需要人工启动潜水泵把水排出管廊沟外,水位低时手动关闭潜水泵,防止潜水泵因无水发热而烧毁潜水泵电机。
基于此,本文设计了一种基于单片机的超声波液位控制器,实现了液位实时监测、潜水泵无人操作自动运行等功能。
原潜水泵控制器通过在水中放置3个电极监测积水坑液位的高水位和低水位,实现高水位自动启动潜水泵,低水位时自动停止潜水泵,此控制器存在如下缺陷。
(1)只能指示液位高低,不能显示液位实际值,由于不知道液位实际值,给在管廊沟内检修作业带来不便。
(2)水中放置的3个电极由于产生电解反应,造成电极腐蚀快或结垢严重,需要定期更换电极。
(3)原控制器成本较高,需要2 500元左右,且维护成本较高。
基于上述情况,设计了基于单片机的超声波液位控制器。此控制器具有实时监测实际液位的功能,由于不直接与水接触,故传感器使用寿命长,控制器具有维护简单、成本低廉的特点。
本系统原理结构图如图1所示,系统主要由单片机、通信接口电路、LED显示电路、键盘电路、超声波模块及控制信号电路组成。
选取 AT89S52单片机作为控制核心, AT89S52单片机是一种低功耗、高性能 CMOS 8位微控制器。它具有以下资源:8KB Flash,256 B RAM,32位I/O端口,2个数据指针,3个16位定时器/ 计数器, 1个6向量2级中断结构,全双工串行口, 片内晶振及时钟电路等[1]。
HCSR04是深圳市捷深科技有限公司的一款超声波测距模块,它有4个管脚,分别是+5 V Vcc,电源地Gnd,控制端Trig,接收端Echo。HCSR04模块如图2所示。其基本工作原理是:给控制端Trig提供一个10 μS 以上脉冲触发信号,模块将发出 8个40 kHz周期波并检测回波,一旦检测到有回波信号则输出回响信号Echo;回响信号Echo的脉冲宽度与所测的距离成正比[2];由此通过发射信号到收到的回响信号时间间隔计算得到距离,距离=高电平时间×声速/2。
键盘电路由数字增加键、数字减少键、确认键、测试键4个键组成,键盘电路采用矩阵式键盘电路设计,4个键占用4个I/O资源。
LED显示电路由4位共阴极LED数码管组成,采用动态扫描方式。利用达林顿集成芯片ULN2008驱动LED数码管以及继电器,这样设计既简化了电路,也使电路板更紧凑、简约。数码管用来显示实际液位以及设定的高低液位值。通过程序控制继电器通、断,实现对潜水泵的启停控制。
通信接口电路采用芯片MAX485,它符合RS485协议,通过它实现了TTL电平转换为RS485电平[1,3]。
工作原理分析:控制器以AT89S52单片机为控制核心,通过单片机I/O端口触发超声波测距模块HCSR04发出40 kHz的超声波信号。利用单片机I/O端口监测HCSR04模块回响信号,一旦回响信号由低电平变为高电平时,启动单片机定时器,开始计时。当回响信号由高电平变为低电平时,停止计时,读出回响信号为高电平的时间。根据HCSR04模块距离计算公式,计算出传感器与液位的实际距离LH。实际液位LACT =LSET-LH,其中LSET为量程,LH为传感器与液位的实际距离。根据实际情况设定高、低液位值,逻辑判断控制继电器的通、断,即潜水泵启、停控制信号。利用LED数码管对实际液位LACT进行显示,实现对实际液位的在线监控。通过RS485接口电路实现远程操作和监控。另外,控制器可以通过键盘电路对高、低液位值进行参数设置操作。为了保证在控制器出现程序“飞跑”的情况下能自动使控制器复位重启,设计了看门狗电路。
1.2液位控制器的程序设计
控制器程序采用模块化结构设计,主要包括主程序模块、键盘程序模块、显示程序模块及通信程序模块等。
在主程序模块中完成定时器的初始化、中断初始化以及测量实际液位等功能,主程序功能如图3所示。
键盘程序模块包括键盘识别部分、参数显示部分以及4个键的处理部分,设计时采用外部中断程序来满足键盘对及时响应的要求。
显示程序采用动态扫描方式实现LED数码管对数据的显示,通过定时中断来保证数码管扫描时间间隔一致,使数码管显示稳定、不闪烁。
通信程序用于液位控制器与PC通信,实现液位控制器与PC数据交换,便于远程操作与监控。
2实验与结果
通过实验板对液位控制器进行了测距精度、显示效果、通信等方面的测试。
实验表明模块的盲区为2 cm,探测距离范围为2~450 cm,控制器有较高的精度,能够满足现场的控制要求。
LED数码管显示稳定、鲜艳 、清晰,非常适合用在光线暗淡的环境。
通过RS485总线与PC连接通信,实现了液位控制器与上位机PC远程通信。利用液位控制器与PC通信界面可对高、低液位进行设定,并可监控液位的实际值,通信界面如图4所示。
参考文献
[1] 吴兴中,朱松林,彭新良.利用单片机实现对云台的控制[J].四川兵工学报,2011,32(3):71-73.
[2] 深圳市捷深科技有限公司.HCSR04超声波测距模块说明书[Z].20110227.
[3] 吴兴中,欧青立.一种PC与单片机多机 RS232串口通信设计[J].国外电子测量技术,2009,28(1):7476.
相关问答
求 单片机 水位监测系统程序,要求如下 - 懂得LJMPQ0032HORG0032HQ0032H:JBP1。0,QA;如果开关1接通转灯2亮则水位过高CLRP1。3SJMPQBQA:SETBP1。3;水位过高灯2亮CLRP1。4;水位LJMP...
原理是 单片机 IO口引出一条线,GND引出一条线,两根线放在水...[回答]直接检测肯定不行,单片机I/O口的结构你看一下就知道了,如果想要这办法检测必须通过外部转换电路,也就是检测水的电阻转换电路就可以了,而水的电阻一...
...线直接接51 单片机 的I/O口吗?另外它的水位 测量 是电_汽配人问答[最佳回答]一个热敏电阻,测量水温;一个可变电阻,电阻值根据水位变化而变化。用万用表打一下就能找出来。至于你要怎么控制,那就把这两个电阻连接到你的电路中...
智能马桶水位传感器原理-ZOL问答进行电容测量,并将得到的信号转换为数字信号,再通过处理单元计算出当前的液位高...线路通知单片机系统分析,是关闭还是打开进水。如有故障,需重新购买安装,维护...
超声波 液位 计和雷达 液位 计的区别有哪些?我是电子及工控技术,我来回答这个问题。超声波液位计和雷达液位计在水利部门运用的十分广泛,这两种设备主要是对江河湖泊等的水位进行测量的一种监测仪器。虽然...
关于一个串级控制的问题请求解答!-盖德问答-化工人互助问答社区就几个点用普通表吧。造价可能要低点首先单片机是无法实现的,它需要pid的机器语言编程,这很难实现。还有就是单片机的处理速度与响应时间也无法达...
诸位大侠!可不可以告诉我!!长沙哪里有超声波 液位计 报价,超...[回答]做成外贴式超声波液位计,在被测量的罐子底部会有一定盲区,大约在20厘米。还有罐子的内部液体要是单一纯净的。如果有沉淀,贴在罐子底部的超声波液位...
降落数值测定仪的技术参数是?你好,杭州大吉光电降落值测定仪的技术参数:1、水浴装置:由整体加热单元,冷却系统和水位指示器组成2、显示器:数显样品降落数值及报错提示功能...你好,杭州...
全自动洗车机水位传感器通用吗?水位传感器分两插脚和三插脚,两脚和两脚的基本通用,三脚和三脚的基本通用,不用自己再调节。传感器是信号感知部件不涉及功率驱动问题,其输出是要与主控单片机...
数显温度控制仪的原理和结构?概论:随着数字技术和微电脑技术的不断发展,数显表、以单片机为核心的新型显示与记录仪表越来越广泛地应用到工业自动化和工控领域中。数显表与指针表一样,...