完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
COCOFLY教程 ——疯壳·无人机·系列 串口(视觉数据获取) 图1 一、OPENMV 模组简介 OPENMV 是一个开源、低成本、功能强大的机器视觉模块。以 STM32F767 为核心,集成了 OV7725 摄像头芯片,在小巧的硬件模块上,用 C 语言高效地实现了核心机器视觉算法,提供 Python 编程接口。开发者、电子发烧友以及智能设备开发商都可以用 Python 语言使用 OPENMV 提供的机器视觉功能,为自己的产品和发明增加有特色的竞争力。 OPENMV 上的机器视觉算法包括寻找色块、眼球跟踪、边缘检测、标志跟踪等。可以用来实现非法入侵检测、产品的残次品筛选、跟踪固定的标记物等。使用者仅需要写一些简单的 Python 代码,即可轻松的完成各种机器视觉相关的任务。小巧的设计,使得 OPENMV 可以用到很多创意的产品上。比如,可以给机器人提供周边环境感知能力;给智能车增加视觉巡线功能;甚至,可以给工厂产品线增加残次品筛选功能等。 COCOFLY 上的无人机视觉模组采用的就是 OPENMV,其实物图如下图所示。 图2 其中OPENMV 的Python 代码已经写好提供给用户,如果用户需要修改的话, 也可以修改使用,目前 OPENMV 串口发出的视觉数据的协议框架如下表所示。 表1 其中帧头是固定为两个字节:0xAA、0xAA;功能字为一个字节;长度为数据的长度,也为一个字节;数据位 n 个字节;和校验为一个字节,即帧头开始相加到最后一个字节,保留低 8 位。 视觉模组的接收数据,即模式设置的协议框架如下表所示。 表2 其中帧头是固定为两个字节:0xAA、0xAF;功能字为 0xF1;长度为数据的长度,也为一个字节;Mode,即 OPENMV 的模式设置,为 1 个字节;和校验为一个字节,即帧头开始相加到最后一个字节,保留低 8 位。 该数据的协议用户均可自定义,详情可以看配套的OPENMV 的Python 源码, OPENMV 的具体使用方式可以查看 OPENMV 官网。 二、串口视觉数据获取实验 串口视觉数据获取实验使用 STM32 的串口 1 即 UART1 与视觉模组相连, 串口 2 即 UART2,通过 USB 转串口模块连接电脑,把串口 1 获取到的视觉数据通过串口 2 传输到电脑端的串口调试助手显示出来。做该实验的时候需要把视觉模组接到 USART1,把光流模组暂时取下,并且把 USB 转串口的线接到光流接 口处。 串口 1 和串口 2 的配置可以参考《串口(基础收发)》和《串口(光流数据获取)》两节,配置代码(通过调用官方库)的思路,如下表所示: 代码思路 表3 串口 2 初始化代码如下: 图3 这里注意要把串口的发送也配置好,这样才能把数据发送到电脑。 串口 1 接收到视觉模组的数据就转发到串口 2,串口 1 的中断函数代码如下。 图4 设置串口 1 的波特率为 1115200,串口 2 的波特率也设置为 115200,代码如下: 图5 保存、编译、下载代码,确保串口 1 接上了视觉模组,然后再把串口 2 接上 USB 转串口模块,最后接到电脑的 USB 端口,如下图所示: 图6 然后在把 USB 转串模块插到电脑的 USB 口,打开电脑端的串口调试助手, 找到对应的 COM 口(前提是安装了 USB 转串口驱动),设置波特率为 115200, 打开,可以看到串口在不断打印视觉模组发送的数据,如下图所示。 图7 配套资料:http://www.fengke.club 套件地址:http://shop115904315.taobao.com 文件下载请点击:
【5】串口(视觉数据获取).pdf
(610.08 KB, 下载次数: 0
)
|
|
相关推荐
|
|
飞凌嵌入式ElfBoard ELF 1板卡-CAN编程示例之开发板测试
654 浏览 0 评论
该问题是用APP给芯海科技的CST92F25芯片发指令是出现的
2242 浏览 1 评论
771 浏览 0 评论
1530 浏览 1 评论
2276 浏览 1 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-22 03:24 , Processed in 0.673583 second(s), Total 66, Slave 47 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号