版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
主讲老师:李锋AutoSAR
AP应用开发项目5:智能驾驶AP应用开发与算法简介任务5.2《车载计算平台技术与应用》目录任务导入AssignmentINTRO学习目标LearningobjectivesCONTENTS0102知识准备Backgroundknowledge03任务实施Assignmentimplement课堂总结Classroomsummary040605课堂小测Classroomquizz思政专栏-任务5.2-AutoSARAP应用开发东软睿驰的NeuSAR,基于AUTOSAR标准,率先实现国内“AP+CP+中间件”全栈软件平台量产。2022年,NeuSAR成为全球首家升级至AUTOSARAPR21-11版本的软件开发平台产品,推出应用开发框架。东软睿驰推动AUTOSAR标准落地,参与组织,联合产业伙伴成立AUTOSEMO,构建技术规范。AUTOSARAPR21-11创新精神:东软睿驰NeuSAR推动产业发展与创新PART01任务导入AssignmentINTRO任务导入AutoSARAP作为自动驾驶技术的一种标准化开发平台,如何在保持标准化的同时,又提供了足够的灵活性来满足不同需求?如何利用MDC开发工具链开发AutoSARAP的应用呢?AutoSARAP应用开发流程PART02学习目标Learningobjectives学习目标素质目标通过基于AUTOSARAP的Camera感知应用通信配置,锻炼学生自主学习的能力;鼓励学生在技术研发上积极探索新路径、新模式。能力目标能使用MMC进行AutoSARAP应用的通信配置[A59];能使用MDS进行AutoSARAP应用的开发[A60]。知识目标能描述AutoSARAP的应用设计和开发流程[K70];能列举AutoSARAP开发流程的典型工作[K71];能列举AutoSARAP应用设计和开发使用到的工具[K72]。PART03知识准备Backgroundknowledge一、AutoSARAP应用开发工作过程由前面的课程可知,AdaptiveAutoSAR是面向服务的架构,其面向的服务的基础就是消息总线(CM),所有的服务都是注册到消息总线上,对服务的使用也是通过消息总线进行订阅。当整个进程运行起来后,就可以在该消息总线上获取或者发布服务。基于AdaptiveAutoSAR开发方法一、AutoSARAP应用开发工作过程基于AdaptiveAutoSAR的服务化应用主要由Service、APPlication、Port、Executable、Process、Machine组成。1.服务化应用设计AdaptiveAutoSAR的服务化应用设计框架图
一、AutoSARAP应用开发工作过程Service即服务,承载业务功能视角下的逻辑功能,在AutoSARAP中,通过ServiceInterface使用Service。1.服务化应用设计(1)ServiceService一、AutoSARAP应用开发工作过程Application即应用,是承载Service的实体,可以承载多个Service。1.服务化应用设计(2)ApplicationApplication一、AutoSARAP应用开发工作过程Port即通信端口,分为提供服务的Application的PPort(ProvidePort)以及订阅服务的Application的RPort(RequirePort),整个ServiceInterface要绑定Port才能够使用。1.服务化应用设计(3)PortPort一、AutoSARAP应用开发工作过程Executable即执行,是Application的运行实体,即可执行的二进制文件。1.服务化应用设计(4)ExecutableExecutable一、AutoSARAP应用开发工作过程Process即进程,是运行时的调度实体,即最终运行的进程。1.服务化应用设计(5)ProcessProcess一、AutoSARAP应用开发工作过程Machine即物理机,是设备的所有资源集合,如MDC中的4个Mini、设备中的cpu、物理内存、IO资源等等。通常将Executable二进制执行文件部署到不同的Machine上,对应不同的Process。1.服务化应用设计(6)MachineMachine一、AutoSARAP应用开发工作过程AP应用软件设计的配置过程主要分为两部分,分别是定义软件服务和配置运行环境,两部分相互独立,互不阻塞。2.AP应用软件设计过程应用软件设计过程一、AutoSARAP应用开发工作过程首先定义好要提供的Service,然后定义这些Service的数据结构以及ServiceInterface,接着将ServiceInterface绑定到Application的Port上,最后将Application运行在Executable上,最终编译成二进制文件,发送到Machine上,关联对应的的process。2.AP应用软件设计过程(1)定义软件服务定义软件服务一、AutoSARAP应用开发工作过程配置运行环境首先需要定义Machine的资源,例如Machine中的CPU、内存、IO等,然后对Machine的网络进行定义设计,一般随着版本发布的Machine配置文件都会提供,开发者只需直接使用即可。2.AP应用软件设计过程(2)配置运行环境配置运行环境一、AutoSARAP应用开发工作过程完成定义软件服务和配置运行环境后,就可以汇合两路资源,将Process和Machine进行映射,使进程能够部署到环境中,到此各个应用本身已经是完整可应用的。2.AP应用软件设计过程(2)配置运行环境完成AP应用配置二、MMC的功能使用在AutoSARAP应用软件设计过程中,主要用到的软件就是MDCManifestConfigurator。此软件工具在《任务1.5MDC应用开发和调试》中介绍了其应用开发工作流及应用迁移的流程,接下来将进一步介绍其软件的界面介绍、功能描述等。MDC平台应用开发流程二、MMC的功能使用在Ubuntu系统中打开主目录,双击mdc_manfiset_configurator图标,启动MMC软件。1.界面介绍启动MMC软件二、MMC的功能使用启动完成后,MMC的界面布局及主要使用的区域如图。1.界面介绍界面布局二、MMC的功能使用MMC的界面布局中各区域用途如表。1.界面介绍编号区域用途①MMC透视图MMC工作界面管理,管理透视图或者对其进行重置②AUTOSARExplorer工程资源管理视图,用于显示导入的AUTOSAR工程,工程下的各个包或元素都可以树形图的方式展开③Validation显示配置过程中校验的警告、报错等信息④Properties显示工程资源管理视图中各个元素的主线,也可以进行一定的编辑二、MMC的功能使用MMC的主要功能分为三大部分:工程管理、AP应用软件配置、配置校验。2.功能描述MMC主要功能二、MMC的功能使用工程管理主要包括新建工程以及ARXML文件的新建、导入、导出。AutoSAR工程用于管理和隔离ARXML文件资源。ARXML文件只有在AutoSAR工程内才能被MMC识别并加载。AutoSAR元素只能关联当前AutoSAR工程内的其他元素。2.功能描述(1)工程管理MMC主要功能二、MMC的功能使用MMC中提供多种配置方式,其中最常用的是拖拽式配置和模块化配置。2.功能描述(2)AP应用软件配置拖拽式配置模块化配置元素目录树配置文本编辑MMC中提供的配置方式二、MMC的功能使用拖拽式配置:MMC支持AP功能组件CM和SM模块的可视化快捷配置,使有联系的配置项的关系可视化,通过简单的界面操作快速生成CM等模块的通用配置,让用户聚焦于业务逻辑实现,简化通用配置步骤。2.功能描述(2)AP应用软件配置拖拽式配置二、MMC的功能使用拖拽式配置界面各区域的用途及功能说明。2.功能描述(2)AP应用软件配置编号区域区域用途功能说明①导航栏显示当前界面所在层级,用户可单击层级名称进入对应层级。单击对应层级可返回至所需界面层级。②画布显示当前层级所在画布,通过工具栏素材对画布进行设计。工具栏素材包括当前层级可配置的元素、通信连线等,可通过三种方式在画布上添加素材:1.单击高亮目标素材,再单击画布空白处,且操作单次有效。2.选中目标素材,将其拖至画布空白处再释放。3.将鼠标悬空静止在画布空白处,当画布上显示可添加素材选择框,单击对应素材图标。③工具栏显示当前画布可用工具素材。④大纲展示拖拽式配置下的全景。二、MMC的功能使用模块化配置:基于AutoSAR规范将配置元素进行分类和集中展示,使配置典型化,有效提升开发者定位和配置AutoSAR元素的效率。AutoSAR的元素有几百个,在每次配置某一功能的时候并不需要关注那么多元素,所以MMC中对元素进行了归类,在每个Design中集中展示。2.功能描述(2)AP应用软件配置模块化配置二、MMC的功能使用模块化配置界面各模块对应功能描述说明。2.功能描述(2)AP应用软件配置模块名称描述CoreTypes数据类型CommunicationManagement通信框架,包括DDS和SOME/IP通信协议ExecutionManagement启动方式StateManagement功能组管理二、MMC的功能使用模块化配置界面各模块对应功能描述说明。2.功能描述(2)AP应用软件配置模块名称描述Log&Trace日志管理PlatformHealthManagement平台健康管理Persistency持久化功能Cryptography密钥功能TimeSynchronization时间同步功能UpdateandConfigurationManagement更新和配置管理NetworkManagement网络管理二、MMC的功能使用配置校验主要提供了两类校验分别是:Modeling校验和Schema校验。常用的校验方法是优先进行Modeling校验,处理Error(Modeling错误);再进行Schema校验,处理Warning(Schema错误)。2.功能描述(3)配置校验配置校验二、MMC的功能使用Modeling校验:基于模型的校验,可验证元素属性和元素之间关系是否符合AutoSAR规范和MDC实际业务定义的约束。校验结果呈现在Validation区域,校验结果界面提供过滤、排序、分组等功能,Modeling校验结果支持跳转到模块化配置界面。2.功能描述(3)配置校验MMC中执行Modeling校验二、MMC的功能使用①启动Modeling校验:选中工程目标>单击工具栏“modelvalidation”按钮;②过滤、排序、分组:Validation区域右上角进行配置;③跳转:双击校验结果,直接跳转到对应模块的模块化界面中,并定位到错误元素以及属性处。2.功能描述(3)配置校验MMC中执行Modeling校验二、MMC的功能使用Schema校验:Schema校验是基于文本的XSD校验,可验证ARXML格式是否有误。错误结果呈现和结果界面过滤、排序、分组操作方式参照Modeling校验。Schema校验结果支持跳转到文本编辑界面。2.功能描述(3)配置校验MMC中执行Schema校验二、MMC的功能使用①启动Schema校验:选中目标工程>单击工具栏“schamavalidation”按钮;②跳转:双击校验结果,直接跳转到对应文件文本编辑界面中,并定位到错误标签或者标签值处。2.功能描述(3)配置校验MMC中执行Schema校验三、MDS功能使用在Ubuntu系统中打开主目录,双击mdc_development_studio图标,启动MDS软件。1.界面介绍启动MDS三、MDS功能使用启动完成后,MDS的界面布局及主要使用的区域如图。1.界面介绍界面布局三、MDS功能使用MDS的界面布局及主要使用的区域用途说明。1.界面介绍编号区域用途①资源管理视图显示当前集成环境中加载的所有项目和各个项目的文件列表。②控制台视图打印各类日志信息。③编辑器编写代码或者文件之处。在菜单栏中选择“Window>Preferences>C/C++>Editor”,可以自定义代码编辑器。④大纲视图显示当前活动编辑器中所打开文件的纲要,如函数、变量等。⑤菜单栏MDS工具全菜单。⑥工具栏包含一键生成代码、编译、运行、调试、搜索等功能的快捷键三、MDS功能使用使用MDS开发MDC应用,一般流程为“创建工程->应用开发->编译->部署验证->应用调优”,在“应用开发”的Coding部分,有基于AP的开发和基于ADSF的开发两种方式。MDS可作为AUTOSARAP代码框架自动生成工具,通过MMC配置的ARXML文件导入到MDS中进行代码自动生成,其过程分为:输入、处理、输出。2.功能描述–APCodingMDS的开发流程三、MDS功能使用按照AutoSAR的模型化开发过程,先使用MMC完成AP配置,输出ARXML文件(包括应用的数据结构、通信接口、部署环境等配置信息)。2.功能描述–APCoding(1)输入AP配置三、MDS功能使用导入MDC平台提供的arxml、导入已配置App的arxml;根据ARXML对APP的配置信息,生成相应的数据结构、通信接口代码以及APP运行期的相关配置文件(如CM的通信配置),使工作聚焦于APP业务本身。2.功能描述–APCoding(2)处理代码自动生成三、MDS功能使用在工程目录下生成各级目录。generated目录:代码目录(*.cpp、*.h);manifest目录:导入的ARXML文件;outputcfg目录:运行期配置文件目录(*.json、*.xml)2.功能描述–APCoding(3)输出工程输出目录PART04Assignmentimplement任务实施任务实施:实验准备1.概述本实训任务的将基于AUTOSARAP实现将摄像头感知数据发送到Mviz中进行显示的功能,实现该功能需要在MMC中进行模块化配置,生成AutoSAR工程的ARXML文件,并通过MDS根据ARXML文件生成代码,编译运行实现功能。功能显示所需文件任务实施:实验准备2.实验环境准备(1)设备检查本次实验环境包括MDC610,电源线,安装Ubuntu20.04虚拟环境的PC机一台,见表5-2-5。每套实验环境适用于4~12名学生同时上机操作。设备名称数量备注MDC6101台所有实验组共用电源线1组所有实验组共用笔记本或台式机每组1台台式机要有无线网卡任务实施:实验准备2.实验环境准备(2)软件包准备MMC软件包:MDC_Manifest_Configurator-3.0Ubuntu20.tar.gz(若已安装则不需要)MDS软件包:MDC_Development_Studio-3.0Ubuntu20.tar.gz(若已安装则不需要)项目文件夹:5-2AutoSAR-APmmc项目文件:5-2cam_to_cos(初始化配置项目);cam_to_cos(已配置好的参考项目)mds项目文件:PLATFORM_Sample(已完成的参考项目)任务实施:实验准备2.实验环境准备(3)文档准备MDC300(12V&24V)1.0.107-T产品文档03.chm(以下称为产品文档)。产品文档一、Camera感知应用通信配置1.启动MMC在Ubuntu系统中打开主目录,打开MDC_Manifest_Configurator-Ubuntu18-1.0.107.2文件夹,双击mdc_manifest_configurator图标,启动MMC。启动MMC一、Camera感知应用通信配置1.启动MMC弹窗中设置工作区(workspace),再单击“Launch”,进入MMC首页。设置工作区一、Camera感知应用通信配置2.创建AUTOSAR工程在界面上方菜单栏中选择“File>New>AUTOSARProject”,打开“AUTOSARProject”向导。在“AUTOSARProject”窗口中设置工程名“demo”,再单击“Finish”。创建AUTOSAR工程创建完成后可在“AUTOSARExplorer”视图中查看新建工程。一、Camera感知应用通信配置3.导入ARXML在“AUTOSARExplorer”视图中,右键单击目标工程选择“Import...”,在“Import”弹窗中选择“General>FileSystem”,再单击“Next>”。选择导入文件类型一、Camera感知应用通信配置3.导入ARXML单击“Browse...”,选择主目录/5-2AUTOSAR-AP/mmc工程/5-2cam_to_cos,在文件选择框中勾选所有ARXML文件,单击“Finish”,导入ARXML。选取所有ARXML文件一、Camera感知应用通信配置4.模块化配置右键工程点击“ModularConfigurator”,进入模块化配置界面的总览界面。本任务主要专注于通信配置,所以主要关注①CoreTypes和②CommunicationManagement这两个模块。进入模块化配置界面一、Camera感知应用通信配置4.模块化配置单击“CoreTypes”模块的“Select”按钮,进入“CoreTypes”模块配置界面。(1)CoreTypes(配置基础数据类型)查看数据类型一、Camera感知应用通信配置4.模块化配置DataType中的CompuMethod和StdCppimplementationDataType分别用于配置枚举和数据类型,本任务主要关注数据类型,故只关注StdCppimplementationDataType即可,其数据类型对应的含义如下。(1)CoreTypes(配置基础数据类型)配置项含义VALUE基础数据类型TYPEREFERENCE引用类型的数据类型STRUCTURE结构体ARRAY静态数组VECTOR动态数组STRING字符串RWABUFFERMDC自定义的基于数据面的数据类型一、Camera感知应用通信配置4.模块化配置单击“CoreTypes”模块的“Select”按钮,进入“CommunicationManagement”配置通信界面。(2)CommunicationManagement(配置通信)配置通信界面一、Camera感知应用通信配置4.模块化配置各配置项对应含义如表。(2)CommunicationManagement(配置通信)配置项含义ProtInterface服务相关的配置项ServiceInterfaceDeployment服务部署的配置,可绑定DDS协议或者SOME/IP协议E2E功能安全配置Application应用、可执行文件、进程抽象的配置EthernetTopololgy网络拓扑的配置SystemDesign系统的配置MachineManifest运行环境的配置ProcessManifest进程实例的配置ServiceInstantiation服务实例的配置ServiceInstanceMapping服务实例的映射配置一、Camera感知应用通信配置4.模块化配置本任务中大部分服务的配置已经完成,需要修改的是“进程实例的配置”即ProcessManifest。配置Process配置项中的CameraInternalDataReceiveProcess和CameraMvizProcess选项。(2)CommunicationManagement(配置通信)修改内容一、Camera感知应用通信配置4.模块化配置1) CameraInternalDataReceiveProcess配置双击打开CameraInternalDataReceiveProcess配置项,拖动到界面最下面并右移配置框,找到TargetModeDeclaration选项,并将摄像头目标模式声明为Restart。(2)CommunicationManagement(配置通信)进入CameraInternalDataReceiveProcess配置项界面一、Camera感知应用通信配置4.模块化配置2) CameraMvizProcess配置双击打开CameraMvizProcess配置项,拖动到界面最下面并右移配置框,同样找到TargetModeDeclaration选项,并将摄像头目标模式声明为Shutdown。(2)CommunicationManagement(配置通信)进入CameraMvizProcess配置项一、Camera感知应用通信配置4.模块化配置配置完成后,通过键盘ctrl+s保存配置项。(3)保存配置一、Camera感知应用通信配置5.配置校验在MMC界面的“AUTOSARExporer”视图中,选中目标工程,右键点击Validate>ValidateModel选项,进行ValidateModel校验。使用ValidateModel校验工程一、Camera感知应用通信配置5.配置校验若没有出现校验错误,则证明配置成功,可直接进行下一步操作。校验无误一、Camera感知应用通信配置5.配置校验若出现错误,可通过校验错误码在“MDCManifest配置工具用户指南”中找到对应的错误信息。查看错误码一、Camera感知应用通信配置5.配置校验根据“MDCManifest配置工具用户指南”中的报错信息、可能原因、处理步骤,分析对应报错的可能原因。根据错误码修改错误二、Camera感知应用开发1.启动MDS在Ubuntu系统中打开主目录,打开MDC_Development_Studio-Ubuntu18-1.0.107.2文件夹,双击mdc_development_studio图标,启动MDS。启动MDS二、Camera感知应用开发2.导入工程新建MDC工程,并命名为cam2ros,并在工程内新建一个文件夹manifest,在manifest文件夹中右键,选择import,导入任务一中配置好的arxml文件。创建并导入工程二、Camera感知应用开发2.导入工程选择导入文件类型为FileSyste,单击Next按钮,单击Browse选择导入路径“主目录/mmc_workspace/demo”(具体路径根据任务一项目路径决定),勾选application、common、machine,并单击finish完成导入。导入ARXML配置文件二、Camera感知应用开发3.生成代码在资源管理视图ProjectExplorer中选中目标工程,单击工具栏中的图标,在控制台视图观察console视图中的日志输出,完成代码生成的返回信息如图。启动MDS二、Camera感知应用开发3.生成代码展开ProjectExplorer视图中目标工程的目录,确认已生成“generated”(生成代码)和“outputcfg”(配置文件)文件夹。生成代码二、Camera感知应用开发4.导入并修改代码到这一步,MDS已经生成了通信功能的代码,接下来需要补充业务逻辑代码和配置代码,本任务需要导入modules文件夹。需要导入和修改的内容二、Camera感知应用开发4.导入并修改代码将左侧ProjectExplorer工程管理视图中的“PLATFORM_Sample/modules/camera_sample文件夹”粘贴到本项目的modules文件夹中导入代码5.编译程序在ProjectExplorer视图中,选中目标工程。单击目标中,进行工程编译。在Console中查看构建输出目标和运行结果。若Console打印的信息中含“Buildcomplete”信息,则表示编译成功。启动MDS二、Camera感知应用开发6.编译程序在上方工具栏中,选择cam2rosConfiguration,单击设置图标,打开目标工程的远程运行配置窗口。(1)打开“RunConfigurations”运行配置窗口运行配置二、Camera感知应用开发6.编译程序单击“SearchProject...”按钮,在弹窗中选择目标工程编译生成的可执行文件“camera_mviz_sample”,并单击“OK”。(2)选择可执行程序选择可执行程序二、Camera感知应用开发6.编译程序单击“Manifest”栏下拉按钮,选择下拉框中可执行文件Host对应的配置文件“CameraMvizProcess”。(3)选择可执行文件对应的配置文件选择对应的配置文件二、Camera感知应用开发6.编译程序单击“Connection”栏中选择“RemoteHost”选项。(4)新建/选择远程连接项选择远程连接项二、Camera感知应用开发6.编译程序单击“Browse”按钮,选择远程绝对路径“/home/mdc/wks”,实现将本地MDC工程远程拷贝至MDC上。(5)选择远程绝对路径选择远程绝对路径二、Camera感知应用开发6.编译程序单击Arguments选项卡,在里面填入数值71,表示摄像头相关的话题参数。(6)配置摄像头相关话题参数配置摄像头参数二、Camera感知应用开发6.编译程序完成远程运行配置项的创建,单击“RunConfigurations”窗口右下方“ApplyandClose”,保存窗
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 八年级道德与法治《遵守规则》智慧课堂教学设计(统编版2024)
- 2026年单招统考数学真题及答案
- 挤塑板保温施工方案范本
- 2026护理核心制度考试及答案
- 矿山供电施工专项方案
- 首层混凝土隐蔽工程验收记录
- 细则雨水收集系统施工方案
- 护理文献评价查房
- 施工现场防护火药爆炸制度
- 2026年苏教版高二第二学期历史期末阶段巩固测评试卷(附答案可下载)
- 机车整备作业管理办法
- 江苏省苏州市吴江区震泽中学2025年物理高一第二学期期末学业质量监测试题含解析
- 杂物电梯安全培训课件
- DB31/T 1254-2020工程填筑用装修垃圾再生集料技术要求
- 造价咨询保密管理制度
- 植物纯露护理服务
- 2024年湖北省中考地理试卷(含答案解析)
- 张介宾的阴阳论及虚损治疗经验
- 牛津译林英语七年级下册全册语法归纳
- GB/T 6829-2024剩余电流动作保护电器的一般安全要求
- 人行天桥钢结构施工(吊装)方案
评论
0/150
提交评论