基于IP分组的多线程PLC查询优化方法技术

技术编号:29787885 阅读:23 留言:0更新日期:2021-08-24 18:06
本发明专利技术提供了一种基于IP分组的多线程PLC查询优化方法,包括如下步骤:步骤一,将待查询的PLC数据按照IP地址进行分组,每一组对应存储至一个集合;步骤二,为每一个所述集合设置一个独立线程,对多个所述独立线程进行遍历查询,将查询结果写入数据库中。本发明专利技术能够对PLC多数据量进行实时监控,数据收集效率高,有效解决单线程数据查询效率低下的问题。

【技术实现步骤摘要】
基于IP分组的多线程PLC查询优化方法
本专利技术涉及PLC数据监控
,具体涉及一种基于IP分组的多线程PLC查询优化方法。
技术介绍
随着物流行业崛起,仓储管理中涉及到众多PLC设备的协同控制,PLC(ProgrammableLogicController)是一种电子装置,在工控领域中PLC通常作为下位机使用。多线程技术是提升系统执行效率和资源利用效率的技术,计算机处于运行状态的任何一个程序都是一个进程,一个进程可以有一个或多个线程,线程是操作系统用来调度执行的最小单位。在一个主线程中创建一个新线程的时候,它们就会交替运行,由于CPU在各线程间切换速度很快,这样就提高了工作效率和资源的有效利用。传统仓储物流中进行PLC的实时监控,一般采用单线程的方式进行定时轮询。将所需要查询的列表由一个线程,依次进行查询。在物流系统中,现有技术是通过单线程的方式进行轮询,先将所有待查询的PLC设备地址放在一个集合中,然后遍历这个集合,进行轮询。这种方式在面对大量待查询地址时有查询效率慢的缺点,根据现有西门子PLC查询效率的研究,较高的查询效率是200个/秒,有的效率较差,查询效率是40个/秒,而遇到六千个数据地址的查询时,现有技术效率低下,无法做到令人满意的数据监控功能。因此,如何提供一种能够有效提高PLC数据收集和监控效率的基于IP分组的多线程PLC查询优化方法是本领域技术人员亟需解决的问题。
技术实现思路
有鉴于此,本专利技术提供了一种基于IP分组的多线程PLC查询优化方法,能够对PLC多数据量进行实时监控,数据收集效率高,有效解决单线程数据查询效率低下的问题。为了实现上述目的,本专利技术采用如下技术方案:一种基于IP分组的多线程PLC查询优化方法,包括如下步骤:步骤一,将待查询的PLC数据按照IP地址进行分组,每一组对应存储至一个集合;步骤二,为每一个所述集合设置一个独立线程,对多个所述独立线程进行遍历查询,将查询结果写入数据库中。优选的,所述PLC数据包括物流系统中硬件设备上的传感器PLC数据,所述硬件设备包括提升机、托盘穿梭车、分拣线、拆盘手、补货小车。优选的,按照IP地址进行分组具体包括:根据IP地址位划分成若干组;为每一个组增加一个集合列表,将该IP地址下的数据地址放入所述集合列表中;每一个组对应的IP地址下都绑定一个包含其自身数据地址列表的集合,所述数据地址包括PLC的内存地址。优选的,所述集合的配置包括:IP地址、数据地址、数据地址的说明文本和设备类型。优选的,所述步骤二具体包括:启动线程连接,建立PLC通讯链路的对象,并将所述对象保存下来预备下次使用;遍历集合,并根据配置查询PLC上的数据,并将结果集存储至数据库。优选的,按照设定时间间隔对多个所述独立线程进行遍历查询。优选的,所述步骤一和步骤二在上位机中执行,所述上位机与PLC使用TCP进行通讯。经由上述的技术方案可知,与现有技术相比,本专利技术的有益效果包括:本专利技术解决了在大批量PLC数据查询效率低下的问题,通过PLC的IP地址分组,以及对分组后的集合进行多线程处理,满足了上位机CPU在多线程下的高效率工作的同时,实现了对于每一个下位机PLC查询仍是单线程的特点,相配合之下,使得将大数据量的查询效率大大提升。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图;图1为本专利技术实施例提供的一种基于IP分组的多线程PLC查询优化方法的数据流程图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。本实施例公开的一种基于IP分组的多线程PLC查询优化方法,属于上位机与PLC通讯领域,是通过JAVA语言实现的适用于进行多PLC、多内存块和多数据地址的实时数据监控的方法。一种基于IP分组的多线程PLC查询优化方法,包括如下步骤:S1、将待查询的PLC数据按照IP地址进行分组,每一组对应存储至一个集合。本步骤的一个具体实施例中,按照IP地址进行分组具体包括:S11、根据IP地址位划分成若干组;S12、为每一个组增加一个集合列表,将该IP地址下的数据地址放入集合列表中;每一个组对应的IP地址下都绑定一个包含其自身数据地址列表的集合,数据地址包括PLC的内存地址,例如DB1.DBX1.1。在一个实施例中,PLC数据包括物流系统中硬件设备上的传感器PLC数据,硬件设备包括提升机、托盘穿梭车、分拣线、拆盘手、补货小车。不同硬件设备的PLC作为下位机配置不同的IP地址,本实施例中的IP地址指的是下位机的IPV4地址。S2,为每一个集合设置一个独立线程,对多个独立线程进行遍历查询,将查询结果写入数据库中。在一个实施例中,按照设定时间间隔对多个独立线程进行遍历查询。本步骤的一个具体实施例中,进行多线程便利查询的具体执行步骤包括:S21、从数据库中读取出全部待查询的配置集合,一个配置包括IP地址和数据地址、该数据地址的说明文本,设备类型和备注。数据地址示例:DB2.DBX14.0,指的是内存块2的第15个字节的第1个偏移位置。S22、通过IP地址对所有待查询的配置集合进行分组,分成多个小的集合。S23、根据集合的数量设置同样数量的线程,每一个线程负责处理一个集合的查询过程。S24、在线程中,首先启动连接,并将连接对象保存下来预备下次使用,其中,连接对象是指建立PLC通讯链路的一个对象,将其存储在一个变量中,当下次继续使用该连接链路时,直接调用该对象来查询数据。S25、遍历集合,并根据配置查询PLC上的数据,并将结果集存储下来。S26、结束遍历,将所有结果保存。S27、隔一段时间,例如2秒,重复第5步。S28、结束监控,关闭连接。在一个实施例中,S1和S2在上位机中执行,上位机与PLC使用TCP进行通讯。参见附图1,给出了不同IP地址下的PLC数据遍历流程,其中上位机分别对IP地址为192.168.0.1、192.168.0.2、192.168.0.3的三个地址列表划分分组,并对每一个分组建立独立线程。以上对本专利技术所提供的基于IP分组的多线程PLC查询优化方法进行了详细介绍,本文中应用了具体个例对本专利技术的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本专利技术的方法及其核心思想;同时,对于本领域的一般技术人员,依据本专利技术的本文档来自技高网...

