【飞控开发高级教程5】疯壳·开源编队无人机-视觉追踪
2022年07月28日 18:57 发布者:Linda-x
COCOFLY教程——疯壳·无人机·系列视觉追踪图1
一、cocofly 视觉追踪简介
cocofly 无人机支持视觉追踪,其视觉追踪的功能主要是依托于无人机支架底部的视觉识别模块 OPENMV 实现的,目前已经提供了循线追踪、颜色追踪以及图形码追踪的功能。
二、循线追踪
cocofly 支持循线追踪功能,实现循线追踪的步骤如下。
(1) 检查各个传感器是否正常,例如:光流模块、视觉模块, 如果正常即可打开循线模式:从遥控进入飞控设置打开“8.循线模式”如下图所示:
图2
(2)把飞机放在线上,启动一键起飞后,飞机将会根据线的形状自动判断循线飞行方向,然后自主循线飞行,如果检测不到线,则会自动降落。
自主循线过程中,遇到以下情况之一,飞机会自动停止循线并且自动降落:
a.收到来自遥控器的自动降落命令;
b.走到线的尽头;
c.遇到 T 字路口。
循线地图的线路的形状可以布置成直线、 曲线和直角三者的任意组合, 曲线弯曲半径建议大于 1 米,线宽 2~5 厘米最佳。
在使用循线追踪模式的时候需要满足一下就几个条件:
(1)环境光线良好,地面是白色的,并且有轻微的浅色花纹(建议在浅色的瓷砖地板上使用);
(2)需要跟随的线的颜色要跟地面不一样,差别越大越好(最好是纯黑色);
(3)需要跟随的线周围 1 米内不能有其他物体;
(4)循线高度不可太高,1 米左右最佳。
三、追踪颜色
cocofly 支持跟随追踪颜色功能,但目前只支持追踪黑色,可以在 OPENMV
的源码里面修改代码实现追踪其它颜色,实现跟随追踪颜色功能的步骤如下。
(1) 检查各个传感器是否正常,例如:光流模块、视觉模块, 如果正常即可打开循线模式:从遥控进入飞控设置打开“5.跟随模式”如下图所示:
图3
(2)把飞机放在需要跟随的物体旁边,启动一键起飞后,飞机将会自动跟随白色地面上的黑色物体。
使用 COCOFLY 的视觉跟随模式需要满足以下几个条件:
(1)环境光线良好,地面是纯色的(最好是纯白色,白色瓷砖地板上也可以);
(2)需要跟随的物体颜色要跟地面不一样,差别越大越好;
(3)需要跟随的物体周围半径 1 米内不能有其他物体;
(4)跟随高度不可太高,跟随高度 1 米左右最佳。
四、跟随图形码
cocofly 支持跟随图形码功能,这里我们把特别制作了带有图形码的小车, 用来实现跟随小车的功能。
cocofly 跟随图形码小车功能目前暂时不能通过遥控器实现,需要配合
cocobit 编程板实现。具体实现方式如下表所示:
表1
cocobit 拖拽的代码示例如下:
图4
下载该代码到 cocobit 后,cocobit 就会自动打开蓝牙,使用壳壳板的 app 会自动连接上或者微信小程序会自动搜索出来点击对应的 coocbit 进入二级菜单, 即可;把 cocobit 编程板插到遥控背后的卡槽,开启遥控器电源以及飞控电源, 等待遥控连接上飞控后,按下遥控上的“cocobit 编程模式”按键,直到 cocobit 编程模式指示灯亮起,则进入了 cocobit 编程模式,如下图所示。
图5
在微信小程序下点击蓝牙收发小助手。
图6
在蓝牙小助手内(如下图所示)根据拖拽生成的指令发送对应的数字即可, 这里以追踪 1 号图形码小车为例,为了实现追踪 1 号图形码小车,先把小车打开电源放在飞机前方 20cm 处,需要发送“1”先让飞机起飞,起飞后发送“4” 让飞机追踪 1 号图形码小车,此时可以遥控小车到飞机底下,然后再遥控小车前往其它地方,会发现飞机在跟随着小车飞行;最后再发送“6”,飞机就会降落。
图7
跟随图像码的实验现象如下图所示。
图8
当然以上的指令只是一个示例,实际使用完全可以脱离小程序或者 APP,即不使用其无线功能,例如下图所示指令。
图9
值得注意的是指令下载到 cocobit 内,即使遥控和飞机连接上了而 cocobit 编程板也已经插在了卡槽里,飞机也不会立刻执行这些推拽生成的指令,只有在遥控连接上飞机,且按下了“cocobit 编程模式”按键后,飞机才会执行拖拽的指令。该示例中的现象是飞机会自动起飞然后进入到追踪图像码小车模式。
文件下载请点击:258051