1.概述

ZLAN5143D 是一款专门为工业环境设计的RS485设备数据采集器/物联网网关,兼具串口服务器、Modbus网关、MQTT网关、RS485转JSON等多种功能于一体。如图 1所示

图 1 ZLAN5143D

Modbus TCP转Modbus RTU原理:

  Modbus TCP和MODBUS RTU之间协议转换转换原理以一个实际例子来说明:比如一个RTU的写寄存器命令由用户RTU设备发出,其命令内容为:01 06 00 01 00 01 19 CA,该命令并被联网模块的485线接收后,转换为MODBUS TCP格式的命令,其内容变为:00 00 00 00 00 06 01 06 00 01 00 01,并发送给与它建立TCP连接的MODBUS TCP设备。其中第一个06表示后续的字节数为06个,并且少了最后的CRC校验19 CA,因为TCP不需要CRC校验。剩余的部分01 06 00 01 00 01都是直接拷贝的。这就是说MODBUS的地址、功能码、寄存器都可以透明地在RTU和TCP之间传输。。

2.设备端

2.1进入ZLVIRCOM配置设备参数

图 2 配置设备参数图

1.IP地址配置成上位机同一个网段,例如安装上位机软件的上位机ip地址为192.168.1.222,那可以将我们设备配置成192.168.1.188。

2.设备在作为MODBUS tcp从站的时候,端口号默认为502。

3.设备在作为MODBUS tcp从站的时候,设备选择为tcp服务器模式。

4.转换协议一般为两种,当作为透传模式使用的时候,直接选择无,当需要使用MODBUS tcp转MODBUS rtu功能的时候,请选择MODBUS TCP协议

5.串口参数需要和下位机设备保持一致,例如电表为115200,8,无,1,我们设备也要设置的一样。。

2.2更多高级选项页面

图3 更多高级选项图

1.存储型MODBUS网关:默认,一般选择这个即可,设备将具有存储型功能,记录上位机软件下发的指令,提前下发指令缓存在设备内部,加快读取数据。

2.非存储型MODBUS网关:设备将不具有存储型功能,但是支持多主机和总线冲突检测。

3.设备为客户端做从站:当采集的是MODBUS tcp的从站,而主机为MODBUS rtu的上位机软件时,选择这个选项。

4.简单MODBUS tcp转rtu:简单的MODBUS tcp转MODBUS rtu,不支持多主机和存储型功能。

5.可配置MODBUS 网关:无需选择,指的是ZLMB网关功能。

3.MCGS端

MCGS是北京昆仑通态自动化软件科技有限公司研发的一套基于Windows平台的,用于快速构造和生成上位机监控系统的组态软件系统,主要完成现场数据的采集与监测、前端数据的处理与控制,可运行于Microsoft Windows 95/98/Me/NT/2000/xp等操作系统。

3.1设备组态:设备窗口

图4 :设备窗口

在设备窗口页面新建通用TCP/IP父设备----------标准MODBUS TCP子设备。

双击通用TCP/IP父设备,进入下图配置页面。

图5 :设备窗口

网络类型:选择1-TCP

服务器/客户设备:选择客户端模式

本机IP地址:就是MCGS所在上位机的ip地址

远程IP地址和远程端口号:就是我们设备的IP地址和端口

3.2设备属性设置

图6 :设备窗口

设备地址:就是需要被采集的MODBUS rtu设备的站地址,这边默认改成1,其他的可以不修改

4.通讯测试

4.1MODBUS slave模拟从站

图7 :connection setup

打开MODBUS slave从站模拟软件,点击connection 配置setup,选择连接设备的串口号,串口参数和我们设备一致,然后再点击setup-slave definition,设置从站地址为1,功能码为3,寄存器地址从0-5。修改寄存器地址0-10的值分别为1,2.....5。点击保存确认.

图8 :setup-slave definition

4.2mcgs测试

进入设备属性配置,点击内部属性,设置设备内部属性,增加通道,如图所示

图9 :setup-slave definition

最后点击设备调试,可以看到如下现象,代表目前通讯是正常的:

1.通讯状态:通道值为0,代表通讯是正常状态;

2.通道类型读写4WU:代表为03功能码,4000X寄存器,数据位1,2,3,45.和MODBUSslave的数据一直,代表读数据正常。

3.通讯时间:当数值极大时,代表返回超时,MODBUS rtu设备没有响应

图10 :结果展示

