自动化与仪器仪表
ZIDONGHUAYUYIQIYIBIAO
2002年第5期(总第103期)
文章编号:1001—9227(2002}05—0051—03
利用超声波传感器测液位的方法
郏东耀
(郑州大学物理工程学院,450052)
摘要:介绍了一种高精度的超声波传感器,利用PICl6C63单片机的捕捉功能来计算超声波在液体中的传播时间,进而计算出超声波在液体中的传播距离来实现对液位的精确测量。该传感器测量精度高,性能稳定可靠。
关键词:智能传感器捕捉功能超声波测液位
ABSTRACT:Thesmartinstnnnentofultrasonicliquid—level—detectorisdescribedinthisarticle.Liq—uidlevel
can
bemeasuredpreciselybythiskindofinstrument.
instrument
Liquidleveldetector
Ultrasonicdetector
KEYWORDS:Smart
中图分类号:TP212.0文献标识码:B
通信,接收上位机的命令,并且把采集到的液位信息
0引言和温度信息传送给上位机。
液位测量仪器在气象部门和水利部门有着广泛的应用。液位的测量有很多种方法,其中超声波测量方法有很多其它方法不可比拟的优点:a)测量精度高;b)响应时间短可以方便的实现无滞后的实时测量;c)非接触测量,性能稳定可靠,对液体的物理化学性质的适应性极强(如:不怕酸碱等强腐蚀性液体等)。
超声波测量液位的基本原理是:由超声探头发出的超声脉冲信号,在液体中传播,遇到空气与液体的界面后被反射,接收到回波信号后能得到超声波传播时间。根据其传播速度和传播时间计算出其传播距离,得到液位高度。本系统利用PICl6C63单片机的捕捉功能实现对超声波信号进行准确的计时,从而实现了高精度的液位测量。
系统的硬件结构及功能
传感器与外部的接口如图l所示:
该智能传感器与外部共有四条接口信号线,它们分别是:地线GND、电源线+12V、两个RS232串口信号线TXD和RXD,同外部的接线简单方便。电源线提供内部电源,两个信号线可以同上位机进行
图2智能传感器的内部结构
TxDRXD
图1智能传感器与外部的接口
系统的内部结构:该系统由五部分构成,微处理单元(MCU)、超声波脉冲信号发生电路、回波信号采集电路、温度信号采集电路、串行通信单元,其结构如图2所示。
啦小
MAX202
5V
-t电平卜一
RC6/1XRC2/
RC7仃ⅨCCPl
PJCl6c63
I
西司型
l
RB3RB7
l采集I-1
DSl820
,一cND田一
茴甘
1.1微处理单元(MCU)
该系统采用了Microchip公司生产的PICl6C63单片机,其功能为:超声脉冲信号的产生与接收、对接收到的信号进行处理、与单线数字温度传感器DSl820接口、采集环境温度、通过串行接口与上位机通信。
PICl6C63单片机特性简介:PICl6C63单片机有很多其它单片机所无法比拟的优点:首先,它采用哈佛双总线结构,数据与指令的传输总线完全分开,能够同时对程序和数据进行访问,提高了数据的吞吐量。其次,它采用二级流水线结构,在执行上一条指令的同时能够对下一条指令取指,实现了指令的单周期执行。然后,采用类精简的指令集(RISCI_JKE),使得编程简单而又灵活。最后,内嵌了丰富的特殊功能部件,如POR部件、WDT、CCP等【1]。1.2超声波脉冲信号发生电路
该部分主要由微分电路和驱动电路组成。CPU发出的脉冲信号经过微分电路之后变成一标准的脉冲信号,然后通过可控硅去控制600V的高压,形成高压脉冲。再由该信号去驱动超声探头,把电能换成机械能,形成超声波。1.3超声波脉冲信号处理电路
该电路不但能采集到回波信号,而且也能采集到发射脉冲信号。电路主要由限幅电路和比较电路以及单稳态触发电路组成。采集到的超声探头的脉冲信号是一个高达600V的电压信号,经过限幅电路之后,信号幅值被限制在一5V一5V之间,经过比较电路之后形成一个脉冲信号,由该脉冲信号去触发单稳态触发电路74I_5121,从而形成一个窄脉冲信号。该信号去触发PICl6C63的RC/CCPl引脚,形成捕捉事件,产生捕捉中断。1.4温度采集电路
由于超声波在液体中的传播速度受温度的影响,精确的测量需要做温度补偿。这里我们用数字温度计DSl820来采集温度信号,用该信号对最终液位进行温度校正。DSl820是美国DALAS公司推出的单线串行数字温度计,测量范围为一50~+125℃,精度为0.5。C。它外形与三极管相同。DSl820遵循严格的单线串行通信协议,每一个DSl820在出厂时都用激光进行了调校,并具有唯一的64位序列号。它工作时不需专门的电源,电源可以通过数据总线供给。也就是说只要两根线,一条是数据线,一条是地线。在本系统中采用的是接口
52
方法如图2中所示,DSl820的三个引脚分别接电源
V蜘数字地GND,I/O引脚和PID的RB3相连接。
1.5串行通信电路
该部分主要功能是把采集到的有效的液位信号和温度信号以及设备故障信号传送给上位机,并且接收外部上位机发送的命令。在计算机测控系统中,数据通信主要采用异步串行通信方式。PIcl6C63除了有两个同步串行口外,其RC6和RC7两个引脚可作为串行通信接口SCI,它可以被定义为以下三种工作方式:全双工异步方式、半双工同步主控方式、半双工同步从动方式【lJ。在这里我们利
用MAXIM公司的芯片MAIM202将SCl的吼电平
转为RS232电平。舰摄IM202无须外接12V电源,
只需单5V电源,因此使用方便而且性能可靠。接EI电路如图112]。2系统的软件实现2.1脉冲捕捉
用Microchip公司提供的PICl6C63单片机的捕捉功能(CCP)来完成计时,使用起来方便、简单,而且计时的精度也更高。PICl6C63的定时周期(等于机器周期)是晶振频率的四分频,而AT89C52单片机的定时周期是晶振的12分频,对于同样的晶振时钟用前者就能达到更高的计时精度。
CCP(capture/compare/pwm)部件是PIC16C63单片机中很重要的一个外围部件,在本系统中用它可方便的实现超声波脉冲的时间间隔定时。PICl6C63单片机有两个功能相同的CCP部件,选择其中的一个部件CCPl通过控制寄存器使其工作在capture方式下,一旦RC2/CCPl引脚上有触发事件发生时,16位的寄存器CCPRl立即捕捉记录下这时的定时器TMRl寄存器中的值。这里的触发事件,通过控制寄存器CPlCON的耽。D0来选择以下四种当中的一种:单脉冲下降沿触发、单脉冲上升沿触发、每四个脉冲上升沿触发、每16个脉冲的下降沿触发。这里我们用的是单脉冲的下降沿触发方式。当PICl6C63的引脚出现发射脉冲和接收脉冲的下降沿时,PICl6C63都会自动捕捉计时器中的内容,并且产生一个捕捉中断。两计数值的差即为超声波传输时间的2倍。2.2中断服务子程序
如图3所示,在中断服务子程序中根据MKl的
状态来判断是发射脉冲还是接收脉冲。如果MKl=o,脉冲为发射脉冲,将捕捉到的CCPRl中的内容送住发送缓冲区SEND然后修改MKl=1;如果是MKl=1,脉冲为接收脉冲,将捕捉到的CCPRl中的内容送往接收缓冲区RECIVE中,然后修改MKl=0,并设标志IVIK2=1。
图3捕捉中断服务子程序
图4主程序中超声脉冲处理流程
X
2.3系统主程序处理
如图4所示,在主程序中进行超声波发射控制,发射前置MKl=0、MK2=0,在1ms内根据中断服务子程序中提供的标志MK2的值判断此次发射是否接收到有效回波信号(MK2=1代表是)。每一秒钟内最多发送200个脉冲,最少收到18个有效回波脉冲信号,如果已经收到了18个回波脉冲信号,就停止发送(置MK3=0代表发射接收系统正常)。如果发送了200次还没有收到18次有效回波信号,就认为是发射接收系统异常(置MK3=1)。
对接收到的18个有效数据进行处理,这里我们采用的是中位值滤波法,即先对18个数据进行排序,然后取中间的10个作为有用数据,对这10个数据求算术平均得到一个最终结果。
根据MK3标志,可知发射接收系统的工作状
态。
这段时间中,如果被测液体是水,则L=V
t=lms
×1480m/s=1.48m,最大所测液体的深度位740mm。这个远远超出了我们所需测量的液体的最大深度200mm的要求。
该系统的最小时间分辨率是一个机器周期即T=0.2tss,所测液位的最小分辨率为L=T×V=0,
2ps×1480m/s/2=0.148ram
4小结
该超声波智能液位传感器电路设计简明可靠,测量精度高,程序设计中采用了看门狗措施(PICl6内置WDT)、容错措施(200次发射中只需18次有效回波及中位值法数字滤波)以及自检措施等,使系统具有较高的可靠性和智能性。目前该传感器已在郑州市气象局等部门得到很好的应用,实际运行情况表明,该系统运行稳定可靠,精度很高,使用方便。
参考文献
1窦振中.PIC系列单片机原理和应用.北京:北京航空航天
大学出版社,1998
3测量范围与测量精度分析
在这个系统中单片机的晶振频率为20MHz,经过四分频后,机器周期是T=0.2tts,而我们每次发射完脉冲后如果没有收到回波信号就等待lms,在
2赵元黎,杨雷等.微机接口技术及应用.郑州:河南水利出
版社,1998
和扣和和和和和和和扣和和}扣扣和和}扣和和扣扣和扣和和和和和和和和扣和扣扣扣■扣和扣和扣和和
(上接第15页)
硬、软件进行灵活配置,真正实现计算机数控系统的开放性。相信随着数字化和网络时代的到来,该系统的应用会越来越普及。
1
参考文献
PROFIBUSSpecification,OrderNo.0.032
2阳宪惠.现场总线技术及其应用.北京:清华大学出版社,
l钙19.6
利用超声波传感器测液位的方法
作者:作者单位:刊名:英文刊名:年,卷(期):引用次数:
郏东耀
郑州大学物理工程学院,450052自动化与仪器仪表
AUTOMATION & INSTRUMENTATION2002,(5)4次
参考文献(2条)
1.窦振中 PIC系列单片机原理和应用 19982.赵元黎.杨雷 微机接口技术及应用 1998
相似文献(1条)
1.期刊论文 杨雷.孙广彬.郑国恒.赵红梅 一种基于PIC16C63的高精度智能液位传感器 -仪器仪表学报2003,24(4)
介绍了一种高精度的智能液位传感器,其工作原理为:在超声探头(型号为5P14)上施加一负电压脉冲信号,探头发出脉冲超声波,当遇到不同介质界面的时候超声波被反射,回波信号被超声探头接收,转换成脉冲电压信号.利用PIC16C63单片机的捕捉功能来计算超声波回波与发射波之间的时间,进而计算出超声波在液体中传播的距离,实现对液位的精确测量.该传感器测量精度高,性能稳定可靠.
引证文献(4条)
1.张峰.贺西平.李斌 超声液位检测频率选择的理论计算和实验研究[期刊论文]-应用声学 2009(2)2.刘永富 基于超声与CPLD的高精度位移检测[学位论文]硕士 2006
3.赵刚.唐得刚 几种常用的液位在线检测方法的比较[期刊论文]-中国仪器仪表 2005(05)4.何奇.唐得刚 浅析油罐液位检测的几种方法[期刊论文]-计量与测试技术 2005(02)
本文链接:http://d.g.wanfangdata.com.cn/Periodical_zdhyyqyb200205018.aspx
下载时间:2010年5月5日
自动化与仪器仪表
ZIDONGHUAYUYIQIYIBIAO
2002年第5期(总第103期)
文章编号:1001—9227(2002}05—0051—03
利用超声波传感器测液位的方法
郏东耀
(郑州大学物理工程学院,450052)
摘要:介绍了一种高精度的超声波传感器,利用PICl6C63单片机的捕捉功能来计算超声波在液体中的传播时间,进而计算出超声波在液体中的传播距离来实现对液位的精确测量。该传感器测量精度高,性能稳定可靠。
关键词:智能传感器捕捉功能超声波测液位
ABSTRACT:Thesmartinstnnnentofultrasonicliquid—level—detectorisdescribedinthisarticle.Liq—uidlevel
can
bemeasuredpreciselybythiskindofinstrument.
instrument
Liquidleveldetector
Ultrasonicdetector
KEYWORDS:Smart
中图分类号:TP212.0文献标识码:B
通信,接收上位机的命令,并且把采集到的液位信息
0引言和温度信息传送给上位机。
液位测量仪器在气象部门和水利部门有着广泛的应用。液位的测量有很多种方法,其中超声波测量方法有很多其它方法不可比拟的优点:a)测量精度高;b)响应时间短可以方便的实现无滞后的实时测量;c)非接触测量,性能稳定可靠,对液体的物理化学性质的适应性极强(如:不怕酸碱等强腐蚀性液体等)。
超声波测量液位的基本原理是:由超声探头发出的超声脉冲信号,在液体中传播,遇到空气与液体的界面后被反射,接收到回波信号后能得到超声波传播时间。根据其传播速度和传播时间计算出其传播距离,得到液位高度。本系统利用PICl6C63单片机的捕捉功能实现对超声波信号进行准确的计时,从而实现了高精度的液位测量。
系统的硬件结构及功能
传感器与外部的接口如图l所示:
该智能传感器与外部共有四条接口信号线,它们分别是:地线GND、电源线+12V、两个RS232串口信号线TXD和RXD,同外部的接线简单方便。电源线提供内部电源,两个信号线可以同上位机进行
图2智能传感器的内部结构
TxDRXD
图1智能传感器与外部的接口
系统的内部结构:该系统由五部分构成,微处理单元(MCU)、超声波脉冲信号发生电路、回波信号采集电路、温度信号采集电路、串行通信单元,其结构如图2所示。
啦小
MAX202
5V
-t电平卜一
RC6/1XRC2/
RC7仃ⅨCCPl
PJCl6c63
I
西司型
l
RB3RB7
l采集I-1
DSl820
,一cND田一
茴甘
1.1微处理单元(MCU)
该系统采用了Microchip公司生产的PICl6C63单片机,其功能为:超声脉冲信号的产生与接收、对接收到的信号进行处理、与单线数字温度传感器DSl820接口、采集环境温度、通过串行接口与上位机通信。
PICl6C63单片机特性简介:PICl6C63单片机有很多其它单片机所无法比拟的优点:首先,它采用哈佛双总线结构,数据与指令的传输总线完全分开,能够同时对程序和数据进行访问,提高了数据的吞吐量。其次,它采用二级流水线结构,在执行上一条指令的同时能够对下一条指令取指,实现了指令的单周期执行。然后,采用类精简的指令集(RISCI_JKE),使得编程简单而又灵活。最后,内嵌了丰富的特殊功能部件,如POR部件、WDT、CCP等【1]。1.2超声波脉冲信号发生电路
该部分主要由微分电路和驱动电路组成。CPU发出的脉冲信号经过微分电路之后变成一标准的脉冲信号,然后通过可控硅去控制600V的高压,形成高压脉冲。再由该信号去驱动超声探头,把电能换成机械能,形成超声波。1.3超声波脉冲信号处理电路
该电路不但能采集到回波信号,而且也能采集到发射脉冲信号。电路主要由限幅电路和比较电路以及单稳态触发电路组成。采集到的超声探头的脉冲信号是一个高达600V的电压信号,经过限幅电路之后,信号幅值被限制在一5V一5V之间,经过比较电路之后形成一个脉冲信号,由该脉冲信号去触发单稳态触发电路74I_5121,从而形成一个窄脉冲信号。该信号去触发PICl6C63的RC/CCPl引脚,形成捕捉事件,产生捕捉中断。1.4温度采集电路
由于超声波在液体中的传播速度受温度的影响,精确的测量需要做温度补偿。这里我们用数字温度计DSl820来采集温度信号,用该信号对最终液位进行温度校正。DSl820是美国DALAS公司推出的单线串行数字温度计,测量范围为一50~+125℃,精度为0.5。C。它外形与三极管相同。DSl820遵循严格的单线串行通信协议,每一个DSl820在出厂时都用激光进行了调校,并具有唯一的64位序列号。它工作时不需专门的电源,电源可以通过数据总线供给。也就是说只要两根线,一条是数据线,一条是地线。在本系统中采用的是接口
52
方法如图2中所示,DSl820的三个引脚分别接电源
V蜘数字地GND,I/O引脚和PID的RB3相连接。
1.5串行通信电路
该部分主要功能是把采集到的有效的液位信号和温度信号以及设备故障信号传送给上位机,并且接收外部上位机发送的命令。在计算机测控系统中,数据通信主要采用异步串行通信方式。PIcl6C63除了有两个同步串行口外,其RC6和RC7两个引脚可作为串行通信接口SCI,它可以被定义为以下三种工作方式:全双工异步方式、半双工同步主控方式、半双工同步从动方式【lJ。在这里我们利
用MAXIM公司的芯片MAIM202将SCl的吼电平
转为RS232电平。舰摄IM202无须外接12V电源,
只需单5V电源,因此使用方便而且性能可靠。接EI电路如图112]。2系统的软件实现2.1脉冲捕捉
用Microchip公司提供的PICl6C63单片机的捕捉功能(CCP)来完成计时,使用起来方便、简单,而且计时的精度也更高。PICl6C63的定时周期(等于机器周期)是晶振频率的四分频,而AT89C52单片机的定时周期是晶振的12分频,对于同样的晶振时钟用前者就能达到更高的计时精度。
CCP(capture/compare/pwm)部件是PIC16C63单片机中很重要的一个外围部件,在本系统中用它可方便的实现超声波脉冲的时间间隔定时。PICl6C63单片机有两个功能相同的CCP部件,选择其中的一个部件CCPl通过控制寄存器使其工作在capture方式下,一旦RC2/CCPl引脚上有触发事件发生时,16位的寄存器CCPRl立即捕捉记录下这时的定时器TMRl寄存器中的值。这里的触发事件,通过控制寄存器CPlCON的耽。D0来选择以下四种当中的一种:单脉冲下降沿触发、单脉冲上升沿触发、每四个脉冲上升沿触发、每16个脉冲的下降沿触发。这里我们用的是单脉冲的下降沿触发方式。当PICl6C63的引脚出现发射脉冲和接收脉冲的下降沿时,PICl6C63都会自动捕捉计时器中的内容,并且产生一个捕捉中断。两计数值的差即为超声波传输时间的2倍。2.2中断服务子程序
如图3所示,在中断服务子程序中根据MKl的
状态来判断是发射脉冲还是接收脉冲。如果MKl=o,脉冲为发射脉冲,将捕捉到的CCPRl中的内容送住发送缓冲区SEND然后修改MKl=1;如果是MKl=1,脉冲为接收脉冲,将捕捉到的CCPRl中的内容送往接收缓冲区RECIVE中,然后修改MKl=0,并设标志IVIK2=1。
图3捕捉中断服务子程序
图4主程序中超声脉冲处理流程
X
2.3系统主程序处理
如图4所示,在主程序中进行超声波发射控制,发射前置MKl=0、MK2=0,在1ms内根据中断服务子程序中提供的标志MK2的值判断此次发射是否接收到有效回波信号(MK2=1代表是)。每一秒钟内最多发送200个脉冲,最少收到18个有效回波脉冲信号,如果已经收到了18个回波脉冲信号,就停止发送(置MK3=0代表发射接收系统正常)。如果发送了200次还没有收到18次有效回波信号,就认为是发射接收系统异常(置MK3=1)。
对接收到的18个有效数据进行处理,这里我们采用的是中位值滤波法,即先对18个数据进行排序,然后取中间的10个作为有用数据,对这10个数据求算术平均得到一个最终结果。
根据MK3标志,可知发射接收系统的工作状
态。
这段时间中,如果被测液体是水,则L=V
t=lms
×1480m/s=1.48m,最大所测液体的深度位740mm。这个远远超出了我们所需测量的液体的最大深度200mm的要求。
该系统的最小时间分辨率是一个机器周期即T=0.2tss,所测液位的最小分辨率为L=T×V=0,
2ps×1480m/s/2=0.148ram
4小结
该超声波智能液位传感器电路设计简明可靠,测量精度高,程序设计中采用了看门狗措施(PICl6内置WDT)、容错措施(200次发射中只需18次有效回波及中位值法数字滤波)以及自检措施等,使系统具有较高的可靠性和智能性。目前该传感器已在郑州市气象局等部门得到很好的应用,实际运行情况表明,该系统运行稳定可靠,精度很高,使用方便。
参考文献
1窦振中.PIC系列单片机原理和应用.北京:北京航空航天
大学出版社,1998
3测量范围与测量精度分析
在这个系统中单片机的晶振频率为20MHz,经过四分频后,机器周期是T=0.2tts,而我们每次发射完脉冲后如果没有收到回波信号就等待lms,在
2赵元黎,杨雷等.微机接口技术及应用.郑州:河南水利出
版社,1998
和扣和和和和和和和扣和和}扣扣和和}扣和和扣扣和扣和和和和和和和和扣和扣扣扣■扣和扣和扣和和
(上接第15页)
硬、软件进行灵活配置,真正实现计算机数控系统的开放性。相信随着数字化和网络时代的到来,该系统的应用会越来越普及。
1
参考文献
PROFIBUSSpecification,OrderNo.0.032
2阳宪惠.现场总线技术及其应用.北京:清华大学出版社,
l钙19.6
利用超声波传感器测液位的方法
作者:作者单位:刊名:英文刊名:年,卷(期):引用次数:
郏东耀
郑州大学物理工程学院,450052自动化与仪器仪表
AUTOMATION & INSTRUMENTATION2002,(5)4次
参考文献(2条)
1.窦振中 PIC系列单片机原理和应用 19982.赵元黎.杨雷 微机接口技术及应用 1998
相似文献(1条)
1.期刊论文 杨雷.孙广彬.郑国恒.赵红梅 一种基于PIC16C63的高精度智能液位传感器 -仪器仪表学报2003,24(4)
介绍了一种高精度的智能液位传感器,其工作原理为:在超声探头(型号为5P14)上施加一负电压脉冲信号,探头发出脉冲超声波,当遇到不同介质界面的时候超声波被反射,回波信号被超声探头接收,转换成脉冲电压信号.利用PIC16C63单片机的捕捉功能来计算超声波回波与发射波之间的时间,进而计算出超声波在液体中传播的距离,实现对液位的精确测量.该传感器测量精度高,性能稳定可靠.
引证文献(4条)
1.张峰.贺西平.李斌 超声液位检测频率选择的理论计算和实验研究[期刊论文]-应用声学 2009(2)2.刘永富 基于超声与CPLD的高精度位移检测[学位论文]硕士 2006
3.赵刚.唐得刚 几种常用的液位在线检测方法的比较[期刊论文]-中国仪器仪表 2005(05)4.何奇.唐得刚 浅析油罐液位检测的几种方法[期刊论文]-计量与测试技术 2005(02)
本文链接:http://d.g.wanfangdata.com.cn/Periodical_zdhyyqyb200205018.aspx
下载时间:2010年5月5日