本例程使用Air202 S5开发板实现雅鲁科技滴云DiverseCloud数据接入,使用AT指令进行TLV与JSON两种数据帧格式的MQTT发布。目标是可在平台查看到发布的数据内容。从而实现设备到云端的整个数据流程。
Tip:合宙AT指令也可实现TLV格式的数据解析,可通过AT+MQTTMODE进行ASCII到HEX的切换,并使用滴云提供的Tlv SDK包进行数据包封装即可实现数据自动解析。
流程为:登录/注册滴云平台->新建产品->新建设备->准备好开发板->配置开发板为AT指令模式->根据滴云平台提供参数与所需发布的数据进行开发板的AT指令控制->在平台查看发布的数据。
SDK github 仓库:https://github.com/DthinGroup/DiverseCloud.git
滴云物联网平台地址:https://www.dthing.net/developer/index.jsp
没有账户的可自行注册一个账户。注册完成后登陆滴云平台。
使用的开发板为合宙Air202
S5开发板,相关说明文档地址如下
链接地址:http://www.openluat.com/Product/gprs/Air202S5.html
链接地址:http://www.openluat.com/Product/gprs/Air202S5.html
登录滴云开发者控制台https://www.dthing.net/developer/index.jsp
这是刚创建好的产品,点击DTU配置来获取相应的MQTT配置参数
进入设备管理界面
进入设备列表
添加设备
添加一个设备标识为1.2.3.4的设备,发布的MQTT消息体内JSON数据“deviceTag”的值需要与此处设置的设备标识对应
设备地址是用于使用应用模板的情况下在GIS图层上定位设备使用
到此平台端的基础配置就已经完成。接下来进行开发板的相关操作。
已切换成AT版本的请忽略此步骤。
将开发板的跳帽跳至HOST模式,使用usb线连接电脑,并安装驱动。
开发板按下开机键开机后,根据软件的提示完成版本下载切换操作。
等待下载完成
完成AT版本切换后就可以使用AT指令进行开发板的控制了。
将开发板的跳帽跳至UART1模式,使用usb线连接电脑,并安装驱动。
开机后,可使用串口助手进行测试,测试时使用的波特率是9600bps 8 N 1
如下为实现ASCII数据JSON格式操作的指令,可参考Luat AT指令手册
手册地址:http://www.openluat.com/Product/file/rda8955/AirM2M%20无线模块AT命令手册V3.90.pdf
AT |
AT测试 |
OK |
|
AT+CGREG? |
查询当前GPRS注册状态 |
+CGREG: 0,1 OK |
|
AT+CGATT? |
查看当前GPRS附着状态 |
+CGATT: 1 OK |
|
AT+CSTT="CMNET" |
启动任务, 设置APN为"CMNET"(移动卡) |
AT+CSTT="CMNET" OK |
|
AT+CIICR |
激活移动场景, 获取IP地址 |
AT+CIICR OK |
|
AT+CIFSR |
查询分配的IP地址 |
AT+CIFSR 10.28.166.25 |
|
AT+MCONFIG="cellid","AAAA","BBBB" |
设置MQTT参数,AAAA\BBBB分别为滴云平台提供的账号、密码 内嵌的双引号用\22 表达 |
OK |
|
AT+MIPSTART="
47.111.26.51 ",1883 |
这里, 请填上用户自己的mqtt服务器的IP地址或域名地址, 以及端口号注: 当使用SSL链接进行数据传输时, 链接命令格式为: AT+SSLMIPSTART= |
AT+MIPSTART="47.111.26.51 ",1883 OK |
|
AT+MCONNECT=1,60 |
建立mqtt会话 |
CONNACK OK |
注:在MIPSTART返回CONNECT OK后才能发MCONNECT命令,而且要立即发,否则会被服务器踢掉。 |
AT+MPUB="dev001/v3/000/air202",2,0,"[{\22updatedTime\22:\222019-5-27
12:00:15:253\22,\22deviceTag\22:\221.2.3.4\22,\22dataTag\22:\2210\22,\22value\22:234.6,\22timestamp\22:\222019-5-27
12:00:15:253\22}]" |
发布, 消息格式缺省为ASCII格式 内嵌的双引号用\22 表达 |
OK PUBACK |
|
AT+MDISCONNECT |
模块主动发起关闭MQTT连接 |
OK |
|
AT+MIPCLOSE |
关闭TCP链接 |
OK |
|
AT+CIPSHUT |
关闭移动场景 |
OK |
|
在平台平台端若需要查看到数据,需要进行数据字典配置,以对应数据帧内的dataTag和平台UI显示的数据属性。
l
由于使用的标识码识别机制为雅鲁机制因此勾选“兼容”
l
数据解析为HEX的TLV格式解析
l
产品类别根据实际情况设置,本章发布的数据为电表数据因此选择电表
l
设备接入协议为MQTT。
l
技术参数部分用于用户对产品信息的查看不影响平台对数据的解析
这是刚创建好的产品,点击DTU配置来获取相应的MQTT配置参数
已切换成AT版本的请忽略此步骤。
将开发板的跳帽跳至HOST模式,使用usb线连接电脑,并安装驱动。
开发板按下开机键开机后,根据软件的提示完成版本下载切换操作。
等待下载完成
完成AT版本切换后就可以使用AT指令进行开发板的控制了。
将开发板的跳帽跳至UART1模式,使用usb线连接电脑,并安装驱动。
开机后,可使用串口助手进行测试,测试时使用的波特率是9600bps 8 N 1
如下为实现ASCII数据JSON格式操作的指令,可参考Luat AT指令手册
手册地址:http://www.openluat.com/Product/file/rda8955/AirM2M%20无线模块AT命令手册V3.90.pdf
AT |
AT测试 |
OK |
|
AT+CGREG? |
查询当前GPRS注册状态 |
+CGREG: 0,1 OK |
|
AT+CGATT? |
查看当前GPRS附着状态 |
+CGATT: 1 OK |
|
AT+CSTT="CMNET" |
启动任务, 设置APN为"CMNET"(移动卡) |
AT+CSTT="CMNET" OK |
|
AT+CIICR |
激活移动场景, 获取IP地址 |
AT+CIICR OK |
|
AT+CIFSR |
查询分配的IP地址 |
AT+CIFSR 10.28.166.25 |
|
AT+MCONFIG="cellid","AAAA","BBBB" |
设置MQTT参数,AAAA\BBBB分别为滴云平台提供的账号、密码 内嵌的双引号用\22 表达 |
OK |
|
AT+MIPSTART="
47.111.26.51 ",1883 |
这里, 请填上用户自己的mqtt服务器的IP地址或域名地址, 以及端口号注: 当使用SSL链接进行数据传输时, 链接命令格式为: AT+SSLMIPSTART= |
AT+MIPSTART="47.111.26.51 ",1883
OK |
|
AT+MCONNECT=1,60 |
建立mqtt会话 |
CONNACK OK |
注:在MIPSTART返回CONNECT OK后才能发MCONNECT命令,而且要立即发,否则会被服务器踢掉。 |
AT+MQTTMODE=1 |
切换消息格式为HEX格式,模块默认为ASCII模式 |
OK |
|
AT+MPUB="dev001/v3/000/air202",2,1,"AAFE02001B0202040302000100000000000001052742824BEEDDEE" |
发布HEX格式数据, 消息格式缺省为ASCII格式前面需要AT+MQTTMODE=1来进行模式转换 |
OK
PUBACK |
|
AT+MDISCONNECT |
模块主动发起关闭MQTT连接 |
OK |
|
AT+MIPCLOSE |
关闭TCP链接 |
OK |
|
AT+CIPSHUT |
关闭移动场景 |
OK |
|
在滴云平台查看数据
使用测试软件测试:用测试软件发送TAG:39(电表C相电压),小数位数为2,数值23456(实际值为使用2个小数位即234.56)
在平台查看到C相电压数据为234.56。
这个小软件在是本人编写的一个简易测试软件用来使用AT指令控制air202,懒得自己输指令的同学可以用这个软件测试。需要.NET framework 4.0以上环境支持,没有安装的同学可在微软官方下载。
下载链接: https://pan.baidu.com/s/1ie4GCl9w82yn_f0C-e7o5Q#list/path=%2F
提取码: 5m93
刚上电的模块测试流程为:
l
发送AT测试指令
l
查询注册状态图
l
查询附着状态
l
根据运营商设置APN
l
激活移动场景
l
查询IP
l
根据平台提供的MQTT参数设置MQTT参数
l
设置MQTT服务器地址及端口
l
建立MQTT连接
l
根据JSON格式及主题信息设置发布内容并发布
l
完成测试后关闭MQTT连接
l
关闭TCP连接
l
关闭移动场景
在MQTT发生断链时请查询MQTT连接状态再由设置APN重新开始
发布成功的截图
了解更多内容可以登录www.dthing.net查看
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!