专栏中心

EEPW首页 > 专栏 > 疯壳AI开源无人机串口(光流获取)

疯壳AI开源无人机串口(光流获取)

发布人:fengkelisa 时间:2020-04-26 来源:工程师 发布文章

一、光流模块简介

光流(optical flow)是指的是空间运动物体在观察成像平面上的像素运动的瞬时速度。

光流法是利用图像序列中像素在时间域上的变化以及相邻帧之间的相关来找到上一帧跟当前帧之间存在的对应关系,从而计算出相邻帧之间物体的运动信息的一种方法。

通常将二维图像平面特定坐标点上的灰度瞬时变化率定义为光流矢量。

一般而言,光流是由于场景中前景目标本身的移动、相机的运动,或者两者的共同运动所产生的。

当人的眼睛观察运动物体时,物体的景象在人眼的视网膜上形成一系列连续变化的图像,这一系列连续变化的信息不断流过视网膜(即图像平面),好像一种光的,故称之为光流。光流表达了图像的变化,由于它包含了目标运动的信息,因此可被观察者用来确定目标的运动情况。

COCOFLY无人机采用的光流模组是基于PMW3901PMW3901是一款光学运动跟踪传感器,该传感器体积小、功耗低、精度高。如下图所示为该光流模组的实物图如下图所示。

image.png

光流模组上已经把PMW3901的数据处理好,并且通过串口周期传输,波特率为19200,该光流模组的串口传输的协议如下表所示。

 

包头

字节数

光流数据

和校验

环境质量

结束标识符

0xFE

0x04

DATA0

DATA1

DATA2

DATA3

SUM

SQUAL

0xAA0xBB

其中DATA0DATA1flow_x拆分出来的低8位数据和高8位数据,即flow_x=(int16_t)(DATA1<<8)|(DATA0)DATA2DATA3flow_y的低8位和高8位,即flow_y=(int16_t)(DATA3<<8)|(DATA2),其中和校验为DATA0~DATA3的累加值,即SUM=DATA0+DATA1+DATA2+DATA3SQUAL为地面环境质量,数值越大表示地面环境质量越高;最后一个字节是结束符,有两种:常规模式下固定是0xAA(Y引脚接高电平)、偏航模式下是固定的0xBBY引脚接低电平)。

二、串口光流数据获取实验

串口光流数据获取实验使用STM32的串口2UART2与光流模组相连,串口1UART1通过USB转串口模块连接电脑,把串口2获取到的光流数据通过串口1传输到电脑端的串口调试助手显示出来。串口2的引脚如下图所示:

image.pngimage.png

两个串口引脚分别与PA2PA3引脚相连,那么我们就对PA2PA3引脚进行配置,串口1的配置可以参考《串口(基础收发)》,配置代码(通过调用官方库)编写的思路如下:

 

 

代码思路

1

管脚配置

1、定义结构体;

2、使能时钟;

3、填充结构体;

4、装载结构体。

2

串口配置

1、定义结构体;

2、使能时钟;

3、填充结构体;

4、装载结构体;

5、开启中断;

6、使能串口。

3

中断优先级管理

1、定义结构体;

2、填充结构体;

3、装载结构体。

4

逻辑处理

1、等待接收以及发送数据。

串口2初始化代码如下:

image.png

串口2接收到光流模组的数据就转发到串口1,串口2中断函数代码如下。

image.png

设置串口2的波特率为19200,代码如下:

image.png

保存、编译、下载代码,确保串口2接上了光流模组,然后再把串口1接上USB转串口模块,最后接到电脑的USB端口,如下图所示:

image.png

然后在把USB转串模块插到电脑的USB口,打开电脑端的串口调试助手,找到对应的COM口(前提是安装了USB转串口驱动),设置波特率为115200,打开,可以看到串口在不断打印光流模组发送的数据,如下图所示。

image.png

专栏文章内容及配图由作者撰写发布,仅供工程师学习之用,如有侵权或者其他违规问题,请联系本站处理。 联系我们

关键词:

相关推荐

边缘计算与人工智能(Edge AI)如何引领新一轮技术革命

AI需求火爆,Cerebras上调IPO发行价和发行股票数量

智能计算 2026-05-12

[求助]

toobad123 2004-08-13

C6474多核处理器在医疗应用领域

视频 2009-03-24

恩智浦 NCJ39 高性能安全元件:赋能智能汽车数字钥匙与安全接入

F28335 和入门套件演示

视频 2009-03-24

TMS320DM365 数字媒体处理器技术概览

视频 2009-03-24

迫于美政府强硬要求,特斯拉拟将AI6.5芯片代工订单从台积电转至英特尔

莫仕收购Teramount,聚焦共封装光学(CPO)业务

摩尔线程 × 光轮智能|强强联手,共筑国产具身智能仿真底座

PIC18F87J10 系列单片机

智能路灯该选什么样的无线通信技术?

TMS320DM365 数字媒体处理器示例

视频 2009-03-24

专为客户设计的高性能器件系列

视频 2009-03-24

距计划18天芯片厂罢工仅剩10天,三星与工会恢复谈判

PSD8XXF 可编程单片机外围器件

PIC编译器

NVIDIA追求模块化出货 台达电领军全球大扩产

PIC18FXX2 增强型闪存单片机

pspice学生评估版

ARM Axion 处理器加持谷歌第八代 TPU,云端全面转向智能体 AI 架构

更多 培训课堂
更多 焦点
更多 视频

技术专区