自动跟随机器人教程(七)软件部分 树莓派程序 多传感器综合
2018-02-18 20:19
363 查看
现在树莓派的各个传感器就都用上了,超声波模块、图像识别、声源定位各司其职,都能对周边环境做出反应,以便对电机做操作。这样就不需要电脑的远程控制了,能真正做到自主运行。
问题是这些传感器都是独立的,控制电机时以谁为主呢?
经过多次调试,本人摸索出如下原则:
超声波模块由于智能化程度较低,必须配合图像识别使用,因此只有在图像跟踪有效,才能使用超声波进行测距,超声波模块解决了前后的问题,而左右的问题用摄像头来解决。当摄像头锁定目标后,左右转动小车,使目标居中,此时获取超声波距离,通过前后移动把距离调节到合适的位置。
由于图像识别范围有限,即使是广角摄像头也只能处理前方一定角度内的图像,在摄像头丢失图像后使用声源定位来获取人员位置。
也就是说图像识别的优先级最高,放在主循环中实现,如图像识别跟踪到目标就不使用声源定位,如果目标丢失才启用声源定位(在独立线程中实现)。当图像识别锁定成功后,才调用超声波模块的传感器数据(传感器数据获取工作在单片机中循环实现,树莓派另外开一个线程去接收,但是只管收不使用,只在需要时超声波距离数据时树莓派才使用这个数值)。
另外要注意声源定位容易受到各种因素,比如电机转动的影响,因此每次探测完成后一定要等待电机做完所有动作才能做下一步的探测。(超声波模块发射声波时其实也会干扰声源定位模块,但是由于超声波模块有方向性并且强度不大,所以这个干扰这里可以忽略不计)。
传感器全部加起来后的代码比较长,我这里就不贴了,完整版程序请参考: https://github.com/jamesshao8/smart_car
下面是完整版小车的树莓派镜像:
链接:https://pan.baidu.com/s/1NRi-PcM-Hm7Ss1WvzdJKlA 密码:ygh5
问题是这些传感器都是独立的,控制电机时以谁为主呢?
经过多次调试,本人摸索出如下原则:
超声波模块由于智能化程度较低,必须配合图像识别使用,因此只有在图像跟踪有效,才能使用超声波进行测距,超声波模块解决了前后的问题,而左右的问题用摄像头来解决。当摄像头锁定目标后,左右转动小车,使目标居中,此时获取超声波距离,通过前后移动把距离调节到合适的位置。
由于图像识别范围有限,即使是广角摄像头也只能处理前方一定角度内的图像,在摄像头丢失图像后使用声源定位来获取人员位置。
也就是说图像识别的优先级最高,放在主循环中实现,如图像识别跟踪到目标就不使用声源定位,如果目标丢失才启用声源定位(在独立线程中实现)。当图像识别锁定成功后,才调用超声波模块的传感器数据(传感器数据获取工作在单片机中循环实现,树莓派另外开一个线程去接收,但是只管收不使用,只在需要时超声波距离数据时树莓派才使用这个数值)。
另外要注意声源定位容易受到各种因素,比如电机转动的影响,因此每次探测完成后一定要等待电机做完所有动作才能做下一步的探测。(超声波模块发射声波时其实也会干扰声源定位模块,但是由于超声波模块有方向性并且强度不大,所以这个干扰这里可以忽略不计)。
传感器全部加起来后的代码比较长,我这里就不贴了,完整版程序请参考: https://github.com/jamesshao8/smart_car
下面是完整版小车的树莓派镜像:
链接:https://pan.baidu.com/s/1NRi-PcM-Hm7Ss1WvzdJKlA 密码:ygh5
相关文章推荐
- 自动跟随机器人教程(五)软件部分 树莓派+电脑 摄像头图像回传
- 自动跟随机器人教程(六)软件部分 树莓派 声源定位
- 自动跟随机器人教程(一)(树莓派、Arduino教程)
- 【树莓派】RTC时钟模块安装教程第三部分:启动自动时间矫正
- 自动跟随机器人教程(八)采购清单
- 机器人仿真 软件 V-REP 入门教程 (二)基本操作
- 小飞鱼软件 通达OA工作流超时自动转交程序(图文)
- 树莓派开发系列教程5——树莓派常用软件及服务(vi、远程桌面、ssh、samba、u盘)
- 网络监测机器人 设备自动监测软件c#
- 【树莓派】RTC时钟模块安装教程第二部分:Rasbian(linux)下配置工作
- 完整版12306自动刷票教程,顺便学习了一下程序,受益匪浅
- Android实现程序自动更新实例教程
- SNF软件开发机器人教程更新
- C#程序实现软件开机自动启动的两种常用方法
- 软件工程第二个程序:“像阿超那样,花20分钟写一个能自动生成小学四则运算题目的 ‘软件’”的功能扩充
- 微信小程序前端自动生成工具,附软件使用视频
- apache定时自动启动脚本程序代码-apache-Php教程
- LAJP系列教程-第四部分-增删改查示例程序
- 3年前的一个小项目经验,分享给菜鸟兄弟们(公文收发小软件:程序开发部分)
- 机器人仿真 软件 V-REP 入门教程 (三)