基于梦飞openmv的自主识别物联网图传小车

前言
接上一篇<梦飞openmv py-AI机器视觉_自主开发openmv底层固件和硬件>,在自主开发的oepnmv硬件之后,时隔一年,我们终于在openmv自主开发的路上又进一步,这一次不仅仅是硬件上的推进,更是软件交互和用户体验上的提升。这次要给大家介绍的就是我们纯自主开发的openmv机器视觉自主识别和图传控制小车。
B站功能演示视频:https://b23.tv/phCGmPr
硬件介绍
它是基于梦飞自主开发的openmv硬件及各种扩展模块的综合应用,集成了openmv各种图像识别算法,小车PID控制,视频图传,视觉追踪,机械臂自动控制等在内的综合应用方案。以下将逐一介绍各部分组成结构和原理。
第一,自主集成openmv硬件,梦飞openmv硬件集成了更多的外设引脚,支持电机控制,(LCD显示)SPI-wifi图传,舵机机械臂控制引脚,串口等在内的多个外设,并开发了对应的集成模块。
(1)自主开发了用于对接openmv的电机驱动和电源一体化控制板,集成双LM2596电源芯片和RZ7889电机驱动芯片,具备对外5V3A的输出能力,以及6-15V宽电压输入能力,电机驱动和对外供电单独运行,RZ7889具备最大5A电机PWM输出控制能力,基本满足市面上所有智能小车得控制和运行。
(2)自主开发了基于ESP8266得SPI-wifi图传模块,具备实时视频传输能力(HTTP传输实时速度可达200KB/s,VGA传输10fps,QVGA可达20fps以上),可在图像识别完成后将视频传输到手机端实时显示,以及单独增加了用于控制小车和实时通讯得蓝牙模块,WiFi和蓝牙单独运行互不干扰。
(3)自主开发了三自由度机械臂模块,在原有追踪云台基础上增加机械爪,可拆卸和可安装openmv模块,实现自动识别和抓取的目的,可应用与自动分拣,搬运等领域,机械臂分两款,分别是普通塑料材质骨架和MG90S金属舵机安装,以及铝合金骨架和,G996金属舵机安装的机械臂。
(4)增加了手机app集成,可将单独的算法功能全部集成在openmv硬件上,通过手机app实时显示视频和切换不同的识别模式,基本识别模式包括循迹,物体颜色识别,人脸识别追踪等。也可通过手机app实时控制小车实现视频控制。
所有模块接口均直插在openmv硬件上,实现一体化集成,这是以往任何一款openmv硬件都无法直接完成的,并且所有模块都采用电子积木的方式集成,方便拆卸,更换,调试等各种操作,并且有任何损坏只需更换对应模块即可,省钱省力。
在这里插入图片描述
软件功能介绍
openmv软件开发上采用micro-python开发,各个模块集成到对应的功能函数,目前功能函数包括,串口协议处理模块(手机app蓝牙通讯),车辆控制模块(电机PWM驱动),测距模块(图像简单测距),图像传输模块(wifi图传),图像识别模块(颜色识别,人脸识别,循迹等),PID追踪模块以及机械臂控制模块等在内的众多模块化集成代码,可方便用户快速集成自己想要的功能。
目前基于我们开发的两款openmv模块,分别为stm32F407主控和stm32H7主控,两款模块的特点分别为:
(1)F407主控的openmv模块,支持直接采集JPEG图像,搭配ov2640摄像头和wifi图传模块可直接实现JPEG图传采集和传输,另外,算法集成上自主集成了颜色识别,二维码识别,人脸识别(基于haar特征训练的机器学习算法,支持人脸,手,口罩,行人,眼,车辆等任意特征训练的模型,提供众多转换好的模型供使用),模板匹配(NCC模板匹配,可支持数字,形状等模式识别)。
(2)H7主控的openmv模块,除支持F407所涉及所有功能外,另外支持openmv4plus的所有算法,但是由于没有外部SDRAM一些大点的神经网络无法运行,但是我们自主集成了stm32-CUBE-AI,可使用lenet和mnist神经网络识别数字,也可以使用卷积神经网络识别人体特征等。
在这里插入图片描述

  • 2
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
目前基于像处理使用市场上监控摄像头二次开发的案例很多,包括海康威视萤石开源摄像头;还有使用自带FIFO的OV7725或者OV7670摄像头模块结合stm32进行;还有OPENMV+OV7725的像处理方案;还有一种使用MIPS架构的路由器芯片例如RT5350加免驱MPJG摄像头方案。每一种方案价格都要达到50块以上,因为除了购买摄像头之外还有购买单片机,成本降不下来。 好消息的是,乐鑫科技推出的ESP32芯片能满足的需求,某宝基于该芯片出售的ESP32-cam摄像头模块能满足的需求,最低价格26块能买到手,性价比相当高,ESP32的运行速度和wifi速度都比ESP8266高。26块集成了ESP32最小系统板和OV2640摄像头和板载蓝牙wifi天线,买了也不亏,一个好点的USB摄像头都不只这个价格了!为啥很少人使用呢?原因是入门比较麻烦。要是使用乐鑫idf去搭建开发,很麻烦,很难成功。 国内某个测评网有详细简介:https://post.smzdm.com/p/amm03d0d/ 模块的原理如下: 模块的全家福如下: 该模块在某宝很多家店铺有售,至于代工厂估计有很多家,但是根据原理就那么多IO口,资料都是通用的。 经过我自己个人努力,半年时间内掌握了ESP32技术,采用的是Arduino开发环境开发,很多情况下使用库函数来快速实现的功能。搭建开发环境也花了不少时间,后面根据一个教程搭建成功了。 搭建视频链接:https://pan.baidu.com/s/1_xYw-Mg3LPb5vqMuVgiD2A 提取码:qdl2 搭建软件及素材:链接:https://pan.baidu.com/s/1eIES_hDWNgr5lZD4akP9Jw 提取码:zrwu 最后是我根据搭建环境自带的源码修改裁剪后的源码(在最后免费下载),该源码是我将三四个源码文件裁剪修改合成一个源码文件,实现了功能,代码精简利于阅读和学习,先进行配置和运行的说明: (1)整个工程就是一个9kb的源码,名字叫websocket.ino文件,然后修改热点的名称和密码: (2)找一个CH340的USB转TTL电平的模块,某宝几块钱有卖的,按照下接上模块: 右边的模块就是USB转TTL模块,主要是用来下载程序和串口调试,左边接ESP32模块,右边接电脑。 个人建议给cam模块供电压5V在第一张原理左下角的端口供电,免得电源不足,不要接错了! UoR就是RX端 UOT是TX端 这两个端跟CH340的RX、TX交叉连接,如示 将IO0端口与GND连接上之后就可以马上下载程序了: (3)用Arduino下载程序:(如果下载过程中出现失败,可以尝试按下模块的RST按键) (4)创建一个热点,名称和密码都与(1)的步骤相同,让ESP32的wifi能连上,我就用笔记本电脑创建了一个热点,然后打开串口Arduino监视器或者打开一个串口调试助手,打开电脑与CH340链接的串口,拔掉cam模块中IO0与GND链接的线(第三张灰色的线,不断开就不能启动程序只能不断下载),再按下一次cam模块的RST按钮松开,如下: 从上看出,RST按下时,第一次程序运行不对,第二次运行正确了,打印出IP地址。右下角显示有设备连上热点。多试试几次就能成功的! (5)打开谷歌浏览器,输入网址串口打印的网址:172.25.139.2(个人具体IP看打印为准)就可以看到摄像头采集的视频流,相当流畅,如下所示:(其他浏览器可能失败) 由于摄像前面的保护膜没有撕掉,所以有点模糊,视频还是很流畅的。 总结:该项目演示了用ESP32作为一个STA模式连上路由器或者笔记本热点,在同一个局域网环境下用浏览器登录ESP32的IP地址就可以收看ESP32摄像头采集下来的像信息。后期会陆续发布根据此源码升级成视频监控小车、视频监控智能控制摄像头、视频监控系统和手机客户端、stm单片机接收、机器人视觉人脸签到系统、远程MQTT手机app接收、局域网javaweb显示、等等项目,敬请期待。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值