一种储能系统的通讯管理系统及方法与流程

文档序号:11778400阅读:734来源:国知局

本发明涉及储能系统系统通讯和管理方法,尤其涉及一种储能系统的通讯管理系统及方法。



背景技术:

随着计算机技术,尤其是网络技术的飞速发展,如今的程序开发人员不仅仅局限于基于单机运行或单一线程的应用程序的开发。服务器端/客户端模式的最显著的特点是一个服务器端应用能同时为多个客户端提供服务。而传统的服务器端/客户端模式通常为每一个客户端创建一个独立的线程,这种实现方式在客户端数量不多的情况下问题不大,但对于类似于储能系统这种客户数量巨大的系统来说,效率极端低下。这是因为一方面创建新线程操作系统开销较大,另一方面同时有许多线程处于运行状态,操作系统内核需要花费大量时间进行上下文切换,而没有在线程执行上花更多的时间。

公司储能系统与服务器的通讯需要实时上传数据,并且需要实时下发控制指令。为了满足实际业务需求,储能系统客户端需要实时上传发电、用电、买电、卖电等数据和实时接收服务器的调度指令,所以客户端必须与服务器保持持续连接,这对服务器的连接稳定性及处理数据的性能要求比较高,而且现有的通讯采用整体数据打包形式,这种整体数据打包形成的数据包大,传输时对占用带宽多,而且服务器在进行解析是所耗费的时间多,易造成稳定性差、效率低的问题,从而降低服务器的性能。

针对现有技术存在的缺陷,结合公司产品需同时调度多台系统的技术特性,我们设计了一种能在进程之间通过socket进行通信,以达到数据交换的目的管理系统,其主要作用在于建立服务端与客户端或者其他端点的通信,管理,维护,并提供常见的通信协议,解析等,也可以自定义协议和协议处理相关接口,从而解决储能系统的通讯和管理问题。



技术实现要素:

为克服现有技术的缺陷,本发明提供了一种储能系统的通讯管理系统,在进程之间通过socket进行通信,以达到数据交换目的的管理系统,其主要作用在于建立服务端与客户端或者其他端点的通信,管理,维护,并提供常见的通信协议,解析等,也可以自定义协议和协议处理相关接口,从而解决储能系统的通讯和管理问题。

本发明揭示了一种储能系统的通讯管理系统,包括通讯服务器实现与储能客户端之间的通讯,通讯服务器包括会话管理模块,会话池,数据处理模块及存储模块,其中:

会话管理模块,实现与储能客户端之间的会话建立,接收储能客户端发送的数据,并送入会话池等待处理,同时将数据处理模块反馈的调度数据传输至对应的储能客户端;

会话池为会话线程的排队等候区;

数据处理模块内部预先设置有多种通讯协议,对会话池内的排队的数据进行拆包解析,根据解析的信息调取数据库内对应的控制指令,再将控制指令进行编码打包送入会话管理模,反馈至对应的储能系统中。

所述会话管理模块在会话建立时给予每个储能客户端一个唯一标识,将该唯一标识存储至存储模块,数据处理模块反馈的数据通过查找唯一标识确定对应储能客户端。

所述数据处理模块调取会话池内的二进制数据通过协议过滤器映射成单独的协议实体,根据内部的通讯协议对实体进行解析,处理。

所述储能客户端内预设有连接通讯服务器的域名及多个端口号,通过域名或者端口号连接对应的通讯服务器。

一种储能系统的通讯管理方法,包括如下内容:

s1、储能客户端通过内部预设的域名和端口号查找并连接通讯服务器,当储能客户端与通讯服务器的建立连接后,会话管理模块建立一个会话线程,并在会话线程建立后给予该储能客户端一个唯一标识;

s2、会话建立后,储能客户端发送二进制数据请求包,会话管理模块将该二进制数据请求包送入会话池排队等待处理,并在二进制数据请求包发送结束没有通信情况下,会自动释放会话线程;

s3、数据处理模块依次调取会话池内的二进制数据请求包,将该数据包通过协议过滤器映射成请求协议实体,根据该请求实体类型结合内部专用的通信协议进行解析、存储;

s4、根据解析结果读取数据库中对应的控制指令,并将该控制指令按照对应的通信协议进行编码打包形成反馈数据包,传送给会话管理模块;

s5、会话管理模块将接收的反馈数据包通过查询唯一标识进行储能客户端的确认,建立与该储能客户端的会话线程,将反馈数据包发送至对应的储能客户端。

上述步骤中,所述储能客户端与通讯服务器连接时,通过互联网进行域名查找,在网络异常时采用多端口号轮流尝试的形式进行连接。

上述步骤中,专用的通信协议包括心跳协议、注册接口、登录接口、系统配置接口、常规数据发送接口、控制指令接口、故障报警接口、文件传输接口等。

与现有技术相比,本发明的一种储能系统的通讯管理系统,具有如下有益之处:

