回到首页 返回首页
回到顶部 回到顶部
返回上一页 返回上一页

大疆TT+SIOT的数据采集方案 简单

头像 hnyzcj 2020.12.28 1381 1

一、课程引入:

最初申请大疆TT创造力套件是想把之前的气象数据采集的工具,由固定不变气象站变成可以随意移动的采集设备。而此时大疆又推出了无人机编程教学课程大赛。于是就大胆的“猜想”是否可以把无人机变成一个移动端气象采集装置。经过在DF社区申请,我幸运的拿到了大疆TT于是就有了下面的基于大疆TT的数据采集方案……

project-image

二、原理讲解:

通过大疆TT实时采集气象数据,并将采集数据发送回PC或网络端。通过查阅大疆RoboMaster TT硬件结构,我们可以知道其主要由无人机+扩展模块两部分组成。Tello EDU无人机部分,可以执行飞行命令。上面扩展模块,为一块可编程基于ESP32的主控板和一个5.8G WiFi模组。而我所需要的是:大疆TT上携带相关传感器检测相关数据,并将数据反馈到PC或物联网端。

大疆TT的编程提供了IDE和Mind+图形化两种方式。而我们制作这个项目的初衷是为了给气象社团提供便利,所以选择了图形化编程方式。但是打开了Mind+软件后,发现并没有我们需要的指令。但是扩展模块是基于ESP32的主控和一个5.8gWIFI,从硬件的角度来说应该可以满足需要的,PC和TT之间可以实现双向的数据通信。于是我们采取了这样一种方式,在拓展模块上使用上传模式写入一段采集并发送数据的程序。在PC端使用实时模式控制飞控进行相应的动作,并接收来自TT的数据。其具体原理如下图所示。

project-image

三、项目实施:

(1)器材清单:

序号名称数量硬件TT飞行器1硬件TT拓展模块1硬件PC(识别5.8G)1软件MIND+1

(2) 电路连线:

由于本次只使用了TT套件,只需将拓展模块通过Microusb与TT飞行器连接即可,如下图所示。本次作品中我们以TOF传感器作为采集数据的信号源,后续可更换为外置传感器。

project-image

(3)代码编写:

本次程序编写包含两部分:数据发送端(大疆TT端)数据接收端(PC端—SIOT服务器)。

首先来编写数据发送端程序。

第一步:环境部署打开Mind+编程软件(上传模式),点击拓展按钮,切换“主控板”页面,如下图所示,添加RoboMaster TT。

project-image

第二步:数据发送端程序比较简单,当TOF测距传感器检测的距离小于等于90时,即可将其值发送出去。同时LED灯由红色变为绿色。

project-image

第三步:在上传模式下,将上述程序刷入TT拓展模块。

其次来编写数据接收端程序。

第四步:数据接收端程序的编写是在实时模式下进行的。将MIND+切换至实时模式,点击“扩展”按钮,切换至“功能模块”选项卡,从中选择“RoboMaster TT”。

project-image

第五步:添加MQTT协议,因为大疆ESP32玩MQTT非常方便,至此完成编程软件的部署。

project-image

第六步:编写控制程序如下图所示,可以实现控制飞控各方向上的运动,这里不再详细介绍。

project-image

第七步:部署SIOT服务器,这里不再详细介绍,请参考:

https://mc.dfrobot.com.cn/thread-281129-1-1.html

第八步:MQTT初始化设置,从“网络服务”指令集中拖出指令“MQTT参数初始化”指令对其进行参数设置,具体设置如下图所示。物联网平台选择SIOT,服务器地址为本机IP地址,账号为siot,密码为dfrobot,Topic为自己定义我们这里定义为temp/A。

project-image

第九步:主程序,主程序中我们使用了两种方式列表data和SIOT方式来存储数据,这里出于测试的角度考虑只是接收8条数据。

project-image

(4)运行测试:

第一步:对系统加电,按下TT飞控左侧电源按钮后等待,无需做任何其它操作,TT的LED在红绿色之间循环切换。

第二步:PC端切换无线信号为RMTT-XXXXXX,选择此无线信号进行连接。

project-image

第三步:运行SIOT服务器程序,启动SIOT服务。

project-image

第四步:实时连接TT,打开MIND+软件在实时模式下连接TT,如下图所示。

project-image

第五步:连接成功后, 点击绿旗运行程序,此时在MIND+界面中可以看到列表中接收到TT发送来的数据。切换到SIOT物联网平台也可同步接收到发送的数据。

project-image

第六步:通过键盘控制TT运行,测试程序功能。

项目拓展:

本次作品中使用的是TT拓展模块上的TOF测距传感器,今后我们完全可以使用外接传感器来替换,完成数据的采集。

评论

user-avatar
  • 曾剑波

    曾剑波2021.01.05

    好创意!值得学习!有钱有机会买部回来搞搞。

    0