请问一下RPB是干啥用的

电子发烧友 20220829

  • 网络管理

此问题源于群内小伙伴的讨论,本文将该问题带来的思考分享给大家。

1、RPB的作用

首先,确定一下RPB的位置,RPB在CBV字节的Bit0,如下所示:

RPB的作用是什么呢?看一下Autosar的官方解释,如下所示:

意思就是:RPB = 1,有RMS(Repeat Message State)请求,否则没有RMS请求。这里我们需要从收/发两个层面理解:

接收:如果接收到的网络管理报文中,RPB = 1,请求当前的节点进入RMS状态。

发送:如果本节点的上层逻辑主动请求进入RMS,则会主动调用接口CanNm_RepeatMessageRequest(),之后本节点外发的网络管理报文中RPB = 1。提示:RPB置位与否的操作需要静态配置CANNM_NODE_DETECTION_ENABLED参数。

CanNm_RepeatMessageRequest()接口声明如下所示:

2、RPB的使用场景

这里我们假设一种工况:某个网段存在3个ECU:ECU1、ECU2、ECU3,且ECU3具有PN功能,ECU1对应的网络管理报文0x501,ECU2对应的网络管理报文0x502,ECU3对应的网络管理报文0x503。三个ECU在总线上的拓扑关系如下所示:

具体解释3个节点的网络状态切换时序:

t0时刻:ECU1和ECU2正常通信,两者均处于NOS(Normal Operation State)状态,发送的网络管理报文中,RPB未置位(RPB = 0)。ECU3处于BSM(Bus-Sleep Mode)状态(ECU3具有PN功能,因为收到的网络管理报文中,对应的PNC未置位,所以此时ECU3处于休眠状态)。

t1时刻:ECU1主动调用

接口CanNm_RepeatMessageRequest()请求进入RMS(Repeat Message State)状态,此时:

ECU1进入RMS状态,ECU1发送的网络管理报文中,PNI(Partial Network Information Bit)置位(PNI= 1),且关联ECU3的PNC_ECU3 = 1,ECU3网络被唤醒;

且RPB = 1,随即ECU2和ECU3进入RMS状态;

ECU2和ECU3发送的网络管理报文中,RPB = 1,且稍微晚于ECU1。

t2时刻:ECU1、ECU2、ECU3依次进入NOS状态,且三者的RPB = 0。

如下所示:

注意:同一网段内的所有节点,对应的CANNM_MSG_CYCLE_TIME、CANNM_REPEAT_MESSAGE_TIME、CANNM_WAIT_BUS_SLEEP_TIME、NM-TIME_OUT时间参数需要保持一致,以便于网段内所有节点在近似相等的时间内进入相同的网络状态。

综上述:RPB具有协调不同ECU节点状态切换的作用,以便于网段内所有节点在近似相等的时间内进入相同的网络状态。

RPB是否还有其他使用场景?期待你不同的看法。


审核编辑:刘清

查看全文

点赞

电子发烧友

作者最近更新

  • 华为位列国内企业研发第一!比亚迪Q3净利润大涨3倍 /热点科技新闻点评
    电子发烧友
    2022-10-18
  • 诚迈科技通过HarmonyOS Connect生态产品技术认证
    电子发烧友
    2022-10-13
  • 苹果iPhone14抢先进入无卡通话时代 eSIM技术物联网机遇在哪里?
    电子发烧友
    2022-10-13

期刊订阅

相关推荐

  • AIS选择中兴升级5G网络 合作打造泰国首个5G联合研究中心

    2022-06-13

  • RPB(Repeat Message Request Bit)干啥用的?

    2022-11-16

  • 分享一个实例:Node路由超时引发的Bug

    2022-08-22

  • 节点唤醒等于网络唤醒吗?

    2022-08-21

评论0条评论

×
私信给电子发烧友

点击打开传感搜小程序 - 速览海量产品,精准对接供需

  • 收藏

  • 评论

  • 点赞

  • 分享

收藏文章×

已选择0个收藏夹

新建收藏夹
完成
创建收藏夹 ×
取消 保存

1.点击右上角

2.分享到“朋友圈”或“发送给好友”

×

微信扫一扫,分享到朋友圈

推荐使用浏览器内置分享功能

×

关注微信订阅号

关注微信订阅号,了解更多传感器动态

  • #{faceHtml}

    #{user_name}#{created_at}

    #{content}

    展开

    #{like_count} #{dislike_count} 查看评论 回复

    共#{comment_count}条评论

    加载更多

  • #{ahtml}#{created_at}

    #{content}

    展开

    #{like_count} #{dislike_count} #{reback} 回复

  • #{ahtml}#{created_at}

    #{content}

    展开

    #{like_count} #{dislike_count} 回复

  • 关闭
      广告