储能客户端根据数据类型进行分类打包(根据不同的通信协议进行操作,对应的通信协议预先存储在通讯服务器内),这样每个数据包比较小,进行打包及解包操作时压力比较小,而且传输时占用带宽少,不容易造成网络堵塞的情况,提高了整个系统的稳定性,同时较小的数据包降低服务器拆包压力,从而保障了服务器的性能;

对于储能客户端与服务器之间采用预设域名和多个端口号进行查找连接,在网络出现异常导致域名无法使用时,可以采用多端口号轮流尝试的方式进行连接,为了防止部分地区或者防火墙对某些端口进行了限制,采用多个端口轮流尝试,确保连接的可靠性;

在通讯服务器中,根据功能不同进行区域模块划分,且每个区域模块之间相互独立,在后续协议增加或者扩展时,独立的区域模块给优化带来了方便,不需要进行整体改进,只需要对模块本体进行改进即可;

在通讯服务器内采用线程池来管理储能客户端的连接和处理每个会话的数据收发,在会话线程建立并传输完成数据后,只需要将待处理的数据包送入线程池进行排队处理,对客户端与服务器之间的数据处理完成的线程进行回收,等到下次需要是再建立,即保证了数据传输时处于连接状态,同时实现了服务器线程资源了有效利用,可以将收回的线程用于处理其余终端的接入,提高了接入数量,进而提高服务器的处理效率;

对于反馈数据线程的连接,在数据从储能客户端发送至会话管理模块时,就将每一个储能客户端进行唯一标识记录,在后续数据反馈时通过查找唯一标识即可知道对应的是哪个储能客户端,确保连接的可靠和准确性。

附图说明

图1是本发明所揭示的防止能量管理系统远程升级失效的系统的框架图。

具体实施方式

下面将结合本发明的附图,对本发明实施例的技术方案进行清楚、完整的描述。

本发明所揭示的一种储能系统的通讯管理系统,包括通讯服务器实现与储能客户端之间的通讯,通讯服务器包括会话管理模块,会话池,数据处理模块及存储模块。

所述储能客户端(图中的ems)内预设有连接通讯服务器的域名及多个端口号,在互联网正常时通过域名进行通讯服务器查找,在网络出现异常无法连接时,则通过端口号进行查找,为了防止客户端所在的系统或防火墙对端口号的屏蔽,采用多个端口轮流尝试的方式进行连接操作。

会话管理模块,实现与储能客户端之间的会话建立,接收储能客户端发送的数据,并送入会话池等待处理,同时将数据处理模块反馈的调度数据传输至对应的储能客户端,会话管理模块在会话建立时给予每个储能客户端一个唯一标识,将该唯一标识存储至存储模块,数据处理模块反馈的数据通过查找唯一标识确定对应储能客户端。

会话池为会话线程的排队等候区;

数据处理模块内部预先设置有多种通讯协议,对会话池内的排队的数据进行拆包解析,根据解析的信息调取数据库内对应的控制指令,再将控制指令进行编码打包送入会话管理模,反馈至对应的储能系统中。

所述数据处理模块调取会话池内的二进制数据通过协议过滤器映射成单独的协议实体,根据内部的通讯协议对实体进行解析,处理,并将解析后的数据对应数据库进行控制指令获取,将获取的控制指令进行反向编码打包,再通过会话管理模块进行反馈。

一种储能系统的通讯管理方法,包括如下内容:

s1、储能客户端通过内部预设的域名和端口号查找并连接通讯服务器,当客户端与服务器连接异常时,客户端会自动尝试使用其它备用的端口号循环尝试连接,直至连接成功为止,当储能客户端与通讯服务器建立连接后,会话管理模块会为客户端创建一个唯一标识,并把此客户端的会话放到会话线程池中进行管理;

s2、会话建立后,针对储能客户端发送二进制数据请求包,会话管理模块会在线程池中为此模块申请独立的线程来处理该二进制数据请求包,并将处理好的数据请求包送到数据处理模块排队等待处理,在线程中处理完成请求包后,会话管理管理模块会自动释放此线程;

s3、数据处理模块依次调取数据处理队列内的二进制数据请求包,将该数据包通过协议过滤器映射成请求协议实体,根据该请求实体类型结合内部专用的通信协议进行解析、存储;

s4、根据解析结果读取数据库中对应的控制指令,并将该控制指令按照对应的通信协议进行编码打包形成反馈数据包,传送给会话管理模块;

s5、会话管理模块将接收的反馈数据包通过查询唯一标识进行储能客户端的确认,建立与该储能客户端的会话线程,将反馈数据包发送至对应的储能客户端;

所述储能客户端与通讯服务器连接时,通过互联网进行域名查找,在网络异常时采用多端口号轮流尝试的形式进行连接。

本发明的技术内容及技术特征已揭示如上,然而熟悉本领域的技术人员仍可能基于本发明的揭示而作种种不背离本发明精神的替换及修饰,因此,本发明保护范围应不限于实施例所揭示的内容,而应包括各种不背离本发明的替换及修饰,并为本专利申请权利要求所涵盖。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1