【课程引入】
DFROBOT有一套无人机拓展套件,里面有丰富的传感器、执行器。如果能将它们配合起来,可以完成更加丰富的任务。这一节课,我将使用扩展套件里的手势识别传感器和灯带,完成更复杂由拍摄对象来控制的光绘作品。
【目标成果】
1.通过转换器焊接排针,将手势识别传感器和灯带连接到扩展板。
2.使用mind+编程软件编程,使无人机实现识别手势完成上升、下降、左移、右移、前进、后退的操作。确定好位置后,完成指定动作,实现光绘拍摄。
【知识原理】
手势识别传感器是一款强大的3D手势识别交互式传感器;在最远20cm范围内,最多可以识别13种手势。目前有两种工作模式:高速模式下可以识别手的上\下\左\右\前\后\顺时针\逆时针移动以及快速挥动9种手势;低速模式下可以此前9种基础上再加乱序\缓慢左右\缓慢前后\缓慢上下移动4种手势。显然这款传感器可以有广泛的运用范围,设想一下,挥挥手控制电视空调;挥挥手调整灯光和音乐;挥挥手去操纵游戏...会不会很有意思呢?
步骤1 焊接排针 将无人机拓展套件里的排针使用电焊钳焊接到IO扩展板。并将IO扩展板连接扩展模块。
步骤2 连接手势识别传感器到IO扩展板的5V、GND、IO26、IO27引脚。注意线序
步骤3 将灯带绑定在无人机护桨尾部,并连接到IO扩展板3V、GND、IO13引脚。用橡皮筋绑定,避免桨叶打到连接线。
步骤4 Mind+编程 打开mind+界面,打开上传模式。 在扩展中选择主控板为ROBOMASTER TT(ESP32)。 在用户库中搜索并选择手势识别传感器。 在显示器中选择ws2812RGB灯。通信模块中选择加载红外接收模块。
程序讲解:
1、初始化。初始化RGB灯的总数、亮度,并让它们全部熄灭。开启飞行控制直到成功,选择5秒抛飞,设置手势传感器识别模式为高速。
2、开启循环执行。获取一次手势传感器的数据。然后判断手势。如果是向左则呼吸灯亮一种颜色,飞机向左飞25厘米;如果向右则呼吸灯换一种颜色,飞机向右飞25厘米;如果向上则呼吸灯再换一种颜色,飞机向上飞25厘米;如果向下则呼吸灯再换一种颜色,飞机向下飞25厘米;如果顺时针转动挥手,则呼吸灯再换一种颜色,飞机向前飞25厘米;如果逆时针转动挥手,则呼吸灯再换一种颜色,飞机向后飞25厘米。
3、如果识别快速挥手动作,则飞机呼吸灯灭,打开IO13引脚的灯带。让飞机画正方形。灯带关闭,飞机降落。
上传程序,测试效果
注意当识别快速挥手功能后,灯带开启,华为手机使用“车水马龙”功能拍照。
附件
安德烈亲王2021.01.10
卫东大哥你这折腾的相当可以了,以我对tello目前的尿性状态:前一阵折腾年会编舞和迷宫穿越赛,N次我想把它给砸了,也不知道怎么能憋屈到现在(飙泪笑),大连总部来那兄弟直接不想玩这货了(眉飞色舞→生无可恋→咬牙切齿→打入冷宫)。手势识别需要相对稳定且明亮的光线,而车水马龙又需要低亮度,你能忍住性子一次又一次的翻车重来,这心性足矣让我甘拜下风。非要提点建议就是:1、把飞机速度尽量放慢(通过视频后期加速来弥补演示效果),拓展版加了几个传感器后,会进一步破坏飞机的飞行稳定性 2、一块满电的电池只能试一次(拓展版、PAJ和灯带都是耗电大户,预计最大续航不超6分钟),电量低会进一步降低tello的飞控稳定性 3、撤掉灯带是否会影响华为的拍摄效果?(用拓展主板的点阵屏快闪来模拟灯带,拍摄效果如何?)理论上撤掉灯带能让飞机的稳定性和续航提升一点,只是这点提升能否对得起拍摄效果的下降,我这键盘侠没有实战经验 4、还有个疑问,就是led发光手套能否弥补光线较暗时的识别效果?只是瞎想哈,完全没实战经验。但是千万别碰那些荧光粉(要么带辐射要么不好洗,别听商家的忽悠)