标准规范下载简介
JB/T 12986-2016 工业机械电气设备及系统 塑料机械控制系统接口与通信协议.pdf所有的通信中,使用的字节序为小端字节序
本标准的应用层模型如图3所示
JB/T12986—2016
协议基本顿的结构定义如图4所示。
注1:ProtocolVersion表示此协议格式的版本号离子膜烧碱生产设备安装工程施工组织设计,以便控制系统和监控/管理系统可以确认各自解析对应的切
JB/T12986—2016
初始顺由控制系统发起,主要有两个目的:其一是控制系统向监控/管理系统请求分配自已地址: 其二是控制系统表明自已使用的字符集编码方式。此数据顿监控/管理系统必须回复控制系统。图5所 示为控制系统发起的初始顿,图6所示为监控/管理系统的初始回复顿。
JB/T12986—2016
7.2.2.2协议错误顿
注2:错误描述的字符集由初始顿确定
7.2.2.3对时处理顿
对时处理是为了使控制系统和监控/管理系统时间一致。此协议由监控/管理系统强制发起,分为监 空/管理系统对时发起顿、控制系统对时回复顿、监控/管理系统对时确认帧、控制系统对时确认顿,如 图8~图11所示。
时间为目前监控/管理系统的当前时间, 即发送时间点 时间中没有秒,是因为毫秒可以表示到59999毫秒。
图8监控/管理系统对时发起顿
JB/T12986—2016
注:时间为控制系统的当前时间,即控制系统的发送时
9控制系统对时回复顿
注:时间为目前监控/管理系统的计算所得的同步时间
图10监控/管理系统对时确认顿
图11控制系统对时确认顿
TB/T129862016
2.2.4连线保持协议顿
注:Time就是监控/管理系统发过来的时间间隔。
7.2.2.5协议族版本校验顿
图12监控/管理系统连线保持顿
图13控制系统回复连线保持顿
在此所述的协议族版本,包含全部静态协议版本和流程以及全部动态协议版本和流程的总和。此协 议总是由控制系统优先发起。 协议族版本由两个双字(DWORD)的数据表示,第一个DWORD表示静态协议和流程的版本;第 二个DWORD表示动态协议和流程的版本。 其结构如图14和图15所示。
JB/T129862016
注1:静态协议版本表示控制系统当前使用的静态协议版本。 注2:动态协议版本表示控制系统当前使用的动态协议版本。 注3:对于此数据顿,监控/管理系统必须回应,所以此数据顿中的Flag中Bit[7.6]】必须为
图14控制系统协议族校验顿
注1:静态协议版本表示监控/管理系统当前使用的静态协议版本,应与控制系统完全一致,若不一致,则需 协议错误帧进行报警,中止后续的流程。 注2:动态协议版本表示监控/管理系统当前使用的动态协议版本,应与控制系统一致,若不一致,则在后面 进行更新。
7.2.2.6更新动态协议顿
图15监控/管理协议校验顿
只有在控制系统和监控/管理系统中,它们的协议族版本中的动态协议部分不同时才会出现更新动 态协议。更新动态协议顿分为四步:1)开始;2)列表更新;3)动态协议数据;4)结束。此四步全部 由监控/管理系统发起,且控制系统必须响应。
求更新动态协议开始顿和回复顿分别如图16和
图16监控/管理系统更新动态协议开始顿
JB/T129862016
7.2.2.6.2更新动态协议列表顿
图17控制系统回复更新协议开始顿
列表顿的字节长度是根据动态协议多少所确定的。监控/管理系统传输已有的动态协议ID和 控制系统收到此列表后,进行对比,回复监控/管理系统其控制系统需要更新的动态协议,如目 图19所示。
注1:DynamicProtocolFamilyVersion表示当前监控/管理系统动态协议族的版本。 注2:DynamicProtocolCount表示当前监控/管理系统动态协议的个数,此值表示后面的Dynamic Protocol Dynamic Protocol Version的个数。 注3:DynamicProtocolID表示单个动态协议的ID。 注4:DynamicProtocolVersion表示单个动态协议的版本。 注5:对于此数据顿,控制系统必须回应,所以此数据顿中的Flag中Bit[7,6]必须为[0,1]。
图18监控/管理系统更新动态协议列表
DynamicProtocolCount表示当前监控/管理系统动态协议的个数,此值表示后面的DynamicProtocolID和 DynamicProtocolVersion的个数。 DynamicProtocolID表示单个动态协议的ID。 DynamicProtocol Version表示单个动态协议的版本
图19控制系统更新动态协议列表顿
7.2.2.6.3动态协议数据顿
JB/T129862016
动态协议数据顿是监控/管理系统发送给控制器的,告诉控制器什么时候开始数据采集,什 束数据采集并上传哪些数据。 动态协议数据顿结构如图20~图22所示。
注1:StartTrigger定义了开始资料采集的触发器,这对于采集某些资料的曲线(多笔资料)特别有用。当不需要采 集曲线时,可以设置0个开始触发器。 注2:EndTrigger定义了结束数据采集的触发器,条件满足后,控制器结束资料采集,把采集结果传送给监控/管理 系统。
图21动态协议顿内容
JB/T12986—2016
注:DataIDContent是一个循环结构,有n个数据ID,就有n个数据ID内容。
图22动态协议顿采集内容
图22动态协议顿采集内容
单个动态协议的StartTrigger段结构(EndTrigger段结构与之相同)如图23所
单个动态协议的StartTrigger段结构(EndTrigger段结构与之相同)如图23所示。
JB/T129862016
注1:TriggerContent是一个循坏结构,有n个触发器,就有n个触发器内容。 注2:若有多个Trigger,则多个Trigger之间为“逻辑或”。 注3:ParameterContent是一个循环结构,有n个参数,就有n个参数内容。 注4:若一个触发器有多个参数,则参数之间为“逻辑与”关系。
TriggerID的组成见表1
TriggerID的组成见表】
图23单个动态协议的StartTrigger段结构
JB/T12986—2016
控制器收到监控/管理系统的动态协议后,需要回复,回复的数据顿部分取值如下: ProtocolID,0x01030005。
7.2.2.6.4更新动态协议之结束
监控/管理系统更新动态协议完毕后,将会主动发送更新完成的顿,而控制系统也将会回复,其完 成顿、回复顿分别如图24、图25所示。
注1:静态协议版本指当前的监控/管理系统的静态协议 注2:动态协议版本指当前的监控/管理系统的动态协议
主1:静态协议版本指更新后的控制系统的静态协议版 注2:动态协议版本指更新后的控制系统的动态协议版
7.2.2.7读数据幅
/管理系统更新动态协议
图25控制系统回复更新动态协议完成顿
监控/管理系统向控制系统读取某些固定的数据,总是监控/管理系统请求,控制系统回复,读取顿结 构如图26所示。 控制系统读取数据返回顿结构如图27所示。
图27读取数据返回顿
7.2.2.8写数据顿
JB/T129862016
当监控/管理系统在必要的时候,可以写入某些数据到控制系统中;总是管理/控制系统首先 制系统将会回复状态,其结构如图28、图29所示。
7.2.2.9数据字典帧
JB/T12986—2016
数据字典请求顿、回复顿分别如图30、图31所示
图30监控/管理系统数据字典请求顿
图31控制系统数据字典回复顿
注1:资料主要包含“大纲”和“数据集”两部分,“大纲”是对资料ID及其属性的描述,“数据集”支持多笔数据, 对控制器传递监测曲线等特别有用。大纲加上数据集,资料就具有了完整的自描述特性,即,不需要借助第 三方信息就能对资料正确解读。 注2:Flag用于标记资料中是否有Schema。为了减少数据量,如果控制系统实现了数据字典相关协议,或基于别的 原因,Schema可以省略。Flag取值:0表示没有Schema;1表示有Schema。
若分解Flag的取值,则可以表示为图33所示结构。
Schema和Rowset的结构如图34所示
图32动态协议返回资料顿
图33动态协议返回资料顿结构Flag分解
B/T129862016
Z.3数据ID结构及定义
Z.3.1数据ID结构
据ID使用一个DWORD(32个bit)来表示,
图34动态协议返回资料顿详细结构
7.3.1.1组件类型
JB/T12986—2016
含义就是机器上参与控制的逻辑上的部件类型,
7.3.1.2组件序号
7.3.1.3动作类型
作是指组件可以执行动作,其定义见表7
7.3.1.4数据集类型
数据集类型定义见表8。
7.3.1.5数据序号
在一个数据集中依次排列的序号,其定义见表
7.3.2警报查询数据 ID定义
警报查询数据ID与7.3.1规定的结构相同,可简单表示为: 【组件类型,组件序号,动作类型,数据集类型,数据序号] 如:机器整个警报的D为[0,0,15,6,0],此DataID对应的值若是0,则表示机器运转正常;若是 非0,则表示有警报,这个值用一个DWORD表示(32个bit),其中高位WORD表示发生警报的[组 件类型,组件序号,动作类型](结构与7.3.1规定的结构相同,如:[2,0,2]),低位WORD是预留值。 得到的[2,0,2]值,表示“脱模进”有警报,进而需要查询ID为[2,0,2,6,0]的值,这才是真正的警 报号。
Z.3.3监测查询数据ID定义
每个动作均有监测,根据表9,定义的监测ID的
JB/T129862016
表10监测数据序号(续)
7.3.4机器状态查询数据ID定义
机器状态数据ID定义及机器状态值分别见表11、表12。
表11机器状态数据ID定义
注1:机器状态,其值是一个有符号的int32的值,见表12。 注2:机器动作,由本标准预定义了16个ID,表示可以有16个同时发生的动作。其值是一个DWORD类 高位WORD表示发生动作的【组件类型,组件序号,动作类型](其结构与7.3.1规定的结构相同, WORD是预留值。
JB/T129862016
7.4.2.1协议匹配
控制系统和管理/监控之间如何进行协议的检查,即协议匹配如图37所示。
图36基本通信流程、协议的逻辑关系
7.4.2.2地址分配
获得监控/管理系统的分配地址,即地址分配如
JB/T12986—2016
7.4.2.3对时处理
7.4.2.3.1对时处理流程
对时处理流程如图39所示。
7.4.2.3.2对时处理计算
对时处理计算的基本方法如图40所示。
JB/T129862016
7.4.2.4连线保持
连线保持流程如图41所示。
图40对时处理计算的基本方法
图40对时处理计算的基本方法
JB/T129862016
7.4.2.5动态协议更新
动态协议更新流程如图42所示。
JB/T129862016
执行动态协议流程如图43所示。
执行动态协议流程如图43所示。
图42动态协议更新流程
对于每一顺的差错控制,使用32bit的CRC。采用以下多项式: x2+ ×26+ ×23+ ×2+ x16+ x12+ xl+ x10+ x8+ x+ x+ x+ x+x+1 生成的多项式为:0xEDB88320,具体程序可参见附录D。
JB/T129862016
图43执行动态协议流程
JB/T12986—2016
附录A (资料性附录) 塑料机械控制系统适用范围
数据类型ID见表B.1
JB/T129862016
附录B (资料性附录) 数据类型ID
表B.1数据类型ID
JB/T129862016
表B.1数据类型ID(续)
JB/T129862016
C.2国际单位制的基本单位
国际单位制的基本单位见表C.1。
表C.1国际单位制的基本单位
C.3国际单位制的辅助单位
国际单位制的辅助单位见表C.2。
表C.2国际单位制的辅助单位
C.4国际单位制中具有专门名称的导出单位
国际单位制中具有专门名称的导出单位见表C.3
JB/T12986—2016
表C.3国际单位制中具有专门名称的导出单位
C.5其他国际单位制导出单位
其他国际单位制导出单位见表C.4和表C.5。
表C.4其他国际单位制导出单位()
17CK119 CC-Ⅰ标准下载JB/T129862016
表C.4其他国际单位制导出单位(一)(续)
比部分单位,在《中华人民共和国法定计量单位》中是以“用于构成十进倍数和分数单位的词头”来表示, 本不必单列,但因其比较常用,为了避免换算,特单独列出。
表C.5其他国际单位制导出单位(二)
JB/T129862016
高速公路30mT梁架设施工工艺/返回值:计算所得出的32位的CRC校验码
unsigned int GetCRC32B(unsigned int CRCCode, char*pData, unsigned int Length unsigned int i; unsigned int nResult = CRCCode; for (i=O; i