智能配电终端通信弱耦合模块化系统及方法

文档序号:9870285阅读:1197来源:国知局
智能配电终端通信弱耦合模块化系统及方法
【技术领域】
[0001]本发明涉及智能配电终端通信技术领域,具体涉及一种智能配电终端通信弱耦合模块化系统及方法。
【背景技术】
[0002]智能配电终端通信系统根据在通信端口上的配置规约收发报文,规约配置中含有⑶T、101、103、104、Modbus等规约,每个规约需实现对上送和接收报文进行组织和解析,将数据存储在通信管理主程序中,然后主程序提供接口获取数据后,再将数据下发给其他应用程序,整个流程是紧耦合。
[0003]这种设计方式使得应用程序的不同组件之间的接口与其功能和结构是紧密相连的,因而当发生变化时,某一部分的调整会随着各种强耦合的关系引起其他部分甚至整个应用程序的更改,使得整个系统的构架很脆弱。

【发明内容】

[0004]本发明的目的就是为了解决上述问题,提出了一种智能配电终端通信弱耦合模块化系统及方法,该系统及方法将管理规约的主程序和规约应用程序分离开,将不同的规约类型设计成独立的动态库,通信管理主程序只需要提供接口加载该规约动态库即可,实现整个程序的弱耦合。
[0005]为了实现上述目的,本发明采用如下技术方案:
[0006]—种智能配电终端通信弱耦合模块化系统,包括:通信管理主系统和规约动态库;所述规约动态库中集成有不同类型的规约程序;所述通信管理主系统提供接口加载所述规约动态库中的规约程序;
[0007]通信管理主系统根据加载的规约程序开启独立的线程与加载的规约程序进行绑定,然后将数据组织成规约所需的数据类型传递给各种不同的规约;
[0008]所述规约动态库将通信管理主系统根据通信端口上的配置规约下发的或者对应规约客户端上送的报文进行处理,获取有用的数据信息并存在相应的缓存中,然后根据规约中标准的协议类型和组包格式下发或上送给其他的应用程序。
[0009]通信管理主系统对于每个规约程序设置一个线程池来对所有规约线程进行调度和管理,只有在通信端口配置该规约后才启动该规约线程,以最大限度的减小通信管理主系统的开销。
[0010]所述规约动态库用于实现在每个规约设计程序中对接收到的报文进行打解包处理,然后在每个规约中来获取有用的数据信息并组织数据报文存储在系统定义的公用缓存中,然后根据规约中标准的协议类型和组包格式下发或上送给其他的应用程序,在应用程序中经过反串序列化后将打包的数据解析成应用程序理解的数据单元。
[0011]所述数据报文至少包含数据包头、数据实体单元、数据应用单元、数据信息体信息,根据规约中共用属性和方法抽象出规约基类,该基类主要实现处理报文中的数据包头、数据实体单元和数据应用单元。
[0012]每种规约都是一个独立的程序,在规约出现问题过程中,只要定位出是哪种类型的规约出现问题,然后只需调整该规约,不会影响通信管理主系统和其他规约的运行。
[0013]—种智能配电终端通信弱耦合模块化系统的方法,包括以下步骤:
[0014](I)系统初始化;
[0015](2)生成动态规约库并对各规约进行命名;
[0016](3)通信管理主系统通过接口加载生成的规约动态库中的N个规约程序;
[0017](4)通信管理主系统通过系统配置文件来判断规约程序加载数量N,如果N>1,则通信管理主系统开启N个独立的线程与加载的规约程序进行绑定,并获取相应的规约参数,生成的规约动态库中的N个规约线程,进入下一步;否则,转至步骤(7);
[0018](5)判断规约程序线程个数M,如果M〈N,则有规约程序启动不成功,对于启动不成功的规约程序,重新生成新的动态规约程序集成到动态规约库,返回至步骤(3)重新加载;对于启动成功的规约程序,转至步骤(7);
[0019](6)如果M = N,说明规约程序全部启动成功,进入下一步;
[0020](7)运行规约程序,实现数据的缓存与转发。
[0021 ]对于规约的命名,以“Iibptl_规约名”方式命名,生成dll或者.so文件。
[0022]通信管理主系统根据加载的规约程序开启独立的线程与加载的规约程序进行绑定,对每个所述规约程序设置一个线程池来进行规约所需线程的调度工作。
[0023]通过判断是否调用规约线程以及规约线程是否启动,通过查找对应规约线程唯一标识(ID),控制规约进程停止或者启动,减小系统开销。
[0024]本发明的有益效果是:
[0025]本发明将管理规约的主系统和规约应用程序分离开,,将不同的规约类型设计成独立的动态库,通信管理主程序只需要提供接口加载该规约动态库即可,实现整个程序的弱耦合。此构架设计使整个程序设计更加灵活,当某个应用的内部结构和实现逐渐发生改变时,不影响整个程序的运行,智能配电终端通信弱耦合模块化方法具有更高的扩展性、高可靠性、代码的复用性。
[0026]接口设计灵活可靠,当加载更多不同规约时,无需重新更改整个程序结构。
[0027]根据现场需求是否调用规约以及判断规约库中是否启动,编写Shell命令停止或者启动脚本程序,查找对应规约进程唯一标识(ID),停止或者启动规约进程,使从操作更加便捷和自由,减小了系统开销。
[0028]根据规约程序启动是否成功,可以判断该规约中程序是否存在BUG,使程序错误定位更准确。
【附图说明】
[0029]图1为本发明智能配电终端通信弱耦合模块化系统结构示意图;
[0030]图2为本发明智能配电终端通信弱耦合模块化方法流程图。
【具体实施方式】
:
[0031 ]下面结合附图与实施例对本发明做进一步说明:
[0032]一种智能配电终端通信弱耦合模块化系统,如图1所示,包括:通信管理主系统和规约动态库;
[0033]规约动态库中集成有不同类型的规约程序;具体包括<01\101、103、104、10(113118等规约形式;通信管理主系统提供接口加载所述规约动态库中的规约程序;通信管理主系统根据加载的规约程序开启独立的线程与加载的规约程序进行绑定,然后将数据组织成规约所需的数据类型传递给各种不同的规约;
[0034]规约动态库将通信管理主系统下发或者对应规约客户端程序上送的报文进行处理,获取有用的数据信息并存在相应的缓存中,然后根据规约中标准的协议类型和组包格式下发或上送给其他的应用程序。
[0035]通信管理主系统通过接口与接口机(外部设备)连接,接口机(外部设备)是一种配网设备,可以提供线路的电流值、电压值、温度值、开关状态等一系列数据来源的设备。
[0036]通信管理主程序是将接口机中的数据采集、分析和存储,并为各种不同的规约提供一种高效的加载方式和组织方式,根据加载的规约程序开启独立的线程和规约的调用进行绑定,然后将数据组织成规约所需的数据类型传递给各种不同的规约。每个规约设置一个线
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1