EG网关串口连接威纶通触摸屏应用案例

2023-12-08 01:44

本文主要是介绍EG网关串口连接威纶通触摸屏应用案例,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

EG网关串口连接威纶通触摸屏应用案例

威纶通触摸屏广泛应于工业控制领域,是一款性能高,运行稳定的人机交互设备。此次我们要把威纶通的触摸屏通过Modbus-RTU协议连接EG系列网关,实现电脑Web页面和手机APP对威纶通触摸屏的远程数据采集和读取。本案例使用的是威纶通MT8101iE触摸屏。

一、 准备工作

1.1 我们需准备如下物品
  1. 威纶通MT8101iE触摸屏一台(或电脑仿真运行)。
  2. USB转232数据线一条(如果电脑有串口可以免去此线)。
  3. EG系列网关一台。天线和电源适配器(以下用EG20网关作为实例)。
  4. SIM卡一张,有流量,大卡(移动联通电信)。
  5. DP9针母头一个。
  6. 联网电脑一台。
  7. 电工工具、导线若干。

物料准备如下;

1.2 EG系列网关准备工作

我们需要对网关(其他EG系列网关类似,以下均以EG20网关来介绍)连接天线、插上SIM卡(移动/联通/电信卡,大卡)或者使用能够上网的网线插入EG20的WAN口、连接12V或24V的电源适配器,使网关能够成功登录到平台。

1.3 触摸屏准备工作

触摸屏连接24VDC电源,准备一颗9针串口头,用一个双绞线分别焊接的6和9引脚(威纶通触摸屏说明书有介绍,6和9引脚为485通讯口,其他型号如有变化,以威纶通说明书为准)。

将触摸屏接好485通讯线,连接到EG系列网关端子上,触摸屏串口引脚9对应EG20网关的485A端子,引脚6对应EG20网关的485B端子。如下图的所示。

接口

PIN

引脚定义

COM2

1

RS485B

2

RS485A

COM3

6

RS485B

9

RS485A

  • 二、触摸屏从站创建

第一步,新建一个威纶通MT8071lE/MT8101iE(800×480)工程,在弹出的窗口中选择“新增”按钮,在“PLC类型”中选择“MODBUS IDA”中的“Server”选项。设置MODBUS Server串口参数、站号,如下图。设置完成后点击确定保存,此时我们的MODBUS Server从站设备建立完成。

第二步,在空白窗口中新建6个数据名称(实时1、实时2、实时3、实时4,读写1和读写2),然后新建6个数值显示单元,分别为数值显示单元连接LW0、LW1、LW2、LW3、LW9和LW10变量,如下图。

  威纶通屏内部寄存器空间与Modbus寄存器对应关系如下图:

寄存器说明1:RW0对应Modbus寄存器410000(读写寄存器,4为保存寄存器标志,平台只需写10000,寄存器类型为保持寄存器),同时RW0也可对应Modbus寄存器310000(输入寄存器,3为只读寄存器标志,平台寄存器地址只需写10000,寄存器类型为输入寄存器)

寄存器说明2:LW0对应Modbus寄存器400001(读写寄存器,4为保存寄存器标志,平台只需写1,寄存器类型为保持寄存器),同时LW0也可对应Modbus寄存器300001(只读寄存器,3为只读寄存器标志,平台寄存器地址只需写1即可,寄存器类型为输入寄存器)

寄存器说明3:LB0对应Modbus寄存器100001(读写寄存器,1为离散输入标志,平台只需写1,寄存器类型为离散输入),同时LW0也可对应Modbus寄存器000001(只读寄存器,0为线圈标志,平台寄存器地址只需写1即可,寄存器类型为线圈)。

此时触摸屏的设置全部完成,保存工程选择下载程序到触摸屏或在电脑上在线仿真程序。接下来就是连接设置EG20网关和设置EMCP平台了。

三、EMCP平台设置

在对EMCP平台进行设置之前,首先确认EG20网关和仪表的RS-485线是否连接无误。

用管理员账号登录EMCP平台www.lfemcp.com (建议使用360浏览器极速模式、谷歌浏览器(Google Chrome)或者支持Chromium内核的浏览器),对EMCP云平台进行设置。登录EMCP后首先进入设备列表显示页面,因为我们未创建任何设备,所以是一个空页面。

3.1 新增EG设备

