CN114489675A - 自动驾驶系统的处理方法、装置和电子设备 - Google Patents
自动驾驶系统的处理方法、装置和电子设备 Download PDFInfo
- Publication number
- CN114489675A CN114489675A CN202210116670.4A CN202210116670A CN114489675A CN 114489675 A CN114489675 A CN 114489675A CN 202210116670 A CN202210116670 A CN 202210116670A CN 114489675 A CN114489675 A CN 114489675A
- Authority
- CN
- China
- Prior art keywords
- code
- file
- model
- automatic driving
- driving system
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/44—Encoding
- G06F8/447—Target code generation
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明提供了一种自动驾驶系统的处理方法、装置和电子设备。其中,该方法应用于自动驾驶开发系统,该方法包括:基于模型设计工具生成自动驾驶系统模型的配置文件;基于代码模板和代码生成引擎将配置文件转化为代码文件;其中,代码文件包括清单文件、应用初始代码、接口代码、消息代码、编译文件、中间件适配代码;基于获取的应用算法代码和代码文件生成自动驾驶系统模型的二进制文件;基于清单文件和二进制文件加载自动驾驶系统的节点。可以精简自动驾驶开发系统,降低学习成本;模型文件格式简洁,解析更加简单高效;降低用户的学习成本,提高研发速度;可以支持算法模块无感切换任意第三方中间件,减少对中间件的绑定。
Description
技术领域
本发明涉及自动驾驶的技术领域,尤其是涉及一种自动驾驶系统的处理方法、装置和电子设备。
背景技术
AUTOSAR为汽车电子软件系统开发定义的通用技术方法,即AUTOSAR方法论。AUTOSAR方法论将设计和开发流程划分为:系统配置、ECU(Electronic Control Unit,电子控制单元)设计与配置阶段、代码生成阶段。系统配置产出的结果即为模型。AUTOSAR方法论是一种基于模型的开发方式,基于模型的开发方式是一种围绕模型搭建展开的一种项目开发方法。这种方法可以避免繁琐的代码编写和调试过程,可以极大的提高项目开发效率。
然而,现有的AUTOSAR方法论具有下述缺点:Autosar标准定义复杂,文档冗长,生态封闭,学习成本高。Autosar定义了能够描述模型的标准文件格式ARXML,ARXML底层依赖的XML文件格式复杂,重复冗余,解析速度慢,解析逻辑复杂。Autosar的供应商选择少,工具链产品成熟度不足,价格昂贵,代码封闭,改进缓慢。算法和Autosar平台绑定,不支持无感更换第三方中间件。
发明内容
有鉴于此,本发明的目的在于提供一种自动驾驶系统的处理方法、装置和电子设备,以精简系统,降低学习成本;模型文件格式简洁,解析更加简单高效;降低用户的学习成本,提高研发速度;可以支持算法模块无感切换任意第三方中间件,减少对中间件的绑定。
第一方面,本发明实施例提供了一种自动驾驶系统的处理方法,应用于自动驾驶开发系统,自动驾驶开发系统包括模型设计工具、代码模板、代码生成引擎,方法包括:基于模型设计工具生成自动驾驶系统模型的配置文件;基于代码模板和代码生成引擎将配置文件转化为代码文件;其中,代码文件包括清单文件、应用初始代码、接口代码、消息代码、编译文件、中间件适配代码;基于获取的应用算法代码和代码文件生成自动驾驶系统模型的二进制文件;基于清单文件和二进制文件加载自动驾驶系统的节点。
在本发明的较佳实施例中,上述基于模型设计工具生成自动驾驶系统模型的配置文件的步骤,包括:响应针对于模型设计工具的图形化界面的操作,确定自动驾驶系统模型的配置文件中的消息模型文件、节点模型文件和节点拓扑模型文件。
在本发明的较佳实施例中,上述针对于模型设计工具的模型设计工具的图形化界面的操作,包括:自动驾驶系统模型的导入操作或导出操作。
在本发明的较佳实施例中,上述模型设计工具用于定义消息类型,新建、拖拽节点,新建、连接端口,指定端口的类型,指定节点的进程拓扑关系和机器拓扑关系。
在本发明的较佳实施例中,上述自动驾驶系统模型包括:数据类型模型和软件节点模型;数据类型模型包括描述结构体元素的模型、描述枚举元素的模型和描述匿名数据类型的模型;软件节点模型包括描述周期性调度函数或线程式入口函数的运行体模型,以及描述输入端口、输出端口、客户服务端口的通信端口模型。
在本发明的较佳实施例中,上述基于代码模板和代码生成引擎将配置文件转化为代码文件的步骤,包括:基于代码模板和代码生成引擎将配置文件转化为应用初始代码、接口代码和中间件适配代码;其中,接口代码为二进制隔离接口代码。
在本发明的较佳实施例中,上述基于获取的应用算法代码和代码文件生成自动驾驶系统模型的二进制文件的步骤,包括:获取应用算法代码;基于应用算法代码、中间件适配代码和接口代码生成自动驾驶系统模型的二进制文件。
第二方面,本发明实施例还提供一种自动驾驶系统的处理装置,应用于自动驾驶开发系统,自动驾驶开发系统包括模型设计工具、代码模板、代码生成引擎,装置包括:配置文件生成模块,用于基于模型设计工具生成自动驾驶系统模型的配置文件;代码文件转化模块,用于基于代码模板和代码生成引擎将配置文件转化为代码文件;其中,代码文件包括清单文件、应用初始代码、接口代码、消息代码、编译文件、中间件适配代码;二进制文件生成模块,用于基于获取的应用算法代码和代码文件生成自动驾驶系统模型的二进制文件;自动驾驶系统部署模块,用于基于清单文件和二进制文件加载自动驾驶系统的节点。
第三方面,本发明实施例还提供一种电子设备,包括处理器和存储器,存储器存储有能够被处理器执行的计算机可执行指令,处理器执行计算机可执行指令以实现上述自动驾驶系统的处理方法的步骤。
第四方面,本发明实施例还提供一种计算机可读存储介质,计算机可读存储介质存储有计算机可执行指令,计算机可执行指令在被处理器调用和执行时,计算机可执行指令促使处理器实现上述自动驾驶系统的处理方法的步骤。
本发明实施例带来了以下有益效果:
本发明实施例提供的一种自动驾驶系统的处理方法、装置和电子设备,可以精简自动驾驶开发系统,降低学习成本;模型文件格式简洁,解析更加简单高效;降低用户的学习成本,提高研发速度;可以支持算法模块无感切换任意第三方中间件,减少对中间件的绑定。
本公开的其他特征和优点将在随后的说明书中阐述,或者,部分特征和优点可以从说明书推知或毫无疑义地确定,或者通过实施本公开的上述技术即可得知。
为使本公开的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种模型的示意图;
图2为本发明实施例提供的一种自动驾驶系统的处理方法的流程图;
图3为本发明实施例提供的另一种自动驾驶系统的处理方法的流程图;
图4为本发明实施例提供的一种自动驾驶开发系统Xway OS的示意图;
图5为本发明实施例提供的一种模型元素的示意图;
图6为本发明实施例提供的一种自动驾驶系统的处理装置的结构示意图;
图7为本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
AUTOSAR为汽车电子软件系统开发定义的通用技术方法,即AUTOSAR方法论。AUTOSAR方法论将设计和开发流程划分为:系统配置、ECU设计与配置阶段、代码生成阶段,系统配置产出的结果即为模型。
AUTOSAR方法论是一种基于模型的开发方式,基于模型的开发方式是一种围绕模型搭建展开的一种项目开发方法。这种方法可以避免繁琐的代码编写和调试过程,可以极大的提高项目开发效率。Autosar的ARXML文件。为了支持不同整车厂和零部件厂商的工作交接,并支持代码生成程序的开发,Autosar定义了能够描述模型的标准文件格式ARXML。
定义、生成ARXML文件的过程即为建模,参见图1所示的一种模型的示意图,图1描述了一个简单的模型,包含两个软件组件(SWC),软件组件内分别有两个运行体(runnable1和runnable2),且两个软件组件的数据发送端口、数据接收端口由一个连接相连,客户端口、服务端口也由一个连接相连。
然而,现有的AUTOSAR方法论具有下述缺点:Autosar标准定义复杂,文档冗长,生态封闭,学习成本高。Autosar定义了能够描述模型的标准文件格式ARXML,ARXML底层依赖的XML文件格式复杂,重复冗余,解析速度慢,解析逻辑复杂。Autosar的供应商选择少,工具链产品成熟度不足,价格昂贵,代码封闭,改进缓慢。算法和Autosar平台绑定,不支持无感更换第三方中间件。
基于此,本发明实施例提供的一种自动驾驶系统的处理方法、装置和电子设备,定义了独立于Autosar的模型开发标准,比Autosar概念精简,学习成本低。采用新的模型文件格式Xway json,格式简洁,解析简单高效。配套自研开发环境和代码生成工具链,自主产权,灵活度高。采用二进制隔离接口隔离纯算法代码,引入代码模板技术,支持无感切换任意第三方中间件。
为便于对本实施例进行理解,首先对本发明实施例所公开的一种自动驾驶系统的处理方法进行详细介绍。
实施例一:
本发明实施例提供一种自动驾驶系统的处理方法,该方法可以应用于自动驾驶开发系统,自动驾驶开发系统包括模型设计工具、代码模板、代码生成引擎,参见图2所示的一种自动驾驶系统的处理方法的流程图,该自动驾驶系统的处理方法包括如下步骤:
步骤S202,基于模型设计工具生成自动驾驶系统模型的配置文件。
模型设计工具也可以称为Xway模型设计工具,支持消息类型的定义,节点的新建、拖拽,端口的新建、连接,端口的类型指定,节点的进程拓扑关系,和机器拓扑关系。用户或者架构师可以通过模型设计工具生成自动驾驶系统模型的配置文件Xway json。
步骤S204,基于代码模板和代码生成引擎将配置文件转化为代码文件;其中,代码文件包括清单文件、应用初始代码、接口代码、消息代码、编译文件、中间件适配代码。
Xway代码模板是一种特定格式的文件,用来表示生成代码的样式,可以设计和准备好接口代码和中间件适配代码的结构、样式,通过模板语言描述存放在模板文件。并且基于代码模板和代码生成引擎将配置文件转化为代码文件。
步骤S206,基于获取的应用算法代码和代码文件生成自动驾驶系统模型的二进制文件。
可以将中间件适配代码、接口代码与应用算法库结合,编译生成二进制文件(库文件或可执行文件),作为一个中间件节点。
步骤S208,基于清单文件和二进制文件加载自动驾驶系统的节点。
可以通过代码文件中的清单文件的信息加载执行各节点,完成系统的集成、部署。
本发明实施例提供的一种自动驾驶系统的处理方法,可以精简自动驾驶开发系统,降低学习成本;模型文件格式简洁,解析更加简单高效;降低用户的学习成本,提高研发速度;可以支持算法模块无感切换任意第三方中间件,减少对中间件的绑定。
实施例二:
本发明实施例提供另一种自动驾驶系统的处理方法,该方法在上述实施例提供的方法的基础上执行;参见图3所示的另一种自动驾驶系统的处理方法的流程图,该自动驾驶系统的处理方法包括如下步骤:
步骤S302,响应针对于模型设计工具的图形化界面的操作,确定自动驾驶系统模型的配置文件中的消息模型文件、节点模型文件和节点拓扑模型文件。
图4所示的一种自动驾驶开发系统Xway OS的示意图,其中,Xway Middleware/Bluemoon是自主开发的通信中间件。
Xway模型设计用于定义消息类型,新建、拖拽节点,新建、连接端口,指定端口的类型,指定节点的进程拓扑关系和机器拓扑关系。图形界面支持Xway json模型的导入和导出,即针对于模型设计工具的模型设计工具的图形化界面的操作,包括:自动驾驶系统模型的导入操作或导出操作。
用户或者架构师通过图形化界面定义配置模型,包括消息模型、节点模型和节点拓扑模型,如节点名,输入输出的消息类型,所需的调度方式,产出模型文件Xway json。
此外,模型文件也可以用类似的json、yaml、xml、txt等格式来描述。
具体地,上述自动驾驶系统模型包括:数据类型模型和软件节点模型;数据类型模型包括描述结构体元素的模型、描述枚举元素的模型和描述匿名数据类型的模型;软件节点模型包括描述周期性调度函数或线程式入口函数的运行体模型,以及描述输入端口、输出端口、客户服务端口的通信端口模型。
参见图5所示的一种模型元素的示意图,DATA-TYPE:数据类型模型。Xway OS对数据类型定义标准的抽象模型,以供定义通信接口时使用。可以通过模型生成Xway OS的原生数据类型定义,即C++结构体。
如图5所示,DATA-TYPE的子级类型:STRUCT-ELEMENT是描述结构体元素的模型;ENUM-ELEMENT是描述枚举元素的模型;ANONYMOUS-DATA-TYPE是描述匿名数据类型的模型。
如图5所示,SW-COMPONENT:描述软件节点的模型。软件节点可以作为运行体、通信端口的实例化集合。
如图5所示,SW-COMPONENT的子级类型:PERIOD-RUNNABLE等是运行体模型,描述周期性调度函数或线程式入口函数;INPUT-PORT、RPC-SERVER-PORT等是通信端口模型,描述输入、输出端口,或客户-服务端口。
步骤S304,基于代码模板和代码生成引擎将配置文件转化为代码文件;其中,代码文件包括清单文件、应用初始代码、接口代码、消息代码、编译文件、中间件适配代码。
具体地,可以基于代码模板和代码生成引擎将配置文件转化为应用初始代码、接口代码和中间件适配代码;其中,接口代码为二进制隔离接口代码。
如4图所示,Xway代码模板是一种特定格式的文件,用来表示生成代码的样式。首先设计和准备好接口代码和中间件适配代码的结构、样式,通过模板语言描述,存放在模板文件。Xway代码生成引擎程序解析、校验、合并Xway json文件,将得到的模型配置通过模板描述的代码样式生成为一系列代码文件。通过Xway代码模板和Xway代码生成引擎,将Xwayjson模型文件生成为算法和中间件之间的接口代码,和中间件适配代码,同时基于模型的包结构生成目录结构和编译系统。接口代码包括没有中间件依赖的纯算法应用初始代码,二进制隔离接口代码,消息类型定义代码;中间件适配代码是当前中间件对接口的实现,包括中间件节点的建立,消息的收发,调度接口的实现。其中消息收发部分还包括中间件消息定义文件,消息序列化、反序列化代码,消息转换等。
步骤S306,基于获取的应用算法代码和代码文件生成自动驾驶系统模型的二进制文件。
具体地,可以获取应用算法代码;基于应用算法代码、中间件适配代码和接口代码生成自动驾驶系统模型的二进制文件。如图4所示,用户可以基于应用初始代码,自由开发自己的算法逻辑,实现算法节点。产出算法库文件(动态库或静态库或源代码)。可以将中间件适配代码、接口代码与应用算法库结合,编译生成二进制文件(库文件或可执行文件),作为一个中间件节点。
步骤S308,基于清单文件和二进制文件加载自动驾驶系统的节点。
如图4所示,基于节点拓扑模型,通过代码生成引擎产生Manifest清单文件,中间件执行器通过Manifest文件的信息加载执行各节点,完成系统的集成、部署。Manifest清单文件是用来描述各节点部署运行时的拓扑结构的配置文件,比如节点的加载顺序、所属进程关系,中间件执行器在运行时实时地读取Manifest清单文件的内容。
本发明实施例提供的上述方法,说明了Xway json模型文件格式的定义,可以基于json格式,描述消息模型、节点模型和节点拓扑模型。说明了图形化设计自动驾驶系统模型的方式,并支持Xway json模型文件的导入、导出,将代码结构和样式描述成代码模板。
本发明实施例提供的上述方法,还可以使用代码生成引擎用于模型的读取、模板的解释、代码的生成、目录的生成。可以将算法代码和中间件代码通过二进制隔离接口解耦,切换下层中间件对上层算法无感。可以定义并开放接口形式和中间件适配模板,支持切换任意第三方中间件。节点的拓扑可以通过Manifest清单文件描述,中间件执行器在运行时动态读取并完成节点拓扑的加载运行,完成系统的集成、部署。
本发明实施例提供的上述方法,定义了独立于Autosar的模型标准,包括类型模型定义、节点模型定义、拓扑模型定义,比Autosar概念精简,学习成本低。采用新的模型文件格式Xway json,相比Autosar的ARXML,格式简洁,解析简单高效。配套自研的图形模型设计工具、开发环境和代码生成工具链,自主产权,灵活度高,用户学习成本低,研发速度快。引入了二进制隔离接口技术来隔离纯算法代码。结合代码模板技术,可以支持算法模块无感切换任意第三方中间件,减少对中间件的绑定。
该方式中,定义了独立于Autosar的模型标准,包括类型模型定义、节点模型定义、拓扑模型定义,比Autosar概念精简,学习成本低。采用新的模型文件格式Xway json,相比Autosar的ARXML,格式简洁,解析简单高效。配套自研的图形模型设计工具、开发环境和代码生成工具链,自主产权,灵活度高,用户学习成本低,研发速度快。引入了二进制隔离接口技术来隔离纯算法代码。结合代码模板技术,可以支持算法模块无感切换任意第三方中间件,减少对中间件的绑定。
实施例三:
对应于上述方法实施例,本发明实施例提供了一种自动驾驶系统的处理装置,应用于自动驾驶开发系统,自动驾驶开发系统包括模型设计工具、代码模板、代码生成引擎,如图6所示的一种自动驾驶系统的处理装置的结构示意图,该自动驾驶系统的处理装置包括:
配置文件生成模块61,用于基于模型设计工具生成自动驾驶系统模型的配置文件;
代码文件转化模块62,用于基于代码模板和代码生成引擎将配置文件转化为代码文件;其中,代码文件包括清单文件、应用初始代码、接口代码、消息代码、编译文件、中间件适配代码;
二进制文件生成模块63,用于基于获取的应用算法代码和代码文件生成自动驾驶系统模型的二进制文件;
自动驾驶系统部署模块64,用于基于清单文件和二进制文件加载自动驾驶系统的节点。
本发明实施例提供的一种自动驾驶系统的处理装置,可以精简自动驾驶开发系统,降低学习成本;模型文件格式简洁,解析更加简单高效;降低用户的学习成本,提高研发速度;可以支持算法模块无感切换任意第三方中间件,减少对中间件的绑定。
上述配置文件生成模块,用于响应针对于模型设计工具的图形化界面的操作,确定自动驾驶系统模型的配置文件中的消息模型文件、节点模型文件和节点拓扑模型文件。
上述针对于模型设计工具的模型设计工具的图形化界面的操作,包括:自动驾驶系统模型的导入操作或导出操作。
上述模型设计工具用于定义消息类型,新建、拖拽节点,新建、连接端口,指定端口的类型,指定节点的进程拓扑关系和机器拓扑关系。
上述自动驾驶系统模型包括:数据类型模型和软件节点模型;数据类型模型包括描述结构体元素的模型、描述枚举元素的模型和描述匿名数据类型的模型;软件节点模型包括描述周期性调度函数或线程式入口函数的运行体模型,以及描述输入端口、输出端口、客户服务端口的通信端口模型。
上述代码文件转化模块,用于基于代码模板和代码生成引擎将配置文件转化为应用初始代码、接口代码和中间件适配代码;其中,接口代码为二进制隔离接口代码。
上述二进制文件生成模块,用于获取应用算法代码;基于应用算法代码、中间件适配代码和接口代码生成自动驾驶系统模型的二进制文件。
本发明实施例提供的自动驾驶系统的处理装置,与上述实施例提供的自动驾驶系统的处理装方法具有相同的技术特征,所以也能解决相同的技术问题,达到相同的技术效果。
实施例四:
本发明实施例还提供了一种电子设备,用于运行上述自动驾驶系统的处理方法;参见图7所示的一种电子设备的结构示意图,该电子设备包括存储器100和处理器101,其中,存储器100用于存储一条或多条计算机指令,一条或多条计算机指令被处理器101执行,以实现上述自动驾驶系统的处理方法。
进一步地,图7所示的电子设备还包括总线102和通信接口103,处理器101、通信接口103和存储器100通过总线102连接。
其中,存储器100可能包含高速随机存取存储器(RAM,Random Access Memory),也可能还包括非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。通过至少一个通信接口103(可以是有线或者无线)实现该系统网元与至少一个其他网元之间的通信连接,可以使用互联网,广域网,本地网,城域网等。总线102可以是ISA总线、PCI总线或EISA总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,图7中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
处理器101可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器101中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器101可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(DigitalSignal Processor,简称DSP)、专用集成电路(Application Specific IntegratedCircuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器100,处理器101读取存储器100中的信息,结合其硬件完成前述实施例的方法的步骤。
本发明实施例还提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令在被处理器调用和执行时,计算机可执行指令促使处理器实现上述自动驾驶系统的处理方法,具体实现可参见方法实施例,在此不再赘述。
本发明实施例所提供的自动驾驶系统的处理方法、装置和电子设备的计算机程序产品,包括存储了程序代码的计算机可读存储介质,程序代码包括的指令可用于执行前面方法实施例中的方法,具体实现可参见方法实施例,在此不再赘述。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置和/或电子设备的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
Claims (10)
1.一种自动驾驶系统的处理方法,其特征在于,应用于自动驾驶开发系统,所述自动驾驶开发系统包括模型设计工具、代码模板、代码生成引擎,所述方法包括:
基于所述模型设计工具生成自动驾驶系统模型的配置文件;
基于所述代码模板和所述代码生成引擎将所述配置文件转化为代码文件;其中,所述代码文件包括清单文件、应用初始代码、接口代码、消息代码、编译文件、中间件适配代码;
基于获取的应用算法代码和所述代码文件生成所述自动驾驶系统模型的二进制文件;
基于所述清单文件和所述二进制文件加载所述自动驾驶系统的节点。
2.根据权利要求1所述的方法,其特征在于,基于所述模型设计工具生成自动驾驶系统模型的配置文件的步骤,包括:
响应针对于所述模型设计工具的图形化界面的操作,确定所述自动驾驶系统模型的配置文件中的消息模型文件、节点模型文件和节点拓扑模型文件。
3.根据权利要求2所述的方法,其特征在于,针对于所述模型设计工具的所述模型设计工具的图形化界面的操作,包括:自动驾驶系统模型的导入操作或导出操作。
4.根据权利要求1所述的方法,其特征在于,所述模型设计工具用于定义消息类型,新建、拖拽节点,新建、连接端口,指定端口的类型,指定节点的进程拓扑关系和机器拓扑关系。
5.根据权利要求1所述的方法,其特征在于,所述自动驾驶系统模型包括:数据类型模型和软件节点模型;所述数据类型模型包括描述结构体元素的模型、描述枚举元素的模型和描述匿名数据类型的模型;所述软件节点模型包括描述周期性调度函数或线程式入口函数的运行体模型,以及描述输入端口、输出端口、客户服务端口的通信端口模型。
6.根据权利要求1所述的方法,其特征在于,基于所述代码模板和所述代码生成引擎将所述配置文件转化为代码文件的步骤,包括:
基于所述代码模板和所述代码生成引擎将所述配置文件转化为应用初始代码、接口代码和中间件适配代码;其中,所述接口代码为二进制隔离接口代码。
7.根据权利要求1所述的方法,其特征在于,基于获取的应用算法代码和所述代码文件生成所述自动驾驶系统模型的二进制文件的步骤,包括:
获取应用算法代码;
基于所述应用算法代码、所述中间件适配代码和所述接口代码生成所述自动驾驶系统模型的二进制文件。
8.一种自动驾驶系统的处理装置,其特征在于,应用于自动驾驶开发系统,所述自动驾驶开发系统包括模型设计工具、代码模板、代码生成引擎,所述装置包括:
配置文件生成模块,用于基于所述模型设计工具生成自动驾驶系统模型的配置文件;
代码文件转化模块,用于基于所述代码模板和所述代码生成引擎将所述配置文件转化为代码文件;其中,所述代码文件包括清单文件、应用初始代码、接口代码、消息代码、编译文件、中间件适配代码;
二进制文件生成模块,用于基于获取的应用算法代码和所述代码文件生成所述自动驾驶系统模型的二进制文件;
自动驾驶系统部署模块,用于基于所述清单文件和所述二进制文件加载所述自动驾驶系统的节点。
9.一种电子设备,其特征在于,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的计算机可执行指令,所述处理器执行所述计算机可执行指令以实现权利要求1至7任一项所述的自动驾驶系统的处理方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令在被处理器调用和执行时,计算机可执行指令促使处理器实现权利要求1至7任一项所述的自动驾驶系统的处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210116670.4A CN114489675A (zh) | 2022-02-07 | 2022-02-07 | 自动驾驶系统的处理方法、装置和电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210116670.4A CN114489675A (zh) | 2022-02-07 | 2022-02-07 | 自动驾驶系统的处理方法、装置和电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114489675A true CN114489675A (zh) | 2022-05-13 |
Family
ID=81477780
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210116670.4A Pending CN114489675A (zh) | 2022-02-07 | 2022-02-07 | 自动驾驶系统的处理方法、装置和电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114489675A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115167831A (zh) * | 2022-07-20 | 2022-10-11 | 天津所托瑞安汽车科技有限公司 | 基于autosar的软件集成方法、设备和使用方法 |
-
2022
- 2022-02-07 CN CN202210116670.4A patent/CN114489675A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115167831A (zh) * | 2022-07-20 | 2022-10-11 | 天津所托瑞安汽车科技有限公司 | 基于autosar的软件集成方法、设备和使用方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114115857B (zh) | 一种机器学习模型自动化生产线构建方法及系统 | |
CN111399853B (zh) | 机器学习模型与自定义算子的模板化部署方法 | |
US10579349B2 (en) | Verification of a dataflow representation of a program through static type-checking | |
CN106648662B (zh) | 基于工程造价计算描述语言bcl的报表生成装置及生成方法 | |
JP2011060277A (ja) | 統合環境生成器 | |
CN109976723B (zh) | 一种算法开发平台、算法开发方法及计算机可读存储介质 | |
CN110908651A (zh) | Rpa业务流程的图形化构建方法及系统 | |
CN114116134A (zh) | 智能合约部署和执行方法、设备及存储介质 | |
CN114489675A (zh) | 自动驾驶系统的处理方法、装置和电子设备 | |
CN110347588B (zh) | 软件验证方法、装置、计算机设备和存储介质 | |
TW202403541A (zh) | 第三方行動應用程式中引入小程序的系統、方法、裝置及介質 | |
CN111399816A (zh) | 汽车ecu程序文件生成方法及系统、存储介质及终端 | |
CN117034821B (zh) | 用于芯片设计前端仿真验证的回归验证方法及介质 | |
JP3562435B2 (ja) | コンポーネントの自動生成装置 | |
CN114296883B (zh) | 一种轻载虚拟化网络实验行为仿真器构建和调度方法 | |
CN114721647B (zh) | 一种基于无代码应用开发的面向对象编程方法 | |
CN111367512B (zh) | 一种应用程序开发中创建Android库模块依赖关系的方法及装置 | |
CN114579141A (zh) | require框架转化为VUE框架的方法及装置 | |
JP7059757B2 (ja) | Api処理方法、端末、api処理プログラム | |
Toeppe et al. | Automatic code generation requirements for production automotive powertrain applications | |
JP2015161983A (ja) | ソースコード生成装置 | |
US6035112A (en) | Cell library generating method and apparatus | |
Dai et al. | Automatic test data generation for TTCN-3 using CTE | |
CN117234466B (zh) | 企业管理软件开发方法、系统、设备及存储介质 | |
Pan et al. | Automated Design Space Exploration for Resource Allocation in Software-Defined Vehicles |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |