烽火社区

标题: 超声波测距规避障碍物的问题,求点一下思路 [打印本页]

作者: 毕兵    时间: 2015-10-26 09:55 AM
标题: 超声波测距规避障碍物的问题,求点一下思路

[attach]31664[/attach]

如图,我使用的是HC-SR04模块   基本使用方法我已经掌握了

现在如图有一个障碍物,不是直接档在前面,而是只档一半

有一半的超声波可以饶过去,另一半会直接被障碍物反弹


但是实际上HC-SR04受到第一次从障碍物反弹的超声波就开始进行回响输出了!


我想让他晚一点再输出,晚一点等到真正待测物的回声返回再输出回响

但是怎么才能实现呢?



作者: 汉淮南王    时间: 2015-10-26 09:55 AM

哦,也就是说你要实现的功能就是超声波测距,还要能够自动屏蔽掉障碍物,那就可以用3个模块,不过在软件部分应该完善一点,直接取测量的最大值不太好,因为在没有障碍物的时候,肯定取垂直测量的那个模块的值更准确一点;

可以根据3个模块的测量值来判断是否有障碍物,建议两边模块与中间模块的角度相等,取测量值后,用数学方法求垂直距离;直接取最大值感觉不准确。但是,如果测量距离较远的话,那就可以忽略直接取最大值的误差了。


作者: xmzhou    时间: 2015-10-26 10:06 AM

这个是模块HC-SR04的工作原理决定的,除非你能改写这个模块的里面的程序。

或者,自己单独买两个超声波传感器(不是模块),自己搭电路,写程序,这样你就能拿到两个传感器的数据了。


作者: jdcg    时间: 2015-10-26 10:32 AM

HC-SR04里面的ECHO端口是一旦接受到超声波,就放出高电平

说明上是写    “高电平持续的时间就是超声波从发射到返回的时间”


我查了一下资料,是因为

收到出发信号的时候,模块已经记录了触发时候的时间,当收到回波时候马上输出回响信号,宽度就是发出脉冲的时间与收到回响信号的时间差.


说明HC-SR04内部是有时钟功能的?否则这个模块是怎么知道返回的时间呢


作者: yunxixi    时间: 2015-10-26 11:18 AM
提示: 作者被禁止或删除 内容自动屏蔽
作者: zhjb1    时间: 2015-10-26 12:22 PM
你说的很对
作者: 巴山小游侠    时间: 2015-10-26 02:04 PM
你这种方式无法定位障碍物的准确方向,是无法壁障的。除非在运动状态下,比如上面说的加个舵机,或者直接小车动。。再或者换传感器吧
作者: 757371456    时间: 2015-10-26 04:32 PM
接收信号的方式就决定了啊。。
作者: 想飞的咕咕    时间: 2015-10-26 06:27 PM
买三个超声波模块,分别123工作一次怎么样呢?
作者: boentaz    时间: 2015-10-26 10:41 PM
也行,跟加个舵机一样的工作原理,避障小车方案很多,红外避障模块也可以,看你自己选择了
作者: kkalizee    时间: 2015-10-27 12:54 AM
HC-SR04内部就是设置等待接受第一个回声,我好像不能改变
作者: 回复用户4    时间: 2015-10-27 12:56 AM

我项目不是做小车,就是做超声波测距,但是很多附加要求,我基本都搞定了,就差这个“回避障碍物”,实在想不通

要不我用3个HC-SR04分别测一次取最大值?


作者: 从今天开始!    时间: 2015-10-27 11:31 AM
如果仅仅只是要回避障碍物可以这样实现,但是要想较精确测量距离,就比较不准了,因为这样测得就不是与待测物的垂直距离了;要不你把项目要求发上来看看,现在也不知道你做的啥。
作者: oneside    时间: 2015-10-27 04:04 PM

原文是 

Ultrasonic Ranging Project

(1) The user can mask out foreground objects

(2) The output can be swapped from metric to imperial and vice versa

(3)Any non-level measurements can be compensated for and the level that the tool is being held at is also outputted

(4)up to 4 different measurements can be stored on the device for later retrieval


(2)(3)(4)我都完成了,就差这个(1)


作者: 手戈艹    时间: 2015-10-28 05:22 AM

那这样的话待测物必须是墙那种大型的物体,小物体会测出问题


假如我是测一块木板的距离,现在有A,B,C 三个测距模块  其中A B 感应到木板了,C感应到木板后面的墙,这种情况没有办法判断木板是待测物体还是障碍物


作者: zhanzifei    时间: 2015-10-28 10:59 AM
嗯,这部分确实比较麻烦,得在算法,数据处理这两个方面多下工夫了,或者想想有没有其他方案。
作者: 二水ershui    时间: 2015-10-28 04:17 PM
恩恩,谢谢你了




欢迎光临 烽火社区 (http://bbs.cnecport.com/) Powered by Discuz! X3.2