RoboMasterTT是大疆首款拥抱开源的教育无人机,为使该款无人机能够更加符合开源精神和青少年科技创新教育核心,让国内中小学师生有更极致的教学体验,大疆与国际领先的开源硬件企业DFRobot展开官方合作,将旗下Mind+图形化编程软件与RoboMasterTT教育无人机深度结合,并作为该款无人机官方指定图形化编程软件平台。
此外,基于Mind+强大的硬件扩展功能库DFRobot旗下的开源硬件也作为该款无人机官方推荐第三方外接硬件产品,使得RoboMasterTT无人机更加如虎添翼。
RoboMasterTT由两部分组成:
下面一部分为TelloEDU无人机,可以执行飞行命令。
上面一部分为扩展模块,为一块可编程基于ESP32的主控板和一个5.8GWiFi模组。
两者通过microUSB线连接时激活扩展模块上的WIFI模组并可以进行通信。
Mind+可以使用电脑WiFi直接实时控制TelloEDU,也支持对扩展模块上的ESP32模块进行编程控制TelloEDU。
因此,RoboMasterTT在Mind+上总有4种玩法:
在Mind+中,程序运行于电脑上,编程完立即可运行的部分为实时模式编程,对立的,程序运行于第三方硬件上,编程完需要将程序上传到第三方硬件上运行则为上传模式编程。
因此对于RoboMasterTT来说,实时模式即为通过电脑WIFI直接连接RoboMasterTT进行实时的编程控制,断开连接后飞机就不会执行设定的程序,上传模式即为使用USB线对扩展模块上的ESP32进行编程,实现断开电脑连接后飞机依然可以执行设定的程序。
在开始使用前,将飞机调整到最新默认状态能更好的实现本文的效果。
请根据TelloEDU使用说明书,使用大疆官方的TelloEDU手机APP将固件更新到最新版本。
注意:更新EDU固件时不要连接扩展模块,即WiFi名应该为Tello-xxxx。
扩展模块使用Mind+编程是通过USB串口,因此在首次使用Mind+连接扩展模块时需要安装驱动。
使用USB线连接扩展模块到电脑USB口。
打开Mind+,在菜单连接设备下点击一键安装驱动,弹出驱动安装框,点击下一步或OK直到完成
由于扩展模块可编程,如果扩展模块中存在程序则会导致实时模式的控制无法生效,因此在使用实时模式前需要将扩展模块恢复默认固件。
本章节简要介绍RoboMasterTT在Mind+实时模式下的基本玩法。
注:兼容TelloEDU除扩展模块部分功能例如点阵控制。
带无线网卡功能的电脑。
TelloEDU或RoboMasterTT。
RoboMasterTT需要恢复扩展模块固件。
RoboMasterTT切换为AP模式,以使电脑可以连接TelloEDU发出的WIFI。
连接以RMTT或Tello开头的WiFi,等待连接成功。
注意:
编程测试。将飞机放置于空旷上方无遮挡物的地方。
注意:每一条动作程序都会等待动作执行完毕后再进入下一条命令,即阻塞型指令。
将多台飞机和电脑都连入同一个路由器中时,电脑端可以通过给不同的飞机发送指令实现多机控制。
单机模式的所有要求
无线路由器
首先记录飞机的SN码或WiFi名,可以从TelloEDU电池仓、手机APP、产品包装盒、单机模式获取。此处我们先使用Mind+获取飞机SN码。
接下来让飞机连接到路由器WiFi中:**注意:**组队模式需要比较好的网络,因此请使用一个专用路由器让飞机和电脑接入5.8GWiFi信号中,电脑网络中禁用其他网卡。
拨动RMTT扩展模块上的开关到STA模式。等待飞机连接到WiFi,连接成功后飞机会自动进入起桨模式。
通过路由器后台也可以看到飞机是否连入了WiFi。
依次通过以上步骤记录多台飞机的SN然后让飞机连入WiFi。
加载RoboMasterTT(组队)扩展,注意两个扩展的积木不要混用。
为方便多机控制,我们将不同飞机进行编号,使用如下积木,将两个飞机的SN码输入,并编号为1和2,然后在当前电脑所在的网络中扫描飞机。
将已经切换为STA模式的飞机开机,等待飞机联网自动起桨,点击运行如下程序搜索飞机,当飞机从黄灯闪烁变为紫灯闪烁即被搜到了。
查看飞机状态。
组队飞行测试。
本章节介绍上传模式对RMTT的扩展模块进行编程控制的方法。
RoboMasterTT的扩展模块主控为ESP32,在Mind+中支持两种语言编程,其中ArduinoC模式功能更多,扩展功能也更多适合初学者使用,MicroPython模式功能相对较少,适合想要学习Python语法的用户。
飞行控制,编写一个程序,上传完毕之后断开usb线,然后将扩展模块连接TelloEDU飞机后开机。
等待飞机亮起绿灯,此时按一下扩展模块上的按钮(飞机保护机制,必须使用这个积木按下按钮才能起飞),飞机即亮红灯起飞,然后亮蓝灯旋转然后亮绿灯降落。
Mind+支持直接输入代码进行编译上传,因此对于不支持的扩展传感器,可以直接编辑代码进行控制。
注意点击上传到设备时如果下方为自动生成则上传的为图形化对应的代码,两者并存不冲突。
如下为通过手动编辑功能读取外接的URM10(SR04)超声波模块的值。
Mind+开放扩展库,因此用户可以通过此功能导入外部的arudino库,然后使用手动编辑功能进行代码编写控制,或制作对应的图形化积木使用图形化代码控制。
详情请参考Mind+官方文档中的自定义用户库文档教程。
Mind+中支持了大量开源硬件,因此可以将各种开源硬件连接到RMTT上从而实现各种效果。本案例使用一个红外接收模块连接到RMTT扩展板,然后通过普通的红外遥控器控制RMTT。
上传完成后,根据程序,打开串口监视器,使用红外遥控器对着接收模块发送数据:
通过编码遥控飞机,编写如下程序,控制RMTT扩展模块的灯颜色,按下2亮蓝灯,按5亮绿灯。
分为无人机飞行、无人机编程、无人机编队、无人机竞赛4章节近100个项目,帮助你学习操控TT无人机从入门到精通。