步骤:点击【后台管理】(只有管理账号才有此权限)→【设备中心】→【EG设备管理】→【+新增】→填写设备信息→点击【保存】。其中,【设备名称】必填,其余选项均可不填。

3.2 远程配置网关

远程配置最主要两个地方需要配置,一是配置网关485通讯参数,二是在平台上创建触摸屏的设备驱动,下面分步骤对此功能进行讲解。注:网关只有在线后才可以进行远程配置

3.2.1绑定模块

点击【保存并下一步】进入【②:网关、驱动管理】→直接填写【SN编号】和【验证码】→点击【确定】即可,【备注】选填。

SN和验证码在网关的机壳标签上,SN为12位纯阿拉伯数字,验证码为6位纯大写英文字母。【备注】可以根据需求填写,编辑完成后点击【确定】。

此时在“网关基本信息中”可以看到绑定的网关是否连接到平台。(成功登录平台可以看到“在线”绿色字样,如果不成功则显示“离线”灰色字样,此时请检查网络或网络信号或重启设备)

3.2.2 通讯参数设置

我们要使用RS-485和威纶通触摸屏进行通讯,所以我们要设置EG20网关的RS-485口通讯参数。

步骤:点击【通讯口设置】→选择【RS485设置】→在弹出窗口中填写【波特率】、【数据位】、【数据校验】、【停止位】→点击【保存】。

3.2.3创建设备驱动

在通讯参数设置完成后,点击界面中央的【添加驱动】→填写设备驱动信息→【保存】。或者点击【+新增】也可以进行添加驱动的操作。

基本配置介绍:

【通讯口】:在下拉选项中选择RS485。

【通讯口配置】:此按钮可设置通讯口参数,和之前的步骤设置相同,如果之前设置过,则不需要再次点击此项。

【驱动名称】:必填项,自定义即可。

【品牌】、【型号】:必填项,如图所示,分别选择“通用ModBus设备”和“Modbus RTU”。

【设备地址】:必填项,为网关所连设备的Modbus从站地址(范围1-255),此地址必须和触摸屏设置的“设备地址”一致,所以图中设置为1。

高级配置介绍:

【最小采集时间】:是网关采集设备数据的时间间隔,单位:ms。如设置1000ms,即网关1s采集一次设备数据。

【通讯等待时间】:网关接收通讯数据等待时间。可根据需要进行调整,默认1000ms。

【16位整型】、【32位整型】、【32位浮点型】:是指对应数据类型的解码顺序。如果厂家给的表格没有标明,建议不要进行修改,直接选择默认即可。

【分块采集方式】:0— 按最大长度分块:采集分块按最大块长处理, 对地址不连续但地址相近的多个分块,分为一块一次性读取,以优化采集效率;1— 按连续地址分块:采集分块按地址连续性处理,对地址不连续的多个分块, 每次只采集连续地址,不做优化处理。直接选择默认即可。

【4区16位写功能码】:写4区单字时功能码的选择。直接选择默认即可。

3.3添加变量

步骤:点击【步骤③:变量管理】→【+添加变量】→填写变量信息→【保存】。

【仪表、PLC】:选择刚才创建的“威纶通触摸屏”驱动即可。

【变量名称】:自定义即可,必填项。

【单位】:自定义即可,选填项。在列表展示时,变量会带上单位展示。

【寄存器类型】:为模块读取设备MODBUS寄存区的标志符。具体地址可参考第二部分的寄存器说明。

【寄存器地址】:地址填写时不带寄存区标志符。例如:触摸屏中创建的变量“实时1”对应的地址为40001,则【寄存器类型】选“保持寄存器(4x)”,【寄存器地址】写“1”即可。

【读写方式】:可选择变量的读写方式,根据需求修改。注意离散输入和输入寄存器不能选择“读写”。

【数据类型】:根据需要选填即可。

点击高级配置有如下显示:

【小数位数】:根据需要选填即可。

【死区设置】:根据需要填写即可。更详细的说明请参考后面的“?”帮助。

【采集公式】【写入公式】:根据需要填写即可。更详细的说明请参考后面的“?”帮助。

【状态列表】:可将数值直接与文本映射。如值为“10”,映射字段为“设备故障状态”,则当采集到变量的值为“10”时,会直接在设备监控和历史报表中显示“设备故障状态”。

