一种计算机过程控制系统的进程间通信平台技术方案

技术编号:39176735 阅读:21 留言:0更新日期:2023-10-27 08:24
本发明专利技术是一种计算机过程控制系统的进程间通信平台,属于自动化控制技术领域。本发明专利技术包含通信中心平台、客户端模块和通信监控模块;通信中心平台上启动等待连接线程和电文处理线程;进程需要通信时启动客户端模块,向通信中心平台注册并建立连接,启动接收线程和心跳线程;由心跳线程保持进程与通信中心平台的连接处于活动状态,调用发送函数发送电文给通信中心平台,由接收线程对接收的电文进行读取和处理;通信中心平台接收各进程发送的电文并存入队列,电文处理线程将队列中的电文依次转发;通信监控模块用于查看与通信中心平台连接的进程、收发电文和通信日志。本发明专利技术降低了通信工作量,加快了过程控制软件的开发,并减轻了数据通信成本。了数据通信成本。了数据通信成本。

【技术实现步骤摘要】
一种计算机过程控制系统的进程间通信平台


[0001]本专利技术属于自动化控制
,涉及创建一种计算机过程控制系统的进程间通信平台。

技术介绍

[0002]随着计算机技术的发展,基于计算机和自动化控制技术的过程控制系统被提出和应用,在一定程度上提高了钢铁企业运营的效率。生产对过程控制系统有极高的实时性、稳定性、准确性和响应性要求。
[0003]计算机过程控制系统一般包括多个进程,每个进程独立运行,执行自己的功能。以前这些进程一般在同一台服务器上运行,现在要求分布式运行,即可以在不同服务器上运行。进程间通信系统位于计算机系统内部各计算机之间和计算机内部。各个进程之间又需要交换数据。同一服务器上的进程可以用文件、共享区或事件标志的方式交换数据,但程序难以规范统一,需要各自编程。不同服务器之间的进程通信编程更是需要了解网络通信机制,编程难度和工作量更大。比如n个进程分布运行于n台机器,两两通信,需要建立通信连接数为组合。n=5时连接数,如图1的(a)所示,现有计算机过程控制系统有5个进程运行,需要通信连接链路为10条。依次类推,n=10时连接数个,n=15时连接数个,当15个进程之间两两通信时,最多需要建立105个连接。由此可见,随着n增大,这个通信连接数增大很快,函数关系是非线性的,而且需要编制相应的程序。这就带来了大量的编程工作,极大增加了数据通信成本。

技术实现思路

