CN107147613A - 一种制造物联实时数据传输方法 - Google Patents

一种制造物联实时数据传输方法 Download PDF

Info

Publication number
CN107147613A
CN107147613A CN201710148985.6A CN201710148985A CN107147613A CN 107147613 A CN107147613 A CN 107147613A CN 201710148985 A CN201710148985 A CN 201710148985A CN 107147613 A CN107147613 A CN 107147613A
Authority
CN
China
Prior art keywords
data
bag
sent
request
bytes
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
CN201710148985.6A
Other languages
English (en)
Other versions
CN107147613B (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.)
Zhejiang University of Technology ZJUT
Original Assignee
Zhejiang University of Technology ZJUT
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 Zhejiang University of Technology ZJUT filed Critical Zhejiang University of Technology ZJUT
Priority to CN201710148985.6A priority Critical patent/CN107147613B/zh
Publication of CN107147613A publication Critical patent/CN107147613A/zh
Application granted granted Critical
Publication of CN107147613B publication Critical patent/CN107147613B/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/06Notations for structuring of protocol data, e.g. abstract syntax notation one [ASN.1]
    • 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/22Parsing or analysis of headers
    • 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/26Special purpose or proprietary protocols or architectures

Landscapes

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

Abstract

一种制造物联实时数据传输方法,包括以下步骤:首先,将制造物联实时数据传输方法参数初始化;然后,根据数据包格式封装数据;其次,开启数据发送过程;再次,开启数据接收过程;最后,数据发送和数据接受交换数据。应用本发明的制造物联实时数据传输方法,不仅提高了数据传输的效率,而且保证了数据传输的准确性。

Description

一种制造物联实时数据传输方法
技术领域
本发明涉及控制科学、计算机科学、系统科学、电气工程、数据采集、工业物联网等应用领域,尤其涉及的是一种制造物联实时数据传输方法。
背景技术
传统制造业通常将业务管理信息化与生产设备的自动化视为两个独立的领域,不同的企业部门创建满足自身的一系列单一功能的信息系统,各部门的信息系统之间很难实现信息的同步与交换,从而造成信息孤岛和信息断层等信息阻断问题。受市场全球化的影响,各企业为了在日益激烈的市场竞争中占据优势,基于不同的业务需求采用适合自己的生产管理模式和先进信息技术,出现了工艺管理、仓储管理、设备管理维护、过程管理、生产管理等彼此独立的系统。这些系统之间相互独立、缺乏数据共享,从而导致功能重叠、数据矛盾等一系列信息孤岛问题,严重制约了制造业各系统之间的水平方向的协调发展。面对客户交货日期的苛刻要求、订单的不断调整、更多产品的改型,上层计划管理系统(ERP等)计划的制定和执行受市场和实际作业的影响越来越严重,适应性问题越来越突出。企业业务管理系统无法准确及时掌握生产现场的实际情况,上层计划制定的准确性和可行性难以得到保证。同时,现场人员和设备不能及时得到切实可行的生产计划和生产指示,一方面造成产品积压,库存量过多,资金占用过多,另一发面造成设备空闲,资源浪费,车间调度系统失去相应的调度作用。信息断层造成制造业各系统垂直方向的阻断,严重影响制造业上层计划管理系统和现场执行系统之间的集成。信息孤岛和信息断层严重阻碍了制造业的信息化发展,降低了制造业的整体水平,阻碍了制造业信息化的发展。
传统的实时数据传输的方法都是通过人工先从生产设备上读取数据,然后记录数据,再后将数值输入到电脑做数据统计分析。每个步骤都会花费时间,并且很有可能会产生误差,同时实时性很差,对工业生产现场的实时监控没有任何意义。如何将现场的执行系统和上层的管理分析系统有效的结合起来是目前制造业一个难题。如何将现场执行系统的数据传输到上层管理分析系统是其中的关键。
因此,目前的产品工序追踪技术存在着很多缺陷,需要我们改进。
发明内容
为了克服已有方法不能实时的将现场生产数据和上层管理分析系统关联起来的不足,本发明提供一种在保证数据传输真实可靠、数据实时性高的同时,能将生产现场和上层管理分析系统紧密结合起来的制造物联实时数据传输方法。
本发明解决其技术问题所采用的技术方案是:
一种制造物联实时数据传输方法,所述实时数据传输方法包括以下步骤:
1)参数初始化:
1.1)设置紧急数据包编号Anum=0,紧急数据包总数Acount=0;
1.2)设置超时计数count=0,最大允许超时次数SUM;
1.3)设置数据块编号dataBlock=0,数据优先级priority=0;
2)封装传输数据包:
2.1)封装数据请求包;
2.2)封装普通数据包;
2.3)封装数据块结束包;
2.4)封装数据结束包;
2.5)定义响应包;
3)数据发送过程;
4)数据接收过程。
进一步,所述步骤2.1)中,数据请求包的包格式如下:
2 3 2 4 1 1
ENQ Type Group Size NameLength Name 校验
其中,ENQ表示请求包的包标识,占用2个字节,值为0x05;Type表示请求包请求的数据包类型,占用2个字节,取值为0x00到0xFF区间的十六进制数,表示不同组别的数据;Group表示请求包的数据组成,占用2个字节,值为0x01到0x0F区间的十六进制数,表示同一种组别的不同类型的数据;Size表示传送文件的长度,占用4字节。NameLength表示数据名的长度,占用1字节;Name表示传送数据的名称,占用长度有文件名长度字节内容决定;校验占用1个字节,是从ENQ开始到校验前所有字节的异或运算和。
再进一步,所述步骤2.2)中,数据普通数据包的包格式如下:
2 2 1
STX DataType Priority Data 校验
其中,STX是普通数据包的包标识,占用2个字节,值为0x02;Type表示请求包的类型,占用2个字节,取值分别为0x01、0x02、0x04、0x08,其中0x01表示周期采样数据普通数据包,0x02表示事件触发信号普通数据包,0x04表示管理信息数据普通数据包,0x08表示其他类型普通数据包;Priority用于标识当前数据包在整个传输过程中的优先级,占用1字节;Data为传输的具体内容,占用1024个字节;校验占用1个字节,是从STX开始到校验前所有字节的异或运算和。
更进一步,所述步骤2.3)中,数据块结束包的包格式如下:
2 2 1
ETB Type Length Data 校验
其中,ETB是数据块结束包的包标识,占用1个字节,值为3;Type表示请求包的类型,占用2个字节,取值分别为0x01、0x02、0x04、0x08,其中0x01表示周期采样数据普通数据包,0x02表示事件触发信号普通数据包,0x04表示管理信息数据普通数据包,0x08表示其他类型普通数据包;Length表示数据包传送数据的长度,占用2个字节;Data表示传送的具体数据内容,长度由数据长度的值决定;校验占用1个字节,是从ETB开始到校验前所有字节的异或运算和。
进一步,所述步骤2.4)中,数据结束包的包格式如下:
2 2 1
ETX Quality Remark 校验
ETX是数据结束包包标识,占用2个字节,值为3;Quality表示整条数据的数据包传输品质,占用2个字节,取值分别为0x00、0x01、0x02,其中0x00表示数据包全部传输失败,0x01表示传输了部分数据包,0x02表示数据包全部传输成功;Remark表示整条数据的备注,长度不固定;校验占用1个字节,是从ETX开始到校验前所有字节的异或运算和。
进一步,所述步骤2.4)中,响应包的包格式如下:
再进一步,所述步骤3)中,数据发送方法如下:
3.1)阻塞等待有客户端连入,如果有客户端连入,与客户端创建数据交互通道,进入步骤3.2);
3.2)向客户端发送SOH响应,并开启监视事件;
3.3)判断是否有紧急数据向客户端发送,如果没有紧急数据,则进入步骤3.3),否则跳入步骤3.10);
3.4)监视客户端是否接收到新字符,如果有新字符,进入步骤3.5),否则进入步骤3.15);
3.5)解析接收到字符的包标识,如果是ENQ,进入步骤3.6);如果是NAK,跳入步骤3.7);如果是ACK,跳入步骤3.8);如果是EOT,跳入步骤3.9);
3.6)收到请求包,解析请求包,根据请求包封装数据,并向客户端发送ACK响应;
3.7)收到初次请求数据或者客户端要求数据重发,进入步骤3.17);
3.8)客户端成功收到数据,优先级priority=priority+1,跳入步骤3.17);
3.9)客户端发起关闭请求,传输完毕,关闭数据传输通道;
3.10)判断报警序号Anum是否为0,如果Anum等于0,则进入步骤3.11),否则跳入步骤3.12);
3.11)获取数据包包数Acount,判断Acount是否等于1,如果Acount等于1,则跳入步骤3.13),否则跳入步骤3.14);
3.12)判断Anum是否等于Acount,如果相等则进入步骤3.13),否则跳入步骤3.14);
3.13)发送数据块结束包,发送数据结束包,跳入步骤3.3);
3.14)发送紧急数据的普通数据包;
3.15)判断等待是否超时,如果没有超时,则跳入3.3),否则进入步骤3.10);
3.16)超时计数器count=count+1,判断超时计数是否达到允许超时总数SUM,如果count<SUM,向服务器发送NAK响应,请求重新发送指令或者数据,否则传输出错,关闭数据通道;
3.17)判断数据是否发送完毕,如果data不为空,进入步骤3.18),否则表示数据发送完毕,跳入步骤3.22);
3.18)判断数据块数据datadataBlock是否为最后一包数据,如果datadataBlock为最后一包数据,进入步骤3.19),否则跳入步骤3.20);
3.19)客户端发送数据块结束包,数据块序号dataBlock=dataBlock+1,优先级priority=0;
3.20)发送数据块datadataBlock中优先级为priority的数据并进入步骤3.21);
3.21)判断超时计数器count是否大于0,如果count>0,将count置为0;
3.22)向客户端发送数据结束包,将数据块序号dataBlock置为0,优先级priority置为0。
更进一步,所述步骤4)中,数据发送方法如下:
4.1)与服务器创建连接,创建数据交互通道,开启监视事件;
4.2)监视客户端指令或数据接收情况;
4.3)判断是否有指令发送给服务器,如果有指令发送给服务器,向服务器发送指令包,否则进入4.4);
4.4)判断是否接收到新字符,如果接收到新字符进入4.5),否则跳入4.11);
4.5)解析接收到字符的包标识,如果是SOH,进入步骤4.6);如果是ACK,跳入步骤4.7);如果是STX,跳入步骤4.8);如果是ETB,跳入步骤4.9);如果是EOT,跳入步骤4.10);
4.6)向服务器发送数据请求包;
4.7)接收到数据,向服务器发送NAK响应包;
4.8)接收到普通数据包,跳入4.13);
4.9)接收到数据块结束包,跳入4.13);
4.10)接收到数据结束包,向服务器发送数据请求包;
4.11)判断等待是否超时,如果没有超时,则跳入4.1),否则进入步骤4.12);
4.12)超时计数器count=count+1,判断超时计数是否达到允许超时总数SUM,如果count<SUM,向服务器发送NAK响应,请求重新发送指令或者数据,否则传输出错,关闭数据通道;
4.13)校验数据包是否正确,如果数据正确,发送ACK响应包,否则发送NAK响应,向服务请求重新发送数据包。
本发明的技术构思为:首先,将制造物联实时数据传输方法参数初始化;然后,根据数据包格式封装数据;其次,开启数据发送过程;再次,开启数据接收过程;最后,数据发送和数据接受交换数据。应用制造物联实时数据传输方法,不仅提高了数据传输的效率,而且保证了数据传输的准确性。
本发明的有益效果为:在保证数据传输准确性的基础上,提高数据传输效率。
附图说明
图1是模块化柔性制造综合实训系统示意图。
图2是制造物联实时数据传输方法发送过程示意图。
图3是制造物联实时数据传输方法接收过程示意图。
具体实施方式
下面结合附图对本发明作进一步描述。
参照图1~图3,一种制造物联实时数据传输方法,所述实时数据传输方法包括以下步骤:
1)参数初始化:
1.1)设置紧急数据包编号Anum=0,紧急数据包总数Acount=0;
1.2)设置超时计数count=0,最大允许超时次数SUM;
1.3)设置数据块编号dataBlock=0,数据优先级priority=0;
2)封装传输数据包:
2.1)封装数据请求包;
2.2)封装普通数据包;
2.3)封装数据块结束包;
2.4)封装数据结束包;
2.5)定义响应包;
3)数据发送过程;
4)数据接收过程。
进一步,所述步骤2.1)中,数据请求包的包格式如下:
2 3 2 4 1 1
ENQ Type Group Size NameLength Name 校验
其中,ENQ表示请求包的包标识,占用2个字节,值为0x05;Type表示请求包请求的数据包类型,占用2个字节,取值为0x00到0xFF区间的十六进制数,表示不同组别的数据;Group表示请求包的数据组成,占用2个字节,值为0x01到0x0F区间的十六进制数,表示同一种组别的不同类型的数据;Size表示传送文件的长度,占用4字节。NameLength表示数据名的长度,占用1字节;Name表示传送数据的名称,占用长度有文件名长度字节内容决定;校验占用1个字节,是从ENQ开始到校验前所有字节的异或运算和。
进一步,所述步骤2.2)中,数据普通数据包的包格式如下:
2 2 1
STX DataType Priority Data 校验
其中,STX是普通数据包的包标识,占用2个字节,值为0x02;Type表示请求包的类型,占用2个字节,取值分别为0x01、0x02、0x04、0x08,其中0x01表示周期采样数据普通数据包,0x02表示事件触发信号普通数据包,0x04表示管理信息数据普通数据包,0x08表示其他类型普通数据包;Priority用于标识当前数据包在整个传输过程中的优先级,占用1字节;Data为传输的具体内容,占用1024个字节;校验占用1个字节,是从STX开始到校验前所有字节的异或运算和。
进一步,所述步骤2.3)中,数据块结束包的包格式如下:
2 2 1
ETB Type Length Data 校验
其中,ETB是数据块结束包的包标识,占用1个字节,值为3;Type表示请求包的类型,占用2个字节,取值分别为0x01、0x02、0x04、0x08,其中0x01表示周期采样数据普通数据包,0x02表示事件触发信号普通数据包,0x04表示管理信息数据普通数据包,0x08表示其他类型普通数据包;Length表示数据包传送数据的长度,占用2个字节;Data表示传送的具体数据内容,长度由数据长度的值决定;校验占用1个字节,是从ETB开始到校验前所有字节的异或运算和。
进一步,所述步骤2.4)中,数据结束包的包格式如下:
ETX是数据结束包包标识,占用2个字节,值为3;Quality表示整条数据的数据包传输品质,占用2个字节,取值分别为0x00、0x01、0x02,其中0x00表示数据包全部传输失败,0x01表示传输了部分数据包,0x02表示数据包全部传输成功;Remark表示整条数据的备注,长度不固定;校验占用1个字节,是从ETX开始到校验前所有字节的异或运算和。
进一步,所述步骤2.4)中,响应包的包格式如下:
名称 取值 含义
ACK 0x06 接收方收到的数据正确
NAK 0x15 接收方收到的数据有误,请求重发
CAN 0x18 接收方取消发送方的发送请求
SOH 0x01 发送方向接收方请求数据请求包
EOT 0x04 数据传输完毕,关闭传输通道
再进一步,所述步骤3)中,数据发送方法如下:
3.1)阻塞等待有客户端连入,如果有客户端连入,与客户端创建数据交互通道,进入步骤3.2);
3.2)向客户端发送SOH响应,并开启监视事件;
3.3)判断是否有紧急数据向客户端发送,如果没有紧急数据,则进入步骤3.3),否则跳入步骤3.10);
3.4)监视客户端是否接收到新字符,如果有新字符,进入步骤3.5),否则进入步骤3.15);
3.5)解析接收到字符的包标识,如果是ENQ,进入步骤3.6);如果是NAK,跳入步骤3.7);如果是ACK,跳入步骤3.8);如果是EOT,跳入步骤3.9);
3.6)收到请求包,解析请求包,根据请求包封装数据,并向客户端发送ACK响应;
3.7)收到初次请求数据或者客户端要求数据重发,进入步骤3.17);
3.8)客户端成功收到数据,优先级priority=priority+1,跳入步骤3.17);
3.9)客户端发起关闭请求,传输完毕,关闭数据传输通道;
3.10)判断报警序号Anum是否为0,如果Anum等于0,则进入步骤3.11),否则跳入步骤3.12);
3.11)获取数据包包数Acount,判断Acount是否等于1,如果Acount等于1,则跳入步骤3.13),否则跳入步骤3.14);
3.12)判断Anum是否等于Acount,如果相等则进入步骤3.13),否则跳入步骤3.14);
3.13)发送数据块结束包,发送数据结束包,跳入步骤3.3);
3.14)发送紧急数据的普通数据包;
3.15)判断等待是否超时,如果没有超时,则跳入3.3),否则进入步骤3.10);
3.16)超时计数器count=count+1,判断超时计数是否达到允许超时总数SUM,如果count<SUM,向服务器发送NAK响应,请求重新发送指令或者数据,否则传输出错,关闭数据通道;
3.17)判断数据是否发送完毕,如果data不为空,进入步骤3.18),否则表示数据发送完毕,跳入步骤3.22);
3.18)判断数据块数据datadataBlock是否为最后一包数据,如果datadataBlock为最后一包数据,进入步骤3.19),否则跳入步骤3.20);
3.19)客户端发送数据块结束包,数据块序号dataBlock=dataBlock+1,优先级priority=0;
3.20)发送数据块datadataBlock中优先级为priority的数据并进入步骤3.21);
3.21)判断超时计数器count是否大于0,如果count>0,将count置为0;
3.22)向客户端发送数据结束包,将数据块序号dataBlock置为0,优先级priority置为0;
更进一步,所述步骤4)中,数据发送方法如下:
4.1)与服务器创建连接,创建数据交互通道,开启监视事件;
4.2)监视客户端指令或数据接收情况;
4.3)判断是否有指令发送给服务器,如果有指令发送给服务器,向服务器发送指令包,否则进入4.4);
4.4)判断是否接收到新字符,如果接收到新字符进入4.5),否则跳入4.11);
4.5)解析接收到字符的包标识,如果是SOH,进入步骤4.6);如果是ACK,跳入步骤4.7);如果是STX,跳入步骤4.8);如果是ETB,跳入步骤4.9);如果是EOT,跳入步骤4.10);
4.6)向服务器发送数据请求包;
4.7)接收到数据,向服务器发送NAK响应包;
4.8)接收到普通数据包,跳入4.13);
4.9)接收到数据块结束包,跳入4.13);
4.10)接收到数据结束包,向服务器发送数据请求包;
4.11)判断等待是否超时,如果没有超时,则跳入4.1),否则进入步骤4.12);
4.12)超时计数器count=count+1,判断超时计数是否达到允许超时总数SUM,如果count<SUM,向服务器发送NAK响应,请求重新发送指令或者数据,否则传输出错,关闭数据通道;
4.13)校验数据包是否正确,如果数据正确,发送ACK响应包,否则发送NAK响应,向服务请求重新发送数据包;
本实施例以模块化柔性制造综合实训系统为实施例,一种制造物联实时数据传输方法,其中包含以下步骤:
1)参数初始化:
1.1)设置紧急数据包编号Anum=0,紧急数据包总数Acount=0;
1.2)设置超时计数count=0,最大允许超时次数SUM;
1.3)设置数据块编号dataBlock=0,数据优先级priority=0;
2)封装传输数据包:
2.1)封装数据请求包;
2.2)封装普通数据包;
2.3)封装数据块结束包;
2.4)封装数据结束包;
2.5)定义响应包;
3)数据发送过程;
4)数据接收过程。
进一步,所述步骤2.1)中,数据请求包的包格式如下:
2 3 2 4 1 1
ENQ Type Group Size NameLength Name 校验
其中,ENQ表示请求包的包标识,占用2个字节,值为0x05;Type表示请求包请求的数据包类型,占用2个字节,取值为0x00到0xFF区间的十六进制数,表示不同组别的数据;Group表示请求包的数据组成,占用2个字节,值为0x01到0x0F区间的十六进制数,表示同一种组别的不同类型的数据;Size表示传送文件的长度,占用4字节。NameLength表示数据名的长度,占用1字节;Name表示传送数据的名称,占用长度有文件名长度字节内容决定;校验占用1个字节,是从ENQ开始到校验前所有字节的异或运算和。
进一步,所述步骤2.2)中,数据普通数据包的包格式如下:
2 2 1
STX DataType Priority Data 校验
其中,STX是普通数据包的包标识,占用2个字节,值为0x02;Type表示请求包的类型,占用2个字节,取值分别为0x01、0x02、0x04、0x08,其中0x01表示周期采样数据普通数据包,0x02表示事件触发信号普通数据包,0x04表示管理信息数据普通数据包,0x08表示其他类型普通数据包;Priority用于标识当前数据包在整个传输过程中的优先级,占用1字节;Data为传输的具体内容,占用1024个字节;校验占用1个字节,是从STX开始到校验前所有字节的异或运算和。
进一步,所述步骤2.3)中,数据块结束包的包格式如下:
2 2 1
ETB Type Length Data 校验
其中,ETB是数据块结束包的包标识,占用1个字节,值为3;Type表示请求包的类型,占用2个字节,取值分别为0x01、0x02、0x04、0x08,其中0x01表示周期采样数据普通数据包,0x02表示事件触发信号普通数据包,0x04表示管理信息数据普通数据包,0x08表示其他类型普通数据包;Length表示数据包传送数据的长度,占用2个字节;Data表示传送的具体数据内容,长度由数据长度的值决定;校验占用1个字节,是从ETB开始到校验前所有字节的异或运算和。
进一步,所述步骤2.4)中,数据结束包的包格式如下:
2 2 1
ETX Quality Remark 校验
ETX是数据结束包包标识,占用2个字节,值为3;Quality表示整条数据的数据包传输品质,占用2个字节,取值分别为0x00、0x01、0x02,其中0x00表示数据包全部传输失败,0x01表示传输了部分数据包,0x02表示数据包全部传输成功;Remark表示整条数据的备注,长度不固定;校验占用1个字节,是从ETX开始到校验前所有字节的异或运算和。
进一步,所述步骤2.4)中,响应包的包格式如下:
名称 取值 含义
ACK 0x06 接收方收到的数据正确
NAK 0x15 接收方收到的数据有误,请求重发
CAN 0x18 接收方取消发送方的发送请求
SOH 0x01 发送方向接收方请求数据请求包
EOT 0x04 数据传输完毕,关闭传输通道
再进一步,所述步骤3)中,数据发送方法如下:
3.1)阻塞等待有客户端连入,如果有客户端连入,与客户端创建数据交互通道,进入步骤3.2);
3.2)向客户端发送SOH响应,并开启监视事件;
3.3)判断是否有紧急数据向客户端发送,如果没有紧急数据,则进入步骤3.3),否则跳入步骤3.10);
3.4)监视客户端是否接收到新字符,如果有新字符,进入步骤3.5),否则进入步骤3.15);
3.5)解析接收到字符的包标识,如果是ENQ,进入步骤3.6);如果是NAK,跳入步骤3.7);如果是ACK,跳入步骤3.8);如果是EOT,跳入步骤3.9);
3.6)收到请求包,解析请求包,根据请求包封装数据,并向客户端发送ACK响应;
3.7)收到初次请求数据或者客户端要求数据重发,进入步骤3.17);
3.8)客户端成功收到数据,优先级priority=priority+1,跳入步骤3.17);
3.9)客户端发起关闭请求,传输完毕,关闭数据传输通道;
3.10)判断报警序号Anum是否为0,如果Anum等于0,则进入步骤3.11),否则跳入步骤3.12);
3.11)获取数据包包数Acount,判断Acount是否等于1,如果Acount等于1,则跳入步骤3.13),否则跳入步骤3.14);
3.12)判断Anum是否等于Acount,如果相等则进入步骤3.13),否则跳入步骤3.14);
3.13)发送数据块结束包,发送数据结束包,跳入步骤3.3);
3.14)发送紧急数据的普通数据包;
3.15)判断等待是否超时,如果没有超时,则跳入3.3),否则进入步骤3.10);
3.16)超时计数器count=count+1,判断超时计数是否达到允许超时总数SUM,如果count<SUM,向服务器发送NAK响应,请求重新发送指令或者数据,否则传输出错,关闭数据通道;
3.17)判断数据是否发送完毕,如果data不为空,进入步骤3.18),否则表示数据发送完毕,跳入步骤3.22);
3.18)判断数据块数据datadataBlock是否为最后一包数据,如果datadataBlock为最后一包数据,进入步骤3.19),否则跳入步骤3.20);
3.19)客户端发送数据块结束包,数据块序号dataBlock=dataBlock+1,优先级priority=0;
3.20)发送数据块datadataBlock中优先级为priority的数据并进入步骤3.21);
3.21)判断超时计数器count是否大于0,如果count>0,将count置为0;
3.22)向客户端发送数据结束包,将数据块序号dataBlock置为0,优先级priority置为0。
更进一步,所述步骤4)中,数据发送方法如下:
4.1)与服务器创建连接,创建数据交互通道,开启监视事件;
4.2)监视客户端指令或数据接收情况;
4.3)判断是否有指令发送给服务器,如果有指令发送给服务器,向服务器发送指令包,否则进入4.4);
4.4)判断是否接收到新字符,如果接收到新字符进入4.5),否则跳入4.11);
4.5)解析接收到字符的包标识,如果是SOH,进入步骤4.6);如果是ACK,跳入步骤4.7);如果是STX,跳入步骤4.8);如果是ETB,跳入步骤4.9);如果是EOT,跳入步骤4.10);
4.6)向服务器发送数据请求包;
4.7)接收到数据,向服务器发送NAK响应包;
4.8)接收到普通数据包,跳入4.13);
4.9)接收到数据块结束包,跳入4.13);
4.10)接收到数据结束包,向服务器发送数据请求包;
4.11)判断等待是否超时,如果没有超时,则跳入4.1),否则进入步骤4.12);
4.12)超时计数器count=count+1,判断超时计数是否达到允许超时总数SUM,如果count<SUM,向服务器发送NAK响应,请求重新发送指令或者数据,否则传输出错,关闭数据通道;
4.13)校验数据包是否正确,如果数据正确,发送ACK响应包,否则发送NAK响应,向服务请求重新发送数据包。
以上阐述的是本发明给出的一个实施例表现出来的优良效果,显然本发明不仅适合上述实施例,在不偏离本发明基本精神及不超出本发明实质内容所涉及内容的前提下可对其做种种变化加以实施。

Claims (8)

1.一种制造物联实时数据传输方法,其特征在于:所述制造物联实时数据传输方法包括以下步骤:
1)参数初始化:
1.1)设置紧急数据包编号Anum=0,紧急数据包总数Acount=0;
1.2)设置超时计数count=0,最大允许超时次数SUM;
1.3)设置数据块编号dataBlock=0,数据优先级priority=0;
2)封装传输数据包:
2.1)封装数据请求包;
2.2)封装普通数据包;
2.3)封装数据块结束包;
2.4)封装数据结束包;
2.5)定义响应包;
3)数据发送过程;
4)数据接收过程。
2.如权利要求1所述一种制造物联实时数据传输方法,其特征在于:所述步骤2.1)中,数据请求包的包格式如下:
2 3 2 4 1 1 ENQ Type Group Size NameLength Name 校验
其中,ENQ表示请求包的包标识,占用2个字节,值为0x05;Type表示请求包请求的数据包类型,占用2个字节,取值为0x00到0xFF区间的十六进制数,表示不同组别的数据;Group表示请求包的数据组成,占用2个字节,值为0x01到0x0F区间的十六进制数,表示同一种组别的不同类型的数据;Size表示传送文件的长度,占用4字节。NameLength表示数据名的长度,占用1字节;Name表示传送数据的名称,占用长度有文件名长度字节内容决定;校验占用1个字节,是从ENQ开始到校验前所有字节的异或运算和。
3.如权利要求1或2所述一种制造物联实时数据传输方法,其特征在于:所述步骤2.2)中,数据普通数据包的包格式如下:
2 2 1 STX DataType Priority Data 校验
其中,STX是普通数据包的包标识,占用2个字节,值为0x02;Type表示请求包的类型,占用2个字节,取值分别为0x01、0x02、0x04、0x08,其中0x01表示周期采样数据普通数据包,0x02表示事件触发信号普通数据包,0x04表示管理信息数据普通数据包,0x08表示其他类型普通数据包;Priority用于标识当前数据包在整个传输过程中的优先级,占用1字节;Data为传输的具体内容,占用1024个字节;校验占用1个字节,是从STX开始到校验前所有字节的异或运算和。
4.如权利要求1或2所述一种制造物联实时数据传输方法,其特征在于:所述步骤2.3)中,数据块结束包的包格式如下:
2 2 1 ETB Type Length Data 校验
其中,ETB是数据块结束包的包标识,占用1个字节,值为3;Type表示请求包的类型,占用2个字节,取值分别为0x01、0x02、0x04、0x08,其中0x01表示周期采样数据普通数据包,0x02表示事件触发信号普通数据包,0x04表示管理信息数据普通数据包,0x08表示其他类型普通数据包;Length表示数据包传送数据的长度,占用2个字节;Data表示传送的具体数据内容,长度由数据长度的值决定;校验占用1个字节,是从ETB开始到校验前所有字节的异或运算和。
5.如权利要求1或2所述一种制造物联实时数据传输方法,其特征在于:所述步骤2.4)中,数据结束包的包格式如下:
2 2 1 ETX Quality Remark 校验
ETX是数据结束包包标识,占用2个字节,值为3;Quality表示整条数据的数据包传输品质,占用2个字节,取值分别为0x00、0x01、0x02,其中0x00表示数据包全部传输失败,0x01表示传输了部分数据包,0x02表示数据包全部传输成功;Remark表示整条数据的备注,长度不固定;校验占用1个字节,是从ETX开始到校验前所有字节的异或运算和。
6.如权利要求1或2所述一种制造物联实时数据传输方法,其特征在于:所述步骤2.4)中,响应包的包格式如下:
7.如权利要求1或2所述一种制造物联实时数据传输方法,其特征在于:所述步骤3)中,数据发送方法如下:
3.1)阻塞等待有客户端连入,如果有客户端连入,与客户端创建数据交互通道,进入步骤3.2);
3.2)向客户端发送SOH响应,并开启监视事件;
3.3)判断是否有紧急数据向客户端发送,如果没有紧急数据,则进入步骤3.3),否则跳入步骤3.10);
3.4)监视客户端是否接收到新字符,如果有新字符,进入步骤3.5),否则进入步骤3.15);
3.5)解析接收到字符的包标识,如果是ENQ,进入步骤3.6);如果是NAK,跳入步骤3.7);如果是ACK,跳入步骤3.8);如果是EOT,跳入步骤3.9);
3.6)收到请求包,解析请求包,根据请求包封装数据,并向客户端发送ACK响应;
3.7)收到初次请求数据或者客户端要求数据重发,进入步骤3.17);
3.8)客户端成功收到数据,优先级priority=priority+1,跳入步骤3.17);
3.9)客户端发起关闭请求,传输完毕,关闭数据传输通道;
3.10)判断报警序号Anum是否为0,如果Anum等于0,则进入步骤3.11),否则跳入步骤3.12);
3.11)获取数据包包数Acount,判断Acount是否等于1,如果Acount等于1,则跳入步骤3.13),否则跳入步骤3.14);
3.12)判断Anum是否等于Acount,如果相等则进入步骤3.13),否则跳入步骤3.14);
3.13)发送数据块结束包,发送数据结束包,跳入步骤3.3);
3.14)发送紧急数据的普通数据包;
3.15)判断等待是否超时,如果没有超时,则跳入3.3),否则进入步骤3.10);
3.16)超时计数器count=count+1,判断超时计数是否达到允许超时总数SUM,如果count<SUM,向服务器发送NAK响应,请求重新发送指令或者数据,否则传输出错,关闭数据通道;
3.17)判断数据是否发送完毕,如果data不为空,进入步骤3.18),否则表示数据发送完毕,跳入步骤3.22);
3.18)判断数据块数据datadataBlock是否为最后一包数据,如果datadataBlock为最后一包数据,进入步骤3.19),否则跳入步骤3.20);
3.19)客户端发送数据块结束包,数据块序号dataBlock=dataBlock+1,优先级priority=0;
3.20)发送数据块datadataBlock中优先级为priority的数据并进入步骤3.21);
3.21)判断超时计数器count是否大于0,如果count>0,将count置为0;
3.22)向客户端发送数据结束包,将数据块序号dataBlock置为0,优先级priority置为0。
8.如权利要求1或2所述一种制造物联实时数据传输方法,其特征在于:所述步骤4)中,数据发送方法如下:
4.1)与服务器创建连接,创建数据交互通道,开启监视事件;
4.2)监视客户端指令或数据接收情况;
4.3)判断是否有指令发送给服务器,如果有指令发送给服务器,向服务器发送指令包,否则进入4.4);
4.4)判断是否接收到新字符,如果接收到新字符进入4.5),否则跳入4.11);
4.5)解析接收到字符的包标识,如果是SOH,进入步骤4.6);如果是ACK,跳入步骤4.7);如果是STX,跳入步骤4.8);如果是ETB,跳入步骤4.9);如果是EOT,跳入步骤4.10);
4.6)向服务器发送数据请求包;
4.7)接收到数据,向服务器发送NAK响应包;
4.8)接收到普通数据包,跳入4.13);
4.9)接收到数据块结束包,跳入4.13);
4.10)接收到数据结束包,向服务器发送数据请求包;
4.11)判断等待是否超时,如果没有超时,则跳入4.1),否则进入步骤4.12);
4.12)超时计数器count=count+1,判断超时计数是否达到允许超时总数SUM,如果count<SUM,向服务器发送NAK响应,请求重新发送指令或者数据,否则传输出错,关闭数据通道;
4.13)校验数据包是否正确,如果数据正确,发送ACK响应包,否则发送NAK响应,向服务请求重新发送数据包。
CN201710148985.6A 2017-03-14 2017-03-14 一种制造物联实时数据传输方法 Active CN107147613B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710148985.6A CN107147613B (zh) 2017-03-14 2017-03-14 一种制造物联实时数据传输方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710148985.6A CN107147613B (zh) 2017-03-14 2017-03-14 一种制造物联实时数据传输方法

Publications (2)

Publication Number Publication Date
CN107147613A true CN107147613A (zh) 2017-09-08
CN107147613B CN107147613B (zh) 2020-06-02

Family

ID=59783810

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710148985.6A Active CN107147613B (zh) 2017-03-14 2017-03-14 一种制造物联实时数据传输方法

Country Status (1)

Country Link
CN (1) CN107147613B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110545266A (zh) * 2019-08-20 2019-12-06 浙江工业大学 基于gis系统的有连接的优先级可变的数据传输方法
CN112104629A (zh) * 2020-09-04 2020-12-18 南昌大学 一种远程监护系统的实时数据传输方法
US11201801B2 (en) 2019-10-24 2021-12-14 Dell Products L.P. Machine learning-based determinations of lifespan information for devices in an internet of things environment
US11245545B2 (en) * 2019-10-24 2022-02-08 Dell Products L.P. Implementation of internet of things-enabled connectivity devices for processing operation information of devices lacking network connectivity

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101621779A (zh) * 2009-07-30 2010-01-06 华为技术有限公司 一种紧急呼叫方法、装置及系统
CN101815065A (zh) * 2010-01-21 2010-08-25 清华大学 基于IPv6网SIP协议的远程医疗实时信息交互方法
CN102833436A (zh) * 2012-08-31 2012-12-19 电子科技大学 实现voip代理的方法以及系统
US8717911B2 (en) * 2006-06-30 2014-05-06 Centurylink Intellectual Property Llc System and method for collecting network performance information
CN106357707A (zh) * 2015-07-13 2017-01-25 腾讯科技(深圳)有限公司 一种信息处理方法、服务器、终端、车载终端及系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8717911B2 (en) * 2006-06-30 2014-05-06 Centurylink Intellectual Property Llc System and method for collecting network performance information
CN101621779A (zh) * 2009-07-30 2010-01-06 华为技术有限公司 一种紧急呼叫方法、装置及系统
CN101815065A (zh) * 2010-01-21 2010-08-25 清华大学 基于IPv6网SIP协议的远程医疗实时信息交互方法
CN102833436A (zh) * 2012-08-31 2012-12-19 电子科技大学 实现voip代理的方法以及系统
CN106357707A (zh) * 2015-07-13 2017-01-25 腾讯科技(深圳)有限公司 一种信息处理方法、服务器、终端、车载终端及系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
刘德仿等: "《面向模具制造过程的制造物联数据采集方法》", 《盐城工学院学报》 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110545266A (zh) * 2019-08-20 2019-12-06 浙江工业大学 基于gis系统的有连接的优先级可变的数据传输方法
CN110545266B (zh) * 2019-08-20 2022-04-05 浙江工业大学 基于gis系统的有连接的优先级可变的数据传输方法
US11201801B2 (en) 2019-10-24 2021-12-14 Dell Products L.P. Machine learning-based determinations of lifespan information for devices in an internet of things environment
US11245545B2 (en) * 2019-10-24 2022-02-08 Dell Products L.P. Implementation of internet of things-enabled connectivity devices for processing operation information of devices lacking network connectivity
CN112104629A (zh) * 2020-09-04 2020-12-18 南昌大学 一种远程监护系统的实时数据传输方法

