一种支持多协议PLC通信的网关系统及方法技术方案

技术编号:35192340 阅读:28 留言:0更新日期:2022-10-12 18:14
本发明专利技术提供了一种支持多协议PLC通信的方法,该方法不直接实现PLC之间的地址交换,而是通过通信协议中间件的方式,将不同协议PLC中的变量信息封装成中间协议,间接实施通信。本发明专利技术基于该方法开发了一套网关系统,使用该系统与PLC设备通过以太网的方式进行连接,可以通过较为便捷的参数配置,实现不同协议PLC之间的数据通信,满足多PLC进行协同控制的需求。满足多PLC进行协同控制的需求。满足多PLC进行协同控制的需求。

【技术实现步骤摘要】
一种支持多协议PLC通信的网关系统及方法


[0001]本专利技术涉及PLC通信领域,具体涉及一种支持多协议PLC通信的网关系统及方法。

技术介绍

[0002]PLC(可编程逻辑控制器)是一种工业控制器,因其性能强大、可靠性高、抗干扰能力强以及操作便捷等优点,被广泛的运用在现代工业自动化控制的各个领域,充当了自动化设备和自动化流水线等自动化系统的控制枢纽。
[0003]在一个完整的自动化控制系统中,单个PLC由于性能或者功能限制,可能满足不了控制需求,此时就需要多个PLC共同工作,实现协同控制。在这种场景下,PLC之间的数据交互与通信就成了需要解决的核心问题。在现有的通信方案中,以太网通信由于其通信数据量大以及通信速率高等特点,受到了工业界的青睐,如今已经成为了主流的通信方式。对于同一品牌的PLC,厂商一般都会提供基于自有以太网协议的通信方案,但涉及到不同品牌,不同协议的PLC通信时,由于PLC之间的通信协议的不一致,目前还没有一个较为简便的通信方法。

技术实现思路

