前言
此教程是基于上一批教程,搭建云服务器并运行服务器,让我们的Hi3861连接上我们的服务器并传输数据。
在此之前,需要大家自己下载并配置好相关的代码,主要就是第三方MQTT代码,这个已经有大佬弄好了,我们跟着做就行了,轮子不需要每个人去做,我们需要做的是拿着别人做好的轮子来生产我们想要的车子。
大家可以先去连志安老师的文章,跟着教程一步一步的移植第三方MQTT库,然后再回来跟着我的教程走。
实现思路
先跟大伙说一下我的设计思路。MQTT是属于长连接的类型,他必须隔一段时间发送心跳包给服务器保持连接,这个叫做保活时间,只有发送心跳包给服务器并得到服务器的回复报文,那么设备才能长时间连接在服务器中。
那么问题来了,这种理想情况是出现在网络一直畅通的情况下产生,但是实际生活中会存在停电啊、断网等情况,导致设备无法连接到网络,那么这个情况,我们就需要 处理了,我们的设备在连上网之后,需要设置一个断线重连的机制,要不然,当你连上网之后,网络突然断开,然后又好了,那你的设备就无法继续上报数据了,所以我们需要一个断线重连的机制。流程图如下:
那么正常的流程应该是开机启动,任务执行,开始连接WiFi,连接成功之后,再去连接服务器,连接到服务器之后,就开始订阅主题,然后就可以发布数据ÿ