首页 新闻 工控搜 论坛 厂商论坛 产品 方案 厂商 人才 文摘 下载 展览
中华工控网首页
  P L C | 变频器与传动 | 传感器 | 现场检测仪表 | 工控软件 | 人机界面 | 运动控制
  D C S | 工业以太网 | 现场总线 | 显示调节仪表 | 数据采集 | 数传测控 | 工业安全
  电 源 | 嵌入式系统 | PC based | 机柜箱体壳体 | 低压电器 | 机器视觉
超声波工作原理编写程序的思路
济宁科强超声检测仪器有限公司
收藏本文     查看收藏

      从超声波的工作原理其实只要单片机的两个引脚就足够,一个引脚接发送端,一个引脚接接收端即可。工作时,发送端引脚置高电平10us时间的脉冲,这将激发超声波模块发送840khz周期的电平信号,然后模块的收端开始检测回波(实际上,两个眼睛,一个是发送的,一个是用来接收的)。一旦发现有回波信号,就会输出一个响应给接收端引脚,这个响应是一个高电平脉冲。所以,我们只要在接收端去检测是否有高电平脉冲即可。

      但从程序编写与调试的过程来看,并没有那么简单。因为超声波第一次发送40KHZ的信号出去后反射回来,有可能又被反弹回去,这样以来,相当于超声波在两个障碍物之间不断地来回反弹,导致接收端不断地收到回波信号“——实际上第一次反弹回来的才是回波信号,其他的都是二次、三次...的反弹回波信号。如果每次检测到回波就让蜂鸣器响一次,那么,我们程序运行时,可能会听到蜂鸣器不断地响,可能就是这个原因。

     另外,需要关注的是,超声波如果前面没有障碍物,也会在接收端引脚上故意输出140us的电平,以防止发射信号对回响信号的影响

     从上面的分析看来,不管超声波前面有无障碍物,接收端引脚肯定都会出现高电平脉冲。所以我们在编程时,必须过滤掉这140us

 

      讲完超声波的工作原理,我们来看下编写程序的思路。

      由于超声波可能会连续收到回响信号,导致接收端不断出现高电平脉冲,而实际上,我们有用的仅仅是第一次反射回来的回响信号,因此,使用查询接收端引脚是否出现高电平的方法行不通。可以使用外部中断,只检测第一次反射回来的信号,后续的反射信号全部丢弃不管。

     下面看下140us的处理。根据公式us/58 = 厘米,140us就是约2cm的距离。因此在超声波前2cm有障碍物,刚好也会返回140us的高电平,而超声波的测量范围是3-4.5,因此可以不考虑140us

     最后总结一下思路,发送端随便选一个引脚,这里选择P1.0,接收端使用外部中断0引脚P3.2。程序一开始,我们做定时器、中断的初始化,然后给发送端引脚一个高电平10us

接下来,我们不断查询接收引脚是否有高电平出现,一旦出现高电平,立即启动定时器。选择单片机的外部中断0为下跳沿中断,因此当高电平一过,立即进入中断,此时关掉定时器,就OK了。后面再发现接收引脚跳变也不要进中断。

 


 

状 态: 离线

公司简介
产品目录

公司名称: 济宁科强超声检测仪器有限公司
联 系 人: 于梦
电  话: 0537-2342188
传  真:
地  址: 山东济宁高新区
邮  编: 272000
主  页:
 
该厂商相关技术文摘:
超声波探伤AVG曲线
工控机软件抗干扰原理
超声波清洗器的空化作用原理详解
超声波清洗机的总体设计
超声波清洗机原理
超声波测厚仪使用技巧
超声波清洗器的空化作用原理详解
涂层测厚仪测厚技术详解
超声波清洗器常见故障与维修方法
更多文摘...
立即发送询问信息在线联系该技术文摘厂商:
用户名: 密码: 免费注册为中华工控网会员
请留下您的有效联系方式,以方便我们及时与您联络

关于我们 | 联系我们 | 广告服务 | 本站动态 | 友情链接 | 法律声明 | 不良信息举报
工控网客服热线:0755-86369299
版权所有 中华工控网 Copyright©2022 Gkong.com, All Rights Reserved