从项目中初识Autosar状态机转换

目录

0 前言

1 状态转换

1.1 BSM TO RMS

1.2 RMS TO RSS

1.3 RMS TO NOS

1.4 RSS TO PBSM

 1.5 PBSM TO BSM

1.6 RSS TO NOS

1.7 RSS TO RMS

2 结尾


0 前言

        之前在这篇《从项目中初识Autosar网络管理》已经和大家讲了Autosar网络管理的几个状态机以及定时器的大致概念,以及在项目中的作用,网上讲理论的大佬也不在少数,但如果没有自动化脚本的话,很多新人并不知道该怎么切换到那些状态去,本文主要从项目中教大家如何进入那几个状态模式。

1 状态转换

1.1 BSM TO RMS

        ECU上电,没有向ECU发送NM报文前的状态就是BSM状态,一般需要发送两帧NM报文来唤醒ECU,第一帧先唤醒芯片,第二帧才是在唤醒ECU。如果你只发送一帧NM报文一般是不能唤醒ECU的,这是实操中需要注意的一个点。

        收到唤醒信号到ECU唤醒,这需要在T_WakeUp时间内完成,这也是测试点。进入RMS之后,按照T_NM_MessageCycle的周期持续发送报文,1500ms以后进入下一个状态。

1.2 RMS TO RSS

        如果没有其他请求,只是一直在发送NM的全0报文,此时ECU会进入RSS状态,该状态比较明显的特征就是ECU只发出APP报文,而不发出NM报文。

1.3 RMS TO NOS

        RMS到NOS需要有网络请求,这个可以是点火信号,也可以是有诊断请求,此处以有诊断请求为例,在RMS时,发送诊断报文,此时进入NOS状态,ECU发出的NM报文状态如下所示,从图中可以看到一开始ECU的NM报文还在重复报文状态,而进入NOS后该状态为就变为了0。

1.4 RSS TO PBSM

上位机停发NM报文后,经过NM_TIMEOUT后你会发现ECU也开始停发APP报文了,这时候ECU就进入了PBSM的状态。

        NM_TIMEOUT = 最后一帧应用报文发出的时间 - 最后一帧网络报文发出的时间

 1.5 PBSM TO BSM

        进入PBSM后,等待WAIT_BUS_SLEEP时间后会发现总线出现了错误帧,此时说明ECU进入了BSM。

        WAIT_BUS_SLEEP = 第一帧错误帧的出现时间 - 最后一帧应用报文发出的时间

1.6 RSS TO NOS

       IG中发送NM报文(全0),在RMS期间关闭IG报文,发送诊断报文,此时可以发现,ECU的NM报文出现了三种变化:

此处需要注意是,由于诊断报文ECU从RSS进入到NOS后,NM发送10帧就会停止发送,这是因为S3的时间为5000ms:

1.7 RSS TO RMS

 IG以20ms周期发送401报文(全0),ECU发送4帧459报文后停止发送NM报文,只发送APP报文,此时ECU进入RSS状态

如果在此时继续发送401报文,将byte(1)置为01,请求重复报文状态,此时进入RMS,459会以4帧为一个循环继续发送 

注:这里的4秒是由于IG停止了一段时间的NM报文,重新发送NM报文后,ECU回复两条459的时间间隔 

2 结尾

        欢迎各位大佬在评论区批评指正,有需要加入自动化测试群的请评论区留言或私信。

autosar状态机测试是验证autosar软件状态机设计是否符合要求的一种测试方法。在软件开发过程状态机常常被用来描述软件的行为、状态迁移以及事件处理。而autosar作为一种标准化的软件架构,也要求状态机在其下使用。 autosar状态机测试的目的是确保状态机在不同状态下能正确地进行状态迁移和事件处理,以及检测可能存在的错误和不一致性。测试过程通常包括以下几个步骤: 首先,需要对状态机状态状态迁移进行建模。这可以通过绘制状态图或创建状态转换表来完成。建模时需要考虑所有可能的状态状态迁移,并定义事件使状态迁移发生。 接下来,需要进行功能测试,以验证状态机在不同事件触发下的行为是否符合预期。这包括测试不同的状态迁移路径、各种可能的事件序列和边界情况。 在功能测试的基础上,还需要进行边界测试和错误处理测试。边界测试用于测试状态机在边界情况下的行为,例如测试最小值、最大值和超出范围的情况。错误处理测试则是测试状态机在出现错误时的应对能力,是否能正确地处理异常情况并恢复正常工作。 最后,还需要进行性能测试和稳定性测试。性能测试用于评估状态机在处理大量事件时的响应时间和系统资源占用情况。稳定性测试则是测试状态机在长时间运行和连续事件触发下是否能保持稳定运行,是否会出现资源泄露或崩溃等问题。 综上所述,autosar状态机测试是一项重要的测试活动,通过验证状态机的设计和实现是否符合要求,可以提高软件系统的可靠性和性能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

IAMeee

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值