Modbus_TCP网关与组态王连接方法

2023-12-13 15:18

本文主要是介绍Modbus_TCP网关与组态王连接方法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、概述

1、SC-NEM24型Modbus网关是霜蝉科技推出的一款实现Modbus TCP网口与RS232或RS485 接口Modbus RTU/ASCII之间数据转换的设备,同时具备通用串口服务器和霜蝉云功能。方便客户使用,支持端子电源供电和电源座5-48V供电。搭载ARM 处理器,功耗低,速度快,稳定性高。

内部集成了TCP/IP 协议栈,利用它可以轻松完成嵌入式设备的网络功能, 节省人力物力和开发时间。

本系列产品已经经过严格考验,在新能源、公路、大型公司网络以及Modbus远程抄表等组建的复杂网络环境中均有成功应用。

1-1.jpg

二、硬件准备

1、SC-NEM24系列网关模块

2、电脑

3、网线

4、交换机(连接多台SC-NEM24时需要用到)

三、软件准备

1、组态王6.5及以上版本均可,本文采用7.5SP2进行演示

四、硬件连接图

4-1.png

五、建立工程项目

双击桌面上生成的“kingView”图标

如图:

5-1.png

1、点击 菜单栏上的“新建”,如图:

5-2.png

2、点击“下一步”

5-3.png

3、点击“浏览”选择存放工程的目录,点击“下一步”

如图:

5-4.png

4、工程名称填写Modbus_TCP,点击“完成”

5-5.png

5、选择“是”,把新建工程做为当前工程

5-6.png

6、选择“开发”进入项目开发界面

5-7.png

7、因为软件是免费版的,只能使用2小时,就要重新打开软件,选择演示模式,确定

5-8.png

8、点击“确定”

5-9.png

六、建立KVCOM虚拟设备

1、点击左侧的“设备”,然后双击右侧的“新建”

如图:

6-1.png

2、在弹出的对话框选择,设备驱动—>PLC—>莫迪康—>ModbusTCP—>TCP,选择别的也是可以的,这里以此为例,然后点击“下一步”。

如图:

6-2.png

3、根据需要更改名称,这里保持默认,下一步

如图:

6-3.png

4、点“下一步”按钮,选择串口号,这里选择COM3

如图:

6-4.png

5、点“下一步”按钮,设置SC-NEM24网关模块的IP地址和端口号,模块出厂默认为自动获取IP地址,请以实际地址为准,这里地址为192.168.0.104,端口号为502,串口地址为1,超时时为5秒,设置如下图,

如图:

6-5.png

6、保持默认,点击“下一步“

6-6.png

7、点击“完成“

6-7.png

8、回到主界面,可以看到生成了刚刚建立的设备

如图:

6-8.png

 

七、建立变量

1、首先点击左侧的“数据词典”,然后双击右侧的“新建”

如图:

7-1.png

2、在弹出的对话框设置变量参数,这里只作为示例,根据需要更改参数,这里的设置为影响着组态王下发的数据命令

       变量名:NEM24_TCP

       变量类型:I/O整数

       连接设备:选择之前建立的 “新IO设备”

       寄存器:40001 (对应Modbus功能码为03H,起始地址为1)

       数据类型:SHORT

       读写属性:读写

       采集频率:采集的间隔时间,默认1000ms

       然后点击“确定“

7-2.png

3、然后就会建立好“NEM24_TCP”变量

7-3.png

 

八、设计界面

1、点击左侧的“画面”,然后双击右侧的“新建”

如图:

8-1.png

2、在弹出的对话“画面属性”填写信息

画面名称:TCP_HMI

然后点击“确定”

如图:

8-2.png

3、点击确定后,就会出现画面

点击“工具箱”的“T”,然后在画布上分别写上“变频器频率:”和“#####”

如图:

8-3.png

九.画面关联变量

1、双击“#####”,在弹出的对话框设置,点击“模拟值输出”

如图:

9-1.png

2、在弹出的对话框,点击“?”

如图:

9-2.png

3、在弹出的对话框,点击local,再选择之前建立的变量“NEM24_TCP”,然后点击“确定”

如图:

9-3.png

4、点击“确定”

9-4.png

5、确定之后,我们已经把“#####”,跟变量“NEM24_TCP”关联好了

9-5.png

6、选择菜单栏的“文件—>全部存”

9-6.png

十、运行组态王画面对接MODBUS网关

1、选择菜单栏的“文件—>切换到View”

10-1.png

2、点击“确定”

如图:

8-2.png

3、点击“确定”

10-3.png

4、然后会弹出“运行系统“窗口,点击“画面”,选择“打开”

如图:

10-4.png

5、弹出的对话框中,打开画面,选择之前建立的TCP_HMI画面,点击“确定”

如图:

10-5.png

6、出现了采集画面

如图:

10-6.png

7、采用SC-WN Config工具配置好SC-NEM24网关参数,给设备上电进入通信模式,连接到组态软件

10-7.png

8、如果我们用串口工具模拟给SC-NE24网关的串口回应Modbus-RTU数据01 03 02 02 01 78 E4,组态王就会解析出相应的值并显示在画面上,到此组态王通过SC-NEM24网关采集串口设备数据并显示的目的已完成。

如图:

10-8.png

这篇关于Modbus_TCP网关与组态王连接方法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/488944

相关文章

Python中提取文件名扩展名的多种方法实现

《Python中提取文件名扩展名的多种方法实现》在Python编程中,经常会遇到需要从文件名中提取扩展名的场景,Python提供了多种方法来实现这一功能,不同方法适用于不同的场景和需求,包括os.pa... 目录技术背景实现步骤方法一:使用os.path.splitext方法二:使用pathlib模块方法三

Python打印对象所有属性和值的方法小结

《Python打印对象所有属性和值的方法小结》在Python开发过程中,调试代码时经常需要查看对象的当前状态,也就是对象的所有属性和对应的值,然而,Python并没有像PHP的print_r那样直接提... 目录python中打印对象所有属性和值的方法实现步骤1. 使用vars()和pprint()2. 使

CSS实现元素撑满剩余空间的五种方法

《CSS实现元素撑满剩余空间的五种方法》在日常开发中,我们经常需要让某个元素占据容器的剩余空间,本文将介绍5种不同的方法来实现这个需求,并分析各种方法的优缺点,感兴趣的朋友一起看看吧... css实现元素撑满剩余空间的5种方法 在日常开发中,我们经常需要让某个元素占据容器的剩余空间。这是一个常见的布局需求

Python常用命令提示符使用方法详解

《Python常用命令提示符使用方法详解》在学习python的过程中,我们需要用到命令提示符(CMD)进行环境的配置,:本文主要介绍Python常用命令提示符使用方法的相关资料,文中通过代码介绍的... 目录一、python环境基础命令【Windows】1、检查Python是否安装2、 查看Python的安

Maven 配置中的 <mirror>绕过 HTTP 阻断机制的方法

《Maven配置中的<mirror>绕过HTTP阻断机制的方法》:本文主要介绍Maven配置中的<mirror>绕过HTTP阻断机制的方法,本文给大家分享问题原因及解决方案,感兴趣的朋友一... 目录一、问题场景:升级 Maven 后构建失败二、解决方案:通过 <mirror> 配置覆盖默认行为1. 配置示

SpringBoot排查和解决JSON解析错误(400 Bad Request)的方法

《SpringBoot排查和解决JSON解析错误(400BadRequest)的方法》在开发SpringBootRESTfulAPI时,客户端与服务端的数据交互通常使用JSON格式,然而,JSON... 目录问题背景1. 问题描述2. 错误分析解决方案1. 手动重新输入jsON2. 使用工具清理JSON3.

使用jenv工具管理多个JDK版本的方法步骤

《使用jenv工具管理多个JDK版本的方法步骤》jenv是一个开源的Java环境管理工具,旨在帮助开发者在同一台机器上轻松管理和切换多个Java版本,:本文主要介绍使用jenv工具管理多个JD... 目录一、jenv到底是干啥的?二、jenv的核心功能(一)管理多个Java版本(二)支持插件扩展(三)环境隔

Java中Map.Entry()含义及方法使用代码

《Java中Map.Entry()含义及方法使用代码》:本文主要介绍Java中Map.Entry()含义及方法使用的相关资料,Map.Entry是Java中Map的静态内部接口,用于表示键值对,其... 目录前言 Map.Entry作用核心方法常见使用场景1. 遍历 Map 的所有键值对2. 直接修改 Ma

Mybatis Plus Join使用方法示例详解

《MybatisPlusJoin使用方法示例详解》:本文主要介绍MybatisPlusJoin使用方法示例详解,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,... 目录1、pom文件2、yaml配置文件3、分页插件4、示例代码:5、测试代码6、和PageHelper结合6

Java中实现线程的创建和启动的方法

《Java中实现线程的创建和启动的方法》在Java中,实现线程的创建和启动是两个不同但紧密相关的概念,理解为什么要启动线程(调用start()方法)而非直接调用run()方法,是掌握多线程编程的关键,... 目录1. 线程的生命周期2. start() vs run() 的本质区别3. 为什么必须通过 st