一种车载外部设备的通信状态管理系统及方法与流程

文档序号:30635877发布日期:2022-07-05 21:20阅读:86来源:国知局
一种车载外部设备的通信状态管理系统及方法与流程

1.本发明涉及通信技术领域,特别是涉及一种车载外部设备的通信状态管理系统及方法。


背景技术:

2.autosar(automotive open system architecture,汽车开放系统架构)中采用ecum(electronic control unitmanage,状态管理器)模块管理ecu(electronic control unit,电子控制单元)的状态切换,及在不同场景下ecu(electronic control unit,电子控制单元)上的外部设备的运行状态。
3.ecum(electronic control unit manage,状态管理器)对can(controller area network,控制器局域网)总线,lin(local interconnect network,串行通讯网络)总线,及以太网总线都规定了标准接口,和网络管理模块共同完成对这些通信总线的状态管理。这些总线之外的总线或外部设备。比如在ecum(electronic control unit manage,状态管理器)的run模式,can(controller area network,控制器局域网)总线处于正常通信状态,网路管理处于active模式。在休眠模式,can(controller area network,控制器局域网)总线需要休眠模式,并配置相应的唤醒源,以便ecu(electronic control unit,电子控制单元)可以被can(controller area network,控制器局域网)总线唤醒。在唤醒模式,ecum(electronic control unit manage,状态管理器)将检测唤醒源,完成唤醒功能。
4.autosar(automotive open system architecture,汽车开放系统架构)定义了ecu(electronic control unit,电子控制单元)的运行状态请求和释放的接口,由于外部设备多种多样,状态管理方式大不相同,所以未定义具体的使用规则。
5.在基于autosar(automotive open system architecture,汽车开放系统架构)架构的汽车ecu(electronic control unit,电子控制单元)的软件设计实现中,目前针对外部设备,一般采用的方案是自己定义通信协议及上下层通信接口,上层应用软件根据这些定义实现和外部设备的通信和状态管理。
6.由于外部设备的多样性,通信方式也多种多样。网络管理协议常常自主开发,即使不自主开发,也不一定遵守autosar(automotive open system architecture,汽车开放系统架构)的网络管理规范。这样就会存在一系列相关的问题,如软件的通用性和一致性变差,即使针对同种的外部设备,在不同的项目目的,处理方式和接口没有统一的规范,导致处理方式五花八门,格式各样。


技术实现要素:

7.本发明实施例所要解决的技术问题在于,提供一种车载外部设备的通信状态管理系统及方法,解决非标准的外部设备嵌入到通信架构中,兼容性差和软件可移植特性低的技术问题。
8.本发明的一方面,提供一种车载外部设备的通信状态管理系统,包括:
9.至少一个与车载外部设备相连的通信状态管理模块,以及至少一个与车载外部设备相连的外部设备驱动模块;其中:
10.所述通信状态管理模块,用于获取任一车载外部设备的通信数据、控制策略数据,根据接收的用户请求指令和所述任一车载外部设备的网络状态、通信数据及控制策略数据进行通信状态的切换,管理所述任一车载外部设备的启动、运行、休眠及唤醒;
11.所述外部设备驱动模块,用于驱动所述车载外部设备。
12.进一步,该系统还包括:
13.外部设备网络管理模块,其分别与mcu和外部设备相连,用于所述mcu和所述车载外部设备的网络连接;
14.用户管理模块,其与所述通信状态管理模块连接,用于管理用户对所述通信状态管理模块的请求指令。
15.进一步,所述通信状态管理模块包括:
16.第一控制单元,用于当所述车载外部设备通电或复位时,控制所述车载外部设备进入第一状态,处于所述第一状态的车载外部设备不进行数据发送或数据接收。
17.进一步,所述通信状态管理模块进一步包括:
18.第二控制单元,用于当所述通信状态管理模块接收到用户请求开启车载外部设备的通信功能指令时,控制所述车载外部设备进入第二状态,以使处于所述第二状态的车载外部设备与相应的外部设备建立数据连接,并进行数据发送或数据接收。
19.进一步,所述通信状态管理模块进一步包括:
20.第三控制单元,用于当所述通信状态管理模块接收到用户请求调用车载外部设备的休眠状态指令时,控制所述车载外部设备进入第三状态,以使处于所述第三状态的车载外部设备不进行数据发送但进行数据接收;
21.状态变更处理单元,用于在车载外部设备处于所述第三状态且所述通信状态管理模块接收到用户请求开启车载外部设备的通信功能指令时,则控制车载外部设备进入所述第二状态;以及用于处于所述第三状态的车载外部设备接收到外部设备总线休眠指令时,则控制车载外部设备进入所述第一状态。
22.进一步,所述第一控制单元包括:
23.第一状态切换单元,用于当车载外部设备进入所述第一状态时,控制所述车载外部设备进入第一子状态,以使处于所述第一子状态的车载外部设备不进行数据发送或数据接收;以及用于车载外部设备处于所述第一子状态且所述通信状态管理模块接收到用户请求开启车载外部设备的通信功能指令时,控制车载外部设备切换通信状态进入第二子状态,以使处于所述第二子状态的车载外部设备不进行数据发送但进行数据接收。
24.进一步,所述第二控制单元包括:
25.第二状态切换单元,用于当车载外部设备进入所述第二状态时,控制所述车载外部设备进入第三子状态;以及用于处于所述第三子状态的车载外部设备根据接收的用户指令和网络状态切换通信状态进入第四子状态。
26.本发明的另一方面还提供一种车载外部设备的通信状态管理方法,依靠所述的车载外部设备的通信状态管理系统进行实现,包括以下步骤:
27.步骤s1,车载外部设备处于通电或复位状态,通信状态管理模块控制所述车载外
部设备进入所述第一状态;
28.步骤s2,所述用户管理模块检测用户是否有进入运行状态的请求,当检测用户有进入运行状态的请求,则所述用户管理模块向所述通信状态管理模块发送请求开启车载外部设备的通信功能指令,所述通信状态管理模块控制所述车载外部设备进入第二状态;
29.步骤s3,所述用户管理模块检测用户是否有进入休眠状态的请求,当检测用户有进入休眠状态的请求,则所述用户管理模块向所述通信状态管理模块发送请求调用车载外部设备的休眠状态指令,所述通信状态管理模块控制所述车载外部设备进入第三状态;
30.步骤s4,当车载外部设备处于第三状态,所述通信状态管理模块检测是否收到开启车载外部设备的通信功能指令或外部设备总线休眠指令;若接收到开启车载外部设备的通信功能指令,所述通信状态管理模块控制车载外部设备进入所述第二状态;若接收到外部设备总线休眠指令,所述通信状态管理模块控制车载外部设备进入所述第一状态。
31.进一步,所述步骤s2包括:
32.当所述通信状态管理模块控制车载外部设备进入所述第一子状态,当所述通信状态管理模块接收到用户请求开启车载外部设备的通信功能指令,则控制处于第一子状态的车载外部设备切换通信状态进入所述第二子状态。
33.进一步,所述步骤s3包括:
34.当所述通信状态管理模块控制车载外部设备进入所述第三子状态,当所述通信状态管理模块根据接收的用户指令和车载外部设备的网络状态控制处于第三子状态的车载外部设备切换通信状态进入所述第四子状态。
35.进一步,所述步骤s4包括:所有车载外部设备进入所述第一状态后,所述通信状态管理模块进入后运行状态并开始计时,在预先的设定的延迟时间内,获取用户的请求;
36.若状在所述延迟时间内接收到用户发出的进入运行状态的请求,则向所述通信状态管理模块发出进入运行状态的请求指令;
37.若在所述延迟时间内没有接收到用户发出的进入运行状态的请求,则向所述通信状态管理模块发送进入关闭状态的请求指令。
38.综上,实施本发明的实施例,具有如下的有益效果:
39.本发明提供的车载外部设备的通信状态管理系统及方法,其策略简单明了,适合多种外部设备,具有极高的兼容性和软件可移植特性。定义了ecu上的车载外部设备如何遵循autosar(automotive open system architecture,汽车开放系统架构)架构的ecum的状态管理和状态切换,包括车载外部设备模块的启动,运行,休眠和唤醒流程等;使用户的非标准的车载外部设备(如,autosar外部设备或非autosar外部设备)都可以嵌入到autosar(automotive open system architecture,汽车开放系统架构)通信架构中,完成对外部设备的通信状态管理、休眠唤醒等控制。
附图说明
40.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,根据这些附图获得其他的附图仍属于本发明的范畴。
41.图1为本发明提供的车载外部设备的通信状态管理系统的结构示意图。
42.图2为本发明提供的车载外部设备的通信状态管理系统的通信状态管理模块程的结构示意图。
43.图3为本发明提供的车载外部设备的通信状态管理方法的主流程示意图。
44.图4为本发明提供的车载外部设备的通信状态管理方法的通信状态切换示意图。
具体实施方式
45.为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述。
46.如图1所示,为本发明提供的一种车载外部设备的通信状态管理系统的一个实施例的示意图。在该实施例中,所述系统包括:
47.至少一个通过ecu与车载外部设备相连的通信状态管理模块1,以及至少一个与车载外部设备相连的外部设备驱动模块2;其中:
48.通信状态管理模块1,用于获取任一车载外部设备的通信数据、控制策略数据,根据接收的用户请求指令和所述任一车载外部设备的网络状态、通信数据及控制策略数据进行通信状态的切换,管理所述任一车载外部设备的启动、运行、休眠及唤醒;负责所有外部设备的通讯状态管理,由于每个外部设备的通信能力,通信内容是不同的,其控制策略也是不同的,因此每个设备的状态机是独立运行,统一由通信状态管理模块1管理。
49.如图2所示,所述通信状态管理模块1具体包括:
50.第一控制单元11,用于当所述车载外部设备通电或复位时,控制所述车载外部设备进入第一状态,处于所述第一状态的车载外部设备不进行数据发送或数据接收;
51.第二控制单元12,用于当所述通信状态管理模块1接收到用户请求开启车载外部设备的通信功能指令时,控制所述车载外部设备进入第二状态,以使处于所述第二状态的车载外部设备与相应的外部设备建立数据连接,并进行数据发送或数据接收;
52.第三控制单元13,用于当所述通信状态管理模块1接收到用户请求调用车载外部设备的休眠状态指令时,控制所述车载外部设备进入第三状态,以使处于所述第三状态的车载外部设备不进行数据发送但进行数据接收;
53.状态变更处理单元14,用于在车载外部设备处于所述第三状态且所述通信状态管理模块1接收到用户请求开启车载外部设备的通信功能指令时,则控制车载外部设备进入所述第二状态;以及用于处于所述第三状态的车载外部设备接收到外部设备总线休眠指令时,则控制车载外部设备进入所述第一状态。
54.再具体的,所述第一控制单元11包括:第一状态切换单元111,用于当车载外部设备进入所述第一状态时,控制所述车载外部设备进入第一子状态,以使处于所述第一子状态的车载外部设备不进行数据发送或数据接收;以及用于车载外部设备处于所述第一子状态且所述通信状态管理模块1接收到用户请求开启车载外部设备的通信功能指令时,控制车载外部设备切换通信状态进入第二子状态,以使处于所述第二子状态的车载外部设备不进行数据发送但进行数据接收。
55.所述第二控制单元12包括:第二状态切换单元121,用于当车载外部设备进入所述第二状态时,控制所述车载外部设备进入第三子状态;以及用于处于所述第三子状态的车
载外部设备根据接收的用户指令和网络状态切换通信状态进入第四子状态。
56.具体一个实施例中,通信状态管理模块1控制的车载外部设备状态有三个状态,具体为都第一状态(extdev_no_communication),第二状态(extdev_full_communication),第三状态(extdev_silent_communication);这三个状态根据用户指令或网络状态的变化进行状态切换,状态的改变将会通过相应的通知函数通知上层用户,但是状态的内部变化对用户是隐藏的,即用户是不能获得内部状态和内部状态切换规则。
57.具体的,当所述车载外部设备通电或复位时,所述通信状态管理模块1控制所述车载外部设备进入第一状态,处于所述第一状态的车载外部设备不进行数据发送或数据接收;当所述通信状态管理模块1接收到用户请求开启车载外部设备的通信功能指令时,所述通信状态管理模块1控制所述车载外部设备进入第二状态,处于所述第二状态的车载外部设备与相应的外部设备建立数据连接,并进行数据发送或数据接收;当所述通信状态管理模块1接收到用户请求调用车载外部设备的休眠状态指令时,所述通信状态管理模块1控制所述车载外部设备进入第三状态,处于所述第三状态的车载外部设备不进行数据发送但进行数据接收;若车载外部设备处于所述第三状态且所述通信状态管理模块1接收到用户请求开启车载外部设备的通信功能指令,则所述通信状态管理模块1控制车载外部设备进入所述第二状态;若处于所述第三状态的车载外部设备接收到外部设备总线休眠指令,则所述通信状态管理模块1控制车载外部设备进入所述第一状态。
58.如下表描述了不同通讯状态下,车载外部设备具备的通信能力,模块包含一个或几个外部设备的状态机,这些状态机是独立运行。这些状态机直接关联相关外部设备的总线状态的管理:
[0059][0060]
再具体的,所述第一状态包括第一子状态(extdev_no_com_no_pending_request),第二子状态(extdev_no_com_request_pending);当所述通信状态管理模块1控制车载外部设备进入第一状态时,默认进入所述第一子状态,当所述通信状态管理模块1接收到用户请求开启车载外部设备的通信功能指令,则控制处于第一子状态的车载外部设备切换通信状态进入所述第二子状态;处于所述第一子状态的车载外部设备不进行数据发送或数据接收,在此内部状态下,用户调用了extdev_full_communication的状态请求后,或有唤醒指示时,外部设备管理通信状态管理模块1立刻切换进入extdev_no_com_request_pending状态;处于所述第二子状态的车载外部设备不进行数据发送但进行数据接收,每个外部设备状态机需要评估它相关的通信标准communictionallowed,如果
communictionallowed=false,则不能完成状态的切换;如果为true,则立即切换状态进入extdev_full_communication状态;如果没有有效的挂起的通信请求,将切换为extdev_no_com_no_pending_request状态。
[0061]
所述第二状态包括第三子状态(extdev_full_com_network_requested),第四子状态(extdev_full_com_ready_sleep);当所述通信状态管理模块1控制车载外部设备进入第二状态时,默认进入所述第三子状态,当所述通信状态管理模块1根据接收的用户指令和车载外部设备的网络状态控制处于第三子状态的车载外部设备切换通信状态进入所述第四子状态;
[0062]
所述第三状态没有定义其内部状态,它是通讯状态extdev_full_communication和extdev_no_communication的过度状态,上层用户不能通过指令控制网络处于这个状态。
[0063]
该系统还包括:外部设备驱动模块2,用于驱动所述车载外部设备;
[0064]
具体实施例中,所述外部设备驱动模块2按照总线通信协议不同可以对车载外部设备进行如下表的分类:
[0065][0066][0067]
具体的,还包括:分别与mcu和外部设备相连的外部设备网络管理模块3;与所述通信状态管理模块1连接的用户管理模块4;
[0068]
外部设备网络管理模块3,用于所述mcu和所述车载外部设备的网络连接,由于外部设备的多样性,通信方式也多种多样。网络管理协议常常自主开发,即使不自主开发,也不一定遵守autosar的网络管理规范,只规定了同外部设备通信状态管理模块1相关联部分的接口和配置,如下表所示,
[0069][0070][0071]
用户管理模块4,用于管理用户对所述通信状态管理模块1的请求指令。
[0072]
如图3和图4所示,本发明的另一个实施还提供一种车载外部设备的通信状态管理方法,依靠所述的车载外部设备的通信状态管理系统进行实现,具体包括以下步骤:
[0073]
步骤s1,车载外部设备处于通电或复位状态,通信状态管理模块1控制所述车载外部设备进入所述第一状态;
[0074]
步骤s2,所述用户管理模块4检测用户是否有进入运行状态的请求,当检测用户有进入运行状态的请求,则所述用户管理模块4向所述通信状态管理模块1发送请求开启车载外部设备的通信功能指令,所述通信状态管理模块1控制所述车载外部设备进入第二状态;当所述通信状态管理模块1控制车载外部设备进入所述第一子状态,当所述通信状态管理模块1接收到用户请求开启车载外部设备的通信功能指令,则控制处于第一子状态的车载外部设备切换通信状态进入所述第二子状态。
[0075]
步骤s3,所述用户管理模块4检测用户是否有进入休眠状态的请求,当检测用户有进入休眠状态的请求,则所述用户管理模块4向所述通信状态管理模块1发送请求调用车载
architecture,汽车开放系统架构)通信架构中,完成对外部设备的通信状态管理、休眠唤醒等控制。
[0084]
以上所揭露的仅为本发明一种较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1