文章目录
- 前言
- 一、安装基础环境
- 1. EMQX 安装(版本4.4.0+)
- 2. MySql 安装(版本8.0.26+)
- 3. Redis 安装
- 二、部署后端(JDK必须11及以上)
- 三、部署前端
- 四、成为大疆开发者
- 五、飞机注册上云
- 六、绑定飞机
- 七、无人机状态查看
- 八、直播流查看
前言
大疆上云API官方文档有些写的不是很详细,踩了很多坑,自己实际部署了一遍,做此纪录!
一、安装基础环境
1. EMQX 安装(版本4.4.0+)
安装教程:https://www.emqx.io/docs/zh/v4.4/
docker一键安装:
$ docker run -d --name emqx -p 1883:1883 -p 8081:8081 -p 8083:8083 -p 8883:8883 -p 8084:8084 -p 18083:18083 emqx/emqx:v4.0.0
后台管理地址:http://IP:18083/ 默认账号密码: admin public
2. MySql 安装(版本8.0.26+)
安装教程:https://dev.mysql.com/doc/refman/8.0/en/installing.html
docker一键安装:
docker run -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d docker.io/mysql:8 --lower_case_table_names=1
3. Redis 安装
安装教程:https://redis.io/docs/getting-started/
docker一键安装:
#创建目录mkdir -p /root/redis/data && mkdir -p /root/redis/conf#新建配置文件
vim /root/redis/conf/redis.conf#写入信息
port 6379
bind 0.0.0.0
protected-mode no
appendonly yes
requirepass 123456#启动容器
docker run -itd -p 6379:6379 --name redis -v /root/redis/data:/data -v /root/redis/conf/redis.conf:/etc/redis/redis.conf redis redis-server /etc/redis/redis.conf
完成图:
二、部署后端(JDK必须11及以上)
代码下载:https://github.com/dji-sdk/DJI-Cloud-API-Demo
初始化数据库,丢进数据库执行:
源码修改,修改为你自己的连接信息:
后端部署完成!
三、部署前端
代码下载:https://github.com/dji-sdk/Cloud-API-Demo-Web
安装依赖,启动前端:
npm install npm
run serve
四、成为大疆开发者
官方链接:https://developer.dji.com/
五、飞机注册上云
前端起来之后:默认地址:http://ip:8080
登录进来之后可以看到两个账号,只看pilot账号就行,在无人机控制器上登录时,用这个pilot账号登录
1.打开 pilot 2,进入主页面,点击云服务进入。
2.选择右下角的开放平台。
3.输入前端访问地址(前端默认地址:http://ip:8080/pilot-login,此处“ip”需要替换为用户实际使用的ip地址。),点击右上角的“连接”按钮进入。
4.账户名:pilot,密码:pilot123,点击”Login“按钮登录。
5.如果主页面显示 Connected,说明已经登录成功,遥控器已经连接上 emqx 服务器,并且开始推送数据。现在demo 就已经跑起来了,你可以点击遥控器上的返回按钮返回主页面了,只要不点击右上角的** Log Out **按钮,你就仍然处于登录状态。
6.你已经可以在主页面看到工作空间的信息了,只要字体是深黑色,说明你依旧处于登录状态,遥控器以及飞机的数据会持续的推送中。如果想要退出工作空间,只需要再次点击进入,然后点击右上角的退出按钮就可以退出了,遥控器和飞机就不会再推送数据了。
六、绑定飞机
前提:打开无人机和控制器,链接好,如果没有红框内的内容,在无人机控制器上重新登录第三方平台(重复上面第五步)
绑定之后就可以在平台看到无人机,要看地图(地图中心默认是大疆总部,缩放下可以验证无人机是否在实际位置),需要去高德申请开发者
七、无人机状态查看
无人机登录到云上之后状态通过MQTT传输,可以下载一个工具查看:下载
新增订阅信息,获取设备状态,你也可以订阅其他的,按需添加,文档链接
thing/product/{device_sn}/osd
thing/product/{device_sn}/state
其中{device_sn} 表示该物模型属性的所属设备的 SN 。这个图片里面的Remote Control Sn 或 Aircraft Sn
无人机控制器上面成功登录之后, 在这里就可以收到消息,消息字段内容含义,这里看
八、直播流查看
博主自己搭建了一个GB28181视频平台,然后注册到国标平台的,平台搭建教程
后端配置文件修改:
前端修改:
视频查看: