合宙air202连接使用MQTT连接移动OneNet教程

                        <p>本文介绍合宙模块如何使用MQTT的方式连接中国移动的OneNet平台</p><p>测试工程:&lt;Air800_202 连接OneNet 测试.bsp&gt;</p><p><img class="alignnone wp-image-2270 size-full" src="http://www.yinerda.com/wp-content/uploads/2019/05/合宙主图.png" alt="" width="602" height="470"></p><ul><li>创建产品</li></ul><p>连接:https://open.iot.10086.cn</p><p>创建产品的时候,选择MQTT协议接入</p><p><img class="alignnone wp-image-2255 size-full" src="http://www.yinerda.com/wp-content/uploads/2019/05/创建产品.png" alt="" width="1393" height="521"></p><p>&nbsp;</p><ul><li>创建数据模板</li></ul><p>数据模板就是这个设备具有属性。比如温室度或者湿度;比如开关等。</p><p><img class="alignnone wp-image-2266 size-full" src="http://www.yinerda.com/wp-content/uploads/2019/05/为产品添加数据模板模板.png" alt="" width="1190" height="413"></p><p>&nbsp;</p><p>3、添加设备</p><p><img class="alignnone wp-image-2260 size-full" src="http://www.yinerda.com/wp-content/uploads/2019/05/添加设备1.png" alt="" width="552" height="527"></p><p><img class="alignnone wp-image-2261 size-full" src="http://www.yinerda.com/wp-content/uploads/2019/05/添加设备2.png" alt="" width="1185" height="365"></p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>4、激活网络</p><p>任何操作都需要激活网络</p><p><img class="alignnone wp-image-2256 size-full" src="http://www.yinerda.com/wp-content/uploads/2019/05/获取IP.png" alt="" width="904" height="270"></p><p>&nbsp;</p><p>&nbsp;</p><p>5、MQTT连接</p><p>注意固件版本升级最新的:写文档使用的固件版本为:AirM2M_V5669_AT_S_SSL</p><p>连接的重点是3个参数要对应。</p><p><img class="alignnone wp-image-2263 size-full" src="http://www.yinerda.com/wp-content/uploads/2019/05/填写连接参数.png" alt="" width="1595" height="597"></p><p><img class="alignnone wp-image-2262 size-full" src="http://www.yinerda.com/wp-content/uploads/2019/05/填写产品参数.png" alt="" width="1409" height="434"></p><p><img class="alignnone wp-image-2258 size-full" src="http://www.yinerda.com/wp-content/uploads/2019/05/设备上线.png" alt="" width="1397" height="418"></p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><ul><li>推送数据</li></ul><p>推送数据是理解难点。必须根据有效负载组装数据。要不然云端是不识别的,如果使用MQTT.fx发送,表现的形式就是MQTT会断开。</p><p>oneNet平台要求真实的有效数据前需要加数据类型和长度,平台才能识别。</p><p>合宙的模块,可以传送hex的方式来完成这个功能。</p><p>在数据处理的时候,先把json压缩后,然后在转换成hex。长度是json压缩后的。</p><p><img class="alignnone wp-image-2268 size-full" src="http://www.yinerda.com/wp-content/uploads/2019/05/在有效数据前添加数据类型和长度.png" alt="" width="1398" height="523"></p><p><img class="alignnone wp-image-2269 size-full" src="http://www.yinerda.com/wp-content/uploads/2019/05/转换字符串为hex.png" alt="" width="1879" height="406"></p><p><img class="alignnone wp-image-2264 size-full" src="http://www.yinerda.com/wp-content/uploads/2019/05/推送数据.png" alt="" width="1400" height="687"></p><p>下面是我测试的数据模板的完整数据格式。</p><p><img class="alignnone wp-image-2265 size-full" src="http://www.yinerda.com/wp-content/uploads/2019/05/完整的数据.png" alt="" width="939" height="814"></p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><ul><li>下发数据</li></ul><p>平台下发数据,默认是下发$creq&nbsp;topic ,这个topic 不用显示定义也能收到数据。之前把数据格式设置成了hex ,所以收到的数据也是hex 字符串。自己在解析一下即可。</p><p><img class="alignnone wp-image-2267 size-full" src="http://www.yinerda.com/wp-content/uploads/2019/05/下发数据.png" alt="" width="1519" height="746"></p><p>&nbsp;</p>

上次更新 2021-01-28