The present application discloses a method of allocation of register address, including: obtaining the configuration information of different kinds of devices enabled, and calculating the starting address of each device data information in the TCP/ModBus register in turn by arranging the configuration information according to the presupposed data information; according to the TCP/ModBus register occupied by the configuration information The number and the initial address generate the configuration information table; according to the order of the TCP/ModBus register address information list, the configuration information table is deposited first from the first address and then stored in the data information of all kinds of equipment, until all the data information is stored. It makes the data transmission process occupy smaller network bandwidth, less server resource consumption and higher data processing efficiency. The application also discloses a register address distribution system, a device and a computer readable storage medium, and has the beneficial effect.
【技术实现步骤摘要】
一种寄存器地址的分配方法、系统及相关装置
本申请涉及TCP/ModBus协议领域,特别涉及一种寄存器地址的分配方法、系统、装置及计算机可读存储介质。
技术介绍
目前市面上的大多数电源设备监控采集器,主要通过TCP/ModBus协议向监控管理服务器进行数据传输。TCP/ModBus协议普遍采用固定寄存器地址的方式,即将设备的数据信息存放于固定的寄存器中,由于一台设备监控主机会监控不同类型的设备,每种类型设备又同时支持多台监控(例如一台采集器支持监控2台不间断电源、3台电池管理主机、4台配电柜)。这样,采集器采集到的设备的数据信息在寄存器列表上的排列顺序会成循环排列方式,直至到下种新类型的设备。当管理主机需要读取采集器设备信息时,发送读取命令,获取设备的实时参数。基于TCP/ModBus协议形成的现有技术存在以下问题:由于TCP/ModBus协议一次只能读取连续的地址寄存器,若采用一次性将所有寄存器中的数据信息全部读出的方式,会将大量处于未启用状态的设备的数据信息一并读出,不仅占用带宽,且消耗服务器资源;若采取每次只读取处于启用状态的设备的数据信息的方式,由于这些数据信息在寄存器地址信息列表上成间断排列,需要发送多条轮询命令去才能读取得到目标数据信息。综上,上述两种不同的数据信息读取方式在使用过程中均存在各种缺陷,尤其在监控的采集器数量较多时,会严重降低系统性能,实际使用效果不好。因此,如何克服现有基于TCP/ModBus协议进行设备数据信息存储和读取方面存在的各项技术缺陷,提供一种数据传输过程中占用网络带宽更小、服务器资源消耗更少、数据处理效率更高的寄存器地 ...
【技术保护点】
1.一种寄存器地址的分配方法,基于TCP/ModBus协议,其特征在于,包括:获取存储于数据库中的配置信息记录,并根据所述配置信息记录得到处于启用状态的不同种类设备的配置信息;其中,所述配置信息包括每种设备的数量及数据信息占用的TCP/ModBus寄存器的数量;将所述配置信息按预设数据信息排布方式依次计算得到每种设备数据信息存入所述TCP/ModBus寄存器中的起始地址;根据所述配置信息占用的TCP/ModBus寄存器数量和各所述起始地址生成配置信息表;将所述配置信息表从TCP/ModBus寄存器地址信息列表中的首地址依次进行数据存放;在所述配置信息表的数据存放完成后,将所有种类设备的数据信息按所述配置信息表依次存入处于空闲状态的TCP/ModBus寄存器中,直至所有所述数据信息均存放完毕。
【技术特征摘要】
1.一种寄存器地址的分配方法,基于TCP/ModBus协议,其特征在于,包括:获取存储于数据库中的配置信息记录,并根据所述配置信息记录得到处于启用状态的不同种类设备的配置信息;其中,所述配置信息包括每种设备的数量及数据信息占用的TCP/ModBus寄存器的数量;将所述配置信息按预设数据信息排布方式依次计算得到每种设备数据信息存入所述TCP/ModBus寄存器中的起始地址;根据所述配置信息占用的TCP/ModBus寄存器数量和各所述起始地址生成配置信息表;将所述配置信息表从TCP/ModBus寄存器地址信息列表中的首地址依次进行数据存放;在所述配置信息表的数据存放完成后,将所有种类设备的数据信息按所述配置信息表依次存入处于空闲状态的TCP/ModBus寄存器中,直至所有所述数据信息均存放完毕。2.根据权利要求1所述的分配方法,其特征在于,将所述配置信息按预设数据信息排布方式依次计算得到每种设备数据信息存入所述TCP/ModBus寄存器中的起始地址,包括:当处于所述启用状态的设备仅有一种时,按照唯一类数据信息的寄存器存放起始地址=所述首地址+所述配置信息表占用的TCP/ModBus寄存器数量,计算得到所述唯一类数据信息的寄存器存放起始地址;当处于所述启用状态的设备的种类存在N类时,N≥2,且分别对应第一类设备至第N类设备,其中,所述第一类设备对应有第一类数据信息和第一寄存器占用数量、所述第N类设备对应有第N类数据信息和第N寄存器占用数量;按照所述第一类数据信息的寄存器存放起始地址=所述首地址+所述配置信息表占用的TCP/ModBus寄存器数量,计算得到所述第一类设备数据信息的寄存器存放起始地址;所述第N类数据信息的寄存器存放起始地址=第N-1类数据信息的寄存器存放起始地址+第N-1类设备的数量×第N-1寄存器占用数量,计算得到所述第N类数据信息的寄存器存放起始地址;其中,所有数据信息连续的存放在相邻的TCP/ModBus寄存器当中。3.根据权利要求2所述的分配方法,其特征在于,还包括:当新增处于所述启用状态的设备时,将新增设备的设备种类信息以及配置信息更新至所述数据库中的配置信息记录,并发出启用更新信号;根据所述启用更新信号重新执行所述配置信息表的生成操作,以根据新生成的配置信息表重新进行数据信息的存放操作。4.根据权利要求3所述的分配方法,其特征在于,还包括:从所述配置信息表中提取得到每种设备的数据信息存入所述TCP/ModBus寄存器中的起始地址;根据各所述起始地址设置相应种类设备的数据信息查询方式,以提升目标种类设备数据信息的查询效率。5.一种寄存器地址的分配系统,基于TCP/ModBus协议,其特征在于,包括:配置信息获取单元,用于获取存储于数据库中的配置信息记录,并根据所述配置信息记录得到处于启用状态的不同种类设备的配置信息;其中,所述配置信息包括每种设备的数量及数据信息占用的TCP/ModBus寄存器的数量;起始地址...
【专利技术属性】
技术研发人员:王玮,傅克文,陈哲平,蔡寰,许永贤,
申请(专利权)人:厦门科灿信息技术有限公司,厦门科华恒盛股份有限公司,
类型:发明
国别省市:福建,35
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。