报文执行顺序的编排方法、报文发送方法及车辆管理系统与流程
- 国知局
- 2024-08-02 14:02:45
本技术涉及报文执行顺序,特别涉及一种报文执行顺序的编排方法、报文发送方法及车辆管理系统。
背景技术:
1、随着汽车功能越来越丰富,汽车各ecu(electronic control unit, 电子控制单元,在车辆领域是一个具备完整功能的单独控制模块的统称,又称为车辆电脑)交互信息越庞大。can总线(controller area network,控制器局域网总线)作为汽车ecu之间通信的主要媒介,can报文越来越多,can总线负载率也随之越来越高。另外,当前汽车行业主推域控制器,把诸多功能集成在一个ecu,这意味着域控制器不但需要执行多项任务完成多种功能,还需要处理大量的总线报文。如果各ecu不能合理地发送can报文,很容易造成can总线拥堵,从而使报文超期发送。
2、目前存在的问题在于:
3、一次性发送多个报文会造成这段时间总线负载率过高,导致总线上其他报文周期产生延时。
4、以及将逻辑任务和can报文两两依次错峰编排,就会在进行发送任务时,导致需要频繁的切换任务,导致增加ecu的负载率,使ecu存在无法如期完成功能任务的风险,甚至系统崩溃。
技术实现思路
1、本技术为解决上述技术问题,提供一种可以降低总线和ecu的负载率,且可以满足报文准时发送的报文执行顺序的编排方法、报文发送方法及车辆管理系统。
2、具体的,本技术提供一种报文执行顺序的编排方法,包括以下步骤:
3、s100:确定目标报文和逻辑任务对应的报文执行顺序和任务执行顺序;其中,目标报文中包括多组需要按照预设时间间隔发送或需要在预设时间段内发完的串行通讯协议总线报文,每组串行通讯协议总线报文包括多个子报文。
4、s200:获取各所述子报文的占用总线时间和各所述逻辑任务的最少执行时间。
5、以及s300:基于所述报文执行顺序、任务执行顺序、占用总线时间和最少执行时间对所述子报文和逻辑任务的相对执行顺序进行编排。
6、其中,步骤s100和步骤s200的执行顺序可以调换。
7、在上述技术方案中,目标报文和逻辑任务的顺序执行是一个任务内完成的,不需要在不同的任务之间切换,从而无需ecu执行缓存、保护现场的动作,不会增加ecu的负载,且可以将一个can报文的多个子报文间隔发出,可以避总线的拥堵,因此通过合理的设置子报文和逻辑任务的相对执行顺序可以有效地减少总线和ecu的负载率,提高系统整体性能;通过考虑子报文的占用总线时间和逻辑任务的最少执行时间,可以保证子报文按时发送,确保系统运行的稳定性和可靠性;此外,该方法可以适用于不同的系统架构和应用场景,并且可以根据具体需求进行定制和调整,具有较高的灵活性和可扩展性。
8、进一步的,所述步骤s300包括:
9、基于所述报文执行顺序和任务执行顺序将所述占用总线时间和最少执行时间记录至预设表格中,得到子报文和逻辑任务执行顺序表。
10、在上述技术方案中,将占用总线时间和最少执行时间记录在预设表格中,有利于统一管理这些关键数据,确保数据的准确性和完整性。
11、进一步的,所述步骤s300还包括:
12、s301:初始化x、y和z,其中,x、y和z均为大于或等于1的整数。
13、s302:基于所述预设表格获取逻辑任务x对应的最少执行时间和子报文y对应的占用总线时间,以计算第一比值,并将所述逻辑任务x作为预排序任务z。
14、s303:判断所述第一比值是否小于第一预设值,若是,则对x加一,并判断x是否大于或等于第一上限值,若是,则输出排序结果;否则对z加一,以更新获得预排序任务z,并转入步骤s304。
15、否则将所述预排序任务z作为目标排序任务,并将所述目标排序任务编排在所述子报文y之后。
16、以及s304:计算预排序任务z对应的第一最少执行时间和与子报文y对应的占用总线时间的比值,作为第一比值,返回至步骤s303。
17、其中,所述预排序任务中的逻辑任务基于所述任务执行顺序进行排序。
18、在上述技术方案中,通过比值判断和预排序任务的更新,能够智能地确定逻辑任务和子报文的执行顺序,保证子报文按时发送,优化系统运行效率,提高系统性能;采用这样的编排方法,可以更好地考虑实时数据和情况,确保子报文的准时发送和任务的按时执行,提高系统响应速度和运行效率。
19、进一步的,所述步骤s303中,获取到目标排序任务后,包括:
20、判断所述第一比值是否小于第二预设值,若是,则执行第一排序处理;否则执行第二排序处理。
21、在上述技术方案中,根据第一比值与第二预设值的比较结果,可以智能地调节排序策略,选择最优的排序方式,以保证子报文按时发送,提高系统的效率和性能;并且合理的排序处理方式能够使得系统在有限的资源条件下快速高效地完成任务,提高执行效率。
22、进一步的,所述第一排序处理包括:
23、分别对x和y加一,判断x和y是否分别大于或等于第一上限值和第二上限值,若是,则输出排序结果;否则将子报文y编排在所述目标排序任务之后,返回至步骤s302。
24、在上述技术方案中,对x和y分别加一,可以保持子报文y与目标排序任务的逻辑关系,确保任务的顺序和相关性得到有效维持;通过返回至步骤s302,实现对整个排序流程的循环迭代。
25、进一步的,在执行所述第二排序处理之前,包括:
26、基于所述目标排序任务获取未编排的逻辑任务的第二最少执行时间和,以及基于所述子报文y获取未编排的子报文的第一占用总线时间和,以判断所述第二最少执行时间和是否小于所述第一占用总线时间和,若是,则执行第二排序处理。
27、否则分别对x和y加一,判断x和y是否分别大于或等于第一上限值和第二上限值,若是,则输出排序结果;否则返回至步骤s302。
28、在上述技术方案中,根据第二最少执行时间和及第一占用总线时间和的判断结果,可以选择合适的排序方式,使得任务的执行顺序更为合理和高效,并且可以避免子报文与逻辑任务编排的冲突和延迟。
29、进一步的,所述第二排序处理包括:
30、s311:对y加一,判断y是否大于或等于第二上限值,若是,则输出排序结果;否则将子报文y编排在所述目标排序任务之后,并转入步骤s312。
31、s312:基于所述目标排序任务获取已编排的逻辑任务的第三最少执行时间和,同时获取已编排的子报文的第二占用总线时间和。
32、以及s313:判断所述第三最少执行时间和与所述第二占用总线时间和的比值是否小于第一预设值,若是,则对x加一,判断x是否大于或等于第一上限值,若是,则输出排序结果;否则返回至步骤s302。
33、否则对y加一,判断y是否大于或等于第二上限值,若是,则输出排序结果;否则将子报文y编排在已编排的子报文之后,并返回至步骤s312。
34、在上述技术方案中,通过对任务执行时间和占用总线时间的比较,可以动态地优化执行顺序,确保在后续子报文发送和任务执行时,系统按照最优方案完成任务,提高系统的效率和性能。
35、基于同一构思,本技术还提供一种车辆电脑的报文发送方法,包括:
36、根据预存的子报文和逻辑任务执行顺序表依序执行发送目标报文和执行逻辑任务的任务。
37、其中,目标报文中包括多组需要按照预设时间间隔发送或需要在预设时间段内发完的串行通讯协议总线报文,每组串行通讯协议总线报文包括多个子报文,这些子报文被穿插在多个逻辑任务中间发送;所述多个逻辑任务为行车电脑的多个可运行实体。
38、其中,所述子报文和逻辑任务执行顺序表是通过所述的编排方法生成的。
39、在上述技术方案中,根据预先编排好的顺序执行发送目标报文和执行逻辑任务的任务,可以保证报文按时发送,确保系统运行的稳定性和可靠性。
40、基于同一构思,本技术还提供一种车辆管理系统,至少包括:
41、控制单元,用于获取子报文和逻辑任务执行顺序表;其中,所述子报文和逻辑任务执行顺序表是通过所述的编排方法生成的。
42、发送单元,用于根据所述子报文和逻辑任务执行顺序表依序执行发送目标报文和执行逻辑任务的任务。
43、通信单元,用于基于所述目标报文和逻辑任务与外部系统进行通信。
44、进一步的,所述车辆管理系统还包括:
45、存储单元,存储有计算机程序,其中,所述计算机程序被设置为运行时执行所述的报文执行顺序的编排方法。
46、在上述技术方案中,自动化管理车辆的报文发送和逻辑任务执行,保证了报文的按时发送,同时确保了与外部系统通信的高效性和可靠性。
47、与现有技术相比,本技术的有益效果在于:
48、本技术基于子报文的报文执行顺序、逻辑任务的任务执行顺序,及各自对应的占用总线时间和最少时间来对所述子报文和逻辑任务的相对执行顺序进行编排。本技术通过合理的设置子报文和逻辑任务的相对执行顺序,可以有效地减少总线和ecu的负载率,提高系统整体性能;通过考虑子报文的占用总线时间和逻辑任务的最少执行时间,可以保证子报文按时发送,确保系统运行的稳定性和可靠性;此外,该方法可以适用于不同的系统架构和应用场景,并且可以根据具体需求进行定制和调整,具有较高的灵活性和可扩展性。
本文地址:https://www.jishuxx.com/zhuanli/20240801/241503.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。
下一篇
返回列表