添加完成后变量管理如下图所示,此时可以点击【数据调试】按钮检查数据是否正确,减少切换前台看数据的次数,同时可以点击右上方的【预览】,快速进入前台监控界面进行查看。

3.4报警信息设置

可以根据需要给变量设置报警,当产生报警时,会在电脑网页端进行报警展示,在手机APP和微信进行报警推送。设置步骤:点击需要报警的变量后面的【报警】→【新增】→填写报警信息与条件→【确定】。如下图所示:

3.5历史报表管理

创建完变量后可以点击“④历史报表管理”根据自己的需求创建历史报表。【历史报表】可以满足不同的应用场景下,来记录历史数据,【历史曲线】是根据报表生成的曲线,方便客户以曲线形式查看变量变化趋势。如下图界面所示:

周期存储:按照固定时间间隔,定时对数据存储记录。

条件存储:当某一变量到达一定条件,对部分数据进行“间隔存储”或“单次存储”。

变化存储:当某一变量变化超出一定范围后(高低限),对部分数据进行单次记录(如:某一数据报警后对关联数据进行记录)。

3.6 画面组态

点击【⑤组态管理】即可进入组态管理界面,此处可以设置数据监控中的展示方式(组态展示或列表展示,默认为组态展示)。可以在此处选择使用组态展示形式来展示对应数据规则。

如下图界面所示:

点击界面中间的组态界面列表后方的【编辑】项,进入编辑页面。通过组态编辑页面我们可以任意绘制图片、文字、数显框、按钮、指示灯、管道、设备等控件,详细功能请参考《EG设备组态编辑使用说明》。

四、实验效果

触摸屏显示效果:

用户登录EMCP平台(www.lfemcp.com),点击”威纶通触摸屏“设备的图片或设备名称进入设备即可查看、修改相关数据。

  • 五、其他注意事项

5.1如平台无法读取触摸屏的数据的原因

1,威纶通触摸屏的Modbus从站没有创建成功。此时我们需要通过Modscan32主站软件对触摸屏进行通讯,如果无法读取触摸屏的数据那么说明触摸屏的Modbus从站没有创建成功。

2,通讯线接线错误。

3,数据创建失败,检查数据规则中所创建的设备是否正确。

5.2如何实现触摸屏PLC数据内部寄存器的映射

如果要将PLC的数据经触摸屏上传到EMCP平台,如果只是数据实时采集而不向PLC写入,那么我们可以通过触摸屏编辑软件中的“资料传送”(元件->资料传送),打开如下图;

如果需要通过平台向PLC写入数据,那么通过上面的资料传送就无法满足了,我们可以使用威纶通触摸屏的宏指令功能实现触摸屏寄存器和PLC寄存器的双向映射。(注意:如需双向映射,那么该寄存器就不要再进行上面的资料传送了),宏指令编辑可点击菜单栏中的“工具->宏指令”新建一个宏指令,编辑内容如下。

编程代码如下:
macro_command main()

int a1,a2,a3  //创建a1,a2,a3临时中间变量

GetData(a1, "Local HMI", RW, 10, 1)   //将RW10值付给a1。

GetData(a2, "Siemens S7-200 PPI", VW, 1000, 1)  //将PLC中的VW1000值付给a2。

GetData(a3, "Local HMI", RW, 20, 1)  //RW20为中间寄存器,起到数据中间传送作用。

if a1<>a3 then   //如果a1不等于a3(即RW10不等于RW20)那么执行下面两行的指令操作 。

SetData(a1, "Siemens S7-200 PPI", VW, 1000,1 )  //将a1的值(即RW10)付给VW1000

SetData(a1, "Local HMI", RW, 20, 1)  //将将a1的值(即RW10)付给RW20(保存RW10的值已便于下次比较)。

else  //如果RW10的值主动发送改变(手写或平台写入后)

SetData(a2, "Local HMI", RW, 10, 1)  //将VW1000付给RW10

SetData(a2, "Local HMI", RW, 20, 1)  //将VW1000付给RW20(保存RW10的值已便于下次比较)。

end if

GetData(a1, "Local HMI", RW, 11, 1)

GetData(a2, "Siemens S7-200 PPI", VW, 1002, 1)

GetData(a3, "Local HMI", RW, 21, 1)

if a1<>a3 then

SetData(a1, "Siemens S7-200 PPI", VW, 1002, 1)

SetData(a1, "Local HMI", RW, 21, 1)

else

SetData(a2, "Local HMI", RW, 11, 1)

SetData(a2, "Local HMI", RW, 21, 1)

end if

end macro_command

这篇关于EG网关串口连接威纶通触摸屏应用案例的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

Python结合PyWebView库打造跨平台桌面应用

《Python结合PyWebView库打造跨平台桌面应用》随着Web技术的发展,将HTML/CSS/JavaScript与Python结合构建桌面应用成为可能,本文将系统讲解如何使用PyWebView... 目录一、技术原理与优势分析1.1 架构原理1.2 核心优势二、开发环境搭建2.1 安装依赖2.2 验

Java字符串操作技巧之语法、示例与应用场景分析

《Java字符串操作技巧之语法、示例与应用场景分析》在Java算法题和日常开发中,字符串处理是必备的核心技能,本文全面梳理Java中字符串的常用操作语法,结合代码示例、应用场景和避坑指南,可快速掌握字... 目录引言1. 基础操作1.1 创建字符串1.2 获取长度1.3 访问字符2. 字符串处理2.1 子字

SpringShell命令行之交互式Shell应用开发方式

《SpringShell命令行之交互式Shell应用开发方式》本文将深入探讨SpringShell的核心特性、实现方式及应用场景,帮助开发者掌握这一强大工具,具有很好的参考价值,希望对大家有所帮助,如... 目录引言一、Spring Shell概述二、创建命令类三、命令参数处理四、命令分组与帮助系统五、自定

SpringBoot应用中出现的Full GC问题的场景与解决

《SpringBoot应用中出现的FullGC问题的场景与解决》这篇文章主要为大家详细介绍了SpringBoot应用中出现的FullGC问题的场景与解决方法,文中的示例代码讲解详细,感兴趣的小伙伴可... 目录Full GC的原理与触发条件原理触发条件对Spring Boot应用的影响示例代码优化建议结论F

MySQL 分区与分库分表策略应用小结

《MySQL分区与分库分表策略应用小结》在大数据量、复杂查询和高并发的应用场景下,单一数据库往往难以满足性能和扩展性的要求,本文将详细介绍这两种策略的基本概念、实现方法及优缺点,并通过实际案例展示如... 目录mysql 分区与分库分表策略1. 数据库水平拆分的背景2. MySQL 分区策略2.1 分区概念

Python中使用正则表达式精准匹配IP地址的案例

《Python中使用正则表达式精准匹配IP地址的案例》Python的正则表达式(re模块)是完成这个任务的利器,但你知道怎么写才能准确匹配各种合法的IP地址吗,今天我们就来详细探讨这个问题,感兴趣的朋... 目录为什么需要IP正则表达式?IP地址的基本结构基础正则表达式写法精确匹配0-255的数字验证IP地

MySQL高级查询之JOIN、子查询、窗口函数实际案例

《MySQL高级查询之JOIN、子查询、窗口函数实际案例》:本文主要介绍MySQL高级查询之JOIN、子查询、窗口函数实际案例的相关资料,JOIN用于多表关联查询,子查询用于数据筛选和过滤,窗口函... 目录前言1. JOIN(连接查询)1.1 内连接(INNER JOIN)1.2 左连接(LEFT JOI

Spring Shell 命令行实现交互式Shell应用开发

《SpringShell命令行实现交互式Shell应用开发》本文主要介绍了SpringShell命令行实现交互式Shell应用开发,能够帮助开发者快速构建功能丰富的命令行应用程序,具有一定的参考价... 目录引言一、Spring Shell概述二、创建命令类三、命令参数处理四、命令分组与帮助系统五、自定义S

MySQL中的交叉连接、自然连接和内连接查询详解

《MySQL中的交叉连接、自然连接和内连接查询详解》:本文主要介绍MySQL中的交叉连接、自然连接和内连接查询,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、引入二、交php叉连接(cross join)三、自然连接(naturalandroid join)四

python连接本地SQL server详细图文教程

《python连接本地SQLserver详细图文教程》在数据分析领域,经常需要从数据库中获取数据进行分析和处理,下面:本文主要介绍python连接本地SQLserver的相关资料,文中通过代码... 目录一.设置本地账号1.新建用户2.开启双重验证3,开启TCP/IP本地服务二js.python连接实例1.