一种批量采集从机设备数据的方法技术

技术编号:29156307 阅读:13 留言:0更新日期:2021-07-06 22:55
本发明专利技术公开了一种批量采集从机设备数据的方法,通过获取待采集从机设备的基本参数,根据所述基本参数对所述待采集从机设备进行分类,得到从机设备集合。然后,获取所述从机设备集合中各个从机设备分别对应的寄存器地址范围数据,根据所述寄存器地址范围数据确定所述各个从机设备分别对应的哈希桶。最后,根据所述哈希桶对所述待采集从机设备存储的数据进行批量采集。本发明专利技术可以使主机设备批量采集从机设备的数据,解决了现有技术中主机设备必须按照从机设备轮询采集的方式进行数据采集,导致数据采集效率较低的问题。

【技术实现步骤摘要】
一种批量采集从机设备数据的方法
本专利技术涉及物联网领域,尤其涉及的是一种批量采集从机设备数据的方法。
技术介绍
Modbus协议采用主从工作方式,允许一台主机设备和多台从机设备进行通信,每台从机地址由用户设定,地址范围为1~255。Modbus协议的优点是结构简单明了,通讯可靠,通讯数据量大。然而目前,主机设备通过Modbus协议采集从机设备的数据时,必须按照从机设备轮询采集的方式进行数据采集,导致数据采集效率较低。因此,现有技术还有待改进和发展。
技术实现思路
本专利技术要解决的技术问题在于,针对现有技术的上述缺陷,提供一种批量采集从机设备数据的方法,旨在解决现有技术中主机设备必须按照从机设备轮询采集的方式进行数据采集,导致数据采集效率较低的问题。本专利技术解决问题所采用的技术方案如下:第一方面,本专利技术实施例提供一种批量采集从机设备数据的方法,其中,所述方法包括:获取待采集从机设备的基本参数,根据所述基本参数对所述待采集从机设备进行分类,得到从机设备集合;获取所述从机设备集合中各个从机设备分别对应的寄存器地址范围数据,根据所述寄存器地址范围数据确定所述各个从机设备分别对应的哈希桶;根据所述哈希桶对所述待采集从机设备存储的数据进行批量采集。在一种实现方式中,所述获取待采集从机设备的基本参数,根据所述基本参数对所述待采集从机设备进行分类,得到从机设备集合,包括:获取所述待采集从机设备的基本参数,根据所述基本参数确定所述待采集从机设备对应的站地址数据和功能码数据;将所述站地址数据和所述功能码数据均相同的所有待采集从机设备作为一个从机设备集合。在一种实现方式中,所述获取所述从机设备集合中各个从机设备分别对应的寄存器地址范围数据,根据所述寄存器地址范围数据确定所述各个从机设备分别对应的哈希桶,包括:将所述从机设备集合中的任意一个从机设备作为待处理从机设备;获取所述待处理从机设备的寄存器地址数据和寄存器长度数据,根据所述寄存器地址数据和所述寄存器长度数据,确定所述待处理从机设备对应的寄存器地址范围数据;根据所述寄存器地址范围数据,确定所述待处理从机设备对应的哈希桶索引值,并得到所述从机设备集合中各个从机设备分别对应的哈希桶索引值;根据所述各个从机设备分别对应的哈希桶索引值确定所述各个从机设备分别对应的哈希桶。在一种实现方式中,所述根据所述寄存器地址数据和所述寄存器长度数据,确定所述待处理从机设备对应的寄存器地址范围数据,包括:将所述寄存器地址数据与所述寄存器长度数据相加再减1,得到所述待处理从机设备对应的截止地址数据;将所述寄存器地址数据作为起始地址数据,根据所述起始地址数据和所述截止地址数据,确定所述待处理从机设备对应的寄存器地址范围数据。在一种实现方式中,所述根据所述寄存器地址范围数据,确定所述待处理从机设备对应的哈希桶索引值,包括:获取预设的最大批量采集寄存器长度数据,根据所述最大批量采集寄存器长度数据对所述寄存器地址范围数据进行整除并向下取整,得到整数值;根据所述整数值确定所述待处理从机设备对应的哈希桶索引值。在一种实现方式中,所述根据所述哈希桶对所述待采集从机设备存储的数据进行批量采集,包括:根据所述待采集从机设备的基本参数,将所述各个从机设备的基本参数存储至各自对应的哈希桶中;将所述各个从机设备分别对应的哈希桶中的任意一个哈希桶作为一个批量采集单元;获取所述批量采集单元对应的寄存器地址数据,得到目标寄存器地址数据;获取所述批量采集单元对应的寄存器长度数据,得到目标寄存器长度数据;获取所述批量采集单元对应的站地址数据以及所述批量采集单元对应的功能码数据,得到目标站地址数据和目标功能码数据;根据所述目标寄存器地址数据、所述目标寄存器长度数据、所述目标站地址数据和所述目标功能码数据对所述待采集从机设备存储的数据进行批量采集。在一种实现方式中,所述获取所述批量采集单元对应的寄存器地址数据,得到目标寄存器地址数据,包括:获取所述批量采集单元对应的哈希桶索引值;将所述批量采集单元对应的哈希桶索引值与所述最大批量采集寄存器长度数据相乘,得到所述批量采集单元对应的寄存器地址数据;将所述批量采集单元对应的寄存器地址数据作为目标寄存器地址数据。在一种实现方式中,所述获取所述批量采集单元对应的寄存器长度数据,得到目标寄存器长度数据,包括:将所述目标寄存器地址数据与所述最大批量采集寄存器长度数据相加,得到待验证数值;获取所述批量采集单元对应的从机设备集合的最大寄存器地址数据,将所述待验证数值与所述最大寄存器地址数据进行比较;当所述待验证数值小于或者等于所述最大寄存器地址数据时,将所述最大批量采集寄存器长度数据作为所述批量采集单元对应的寄存器长度数据;当所述待验证数值大于所述最大寄存器地址数据时,将所述最大寄存器地址数据与所述目标寄存器地址数据相减再加1,得到所述批量采集单元对应的寄存器长度数据。在一种实现方式中,所述获取所述批量采集单元对应的从机设备集合的最大寄存器地址数据,包括:获取所述批量采集单元对应的从机设备集合中各个从机设备分别对应的寄存器地址范围数据;根据所述批量采集单元对应的从机设备集合中各个从机设备分别对应的寄存器地址范围数据,确定所述批量采集单元对应的从机设备集合中各个从机设备分别对应的截止地址数据,得到待筛选截止地址数据;将所述待筛选截止地址数据中数值最大的截止地址数据,作为所述批量采集单元对应的从机设备集合的最大寄存器地址数据。在一种实现方式中,所述根据所述目标寄存器地址数据、所述目标寄存器长度数据、所述目标站地址数据和所述目标功能码数据对所述待采集从机设备存储的数据进行批量采集,包括:根据所述目标寄存器地址数据、所述目标寄存器长度数据、所述目标站地址数据和所述目标功能码数据,生成批量采集指令;通过所述批量采集指令对所述待采集从机设备存储的数据进行批量采集。本专利技术的有益效果:本专利技术实施例通过获取待采集从机设备的基本参数,根据所述基本参数对所述待采集从机设备进行分类,得到从机设备集合。然后,获取所述从机设备集合中各个从机设备分别对应的寄存器地址范围数据,根据所述寄存器地址范围数据确定所述各个从机设备分别对应的哈希桶。最后,根据所述哈希桶对所述待采集从机设备存储的数据进行批量采集。本专利技术可以使主机设备批量采集从机设备的数据,解决了现有技术中主机设备必须按照从机设备轮询采集的方式进行数据采集,导致数据采集效率较低的问题。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他本文档来自技高网...