[0004]为了减轻上述工作量,尤其针对生产过程控制系统的多个进程独立、分布式运行在多个服务器的应用场景,本专利技术提供了一种计算机过程控制系统的进程间通信平台(Process Communication,简称PComm),对同一计算机内部进程和不同计算机之间的进程通信用统一的程序处理,并编制了进程间通信平台作为各个进程之间的通信交换中心,实现各个进程之间的数据通信,达到降低工作量,加快过程控制软件的开发,并减轻数据通信成本的目的。
[0005]本专利技术是一种计算机过程控制系统的进程间通信平台,包括通信中心平台PCommServer,客户端模块Client,以及通信监控模块PCommMonitor;其中客户端模块仅调用PComm类就可以完成通信功能,它部署在每个进程所在的计算机上。
[0006]通信中心平台上启动有等待连接线程acceptLink和电文处理线程TreatMsg。等待连接线程acceptLink用于处理客户端模块的连接请求。通信中心平台接收客户端进程发送来的电文并存入本地队列,电文处理线程TreatMsg将本地队列中的电文依次进行转发,转发给相应的接收者。每个电文包含电文长度、发送者、接收者、电文编号和电文主体,发送者和接收者为进行通信的两个进程。
[0007]进程需要通信时,启动客户端模块,客户端模块先调用连接函数PCommConnect向
通信中心平台发送连接请求,进程进行注册并与通信中心平台建立连接。与通信中心平台建立连接的每个进程启动二个线程:接收线程和心跳线程,提供发送函数。心跳线程中,进程每隔设定时间发送心跳电文给通信中心平台,以保持进程与通信中心平台的连接处于活动状态。当进程需要发送电文时,客户端模块调用发送函数将电文发送给通信中心平台。接收线程在收到通信中心平台转发来的电文后放入数据队列中,在接收处理程序中,客户端模块调用接收函数GetAllTelegram从数据队列中获取电文列表,读取每条电文内容进行处理。
[0008]通信中心平台与每个客户端设备间建立TCP/IP协议的通信连接。
[0009]通信监控模块用于查看与通信中心平台连接的进程、发送接收电文以及通信日志。
[0010]本专利技术的通信平台设置了标准化编程程序,定义了通信平台所需要的类—PComm类,在该类下定义连接函数PCommConnect、发送函数Send和接收函数GetAllTelegram。本专利技术的通信平台还设置配置文件,配置文件中配置通信中心平台所在的服务器名、IP地址和端口。连接函数通过读取配置文件获取通信中心平台的服务器名、IP地址和端口。
[0011]客户端模块直接使用PComm类的库文件和头文件编程,头文件中声明通信平台所需要的类和函数,静态库用于编译时连接生成执行文件,动态库用于执行文件运行时调用,还提供有关示例程序。
[0012]相比现有技术,本专利技术的优点和积极效果在于:
[0013](1)本专利技术平台实现了局域网内进程的通信,不需要每两个需要通信的进程之间编制复杂的通信程序。本专利技术的通信中心平台与各个进程之间的连接是TCP/IP连接,实现原理简单,编程人员主要关注将通信内容转换成字符串发送出去以及将接收到的电文字符串转为需要的格式的实现即可,简化了通信编程。本专利技术减少了进程两两通信时需要建立的通信链路数量,随着进程数量的增加链路数量只呈线性增加,降低了通信工作量。
[0014](2)本专利技术平台中设计了标准化编程程序,用户使用时只需调用相应的类和函数即可,客户端编程人员不需要了解通信编程细节,只调用接口函数,即可与期望的通信伙伴交换数据。使用本专利技术设置的类和函数可以减少过程控制系统开发通信编程的工作量,缩短工程项目的开发周期,减轻系统维护的负担。客户端通过动态链接库和示例程序可以促进过程控制系统产品的标准规范化,提高过程控制系统的可靠性,从而有利于过程控制应用软件的维护、积累和重用。采用本专利技术通信平台,对不同自动化控制系统,可经过配置和少量编程即可完成通信编程工作,减少了过程控制系统开发的工作量,缩短了工程项目的开发周期,减轻了系统维护和二次开发的负担。
[0015](3)本专利技术平台适用于生产过程控制系统的多个进程独立、分布式运行在多个服务器的应用场景,计算机过程控制系统的进程可以运行在不同机器上,实现分布式运行。提供的通信监控模块统一监控内部进程之间的通信,可查看通信客户端的连接,收发电文,及通信日志。经过多个工程的应用表明,本专利技术平台便于使用人员快速接受,可以大大减少开发人员的工作量,缩短开发周期,节约开发成本,过程控制系统运行时的稳定性也能提供保证,对过程控制系统通信的修改也十分快捷。
附图说明
[0016]图1是独立运行在5台计算机的5个进程间的通信链路示意图,其中:(a)为现有过程控制系统的5个进程间的通信链路示意图,(b)为使用本专利技术PComm平台的5个进程间的通信链路示意图;
[0017]图2是本专利技术的计算机过程控制系统的进程间通信平台的整体实现框架图;
[0018]图3是本专利技术的通信中心平台上启动的进程线程监控的示例图;
[0019]图4是本专利技术的通信监控模块中客户端显示的通信的进程的示例图;
[0020]图5是本专利技术的通信监控模块中电文显示的示例图;
[0021]图6是本专利技术的通信监控模块中服务器日志示例图。
具体实施方式
[0022]下面将结合附图对本专利技术的技术方案作详细说明。
[0023]本专利技术公开了一种计算机过程控制系统的进程间通信平台,适用于生产过程控制系统的多个本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种计算机过程控制系统的进程间通信平台,其特征在于,该平台包括:通信中心平台、客户端模块以及通信监控模块;在每个进程所在的计算机上部署有客户端模块;通信中心平台上启动有等待连接线程和电文处理线程;等待连接线程用于处理客户端模块的连接请求;通信中心平台接收各进程发送来的电文并存入本地队列,电文处理线程将本地队列中的电文依次进行转发;每个电文包含电文长度、发送者、接收者、电文编号和电文主体,发送者和接收者为进行通信的两个进程;进程需要通信时启动客户端模块,客户端模块先调用连接函数向通信中心平台发送连接请求,进程进行注册并与通信中心平台建立连接;当进程与通信中心平台建立连接后,进程启动心跳线程和接收线程,提供发送函数;心跳线程中,进程每隔设定时间发送心跳电文给通信中心平台,以保持进程与通信中心平台的连接处于活动状态;客户端模块调用发送函数将需要发送的电文发送给通信中心平台;接收线程在收到通信中心平台转发来的电文后放入数据队列中,通过客户端模块调用接收函数从数据队列中获取电文列表,读取每条电文内容进行处理;通信监控模块用于查看与通信中心平台连接的进程、发送接收电文以及通信日志。2.根据权利要求1所述的进程间通信平台,其特征在于,所述的通信平台设置配置文件,配置文件中配置通信中心平台所在的服务器名、IP地址和端口。3.根据权利要求1所述的进程间通信平台,其特征在于,所述的电文以数据结构PCommData存储,包括:发送者sender、接收者receiver、电文编号msgid、电文长度msglen和电文主体msgbody;所述的接收电文函数获取一个链表,链表中的每个元素是一个PCommData数...

【专利技术属性】
技术研发人员:余四清
申请(专利权)人:北京金自天正智能控制股份有限公司
类型:发明
国别省市:

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

1