CN105516087A - 基于过程控制服务器的socket通讯接口系统 - Google Patents
基于过程控制服务器的socket通讯接口系统 Download PDFInfo
- Publication number
- CN105516087A CN105516087A CN201510842970.0A CN201510842970A CN105516087A CN 105516087 A CN105516087 A CN 105516087A CN 201510842970 A CN201510842970 A CN 201510842970A CN 105516087 A CN105516087 A CN 105516087A
- Authority
- CN
- China
- Prior art keywords
- client
- communication interface
- control server
- socket communication
- process control
- 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
- 230000006854 communication Effects 0.000 title claims abstract description 219
- 238000004891 communication Methods 0.000 title claims abstract description 197
- 238000004886 process control Methods 0.000 title claims abstract description 82
- 230000003993 interaction Effects 0.000 claims abstract description 36
- 238000000034 method Methods 0.000 claims description 42
- 238000012795 verification Methods 0.000 claims description 31
- 238000005538 encapsulation Methods 0.000 claims description 14
- 238000004806 packaging method and process Methods 0.000 claims description 14
- 230000005540 biological transmission Effects 0.000 claims description 12
- 208000011580 syndromic disease Diseases 0.000 claims description 4
- 230000006870 function Effects 0.000 description 22
- 238000007689 inspection Methods 0.000 description 18
- 229910000831 Steel Inorganic materials 0.000 description 14
- 239000010959 steel Substances 0.000 description 14
- 230000008901 benefit Effects 0.000 description 8
- 238000013461 design Methods 0.000 description 7
- 238000001514 detection method Methods 0.000 description 7
- 238000012369 In process control Methods 0.000 description 6
- 238000010965 in-process control Methods 0.000 description 6
- 238000005096 rolling process Methods 0.000 description 6
- 239000003054 catalyst Substances 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000000153 supplemental effect Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- XEEYBQQBJWHFJM-UHFFFAOYSA-N Iron Chemical compound [Fe] XEEYBQQBJWHFJM-UHFFFAOYSA-N 0.000 description 2
- 239000002253 acid Substances 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000000151 deposition Methods 0.000 description 2
- 238000002360 preparation method Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 241000931705 Cicada Species 0.000 description 1
- 241001269238 Data Species 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 238000005097 cold rolling Methods 0.000 description 1
- 238000005314 correlation function Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 229910052742 iron Inorganic materials 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 238000003466 welding Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/161—Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
- H04L69/162—Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields involving adaptations of sockets based mechanisms
-
- 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/418—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
- G05B19/4185—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by the network communication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
- H04L65/1073—Registration or de-registration
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/133—Protocols for remote procedure calls [RPC]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/30—Definitions, standards or architectural aspects of layered protocol stacks
- H04L69/32—Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
- H04L69/321—Interlayer communication protocols or service data unit [SDU] definitions; Interfaces between layers
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Quality & Reliability (AREA)
- Computing Systems (AREA)
- Manufacturing & Machinery (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Business, Economics & Management (AREA)
- General Business, Economics & Management (AREA)
- Multimedia (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明公开了一种基于过程控制服务器的socket通讯接口系统,通过注册单元,在所述过程控制服务器的底层目录文件中注册客户端的名称、客户端的IP地址、客户端的端口号;以及分配单元在所述过程控制服务器的任务task文件夹下为所述socket通讯接口分配任务号,并且标识出所述任务号对应的名称、编号、优先级、路径。使得在过程控制服务器和客户端的通讯中,通过socket通讯接口来兼容外部所有的客户端,并通过socket通讯接口来和外部所有的客户端进行数据交互。
Description
技术领域
本申请涉及轧钢技术领域,尤其涉及一种基于过程控制服务器的socket通讯接口系统。
背景技术
在首钢京唐公司第三冷轧厂的1420酸连轧产线上,使用的过程控制系统为日本三菱-日立公司的RS90-250系列服务器系统。
该系统基于Linux操作平台,采用Renix-EM技术实现,具有快速响应和高可靠性的特点。
所有的客户端(即:过程控制终端)在和RS90-250系列过程控制服务器进行通讯时,都是通过以太网采用TCP/IP协议与日立RS90-250系列过程控制服务器连接。而在RS90-250过程控制服务器中,使用日立Nexus通讯中间件实现和客户端的网络通讯的相关功能。
但由于日立Nexus通讯中间件是日立公司独立研发并使用的通讯中间件,不具有兼容性。因此,日立RS90-250系列过程控制服务器在和不属于日立的其他客户端进行通讯时,极易造成数据紊乱,影响正常生产。
发明内容
本发明了提供了一种基于过程控制服务器的socket通讯接口系统,以解决过程控制服务器与不同客户端间通讯的技术问题。
为解决上述技术问题,本发明提供了一种基于过程控制服务器的socket通讯接口系统,包括:
注册单元,用于在所述过程控制服务器的底层目录文件中注册客户端的名称、客户端的IP地址、客户端的端口号;
分配单元,用于在所述过程控制服务器的任务task文件夹下为所述socket通讯接口分配任务号,并且标识出所述任务号对应的名称、编号、优先级、路径。
优选的,所述底层目录文件包括:所述过程控制服务器的根目录下的etc文件夹下的service文件与host文件。
优选的,所述socket通讯接口系统还包括:
校验单元,用于在接收到第一客户端发送的第一连接请求之后,校验所述第一客户端是否为合法的客户端;
连接单元,用于在所述校验单元校验出所述第一客户端为合法的客户端之后,基于为所述socket通讯接口分配的任务号调用所述socket通讯接口和所述第一客户端建立socket连接;
第一数据封装单元,用于在连接成功之后,将第一报文数据封装为第一报文结构体;
第一发送单元,将所述第一报文结构体发送给所述第一客户端。
优选的,所述校验单元具体包括:
获取单元,用于在接收到所述第一连接请求之后,基于所述第一连接请求获得所述第一客户端的名称、所述第一客户端的IP地址、所述第一客户端的端口号;
校验子单元,用于校验所述第一客户端的名称是否注册在所述底层目录文件中的客户端的名称中;和/或
校验所述第一客户端的IP地址是否注册在所述底层目录文件中的客户端的IP地址中;和/或
校验所述第一客户端的端口号是否注册在所述底层目录文件中的客户端的端口号中;
若校验出所述第一客户端的名称、和/或所述第一客户端的IP地址、和/或第一客户端的端口号注册在所述底层目录文件中,则表示所述第一客户端为合法的客户端。
优选的,所述校验单元,还用于在接收到第二客户端发送的第二连接请求之后,校验所述第二客户端是否为合法的客户端;
所述连接单元,还用于在所述校验单元校验出所述第二客户端为合法的客户端之后,基于为所述socket通讯接口分配的任务号调用所述socket通讯接口和所述第二客户端建立socket连接;
所述系统还包括:
第二数据封装单元,用于在连接成功之后,将第二报文数据封装为第二报文结构体;
第二发送单元,将所述第二报文结构体发送给所述第二客户端。
本发明还提供了一种过程控制服务器,包括上述技术方案中所述的基于过程控制服务器的socket通讯接口系统。
本发明还提供了一种数据交互系统,包括:
N个客户端,N>2且为整数;
如上述技术方案所述的过程控制服务器;其中,所述过程控制服务器包括如上述技术方案所述的基于过程控制服务器的socket通讯接口系统;
所述过程控制服务器用于接收所述N个客户端中的第一客户端的连接请求之后,利用所述socket通讯接口和所述第一客户端建立连接并进行数据交互;也可以利用所述socket通讯接口直接和所述N个客户端中的第二客户端进行数据交互。
优选的,所述通讯接口系统具体包括:
校验单元,用于在接收到所述第一客户端发送的第一连接请求之后,校验所述第一客户端是否为合法的客户端;
连接单元,用于在所述校验单元校验出所述第一客户端为合法的客户端之后,基于为所述socket通讯接口分配的任务号调用所述socket通讯接口和所述第一客户端建立socket连接;
第一数据封装单元,用于在连接成功之后,将第一报文数据封装为第一报文结构体;
第一发送单元,将所述第一报文结构体发送给所述第一客户端。
优选的,所述校验单元,还用于在接收到所述第二客户端发送的第二连接请求之后,校验所述第二客户端是否为合法的客户端;
所述连接单元,还用于在所述校验单元校验出所述第二客户端为合法的客户端之后,基于为所述socket通讯接口分配的任务号调用所述socket通讯接口和所述第二客户端建立socket连接;
所述通讯接口系统还包括:
第二数据封装单元,用于在连接成功之后,将第二报文数据封装为第二报文结构体;
第二发送单元,将所述第二报文结构体发送给所述第二客户端。
通过本发明的一个或者多个技术方案,本发明具有以下有益效果或者优点:
本发明提供了一种基于过程控制服务器的socket通讯接口系统,通过注册单元,在所述过程控制服务器的底层目录文件中注册客户端的名称、客户端的IP地址、客户端的端口号;以及分配单元在所述过程控制服务器的任务task文件夹下为所述socket通讯接口分配任务号,并且标识出所述任务号对应的名称、编号、优先级、路径。使得在过程控制服务器和客户端的通讯中,通过socket通讯接口来兼容外部所有的客户端,并通过socket通讯接口来和外部所有的客户端进行数据交互,进而避免Nexus通讯中间件有关兼容性的问题。
进一步的,由于socket通讯接口在工作时,采用阻塞式IO形式通讯,具有高效稳定的优点。
进一步的,在本发明设计的基于过程控制服务器的socket通讯接口系统中,并不需要再使用其他的接口和第二客户端进行数据交互,而是同一个socket通讯接口可以和不同的客户端进行数据交互。
进一步的,socket通讯接口在和第一客户端进行数据交互之后,如果要和第二客户端进行数据交互,只需要封装第二客户端的名称、IP地址、端口号、通讯协议族、报文数据消息这五项,便可以直接向第二客户端发送封装的报文数据,省时省力。进而可以实现向不同客户端发送不同报文数据的功能。
附图说明
图1为本发明实施例中一种基于过程控制服务器的socket通讯接口系统的结构示意图。
具体实施方式
为了使本申请所属技术领域中的技术人员更清楚地理解本申请,下面结合附图,通过具体实施例对本申请技术方案作详细描述。
本发明的过程控制服务器主要涉及RS90-250系列过程控制服务器,即:在RS90-250系列过程控制服务器的基础上进行改进,基于socket(套接字)通讯技术,运用socket下的AF_INET协议族,在RS90-250系列过程控制服务器中设计一种高效稳定且复用性高的socket通讯接口,来和外部的客户端(外部的客户端既包括日立的过程控制终端,也包括不属于日立的其他控制终端)进行数据交互。
由于在目前的RS90-250系列过程控制服务器中,一般使用Nexus通讯中间件和外部的客户端进行通讯,而由于Nexus通讯中间件的不兼容性,在和不同的客户端进行通讯时,容易造成数据混乱和数据丢失。因此,本发明主要开发一种基于RS90-250过程控制服务器的socket通讯接口系统,将通过socket通讯接口来兼容外部所有的客户端,并通过socket通讯接口来和外部所有的客户端进行数据交互,进而避免Nexus通讯中间件有关兼容性的问题。
下面首先介绍基于过程控制服务器的socket通讯接口系统。该通讯接口系统具体包括:
注册单元11,用于在所述过程控制服务器的底层目录文件中注册客户端的名称、客户端的IP地址、客户端的端口号。
在底层目录文件下,注册了过程控制服务器支持数据通讯的所有客户端。即:过程控制服务器将自身支持的所有客户端的信息(包括客户端名称、客户端的IP地址、客户端的端口号)都注册在底层目录文件中。
这些客户端的信息主要是为了验证具有接入请求的客户端的合法性,进而避免非法的客户端连接本过程控制服务器以及盗取本过程控制服务器中存储的各类数据。
具体来说,在过程控制服务器接收到客户端的连接请求之后,需要判断该客户端是否在底层目录文件下注册过。若注册过才表示该客户端是合法的客户端,本过程控制服务器可以响应其数据传输请求。若在底层目录文件下中查找不到该客户端的信息,就表示该客户端是非法的客户端,本过程控制服务器忽略其任何请求。
底层目录文件包括:所述过程控制服务器的根目录下的etc文件夹下的service文件与host文件。
注册单元11的主要目的,是为了在过程控制服务器中的根目录下的etc文件夹下的service(存放端口信息)文件与host(存放IP地址信息)文件中注册客户端的名称、所述客户端的IP地址与所述客户端的端口号。进而利用这些信息验证接入客户端的合法性。
分配单元12,用于在所述过程控制服务器的任务列表task文件下为所述socket通讯接口分配任务号,并且标识出所述任务号对应的名称、编号、优先级、路径。
具体来说,分配单元12的主要目的是为socket通讯接口分配一个任务号,使得socket通讯接口系统可以根据该任务号在过程控制服务器中调用socket通讯接口。
一般来说,过程控制服务器对所有程序任务都使用任务号来标识,因此,在建立socket通讯接口时,socket通讯接口系统也要首先为socket通讯接口分配一个任务号,当需要调用socket通讯接口时,socket通讯接口系统就能通过socket通讯接口对应的任务号直接调用该socket通讯接口。并且该socket通讯接口对应的通讯程序在过程控制服务器中的注册也就完成了。
应当注意的是,为socket通讯接口分配的任务号需要是过程控制服务器中之前没有使用过的任务号。一般来说,过程控制服务器中的所有程序任务都存储在task文件夹下,而和客户端通讯的socket通讯接口对应的通讯程序也放在task文件夹下。过程控制服务器在task列表中标识出了所有任务程序的名称、Task名称、Task的编号、Task的优先级、Task程序的路径。因此,将新增加的通讯程序(即:socket通讯接口对应的通讯程序)分配一个之前没有使用过的任务号,标识出task名称、编号、优先级、路径后,过程控制服务器就能通过任务号直接调用该socket通讯接口。
而在过程控制服务器中注册好客户端的名称、所述客户端的IP地址与所述客户端的端口号,以及为socket通讯接口分配好任务号之后,即可纳入socket通讯接口对应的通讯程序。
在socket通讯接口对应的通讯程序中,在主程序的main函数中,首先要激活通讯程序任务。即利用过程控制服务器中的自有函数nxopen(“funcs”)激活通讯程序任务,激活后查看函数返回值是否正确(即通讯程序是否正确注册)后对通讯程序分配一个factor。
这个factor使得通讯程序可以根据factor的不同执行不同的子函数取得不同的结果,例如在表检仪通讯程序中,可以标记fact=1时为数据发送,fact=2时为数据接收,fact=3时为其他程序功能。在分配好factor、标识明确factor下应执行的任务后,使用过程控制服务器中的自有函数nxclos()函数结束程序运行,释放内存。通讯程序的一次调用运行结束。
另外,在上述定义的factor中,已经标识了每一个factor下应执行的函数。例如表检仪系统只有一个功能,就是发送钢卷数据,那么factor只有一个,且该factor下定义的函数功能就是向表检仪发送钢卷数据。
socket通讯接口对应的通讯程序被设置成固定的格式,在main函数中首先调用服务器自有函数nxopen激活任务,检测任务注册无误后,根据不同的factor执行不同的功能函数,执行完毕后调用过程控制服务器服务器的自有函数nxclos结束程序运行。
具体来说,当过程控制服务器的注册单元11在底层目录文件中注册了客户端的名称、IP地址、端口号后,并且分配单元12在task文件夹下为所述socket通讯接口分配了任务号,并且标识出socket通讯接口对应的通讯任务的task名称、编号、优先级、路径后,即可调用socket通讯接口进行工作。
socket通讯接口在工作时,采用阻塞式IO形式通讯,具有高效稳定的优点。具体来说,先由过程控制服务器调用task任务号,在task列表中查找所要执行的通讯程序的task名称、编号、优先级、路径等调用信息后,然后调用该通讯程序并执行通讯任务。
在程序运行时,先使用过程控制服务器自有函数nxopen函数激活通讯任务程序,校验通讯程序是否注册成功后,即可根据不同的factor执行不同的函数实现不同的功能。执行完毕后由过程控制服务器自有函数nxclos函数关闭通讯任务程序,一次程序通讯结束。
这样的通讯程序运行方式,决定了每次进行通讯连接时就必须打开一个线程来激活通讯程序,在程序执行结束后才能关闭该线程。
在socket通讯接口需要启动时激活,不需要时关闭,可以有效的提升socket通讯接口的运行效率、减少网络负荷及过程控制服务器的运行负担,有着很明显的高效稳定优点。
而在调用socket通讯接口进行工作之前,可以先对socket通讯接口进行初始化,清除掉socket通讯接口中上一次数据交互时遗留的一些交互数据,提高socket通讯接口的响应效率。
而在调用socket通讯接口进行工作时,所述socket通讯接口系统还包括:
校验单元13,用于在接收到第一客户端发送的第一连接请求之后,校验所述第一客户端是否为合法的客户端。
进一步的,校验单元13具体包括:获取单元14和校验子单元15。
获取单元14,用于在接收到所述第一连接请求之后,基于所述第一连接请求获得所述第一客户端的名称、所述第一客户端的IP地址、所述第一客户端的端口号。
校验子单元15,用于校验所述第一客户端的名称、所述第一客户端的IP地址、所述第一客户端的端口号这三者中的一项或者几项是否在所述底层目录文件中的注册过。若校验出所述第一客户端的名称、所述第一客户端的IP地址、所述第一客户端的端口号这三者有一项或者几项注册在所述底层目录文件中,则表示所述第一客户端为合法的客户端。
具体的校验方式如下:
校验所述第一客户端的名称是否注册在所述底层目录文件中的客户端的名称中;和/或
校验所述第一客户端的IP地址是否注册在所述底层目录文件中的客户端的IP地址中;和/或
校验所述第一客户端的端口号是否注册在所述底层目录文件中的客户端的端口号中;
若校验出所述第一客户端的名称、和/或所述第一客户端的IP地址、和/或第一客户端的端口号注册在所述底层目录文件中,则表示所述第一客户端为合法的客户端。
校验的主要目的是利用注册在底层目录文件中的客户端信息来验证第一客户端的合法性。当验证出第一客户端为合法的客户端之后,则会触发下面的连接单元16工作。
连接单元16,用于在所述校验单元13校验出所述第一客户端为合法的客户端之后,基于为所述socket通讯接口分配的任务号调用所述socket通讯接口和所述第一客户端建立socket连接。
第一数据封装单元17,用于在连接成功之后,将第一报文数据封装为第一报文结构体。
第一发送单元18,将所述第一报文结构体发送给所述第一客户端。
具体来说,在封装的过程中,第一数据封装单元17将需要发送的第一报文数据封装(即:赋值)到smsg报文结构体中,使其成为第一报文结构体。再利用第一发送单元18(第一发送单元18对应到RS90过程控制服务器中可以是Renix-EM通讯中间件)将第一报文结构体发送到客户端的指定端口中。
以上便是过程控制服务器和第一客户端的数据交互过程。
举例来说,1420酸轧轧制的带钢属于超薄品种,对表面质量要求极其严格,不允许有孔洞、边裂、翘皮等表面质量缺陷问题。1420酸轧产线新增加一套带钢表面质量检测系统(以下简称:表检仪系统),目的在于实时对轧制带钢的表面质量进行检测。表检仪系统对带钢进行检测时,需要准确的对应正在检测中的带钢数据,例如带钢流水号、带钢卷号、钢种、重量、宽度、厚度、长度等的详细数据。但带钢的这些数据都存储在日立RS90过程控制服务器中,要想使表检仪系统有这些参数数据,RS90过程控制服务器则必须发送这些参数数据给表检仪系统。
在RS90过程控制服务器中已经具有socket通讯接口的基础上,RS90过程控制服务器和表检仪系统的具体通讯过程是:
RS90过程控制服务器实时监听socket通讯接口,当接收到表检仪系统发送的连接请求之后,则利用校验单元13首先校验表检仪系统的合法性。
校验合法之后,连接单元16调用socket通讯接口和表检仪系统建立socket连接。
然后第一数据封装单元17将表检仪系统需要的参数数据封装为第一报文结构体。并通过第一发送单元18发送给表检仪系统。
以上是RS90过程控制服务器和表检仪系统的通讯过程。这样的一次通讯就可以将表检仪系统需要的参数发送给表检仪系统。例如将表检仪系统需要的一卷钢卷的参数数据发送到表检仪系统中。而当每卷带钢上线准备轧制时,在入口焊接位置都可以触发socket通讯接口发送当前准备轧制的钢卷参数。以此类推,实现日立RS90过程控制服务器与表检仪系统的通讯。
如果有其他系统(例如带钢孔洞检测系统、SCADA电表实时数据采集系统)需要和RS90过程控制服务器进行通讯时,由于socket通讯接口均可采用修改系统的名称、IP地址、端口号、通讯协议族、报文数据消息这五项信息实现对新增系统的通讯,因此本发明的RS90过程控制服务器可以直接利用socket通讯接口发送其他系统需要的数据,并且任何外部系统都可采用socket通讯接口接入日立Renix-EM平台下的RS90系列服务器。
一般来说,在通讯技术中,如果过程控制服务器和不同的客户端进行通讯,则需要使用不同的接口。例如,过程控制服务器在和第一客户端进行通讯时,需要先和第一客户端进行连接,然后确定通讯接口和第一客户端进行数据通讯。而过程控制服务器在和第二客户端进行通讯时,又需要和第二客户端进行连接,然后重新确定通讯接口和第二客户端进行数据通讯。
但是在本发明设计的基于过程控制服务器的socket通讯接口系统中,并不需要再使用其他的接口和第二客户端进行数据交互,而是同一个socket通讯接口可以和不同的客户端进行数据交互。例如,过程控制服务器在和第一客户端进行数据交互的基础上(即:过程控制服务器在发送了第一报文结构体给第一客户端),过程控制服务器还可以同时利用socket通讯接口和第二客户端进行数据通讯,或者同时和其他客户端进行数据通讯。
具体来说,在和第二客户端进行数据通讯时,所述校验单元13,还用于在接收到第二客户端发送的第二连接请求之后,校验所述第二客户端是否为合法的客户端;
所述连接单元16,还用于在所述校验单元校验出所述第二客户端为合法的客户端之后,基于为所述socket通讯接口分配的任务号调用所述socket通讯接口和所述第二客户端建立socket连接;
所述系统还包括:
第二数据封装单元19,用于将第二客户端(例如带钢孔洞检测系统或SCADA电表实时数据采集系统)的名称、所述第二客户端的IP地址、所述第二客户端的端口号、通讯协议族、第二报文数据(带钢孔洞检测系统需要的数据或SCADA电表实时数据采集系统需要的数据)封装为第二报文结构体。
在一种可能的实施方式中,可将第二客户端的名称、所述第二客户端的IP地址、所述第二客户端的端口号、通讯协议族、第二报文数据分别封装,然后整合为第二报文结构体。
在一种可能的实施方式中,可将第二客户端的名称、所述第二客户端的IP地址、所述第二客户端的端口号、通讯协议族、第二报文数据一并封装为第二报文结构体。
优选的,所述过程控制服务器也可以根据第二客户端发送的数据传输请求发送对应的数据给第二客户端。
第二发送单元20,将所述第二报文结构体发送给所述第二客户端。
以上便是过程控制服务器和两个客户端进行数据交互的具体实施过程。而采用本发明设计的socket通讯接口,可使RS90过程控制服务器和其他外部的任何客户端高效稳定的进行数据通讯,当RS90过程控制服务器需要与任何其他客户端进行通讯时,仅需要获知其他客户端的名称、IP地址、端口号、通讯协议族、以及需要的数据参数,便可以将要传输的数据封装到smsg报文结构体中,然后将封装后得到的报文结构体数据发送到对应的客户端中,并保证通讯准确率100%。另外,本发明设计的socket通讯接口,可以同时和其他外部的任何客户端高效稳定的进行数据通讯。
目前,在RS90过程控制服务器系统的1420酸连轧产线上,已经采用此接口成功开发了表面质量检测系统、带钢孔洞检测系统、SCADA电表实时数据采集系统三套系统,通讯准确率均为100%。以上三套系统都是在通讯接口程序不变的前提下,仅对客户端的名称、IP地址、端口号、通讯协议族、报文数据消息五项修改后,即可与不同系统进行通讯。
以上便是本发明中设计的基于过程控制服务器的socket通讯接口系统的实施原理的详细介绍。下面介绍本发明的过程控制服务器的优点。
1、本发明的过程控制服务器的socket通讯接口采用阻塞式IO形式通讯,具有高效稳定的优点。
2、可复用性强。任何客户端都可采用socket通讯接口接入过程控制服务器。具体来说,在本发明设计的基于过程控制服务器的socket通讯接口系统中,使用同一个socket通讯接口可以和不同的客户端进行数据交互。例如,socket通讯接口在和第一客户端进行数据交互之后,如果要和第二客户端进行数据交互,只需要封装第二客户端的名称、IP地址、端口号、通讯协议族、报文数据消息这五项,便可以直接向第二客户端发送封装的报文数据。以此类推,即可实现向不同客户端发送不同报文数据的功能。
基于同一发明构思,下面的实施例介绍了一种过程控制服务器,其包括上述实施例中描述的基于过程控制服务器的socket通讯接口系统。
由于在上面的实施例对于socket通讯接口系统工作原理已经进行了详细的描述,因此,在此本发明不再赘述过程控制服务器和外部客户端进行数据通讯的工作过程。
基于同一发明构思,下面的实施例介绍了一种数据交互系统。
本发明设计的数据交互系统包括:N个客户端,和上述实施例介绍的过程控制服务器;其中,所述过程控制服务器包括实施例一中介绍的基于过程控制服务器的socket通讯接口系统。
其中,客户端的数目至少为两个,即:N>2且为整数。
而过程控制服务器主要用于接收所述N个客户端中的第一客户端的连接请求之后,利用所述socket通讯接口和所述第一客户端建立连接并进行数据交互;以及
利用所述socket通讯接口和所述N个客户端中的第二客户端进行数据交互。
具体来说,所述过程控制服务器是通过socket通讯接口系统来实现数据交互的。socket通讯接口系统具体包括:
校验单元13,用于在接收到第一客户端发送的第一连接请求之后,校验所述第一客户端是否为合法的客户端;
连接单元16,用于在所述校验单元13校验出所述第一客户端为合法的客户端之后,基于为所述socket通讯接口分配的任务号调用所述socket通讯接口和所述第一客户端建立socket连接;
第一数据封装单元17,用于在连接成功之后,将第一报文数据封装为第一报文结构体;
第一发送单元18,将所述第一报文结构体发送给所述第一客户端。
以上是过程控制服务器和第一客户端的交互过程,而过程控制服务器和第二客户端进行数据交互时,
校验单元13,用于在接收到第二客户端发送的第二连接请求之后,校验所述第二客户端是否为合法的客户端;
连接单元16,用于在所述校验单元13校验出所述第二客户端为合法的客户端之后,基于为所述socket通讯接口分配的任务号调用所述socket通讯接口和所述第二客户端建立socket连接;
所述过程控制服务器还包括:
第二数据封装单元19,用于将第二客户端的名称、所述第二客户端的IP地址、所述第二客户端的端口号、通讯协议族、第二报文数据封装为第二报文结构体;
第二发送单元20,将所述第二报文结构体发送给所述第二客户端。
通过本发明的一个或者多个实施例,本发明具有以下有益效果或者优点:
本发明提供了一种基于过程控制服务器的socket通讯接口系统,通过注册单元,在所述过程控制服务器的底层目录文件中注册客户端的名称、客户端的IP地址、客户端的端口号;以及分配单元在所述过程控制服务器的任务task文件夹下为所述socket通讯接口分配任务号,并且标识出所述任务号对应的名称、编号、优先级、路径。使得在过程控制服务器和客户端的通讯中,通过socket通讯接口来兼容外部所有的客户端,并通过socket通讯接口来和外部所有的客户端进行数据交互,进而避免Nexus通讯中间件有关兼容性的问题。
进一步的,由于socket通讯接口在工作时,采用阻塞式IO形式通讯,具有高效稳定的优点。
进一步的,在本发明设计的基于过程控制服务器的socket通讯接口系统中,并不需要再使用其他的接口和第二客户端进行数据交互,而是同一个socket通讯接口可以和不同的客户端进行数据交互。
进一步的,socket通讯接口在和第一客户端进行数据交互之后,如果要和第二客户端进行数据交互,只需要封装第二客户端的名称、IP地址、端口号、通讯协议族、报文数据消息这五项,便可以向第二客户端发送封装的报文数据,省时省力。进而可以实现向不同客户端发送不同报文数据的功能。
尽管已描述了本申请的优选实施例,但本领域内的普通技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (9)
1.一种基于过程控制服务器的socket通讯接口系统,其特征在于,包括:
注册单元,用于在所述过程控制服务器的底层目录文件中注册客户端的名称、客户端的IP地址、客户端的端口号;
分配单元,用于在所述过程控制服务器的任务task文件夹下为所述socket通讯接口分配任务号,并且标识出所述任务号对应的名称、编号、优先级、路径。
2.如权利要求1所述的一种基于过程控制服务器的socket通讯接口系统,其特征在于,所述底层目录文件包括:所述过程控制服务器的根目录下的etc文件夹下的service文件与host文件。
3.如权利要求1所述的一种基于过程控制服务器的socket通讯接口系统,其特征在于,所述socket通讯接口系统还包括:
校验单元,用于在接收到第一客户端发送的第一连接请求之后,校验所述第一客户端是否为合法的客户端;
连接单元,用于在所述校验单元校验出所述第一客户端为合法的客户端之后,基于为所述socket通讯接口分配的任务号调用所述socket通讯接口和所述第一客户端建立socket连接;
第一数据封装单元,用于在连接成功之后,将第一报文数据封装为第一报文结构体;
第一发送单元,将所述第一报文结构体发送给所述第一客户端。
4.如权利要求3所述的一种基于过程控制服务器的socket通讯接口系统,其特征在于,所述校验单元具体包括:
获取单元,用于在接收到所述第一连接请求之后,基于所述第一连接请求获得所述第一客户端的名称、所述第一客户端的IP地址、所述第一客户端的端口号;
校验子单元,用于校验所述第一客户端的名称是否注册在所述底层目录文件中的客户端的名称中;和/或
校验所述第一客户端的IP地址是否注册在所述底层目录文件中的客户端的IP地址中;和/或
校验所述第一客户端的端口号是否注册在所述底层目录文件中的客户端的端口号中;
若校验出所述第一客户端的名称、和/或所述第一客户端的IP地址、和/或第一客户端的端口号注册在所述底层目录文件中,则表示所述第一客户端为合法的客户端。
5.如权利要求3所述的一种基于过程控制服务器的socket通讯接口系统,其特征在于,
所述校验单元,还用于在接收到第二客户端发送的第二连接请求之后,校验所述第二客户端是否为合法的客户端;
所述连接单元,还用于在所述校验单元校验出所述第二客户端为合法的客户端之后,基于为所述socket通讯接口分配的任务号调用所述socket通讯接口和所述第二客户端建立socket连接;
所述系统还包括:
第二数据封装单元,用于在连接成功之后,将第二报文数据封装为第二报文结构体;
第二发送单元,将所述第二报文结构体发送给所述第二客户端。
6.一种过程控制服务器,其特征在于,包括如权利要求1-5任一权项所述的基于过程控制服务器的socket通讯接口系统。
7.一种数据交互系统,其特征在于,包括:
N个客户端,N>2且为整数;
如权利要求6任一权项所述的过程控制服务器;其中,所述过程控制服务器包括如权利要求1-5任一权项所述的基于过程控制服务器的socket通讯接口系统;
所述过程控制服务器用于接收所述N个客户端中的第一客户端的连接请求之后,利用所述socket通讯接口和所述第一客户端建立连接并进行数据交互;也可以利用所述socket通讯接口直接和所述N个客户端中的第二客户端进行数据交互。
8.如权利要求7的一种数据交互系统,其特征在于,所述通讯接口系统具体包括:
校验单元,用于在接收到所述第一客户端发送的第一连接请求之后,校验所述第一客户端是否为合法的客户端;
连接单元,用于在所述校验单元校验出所述第一客户端为合法的客户端之后,基于为所述socket通讯接口分配的任务号调用所述socket通讯接口和所述第一客户端建立socket连接;
第一数据封装单元,用于在连接成功之后,将第一报文数据封装为第一报文结构体;
第一发送单元,将所述第一报文结构体发送给所述第一客户端。
9.如权利要求8的一种数据交互系统,其特征在于,
所述校验单元,还用于在接收到所述第二客户端发送的第二连接请求之后,校验所述第二客户端是否为合法的客户端;
所述连接单元,还用于在所述校验单元校验出所述第二客户端为合法的客户端之后,基于为所述socket通讯接口分配的任务号调用所述socket通讯接口和所述第二客户端建立socket连接;
所述通讯接口系统还包括:
第二数据封装单元,用于在连接成功之后,将第二报文数据封装为第二报文结构体;
第二发送单元,将所述第二报文结构体发送给所述第二客户端。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510842970.0A CN105516087A (zh) | 2015-11-26 | 2015-11-26 | 基于过程控制服务器的socket通讯接口系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510842970.0A CN105516087A (zh) | 2015-11-26 | 2015-11-26 | 基于过程控制服务器的socket通讯接口系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105516087A true CN105516087A (zh) | 2016-04-20 |
Family
ID=55723725
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510842970.0A Pending CN105516087A (zh) | 2015-11-26 | 2015-11-26 | 基于过程控制服务器的socket通讯接口系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105516087A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108848105A (zh) * | 2018-06-29 | 2018-11-20 | 首钢京唐钢铁联合有限责任公司 | 建立通讯连接的方法及装置 |
US11012366B2 (en) | 2016-12-09 | 2021-05-18 | Zhejiang Dahua Technology Co., Ltd. | Methods and systems for data transmission |
-
2015
- 2015-11-26 CN CN201510842970.0A patent/CN105516087A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11012366B2 (en) | 2016-12-09 | 2021-05-18 | Zhejiang Dahua Technology Co., Ltd. | Methods and systems for data transmission |
US11570120B2 (en) | 2016-12-09 | 2023-01-31 | Zhejiang Dahua Technology Co., Ltd. | Methods and systems for data transmission |
CN108848105A (zh) * | 2018-06-29 | 2018-11-20 | 首钢京唐钢铁联合有限责任公司 | 建立通讯连接的方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110166409B (zh) | 设备接入方法、相关平台及计算机存储介质 | |
CN103326893B (zh) | 一种极限测速的方法 | |
CN103139157B (zh) | 一种基于socket的网络通信方法、装置及系统 | |
CN110429708B (zh) | 一种实现配电设备即插即用的方法和系统 | |
WO2007130290A3 (en) | System and method for server farm resource allocation | |
CN103916274B (zh) | 一种多实例并行的网元接入方法和系统 | |
CN104679528B (zh) | 应用程序远程更新的方法和装置 | |
CN109962953A (zh) | 客户端通信建立方法及装置 | |
CN107682172A (zh) | 控制中心装置、业务系统处理的方法及介质 | |
CN100486158C (zh) | 一种宽带接入网中用户认证的实现方法 | |
CN105516087A (zh) | 基于过程控制服务器的socket通讯接口系统 | |
CN105656649A (zh) | 一种终端设备的业务开通方法及装置 | |
CN102394857B (zh) | 以太网上点对点协议会话建立方法、装置及设备 | |
US20120233352A1 (en) | Method and system for managing internet address based on terminal | |
CN104869621A (zh) | 一种网络识别方法和装置 | |
CN103888435B (zh) | 用于业务接纳控制的方法、装置和系统 | |
CN104993980A (zh) | 一种长连接应用接入的安全管控方法及系统 | |
CN102647395B (zh) | 一种分流网络游戏服务器人数的方法、装置和系统 | |
CN107018088B (zh) | 传输链路选择方法及装置 | |
CN101420318B (zh) | 一种检测数字用户线路与接入终端连接状态的方法 | |
CN110022332B (zh) | 一种超文本传输安全协议代理方法、装置、设备及介质 | |
CN104639379A (zh) | 测试代理方法及其装置 | |
CN107249194A (zh) | 管理无线网络连接的方法、装置及设备 | |
CN110109933A (zh) | 信息维护方法、配置管理数据库系统及存储介质 | |
CN115001889A (zh) | 设备控制方法、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20160420 |
|
RJ01 | Rejection of invention patent application after publication |