CAN总线通信控制协议的仿真与性能分析
所以,吞吐量的计算公式为:

平均信息时延的计算公式为:

式中i表示节点编号(I=1~16)。
通信冲突率的计算公式为:

网络利用率的计算公式为:

网络效率的计算公式为:

负载完成率的计算公式为:

式中i表示节点编号(1~16)。
经过运行仿真模型,得到系统在负载分别为16%、33%、50%、81.5%、100%、125%、150%、175%、200%、230%、250%、280%、310%时的一系列仿真结果。
依据公式(1)-(6),我们分析了负载率从0.02到3.1的情况下,CAN总线通信系统中负载率的变化对网络吞吐量、平均信息时延、通信冲突率、网络利用率、网络效率以及负载完成率的影响。结果如图3-8中所示。
图3-8的变化趋势都是由CAN总线通信控制协议决定的,即总线空闲时,任一节点都有发起通信的权力,当多个节点同时发送产生冲突时,采用非破坏性位仲裁机制,低优先级节点停止发送,高优先级节点不受影响继续发送,从而可以避免总线冲突。
图3中,由于当负载率较低时,低优先级的信息可以竞争到总线权得以发送,随着负载率的增加,网络利用率提高,所以,吞吐量也随之增加,当负载率增加到一定程度时,只有高优先级的信息得以发送,此时吞吐量趋于饱和。

图3吞吐量与负载率的关系
图4中,由于随着负载率的增加,信道主要用来发送高优先级的信息,而低优先级的信息却被长时间延迟甚至造成数据丢失,所以平均信息时延随着负载率的增加几乎呈线性增加。

图4平均信息时延与负载率的关系
图5中,由于随着负载率增加,吞吐量增加,即单位时间内需要处理的信息量增加,信息发生冲突的机会也增加。而且随着负载率的增加,当吞吐量增加到趋于饱和后,信息发生冲突的机会也增加的较为缓和,即通信吞吐率增加的较为缓和。

图5通信冲突率与负载率的关系
图6中,由于随着负载率增加,吞吐量随之增加,则单位时间内需要处理的信息量增加,从而使得通道的利用率增加。同时,通道由忙碌到空闲 状态所用的帧间隔时间也增加,使得通道不可能连续不断地传输信号,这样随着吞吐量增加并趋于饱和时,网络利用率也随之增加并趋于1,但不会达到1。

图6网络利用率与负载率的关系
图7中,由于随着负载率的而增加,吞吐量增加,而通道处于忙碌状态的总时间也在增加,并且在吞吐量达到饱和时,通道处于忙碌状态的时间也趋于稳定,所以,单位时间内通道成功传送的信息与通道发送信息的时间比率几乎不随着负载率变化而变化,基本在一个恒值附近微小变化。

图7网络效率与负载率的关系
图8中,由于在负载率较低时,各优先级的信息都可以竞争到总线权得以发送,所有节点成功向总线上发送的数据帧的个数与请求发送的数据帧的个数相等或相差很小,但是随着负载率的增加,低优先级信息得不到发送,只有高优先级信息才得以发送,导致所有节点成功向总线上发送的数据帧的个数远小于请求发送的数据帧的个数。所以,负载完成率随着负载率的增加而减小,并且在负载较小时,负载完成率很大,几乎接近于1。

图8负载完成率与负载率的关系
总之,以上分析结果验证了CAN总线通信控制协议的特点。
4结束语
运用MATLAB软件中Stateflow工具箱来对CAN总线通信系统建模仿真切实可行,是现场总线协议分析与研究的又一途径。仿真模型能够完全描述协议的复杂逻辑关系,而且形象直观贴近实际系统,易于理解,也便于修改调试。
评论