【技术保护点】
1.一种基于IP分组的多线程PLC查询优化方法,其特征在于,包括如下步骤:/n步骤一,将待查询的PLC数据按照IP地址进行分组,每一组对应存储至一个集合;/n步骤二,为每一个所述集合设置一个独立线程,对多个所述独立线程进行遍历查询,将查询结果写入数据库中。/n

【技术特征摘要】
1.一种基于IP分组的多线程PLC查询优化方法,其特征在于,包括如下步骤:
步骤一,将待查询的PLC数据按照IP地址进行分组,每一组对应存储至一个集合;
步骤二,为每一个所述集合设置一个独立线程,对多个所述独立线程进行遍历查询,将查询结果写入数据库中。


2.根据权利要求1所述的基于IP分组的多线程PLC查询优化方法,其特征在于,所述PLC数据包括物流系统中硬件设备上的传感器PLC数据,所述硬件设备包括提升机、托盘穿梭车、分拣线、拆盘手、补货小车。


3.根据权利要求1所述的基于IP分组的多线程PLC查询优化方法,其特征在于,按照IP地址进行分组具体包括:
根据IP地址位划分成若干组;为每一个组增加一个集合列表,将该IP地址下的数据地址放入所述集合列表中;每一个组对应的IP地址下都绑定一个包含其自身数据地址列表的集合,所述数...

【专利技术属性】
技术研发人员:丁勇曾岩陈富鸿蓝智富
申请(专利权)人:天海欧康科技信息厦门有限公司
类型:发明
国别省市:福建;35

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

1