基于Modbus TCP的MCGS上位机软件教程的更多相关文章

  1. C++ MFC实现基于RFID读写器的上位机软件

    C++ MFC实现基于RFID读写器的上位机软件 该博客涉及的完整工程托管在https://github.com/Wsine/UpperMonitor,觉得好请给个Star (/▽\=) 运行和测试环 ...

  2. 【应用笔记】【AN001】VC#开发环境下基于以太网的4-20mA电流采集(基于modbus tcp 协议)

    版本:第一版 作者:毛鹏 杨帅 日期:20151108 简介 4-20mA电流环具有广泛的应用前景,在许多行业中都发挥着重要作用.本文主要介绍了以太网接口的4-20mA电流采集模块在VC#环境下进行温 ...

  3. 【安富莱原创开源应用第1期】花式玩转网络摄像头之TCP上位机软件实现,高端大气上档次,速度2MB/S,华丽丽的界面效果

    说明:1.例子是两年前做的,一直没有顾上整理出来,今天特地整理出来,开源出来给大家玩.2.上位机是emWin模拟器开发的,大家估计很难猜到,所以你会emWin话的,就可以轻松制作上位机.做些通信和控制 ...

  4. [自娱自乐] 4、超声波测距模块DIY笔记(四)——终结篇·基于C#上位机软件开发

    前言 上一节我们已经基本上把超声波硬件的发射和接收模块全部做好了,接下来我们着手开发一个软硬结合的基于C#的平面定位软件! 目录 一.整体思路 二.效果提前展示 2-1.软件部分展示 2-2.硬件部分 ...

  5. 开源串口 Ymodem 上位机软件

    概述 上位机使用Qt开发,计划整合多个工具为一体,用作以后的调试工具. 当前完成功能: 1.串口调试 支持hex和ascii 码发送,接受. 支持自动添加回车换行. 支持定时发送,最短间隔100ms, ...

  6. 【安富莱专题教程第6期】SEGGER的J-Scope波形上位机软件,RTT模式波形上传速度可狂飙到500KB/S左右

    说明:1.在实际项目中,很多时候,我们需要将传感器或者ADC的数值以波形的形式显示.通常的解决办法是用串口上位机,USB接口上位机或者MDK的逻辑分析仪功能,使用这三种方式都比较繁琐.本期专题为大家讲 ...

  7. 【安富莱专题教程第4期】SEGGER的J-Scope波形上位机软件,HSS模式简单易用,无需额外资源,也不需要写目标板代码

    说明:1.在实际项目中,很多时候,我们需要将传感器或者ADC的数值以波形的形式显示.通常的解决办法是用串口上位机,USB接口上位机或者MDK的逻辑分析仪功能,使用这三种方式都比较繁琐.本期专题为大家讲 ...

  8. 1-STM32物联网开发WIFI(ESP8266)+GPRS(Air202)系统方案安全篇(来看一下怎么样监听网络数据,监听电脑上位机软件的数据)

    首先安装网络监听软件 运行这个软件 这个软件安装到电脑上,默认是监听咱电脑上的网络通信 咱们先监听电脑的软件的网络通信数据,然后再说怎么监听Wi-Fi和APP的软件的网络通信数据 咱就监听咱基础篇的 ...

  9. 采用VSPD、ModbusTool模拟串口、MODBUS TCP设备进行Python采集软件开发

    版权声明:本文为博主原创文章,欢迎转载,并请注明出处.联系方式:460356155@qq.com 不少仪器/设备都提供了数据采集的接口,其中不少是串口或网络的MODBUS/TCP协议. 串口是比较简单 ...

  10. 9-ESP8266 SDK开发基础入门篇--编写串口上位机软件

    https://www.cnblogs.com/yangfengwu/p/11087613.html 页面修改成这样子             现在看串口发送数据 点击点亮 发送0xaa 0x55 0 ...

随机推荐

  1. MySQL 修复损坏表

    修复MySQL损坏表的简单步骤,不一定适用任意情况下的表损坏的问题,留爪. 简单3步曲: # 用`root`用户登录MySQL # 这里可能需要输入密码 mysql -uroot -p # 使用指定数 ...

  2. Java实体类如何映射到json数据(驼峰映射到json中的下划线)

    Java实体类(驼峰)映射到json数据(下划线) 由于经常需要接收前端的json数据,而json数据一般都是使用下划线命名的.后端又不太建议使用map接收,所以就需要用到使用自定义类来接收(如果参数 ...

  3. Windows执行bat脚本乱码

    解决方案: 将脚本编码设置为ANSI

  4. 宽带带宽和网速的关系,为什么1m等于128kb

    带宽单位是:b(比特/位) 网速单位/文件下载上传单位:B(字节) 所以,1Mbps = 1/8Mbps = 128kb/s

  5. CSP-S 17天冲刺计划

    var code = "91461527-5e0b-458f-ae4b-db46cf2a11c8" D1~D3(树专题复习)(OK\color{green}OKOK) 树基础(OK ...

  6. <HarmonyOS第一课11>合理使用动画和转场#鸿蒙课程##鸿蒙生态#

    课程简介 <HarmonyOS第一课:合理使用动画和转场>是专为HarmonyOS开发者设计的课程,旨在教授如何在应用开发中合理运用动画和转场效果.课程首先强调动画在提升用户体验中的重要性 ...

  7. 通过Java写入数据到Excel表格

    在数据处理与管理领域,Excel 凭借其强大的功能和广泛的应用,成为了数据存储与展示的重要工具.在 Java 开发过程中,常常需要将不同类型的数据,如文本.数值.数组以及 DataTable 数据写入 ...

  8. 决策单调性DP

    决策单调性DP是一个非常重要的DP类别.在决策点随枚举点增加单调不降时,可以有效地优化复杂度. 一般而言,决策点指的是对于一个 \(f[i]\),它的值需要从另一个值j中转移,而对于所有j,令 \(f ...

  9. 使用PocketFlowSharp创建一个Human_Evaluation示例

    效果 实践 有时候AI生成的结果我们并不满意在进入下一步之前,我们需要对AI生成的结果进行人工审核,同意了才能进入下一个流程. Human_Evaluation就是人工判断的一个简单示例. inter ...

  10. C#之动态语言扩展

    DLR 在.NET Framework中,DLR2位于System.Dynamic命名空间和System.Runtime.CompilerServices命名空间的几个类中. dynamic 类型 可 ...