[0004]针对上述技术存在的问题,本专利技术提供了一种支持多协议PLC通信的方法,该方法不直接实现PLC之间的地址交换,而是通过通信协议中间件的方式,将不同协议PLC中的变量信息封装成中间协议,间接实施通信。本专利技术基于该方法开发了一套网关系统,使用该系统与PLC设备通过以太网的方式进行连接,可以通过较为便捷的参数配置,实现不同协议PLC之间的数据通信,满足多PLC进行协同控制的需求。
[0005]本专利技术提供一种支持多协议PLC通信的网关系统,包括:PLC变量读写模块、PLC通信模块和操作配置模块;
[0006]PLC变量读写模块基于TCP协议,用于对不同通信协议PLC中的变量信息进行读取和写入,与PLC建立Socket连接;
[0007]PLC通信模块,用于实现了PLC之间的主从通信,与PLC变量读写模块进行直接耦合;
[0008]所述的PLC通信模块为Client/Server架构;
[0009]操作配置模块是基于Java和JavaScript语言进行开发,基于SpringBoot框架构建的Web应用,其中前端配置页面采用基于JavaScript语言的Vue.js框架等技术进行构建。
[0010]该系统主要使用Java语言进行开发,无论是在Linux系统或者Windows系统,都能很好的运行,拥有良好的跨平台性能。可以将该系统部署在小型工控机和Linux开发板上,将硬件系统改造成一个网关设备。PLC通信模块以OPC UA协议为基础,通过OPC UA服务器和OPC UA客户端对节点值的修改,而间接的对PLC中的变量信息进行读写和修改,实现了PLC之间的主从通信。操作配置模块中前端配置页面采用基于JavaScript语言的Vue.js框架等技术进行构建。其主要作用是方便开发人员对整个系统进行使用和配置,包括与PLC建立连
接、进行通信节点的创建与映射、启动通信服务。
[0011]本专利技术还提供一种支持多协议PLC通信的方法,包括以下步骤:
[0012]步骤一:确定PLC的型号以及IP地址,并根据现场工艺要求和PLC程序,确定需要进行通信的PLC变量地址以及变量映射关系;
[0013]步骤二:根据PLC型号,确定与PLC进行TCP通信需要用到的协议类,实例化协议类,建立socket连接;
[0014]步骤三:通信协议中间件对通信链中的PLC分别创建通信主站和通信从站,根据步骤一中确定的通信变量信息为通信主站和通信从站分别创建通信节点;
[0015]步骤四:为步骤三中创建的通信主站和通信从站添加变量映射关系,依据为步骤一中确定的变量映射关系,并确保两端映射的节点数据类型相同,输入与输出相对应。
[0016]作为优选,所述的步骤二中还包括以下子步骤:
[0017]子步骤二一:PLC变量读写模块接受配置数据,包括PLC型号和IP地址;
[0018]子步骤二二:根据PLC型号的ID,在数据库中查询对应通讯协议;
[0019]子步骤二三:根据查询到的通讯协议种类和获取到的IP地址,进行实例化;
[0020]子步骤二四:建立不同协议PLC的socket连接对象,通过连接对象中的write()和read()进行数据读写。
[0021]作为优选,所述的步骤三中还包括以下子步骤:
[0022]子步骤三一:对通信链中的一个PLC建立一个OPC UA服务器,将该PLC的通信变量信息封装成OPC UA地址空间中的节点形式,然后将地址空间对象作为参数,启动一个OPC UA服务器,该PLC在通信链中即为通信主站;
[0023]子步骤三二:对通信链中剩余的PLC建立OPC UA客户端,实例化一个订阅功能的OPC UA客户端对象,使用OPC UA客户端调用PLC的数据读写模块对变量进行读取和写入。
[0024]本专利技术的实质性特点在于:本专利技术中一种支持多协议PLC通信方法通用性强,协议相同或者不同的PLC均能通过此系统实现通信功能;无侵入性,在通信过程中无需对PLC程序进行修改;灵活性高,两个PLC不直接进行通信,而是通过通信协议中间件的方式进行解耦,可根据需求随时更改通信节点信息以及节点映射关系。
[0025]本专利技术中一种支持多协议PLC通信的网关系统设备拓展便捷,PLC变量读写模块采用插件化开发的方式,只需要对此模块进行扩展开发,即可支持新PLC。功能丰富,本系统的核心模块基于OPC UA协议的C/S架构,不仅能实现PLC硬件之间的通信,也能基于OPC UA协议读取PLC中的变量信息,从而实现对现场设备或流水线的运行状态信息的采集和监控,借助于OPC UA协议的优点,实现“OT”和“IT”的融合,为边缘计算和云计算提供数据支持。
附图说明
[0026]图1是本专利技术中网关系统实现通信的系统架构图;
[0027]图2是本专利技术中通信方法的步骤图;
[0028]图3是PLC变量读写模块根据PLC型号建立连接流程图;
[0029]图4是PLC通信模块实现通信的流程图;
[0030]图5是网关系统连接测试和通信节点配置图;
[0031]图6是通信服务设置和通信节点映射图。
具体实施方式
[0032]下面通过具体实施例,并结合附图,对本专利技术的技术方案作进一步的具体说明。
[0033]实施例1
[0034]如图1所示,是使用该网关系统进行通信的整体架构图,分为系统运行介质,操作配置模块,PLC变量读写模块,PLC通信模块。如图2所示,是本专利技术中通信方法的步骤图,下面结合上述各个模块对本专利技术中的通信方法进行详细说明。
[0035]1、在操作配置模块中,输入需要通信的相同或不同协议PLC的型号,以及IP地址,进行PLC的连接测试。
[0036]2、如图3所示,是PLC变量读写模块根据PLC型号建立连接流程图。因为操作配置模块和PLC变量读写模块直接耦本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种支持多协议PLC通信的方法,其特征在于,包括以下步骤:步骤一:确定PLC的型号以及IP地址,并根据现场工艺要求和PLC程序,确定需要进行通信的PLC变量地址以及变量映射关系;步骤二:根据PLC型号,确定与PLC进行TCP通信需要用到的协议类,实例化协议类,建立socket连接;步骤三:通信协议中间件对通信链中的PLC分别创建通信主站和通信从站,根据步骤一中确定的通信变量信息为通信主站和通信从站分别创建通信节点;步骤四:为步骤三中创建的通信主站和通信从站添加变量映射关系,依据为步骤一中确定的变量映射关系,并确保两端映射的节点数据类型相同,输入与输出相对应。2.根据权利要求1所述的一种支持多协议PLC通信的方法,其特征在于,所述的步骤二中还包括以下子步骤:子步骤二一:PLC变量读写模块接受配置数据,包括PLC型号和IP地址;子步骤二二:根据PLC型号的ID,在数据库中查询对应通讯协议;子步骤二三:根据查询到的通讯协议种类和获取到的IP地址,进行实例化;子步骤二四:建立不同协议PLC的socket连接对象,通过连接对象中的write()和read()进行数据读写。3.根据权利要求1或2所述的一种支持...

【专利技术属性】
技术研发人员:沈国强刘奇吴欣何磊仲峥
申请(专利权)人:杭州电子科技大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1