Also Published As

Publication number Publication date
CN107147613B (zh) 2020-06-02

Similar Documents

Publication Publication Date Title
CN107147613A (zh) 一种制造物联实时数据传输方法
WO2022094934A1 (zh) 一种基于现场定位的工程质量验收管理系统及方法
CN105847020A (zh) 消息推送方法和装置
CN102647734B (zh) Lte网络s1接口控制面cdr合成方法及合成装置
CN108989455A (zh) 一种基于LoRa物联网的数据上报和指令下发方法
CN104050920B (zh) Led显示屏控制系统和异步控制卡
CN103188094A (zh) 一种资源数据核查系统和方法
CN108052402A (zh) 一种中药提取中mes系统与erp系统对接方法
CN105785962B (zh) 基于uwb的车间物料配送控制与管理平台
CN105117827A (zh) 一种变电站的监控信息表核对系统及方法
CN102404760B (zh) 系统性能实时测量的方法及装置
CN104202328B (zh) 一种订阅goose/smv报文的方法、配置模块及订阅端
CN104460569B (zh) 一种用于叶片生产的在制品监控方法
CN103957266B (zh) 一种通信系统的设备集中控制方法
CN107888682A (zh) 基于工业互联平台的异构系统数据交互方法和系统
CN104123631A (zh) 一种企业库存管理系统与方法
CN107945047A (zh) 一种用于调度日报的指标自动递归计算的可视化配置系统
CN107888690A (zh) 响应时间的统计方法及系统
CN209375934U (zh) 一种基于nfc技术的轨道交通精益化作业系统
CN109831768A (zh) 一种LoRa多节点大数据传输处理方法、装置及系统
CN109960231A (zh) 一种基于物联网的生产管理系统及其方法
CN103854139A (zh) 种子产品稽查监督管理系统及方法
CN108197127A (zh) 材料审批信息化管理方法和系统
CN101493697A (zh) 一种药品生产流程中产品产量数据的采集处理方法
Liu et al. RFID-based production operation management for multi-varieties and small-batch production

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
GR01 Patent grant
GR01 Patent grant
EE01 Entry into force of recordation of patent licensing contract

Application publication date: 20170908

Assignee: ZHEJIANG XINJING AIR CONDITIONING EQUIPMENT CO.,LTD.

Assignor: JIANG University OF TECHNOLOGY

Contract record no.: X2023980037342

Denomination of invention: A Real Time Data Transmission Method for Manufacturing IoT

Granted publication date: 20200602

License type: Common License

Record date: 20230703

EE01 Entry into force of recordation of patent licensing contract
EE01 Entry into force of recordation of patent licensing contract

Application publication date: 20170908

Assignee: Zhejiang Tiankun Furniture Technology Co.,Ltd.

Assignor: JIANG University OF TECHNOLOGY

Contract record no.: X2023980041707

Denomination of invention: A Real Time Data Transmission Method for Manufacturing IoT

Granted publication date: 20200602

License type: Common License

Record date: 20230914

Application publication date: 20170908

Assignee: Huzhou Bodian Network Technology Co.,Ltd.

Assignor: JIANG University OF TECHNOLOGY

Contract record no.: X2023980041703

Denomination of invention: A Real Time Data Transmission Method for Manufacturing IoT

Granted publication date: 20200602

License type: Common License

Record date: 20230914

EE01 Entry into force of recordation of patent licensing contract