CN110474894A - 数据发送及接收方法,系统,存储介质及终端 - Google Patents

数据发送及接收方法,系统,存储介质及终端 Download PDF

Info

Publication number
CN110474894A
CN110474894A CN201910702195.7A CN201910702195A CN110474894A CN 110474894 A CN110474894 A CN 110474894A CN 201910702195 A CN201910702195 A CN 201910702195A CN 110474894 A CN110474894 A CN 110474894A
Authority
CN
China
Prior art keywords
data
variable name
value
numerical value
cryptographic hash
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.)
Granted
Application number
CN201910702195.7A
Other languages
English (en)
Other versions
CN110474894B (zh
Inventor
李根旺
李蒙
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Helishi Control Technology Co ltd
Original Assignee
Beijing Hollysys Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Hollysys Co Ltd filed Critical Beijing Hollysys Co Ltd
Priority to CN201910702195.7A priority Critical patent/CN110474894B/zh
Publication of CN110474894A publication Critical patent/CN110474894A/zh
Application granted granted Critical
Publication of CN110474894B publication Critical patent/CN110474894B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/03Protocol definition or specification 

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

一种数据发送、接收方法,以及数据发送、接收系统,存储介质以及数据发送、接收终端,其中,所述数据发送方法包括:将具有物理属性的变量名转换为数值,所述数值体现所述物理属性;将所述数值与该变量名对应的变量值封装为数据包后一起发送。本发明能够避免工程实施时出现的数据映射错位问题。

Description

数据发送及接收方法,系统,存储介质及终端
技术领域
本文涉及网络数据传输技术,尤指一种数据发送、接收方法,以及数据发送、接收系统,存储介质以及数据发送、接收终端。
背景技术
随着生产规模的不断扩大,流程工业的装置规模和数量不断增加,控制任务一般需要多个控制站,如分布式控制系统(Distributed Control System,DCS)和安全仪表系统(Safety Instrumented System,SIS),协同完成。控制站间的数据共享一般通过以太网来实现,如图1所示,通过多个控制站连接到同一交换机组建物理网络,在该物理网络基础之上,借助网络协议(一般为传输控制协议TCP/互联网协议IP)建立两个控制站之间点对点的逻辑链接,实现点对点通讯,从而完成数据共享。
为了实现多个控制站之间的数据共享,相关技术中常用的数据管理方法为:每个控制站预先按照数据类型对数据分类,比如将数据分为BOOL类型,REAL类型,而后依次对各个数据类型下的多个变量进行规范化命名(可以按照索引递增的方式对多个变量命名,如BOOL0、BOOL1、REAL0、REAL1等)。当其他控制站想要引用本站的数据时,按照规范命名来进行引用。例如,1#控制站共享数据给2#控制站,1#控制站的数据管理方法为:按照BOOL和REAL类型对数据进行分类,BOOL型变量依次命名为BOOL0、BOOL1……,REAL型变量依次命名为REAL0、REAL1……。按照这种管理方法,变量名和数据偏移地址有一定的对应关系,比如变量名尾缀数字即是变量对应偏移地址,经过这种规范化处理后,变量名和实际的变量存储地址建立了一层映射关系,从而方便访问。当数据组装成网络数据包时并不携带变量名,仅携带变量值,引用站通过变量的偏移地址来访问,例如当2#站引用1#站的BOOL1变量时,先接收网络数据包,根据网络协议解析定位到BOOL型变量起始位置,再根据BOOL1的尾缀定位到BOOL型变量偏移地址为1的位置取出BOOL1变量进行后续运算。
由于进行了规范化命名,导致变量原有的物理属性丢失,而对于带有物理属性的变量名,是工程实施人员习惯使用的,因为它们和实际的测点信息对应关系更清晰。例如,反应器的温度变量为TT1122,压力变量为PT1239,液位变量为LT874,这些带有实际物理属性命名的变量在进行站间通讯时,如果按照上述管理方法进行处理需要在网络数据包打包和拆包过程中多增加两次名称映射或者赋值操作,才能实现物理属性变量的对应。比如在1#站打包时,把TT1122映射到REAL0,把PT1239映射到REAL1,而在2#站拆包时,需要再次把REAL0映射到TT1122,把REAL1映射到PT1239。因为BOOLx和REALx没具体的物理含义,工程实施人员经常映射错位引起问题,工程实施单纯依赖于人员的细心是不合理的,需要技术方案保证。
发明内容
本申请提供了一种数据发送、接收方法,以及数据发送、接收系统,存储介质以及数据发送、接收终端,能够避免工程实施时出现的数据映射错位问题。
本申请提供了一种数据发送方法,包括:
将具有物理属性的变量名转换为数值,所述数值体现所述物理属性;
将所述数值与该变量名对应的变量值封装为数据包后一起发送。
在一示例性实施例中,所述将具有物理属性的变量名转换为数值,包括:
根据哈希算法将具有物理属性的变量名转换为哈希值。
在一示例性实施例中,所述哈希值的长度为8n位,其中2≤n≤8,n为整数。
在一示例性实施例中,所述根据哈希算法将具有物理属性的变量名转换为哈希值,包括:
确定与具有物理属性的变量名对应的变量值的数据类型;
使根据哈希算法计算得到的所述变量名的哈希值落入预设的与该数据类型对应的哈希值的数值区间。
在一示例性实施例中,将所述数值与该变量名对应的变量值封装为数据包后一起发送,包括:
将所述数值与该变量名对应的变量值封装为预设长度的数据包后一起发送。
本申请实施例还提供了一种数据接收方法,包括:
接收数据包,每个数据包中包括变量值以及以数值表示的具有物理属性的变量名;
根据接收的数据包携带的变量名数值确定所需的变量名;
从数据包中读取确定的变量名对应的变量值。
在一示例性实施例中,所述变量名的数值为哈希值。
在一示例性实施例中,根据接收的数据包携带的变量名数值确定所需的变量名,包括:
根据变量值的已知数据类型,以及预设的与该数据类型对应的哈希值的数值区间,确定携带位于所需数据区间的哈希值的数据包,根据确定的数据包携带的变量名对应的哈希值确定所需的变量名。
本申请实施例还提供了一种数据发送系统,包括:
转换模块,用于将具有物理属性的变量名转换为数值,所述数值体现所述物理属性;
发送模块,用于将所述数值与该变量名对应的变量值封装为数据包后一起发送。
在一示例性实施例中,所述转换模块,用于将具有物理属性的变量名转换为数值,包括:
根据哈希算法将具有物理属性的变量名转换为哈希值。
在一示例性实施例中,所述转换模块,用于根据哈希算法将具有物理属性的变量名转换为哈希值,包括:
确定与具有物理属性的变量名对应的变量值的数据类型;
使根据哈希算法计算得到的所述变量名的哈希值落入预设的与该数据类型对应的哈希值的数值区间。
在一示例性实施例中,发送模块,用于将所述数值与该变量名对应的变量值封装为数据包后一起发送,包括:
将所述数值与该变量名对应的变量值封装为预设长度的数据包后一起发送。
本申请实施例还提供了一种数据接收系统,包括:
接收模块,用于接收数据包,每个数据包中包括变量值以及以数值表示的具有物理属性的变量名;
变量名确定模块,用于根据接收的数据包携带的变量名数值确定所需的变量名;
变量值确定模块,用于从数据包中读取确定的变量名对应的变量值。
在一示例性实施例中,所述变量名的数值为哈希值。
在一示例性实施例中,所述变量名确定模块,用于根据接收的数据包携带的变量名数值确定所需的变量名,包括:
根据变量值的已知数据类型,以及预设的与该数据类型对应的哈希值的数值区间,确定携带位于所需数据区间的哈希值的数据包,根据确定的数据包携带的变量名对应的哈希值确定所需的变量名。
本申请实施例还提供了一种计算机可读存储介质,所述介质存储有计算机可执行指令,所述计算机可执行指令被处理器执行时实现如前所述的数据发送方法的步骤。
本申请实施例还提供了一种数据发送终端,包括:
存储器,用于存储计算机可执行指令;
处理器,用于执行所述计算机可执行指令,以实现如前所述的数据发送方法的步骤。
本申请实施例一种计算机可读存储介质,所述介质存储有计算机可执行指令,所述计算机可执行指令被处理器执行时实现如前所述的数据接收方法的步骤。
本申请实施例还提供一种数据接收终端,包括:
存储器,用于存储计算机可执行指令;
处理器,用于执行所述计算机可执行指令,以实现如前所述的数据接收方法的步骤
与相关技术相比,本申请包括:将具有物理属性的变量名转换为数值,所述数值体现所述物理属性;将所述数值与该变量名对应的变量值封装为数据包后一起发送。本申请实施例能够避免工程实施时出现的数据映射错位问题。
本申请的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请而了解。本申请的其他优点可通过在说明书、权利要求书以及附图中所描述的方案来实现和获得。
附图说明
附图用来提供对本申请技术方案的理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本申请的技术方案,并不构成对本申请技术方案的限制。
图1为相关技术中控制站间通过以太网传输数据的示意图;
图2为本申请实施例提供的数据发送方法流程图;
图3为本申请实施例发送的数据包示意图;
图4为本申请实施例提供的数据接收方法流程图;
图5为本申请实施例提供的数据发送系统模块图;
图6为本申请实施例提供的数据接收系统模块图。
具体实施方式
本申请描述了多个实施例,但是该描述是示例性的,而不是限制性的,并且对于本领域的普通技术人员来说显而易见的是,在本申请所描述的实施例包含的范围内可以有更多的实施例和实现方案。尽管在附图中示出了许多可能的特征组合,并在具体实施方式中进行了讨论,但是所公开的特征的许多其它组合方式也是可能的。除非特意加以限制的情况以外,任何实施例的任何特征或元件可以与任何其它实施例中的任何其他特征或元件结合使用,或可以替代任何其它实施例中的任何其他特征或元件。
本申请包括并设想了与本领域普通技术人员已知的特征和元件的组合。本申请已经公开的实施例、特征和元件也可以与任何常规特征或元件组合,以形成由权利要求限定的独特的发明方案。任何实施例的任何特征或元件也可以与来自其它发明方案的特征或元件组合,以形成另一个由权利要求限定的独特的发明方案。因此,应当理解,在本申请中示出和/或讨论的任何特征可以单独地或以任何适当的组合来实现。因此,除了根据所附权利要求及其等同替换所做的限制以外,实施例不受其它限制。此外,可以在所附权利要求的保护范围内进行各种修改和改变。
此外,在描述具有代表性的实施例时,说明书可能已经将方法和/或过程呈现为特定的步骤序列。然而,在该方法或过程不依赖于本文所述步骤的特定顺序的程度上,该方法或过程不应限于所述的特定顺序的步骤。如本领域普通技术人员将理解的,其它的步骤顺序也是可能的。因此,说明书中阐述的步骤的特定顺序不应被解释为对权利要求的限制。此外,针对该方法和/或过程的权利要求不应限于按照所写顺序执行它们的步骤,本领域技术人员可以容易地理解,这些顺序可以变化,并且仍然保持在本申请实施例的精神和范围内。
本发明实施例提供了一种数据发送方法,如图2所示,所述方法包括:
S201将具有物理属性的变量名转换为数值,所述数值体现所述物理属性;
本发明实施例要发送的数据由变量名和变量值组成,其中所述变量名以数值表示,使该数值具有物理属性,能够体现数据的物理含义;
S202将所述数值与该变量名对应的变量值封装为数据包后一起发送。
在一种示例性的实施例中,所述将具有物理属性的变量名转换为数值,包括:
根据哈希Hash算法将具有物理属性的变量名转换为哈希值,哈希值的长度为8n位,其中2≤n≤8,n为整数。如,可选择将具有物理属性的变量名转换为16位或32位或64位哈希值,如果哈希值大于64位可能会导致传输效率变低。
本申请实施例中的哈希算法不限于一个固定的公式,只要符合散列思想的算法都可以被称为是哈希算法。由于通过相同的哈希算法对同一个变量名转换后的哈希值是相同的,数据收发双发在约定好哈希算法后,可知晓变量名转换后的哈希值,后续数据接收方可以根据已知变量名的哈希值去网络数据包中查找携带相同哈希值的数据包,即可获取正确的数据。
在一种示例性的实施例中,所述根据哈希算法将具有物理属性的变量名转换为哈希值,包括:
确定与具有物理属性的变量名对应的变量值的数据类型,所述数据类型可以包括BOOL型数据、INT型数据、DINT型数据、REAL型数据;
使根据哈希算法计算得到的所述变量名的哈希值落入预设的与该数据类型对应的哈希值的数值区间。如哈希值选取16位长度,取值范围为0~65535,可设置BOOL型变量对应的哈希值为0~16383,INT型变量对应的哈希值为16384~32767,DINT型变量对应的哈希值为32768~49151,REAL型变量对应的哈希值为49152~65535,当使用哈希算法计算变量名的哈希值时,需要根据变量值的数据类型,使得计算得到的哈希值落入与所述数据类型对应的数值区间。假如对于一个BOOL型变量PT1111,首先对变量名PT1111进行第一次哈希运算得到哈希值32766;为了使该变量名对应的哈希值落入预设的与BOOL型变量对应的数值区间,可对所述哈希值32766进行第二次哈希运算得到16382,即落到了对应的数值区间。将哈希值按照数据类型不同分成不同的数值区间后,可方便接收端从接收的多个数据包中快速定位到所需的数据包,如接收端接收到多个类型数据的数据包,而接收端所需的数据类型是INT型数据,可根据INT型数据对应的哈希值数据区间先从多个数据包中找到携带位于所述区间范围内的哈希值的数据包,再从找到的数据包中寻找所需的数据,相对于从整个接收的数据包中寻找所需数据,寻找速度快。另外,通过将哈希值按照数据类型不同分成不同的数值区间还可实现变量类型检查功能,如引用站数据类型输入错误时,生成的哈希值所在的区间与期望的数据区间不一致,从而实现了变量类型检查功能。如在组态阶段,引用站想获得一个REAL型温度变量,该变量正确的值为137℃,如果在引用数据时输入了BOOL类型,可能得到0℃和1℃两种值,但是技术人员仅从接收的数据并不知晓因为输入的数据类型错误进而得到错误的数据,进而引起工业装置失控或者联锁,造成损失。本申请实施例中哈希值可以体现数据类型,引用站可以直接根据接收的数据值位于的区间判断接收数据的类型,进而实现对变量类型的检查。
本发明实施例采用了变量名哈希值+变量值的数据管理方法,并且哈希值生成时可以带有数据类型信息,相当于传送了变量名+变量类型+变量值三重化信息,紧凑的数据格式包含了多重信息。
在一种示例性的实施例中,所述将所述数值与该变量名对应的变量值封装为数据包后一起发送,包括:
将所述数值与该变量名对应的变量值封装为预设长度的数据包后一起发送,如图3所示,图3中VAL表示变量值,HASH表示变量名对应的数值。本申请实施例中的经转换后的变量名对应的数值可设定为固定长度,如前述当所述数值为哈希值时,哈希值的长度为8n位,其中2≤n≤8,n为整数,如可设定该哈希值为16位或32位或64位;此外,继续使用固定字节的长度传输变量值,如当传输的变量值最大为N字节时,可设置用N字节传输所有的变量值,如果传输的变量值不到N字节,可用0填充。如控制站的共享数据最大为4字节的REAL类型变量值,其他如BOOL、INT和DINT等类型的变量值也用4字节来传输,未用字节用0填充。将所述数值与该变量名对应的变量值封装为预设长度的数据包后一起发送实现了所有数据包长度完全一致,简化了后续对数据包的处理过程,减少了系统开销,提高了数据包处理速度。
本发明实施例可以直接通过变量名来找到变量值,与相关技术相比,省去了两层映射处理,避免了工程实施时出现的数据映射错位问题。
本发明实施例还提供了一种数据接收方法,如图4所示,包括:
S401接收数据包,每个数据包中包括变量值以及以数值表示的具有物理属性的变量名;
S402根据接收的数据包携带的变量名数值确定所需的变量名;
S403从数据包中读取确定的变量名对应的变量值。
在一种示例性的实施例中,所述变量名的数值为哈希值。哈希值的长度为8n位,其中2≤n≤8,n为整数,如可选择所述哈希值为16位或32位或64位,如果哈希值大于64位可能会导致传输效率变低。所述变量名的哈希值可根据哈希算法得到,由于通过相同的哈希算法对同一个变量名转换后的哈希值是相同的,数据接收方可以根据哈希值去网络数据包中查找携带相同哈希值的数据包,即可获取正确的数据。
在一种示例性的实施例中,所述根据接收的数据包携带的变量名数值确定所需的变量名,包括:
根据变量值的已知数据类型,以及预设的与该数据类型对应的哈希值的数值区间,确定携带位于所需数据区间的哈希值的数据包,根据确定的数据包携带的变量名对应的哈希值确定所需的变量名。如哈希值选取16位长度,取值范围为0~65535,可设置BOOL型变量对应的哈希值为0~16383,INT型变量对应的哈希值为16384~32767,DINT型变量对应的哈希值为32768~49151,REAL型变量对应的哈希值为49152~65535。将哈希值按照数据类型不同分成不同的数值区间后,可方便接收端从接收的多个数据包中快速定位到所需的数据包,如接收端接收到多个类型数据的数据包,而接收端所需的数据类型是INT型数据,可根据INT型数据对应的哈希值数据区间先从多个数据包中找到携带位于所述区间范围内的哈希值的数据包,再从找到的数据包中寻找所需的数据,相对于从整个接收的数据包中寻找所需数据,寻找速度快。另外,通过将哈希值按照数据类型不同分成不同的数值区间还可实现接收端对变量类型的检查功能。
本申请实施例还提供了一种数据发送系统,如图5所示,所述系统包括:
转换模块501,用于将具有物理属性的变量名转换为数值,所述数值体现所述物理属性;
本发明实施例要发送的数据由变量名和变量值组成,其中所述变量名以数值表示,使该数值具有物理属性,能够体现数据的物理含义;
发送模块502,用于将所述数值与该变量名对应的变量值封装为数据包后一起发送。
在一种示例性的实施例中,所述转换模块501,用于将具有物理属性的变量名转换为数值,包括:
根据哈希算法将具有物理属性的变量名转换为哈希值,哈希值的长度为8n位,其中2≤n≤8,n为整数,如可选择将具有物理属性的变量名转换为16位或32位或64位哈希值,如果哈希值大于64位可能会导致传输效率变低。本申请实施例中的哈希算法不限于一个固定的公式,只要符合散列思想的算法都可以被称为是哈希算法。由于通过相同的哈希算法对同一个变量名转换后的哈希值是相同的,数据收发双发在约定好哈希算法后,可知晓变量名转换后的哈希值,后续数据接收方可以根据已知变量名的哈希值去网络数据包中查找携带相同哈希值的数据包,即可获取正确的数据。
在一种示例性的实施例中,所述转换模块501,用于根据哈希算法将具有物理属性的变量名转换为哈希值,包括:
确定与具有物理属性的变量名对应的变量值的数据类型,所述数据类型可以包括BOOL型数据、INT型数据、DINT型数据、REAL型数据;
使根据哈希算法计算得到的所述变量名的哈希值落入预设的与该数据类型对应的哈希值的数值区间。如哈希值选取16位长度,取值范围为0~65535,可设置BOOL型变量对应的哈希值为0~16383,INT型变量对应的哈希值为16384~32767,DINT型变量对应的哈希值为32768~49151,REAL型变量对应的哈希值为49152~65535,当使用哈希算法计算变量名的哈希值时,需要根据变量值的数据类型,使得计算得到的哈希值落入与所述数据类型对应的数值区间。假如对于一个BOOL型变量PT1111,首先对变量名PT1111进行第一次哈希运算得到哈希值32766;为了使该变量名对应的哈希值落入预设的与BOOL型变量对应的数值区间,可对所述哈希值32766进行第二次哈希运算得到16382,即落到了对应的数值区间。将哈希值按照数据类型不同分成不同的数值区间后,可方便接收端从接收的多个数据包中快速定位到所需的数据包,如接收端接收到多个类型数据的数据包,而接收端所需的数据类型是INT型数据,可根据INT型数据对应的哈希值数据区间先从多个数据包中找到携带位于所述区间范围内的哈希值的数据包,再从找到的数据包中寻找所需的数据,相对于从整个接收的数据包中寻找所需数据,寻找速度快。另外,通过将哈希值按照数据类型不同分成不同的数值区间还可实现变量类型检查功能,如引用站数据类型输入错误时,生成的哈希值所在的区间与期望的数据区间不一致,从而实现了变量类型检查功能。如在组态阶段,引用站想获得一个REAL型温度变量,该变量正确的值为137℃,如果在引用数据时输入了BOOL类型,可能得到0℃和1℃两种值,但是技术人员仅从接收的数据并不知晓因为输入的数据类型错误进而得到错误的数据,进而引起工业装置失控或者联锁,造成损失。本申请实施例中哈希值可以体现数据类型,引用站可以直接根据接收的数据值位于的区间判断接收数据的类型,进而实现对变量类型的检查。
本发明实施例所述的系统采用了变量名哈希值+变量值的数据管理方法,并且哈希值生成时可以带有数据类型信息,相当于传送了变量名+变量类型+变量值三重化信息,紧凑的数据格式包含了多重信息。
在一种示例性的实施例中,发送模块502,用于将所述数值与该变量名对应的变量值封装为数据包后一起发送,包括:
将所述数值与该变量名对应的变量值封装为预设长度的数据包后一起发送,如图3所示,图3中VAL表示变量值,HASH表示变量名对应的数值。本申请实施例中的经转换后的变量名对应的数值可设定为固定长度,如前述当所述数值为哈希值时,哈希值的长度为8n位,其中2≤n≤8,n为整数,如可设定该哈希值为16位或32位或64位;此外,继续使用固定字节的长度传输变量值,如当传输的变量值最大为N字节时,可设置用N字节传输所有的变量值,如果传输的变量值不到N字节,可用0填充。如控制站的共享数据最大为4字节的REAL类型变量值,其他如BOOL、INT和DINT等类型的变量值也用4字节来传输,未用字节用0填充。将所述数值与该变量名对应的变量值封装为预设长度的数据包后一起发送实现了所有数据包长度完全一致,简化了后续对数据包的处理过程,减少了系统开销,提高了数据包处理速度。
本发明实施例可以直接通过变量名来找到变量值,与相关技术相比,省去了两层映射处理,避免了工程实施时出现的数据映射错位问题。
本发明实施例还提供了一种数据接收系统,如图6所示,所述系统包括:
接收模块601,用于接收数据包,每个数据包中包括变量值以及以数值表示的具有物理属性的变量名;
变量名确定模块602,用于根据接收的数据包携带的变量名数值确定所需的变量名;
变量值确定模块603,用于从数据包中读取确定的变量名对应的变量值。
在一种示例性的实施例中,所述变量名的数值为哈希值。哈希值的长度为8n位,其中2≤n≤8,n为整数,如可选择所述哈希值为16位或32位或64位,如果哈希值大于64位可能会导致传输效率变低。所述变量名的哈希值可根据哈希算法得到,由于通过相同的哈希算法对同一个变量名转换后的哈希值是相同的,数据接收方可以根据哈希值去网络数据包中查找携带相同哈希值的数据包,即可获取正确的数据。
在一种示例性的实施例中,所述变量名确定模块602,用于根据接收的数据包携带的变量名数值确定所需的变量名,包括:
根据变量值的已知数据类型,以及预设的与该数据类型对应的哈希值的数值区间,确定携带位于所需数据区间的哈希值的数据包,根据确定的数据包携带的变量名对应的哈希值确定所需的变量名。如哈希值选取16位长度,取值范围为0~65535,可设置BOOL型变量对应的哈希值为0~16383,INT型变量对应的哈希值为16384~32767,DINT型变量对应的哈希值为32768~49151,REAL型变量对应的哈希值为49152~65535。将哈希值按照数据类型不同分成不同的数值区间后,可方便接收端从接收的多个数据包中快速定位到所需的数据包,如接收端接收到多个类型数据的数据包,而接收端所需的数据类型是INT型数据,可根据INT型数据对应的哈希值数据区间先从多个数据包中找到携带位于所述区间范围内的哈希值的数据包,再从找到的数据包中寻找所需的数据,相对于从整个接收的数据包中寻找所需数据,寻找速度快。另外,通过将哈希值按照数据类型不同分成不同的数值区间还可实现接收端对变量类型的检查功能。
本发明实施例还提供了一种计算机可读存储介质,所述介质存储有计算机可执行指令,所述计算机可执行指令被处理器执行时实现如前实施例所述的数据发送方法的步骤。
本发明实施例还提供了一种数据发送终端,包括:
存储器,用于存储计算机可执行指令;
处理器,用于执行所述计算机可执行指令,以实现如前实施例所述的数据发送方法的步骤。
本发明实施例还提供了一种计算机可读存储介质,所述介质存储有计算机可执行指令,所述计算机可执行指令被处理器执行时实现如前实施例所述的数据接收方法的步骤。
本发明实施例还提供了一种数据接收终端,包括:
存储器,用于存储计算机可执行指令;
处理器,用于执行所述计算机可执行指令,以实现如前实施例所述的数据接收方法的步骤
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、装置中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些组件或所有组件可以被实施为由处理器,如数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。

Claims (19)

1.一种数据发送方法,其特征在于,包括:
将具有物理属性的变量名转换为数值,所述数值体现所述物理属性;
将所述数值与该变量名对应的变量值封装为数据包后一起发送。
2.根据权利要求1所述的数据发送方法,其特征在于,将具有物理属性的变量名转换为数值,包括:
根据哈希算法将具有物理属性的变量名转换为哈希值。
3.根据权利要求2所述的数据发送方法,其特征在于,
所述哈希值的长度为8n位,其中2≤n≤8,n为整数。
4.根据权利要求3所述的数据发送方法,其特征在于,所述根据哈希算法将具有物理属性的变量名转换为哈希值,包括:
确定与具有物理属性的变量名对应的变量值的数据类型;
使根据哈希算法计算得到的所述变量名的哈希值落入预设的与该数据类型对应的哈希值的数值区间。
5.根据权利要求1至4中任一项所述的数据发送方法,其特征在于,将所述数值与该变量名对应的变量值封装为数据包后一起发送,包括:
将所述数值与该变量名对应的变量值封装为预设长度的数据包后一起发送。
6.一种数据接收方法,其特征在于,包括:
接收数据包,每个数据包中包括变量值以及以数值表示的具有物理属性的变量名;
根据接收的数据包携带的变量名数值确定所需的变量名;
从数据包中读取确定的变量名对应的变量值。
7.根据权利要求6所述的数据接收方法,其特征在于,
所述变量名的数值为哈希值。
8.根据权利要求7所述的数据接收方法,其特征在于,根据接收的数据包携带的变量名数值确定所需的变量名,包括:
根据变量值的已知数据类型,以及预设的与该数据类型对应的哈希值的数值区间,确定携带位于所需数据区间的哈希值的数据包,根据确定的数据包携带的变量名对应的哈希值确定所需的变量名。
9.一种数据发送系统,其特征在于,包括:
转换模块,用于将具有物理属性的变量名转换为数值,所述数值体现所述物理属性;
发送模块,用于将所述数值与该变量名对应的变量值封装为数据包后一起发送。
10.根据权利要求9所述的数据发送系统,其特征在于,所述转换模块,用于将具有物理属性的变量名转换为数值,包括:
根据哈希算法将具有物理属性的变量名转换为哈希值。
11.根据权利要求10所述的数据发送系统,其特征在于,所述转换模块,用于根据哈希算法将具有物理属性的变量名转换为哈希值,包括:
确定与具有物理属性的变量名对应的变量值的数据类型;
使根据哈希算法计算得到的所述变量名的哈希值落入预设的与该数据类型对应的哈希值的数值区间。
12.根据权利要求9至11中任一项所述的数据发送系统,其特征在于,发送模块,用于将所述数值与该变量名对应的变量值封装为数据包后一起发送,包括:
将所述数值与该变量名对应的变量值封装为预设长度的数据包后一起发送。
13.一种数据接收系统,其特征在于,包括:
接收模块,用于接收数据包,每个数据包中包括变量值以及以数值表示的具有物理属性的变量名;
变量名确定模块,用于根据接收的数据包携带的变量名数值确定所需的变量名;
变量值确定模块,用于从数据包中读取确定的变量名对应的变量值。
14.根据权利要求13所述的数据接收系统,其特征在于,
所述变量名的数值为哈希值。
15.根据权利要求14所述的数据接收系统,其特征在于,所述变量名确定模块,用于根据接收的数据包携带的变量名数值确定所需的变量名,包括:
根据变量值的已知数据类型,以及预设的与该数据类型对应的哈希值的数值区间,确定携带位于所需数据区间的哈希值的数据包,根据确定的数据包携带的变量名对应的哈希值确定所需的变量名。
16.一种计算机可读存储介质,其特征在于,所述介质存储有计算机可执行指令,所述计算机可执行指令被处理器执行时实现如权利要求1至5中任一项所述的数据发送方法的步骤。
17.一种数据发送终端,其特征在于,包括:
存储器,用于存储计算机可执行指令;
处理器,用于执行所述计算机可执行指令,以实现如权利要求1至5中任一项所述的数据发送方法的步骤。
18.一种计算机可读存储介质,其特征在于,所述介质存储有计算机可执行指令,所述计算机可执行指令被处理器执行时实现如权利要求6至8中任一项所述的数据接收方法的步骤。
19.一种数据接收终端,其特征在于,包括:
存储器,用于存储计算机可执行指令;
处理器,用于执行所述计算机可执行指令,以实现如权利要求6至8中任一项所述的数据接收方法的步骤。
CN201910702195.7A 2019-07-31 2019-07-31 数据发送及接收方法,系统,存储介质及终端 Active CN110474894B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910702195.7A CN110474894B (zh) 2019-07-31 2019-07-31 数据发送及接收方法,系统,存储介质及终端

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910702195.7A CN110474894B (zh) 2019-07-31 2019-07-31 数据发送及接收方法,系统,存储介质及终端

Publications (2)

Publication Number Publication Date
CN110474894A true CN110474894A (zh) 2019-11-19
CN110474894B CN110474894B (zh) 2022-08-05

Family

ID=68509316

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910702195.7A Active CN110474894B (zh) 2019-07-31 2019-07-31 数据发送及接收方法,系统,存储介质及终端

Country Status (1)

Country Link
CN (1) CN110474894B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113852568A (zh) * 2021-09-24 2021-12-28 浙江中控技术股份有限公司 一种数据传输方法及安全仪表系统

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1973279A (zh) * 2004-06-22 2007-05-30 横河电机株式会社 交互式数据访问方法和交互式数据访问系统
CN103116661A (zh) * 2013-03-20 2013-05-22 广东宜通世纪科技股份有限公司 一种数据库的数据处理方法
CN104317717A (zh) * 2014-10-31 2015-01-28 北京航空航天大学 一种基于量纲转换的嵌入式软件测试方法
US20160020915A1 (en) * 2014-07-21 2016-01-21 Allied Telesis Holdings Kabushiki Kaisha Robust internet group management protocol (igmp) and multicast listener discovery (mld)
CN107862074A (zh) * 2017-11-24 2018-03-30 中国航空工业集团公司西安航空计算技术研究所 大数据量参数快速读写方法
CN108496155A (zh) * 2017-06-15 2018-09-04 深圳市大疆创新科技有限公司 参数处理方法、设备、机器可读存储介质以及系统
CN108881397A (zh) * 2018-05-25 2018-11-23 沈阳东软医疗系统有限公司 医疗设备处理信息的方法、装置、设备及存储介质
CN109977077A (zh) * 2019-03-25 2019-07-05 腾讯科技(深圳)有限公司 模型文件存储方法、装置、可读存储介质和计算机设备

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1973279A (zh) * 2004-06-22 2007-05-30 横河电机株式会社 交互式数据访问方法和交互式数据访问系统
CN103116661A (zh) * 2013-03-20 2013-05-22 广东宜通世纪科技股份有限公司 一种数据库的数据处理方法
US20160020915A1 (en) * 2014-07-21 2016-01-21 Allied Telesis Holdings Kabushiki Kaisha Robust internet group management protocol (igmp) and multicast listener discovery (mld)
CN104317717A (zh) * 2014-10-31 2015-01-28 北京航空航天大学 一种基于量纲转换的嵌入式软件测试方法
CN108496155A (zh) * 2017-06-15 2018-09-04 深圳市大疆创新科技有限公司 参数处理方法、设备、机器可读存储介质以及系统
CN107862074A (zh) * 2017-11-24 2018-03-30 中国航空工业集团公司西安航空计算技术研究所 大数据量参数快速读写方法
CN108881397A (zh) * 2018-05-25 2018-11-23 沈阳东软医疗系统有限公司 医疗设备处理信息的方法、装置、设备及存储介质
CN109977077A (zh) * 2019-03-25 2019-07-05 腾讯科技(深圳)有限公司 模型文件存储方法、装置、可读存储介质和计算机设备

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113852568A (zh) * 2021-09-24 2021-12-28 浙江中控技术股份有限公司 一种数据传输方法及安全仪表系统

Also Published As

Publication number Publication date
CN110474894B (zh) 2022-08-05

Similar Documents

Publication Publication Date Title
CN107219997A (zh) 一种用于验证数据一致性的方法及装置
CN103944813A (zh) 一种实现通用适配功能的网关及方法
CN111835842A (zh) 网关资源的更新方法、装置及物联网控制平台
EP4195598A1 (en) In-vehicle signal transmission method and system
CN109799948A (zh) 一种数据存储方法及装置
CN107659380A (zh) 消息发送、消息读取方法、设备及系统
CN110995639A (zh) 数据传输方法
CN107623728A (zh) 基于产品接口控制文件的fc‑ae‑asm数据通用解析方法
CN110474894A (zh) 数据发送及接收方法,系统,存储介质及终端
US11310353B2 (en) Data transmission method for creating data structure facilitating data transmission and reception
US8605602B2 (en) Field communication system
WO2021147319A1 (zh) 一种数据处理方法、装置、设备及介质
US8554966B2 (en) Method for data exchange
CN113162861A (zh) 一种基于模型训练的通信方法、装置及系统
CN116033585A (zh) 数据传输方法、装置、通信设备及存储介质
CN113742101B (zh) 数据互通方法、装置、设备及可读存储介质
CN108667805A (zh) 数据的解析方法及其装置和计算机可读存储介质
CN111915931A (zh) 基于默克尔树的批量飞行计划纠错方法、装置及系统
CN111552715A (zh) 用户查询方法和装置
CN114201499B (zh) 一种数据上传方法、装置及计算机设备
CN110708351A (zh) 数据传输方法
CN114546922B (zh) 用于风电场的串口通信方法及装置
CN110072255A (zh) 用于以有效带宽利用率传输信号的方法和系统
CN114422970B (zh) 短信溯源方法、装置及设备
CN111435939B (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
TA01 Transfer of patent application right

Effective date of registration: 20211201

Address after: Room 1613, 6 / F, building 1, yard 2, Desheng Middle Road, Beijing Economic and Technological Development Zone, Daxing District, Beijing 100176

Applicant after: Beijing Helishi Control Technology Co.,Ltd.

Address before: 100176 No.2, Disheng Middle Road, Yizhuang Economic and Technological Development Zone, Daxing District, Beijing

Applicant before: BEIJING HOLLYSYS Co.,Ltd.

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant