Android的SOTA技术已经相当成熟,点击应用商店中应用旁的更新按钮即可实现,读者在自己的手机上已操作不下百遍,当前不少车机、仪表的系统基于Android实现,针对Android平台的APP应用、主题、皮肤,实现路径类似于手机的应用商城,云端建立版本仓库,用户在车机软件商店点击安装后,车端从TSP下载安装包(apk),由车机或仪表执行安装或卸载。
基于AP AutoSAR 的SOA实现
Autosar CP架构下,所有应用都是静态配置的,一旦软件编译完成就不可更改,其调用的周期也是确定。而在Autosar AP架构下,一切都是OS中的进程,应用是动态运行的,何时调用、进程生存周期、资源占用及进程结束等都由系统动态管理,好比你手机上的App何时打开、运行后其会调用的资源及何时关闭都是动态进行的。应用们通过ARA(Autosar Run-time for Adaptive)进行通讯,可支持或扩展对SOME/IP、TSN、DDS等SOA通讯技术的应用。
在AP平台的服务中,UCM负责安全地更新,安装,删除和保留软件记录。类似Linux中的dpkg或YUM等软件包管理系统,可以更新或修改Adaptive Platform上的软件。
UCM实现SOTA功能的业务流程如下图所示,其中包含如下几个重要的模块。
UCM Master:为UCM提供服务接口的客户端,它从云端或诊断工具接收、验证、解析软件包,并将软件包传输至UCM或诊断应用程序进行后续激活、回滚等处理。
UCM:为与UCM Master处于同一网络中的UCM服务实例。
OTA Client:建立云端和 UCM Master 之间的通信,以传输增量包的信息。
车辆状态管理器:从多个车端ECU收集状态,并计算相应的安全状态,根据车辆包中的安全策略,在发生变化时通知UCM Master。如果不满足安全策略,UCM Master可采取相关措施,如通知用户当前不满足前置条件,同时推迟、暂停或取消更新。
说了这么多,和SOTA又有什么关系呢?
近日,在CNCF举办的云原生会议上,报道了某OEM打造的车云协同案例,通过KubeEdge这一轻量化的框架,将汽车作为节点接入云端,由云端动态管理节点上的服务。