TRDP协议过程数据 Process Data (PD)
在Process Data交互的过程中,有三种角色:
• Publisher: Process Data的源设备
• Subscriber: Process Data的接收设备
• Requester: 请求发布者发布Process Data
PD支持Push和Pull两种大的通信模式,同时根据源设备和接收设备的数量不同,又可以进行细分。
Push支持的通信模式:(这种模式下只有Publisher和Subscriber两种角色)
• 点对点,没有应答的循环发送,Publisher知道Subscriber(Publisher通过单播IP发送PD)
• 点对多点,没有应答的循环发送,Publisher知道Subscriber(Publisher通过组播IP发送PD)
• 点对多点,没有应答的循环发送,Publisher不知道Subscriber(Publisher通过组播IP发送PD)
说明:从通信的角度来讲,点对多点时,Publisher是否知道Subscriber没有区别。


Pull支持的通信模式:(这种模式下其中一个Subscriber可能是Requester)
• 点对点,没有应答,Requester知道Publisher (Requester通过单播IP发送请求报文)
• 多点对点,没有应答,Requester不知道Publisher(Requester通过组播IP发送请求报文)
• 点对多点,没有应答,Requester知道Publisher。(其中一个Subscriber也就是Requester,通过单播IP发送请求报文)
• 多点对多点,没有应答,Requester不知道Requester。(其中一个Subscriber也就是Requester,通过组播IP发送请求报文)


IEC标准定义MD报文格式如下:

字段 | 长度 | 值 | 描述 |
| sequenceCounter | 4字节 | 从0开始计数 | |
| protocolVersion | 2字节 | Fixed | 高字节:MainVersion 低字节:SubVersion 例如:“0102”= 版本 1.2 |
| msgType | 2字节 | 5072:Pr 5070:Pp 5064:Pd 5065:Pe | ‘Pr’ = PD Request ‘Pp’ = PD Reply ‘Pd’ = PD Data ‘Pe’ = PD Data (Error) 预留,当前未使用 |
| comId | 4字节 | 用户设置 | 用户数据的标识 |
| etbTopoCnt | 4字节 | 0..232-1 | The ETB topography counter: • 作为列车的地址来使用IEC 61375-2-5 (parameter ‘etbTopoCnt’) • 用户设置这个字段 • 基于ETB的所有通信都要设置 • 如果设置了有效的opTrnTopoCnt,则这个字段也要设置 • 其它情况设置为0 |
| opTrnTopoCnt | 4字节 | The operational train topography counter: • 参照5.3.3章节的介绍来使用 • 用户设置这个字段 • 当需要使用operational train directory中的信息时,设置该字段(例如选路操作) • 当源设备使用operational列车字典来解析目的IP时,需要设置该字段。(例如解析URI ‘vcu.leadVeh.anyCst.anyClTrn.lTrn’) • 其它情况设置为0 | |
| datasetLength | 4字节 | 0 ..1432 | |
| reserved01 | 4字节 | 0 | 预留 |
| replyComId | 4字节 | Request使用; 其它情况填0 | • 仅在PD request中使用 • 作为PD reply的ComId使用 • 如果为0,使用PD request的ComId作为PD reply的ComId • 如果为0,且PD request的ComId也为0,则PD reply发送unspecified PDU |
| replyIpAddress | 4字节 | Request使用; 其它情况填0 | |
| headerFcs | 4字节 | • 根据PD-PDU头计算 • 计算时不包含headerFcs自己 | |
| dataset | 0..1432 字节 | 必须是4字节的整数倍,不足时补零 |
相关产品