CN110457232A - 数据处理方法、装置、计算设备及介质 - Google Patents
数据处理方法、装置、计算设备及介质 Download PDFInfo
- Publication number
- CN110457232A CN110457232A CN201910706897.2A CN201910706897A CN110457232A CN 110457232 A CN110457232 A CN 110457232A CN 201910706897 A CN201910706897 A CN 201910706897A CN 110457232 A CN110457232 A CN 110457232A
- Authority
- CN
- China
- Prior art keywords
- data
- address bit
- module
- bit set
- address
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer And Data Communications (AREA)
Abstract
本公开提供了一种数据处理方法,包括:获取多个第一数据;针对多个第一数据中的每个第一数据,确定与第一数据对应的第一地址位集合,第一地址位集合中包含有至少一个地址位,至少一个地址位用于指示第一数据的存储位置;接收预设指令,预设指令用于指示读取第二数据,第二数据包含多个第一数据中的至少一个第一数据;以及响应于接收到的预设指令,执行以下操作:根据与至少一个第一数据对应的第一地址位集合,确定与第二数据对应的第二地址位集合;以及读取第二地址位集合中各地址位所指示的存储位置上的数据,以得到第二数据。本公开还提供了一种数据处理装置、计算设备及介质。
Description
技术领域
本公开涉及计算机领域,更具体地,涉及一种数据处理方法、装置、计算设备及介质。
背景技术
Modbus是一种串行通信协议,是Modicon公司于1979年为使用可编程逻辑控制器(Programmable Logic Controller,简称PLC)通信而发表。在工业物联网中,Modbus协议常用于数据采集传输的应用场景中。
现有技术每次读取数据时,采用固定的数据大小读取数据,例如每次读取N位数据。这种情况下,有可能会出现组成同一个数据的m个数据位被拆分成两次读取,前一次读取前m-a位,后一次读取后m+a位。若在两次读取的过程中,有其他数据帧传入,则会使m-a位数据和m+a位数据不同步,从而出现读数错误。
发明内容
本公开的一个方面提供了一种数据处理方法,包括:获取多个第一数据;针对所述多个第一数据中的每个第一数据,确定与所述第一数据对应的第一地址位集合,所述第一地址位集合中包含有至少一个地址位,所述至少一个地址位用于指示所述第一数据的存储位置;接收预设指令,所述预设指令用于指示读取第二数据,所述第二数据包含所述多个第一数据中的至少一个第一数据;以及响应于接收到的所述预设指令,执行以下操作:根据与所述至少一个第一数据对应的第一地址位集合,确定与所述第二数据对应的第二地址位集合;以及读取所述第二地址位集合中各地址位所指示的存储位置上的数据,以得到所述第二数据。
可选地,所述获取多个第一数据包括:监听响应于读取命令而发送的多个数据帧,所述多个数据帧中的每一个均包含至少一个第一数据;以及解析所述多个数据帧,得到所述多个第一数据。
可选地,所述针对所述多个第一数据中的每个第一数据确定与所述第一数据对应的第一地址位集合,包括:将所述多个第一数据存储至存储器中;以及针对所述多个第一数据中的每个第一数据,确定所述第一数据在所述存储器中的地址位,作为所述第一地址位集合。
可选地,所述第一数据包括:开关量和/或模拟量。
可选地,所述方法还包括,在所述第二数据为开关量的情况下,将所述第二数据的每个数据位转换成一个字节格式的数。
本公开的另一个方面提供了一种数据处理装置,包括获取模块,用于获取多个第一数据;第一确定模块,用于针对所述多个第一数据中的每个第一数据,确定与所述第一数据对应的第一地址位集合,所述第一地址位集合中包含有至少一个地址位,所述至少一个地址位用于指示所述第一数据的存储位置;接收模块,用于接收预设指令,所述预设指令用于指示读取第二数据,所述第二数据包含所述多个第一数据中的至少一个第一数据;第二确定模块,用于在接收到所述预设指令的情况下,根据与所述至少一个第一数据对应的第一地址位集合,确定与所述第二数据对应的第二地址位集合;以及读取模块,用于在接收到的所述预设指令的情况下,读取所述第二地址位集合中各地址位所指示的存储位置上的数据,以得到所述第二数据。
可选地,所述获取模块包括:监听子模块,用于通过监听响应于读取命令而发送的多个数据帧,所述多个数据帧中的每一个均包含至少一个第一数据;以及解析子模块,用于解析所述多个数据帧,得到所述多个第一数据。
可选地,所述第一确定模块包括:存储子模块,用于将所述多个第一数据存储至存储器中;以及第一确定子模块,用于针对所述多个第一数据中的每个第一数据,确定所述第一数据在所述存储器中的地址位,作为所述第一地址位集合。
可选地,所述第一数据包括:开关量和/或模拟量。
可选地,所述的装置还包括:转换模块,用于在所述第二数据为开关量的情况下,将所述第二数据的每个数据位转换成一个字节格式的数。
本公开的另一方面提供了一种计算设备,包括:一个或多个处理器;存储器,用于存储一个或多个计算机程序,其中,当一个或多个计算机程序被一个或多个处理器执行时,使得一个或多个处理器实现如上所述的方法。
本公开的另一方面提供了一种计算机可读存储介质,存储有计算机可执行指令,所述指令在被执行时用于实现如上所述的方法。
本公开的另一方面提供了一种计算机程序,所述计算机程序包括计算机可执行指令,所述指令在被执行时用于实现如上所述的方法。
根据本公开的实施例,同时写入数据在存储器中的地址位构成同一个第一地址位集合,并且在每次读取时读取整数个第一地址集合,从而保证了每次读取的数据地址位中所包含第一地址集合都是完整的,因此使得同时写入的数据,在读取时也同时读取,避免了数据读取不同步而发生错误。
附图说明
为了更完整地理解本公开及其优势,现在将参考结合附图的以下描述,其中:
图1示意性示出了根据本公开的实施例的数据处理方法和装置的应用场景;
图2示意性示出了根据本公开实施例的数据处理方法的流程图;
图3示意性示出了根据本公开另一实施例的数据处理方法的流程图;
图4A示意性示出了根据本公开实施例的数据处理装置的框图;
图4B示意性示出了根据本公开实施例的第一确定模块的框图;
图4C示意性示出了根据本公开另一实施例的第一确定模块的框图;
图5示意性示出了根据本公开另一实施例的数据处理装置的框图;以及
图6示意性示出了根据本公开实施例的适于实现上文描述的方法的计算设备的方框图。
具体实施方式
以下,将参照附图来描述本公开的实施例。但是应该理解,这些描述只是示例性的,而并非要限制本公开的范围。在下面的详细描述中,为便于解释,阐述了许多具体的细节以提供对本公开实施例的全面理解。然而,明显地,一个或多个实施例在没有这些具体细节的情况下也可以被实施。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本公开的概念。
在此使用的术语仅仅是为了描述具体实施例,而并非意在限制本公开。在此使用的术语“包括”、“包含”等表明了所述特征、步骤、操作和/或部件的存在,但是并不排除存在或添加一个或多个其他特征、步骤、操作或部件。
在此使用的所有术语(包括技术和科学术语)具有本领域技术人员通常所理解的含义,除非另外定义。应注意,这里使用的术语应解释为具有与本说明书的上下文相一致的含义,而不应以理想化或过于刻板的方式来解释。
在使用类似于“A、B和C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B和C中至少一个的系统”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的系统等)。在使用类似于“A、B或C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B或C中至少一个的系统”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的系统等)。
附图中示出了一些方框图和/或流程图。应理解,方框图和/或流程图中的一些方框或其组合可以由计算机程序指令来实现。这些计算机程序指令可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器,从而这些指令在由该处理器执行时可以创建用于实现这些方框图和/或流程图中所说明的功能/操作的装置。本公开的技术可以硬件和/或软件(包括固件、微代码等)的形式来实现。另外,本公开的技术可以采取存储有指令的计算机可读存储介质上的计算机程序产品的形式,该计算机程序产品可供指令执行系统使用或者结合指令执行系统使用。
本公开的实施例提供了一种数据处理方法以及能够应用该方法的数据处理装置。该方法包括获取多个第一数据;针对多个第一数据中的每个第一数据,确定与第一数据对应的第一地址位集合,所述第一地址位集合中包含有至少一个地址位,所述至少一个地址位用于指示所述第一数据的存储位置;接收预设指令,所述预设指令用于指示读取第二数据,所述第二数据包含多个第一数据中的至少一个第一数据;以及响应于接收到的预设指令,执行以下操作:根据与至少一个第一数据对应的第一地址位集合,确定与第二数据对应的第二地址位集合;以及读取第二地址位集合中各地址位所指示的存储位置上的数据,以得到第二数据。
图1示意性示出了根据本公开的实施例的数据处理方法和装置的应用场景。需要注意的是,图1所示仅为可以应用本公开实施例的场景的示例,以帮助本领域技术人员理解本公开的技术内容,但并不意味着本公开实施例不可以用于其他设备、系统、环境或场景。
如图1所示,系统100包括处理装置101、采集装置102以及网络103。网络103用以处理装置101和采集装置102之间提供通信链路的介质。网络103可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
采集装置102与多个采集点相连,用于收集各采集点的数据,并将这些数据发送给处理装置101。采集点例如可以为温度传感器、压力传感器、智能电表、流量计等等。
处理装置101用于接收采集装置采集的数据,并对这些数据进行分析等处理。处理装置101例如可以为服务器、平板电脑、膝上型便携计算机和台式计算机等等。
根据本公开的实施例,采集装置102与处理装置101之间使用Modbus协议进行通信。
图2示意性示出了根据本公开实施例的数据处理方法的流程图。
如图2所示,该方法包括操作S210~S250。
在操作S210,获取多个第一数据。
根据本公开的实施例,处理设备101首先向采集设备102发送读取命令,然后采集设备102根据读取命令,将采集到的采集点的数据包装成多个数据帧,返回给处理设备101。处理设备101通过监听网络103,接收采集设备102发送的数据帧,然后解析数据帧,得到采集点所采集的数据,即第一数据。根据本公开的实施例,一个第一数据为一个数据帧中包含的所有数据。由于一个数据帧中可能携带一个采集点所采集的数据,也可能携带多个采集点所采集的数据,因此相对应地,一个第一数据可以包括一个采集点所采集的数据,也可以包括多个采集点所采集的数据。
根据本公开的实施例,可以通过预先设置的过滤驱动模块来监听网络103的通信,该过滤驱动模块用于获取网络103中的所有通信数据,但其不会对获得的通信数据做修改。
根据本公开的实施例,第一数据的类型可以包括:开关量和/或模拟量。其中,开关量是指非连续性信号,具有1和0两种状态,例如通断信号或者脉冲信号。模拟量是幅度随时间连续变化的信号,例如连续的电压、电流等信号量。
接下来,在操作S220,针对多个第一数据中的每个第一数据,确定与第一数据对应的第一地址位集合。
根据本公开的实施例,操作S220例如可以包括,处理设备101将多个第一数据存储至存储器中,并针对多个第一数据中的每个第一数据,确定第一数据在存储器中所占的所有地址位,作为第一地址位集合。
可选地,可以将第一数据与第一地址位集合的对应关系记录在配置文件中,以方便读取数据时调用。
其中,上述存储器可以是硬盘、内存、缓存等用于存储数据的设备。同时,存储器可以设置于处理设备101内部也可以设置于处理设备101外部。本公开实施例对上述存储器的类型以及位置不做具体的限定。示例性地,本公开实施例采用设置于处理设备101内部的内存作为存储器,处理设备101将接收到的多个第一数据存储在内存中,在内存中存储这些第一数据的地址位即为第一地址位集合。
然后,在操作S230,接收预设指令。
根据本公开的实施例,上述预设指令例如可以为指示读取内存中的数据的指令。预设指令所指示读取的内存数据既可以包含一个第一数据,也可以包含多个第一数据。
根据本公开的实施例,预设指令可以由处理设备101中的应用处理模块发送给过滤驱动模块,以使过滤驱动模块执行读取操作。
然后响应于接收到的预设指令,执行以下操作S240~S250。
再然后,在操作S240,根据与至少一个第一数据对应的第一地址位集合,确定与第二数据对应的第二地址位集合。
操作S240例如可以包括,按照第一地址位集合来选择要读取的数据位,使第二地址位集合中包含整数个第一地址位集合。
可选地,可以读取配置文件,从而获得第一数据与第一地址位集合的对应关系,然后再按照该对应关系来选择要读取的数据位。
接下来,在操作S250,读取第二地址位集合中各地址位所指示的存储位置上的数据,以得到第二数据。
根据本公开的实施例,通过将同时写入的数据在存储器中的地址位作为一个第一地址位集合,并且在每次读取时读取整数个第一地址集合,从而保证了每次读取的数据都是完整的,因此使得在写入时同时写入的数据,在读取时也同时读取,避免了数据读取不同步而发生错误。
为了便于理解本公开实施例,下面将结合具体实施方式对图2所示的方法做进一步说明。
本领域技术人员可以理解,以下描述仅为示例,本公开实施例并不局限于此。
在本示例中,获取的第一数据包括:数据A、数据B和数据C,其储存在内存时所占地址位的数量分别是m1、m2和m3(m1、m2、m3均为整数)。设单次读取所允许的最大位数为N(N为整数,且N>m1且N>m2且N>m3)。
当收到读取数据A、数据B和数据C的指令时,先判断这三个数据所占的地址位数之和(即m1+m2+m3)是否大于N。
若m1+m2+m3<N,则一次性读取这三个数据所对应的地址位。否则,进一步判断m1+m2是否小于N。
若m1+m2<N,则首先读取数据A和数据B所对应的地址位,然后读取数据C所对应的地址位,否则,进一步判断m2+m3是否小于N。
若m2+m3<N,则首先读取数据A所对应的地址位,然后读取数据B和数据C所对应的地址位,否则,分三次分别读取数据A、数据B和数据C。
通过以上方法,能够使数据A、数据B以及数据C在读取时被完整地读取,避免了单个数据被拆分成两次读取而产生的数据不同步。
图3示意性示出了根据本公开另一实施例的数据处理方法的流程图。
如图3所示,除上述操作S210~S250之外,数据处理方法还包括以下操作S360。
在操作S360,在第二数据为开关量的情况下,将第二数据的每个数据位转换成一个字节格式的数。
根据本公开的实施例,一个字节为8位。
举例说明,设一个开关量为00000001,那么将其每个数据位转换成一个字节格式的数,即第1位0转换为00000000,第2位0转换为00000000,同理,第3~7位0转换为00000000,第八位1转换为00000001。
根据本公开的实施例,通过将开关量的每个数据位转换成一个字节,从而在读取数据时可以以字节为单位进行读取,由于后续的数据处理操作一般是以字节为单位,因此可以方便后续的数据处理操作。
图4A示意性示出了根据本公开的实施例的数据处理装置的框图。
如图4A所示,数据处理装置400包括获取模块410、第一确定模块420、接收模块430、第二确定模块440和读取模块450。该数据处理装置400可以执行上面参考图2描述的方法。
具体地,获取模块410,用于获取多个第一数据。
第一确定模块420,用于针对多个第一数据中的每个第一数据,确定与第一数据对应的第一地址位集合,所述第一地址位集合中包含有至少一个地址位,所述至少一个地址位用于指示第一数据的存储位置。
接收模块430,用于接收预设指令,所述预设指令用于指示读取第二数据,所述第二数据包含多个第一数据中的至少一个第一数据。
第二确定模块440,用于在接收到的预设指令的情况下,根据与至少一个第一数据对应的第一地址位集合,确定与第二数据对应的第二地址位集合。
读取模块450,用于在接收到预设指令的情况下,读取第二地址位集合中各地址位所指示的存储位置上的数据,以得到第二数据。
图4B示意性示出了根据本公开的实施例的第一确定模块420的框图。
如图4B所示,获取模块410包括监听子模块411以及解析子模块412。
具体地,监听子模块411,用于通过监听响应于读取命令而发送的多个数据帧,所述多个数据帧中的每一个均包含至少一个第一数据。
解析子模块412,用于解析多个数据帧,得到多个第一数据。
图4C示意性示出了根据本公开的实施例的第一确定模块420的框图。
如图4C所示,第一确定模块420包括存储子模块421以及第一确定子模块422。
具体地,存储子模块421,用于将多个第一数据存储至存储器中。
第一确定子模块422,用于针对多个第一数据中的每个第一数据,确定第一数据在存储器中的地址位,作为第一地址位集合。
根据本公开的实施例,所述第一数据包括:开关量和/或模拟量。
根据本公开的实施例,同时写入数据在存储器中的地址位构成同一个第一地址位集合,并且在每次读取时读取整数个第一地址集合,从而保证了每次读取的数据地址位中所包含第一地址集合都是完整的,因此使得同时写入的数据,在读取时也同时读取,避免了数据读取不同步而发生错误。
图5示意性示出了根据本公开另一实施例的数据处理装置的框图。该数据处理装置500可以执行上面参考图3描述的方法。
如图5所示,除上述模块410~450之外,数据处理装置500还包括转换模块560。
具体地,转换模块560,用于在所述第二数据为开关量的情况下,将第二数据的每个数据位转换成一个字节格式的数。
根据本公开的实施例,通过将开关量的每个数据位转换成字节格式,从而在读取数据时可以以字节为单位进行读取,由于后续的数据处理操作一般是以字节为单位,因此可以方便后续的数据处理操作。
根据本公开的实施例的模块、子模块、单元、子单元中的任意多个、或其中任意多个的至少部分功能可以在一个模块中实现。根据本公开实施例的模块、子模块、单元、子单元中的任意一个或多个可以被拆分成多个模块来实现。根据本公开实施例的模块、子模块、单元、子单元中的任意一个或多个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上系统、基板上的系统、封装上的系统、专用集成电路(ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式的硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,根据本公开实施例的模块、子模块、单元、子单元中的一个或多个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。
例如,获取模块410、第一确定模块420、接收模块430、第二确定模块440、读取模块450以及转换模块560中的任意多个可以合并在一个模块中实现,或者其中的任意一个模块可以被拆分成多个模块。或者,这些模块中的一个或多个模块的至少部分功能可以与其他模块的至少部分功能相结合,并在一个模块中实现。根据本公开的实施例,获取模块410、第一确定模块420、接收模块430、第二确定模块440、读取模块450以及转换模块560中的至少一个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上系统、基板上的系统、封装上的系统、专用集成电路(ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式等硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,获取模块410、第一确定模块420、接收模块430、第二确定模块440、读取模块450以及转换模块560中的至少一个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。
图6示意性示出了根据本公开实施例的适于实现上文描述的方法的计算设备的方框图。图6示出的计算设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图6所示,计算设备600包括处理器610、计算机可读存储介质620、信号发送器630、以及信号接收器640。该数据处理装置600可以执行根据本公开实施例的方法。
具体地,处理器610例如可以包括通用微处理器、指令集处理器和/或相关芯片组和/或专用微处理器(例如,专用集成电路(ASIC)),等等。处理器610还可以包括用于缓存用途的板载存储器。处理器610可以是用于执行根据本公开实施例的方法流程的不同动作的单一处理单元或者是多个处理单元。
计算机可读存储介质620,例如可以是非易失性的计算机可读存储介质,具体示例包括但不限于:磁存储装置,如磁带或硬盘(HDD);光存储装置,如光盘(CD-ROM);存储器,如随机存取存储器(RAM)或闪存;等等。
计算机可读存储介质620可以包括计算机程序621,该计算机程序621可以包括代码/计算机可执行指令,其在由处理器610执行时使得处理器610执行根据本公开实施例的方法或其任何变形。
计算机程序621可被配置为具有例如包括计算机程序模块的计算机程序代码。例如,在示例实施例中,计算机程序621中的代码可以包括一个或多个程序模块,例如包括621A、模块621B、……。应当注意,模块的划分方式和个数并不是固定的,本领域技术人员可以根据实际情况使用合适的程序模块或程序模块组合,当这些程序模块组合被处理器610执行时,使得处理器610可以执行根据本公开实施例的方法或其任何变形。
根据本公开的实施例,处理器610可以与信号发送器630和信号接收器640进行交互,来执行根据本公开实施例的方法或其任何变形。
根据本发明的实施例,获取模块410、第一确定模块420、接收模块430、第二确定模块440、读取模块450以及转换模块560中的至少一个可以实现为参考图6描述的计算机程序模块,其在被处理器610执行时,可以实现上面描述的相应操作。
本公开还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中描述的设备/装置/系统中所包含的;也可以是单独存在,而未装配入该设备/装置/系统中。上述计算机可读存储介质承载有一个或者多个程序,当上述一个或者多个程序被执行时,实现根据本公开实施例的方法。
根据本公开的实施例,计算机可读存储介质可以是非易失性的计算机可读存储介质,例如可以包括但不限于:便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
本领域技术人员可以理解,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合,即使这样的组合或结合没有明确记载于本公开中。特别地,在不脱离本公开精神和教导的情况下,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合。所有这些组合和/或结合均落入本公开的范围。
尽管已经参照本公开的特定示例性实施例示出并描述了本公开,但是本领域技术人员应该理解,在不背离所附权利要求及其等同物限定的本公开的精神和范围的情况下,可以对本公开进行形式和细节上的多种改变。因此,本公开的范围不应该限于上述实施例,而是应该不仅由所附权利要求来进行确定,还由所附权利要求的等同物来进行限定。
Claims (12)
1.一种数据处理方法,包括:
获取多个第一数据;
针对所述多个第一数据中的每个第一数据,确定与所述第一数据对应的第一地址位集合,所述第一地址位集合中包含有至少一个地址位,所述至少一个地址位用于指示所述第一数据的存储位置;
接收预设指令,所述预设指令用于指示读取第二数据,所述第二数据包含所述多个第一数据中的至少一个第一数据;以及
响应于接收到的所述预设指令,执行以下操作:
根据与所述至少一个第一数据对应的第一地址位集合,确定与所述第二数据对应的第二地址位集合;以及
读取所述第二地址位集合中各地址位所指示的存储位置上的数据,以得到所述第二数据。
2.根据权利要求1所述的方法,其中,所述获取多个第一数据包括:
监听响应于读取命令而发送的多个数据帧,所述多个数据帧中的每一个均包含至少一个第一数据;以及
解析所述多个数据帧,得到所述多个第一数据。
3.根据权利要求1所述的方法,其中,所述针对所述多个第一数据中的每个第一数据确定与所述第一数据对应的第一地址位集合,包括:
将所述多个第一数据存储至存储器中;以及
针对所述多个第一数据中的每个第一数据,确定所述第一数据在所述存储器中的地址位,作为所述第一地址位集合。
4.根据权利要求1-3中任一项所述的方法,其中,所述第一数据包括:开关量和/或模拟量。
5.根据权利要求4所述的方法,还包括:
在所述第二数据为开关量的情况下,将所述第二数据的每个数据位转换成一个字节格式的数。
6.一种数据处理装置,包括:
获取模块,用于获取多个第一数据;
第一确定模块,用于针对所述多个第一数据中的每个第一数据,确定与所述第一数据对应的第一地址位集合,所述第一地址位集合中包含有至少一个地址位,所述至少一个地址位用于指示所述第一数据的存储位置;
接收模块,用于接收预设指令,所述预设指令用于指示读取第二数据,所述第二数据包含所述多个第一数据中的至少一个第一数据;
第二确定模块,用于在接收到的所述预设指令的情况下,根据与所述至少一个第一数据对应的第一地址位集合,确定与所述第二数据对应的第二地址位集合;以及
读取模块,用于在接收到所述预设指令的情况下,读取所述第二地址位集合中各地址位所指示的存储位置上的数据,以得到所述第二数据。
7.根据权利要求6所述的装置,其中,所述获取模块包括:
监听子模块,用于通过监听响应于读取命令而发送的多个数据帧,所述多个数据帧中的每一个均包含至少一个第一数据;以及
解析子模块,用于解析所述多个数据帧,得到所述多个第一数据。
8.根据权利要求6所述的装置,其中,所述第一确定模块包括:
存储子模块,用于将所述多个第一数据存储至存储器中;以及
第一确定子模块,用于针对所述多个第一数据中的每个第一数据,确定所述第一数据在所述存储器中的地址位,作为所述第一地址位集合。
9.根据权利要求6-8中任一项所述的装置,其中,所述第一数据包括:开关量和/或模拟量。
10.根据权利要求9所述的装置,还包括:
转换模块,用于在所述第二数据为开关量的情况下,将所述第二数据的每个数据位转换成一个字节格式的数。
11.一种计算设备,包括:
一个或多个处理器;
存储器,用于存储一个或多个计算机程序,
其中,当一个或多个计算机程序被一个或多个处理器执行时,使得一个或多个处理器实现权利要求1至5中任一项的方法。
12.一种计算机可读存储介质,其上存储有可执行指令,该指令被处理器执行时使处理器实现权利要求1至5中任一项的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910706897.2A CN110457232A (zh) | 2019-07-31 | 2019-07-31 | 数据处理方法、装置、计算设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910706897.2A CN110457232A (zh) | 2019-07-31 | 2019-07-31 | 数据处理方法、装置、计算设备及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110457232A true CN110457232A (zh) | 2019-11-15 |
Family
ID=68484494
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910706897.2A Pending CN110457232A (zh) | 2019-07-31 | 2019-07-31 | 数据处理方法、装置、计算设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110457232A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023169080A1 (zh) * | 2022-03-08 | 2023-09-14 | 支付宝(杭州)信息技术有限公司 | 数据处理 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101681326A (zh) * | 2007-05-25 | 2010-03-24 | 罗伯特.博世有限公司 | 在主从装置之间传输数据的方法 |
CN104331028A (zh) * | 2013-07-22 | 2015-02-04 | 上海联影医疗科技有限公司 | 控制装置和总线系统 |
CN105527881A (zh) * | 2014-09-30 | 2016-04-27 | 上海安川电动机器有限公司 | 一种指令处理方法及装置 |
US20170131939A1 (en) * | 2015-11-06 | 2017-05-11 | Vivante Corporation | Transfer descriptor for memory access commands |
CN106874237A (zh) * | 2017-03-08 | 2017-06-20 | 上海冉能自动化科技有限公司 | 基于二总线的数据同步方法及系统 |
-
2019
- 2019-07-31 CN CN201910706897.2A patent/CN110457232A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101681326A (zh) * | 2007-05-25 | 2010-03-24 | 罗伯特.博世有限公司 | 在主从装置之间传输数据的方法 |
CN104331028A (zh) * | 2013-07-22 | 2015-02-04 | 上海联影医疗科技有限公司 | 控制装置和总线系统 |
CN105527881A (zh) * | 2014-09-30 | 2016-04-27 | 上海安川电动机器有限公司 | 一种指令处理方法及装置 |
US20170131939A1 (en) * | 2015-11-06 | 2017-05-11 | Vivante Corporation | Transfer descriptor for memory access commands |
CN106874237A (zh) * | 2017-03-08 | 2017-06-20 | 上海冉能自动化科技有限公司 | 基于二总线的数据同步方法及系统 |
Non-Patent Citations (2)
Title |
---|
竹风清: "https://www.cnblogs.com/pertor/p/6427296.html?ivk_sa=1024320u", 《20170222==(MODBUS读取多个寄存器)》 * |
邹红利等: "简化的MODBUS通讯协议在实时通讯控制中的应用", 《武汉工业学院学报》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023169080A1 (zh) * | 2022-03-08 | 2023-09-14 | 支付宝(杭州)信息技术有限公司 | 数据处理 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105100215B (zh) | 基于行车记录仪的数据传输方法、装置及系统 | |
CN108809945A (zh) | 实现设备间互联互通的方法、装置及物联网云平台 | |
JP6904683B2 (ja) | 通信ネットワークを試験するための、マシン可読コードを利用するシステム及び方法 | |
CN104539502B (zh) | 一种自定义添加modbus设备的方法 | |
CN109407541A (zh) | 智能家居设备的控制方法及装置 | |
CN110463138B (zh) | 网络结构信息生成方法 | |
CN105680868B (zh) | 压缩流数据的方法及设备 | |
CN108763094A (zh) | 测试用例生成方法、装置、设备及存储介质 | |
CN108964964A (zh) | 一种网络拓扑显示方法和装置 | |
CN104023039B (zh) | 数据包传输方法和装置 | |
CN106227664A (zh) | 一种测试应用程序的方法及装置 | |
CN109982297A (zh) | 一种在线电子标签的数据传输方法及系统 | |
CN110046187A (zh) | 数据处理系统、方法及装置 | |
CN104202328B (zh) | 一种订阅goose/smv报文的方法、配置模块及订阅端 | |
CN110457232A (zh) | 数据处理方法、装置、计算设备及介质 | |
EP2584486A2 (en) | Meter access management system | |
CN108267760A (zh) | 定位数据的获取方法、装置、计算机设备和可读存储介质 | |
CN109462461A (zh) | 一种参考信号资源指示方法及装置 | |
CN110796367A (zh) | 一种基于信息远方标识的设备信息管理方法、装置及终端 | |
CN103314554B (zh) | 用于选项模块的动态主机配置文件 | |
CN108803658A (zh) | 基于无人机的巡检系统 | |
CN107086960A (zh) | 一种报文传输方法和装置 | |
CN116704765A (zh) | 路况预测方法、装置及可读存储介质 | |
JP5453182B2 (ja) | 端末装置、通信システム、および端末装置の動作方法 | |
CN110162423A (zh) | 资源检查方法和资源检查装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |