基于异构网络结构的高温气冷堆模拟器通讯方法

文档序号:6554825阅读:244来源:国知局
专利名称:基于异构网络结构的高温气冷堆模拟器通讯方法
技术领域
基于异构网络结构的高温气冷堆模拟器通讯方法属于核反应堆仿真技术领域,特别涉及高温气冷堆模拟器的设计技术。
背景技术
在核电仿真领域,目前研制的仿真机可分为全范围仿真机和紧凑型仿真机。前者大多运行于Unix工作站上,系统规模庞大,价格昂贵,主要用于操作员上岗培训;后者逐渐向Windows系统靠拢,利用其提供的丰富图形开发工具和友好的人-机界面,成为集事故分析、工程设计、教学培训等为一体的多功能仿真系统。由于反应堆系统分析程序一般在Unix系统上开发,若移植到Windows系统上需要花费大量的人力物力,其稳定性和可靠性也很难保证。因此,计算服务器的运行环境最好选择Unix系列操作系统。Linux是一种自由软件,其结构、可靠性等许多方面与Unix类似,Unix下开发的软件甚至只需重新编译即可在Linux下直接运行;另一方面,Linux可以运行在微机上,克服了Unix工作站价格昂贵的缺点。但是,在人机界面设计方面,Windows比Linux具有明显优势,而且在国内被广泛使用,适用于电站设计人员、管理人员、操作人员等各种层次的技术人员,是人-机界面(仿真主控端)设计的理想选择。
经检索,目前国内外公开的文献中,还没有将Linux操作系统和Windows操作系统共用于高温气冷堆模拟器的文献。

发明内容
本发明的目的是提供一种基于异构网络结构的、低成本的、快速的、具有广泛借鉴意义的、先进高温气冷反应堆模拟器通讯方法。
本方法的特征在于,计算服务器运行在Linux操作系统下,仿真主控端运行在Windows操作系统下,所述计算服务器和仿真主控端之间的数据通讯分别利用Linux操作系统下的基于TCP/IP协议的Socket编程接口和Windows操作系统下的基于TCP/IP协议的Winsock编程接口实现;所述通讯方法按照如下步骤执行1)计算服务器接收客户机的命令启动;2)读入仿真计算程序的控制信息,和高温气冷堆的相关数据;3)仿真计算程序初始化;4)打开通信信道,等待仿真主控端的请求;
5)当仿真主控端有请求时,根据仿真主控端的控制信号执行数据通讯的步骤;6)当仿真计算程序完成一个时间步的运算之后,启动数据通讯程序将数据传输给仿真主控端,并接收仿真主控端的控制信息;数据通讯程序的步骤如下6.1)计算服务器将待发送的数据分为 个数据包,其中,nk为待发送数据的总字节数;6.2)将上述 个数据包依次向仿真主控端发送;6.3)仿真主控端依次进行接收,并对每一个数据包解包,然后根据用户需要进行处理。
所述仿真计算程序采用西德于利希核研究中心开发的THERMIX软件。
计算服务器运行的Linux操作系统是Redhat Linux 7.3版本。仿真主控端运行的Windows操作系统是Windows XP版本。计算服务器开发平台为Fortran 77和C语言。仿真主控端的开发平台为Delphi 6.0。
本发明与现有的高温气冷堆模拟器相比,具有以下优点及突出性效果(1)在高温气冷堆模拟器中采用基于异构网络的体系机构,可以充分利用两种操作系统(Linux和Windows)系列各自的优势,有效降低开发难度和操作者的上手门槛;(2)开发周期短,成本低,适用性广;(3)具有普遍适用性,对于各种类型的核电站、火电站、军用设备等的模拟器的设计具有很好的借鉴意义。


图1是基于异构网络结构的高温气冷堆模拟器通讯方法的流程图;图2是计算服务器与仿真主控端实现大数据量数据通讯的解决方案流程图。
具体实施例方式
本发明是通过如下技术方案实现的采用Client/Server架构,其中Server端运行在Redhat Linux 7.3系统下,Client端运行在Windows XP系统下,这样可以充分利用两种操作系统(Linux和Windows)系列各自的优势;充分利用现有的、受到国际气冷堆技术协会及美国能源部支持的、被正式批准用于球床堆的分析计算的商用计算软件(如西德于利希核研究中心(KFA-Julich)开发的THERMIX),这样在保证仿真计算的可靠性和准确性的同时,可以大幅度降低开发成本和开发周期;在设计这些方案时,不拘泥于具体的解决对象,同样适用于其它类型核电站、火电站等模拟器的设计。
下面结合附图1、2对本发明的原理、结构作进一步的详细说明。
图1中,计算服务器接收仿真主控端的控制信号启动,然后读入输入卡的信息,输入卡内存放仿真计算程序的控制信息,和高温气冷堆的相关参数,如冷却剂的物理参数、网格划分的参数等。当仿真主控端有连接请求时,根据仿真主控端的控制信号执行停止、暂停或继续运行的步骤;若需要继续运行,则调用仿真计算程序将输入卡的数据进行迭代运算,然后将计算的数据传输给仿真主控端。仿真主控端将来自计算服务器的数据通过文字、图形和曲线等方式进行显示,同时负责接收用户发送的控制参数并将其传送给计算服务器以控制计算服务器运行。
图2中,该模拟器系统采用客户机/服务器结构,节点计算机采用PC机。其中客户端(仿真主控端)运行在Windows XP下,开发平台为Delphi 6.0;计算服务器端运行在Redhat Linux7.3下,开发环境为Fortran 77和C语言。
图2中,模拟器系统采用Linux和Windows两种操作系统,需要解决异构网络通讯程序的设计问题。数据通讯的可选方案主要有两种①直接利用两种操作系统分别提供的基于TCP/IP协议的Socket与Winsock编程接口实现;②采用数据库方式。该模拟器系统在实时性上要求较高,前者具有速度快的优点,可以实现大量数据的高速通信,因而被选用。
网络应用程序的开发者需要关心的是异构网络中传输层和应用层的实现①传输层的实现-采用TCP协议实现。由于Linux和Windows两种操作系统都提供了基于TCP协议的编程接口分别是Socket和Winsock编程接口。仿真主控端和计算服务器端的通讯直接利用两种操作系统提供的基于TCP协议的Socket与Winsock编程接口实现。②应用层的实现-由于计算服务器端的仿真计算程序的实现语言是Fortran,而Fortran没有提供Socket编程接口,本文采用Fortran和C的混合编程来完成服务器端通讯程序的设计;仿真客户端利用Delphi开发,Delphi已将Winsock所提供的TCP/IP通讯的接口函数封装进控件中,可以直接利用这些控件编写客户端的通信程序,与计算服务器端进行通讯。
另外,由于本装置在计算服务器和仿真主控端分别使用Linux和Windows操作系统,而两种操作系统默认缓冲区大小上存在差异,致使在发送长于4K大小的数据量时,处理起来就不能像单一操作系统那样简单了,必须引进特殊的处理技巧。本发明所采用的方式是,当发送长于4K的信息时,在服务器端只需要用send()就行了,而在客户端(windows默认缓冲区大小为4K)将多次触发OnRead事件。
计算服务器中存储有用于仿真计算的程序,如西德于利希核研究中心(KFA-Julich)开发的THERMIX),该软件中采用迭代算法进行仿真计算,而该软件的每个时间步所要传送的数据量(假设为nk,nk为待传输通讯数据量大小,单位为字节,该数据与仿真对象有关,是一个常量)远远大于4k,如果每一个时间步中服务器端直接用send()一次将所有的数据都发送给客户端,客户端由于缓冲区大小的差异,不能一次接收,那么对应于服务器端的一个send(),客户端将触发 次OnRead事件,并由OnRead事件对应的处理程序进行善后处理,才能够完成一次通讯过程。
本发明在客户端的OnRead事件对应的处理程序为ClientSocketlRead,该处理程序负责将计算服务器发送过来的数据读进仿真主控端,赋给客户端中对应的变量。显然,在客户端对应于计算服务器的每一个计算迭代步所触发的 次OnRead事件中相应的处理程序是不应该相同的,为此,就需要有个办法对这 次OnRead事件进行区分,以便分别进行处理。为实现此目的,本文在服务器端对要传送的变量进行分组(除最后一组外,其余各组的容量都为4K),在每个迭代步中向仿真主控端发送数据时,都有 对send()和recv();在客户端的ClientSocketlRead中采用一个循环变量i进行控制,该变量在仿真主控端初始化时被初始化为0,随后在对应于计算服务器的每个时间步的数据传输中,从0增加到n/4,然后归0,以便进行下一时间步的处理。如图2所示。
权利要求
1.基于异构网络结构的高温气冷堆模拟器通讯方法,采用客户机/服务器模式,其特征在于,计算服务器运行在Linux操作系统下,仿真主控端运行在Windows操作系统下,所述计算服务器和仿真主控端之间的数据通讯分别利用Linux操作系统下的基于TCP/IP协议的Socket编程接口和Windows操作系统下的基于TCP/IP协议的Winsock编程接口实现;所述通讯方法按照如下步骤执行1)计算服务器接收客户机的命令启动;2)读入仿真计算程序的控制信息,和高温气冷堆的相关数据;3)仿真计算程序初始化;4)打开通信信道,等待仿真主控端的请求;5)当仿真主控端有请求时,根据仿真主控端的控制信号执行数据通讯的步骤;6)当仿真计算程序完成一个时间步的运算之后,启动数据通讯程序将数据传输给仿真主控端,并接收仿真主控端的控制信息;数据通讯程序的步骤如下6.1)计算服务器将待发送的数据分为 个数据包,其中,nk为待发送数据的总字节数;6.2)将上述 个数据包依次向仿真主控端发送;6.3)仿真主控端依次进行接收,并对每一个数据包解包,然后根据用户需要进行处理。
2.如权利要求1所述的基于异构网络结构的高温气冷堆模拟器通讯方法,其特征在于,所述仿真计算程序采用西德于利希核研究中心开发的THERMIX软件。
3.如权利要求1所述的基于异构网络结构的高温气冷堆模拟器通讯方法,其特征在于,计算服务器运行的Linux操作系统是Redhat Linux 7.3版本。
4.如权利要求1所述的基于异构网络结构的高温气冷堆模拟器通讯方法,其特征在于,仿真主控端运行的Windows操作系统是Windows XP版本。
5.如权利要求1所述的基于异构网络结构的高温气冷堆模拟器通讯方法,其特征在于,计算服务器开发平台为Fortran 77和C语言。
6.如权利要求1所述的基于异构网络结构的高温气冷堆模拟器通讯方法,其特征在于,仿真主控端的开发平台为Delphi 6.0。
全文摘要
基于异构网络结构的高温气冷堆模拟器通讯方法属于核反应堆仿真技术领域,特别涉及高温气冷堆模拟器的设计技术。其特征在于,计算服务器运行在Linux操作系统下,仿真主控端运行在Windows操作系统下,所述计算服务器和仿真主控端之间的数据通讯分别利用Linux操作系统下的基于TCP/IP协议的Socket编程接口和Windows操作系统下的基于TCP/IP协议的Winsock编程接口实现;数据通讯采用在计算服务器端将待发送的数据分为若干个数据包,依次向仿真主控端发送。本发明充分利用两种操作系统的优势,降低开发难度和操作者的上手门槛;且开发周期短,成本低,适用性广,对于各种类型的核电站、火电站、军用设备等的模拟器的设计具有很好的借鉴意义。
文档编号G06F9/46GK1832487SQ20061001177
公开日2006年9月13日 申请日期2006年4月24日 优先权日2006年4月24日
发明者李思凤, 马远乐 申请人:清华大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1