CN117235389A - 一种热连轧过程的实时数据回放方法及系统 - Google Patents

一种热连轧过程的实时数据回放方法及系统 Download PDF

Info

Publication number
CN117235389A
CN117235389A CN202311101190.1A CN202311101190A CN117235389A CN 117235389 A CN117235389 A CN 117235389A CN 202311101190 A CN202311101190 A CN 202311101190A CN 117235389 A CN117235389 A CN 117235389A
Authority
CN
China
Prior art keywords
data
tcp
rolling process
continuous rolling
hot continuous
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
Application number
CN202311101190.1A
Other languages
English (en)
Other versions
CN117235389B (zh
Inventor
张凯
王亚礼
张学艺
彭开香
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
University of Science and Technology Beijing USTB
Original Assignee
University of Science and Technology Beijing USTB
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by University of Science and Technology Beijing USTB filed Critical University of Science and Technology Beijing USTB
Priority to CN202311101190.1A priority Critical patent/CN117235389B/zh
Publication of CN117235389A publication Critical patent/CN117235389A/zh
Application granted granted Critical
Publication of CN117235389B publication Critical patent/CN117235389B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Computer And Data Communications (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供一种热连轧过程的实时数据回放方法及系统,涉及数据回放仿真技术领域,包括:建立TCP客户端与TCP服务器端之间的数据通信连接;TCP服务器端将热连轧过程数据传输至TCP客户端;TCP客户端接收热连轧过程数据,根据用户需求将热连轧过程数据送至pSpace数据库和前端Web网页进行展示,完成热连轧过程的实时数据回放。本发明的方法和系统基于带钢热连轧过程常见工序,模拟实际生产过程中工业实时数据的现场传输,仿真实现热连轧过程中数据从产生到传输以及最终实时可视化显示的数据回放过程。

Description

一种热连轧过程的实时数据回放方法及系统
技术领域
本发明涉及数据回放仿真技术领域,尤其涉及一种热连轧过程的实时数据回放方法及系统。
背景技术
热连轧过程板带轧机系统规模大、运行机理复杂,当生产过程中的工作状况与运行条件变化时,工艺系统控制性能会产生差异,对应用于实际生产过程的控制方法造成一定的影响。如上所述,模拟实际生产过程中工业实时数据的现场传输,为用户使用、分析实际热连轧过程的实时数据提供更为真实的环境至关重要。
目前热连轧过程故障诊断技术越来越引起研究人员和工程设计者的重视,许多初学者在学习和使用这些方法时,缺乏热连轧过程实时数据的可视化认知,增大了方法的选取和应用难度。如上所述,为研究人员提供实时数据的可视化数据回放过程至关重要。
发明内容
本发明提供了一种热连轧过程的实时数据回放方法及系统,解决现有技术中缺乏热连轧过程实时数据的可视化认知,增大了方法的选取和应用难度的问题。
为解决上述发明目的,本发明提供的技术方案如下:一种热连轧过程的实时数据回放方法,其特征在于,步骤包括:
S1、建立TCP客户端与TCP服务器端之间的数据通信连接;
S2、TCP服务器端将热连轧过程数据传输至TCP客户端;
S3、TCP客户端接收热连轧过程数据,根据用户需求将热连轧过程数据送至pSpace数据库和前端Web网页进行展示,完成热连轧过程的实时数据回放。
优选地,步骤S1中,建立TCP客户端与TCP服务器之间的数据通信连接,包括:
在TCP服务器端完成对套接字对象的标识初始化;
TCP服务器通过bind()函数绑定特定的IP地址和端口号;
TCP服务器调用listen()函数对IP地址和端口号启用数据监听功能,阻塞数据发送,等待TCP客户端与相应IP地址连接;
当TCP客户端发出connect()请求时,TCP服务器端同时调用accept()接收到指令,建立TCP客户端与TCP服务器之间数据通信的连接。
优选地,步骤S3中,热连轧过程数据,包括:
热连轧过程的正常数据和故障注入之后的数据。
优选地,TCP服务器端与TCP客户端均使用Python进行通讯;Python与CodeSys工业自动化软件平台、基于Django框架的Web网页平台和pSpace数据库数据传输连接。
优选地,TCP服务器端将热连轧过程数据传输至TCP客户端,包括:
TCP客户端向TCP服务器端发送数据请求信号,TCP服务器端对数据请求信号进行接收和处理;
TCP客户端向服务器端依次循环发送不同采样时刻的数据至TCP服务器端;
全部数据发送完成后,服务器端向客户端发送响应数据,客户端对响应数据进行读取和处理,TCP服务器端接收请求数据发送指令,将热连轧过程数据发送至TCP客户端;
客户端与服务器端的一次数据交互结束,客户端与服务器端断开连接。
优选地,步骤S3中,TCP客户端接收热连轧过程数据,根据用户需求将热连轧过程数据送至pSpace数据库和前端Web网页进行展示,完成热连轧过程的实时数据回放,包括:
获取用户数据查看需求;
根据用户数据查看需求将热连轧过程数据发送至pSpace数据库和前端Web网页;
通过pSpace数据库和前端Web网页进行热连轧过程的实时数据回放。
优选地,步骤S3还包括:在数据展示前,对pSpace数据库进行配置,包括:
对数据库的用户组、用户和权限等相关信息进行配置;
对数据库测点管理,增加实时数据存储的测点,修改测点配置测点名、测点所在节点基本信息。
优选地,通过pSpace数据库进行热连轧过程的实时数据回放,包括:
将pSpacepythonAPI文件放在python解释器同级目录文件下的Lib\site-packages下,在程序中导入PythonAPI.PsServer软件包;
调用软件包中的Psobject和connect函数,建立与pSpace的连接;
将数据表头、数据存储测点名等基础信息写入字典;
调用pSpace.RealWritelist函数将实时数据写入实时数据库,在psMonitor中监视上传的实时数据。
一种热连轧过程的实时数据回放系统,系统用于上述的热连轧过程的实时数据回放方法,系统包括:
TCP通信建立模块,用于建立TCP客户端与TCP服务器端之间的数据通信连接;
TCP通信模块,用于TCP服务器端将热连轧过程数据传输至TCP客户端;
数据回放模块,用于所述TCP客户端接收所述热连轧过程数据,根据用户需求将所述热连轧过程数据送至pSpace数据库和前端Web网页进行展示,完成热连轧过程的实时数据回放。
优选地,TCP通信建立模块,用于,进一步用于在TCP服务器端完成对套接字对象的标识初始化;
TCP服务器通过bind()函数绑定特定的IP地址和端口号;
TCP服务器调用listen()函数对IP地址和端口号启用数据监听功能,阻塞数据发送,等待TCP客户端与相应IP地址连接;
当TCP客户端发出connect()请求时,TCP服务器端同时调用accept()接收到指令,建立TCP客户端与TCP服务器之间数据通信的连接。
一方面,提供了一种电子设备,所述电子设备包括处理器和存储器,所述存储器中存储有至少一条指令,所述至少一条指令由所述处理器加载并执行以实现上述热连轧过程的实时数据回放方法。
一方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令,所述至少一条指令由处理器加载并执行以实现上述热连轧过程的实时数据回放方法。
上述技术方案,与现有技术相比至少具有如下有益效果:
上述方案,本系统主要实现两个功能,一是模拟正常数据与故障数据在软硬件设备中的产生与传输,建立图形用户界面用于数据与硬件设备通讯传输的IP连接,同时还可以对数据的故障类型、发生位置、时间以及大小进行设置。二是建立仿真工序与前端网页和实时数据库的通讯连接,实现实时数据上传实时数据库和前端网页实时显示。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的热连轧过程的实时数据回放方法流程示意图;
图2是本发明实施例提供的Socket与TCP/IP通信协议关系图;
图3是本发明实施例提供的服务器与客户端之间的通信流程图;
图4是本发明实施例提供的硬件平台图;
图5是本发明实施例提供的Server模块图;
图6是本发明实施例提供的Handler整体内部模块图;
图7是本发明实施例提供的系统TCP/IP通信架构图;
图8是本发明实施例提供的pSpace的配置管理工具图;
图9是本发明实施例提供的MTV模型工作流程图;
图10是本发明实施例提供的实时数据回放总体功能图;
图11是本发明实施例提供的GUI建立TCP/IP连接图;
图12是本发明实施例提供的CodeSys曲线实时更新图;
图13是本发明实施例提供的pSpace实时曲线图;
图14是本发明实施例提供的前端网页动态显示一图;
图15是本发明实施例提供的前端网页动态显示二图;
图16是本发明实施例提供的热连轧过程的实时数据回放系统框图;
图17是本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例的附图,对本发明实施例的技术方案进行清楚、完整地描述。显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于所描述的本发明的实施例,本领域普通技术人员在无需创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明针对现有技术中缺乏热连轧过程实时数据的可视化认知,增大了方法的选取和应用难度的问题,提供了一种热连轧过程的实时数据回放方法和系统。
如图1所示,本发明实施例提供了一种热连轧过程的实时数据回放方法,该方法可以由电子设备实现。如图1所示的热连轧过程的实时数据回放方法流程图,该方法的处理流程可以包括如下的步骤:
S101、建立TCP客户端与TCP服务器端之间的数据通信连接;
S102、TCP服务器端将热连轧过程数据传输至TCP客户端;
S103、TCP客户端接收热连轧过程数据,根据用户需求将热连轧过程数据送至pSpace数据库和前端Web网页进行展示,完成热连轧过程的实时数据回放。
一种可行的实施方式中,本系统是应用于热连轧过程的实时数据回放系统,系统基于带钢热连轧过程常见工序,模拟实际生产过程中工业实时数据的现场传输,仿真实现热连轧过程中数据从产生到传输以及最终实时可视化显示的数据回放过程。本系统主要实现两个功能,一是模拟正常数据与故障数据在软硬件设备中的产生与传输,建立图形用户界面用于数据与硬件设备通讯传输的IP连接,同时还可以对数据的故障类型、发生位置、时间以及大小进行设置。二是建立仿真工序与前端网页和实时数据库的通讯连接,实现实时数据上传实时数据库和前端网页实时显示。
一种可行的实施方式中,步骤S101中,建立TCP客户端与TCP服务器之间的数据通信连接,包括:
在TCP服务器端完成对套接字对象的标识初始化;
TCP服务器通过bind()函数绑定特定的IP地址和端口号;
TCP服务器调用listen()函数对IP地址和端口号启用数据监听功能,阻塞数据发送,等待TCP客户端与相应IP地址连接;
当TCP客户端发出connect()请求时,TCP服务器端同时调用accept()接收到指令,建立TCP客户端与TCP服务器之间数据通信的连接。
一种可行的实施方式中,本系统将对数据在热连轧过程实况中的传输进行仿真回放。数据回放通信部分在于重现数据在热连轧实际过程中应用的PLC硬件中的通信传输,为此系统选用实际热连轧过程中应用的CodeSys自动化开发平台。同时,考虑到热连轧过程数据量大、数据类型丰富等特点,本系统采用基于TCP/IP协议的通信方法。
一种可行的实施方式中,传输控制协议/互联网协议(Transmission ControlProtocol/Internet Protocol,TCP/IP)是一套服务广域网的行业标准协议集。Socket套接字作为通信的基础和TCP/IP协议族通信之间的中间软件抽象层,为支持TCP/IP协议的网络通信提供了基本操作单元。在应用层和运输层之间,Socket套接字在应用层和传输层之间提供了一种机制,使应用程序中的数据能够与TCP/IP核心进行直接交互,从而便于开发人员进行数据通信程序的开发。
如图2所示,Socket是应用层和TCP/IP以及UDP通信协议族之间的软件抽象层,它是由一组接口组成的。在软件设计中,Socket作为一个套接字,将复杂的TCP/IP网络协议族设置在Socket接口之中。用户使用网络通信协议时,只需为套接字提供简单的数据接口,便可使用符合用户需求的网络通信协议。
一种可行的实施方式中,基于不同的传输协议和传输层,可将Socket套接字分为三种不同类型:
(1)流式套接字(Stream Socket),基于TCP/IP的套接字,它为应用层提供可靠的字节流式数据服务,是一种适合大量数据的无重复、无差错传输。
(2)数据报套接字,基于UDP协议的套接字,适合于对数据传输顺序和可靠性要求不高的情况,它将数据以相互独立的数据包形式传输。
(3)原始数据套接字(Raw Socket),该种套接字使应用程序直接访问网络层,通常面向开发新协议的开发人员。
综合不同类型通信协议的适用范围和热连轧过程数据量大的特点,本系统采用流式套接字进行数据传输,并且实现了以下步骤。首先,在服务器端完成对套接字对象的标识初始化,服务器通过bind()函数绑定特定的IP地址和端口号,然后服务器调用listen()函数对IP地址和端口号启用数据监听功能,阻塞数据发送,等待客户端与相应IP地址连接。当客户端发出connect()请求时,服务器端同时调用accept()接收到指令,此时成功建立客户端与服务器之间数据通信的连接。之后,客户端向服务器端发送数据请求信号,服务器端对该信号进行接收和处理,最后向客户端发送响应数据,客户端对数据进行读取和处理,至此客户端与服务器端的一次数据交互结束。如图3所示的流程图详尽而清晰地展示了系统的实现原理。为满足热连轧过程数据大量、无差错的特点,本系统选择了流式套接字进行数据传输,以更好地满足实际运行需求。
本发明可将正常数据和故障注入之后的数据作为待发送的数据流,当建立连接并收到数据发送请求后,依次循环发送不同采样时刻的数据,数据全部发送后一次交互结束、断开连接。
一种可行的实施方式中,热连轧过程数据回放系统的主要硬件如图4所示,在VME机箱中共安装4台PLC,分别模拟工业现场带钢热连轧过程的精轧、粗轧、卷取、加热炉4道工序。本系统其余硬件组成为:两台PC机,路由器,以及以太网线和串口线等。
一种可行的实施方式中,VME机箱作为目标机,背板基于VME协议,可以插CPU板、VME基板或其他I/O子板,为硬件提供基本的运行和通信环境,同时提供电源模块。
路由器在网络间起网关的作用,实现所需A021C板卡、PC机等设备的网络连接,保证设备间数据的实时传输。
两台PC机均安装Python软件,其中一台PC机负责对正常数据进行故障注入和向板卡发送故障数据,另一台PC机负责从板卡接收数据并上传实时数据库和前端网页显示。同时,在发送数据的PC机上安装有CodeSys V3.5 SP11嵌入式开发软件,用于提供基本的PLC通讯、开发环境。
A021C是德国Men公司的基于PowerPC架构MPC85系列的单板机,也是热连轧实际生产过程中涉及使用的PLC,它面向嵌入式工业应用,采用5V或3.3V供电,完全支持VME64标准,A021C为Freescale P1013内核,有2GB DDR3内存空间,64MB Boot/Program Flash用于加载BootLoader,保存环境变量或固化用户程序,128KB非易失性内存FRAM用于某些变量的掉电保存,1MB的双端口内存,既可以让本地CPU直接访问,又可以作为从站(Slave)供其他CPU(Master)通过VME总线访问,实现内存共享。有2个以太网口,支持以太网通信(1Gbit/s),用于网络启动或shell交互等,1个串口,支持串口通信,主要用于配置环境变量和获取打印信息,网口和串口都是RJ45接口。
本系统软件平台采用功能强大的CodeSys自动化开发平台。它支持IEC 61131-3国际标准,其独特专长是用户只需使用单一工具软件就可实现完整的项目解决方案。CodeSys编程工具也称为开发系统,开发系统运行在Windows环境中,提供了PLC应用程序编写及编译调试环境;运行系统运行在嵌入式设备中,本平台运行在嵌入式CPU板A021C中。开发系统和运行系统是组成嵌入式软PLC的最基本条件,两者相互独立又有着密切的联系。
开发系统主要用来编译和调试PLC逻辑,基于IEC61131-3标准,支持常用的5种PLC编程语言:指令表(IL),功能块图(FBD),梯形图(LD),结构化文本(ST)和顺序功能图(SFC),另外,CodeSys还支持第6种由功能块图转化而来的编程语言连续功能图(CFC)。与其他软PLC产品如SIEMENS公司的SMATIC WinAC、SOFTPLC公司的Soft-PLC等相比,CodeSys最大的优点在于它把逻辑控制、运动控制和可视化集成于一体,不需要其他的组态软件就可以轻松实现可视化。运行系统是嵌入式软PLC的核心,本平台的运行系统采用德国3S公司提供的最新开发包CodeSys SP11。开发系统和运行系统通过RS232串口或以太网通信,可以进行程序的下载,监控和断点调试,I/O驱动和OEM组件通过运行系统提供的库由控制器开发人员实现,然后开发系统再根据运行系统提供的接口进行逻辑操作。
一种可行的实施方式中,步骤S103中,热连轧过程数据,包括:
热连轧过程的正常数据和故障注入之后的数据。
优选地,TCP服务器端与TCP客户端均使用Python进行通讯;Python与CodeSys工业自动化软件平台、基于Django框架的Web网页平台和pSpace数据库数据传输连接。
优选地,TCP服务器端将热连轧过程数据传输至TCP客户端,包括:
TCP客户端向TCP服务器端发送数据请求信号,TCP服务器端对数据请求信号进行接收和处理;
TCP客户端向服务器端依次循环发送不同采样时刻的数据至TCP服务器端;
全部数据发送完成后,服务器端向客户端发送响应数据,客户端对响应数据进行读取和处理,TCP服务器端接收请求数据发送指令,将热连轧过程数据发送至TCP客户端;
客户端与服务器端的一次数据交互结束,客户端与服务器端断开连接。
一种可行的实施方式中,步骤S103中,TCP客户端接收热连轧过程数据,根据用户需求将热连轧过程数据送至pSpace数据库和前端Web网页进行展示,完成热连轧过程的实时数据回放,包括:
获取用户数据查看需求;
根据用户数据查看需求将热连轧过程数据发送至pSpace数据库和前端Web网页;
通过pSpace数据库和前端Web网页进行热连轧过程的实时数据回放。
一种可行的实施方式中,Python从数据库导入正常数据,同时也可通过编写完成的故障注入系统进一步获取故障数据,为实现Python与CodeSys软件的数据通信连接,需在CodeSys软件平台中设置相应的TCP/IP通信模块,下面将对涉及的模块进行详细介绍。
如图5所示,Server模块包含6个Handler子模块,可提供6个连接接口。依次根据客户端连接顺序将对应客户端的通信数据存放在不同的Handler模块中。图中的NBS.TCP_server子模块用于Server模块与Handler子模块的连接,xEnable为使能端常置为TRUE来让Server处于运行状态;xBusy为激活输出端,当Server处于连接状态时,该输出为1,来驱动后面的Handler模块工作;hServer为Server连接端,用于将多个Handler模块与server连接。图中Handler模块为封装之后的模块,xEnable为使能端,当其被置为TRUE时,该模块开始工作;hServer为Server连接端,用来建立Handler模块与Server的连接。
Handler模块用于CodeSys软件和PLC硬件对于外部通过TCP/IP通信方式传入的数据的读写处理。如图6给出了Handler的整体内部模块,下面将对各个模块的功能进行介绍。
NBS.TCP_Read模块为系统的读模块,当Handler模块处于连接状态时,该模块将接收的数据存放在ADR(GVL.rdbuffer)对应的地址,数据大小为全局变量GVL.rfbuffer的数据大小。Logical模块为系统写模块的驱动模块,只有当Logical模块产生一个上升沿时才能触发系统写模块。NBS.TCP_Write模块为系统的写模块,当接收到Logical模块产生的上升沿时,写模块开始工作,将GVL.wrbuffer中的数据发送给客户端,数据大小为szSize大小个字节。SrvErrorCoder和MUX模块共同组成系统读写异常模块,显示当前是否处于读写异常状态,如若处于读写异常会显示当前状态处于读异常或者写异常。
一种可行的实施方式中,本系统的TCP/IP通信实现的主要功能包括故障注入系统与板卡的通信以及板卡与故障数据接收端PC机的通信。
系统TCP/IP通信实现架构的具体描述如图7所示。
(1)故障数据发送端,以VME机箱作为目标机,向两块PowerPC架构MPC85系列的A021C板卡发送故障数据,这个交互过程是基于TCP/IP通信协议完成的。
(2)路由器端,起网关的作用,完成故障数据发送和接收端(A021C板卡、PC机等设备)间数据的实时传输。
(3)故障数据接收端,通过TCP/IP通讯完成对A021C板卡中转故障数据的读取,之后将故障数据发送至前端网页实时显示并上传至实时数据库pSpace。
下面介绍数据回放系统中基于Python的Socket客户端收发数据实现原理。
发送端:Python中导入Socket软件包;通过调用函数socket(AF_INET,SOCK_STREAM)创建Socket对象;调用软件包中的connect函数建立与服务端的连接;将待发送的数据转化为字节流,调用软件包中send函数发送数据。
接收端:Python中导入Socket软件包;通过调用函数socket(AF_INET,SOCK_STREAM)创建Socket对象;调用软件包中的connect函数建立与服务端的连接;调用软件包中recv函数接收字节流数据,将其转化为原始数据类型。
一种可行的实施方式中,数据回放系统实现通讯方式的创新性可表述如下:
本系统的数据通讯包括TCP Client端以及TCP Server端,所述TCP Client端以及TCP Server端均由Python进行通讯。Python作为系统数据传输的枢纽连接了CodeSys工业自动化软件平台、基于Django框架的Web网页平台和pSpace工业实时/历史数据库,同时还加入工业现场级PLC作为硬件数据传输的载体,在实验室环境下实现了多种软件与工业硬件PLC的数据通讯,克服了软件之间和软硬件之间数据通讯方式不兼容、数据无法在工业PLC硬件中真实高效传输等困难,表明系统良好软件通讯兼容性和丰富的数据展示方式。本系统TCP/IP通讯应用的方法包括:TCP Client端与TCP Server端基于TCP/IP协议建立通讯连接;TCP Client端向TCP Server端发送请求数据发送指令;当TCP Server端接收到请求数据发送指令时,TCP Server端生成所需的热连轧过程正常数据和故障数据,并将数据发送给TCP Client端;TCP Client端接收到数据,根据用户需求将数据送pSpace数据库和前端Web网页实时显示。在整个数据通讯过程中,是以TCP/IP通讯方式作为基础,结合各个软件和硬件的通讯实现原理,综合考虑各个软硬件相互之间通讯的兼容性和数据展示的高效性与多样性,搭建了一个以Python的Socket通讯为基础的软硬件数据回放系统平台。例如,在CodeSys软件中需配置相应的通讯模块和存储与发送数据的全局变量区,在通讯模块中包含与Python和PLC硬件的实时通讯;在全局变量区需留出对应的存取变量和地址,并在CodeSys软件中编写必要的程序以控制全局变量区的数据通讯。
一种可行的实施方式中,步骤S103还包括:在数据展示前,对pSpace数据库进行配置,包括:
对数据库的用户组、用户和权限等相关信息进行配置;
对数据库测点管理,增加实时数据存储的测点,修改测点配置测点名、测点所在节点基本信息。
一种可行的实施方式中,通过pSpace数据库进行热连轧过程的实时数据回放,包括:
将pSpacepythonAPI文件放在python解释器同级目录文件下的Lib\site-packages下,在程序中导入PythonAPI.PsServer软件包;
调用软件包中的Psobject和connect函数,建立与pSpace的连接;
将数据表头、数据存储测点名等基础信息写入字典;
调用pSpace.RealWritelist函数将实时数据写入实时数据库,在psMonitor中监视上传的实时数据。
一种可行的实施方式中,pSpace具有处理PLC以及底层I/O设备等各种外部系统实时数据的能力。其强大的功能和灵活性帮助有效地管理和处理来自不同系统的大量数据。pSpace实时数据的存储包括诸多基本信息,如实时数据值、实时数据的时间戳和质量戳等部分。
pSpace特点众多,本系统选用pSpace作为数据回放部分的实时数据库主要基于其以下优点:
(1)高效采集和存储工业海量数据。测点数量大,pSpace测点容量单机600万点,集群3000万点,充分满足本系统热连轧过程对测点数目的要求;性能优越的数据读写能力,数据库历史数据读写能力都可达到1500万点/秒;历史数据存储时间不限,其存储仅受贮存设备硬件容量的限制,理论上存储的数据量不受限制;支持丰富的数据类型,pSpace支持浮点型、布尔型等数据类型,满足本系统工业热连轧过程背景对数据类型和数据存储容量的需求。
(2)数据与编程接口丰富,便于集成第三方系统。支持故障注入系统运用的Python软件,提供数据库连接及数据上传的编程接口,能直接获取经过Python程序处理的实时数据。
(3)冗余机制提高系统连用性和可靠性。支持状态监视和断线重连功能,这意味着在整个系统的任何部分出现故障时,系统都能够及时检测并自动恢复正常运行。
(4)支持对数据时间戳、质量戳等准确信息的采集。pSpace的数据采集程序充分满足OPC协议中对时间戳和质量戳的需求。用户可根据实际工况和个人需求选择使用现场设备本身的或是pSpace提供的时间戳和质量戳对数据进行采集。
在实时数据上传pSpace数据库之前需要对pSpace工具客户端进行配套和管理,这些工具客户端具有安全登录、远程管理的特点,便于用户的使用。
一种可行的实施方式中,如图8左上部分所示,psConfig是pSpace的数据库配置工具,为实现实时数据写入pSpace需要对其进行如下配置:对数据库的用户组、用户和权限等相关信息进行配置,对数据库测点管理,增加实时数据存储的测点,修改测点配置测点名、测点所在节点等基本信息。
如图8右下部分所示,psMonitor是pSpace的数据库监视工具,用于测点数据监视,同样需要进行相关配置:配置待监测的测点从而监视对应测点的实时数据和历史数据;配置服务器监视显示信息,获取服务器当前状态、测点数量、授权信息、连接客户端信息、采集器信息、计算站信息、设备信息等。
基于Python的pSpace实时故障数据回放方法如下:
(1)将pSpacepythonAPI文件放在python解释器同级目录文件下的Lib\site-packages下,在程序中导入PythonAPI.PsServer软件包。
(2)调用软件包中的Psobject和connect函数,建立与pSpace的连接。
(3)将数据表头、数据存储测点名等基础信息写入字典,最后调用pSpace.RealWritelist函数将实时数据写入实时数据库,此时可在psMonitor中监视上传的实时数据。
一种可行的实施方式中,随着Internet技术的快速发展,以信息发布与检索技术为基础的网络技术Benin广泛应用,这使得网络应用系统的体系结构由传统的主从式向柔性的分布式演化。这一演化给以技术为核心的现代信息网络带来了全新,这种体系结构被称为浏览器/服务器(Browser/Server,B/S)架构。相比传统的C/S模式,B/S结构具有许多优点。
首先,用户只需安装单一的浏览器软件(如IE、Microsoft Edge等),安装过程简便,操作界面简单统一,节省了用户机的资源,并提供了良好的用户体验。其次,B/S模式的基础是标准的TCP/IP和HTTP协议,这使得系统与因特网联系更加紧密。同时,HTML是一种开放的数据格式标准,使得B/S系统能够便捷地兼容各种格式的文件,从而更好地实现信息交互。B/S模式的建立基于网页和浏览器,视觉表现力相对于其他模式更加生动,给用户提供更好的交互体验,可视化界面的开发难度相对较低,降低了编程人员的开发成本。
基于上述优点,本系统选用前端网页显示实时数据的形式对故障数据进行可视化展示,为用户提供更好的数据可视化展示效果。
作为一个基于Python的Web应用框架,Django提供了前端网页开发所需的各种组件和工具,为用户提供了极大的方便。Django和Python共同构成了一个高效且易于维护的Web开发架构和平台,使得用户可以轻松实现功能强大且易于维护的Web应用。Django的架构被称为MTV(Model-Template-View),其中Model部分用于与数据库交互,Template为数据的展示提供html模板,View控制应用程序的协调、数据和模板的处理等方面。
下图9展示了MTV模型的工作流程。模型部分(models.py)建立了系统与数据库之间的映射关系,方便读取数据库中的数据进行处理和展示;模板部分(templates.py)包含编写的HTML网页文件,用于在浏览器中动态显示数据处理结果,使得用户可以方便地查看数据;视图部分包括了三种功能,即通过Socket接收实时数据、实时数据上传至pSpace实时数据库以及将数据返回至Web网页前端。视图模块将字节流数据转化为浮点型数据,并使用pSpace写入方法将浮点型数据写入pSpace实时数据库,然后调用模板中的HTML文件在浏览器中实时显示数据。
本系统应用Python开发的Django框架实现实时数据的前端网页显示,系统前端网页通过Django框架的AJAX技术与后端数据交互的步骤如下:
(1)在前端页面中引入jQuery库和CSRF令牌;
(2)在Django后端中定义视图,并指定返回数据的格式;
(3)在Django的URL配置文件中定义路由;
(4)浏览器根据需求通过AJAX技术将不同的页面请求发送到路由分发器(urls.py);
(5)由分发器再按照设置的路径调用对应的视图函数(views.py);
(6)视图函数根据接收到的请求调用模板中的网页,并向其返回数据在浏览器上实时显示。
一种可行的实施方式中,实时数据回放实现的总体功能如图10所示。数据回放所需的数据由热连轧过程故障注入系统产生,用户在图形用户界面上设置对应的的IP地址和数据的基本信息,之后发送端主机上的Python软件基于TCP/IP协议和Socket套接字的通信方法向PLC发送数据,另一台主机上的CodeSys对接收实时数据并进行跟踪,通过Track模块对跟踪曲线进行绘制,同时该主机的Python接收PLC向外写出的实时数据,在Python中将实时数据上传pSpace实时数据库并送前端网页显示。下面将对热连轧过程数据回放系统中三个主要部分的内容进行详细阐述:
(1)CodeSys/PLC收发数据。此部分数据通信基于TCP/IP协议,PLC的IP地址固定,两台PC机均通过Python建立Socket对象进而与PLC建立数据连接,它们分别承担数据接收和数据发送的功能。当四道工序正常工作时,CodeSys与Python通过TCP/IP建立连接,CodeSys中全局变量GVL.wrbuffer存放的数据实时发送至Python中建立的Socket客户端,之后数据立即从Python实时上传至pSpace实时数据库。对四道工序进行故障注入时,正常数据进入基于Python的热连轧过程故障注入系统得到故障数据,之后Python与CodeSys建立Socket通讯,将故障数据通过TCP/IP通信协议发送至PLC,与此同时CodeSys软件将接收到的数据存入全局变量GVL.rdbuffer中,当PLC写信号触发时,CodeSys将数据转存入全局变量GVL.wrbuffer中,进而发送至Python中建立的Socket客户端,Python在接收到数据后立即将数据实时上传至pSpace实时数据库。
如图11所示,GUI图形用户界面与对应IP地址建立连接,准备向PLC中发送故障数据。如图12所示,CodeSys中的全局变量曲线实时更新,体现故障数据经过PLC实时传输,CodeSys/PLC成功实现收发实时数据的功能。
本发明实施例中,将人工智能技术与土木工程进行深度融合,引入群体智能技术,提出了一套适用于非友好施工环境、复杂施工条件的碾压机器人机群系统智能碾压作业策略,可有效提高填筑工程碾压质量和施工效率,并提升碾压机装备的智能化水平。
实时数据上传pSpace实时数据库。此部分数据传输需要对pSpace数据工具客户端进行配套和管理,之后在Python中配置相关环境并调用pSpace.RealWritelist函数实时上传从PLC中接收的数据。如图13所示,当接收PLC数据并上传实时数据库后数据库监控端psMonitor中可查看对应变量的实时曲线,同时还可选择查看之前时刻的历史数据曲线。验证了实时数据上传pSpace实时数据库的功能。
前端网页实时数据显示。此部分基于Django进行数据的前端显示,浏览器请求指令向Django后端发送,请求数据送前端网页显示。如图14和图15所示,分别展示了前端显示的第25~34和第32~41组数据的实时曲线图。验证了实时数据在前端网页上的动态显示功能。
图16是本发明的一种热连轧过程的实时数据回放系统示意图,所述系统200用于上述的热连轧过程的实时数据回放,所述系统200包括:
TCP通信建立模块210,用于建立TCP客户端与TCP服务器端之间的数据通信连接;
TCP通信模块220,用于TCP服务器端将热连轧过程数据传输至TCP客户端;
数据回放模块230,用于所述TCP客户端接收所述热连轧过程数据,根据用户需求将所述热连轧过程数据送至pSpace数据库和前端Web网页进行展示,完成热连轧过程的实时数据回放。
优选地,TCP通信建立模块210,用于,进一步用于在TCP服务器端完成对套接字对象的标识初始化;
TCP服务器通过bind()函数绑定特定的IP地址和端口号;
TCP服务器调用listen()函数对IP地址和端口号启用数据监听功能,阻塞数据发送,等待TCP客户端与相应IP地址连接;
当TCP客户端发出connect()请求时,TCP服务器端同时调用accept()接收到指令,建立TCP客户端与TCP服务器之间数据通信的连接。
优选地,数据回放模块230,用于热连轧过程的正常数据和故障注入之后的数据。
优选地,TCP服务器端与TCP客户端均使用Python进行通讯;Python与CodeSys工业自动化软件平台、基于Django框架的Web网页平台和pSpace数据库数据传输连接。
优选地,TCP服务器端将热连轧过程数据传输至TCP客户端,包括:
TCP客户端向TCP服务器端发送数据请求信号,TCP服务器端对数据请求信号进行接收和处理;
TCP客户端向服务器端依次循环发送不同采样时刻的数据至TCP服务器端;
全部数据发送完成后,服务器端向客户端发送响应数据,客户端对响应数据进行读取和处理,TCP服务器端接收请求数据发送指令,将热连轧过程数据发送至TCP客户端;
客户端与服务器端的一次数据交互结束,客户端与服务器端断开连接。
优选地,数据回放模块230,用于获取用户数据查看需求;
根据用户数据查看需求将热连轧过程数据发送至pSpace数据库和前端Web网页;
通过pSpace数据库和前端Web网页进行热连轧过程的实时数据回放。
优选地,数据回放模块230,还用于在数据展示前,对pSpace数据库进行配置,包括:
对数据库的用户组、用户和权限等相关信息进行配置;
对数据库测点管理,增加实时数据存储的测点,修改测点配置测点名、测点所在节点基本信息。
优选地,通过pSpace数据库进行热连轧过程的实时数据回放,包括:
将pSpacepythonAPI文件放在python解释器同级目录文件下的Lib\site-packages下,在程序中导入PythonAPI.PsServer软件包;
调用软件包中的Psobject和connect函数,建立与pSpace的连接;
将数据表头、数据存储测点名等基础信息写入字典;
调用pSpace.RealWritelist函数将实时数据写入实时数据库,在psMonitor中监视上传的实时数据。
本发明实施例中,主要实现两个功能,一是模拟正常数据与故障数据在软硬件设备中的产生与传输,建立图形用户界面用于数据与硬件设备通讯传输的IP连接,同时还可以对数据的故障类型、发生位置、时间以及大小进行设置。二是建立仿真工序与前端网页和实时数据库的通讯连接,实现实时数据上传实时数据库和前端网页实时显示。
图17是本发明实施例提供的一种电子设备300的结构示意图,该电子设备300可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(centralprocessing units,CPU)301和一个或一个以上的存储器302,其中,所述存储器302中存储有至少一条指令,所述至少一条指令由所述处理器301加载并执行以实现下述热连轧过程的实时数据回放方法的步骤:
S1、建立TCP客户端与TCP服务器端之间的数据通信连接;
S2、TCP服务器端将热连轧过程数据传输至TCP客户端;
S3、TCP客户端接收热连轧过程数据,根据用户需求将热连轧过程数据送至pSpace数据库和前端Web网页进行展示,完成热连轧过程的实时数据回放。
在示例性实施例中,还提供了一种计算机可读存储介质,例如包括指令的存储器,上述指令可由终端中的处理器执行以完成上述热连轧过程的实时数据回放方法。例如,所述计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。

Claims (10)

1.一种热连轧过程的实时数据回放方法,其特征在于,方法步骤包括:
S1、建立TCP客户端与TCP服务器端之间的数据通信连接;
S2、TCP服务器端将热连轧过程数据传输至TCP客户端;
S3、所述TCP客户端接收所述热连轧过程数据,根据用户需求将所述热连轧过程数据送至pSpace数据库和前端Web网页进行展示,完成热连轧过程的实时数据回放。
2.根据权利要求1所述的方法,其特征在于,所述步骤S1中,建立TCP客户端与TCP服务器之间的数据通信连接,包括:
在TCP服务器端完成对套接字对象的标识初始化;
TCP服务器通过bind()函数绑定特定的IP地址和端口号;
TCP服务器调用listen()函数对IP地址和端口号启用数据监听功能,阻塞数据发送,等待TCP客户端与相应IP地址连接;
当TCP客户端发出connect()请求时,TCP服务器端同时调用accept()接收到指令,建立TCP客户端与TCP服务器之间数据通信的连接。
3.根据权利要求1所述的方法,其特征在于,所述步骤S3中,热连轧过程数据,包括:
热连轧过程的正常数据和故障注入之后的数据。
4.根据权利要求3所述的方法,其特征在于,所述TCP服务器端与所述TCP客户端均使用Python进行通讯;所述Python与CodeSys工业自动化软件平台、基于Django框架的Web网页平台和pSpace数据库数据传输连接。
5.根据权利要求4所述的方法,其特征在于,所述TCP服务器端将热连轧过程数据传输至TCP客户端,包括:
TCP客户端向TCP服务器端发送数据请求信号,TCP服务器端对所述数据请求信号进行接收和处理;
TCP客户端向服务器端依次循环发送不同采样时刻的数据至所述TCP服务器端;
全部数据发送完成后,所述服务器端向客户端发送响应数据,客户端对所述响应数据进行读取和处理,TCP服务器端接收所述请求数据发送指令,将热连轧过程数据发送至所述TCP客户端;
客户端与服务器端的一次数据交互结束,客户端与所述服务器端断开连接。
6.根据权利要求5所述的方法,其特征在于,所述步骤S3中,所述TCP客户端接收所述热连轧过程数据,根据用户需求将所述热连轧过程数据送至pSpace数据库和前端Web网页进行展示,完成热连轧过程的实时数据回放,包括:
获取用户数据查看需求;
根据所述用户数据查看需求将所述热连轧过程数据发送至pSpace数据库和前端Web网页;
通过所述pSpace数据库和前端Web网页进行热连轧过程的实时数据回放。
7.根据权利要求6所述的方法,其特征在于,所述步骤S3还包括:在数据展示前,对所述pSpace数据库进行配置,包括:
对数据库的用户组、用户和权限等相关信息进行配置;
对数据库测点管理,增加实时数据存储的测点,修改测点配置测点名、测点所在节点基本信息。
8.根据权利要求7所述的方法,其特征在于,所述通过所述pSpace数据库进行热连轧过程的实时数据回放,包括:
将pSpacepythonAPI文件放在python解释器同级目录文件下的Lib\site-packages下,在程序中导入PythonAPI.PsServer软件包;
调用软件包中的Psobject和connect函数,建立与pSpace的连接;
将数据表头、数据存储测点名等基础信息写入字典;
调用pSpace.RealWritelist函数将实时数据写入实时数据库,在psMonitor中监视上传的实时数据。
9.一种热连轧过程的实时数据回放系统,其特征在于,所述系统用于如权利要求1~8任意一项所述的热连轧过程的实时数据回放方法,所述系统包括:
TCP通信建立模块,用于建立TCP客户端与TCP服务器端之间的数据通信连接;
TCP通信模块,用于TCP服务器端将热连轧过程数据传输至TCP客户端;
数据回放模块,用于所述TCP客户端接收所述热连轧过程数据,根据用户需求将所述热连轧过程数据送至pSpace数据库和前端Web网页进行展示,完成热连轧过程的实时数据回放。
10.根据权利要求9所述的系统,其特征在于,所述TCP通信建立模块,用于,进一步用于在TCP服务器端完成对套接字对象的标识初始化;
TCP服务器通过bind()函数绑定特定的IP地址和端口号;
TCP服务器调用listen()函数对IP地址和端口号启用数据监听功能,阻塞数据发送,等待TCP客户端与相应IP地址连接;
当TCP客户端发出connect()请求时,TCP服务器端同时调用accept()接收到指令,建立TCP客户端与TCP服务器之间数据通信的连接。
CN202311101190.1A 2023-08-29 2023-08-29 一种热连轧过程的实时数据回放方法及系统 Active CN117235389B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311101190.1A CN117235389B (zh) 2023-08-29 2023-08-29 一种热连轧过程的实时数据回放方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311101190.1A CN117235389B (zh) 2023-08-29 2023-08-29 一种热连轧过程的实时数据回放方法及系统

Publications (2)

Publication Number Publication Date
CN117235389A true CN117235389A (zh) 2023-12-15
CN117235389B CN117235389B (zh) 2024-09-03

Family

ID=89087057

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311101190.1A Active CN117235389B (zh) 2023-08-29 2023-08-29 一种热连轧过程的实时数据回放方法及系统

Country Status (1)

Country Link
CN (1) CN117235389B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6609159B1 (en) * 1998-11-30 2003-08-19 Semyon Dukach Methods, systems, and machine readable programming for interposing front end servers between servers and clients
CN101272402A (zh) * 2008-05-14 2008-09-24 深圳市同洲电子股份有限公司 一种数据传输的方法、装置及系统
CN113609416A (zh) * 2021-07-20 2021-11-05 天津七所精密机电技术有限公司 一种基于Django扩展异步Web访问的系统及其方法
CN115757467A (zh) * 2022-11-22 2023-03-07 江苏苏宁银行股份有限公司 一种基于Django的多端对接服务系统及其基础环境构建方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6609159B1 (en) * 1998-11-30 2003-08-19 Semyon Dukach Methods, systems, and machine readable programming for interposing front end servers between servers and clients
CN101272402A (zh) * 2008-05-14 2008-09-24 深圳市同洲电子股份有限公司 一种数据传输的方法、装置及系统
CN113609416A (zh) * 2021-07-20 2021-11-05 天津七所精密机电技术有限公司 一种基于Django扩展异步Web访问的系统及其方法
CN115757467A (zh) * 2022-11-22 2023-03-07 江苏苏宁银行股份有限公司 一种基于Django的多端对接服务系统及其基础环境构建方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
毛俊;彭宏;孟利民;: "基于Django框架的车载定位系统PDF报表下载软件的设计与实现", 浙江工业大学学报, no. 04, 15 August 2012 (2012-08-15) *

Also Published As

Publication number Publication date
CN117235389B (zh) 2024-09-03

Similar Documents

Publication Publication Date Title
CN103336724B (zh) 用于Flash应用程序的具有分布式对象的集成硬件平台的系统和方法
CN110502861B (zh) 基于卫星信息流的全数字化仿真系统
US11366945B2 (en) Soft-real-time hub providing data transport for processor-in-the-loop (PIL) simulations
US7957951B2 (en) Address translation system for use in a simulation environment
CN103135536B (zh) 一种dcs系统与计算机生产仿真模型信息处理方法
CN103713940A (zh) 一种基于rtx-hla-反射内存卡的可重构分布式实时仿真方法
CN103608735A (zh) 仿真系统、用于执行仿真的方法、控制系统和计算机程序产品
US20080229165A1 (en) Address translation system for use in a simulation environment
CN103597414A (zh) 仿真系统、用于执行仿真的方法、控制系统和计算机程序产品
CN116861652A (zh) 一种基于数字孪生的实时仿真方法及系统
WO2024140914A1 (zh) 基于物联网管理系统的仿真平台和仿真方法
CN109445384B (zh) 一种多设备控制系统
CN117235389B (zh) 一种热连轧过程的实时数据回放方法及系统
Florian et al. An open-source hardware/software architecture for remote control of SoC-FPGA based systems
CN105138390B (zh) 应用在过程监测控制系统与仿真支撑系统间的实时数据通讯系统及方法
CN200997073Y (zh) 基于全数字环形总线式通用型数控系统
CN115903569A (zh) 一种全数字综合模块化航电系统
CN210807344U (zh) 一种远程fpga实验系统
CN100375031C (zh) 软件总线和芯片结构的可重构虚拟仪器
CN110098991B (zh) 将EtherCAT总线系统接入通用物联云平台的设备
CN114189534A (zh) 一种物联网系统中设备交互软件仿真程序的设计方法
Makarcheva Implementation of a PLC Сode on Raspberry Pi in CODESYS Environment
CN112859643A (zh) 一种物理系统仿真机及其组建方法
CN113395306A (zh) 一种远程虚实结合的fpga实验系统
Sveda et al. Sensor networking

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