车载分布式服务调用系统及方法技术方案

技术编号:38436592 阅读:9 留言:0更新日期:2023-08-11 14:21
本发明专利技术公开了车载分布式服务调用系统及方法,上述调用系统包括多个控制器,多个控制器中每个控制器包括至少一个应用程序、至少一个服务程序以及服务管理模块,第一应用程序用于接收服务调用指令,第一服务管理模块用于在第一编号与第一控制器的编号不相同的情况下,向第二控制器的第二服务程序发送服务调用指令,第二服务管理模块在第二编号与第二控制器编号相同的情况下,向第二服务程序发送第二回调指令,将第二服务程序的服务执行结果返回给第一控制器。本发明专利技术可以实现不同控制器之间分布式服务调用。布式服务调用。布式服务调用。

【技术实现步骤摘要】
车载分布式服务调用系统及方法


[0001]本专利技术涉及车载通信
,特别是涉及车载分布式服务调用系统及方法。

技术介绍

[0002]车载控制器的处理器包括微处理器(Micro Control Unit,MCU)和片上系统(System on Chip,SOC),MCU系统用于车身、底盘和动力等实时性要求比较高的产品,SOC系统用于仪表、辅助驾驶等计算能力要求高的产品,在车载控制器的软件设计中,基本都会遵循面向服务的设计理念,面向服务的架构是一个组件模型,它将应用程序的不同功能单元(称为服务)进行拆分,并通过这些服务之间定义良好的接口和协议联系起来,从而实现应用程序与应用程序。
[0003]现有技术中,在面向服务的设计中,在MCU系统和SOC系统中,仅仅实现了基于以太网SOMEIP协议的服务调用,由于SOC系统和MCU系统之间存在差异性,没有实现跨应用的分布式服务调用。

技术实现思路

[0004]本专利技术的主要目的在于提供车载分布式服务调用系统及方法,旨在解决现有技术中由于SOC系统和MCU系统之间存在差异性,没有实现跨应用的分布式服务调用的技术问题。
[0005]为了实现上述目的,本专利技术第一方面提供了车载分布式服务调用系统,包括多个控制器,多个控制器中每个控制器包括至少一个应用程序、至少一个服务程序以及服务管理模块,其中:第一应用程序,用于接收服务调用指令,第一应用程序为第一控制器的多个应用程序中任一应用程序,第一控制器为多个控制器中任一控制器;第一服务管理模块,用于根据服务调用指令向第一服务程序发送查找指令,查找指令用于在第一服务信息表中查找第一编号,第一服务管理模块为第一控制器的服务管理模块,第一服务程序为第一控制器的多个服务程序中任一服务程序,第一服务信息表用于存储第一服务程序所注册的服务接口信息,第一编号为根据第一服务程序的接口信息查找到的控制器编号;第一服务管理模块,还用于在第一编号与第一控制器的编号相同的情况下,向第一服务程序发送第一回调指令,第一回调指令用于第一服务程序执行服务回调函数;第一服务管理模块,还用于将第一服务程序的服务执行结果返回给第一控制器;第一服务管理模块,还用于在第一编号与第一控制器的编号不相同的情况下,向第二控制器的第二服务程序发送服务调用指令,第二控制器为多个控制器中除第一控制器之外任一控制器,第二服务程序为第二控制器的多个服务程序中任一服务程序;第二服务管理模块,用于根据服务调用指令在第二服务信息表中查找第二编号,第二服务管理模块为第二控制器的服务管理模块,第二服务信息表用于存储第二服务程序所注册的服务接口信息,第二编号为根据第二服务程序的接口信息查找到的控制器编号;第二服务管理模块,还用于在第二编号与第二控制器编号相同的情况下,向第二服务程序发送第二回调指令,第二回调指令用于第二服务程序执行服务回调
函数;第二服务管理模块,还用于将第二服务程序的服务执行结果返回给第一控制器。
[0006]可选的,第一服务程序包括服务注册接口,其中:在第一服务程序接收服务注册指令的情况下,服务注册指令用于通过服务注册接口将服务接口注册到第一服务管理模块;第一服务管理模块,还用于根据服务注册指令将服务注册接口中的接口信息写入第一服务信息表,并将服务注册接口中的接口信息广播到第二控制器。
[0007]可选的,第一应用程序包括服务查找接口、服务启动接口和服务调用接口,其中:在第一应用程序接收服务注册指令的情况下,服务注册指令用于通过服务查找接口通过第一服务管理模块查找目标服务程序;第一服务管理模块,还用于通过服务启动接口启动目标服务程序;第一服务管理模块,还用于通过服务调用接口调用目标服务程序的服务注册接口。
[0008]可选的,第一应用程序,还用于接收服务查找指令,第一服务管理模块还用于根据服务查找指令在第一服务信息表中查找服务查找接口中的接口信息;在第一服务信息表中没有查找到服务查找接口中的接口信息的情况下,将服务查找接口中的接口信息广播到第二控制器。
[0009]可选的,在第一控制器发生重启的情况下,第一服务管理模块还用于向第二控制器发送更新指令,更新指令用于更新第二控制器的服务信息;第二服务管理模块,还用于将第二控制器的更新结果返回给第一控制器。
[0010]可选的,服务接口信息包括服务名称、接口名称、服务编号、接口编号、回调函数地址和控制器编号。
[0011]可选的,第一控制器为MCU控制器或SOC控制器。
[0012]可选的,第二控制器为MCU控制器或SOC控制器。
[0013]可选的,第一控制器和第二控制器通过CAN协议、以太网协议、串口协议和SPI协议多种通信方式中任一通信方式进行连接。
[0014]本申请实施例第二方面提供了一种车载分布式服务调用方法,方法应用于包括多个控制器的车载分布式服务调用系统,多个控制器中每个控制器包括至少一个应用程序、至少一个服务程序以及服务管理模块,其中:第一应用程序接收服务调用指令,第一应用程序为第一控制器的多个应用程序中任一应用程序,第一控制器为多个控制器中任一控制器;第一服务管理模块根据服务调用指令向第一服务程序发送查找指令,查找指令用于在第一服务信息表中查找第一编号,第一服务管理模块为第一控制器的服务管理模块,第一服务程序为第一控制器的多个服务程序中任一服务程序,第一服务信息表用于存储第一服务程序所注册的服务接口信息,第一编号为根据第一服务程序的接口信息查找到的控制器编号;第一服务管理模块在第一编号与第一控制器的编号相同的情况下,向第一服务程序发送第一回调指令,第一回调指令用于第一服务程序执行服务回调函数;第一服务管理模块将第一服务程序的服务执行结果返回给第一控制器;第一服务管理模块在第一编号与第一控制器的编号不相同的情况下,向第二控制器的第二服务程序发送服务调用指令,第二控制器为多个控制器中除第一控制器之外任一控制器,第二服务程序为第二控制器的多个服务程序中任一服务程序;第二服务管理模块根据服务调用指令在第二服务信息表中查找第二编号,第二服务管理模块为第二控制器的服务管理模块,第二服务信息表用于存储第二服务程序所注册的服务接口信息,第二编号为根据第二服务程序的接口信息查找到的控
制器编号;第二服务管理模块在第二编号与第二控制器编号相同的情况下,向第二服务程序发送第二回调指令,第二回调指令用于第二服务程序执行服务回调函数;第二服务管理模块将第二服务程序的服务执行结果返回给第一控制器。
[0015]由上可见,本申请提供了一种车载分布式服务调用系统,包括多个控制器,多个控制器中每个控制器包括至少一个应用程序、至少一个服务程序以及服务管理模块,其中:第一应用程序,用于接收服务调用指令,第一应用程序为第一控制器的多个应用程序中任一应用程序,第一控制器为多个控制器中任一控制器;第一服务管理模块,用于根据服务调用指令向第一服务程序发送查找指令,查找指令用于在第一服务信息表中查找第一编号,第一服务管理模块为第一控制器的服务管理模块,第一服务程序为第一控制器的多个服务程本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种车载分布式服务调用系统,其特征在于,包括多个控制器,所述多个控制器中每个所述控制器包括至少一个应用程序、至少一个服务程序以及服务管理模块,其中:第一应用程序,用于接收服务调用指令,所述第一应用程序为第一控制器的多个应用程序中任一应用程序,所述第一控制器为所述多个控制器中任一控制器;第一服务管理模块,用于根据所述服务调用指令向第一服务程序发送查找指令,所述查找指令用于在第一服务信息表中查找第一编号,所述第一服务管理模块为所述第一控制器的服务管理模块,所述第一服务程序为所述第一控制器的多个服务程序中任一服务程序,所述第一服务信息表用于存储第一服务程序所注册的服务接口信息,所述第一编号为根据所述第一服务程序的接口信息查找到的控制器编号;所述第一服务管理模块,还用于在所述第一编号与所述第一控制器的编号相同的情况下,向所述第一服务程序发送第一回调指令,所述第一回调指令用于所述第一服务程序执行服务回调函数;所述第一服务管理模块,还用于将所述第一服务程序的服务执行结果返回给所述第一控制器;所述第一服务管理模块,还用于在所述第一编号与所述第一控制器的编号不相同的情况下,向第二控制器的第二服务程序发送所述服务调用指令,所述第二控制器为所述多个控制器中除所述第一控制器之外任一控制器,所述第二服务程序为所述第二控制器的多个服务程序中任一服务程序;第二服务管理模块,用于根据所述服务调用指令在第二服务信息表中查找第二编号,所述第二服务管理模块为所述第二控制器的服务管理模块,所述第二服务信息表用于存储第二服务程序所注册的服务接口信息,所述第二编号为根据所述第二服务程序的接口信息查找到的控制器编号;所述第二服务管理模块,还用于在所述第二编号与所述第二控制器编号相同的情况下,向所述第二服务程序发送第二回调指令,所述第二回调指令用于所述第二服务程序执行服务回调函数;所述第二服务管理模块,还用于将所述第二服务程序的服务执行结果返回给所述第一控制器。2.根据权利要求1所述的车载分布式服务调用系统,其特征在于,所述第一服务程序包括服务注册接口,其中:在所述第一服务程序接收服务注册指令的情况下,所述服务注册指令用于通过所述服务注册接口将服务接口注册到所述第一服务管理模块;所述第一服务管理模块,还用于根据所述服务注册指令将服务注册接口中的接口信息写入所述第一服务信息表,并将所述服务注册接口中的所述接口信息广播到所述第二控制器。3.根据权利要求2所述的车载分布式服务调用系统,其特征在于,所述第一应用程序包括服务查找接口、服务启动接口和服务调用接口,其中:在所述第一应用程序接收服务注册指令的情况下,所述服务注册指令用于通过所述服务查找接口通过所述第一服务管理模块查找目标服务程序;所述第一服务管理模块,还用于通过所述服务启动接口启动所述目标服务程序;
所述第一服务管理模块,还用于通过所述服务调用接口调用所述目标服务程序的所述服务注册接口。4.根据权利要求3所述的车载分布式服务调用系统,其特征在于,所述第一应用程序,还用于接收服务查找指令,所述第一服务管理模块还用于根据所述服务查找指令在所述第一服务信息表中查找所述服务...

【专利技术属性】
技术研发人员:吴有坤王若溪
申请(专利权)人:深圳市佳合丰汽车电子科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1