CN109412939A - 记录工业网络通信周期过程数据的通信网关和工作方法 - Google Patents
记录工业网络通信周期过程数据的通信网关和工作方法 Download PDFInfo
- Publication number
- CN109412939A CN109412939A CN201811509006.6A CN201811509006A CN109412939A CN 109412939 A CN109412939 A CN 109412939A CN 201811509006 A CN201811509006 A CN 201811509006A CN 109412939 A CN109412939 A CN 109412939A
- Authority
- CN
- China
- Prior art keywords
- communication
- cycle process
- process data
- communication cycle
- cache
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/66—Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
- H04L49/9063—Intermediate storage in different physical parts of a node or terminal
Abstract
一种记录工业网络通信周期过程数据的通信网关和工作方法,该通信网关包括:输入模块,用于接收工业生产控制器提供的通信周期过程数据,将每个通信周期过程数据标注时间戳,再将标注时间戳的通信周期过程数据发送至缓存模块;缓存模块,用于根据缓冲机制,将输入模块发来的通信周期过程数据按时间戳顺序写入缓存模块;缓存模块分为多个缓存单元,每个缓存单元能存储多个通信周期过程数据;缓存模块还包括计数器,用于根据缓冲机制,更新计数器的值;输出模块,用于实时监控计数器,根据缓冲机制和计数器的值,提取通信周期过程数据,将提取的通信周期过程数据发送至数据采集上位机。本发明能缓存多周期通信过程数据,实现数据采集的完整和一致性。
Description
技术领域
本发明涉及工业数据通信技术领域,尤其涉及一种记录工业网络通信周期过程数据的通信网关和工作方法。
背景技术
在工业生产中,广泛使用工业网络协议(如,Profibus、Profinet、Ethercat等)进行数据通信,以保证控制系统的实时性和可靠性以及满足分布式系统控制。对于时间要求比较高的控制系统通常需要毫秒级的通信周期过程数据交换。若要分析系统故障和性能等问题,就要知道这些数据是否正确和合理,因此就需要快速、完整地记录这些数据。
现有的工业通信网关主要应用于工业控制系统的数据交换或协议转换,其特点是:①缓存中只有当前周期过程数据,一个系统写入,另一个系统读取,如果写入快于读取,则写入数据将丢失;②交换数据周期快,到毫秒级,系统读取侧如果是工业生产控制系统,则可以适应这么快的速率,但如果数据采集上位机是计算机,速率匹配上就存在问题,因为用于数据采集和存储的上位计算机一般都采用非实时系统,如Windows系统,不能满足这么快速率的数据交换,也不能保证稳定性。
目前,市面上有一种基于工业通信网关的通信周期过程数据采集方案是:增加一个中间件,该中间件与工业通信网关连接,实时读取并缓存工业通信网关的周期通信过程数据,然后再与数据采集上位机通信,将缓存的数据发送给数据采集上位机。
首先,这种方案的缺点在于成本较高。在工业通信网关的基础上再增加一个中间件,目的是能实时读取出工业通信网关的数据并做多周期缓存,因为现有的工业通信网关不对通信数据做多周期缓存,这就要求中间件具有实时性和缓存机制,因此,成本相对较高。
还有,这种方案不能保证数据采集的一致性。当工业生产的通信过程正在进行时,中间件提取的通信周期过程数据有可能不是同一周期的通信周期过程数据。对于非常关键的控制,一个周期的差错,就会导致控制结果完全不同,因此,完整的提取原始通信周期过程数据,对于采集系统尤为关键。
发明内容
本发明实施例提供一种记录工业网络通信周期过程数据的通信网关,采用独立通信网关的形式,在其内部建立缓冲机制,缓存多周期通信过程数据,实现工业网络通信周期过程数据采集的一致性,能够完整的提取原始通信周期过程数据,该通信网关包括:
输入模块,用于接收工业生产控制器提供的通信周期过程数据,将每个通信周期过程数据标注时间戳,再将标注时间戳的通信周期过程数据发送至缓存模块;
缓存模块,用于根据缓冲机制,将输入模块发来的通信周期过程数据按时间戳顺序写入缓存模块;缓存模块分为多个缓存单元,每个缓存单元能存储多个通信周期过程数据;
缓存模块还包括计数器,用于根据缓冲机制,更新计数器的值;
输出模块,用于实时监控计数器,根据缓冲机制和计数器的值,提取通信周期过程数据,将提取的通信周期过程数据发送至数据采集上位机。
本发明实施例还提供一种记录工业网络通信周期过程数据的通信网关的工作方法,包括:
输入模块接收工业生产控制器提供的通信周期过程数据,将每个通信周期过程数据标注时间戳,再将标注时间戳的通信周期过程数据发送至缓存模块;
缓存模块根据缓冲机制,将输入模块发来的通信周期过程数据按时间戳顺序写入缓存模块;缓存模块分为多个缓存单元,每个缓存单元能存储多个通信周期过程数据;
缓存模块还包括计数器,用于根据缓冲机制,更新计数器的值;
输出模块实时监控计数器,根据缓冲机制和计数器的值,提取通信周期过程数据,将提取的通信周期过程数据发送至数据采集上位机。
本发明实施例还提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上工作的计算机程序,所述处理器执行所述计算机程序时实现一种记录工业网络通信周期过程数据的通信网关的工作方法。
本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有执行实现一种记录工业网络通信周期过程数据的通信网关的工作方法的计算机程序。
本发明实施例提供的一种记录工业网络通信周期过程数据的通信网关和工作方法,在通信网关内部建立缓冲机制,缓存多周期通信过程数据,实现工业网络通信周期过程数据采集的一致性,能够完整的提取原始通信周期过程数据,且本发明实施例采用的是独立通信网关的形式,免去了中间件,因此降低了采集完整工业网络通信周期过程数据的成本。应用本发明实施例提供的通信网关和工作方法,完整采集工业网络通信周期过程数据,可以帮助分析系统故障,优化控制性能,提高生产线的生产效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1为本发明实施例一种记录工业网络通信周期过程数据的通信网关示意图;
图2为本发明实施例一种记录工业网络通信周期过程数据的通信网关具备8缓存单元的环形缓冲机制缓存模块示例图;
图3为本发明实施例一种记录工业网络通信周期过程数据的通信网关具备8缓存单元的半满缓冲机制缓存模块示例图;
图4为本发明实施例一种记录工业网络通信周期过程数据的通信网关的一应用实例示意图;
图5为本发明实施例一种记录工业网络通信周期过程数据的通信网关的工作方法示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚明白,下面结合附图对本发明实施例做进一步详细说明。在此,本发明的示意性实施例及其说明用于解释本发明,但并不作为对本发明的限定。
如图1本发明实施例一种记录工业网络通信周期过程数据的通信网关示意图所示,本发明实施例提供一种记录工业网络通信周期过程数据的通信网关,采用独立通信网关的形式,在其内部建立缓冲机制,缓存多周期通信过程数据,实现工业网络通信周期过程数据采集的一致性,能够完整的提取原始通信周期过程数据,该通信网关包括:
输入模块,用于接收工业生产控制器提供的通信周期过程数据,将每个通信周期过程数据标注时间戳,再将标注时间戳的通信周期过程数据发送至缓存模块;
缓存模块,用于根据缓冲机制,将输入模块发来的通信周期过程数据按时间戳顺序写入缓存模块;缓存模块分为多个缓存单元,每个缓存单元能存储多个通信周期过程数据;
缓存模块还包括计数器,用于根据缓冲机制,更新计数器的值;
输出模块,用于实时监控计数器,根据缓冲机制和计数器的值,提取通信周期过程数据,将提取的通信周期过程数据发送至数据采集上位机。
在工业生产的过程中,为了快速完整的记录通信周期过程数据,应用本发明实施例提供的记录工业网络通信周期过程数据的通信网关,包括:输入模块,缓存模块和输出模块,在具体实施时,工业生产控制器根据工业生产的过程,产生相应的通信周期过程数据;输入模块连接工业生产控制器,用于接收工业生产控制器提供的通信周期过程数据,将每个通信周期过程数据标注时间戳,再将标注时间戳的通信周期过程数据发送至缓存模块;将每个通信周期过程数据标注时间戳,是为了明确每条周期数据的绝对采样时间,明确两条周期数据的相对采样时间以及与数据采集上位机进行时间对时;缓存模块,用于根据缓冲机制,将输入模块发来的通信周期过程数据按时间戳顺序写入缓存模块;缓存模块分为多个缓存单元,每个缓存单元能存储多个通信周期过程数据;缓存模块还包括计数器,用于根据缓冲机制,更新计数器的值;输出模块,用于实时监控计数器,根据缓冲机制和计数器的值,提取通信周期过程数据,将提取的通信周期过程数据发送至数据采集上位机,完成工业生产过程的通信周期过程数据的完整记录。
本发明实施例提供的一种记录工业网络通信周期过程数据的通信网关,在通信网关内部建立缓冲机制,缓存多周期通信过程数据,实现工业网络通信周期过程数据采集的一致性,能够完整的提取原始通信周期过程数据,且本发明实施例采用的是独立通信网关的形式,免去了中间件,因此降低了采集完整工业网络通信周期过程数据的成本。
在一个实施例中,具体实施本发明提供的记录工业网络通信周期过程数据的通信网关时,缓存模块存储通信周期过程数据和输出模块提取通信周期过程数据所根据的缓冲机制包括多种,在本发明实施例中可以包括环形缓冲机制和半满缓冲机制。在一个实施例中,缓冲机制可以采用环形缓冲机制:在环形缓冲机制时,缓存模块根据单通信周期过程数据大小以及输出模块的响应速度和数据带宽,将缓存模块分为多个缓存单元,每个缓存单元能存储多个通信周期过程数据,输入模块发来的通信周期过程数据按时间戳顺序写入缓存模块的第一个缓存单元;在第一个缓存单元写满时,更新计数器,以便输出模块判断当前写入缓存单元的位置,输入模块新发来的通信周期过程数据写入下一缓存单元;当所有缓存单元全部写满后,重新回到第一个缓存单元,开始覆盖写入通信周期过程数据。
在环形缓冲机制时,输出模块根据计数器的值确定当前写入缓存单元的位置,再根据上次读取缓存单元的位置,提取当前写入缓存单元位置至上次读取缓存单元位置之间,多个缓存单元中的通信周期过程数据,发送至数据采集上位机;当前写入缓存单元位置至上次读取缓存单元位置之间的缓存单元的个数的值,是根据单通信周期过程数据大小以及输出模块的响应速度和数据带宽进行设置的,需要保证在上次读取缓存单元的数据被覆盖写入之前,将其存储的通信周期过程数据读取完成。
图2是本发明实施例具备8缓存单元的环形缓冲机制缓存模块示例图,缓存模块分为8个缓存单元,每个缓存单元能存储多个通信周期过程数据,输入模块发来的通信周期过程数据按时间戳顺序写入1号缓存单元,在1号缓存单元写满时,更新计数器,以便输出模块判断当前写入缓存单元的位置,输入模块新发来的通信周期过程数据写入2号缓存单元,以此类推;当8号缓存单元写满后,重新回到1号缓存单元,开始覆盖写入通信周期过程数据。
如图2所示,当前写入缓存单元为6号缓存单元,输出模块根据计数器的值确定当前写入缓存单元的位置为6号缓存单元,再根据上次读取缓存单元的位置2号单元,一次性提取2号缓存单元位置至6号缓存单元位置之间,3号-5号三个缓存单元中的通信周期过程数据,打包发送至数据采集上位机,完成一次通信周期过程数据的采集。
前述提到的关于具备8缓存单元的环形缓冲机制缓存模块的叙述仅作为举例说明,本领域技术人员可以理解,在实施时还可以根据需要对上述叙述进行一定形式的改变,例如增加/减少缓存单元的个数,或者改变缓存单元的布局方式,这些变化例均应落入本发明的保护范围。
在另一个实施例中,缓冲机制还可以采用半满缓冲机制:半满缓冲机制时,缓存模块根据单通信周期过程数据大小以及输出模块的响应速度和数据带宽,将缓存模块分为多个缓存单元,每个缓存单元能存储多个通信周期过程数据,然后将多个缓存单元平均分为两个分区:第一分区和第二分区;输入模块发来的通信周期过程数据按时间戳顺序写入第一分区的第一个缓存单元,在第一分区的第一个缓存单元写满后,继续写入第一分区的下一缓存单元,以此类推;在第一分区的全部缓存单元写满时,更新计数器,以便输出模块判断当前写入分区的位置,输入模块新发来的通信周期过程数据写入第二分区的第一个缓存单元,在第二分区的第一个缓存单元写满后,继续写入第二分区的下一缓存单元,以此类推;在第二分区全部缓存单元写满时,更新计数器,输入模块新发来的通信周期过程数据再次写入第一分区的缓存单元。在通信周期过程数据再次写入第一分区的缓存单元时,有两种方式:一种方式是,与前述的环形缓冲机制相似,对第一分区缓存单元原有的通信周期过程数据不做任何操作,新发来的通信周期过程数据覆盖写入第一分区的第一个缓存单元;另一种方式是,在输出模块提取完第一分区存储的全部通信周期过程数据后,删除第一分区中全部的通信周期过程数据,新发来的通信周期过程数据,写入空白的第一分区的第一个缓存单元。
在半满缓冲机制时,输出模块根据计数器确定当前写入分区的位置,一次性提取已写满分区的全部通信周期过程数据,打包发送至数据采集上位机。
图3是本发明实施例具备8缓存单元的半满缓冲机制缓存模块示例图,缓存模块分为8个缓存单元,每个缓存单元能存储多个通信周期过程数据,然后将8个缓存单元平均分为两个分区:1号-4号缓存单元为第一分区,5号-8号缓存单元为第二分区;输入模块发来的通信周期过程数据按时间戳顺序写入第一分区的1号缓存单元,在第一分区的1号缓存单元写满后,继续写入第一分区的2号缓存单元,以此类推;在第一分区的1号-4号缓存单元都写满时,更新计数器,以便输出模块判断当前写入分区的位置,输入模块新发来的通信周期过程数据写入第二分区的5号缓存单元,在第二分区的5号缓存单元写满后,继续写入第二分区的6号缓存单元,以此类推;在第二分区5号-8号缓存单元都写满时,更新计数器,输入模块新发来的通信周期过程数据再次写入第一分区的1号缓存单元。
如图3所示,输出模块根据计数器确定当前写入分区的位置为第二分区的5号缓存单元,因此判断第一分区的1号-4号缓存单元已经全部写满,一次性提取第一分区的全部通信周期过程数据,打包发送至数据采集上位机,完成一次通信周期过程数据的采集。
前述提到的关于具备8缓存单元的半满缓冲机制缓存模块的叙述仅作为举例说明,本领域技术人员可以理解,在实施时还可以根据需要对上述叙述进行一定形式的改变,例如增加/减少缓存单元的个数,或者改变缓存单元的布局方式,这些变化例均应落入本发明的保护范围。
在一个实施例中,具体实施本发明提供的记录工业网络通信周期过程数据的通信网关时,输入模块包括:工业通信协议接口,用于解析工业生产控制器与输入模块之间的工业通信协议,接收工业生产控制器提供的通信周期过程数据,即输入模块通过工业通信协议接口与工业生产控制器连接,接收工业生产控制器提供的通信周期过程数据。
上述提到的工业通信协议接口解析的工业生产控制器与输入模块之间的工业通信协议,包括Profibus、Profinet和Ethercat等,本领域技术人员可以理解,实施时还可以根据需要采取其他方式的工业通信协议,这些变化例均应落入本发明的保护范围。
在一个实施例中,具体实施本发明提供的记录工业网络通信周期过程数据的通信网关时,输出模块包括:数据上传协议接口,用于解析输出模块与数据采集上位机之间的数据上传协议,将通信周期过程数据发送至数据采集上位机,即输出模块通过数据上传协议接口与数据采集上位机连接,将通信周期过程数据发送至数据采集上位机。
上述提到的数据上传协议接口解析的输出模块与数据采集上位机之间的数据上传协议,包括以太网和局域网等,领域技术人员可以理解,实施时还可以根据需要采取其他方式的数据上传协议,这些变化例均应落入本发明的保护范围。
在生产过程中,工业生产控制器产生通信周期过程数据的速度要大于数据采集上位机采集通信周期过程数据的速度,因此通过上述方式在通信网关的内部增加缓存机制,每当存储的通信周期过程数据个数存满一定缓存单元时,进行提取,打包批量发送至数据采集上位机,可以使得数据采集上位机采集通信周期过程数据的速度增快,为了更进一步的增加数据采集上位机采集通信周期过程数据的速度和通信网关的存储数据的稳定性,在通信网关的外部,设置输入模块与工业生产控制器之间的接收数据带宽,小于输出模块与数据采集上位机之间的上传数据带宽。
通过上述设置,又进一步的保证了数据采集上位机采集通信周期过程数据的速度大于工业生产控制器产生通信周期过程数据的速度,使得数据采集上位机采集通信周期过程数据的速度进一步增快,实现了通信周期过程数据采集的完整与通信网关的存储数据的稳定性。
同时,为了保证该通信网关的长时间稳定运行,不丢失数据,在一个实施例中,在通信网关内部,输入模块与缓存模块之间的数据处理能力,小于缓存模块与输出模块之间的数据处理能力。
通过上述关于通信网关外部带宽的限制,和通信网关内部数据处理能力的设置,保证了通信周期过程数据从工业生产控制器,经过通信网关,到数据采集上位机,整个数据流的数据处理能力和带宽是依次增大的,避免了出现数据瓶颈的问题,从而实现通信网关的长时间稳定运行,且不丢失数据,完整保存通信周期过程数据。
下面提供一具体实例,如图4一种记录工业网络通信周期过程数据的通信网关的应用实例示意图所示,具体如下:
本应用实例是以采集Profibus周期通信过程数据为例,该装置的示意图如图4所示,工业生产控制器与通信网关的输入模块通过Profibus接口连接,数据采集上位机通过以太网接口与通信网关的输出模块连接,通信网关通过输入模块的Profibus接口从工业生产控制器接收通信周期过程数据,将每个通信周期过程数据标注时间戳,再将标注时间戳的通信周期过程数据发送至缓存模块;缓存模块分为4个缓存单元,每个缓存单元能存储多个通信周期过程数据,输入模块发来的通信周期过程数据根据缓冲机制,按时间戳顺序写入缓存模块的缓存单元中。缓存模块还包括计数器,根据缓冲机制,更新计数器的值;输出模块实时监控计数器,根据缓冲机制和计数器的值,提取通信周期过程数据,将提取的通信周期过程数据发送至数据采集上位机。
在采用环形缓冲机制时,输入模块发来的通信周期过程数据按时间戳顺序写入1号缓存单元,在1号缓存单元写满时,更新计数器,以便输出模块判断当前写入缓存单元的位置,输入模块新发来的通信周期过程数据写入2号缓存单元,以此类推;当4号缓存单元写满后,重新回到1号缓存单元,开始覆盖写入通信周期过程数据。输出模块根据计数器的值确定当前写入缓存单元的位置,再根据上次读取缓存单元的位置,一次性提取两者之间所有缓存单元中的通信周期过程数据,通过以太网接口,将通信周期过程数据打包发送至数据采集上位机,完成一次通信周期过程数据的采集。
在采用半满缓冲机制时,将4个缓存单元平均分为两个分区:1号-2号缓存单元为第一分区,3号-4号缓存单元为第二分区;输入模块发来的通信周期过程数据按时间戳顺序写入第一分区的1号缓存单元,在第一分区的1号缓存单元写满后,继续写入第一分区的2号缓存单元;在第一分区的1号-2号缓存单元都写满时,更新计数器,以便输出模块判断当前写入分区的位置,输入模块新发来的通信周期过程数据写入第二分区的3号缓存单元,在第二分区的3号缓存单元写满后,继续写入第二分区的4号缓存单元;在第二分区3号-4号缓存单元都写满时,更新计数器,输入模块新发来的通信周期过程数据再次写入第一分区的1号缓存单元。输出模块根据计数器确定当前写入分区的位置,据此判断已经写满的分区,一次性提取已经写满分区的全部通信周期过程数据,通过以太网接口,将通信周期过程数据打包发送至数据采集上位机,完成一次通信周期过程数据的采集。
上述通信周期过程数据的采集持续进行,即可实现完整采集工业网络通信周期过程数据的功能,在此数据采集过程中,需要设置:输入模块与工业生产控制器之间的接收数据带宽,小于输出模块与数据采集上位机之间的上传数据带宽;输入模块与缓存模块之间的数据处理能力,小于缓存模块与输出模块之间的数据处理能力。
本发明实施例中还提供了记录工业网络通信周期过程数据的通信网关的工作方法,如下面的实施例所述。由于该工作方法解决问题的原理与记录工业网络通信周期过程数据的通信网关相似,因此该工作方法的实施可以参见记录工业网络通信周期过程数据的通信网关的实施,重复之处不再赘述。
图5是本发明实施例一种记录工业网络通信周期过程数据的通信网关的工作方法示意图,如图5所示,该工作方法可以包括:
步骤501,输入模块接收工业生产控制器提供的通信周期过程数据,将每个通信周期过程数据标注时间戳,再将标注时间戳的通信周期过程数据发送至缓存模块;
步骤502,缓存模块根据缓冲机制,将输入模块发来的通信周期过程数据按时间戳顺序写入缓存模块;缓存模块分为多个缓存单元,每个缓存单元能存储多个通信周期过程数据;缓存模块还包括计数器,用于根据缓冲机制,更新计数器的值;
步骤503,输出模块实时监控计数器,根据缓冲机制和计数器的值,提取通信周期过程数据,将提取的通信周期过程数据发送至数据采集上位机。
一个实施例中,缓冲机制包括环形缓冲机制;
在环形缓冲机制时,输入模块发来的通信周期过程数据按时间戳顺序写入第一个缓存单元;
在第一个缓存单元写满时,更新计数器,输入模块新发来的通信周期过程数据写入下一缓存单元;
当所有缓存单元全部写满后,回到第一个缓存单元,开始覆盖写入通信周期过程数据。
一个实施例中,在环形缓冲机制时,
输出模块根据计数器的值确定当前写入缓存单元的位置,再根据上次读取缓存单元的位置,提取当前写入缓存单元位置至上次读取缓存单元位置之间,多个缓存单元中的通信周期过程数据,发送至数据采集上位机。
一个实施例中,缓冲机制包括半满缓冲机制;
在半满缓冲机制时,所有缓存单元平均分为两个分区:第一分区和第二分区;
输入模块发来的通信周期过程数据按时间戳顺序写入第一分区的缓存单元,在第一分区全部缓存单元写满时,更新计数器,输入模块新发来的通信周期过程数据写入第二分区的缓存单元;在第二分区全部缓存单元写满时,更新计数器,输入模块新发来的通信周期过程数据再次写入第一分区的缓存单元。
一个实施例中,在半满缓冲机制时,
输出模块根据计数器确定当前写入分区,提取已写满分区的全部通信周期过程数据,发送至数据采集上位机。
一个实施例中,输入模块包括:
工业通信协议接口,解析工业生产控制器与输入模块之间的工业通信协议,接收工业生产控制器提供的通信周期过程数据。
一个实施例中,输出模块包括:
数据上传协议接口,解析输出模块与数据采集上位机之间的数据上传协议,将通信周期过程数据发送至数据采集上位机。
一个实施例中,输入模块与工业生产控制器之间的接收数据带宽,小于输出模块与数据采集上位机之间的上传数据带宽。
一个实施例中,输入模块与缓存模块之间的数据处理能力,小于缓存模块与输出模块之间的数据处理能力。
本发明实施例还提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上工作的计算机程序,所述处理器执行所述计算机程序时实现一种记录工业网络通信周期过程数据的通信网关的工作方法。
本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有执行实现一种记录工业网络通信周期过程数据的通信网关的工作方法的计算机程序。
综上,本发明实施例提供的一种记录工业网络通信周期过程数据的通信网关和工作方法,在通信网关内部建立缓冲机制,缓存多周期通信过程数据,实现工业网络通信周期过程数据采集的一致性,能够完整的提取原始通信周期过程数据,且本发明实施例采用的是独立通信网关的形式,免去了中间件,因此降低了采集完整工业网络通信周期过程数据的成本。应用本发明实施例提供的通信网关和工作方法,完整采集工业网络通信周期过程数据,可以帮助分析系统故障,优化控制性能,提高生产线的生产效率。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (20)
1.一种记录工业网络通信周期过程数据的通信网关,其特征在于,包括:
输入模块,用于接收工业生产控制器提供的通信周期过程数据,将每个通信周期过程数据标注时间戳,再将标注时间戳的通信周期过程数据发送至缓存模块;
缓存模块,用于根据缓冲机制,将输入模块发来的通信周期过程数据按时间戳顺序写入缓存模块;缓存模块分为多个缓存单元,每个缓存单元能存储多个通信周期过程数据;
缓存模块还包括计数器,用于根据缓冲机制,更新计数器的值;
输出模块,用于实时监控计数器,根据缓冲机制和计数器的值,提取通信周期过程数据,将提取的通信周期过程数据发送至数据采集上位机。
2.如权利要求1所述的通信网关,其特征在于,缓冲机制包括环形缓冲机制;
在环形缓冲机制时,输入模块发来的通信周期过程数据按时间戳顺序写入第一个缓存单元;
在第一个缓存单元写满时,更新计数器,输入模块新发来的通信周期过程数据写入下一缓存单元;
当所有缓存单元全部写满后,回到第一个缓存单元,开始覆盖写入通信周期过程数据。
3.如权利要求2所述的通信网关,其特征在于,在环形缓冲机制时,
输出模块根据计数器的值确定当前写入缓存单元的位置,再根据上次读取缓存单元的位置,提取当前写入缓存单元位置至上次读取缓存单元位置之间,多个缓存单元中的通信周期过程数据,发送至数据采集上位机。
4.如权利要求1所述的通信网关,其特征在于,缓冲机制包括半满缓冲机制;
在半满缓冲机制时,所有缓存单元平均分为两个分区:第一分区和第二分区;
输入模块发来的通信周期过程数据按时间戳顺序写入第一分区的缓存单元,在第一分区全部缓存单元写满时,更新计数器,输入模块新发来的通信周期过程数据写入第二分区的缓存单元;在第二分区全部缓存单元写满时,更新计数器,输入模块新发来的通信周期过程数据再次写入第一分区的缓存单元。
5.如权利要求4所述的通信网关,其特征在于,在半满缓冲机制时,
输出模块根据计数器确定当前写入分区,提取已写满分区的全部通信周期过程数据,发送至数据采集上位机。
6.如权利要求1所述的通信网关,其特征在于,输入模块包括:
工业通信协议接口,用于解析工业生产控制器与输入模块之间的工业通信协议,接收工业生产控制器提供的通信周期过程数据。
7.如权利要求1所述的通信网关,其特征在于,输出模块包括:
数据上传协议接口,用于解析输出模块与数据采集上位机之间的数据上传协议,将通信周期过程数据发送至数据采集上位机。
8.如权利要求1所述的通信网关,其特征在于,输入模块与工业生产控制器之间的接收数据带宽,小于输出模块与数据采集上位机之间的上传数据带宽。
9.如权利要求1所述的通信网关,其特征在于,输入模块与缓存模块之间的数据处理能力,小于缓存模块与输出模块之间的数据处理能力。
10.一种权利要求1-9任一所述记录工业网络通信周期过程数据的通信网关的工作方法,其特征在于,包括:
输入模块接收工业生产控制器提供的通信周期过程数据,将每个通信周期过程数据标注时间戳,再将标注时间戳的通信周期过程数据发送至缓存模块;
缓存模块根据缓冲机制,将输入模块发来的通信周期过程数据按时间戳顺序写入缓存模块;缓存模块分为多个缓存单元,每个缓存单元能存储多个通信周期过程数据;
缓存模块还包括计数器,用于根据缓冲机制,更新计数器的值;
输出模块实时监控计数器,根据缓冲机制和计数器的值,提取通信周期过程数据,将提取的通信周期过程数据发送至数据采集上位机。
11.如权利要求10所述的通信网关的工作方法,其特征在于,缓冲机制包括环形缓冲机制;
在环形缓冲机制时,输入模块发来的通信周期过程数据按时间戳顺序写入第一个缓存单元;
在第一个缓存单元写满时,更新计数器,输入模块新发来的通信周期过程数据写入下一缓存单元;
当所有缓存单元全部写满后,回到第一个缓存单元,开始覆盖写入通信周期过程数据。
12.如权利要求11所述的通信网关的工作方法,其特征在于,在环形缓冲机制时,
输出模块根据计数器的值确定当前写入缓存单元的位置,再根据上次读取缓存单元的位置,提取当前写入缓存单元位置至上次读取缓存单元位置之间,多个缓存单元中的通信周期过程数据,发送至数据采集上位机。
13.如权利要求10所述的通信网关的工作方法,其特征在于,缓冲机制包括半满缓冲机制;
在半满缓冲机制时,所有缓存单元平均分为两个分区:第一分区和第二分区;
输入模块发来的通信周期过程数据按时间戳顺序写入第一分区的缓存单元,在第一分区全部缓存单元写满时,更新计数器,输入模块新发来的通信周期过程数据写入第二分区的缓存单元;在第二分区全部缓存单元写满时,更新计数器,输入模块新发来的通信周期过程数据再次写入第一分区的缓存单元。
14.如权利要求13所述的通信网关的工作方法,其特征在于,在半满缓冲机制时,
输出模块根据计数器确定当前写入分区,提取已写满分区的全部通信周期过程数据,发送至数据采集上位机。
15.如权利要求10所述的通信网关的工作方法,其特征在于,输入模块包括:
工业通信协议接口,解析工业生产控制器与输入模块之间的工业通信协议,接收工业生产控制器提供的通信周期过程数据。
16.如权利要求10所述的通信网关的工作方法,其特征在于,输出模块包括:
数据上传协议接口,解析输出模块与数据采集上位机之间的数据上传协议,将通信周期过程数据发送至数据采集上位机。
17.如权利要求10所述的通信网关的工作方法,其特征在于,输入模块与工业生产控制器之间的接收数据带宽,小于输出模块与数据采集上位机之间的上传数据带宽。
18.如权利要求1所述的通信网关的工作方法,其特征在于,输入模块与缓存模块之间的数据处理能力,小于缓存模块与输出模块之间的数据处理能力。
19.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现一种记录工业网络通信周期过程数据的通信网关的工作方法。
20.一种计算机可读存储介质,所述计算机可读存储介质存储有执行实现一种记录工业网络通信周期过程数据的通信网关的工作方法的计算机程序。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811509006.6A CN109412939B (zh) | 2018-12-11 | 2018-12-11 | 记录工业网络通信周期过程数据的通信网关和工作方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811509006.6A CN109412939B (zh) | 2018-12-11 | 2018-12-11 | 记录工业网络通信周期过程数据的通信网关和工作方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109412939A true CN109412939A (zh) | 2019-03-01 |
CN109412939B CN109412939B (zh) | 2021-05-25 |
Family
ID=65458259
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811509006.6A Active CN109412939B (zh) | 2018-12-11 | 2018-12-11 | 记录工业网络通信周期过程数据的通信网关和工作方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109412939B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111650417A (zh) * | 2020-06-05 | 2020-09-11 | 东莞市凯格精机股份有限公司 | 一种刮刀状态检测方法、装置及系统 |
CN112860715A (zh) * | 2019-11-28 | 2021-05-28 | 北京沃东天骏信息技术有限公司 | 数据处理方法、装置、系统及存储介质 |
CN113114684A (zh) * | 2021-04-14 | 2021-07-13 | 浙江中拓合控科技有限公司 | 一种用于现场设备的信息传输系统、方法和装置 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08125690A (ja) * | 1994-10-21 | 1996-05-17 | Meidensha Corp | 中継装置のフロー制御方式 |
CN1176549A (zh) * | 1996-09-12 | 1998-03-18 | 中国科学院空间科学与应用研究中心 | 一种高速多路复接器及其实现方法 |
CN1697448A (zh) * | 2005-04-21 | 2005-11-16 | 上海大学 | MODBUS/TCP 工业以太网与设备网现场总线和Profibus DP现场总线间的多协议转换方法和装置 |
CN1901548A (zh) * | 2006-07-26 | 2007-01-24 | 白杰 | 缓冲区管理方法 |
CN103037204A (zh) * | 2011-10-10 | 2013-04-10 | 深圳市蓝韵实业有限公司 | 超声图像传输方法及系统 |
CA2752468C (en) * | 2010-09-21 | 2016-09-20 | Vantrix Corporation | System and method of pacing real time media transmission over a broadband channel using micro bursting |
CN107040459A (zh) * | 2017-03-27 | 2017-08-11 | 高岩 | 一种智能工业安全云网关设备系统和方法 |
CN107229639A (zh) * | 2016-03-24 | 2017-10-03 | 上海宝信软件股份有限公司 | 分布式实时数据库的存储系统 |
-
2018
- 2018-12-11 CN CN201811509006.6A patent/CN109412939B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08125690A (ja) * | 1994-10-21 | 1996-05-17 | Meidensha Corp | 中継装置のフロー制御方式 |
CN1176549A (zh) * | 1996-09-12 | 1998-03-18 | 中国科学院空间科学与应用研究中心 | 一种高速多路复接器及其实现方法 |
CN1697448A (zh) * | 2005-04-21 | 2005-11-16 | 上海大学 | MODBUS/TCP 工业以太网与设备网现场总线和Profibus DP现场总线间的多协议转换方法和装置 |
CN1901548A (zh) * | 2006-07-26 | 2007-01-24 | 白杰 | 缓冲区管理方法 |
CA2752468C (en) * | 2010-09-21 | 2016-09-20 | Vantrix Corporation | System and method of pacing real time media transmission over a broadband channel using micro bursting |
CN103037204A (zh) * | 2011-10-10 | 2013-04-10 | 深圳市蓝韵实业有限公司 | 超声图像传输方法及系统 |
CN107229639A (zh) * | 2016-03-24 | 2017-10-03 | 上海宝信软件股份有限公司 | 分布式实时数据库的存储系统 |
CN107040459A (zh) * | 2017-03-27 | 2017-08-11 | 高岩 | 一种智能工业安全云网关设备系统和方法 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112860715A (zh) * | 2019-11-28 | 2021-05-28 | 北京沃东天骏信息技术有限公司 | 数据处理方法、装置、系统及存储介质 |
CN111650417A (zh) * | 2020-06-05 | 2020-09-11 | 东莞市凯格精机股份有限公司 | 一种刮刀状态检测方法、装置及系统 |
CN111650417B (zh) * | 2020-06-05 | 2023-06-02 | 东莞市凯格精机股份有限公司 | 一种刮刀状态检测方法、装置及系统 |
CN113114684A (zh) * | 2021-04-14 | 2021-07-13 | 浙江中拓合控科技有限公司 | 一种用于现场设备的信息传输系统、方法和装置 |
CN113114684B (zh) * | 2021-04-14 | 2022-08-16 | 浙江中拓合控科技有限公司 | 一种用于现场设备的信息传输系统、方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN109412939B (zh) | 2021-05-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11277455B2 (en) | Streaming system | |
CN109412939A (zh) | 记录工业网络通信周期过程数据的通信网关和工作方法 | |
US20180295311A1 (en) | Image transmission device and method | |
US10452513B2 (en) | Trace data capture device and method, system, diagnostic method and apparatus and computer program | |
WO2014058727A1 (en) | Systems and methods for capturing, replaying, or analyzing time-series data | |
CN104144088A (zh) | 一种提高时延测量精度的网络时延测量方法 | |
CN107172037B (zh) | 一种多路多通道高速数据流的实时分包解析方法 | |
KR101054109B1 (ko) | 메시지 큐 시간을 계산하기 위한 방법, 장치, 시스템 및 컴퓨터 판독가능 매체 | |
CN108197699A (zh) | 针对卷积神经网络硬件加速器的调试模块 | |
WO2019173018A1 (en) | Non-intrusive on-chip debugger with remote protocol support | |
CN109902000B (zh) | 变速多通道调试追踪系统、方法、设备及存储介质 | |
CN104573135B (zh) | 基于反射内存网与中间件技术的实时数据采集方法及装置 | |
CN105243037A (zh) | 基于fpga的多通道数据记录与回放方法 | |
CN105574810B (zh) | 用于图像系统总线带宽不足的图像实时传输容错方法 | |
US11178077B2 (en) | Real-time data processing and storage apparatus | |
CN105718349B (zh) | 跨管芯接口监听或全局观察消息排序 | |
CN116400622A (zh) | 一种可组网高精度数据采集监控系统及方法 | |
CN101594305A (zh) | 一种报文处理方法及装置 | |
CN109144742A (zh) | 通过队列交换信息的方法和处理队列的系统 | |
CN112579334B (zh) | 基于以太网的面向处理器的信号记录方法及装置 | |
CN117707906A (zh) | 一种基于fpga的网络数据流录制装置及回放装置 | |
CN109274451A (zh) | 一种时间获取方法、装置和设备 | |
CN116795605B (zh) | 一种外围器件互联扩展设备异常自动恢复系统以及方法 | |
US20150006713A1 (en) | High Performance Computing Network Activity Tracking Tool | |
CN115658573A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |