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)

MThings连接移动OneNet物联网平台图1

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

MThings连接移动OneNet物联网平台

图2

MThings连接移动OneNet物联网平台

图3

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

MThings连接移动OneNet物联网平台

图4

MThings连接移动OneNet物联网平台

图5

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

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

MThings连接移动OneNet物联网平台

图6

MThings连接移动OneNet物联网平台图7

MThings连接移动OneNet物联网平台

图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)

MThings连接移动OneNet物联网平台

MThings连接移动OneNet物联网平台

图9

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

MThings连接移动OneNet物联网平台

图10

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

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

MThings连接移动OneNet物联网平台

也就是说我们连接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

MThings连接移动OneNet物联网平台

图11

MThings连接移动OneNet物联网平台

图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)

MThings连接移动OneNet物联网平台

图13

MThings连接移动OneNet物联网平台

图14

MThings连接移动OneNet物联网平台

MThings连接移动OneNet物联网平台

图15

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

MThings连接移动OneNet物联网平台

图16

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

MThings连接移动OneNet物联网平台

图17

MThings连接移动OneNet物联网平台

图18(添加采样数据流)

MThings连接移动OneNet物联网平台

图19

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

MThings连接移动OneNet物联网平台

图20

MThings连接移动OneNet物联网平台

图21

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

MThings连接移动OneNet物联网平台

图22

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

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

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

2022/5/10

本文章来源于互联网,如有侵权,请联系删除!

相关推荐: Flutter、rn、Uni-app等跨平台开发工具的分析与比较

前言 每当我们评估新技术时要问的第一个问题就是“它会给我们的业务和客户带来哪些价值?”,工程师们很容易对闪闪发光的新事物着迷,却经常会忽略这些新事物其实可能对我们的客户没有任何好处,反而只会让现有的工作流程更加复杂。 flutter最近比较热闹,毕竟是Goog…