【技术保护点】
1.一种批量采集从机设备数据的方法,其特征在于,所述方法包括:/n获取待采集从机设备的基本参数,根据所述基本参数对所述待采集从机设备进行分类,得到从机设备集合;/n获取所述从机设备集合中各个从机设备分别对应的寄存器地址范围数据,根据所述寄存器地址范围数据确定所述各个从机设备分别对应的哈希桶;/n根据所述哈希桶对所述待采集从机设备存储的数据进行批量采集。/n

【技术特征摘要】
1.一种批量采集从机设备数据的方法,其特征在于,所述方法包括:
获取待采集从机设备的基本参数,根据所述基本参数对所述待采集从机设备进行分类,得到从机设备集合;
获取所述从机设备集合中各个从机设备分别对应的寄存器地址范围数据,根据所述寄存器地址范围数据确定所述各个从机设备分别对应的哈希桶;
根据所述哈希桶对所述待采集从机设备存储的数据进行批量采集。


2.根据权利要求1所述的一种批量采集从机设备数据的方法,其特征在于,所述获取待采集从机设备的基本参数,根据所述基本参数对所述待采集从机设备进行分类,得到从机设备集合,包括:
获取所述待采集从机设备的基本参数,根据所述基本参数确定所述待采集从机设备对应的站地址数据和功能码数据;
将所述站地址数据和所述功能码数据均相同的所有待采集从机设备作为一个从机设备集合。


3.根据权利要求1所述的一种批量采集从机设备数据的方法,其特征在于,所述获取所述从机设备集合中各个从机设备分别对应的寄存器地址范围数据,根据所述寄存器地址范围数据确定所述各个从机设备分别对应的哈希桶,包括:
将所述从机设备集合中的任意一个从机设备作为待处理从机设备;
获取所述待处理从机设备的寄存器地址数据和寄存器长度数据,根据所述寄存器地址数据和所述寄存器长度数据,确定所述待处理从机设备对应的寄存器地址范围数据;
根据所述寄存器地址范围数据,确定所述待处理从机设备对应的哈希桶索引值,并得到所述从机设备集合中各个从机设备分别对应的哈希桶索引值;
根据所述各个从机设备分别对应的哈希桶索引值确定所述各个从机设备分别对应的哈希桶。


4.根据权利要求3所述的一种批量采集从机设备数据的方法,其特征在于,所述根据所述寄存器地址数据和所述寄存器长度数据,确定所述待处理从机设备对应的寄存器地址范围数据,包括:
将所述寄存器地址数据与所述寄存器长度数据相加再减1,得到所述待处理从机设备对应的截止地址数据;
将所述寄存器地址数据作为起始地址数据,根据所述起始地址数据和所述截止地址数据,确定所述待处理从机设备对应的寄存器地址范围数据。


5.根据权利要求3所述的一种批量采集从机设备数据的方法,其特征在于,所述根据所述寄存器地址范围数据,确定所述待处理从机设备对应的哈希桶索引值,包括:
获取预设的最大批量采集寄存器长度数据,根据所述最大批量采集寄存器长度数据对所述寄存器地址范围数据进行整除并向下取整,得到整数值;
根据所述整数值确定所述待处理从机设备对应的哈希桶索引值。


6.根据权利要求5所述的一种批量采集从机设备数据的方法,其特征在于,所述根据所述哈希桶对所述待采集从机设备存储的数据进行批量采集,包括:
根据所述待采集从机设备的基本参数,将所述各个从机设备的基本参数存储至各自对应的哈希桶中;
将所述各个从机设备分...

【专利技术属性】
技术研发人员:刘三明刘佳雷治策云佩
申请(专利权)人:深圳市安冠科技有限公司
类型:发明
国别省市:广东;44

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

1