我是靠谱客的博主 苗条大白,最近开发中收集的这篇文章主要介绍MThings连接移动OneNet物联网平台,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

作者JesseLiu(liujie@zzltsw.com)投稿

MThings是一款很优秀的Modbus工具类软件,几乎囊括市面上所有对Modbus协议的需求:主从站模拟、串口、网络、曲线画面、自定义数据类型等等,可以说是解决了诸多实际痛点。不管是对电气工程师还是软件开发人员都起到很大的帮助作用,对于国内有如此优秀的软件作者而感到庆幸!

最近一次更新,作者加入了“会话密钥”功能,这个功能对于那些物联网从业者简直就是画龙点睛之笔,使得MThings产生了质的飞跃。原先只是模拟串口或网络Modbus设备,这个功能使Modbus+DTU这个模式得到了可行。远程主机可通过“会话密钥”正确识别每一台由MThings模拟出的Modbus设备,利用端口复用,多线程并发等方法实现多套模拟设备的接入,给开发者带来了巨大的惊喜,再也不用购买各种DTU设备了,一台普通PC足矣。

下面进入正题,利用MThings的“会话密钥”功能连接移动OneNet平台,并遥测模拟Modbus设备。

前期准备:MThings V0.2测试版 ,OneNet平台账号

//由于0.2.2正式版的“会话密钥”暂时不支持16进制,跟作者沟通后,作者特意在测试版的“会话密钥”添加了16进制功能,在此非常感谢。

  1. 登录OneNet平台后,点击控制台,选择基础服务-多协议接入。(见图1)

图1

2. 选择Modbus,并添加产品(见图2-3)

图2

图3

3. 添加成功后,进入设备列表(图4),点击立即添加设备(图5)

图4

图5

注意:此处的DTU序列号长度最大11位,密码最大8位,可自由配置。上图我配置的序列号和密码分别是12345678901和88888888

4. 接来下就需要使用MThings连接移动OneNet云平台了。在连接云平台之前,我们需要去云平台文档中心找到“多协议接入”中设备上云的方法。见(图6-8)

图6

图7

图8

下载地址:https://open.iot.10086.cn/doc/multiprotocol/book/doc/%E8%AE%BE%E5%A4%87%E7%BB%88%E7%AB%AF%E6%8E%A5%E5%85%A5%E5%8D%8F%E8%AE%AE-MODBUS.docx

5. 获取“上线IP端口”及“登陆报文”。上线IP端口通过API获得,这里我们手动获取。首先根据文档3.3中设备接入所述。见(图9)

图9

记住这个接口地址http://api.heclouds.com/s?t=5我们去浏览器上查找一个在线HTTP接口测试工具,并通过GET方法获取IP地址和端口。(图10)

图10

这时我们已经得到了上线IP和端口:183.230.40.42:2987

此时我们还需要一个登录报文,我们继续查看官方文档

也就是说我们连接183.230.40.42:2987后需要发送11+9+12+9+11共计52个字节数据作为登录报文,才能正确连接云平台。下面就开始以16进制序列化这5段报文。

第1、2段位可以自定义。第3、4、5段必须通过云平台获取。

以下均为16进制,长度不足后方补00(在线ASSCII16进制工具ASCII字符串到16进制在线转换工具 - Coding.Tools

第1段(自定义,11字节):4D 54 68 69 6E 67 73 76 35 38 37

第2段(自定义,9字节):4A 65 73 73 65 5F 4C 69 75

第3段(12字节,上文图5,DTU号码):31 32 33 34 35 36 37 38 39 30 31 00

第4段(9字节,上文图5,DTU密码):38 38 38 38 38 38 38 38 00

第5段(11字节,见下文图11-12):35 31 34 37 30 38 00 00 00 00 00

图11

图12

最后我们把5段16进制数据首位相接,得到如下信息:4D 54 68 69 6E 67 73 76 35 38 37 4A 65 73 73 65 5F 4C 69 75 31 32 33 34 35 36 37 38 39 30 31 00 38 38 38 38 38 38 38 38 00 35 31 34 37 30 38 00 00 00 00 00

以上就是“登录报文”

6. 使用MThings连接云平台

通过以上几步操作,我们获得了上线的“IP地址端口”和“登录报文”,其中登录报文就是MThings中的“会话密钥”。整理如下:

远程地址:183.230.40.42:2987

登录报文: 4D5468696E6773763538374A657373655F4C69753132333435363738393031003838383838383838003531343730380000000000

MThings配置如下 图(13-15)

图13

图14

图15

配置完成后我们发现连接状态已经变成“已连接”此时与云平台连接已经成功,接下来添加模拟寄存器。我们添加40001开始的4个保持寄存器,并赋值。见图16

图16

此时我们需要通过云平台遥测这4个寄存器数据,也就是说让云平台给MThings下发如下Modbus协议:01 03 04 00 00 00 04 44 09 那么我们重新回到云平台,选择“数据流”见图17-19.

图17

图18(添加采样数据流)

图19

添加完毕后,我们回到MThings,勾选报文选项,看看平台是否正常下发指令,见图20-21。

图20

图21

已经成功收到来自移动OneNet平台数据。接下来,返回云平台,查看数据流.。见图22

图22

至此已经完成了MThings连接移动OneNet云平台的整个过程,设备接入云平台之后,就可以利用移动OneNet云平台开发许多很有意思的小东西。比如说APP、微信小程序读写MThings等,对于想尽快了解物联网的同学,不妨是一次很好的学习和尝试机会。

支持国产软件!国产软件雄起!

此教程由本文作者JesseLiu(liujie@zzltsw.com)无偿提供给Mthings团队

2022/5/10

最后

以上就是苗条大白为你收集整理的MThings连接移动OneNet物联网平台的全部内容,希望文章能够帮你解决MThings连接移动OneNet物联网平台所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(74)

评论列表共有 0 条评论

立即
投稿
返回
顶部