CN113296462A - 基于ip分组的多线程plc查询优化方法 - Google Patents
基于ip分组的多线程plc查询优化方法 Download PDFInfo
- Publication number
- CN113296462A CN113296462A CN202110523621.8A CN202110523621A CN113296462A CN 113296462 A CN113296462 A CN 113296462A CN 202110523621 A CN202110523621 A CN 202110523621A CN 113296462 A CN113296462 A CN 113296462A
- Authority
- CN
- China
- Prior art keywords
- plc
- address
- data
- query
- grouping
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 25
- 238000005457 optimization Methods 0.000 title claims abstract description 15
- 238000004891 communication Methods 0.000 claims description 4
- 238000013480 data collection Methods 0.000 abstract description 3
- 238000012544 monitoring process Methods 0.000 description 6
- 238000012545 processing Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/05—Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
- G05B19/054—Input/output
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/10—Plc systems
- G05B2219/11—Plc I-O input output
- G05B2219/1113—Address setting
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供了一种基于IP分组的多线程PLC查询优化方法,包括如下步骤:步骤一,将待查询的PLC数据按照IP地址进行分组,每一组对应存储至一个集合;步骤二,为每一个所述集合设置一个独立线程,对多个所述独立线程进行遍历查询,将查询结果写入数据库中。本发明能够对PLC多数据量进行实时监控,数据收集效率高,有效解决单线程数据查询效率低下的问题。
Description
技术领域
本发明涉及PLC数据监控技术领域,具体涉及一种基于IP分组的多线程PLC查询优化方法。
背景技术
随着物流行业崛起,仓储管理中涉及到众多PLC设备的协同控制,PLC(Programmable Logic Controller)是一种电子装置,在工控领域中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查询优化方法进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上,本说明书内容不应理解为对本发明的限制。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (7)
1.一种基于IP分组的多线程PLC查询优化方法,其特征在于,包括如下步骤:
步骤一,将待查询的PLC数据按照IP地址进行分组,每一组对应存储至一个集合;
步骤二,为每一个所述集合设置一个独立线程,对多个所述独立线程进行遍历查询,将查询结果写入数据库中。
2.根据权利要求1所述的基于IP分组的多线程PLC查询优化方法,其特征在于,所述PLC数据包括物流系统中硬件设备上的传感器PLC数据,所述硬件设备包括提升机、托盘穿梭车、分拣线、拆盘手、补货小车。
3.根据权利要求1所述的基于IP分组的多线程PLC查询优化方法,其特征在于,按照IP地址进行分组具体包括:
根据IP地址位划分成若干组;为每一个组增加一个集合列表,将该IP地址下的数据地址放入所述集合列表中;每一个组对应的IP地址下都绑定一个包含其自身数据地址列表的集合,所述数据地址包括PLC的内存地址。
4.根据权利要求3所述的基于IP分组的多线程PLC查询优化方法,其特征在于,所述集合的配置包括:IP地址、数据地址、数据地址的说明文本和设备类型。
5.根据权利要求4所述的基于IP分组的多线程PLC查询优化方法,其特征在于,所述步骤二具体包括:
启动线程连接,建立PLC通讯链路的对象,并将所述对象保存下来预备下次使用;
遍历集合,并根据配置查询PLC上的数据,并将结果集存储至数据库。
6.根据权利要求1所述的基于IP分组的多线程PLC查询优化方法,其特征在于,按照设定时间间隔对多个所述独立线程进行遍历查询。
7.根据权利要求1所述的基于IP分组的多线程PLC查询优化方法,其特征在于,所述步骤一和步骤二在上位机中执行,所述上位机与PLC使用TCP进行通讯。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110523621.8A CN113296462A (zh) | 2021-05-13 | 2021-05-13 | 基于ip分组的多线程plc查询优化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110523621.8A CN113296462A (zh) | 2021-05-13 | 2021-05-13 | 基于ip分组的多线程plc查询优化方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113296462A true CN113296462A (zh) | 2021-08-24 |
Family
ID=77321951
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110523621.8A Pending CN113296462A (zh) | 2021-05-13 | 2021-05-13 | 基于ip分组的多线程plc查询优化方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113296462A (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101305524A (zh) * | 2005-11-10 | 2008-11-12 | 松下电器产业株式会社 | 电力线通信的方法和设备 |
CN101625563A (zh) * | 2008-07-11 | 2010-01-13 | 中冶焦耐工程技术有限公司 | 焦炉地址检测及炉号自动识别系统 |
CN105607573A (zh) * | 2016-01-29 | 2016-05-25 | 南京理工大学 | 一种药房的智能仓储和自动分发系统 |
CN108989358A (zh) * | 2018-09-28 | 2018-12-11 | 郑州轻工业学院 | 一种基于tcp/ip协议纺机运行数据获取方法 |
US20190005045A1 (en) * | 2017-06-30 | 2019-01-03 | Cisco Technology, Inc. | Efficient internet protocol prefix match support on no-sql and/or non-relational databases |
CN110830936A (zh) * | 2018-08-08 | 2020-02-21 | 三星电子株式会社 | 支持数据通信的电子设备及方法 |
-
2021
- 2021-05-13 CN CN202110523621.8A patent/CN113296462A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101305524A (zh) * | 2005-11-10 | 2008-11-12 | 松下电器产业株式会社 | 电力线通信的方法和设备 |
CN101625563A (zh) * | 2008-07-11 | 2010-01-13 | 中冶焦耐工程技术有限公司 | 焦炉地址检测及炉号自动识别系统 |
CN105607573A (zh) * | 2016-01-29 | 2016-05-25 | 南京理工大学 | 一种药房的智能仓储和自动分发系统 |
US20190005045A1 (en) * | 2017-06-30 | 2019-01-03 | Cisco Technology, Inc. | Efficient internet protocol prefix match support on no-sql and/or non-relational databases |
CN110830936A (zh) * | 2018-08-08 | 2020-02-21 | 三星电子株式会社 | 支持数据通信的电子设备及方法 |
CN108989358A (zh) * | 2018-09-28 | 2018-12-11 | 郑州轻工业学院 | 一种基于tcp/ip协议纺机运行数据获取方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107122857B (zh) | 基于多智能体的车间多目标协同优化调度方法 | |
Tan et al. | An embedded cloud database service method for distributed industry monitoring | |
CN102779075B (zh) | 一种在多处理器核系统中进行调度的方法、装置及系统 | |
CN108989358B (zh) | 一种基于tcp/ip协议纺机运行数据获取方法 | |
CN113220776B (zh) | 一种工业数据处理系统和方法 | |
CN109257208A (zh) | 一种基于opc ua的信息集成系统及方法 | |
CN110162388A (zh) | 一种任务调度方法、系统及终端设备 | |
CN103412786A (zh) | 一种高性能服务器架构系统及数据处理方法 | |
CN103369042A (zh) | 一种数据处理方法和装置 | |
CN107065813A (zh) | 一种车间设备数据监控系统及方法 | |
CN103810223B (zh) | 一种基于数据分组的内存数据组织查询方法 | |
CN108829740A (zh) | 数据存储方法和装置 | |
CN110020046A (zh) | 一种数据抓取方法及装置 | |
CN112084016B (zh) | 一种基于flink的流计算性能优化系统及方法 | |
CN110086643A (zh) | 一种风险识别方法、终端及存储介质 | |
JPWO2011142227A1 (ja) | コンピュータ・システム、方法及びプログラム | |
CN113296462A (zh) | 基于ip分组的多线程plc查询优化方法 | |
CN114285695A (zh) | 通信方法、装置、设备、系统和存储介质 | |
CN110879753B (zh) | 基于自动化集群资源管理的gpu加速性能优化方法和系统 | |
CN111427690A (zh) | 分散处理单元并行计算方法 | |
CN110161893A (zh) | 从机装置、控制系统、响应数据的通信方法以及存储介质 | |
CN115456188B (zh) | 量子计算任务优化处理方法、装置及量子计算机 | |
CN115934365A (zh) | 一种应用于cpu的任务调度耦合系统 | |
CN107800571B (zh) | 一种网络功能动态编排方法、装置和系统 | |
CN116016579A (zh) | 一种自动化设备的数据采集系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210824 |