汽车嵌入式系统的开发流程汽车电子技术学习教案.pptx
《汽车嵌入式系统的开发流程汽车电子技术学习教案.pptx》由会员分享,可在线阅读,更多相关《汽车嵌入式系统的开发流程汽车电子技术学习教案.pptx(77页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、会计学1汽车嵌入式系统的开发流程汽车嵌入式系统的开发流程(lichng)汽汽车电子技术车电子技术第一页,共77页。第7章 汽车(qch)嵌入式系统的开发流程 车载嵌入式系统的开发总是车载嵌入式系统的开发总是(zn sh)把汽车嵌入式系统划分为子系统,把汽车嵌入式系统划分为子系统,如如ECU(硬件和软件硬件和软件)、传感器和执行器、传感器和执行器(硬件硬件),然后对各子系统进行测试,然后对各子系统进行测试和确认,进而集成一个完整的电子系统。和确认,进而集成一个完整的电子系统。7.1 汽车嵌入式系统汽车嵌入式系统(xtng)的开发流程的开发流程传统的开发流程传统的开发流程 普通采用的嵌入式系统的开
2、发流程大多是自发的,不成系统的。普通采用的嵌入式系统的开发流程大多是自发的,不成系统的。2.第1页/共77页第二页,共77页。l直到台架实验,控制器才真正与被控对象结合;直到台架实验,控制器才真正与被控对象结合;l单元调试阶段,软、硬件的错误往往交织在一起;单元调试阶段,软、硬件的错误往往交织在一起;l由于软件采用手工编制的方式,错误的排除比较困难;由于软件采用手工编制的方式,错误的排除比较困难;l系统系统(xtng)(xtng)仿真阶段和实施阶段脱离;仿真阶段和实施阶段脱离;l程序的可读性、可继承性、可移植性不够好。程序的可读性、可继承性、可移植性不够好。该流程的主要(zhyo)缺点2.第2
3、页/共77页第三页,共77页。传统的ECU开发(kif)过程有以下缺陷;l系统设计的错误不易发现;系统设计的错误不易发现;l软件与硬件协同调试困难软件与硬件协同调试困难(kn nn)(kn nn);l排除错误花费时间较长;排除错误花费时间较长;l模型实时性差;模型实时性差;lC C程序移植性差。程序移植性差。2.第3页/共77页第四页,共77页。模式(msh)开发流程 可视化的可视化的V模式中,过程步骤和产品如图模式中,过程步骤和产品如图5-30所示,该过程覆盖了从设计阶段的需求所示,该过程覆盖了从设计阶段的需求(xqi)分析、功能设计与实现到组件、集成的测试再到最后的所有工作。分析、功能设计
4、与实现到组件、集成的测试再到最后的所有工作。V模式各个模块的作用;模式各个模块的作用;(1).功能设计功能设计(Control Design)统一的模型,减少统一的模型,减少(jinsho)错误可能和缩短开发周期;错误可能和缩短开发周期;对系统模型进行快速而可靠验证;对系统模型进行快速而可靠验证;减少减少(jinsho)开发成本;开发成本;对系统测试,发动机、动力系统的模型能够在后续开发中重复使用。对系统测试,发动机、动力系统的模型能够在后续开发中重复使用。V模式开发过程是如模式开发过程是如图图5-31所示。开发过程为硬件和软件同时进行,最后联合所示。开发过程为硬件和软件同时进行,最后联合调试
5、,如调试,如图图5-32所示。所示。2.第4页/共77页第五页,共77页。(2)功能原型功能原型(Function Prototyping)对控制原型快速对控制原型快速(kui s)可靠地实时测试以及最优化;可靠地实时测试以及最优化;原型过程中集成了各种汽车总线;原型过程中集成了各种汽车总线;完全利用原型替代控制器;完全利用原型替代控制器;自动执行验证自动执行验证Matlab/Simulink中的模型。中的模型。(3)自动代码生成自动代码生成(Automatic Production Code Generation)减少编程时间和手写代码错误;减少编程时间和手写代码错误;模型模型(mxng)与
6、与C代码相互协调;代码相互协调;统一的编码格式;统一的编码格式;极少的错误率。极少的错误率。2.第5页/共77页第六页,共77页。(4)ECU仿真测试仿真测试(ECU Testing with Simulator)硬件循环硬件循环(xnhun)仿真测试;仿真测试;更少的原型和测试装置、更低的测试成本;更少的原型和测试装置、更低的测试成本;系统全面快速的测试;系统全面快速的测试;可靠性高、风险低。可靠性高、风险低。(5)虚拟标定虚拟标定(ECU Calibration with the Calibration system)简单直观的操作;简单直观的操作;利用利用CAN进行进行(jnxng)标定
7、和参数检测。标定和参数检测。传统开发流程和传统开发流程和V模式开发流程的特点比较见表模式开发流程的特点比较见表5-1.2.第6页/共77页第七页,共77页。7.2 汽车(qch)嵌入式系统开发的方法论汽车汽车ECU开发过程的基本特征;开发过程的基本特征;汽车嵌入式系统开发强调汽车嵌入式系统开发强调(qing dio)的是系统级的解决方案;的是系统级的解决方案;由于系统级的功能往往是在分布式实现;由于系统级的功能往往是在分布式实现;开发流程较长,因此强调开发流程较长,因此强调(qing dio)团队协同开发。团队协同开发。系统级别的开发,强调和对象的结合,带来的技术实现方法有:系统级别的开发,强
8、调和对象的结合,带来的技术实现方法有:基于对象建模;基于对象建模;基于模型驱动基于模型驱动(q dn)的控制软件开发;的控制软件开发;快速控制原型快速控制原型(RCP)硬件在环硬件在环(HIL)的仿真。的仿真。2.第7页/共77页第八页,共77页。系统功能的分布式实现带来的技术系统功能的分布式实现带来的技术(jsh)实现方法有:实现方法有:总线技术总线技术(jsh)的发展;的发展;基于总线通信和网络管理的嵌入式操作系统的引入;基于总线通信和网络管理的嵌入式操作系统的引入;AUTOSAR的提出。的提出。基于团队协作开发带来的技术实现方法基于团队协作开发带来的技术实现方法(fngf)有:有:基于模
9、型的系统开发;基于模型的系统开发;代码自动生成;代码自动生成;在线标定;在线标定;在线和离线诊断。在线和离线诊断。2.第8页/共77页第九页,共77页。汽车嵌入式系统开发方法论上特点主要体现在以下三个方面:汽车嵌入式系统开发方法论上特点主要体现在以下三个方面:技术规范体系和标准技术规范体系和标准(biozhn)(biozhn)的逐步确定。的逐步确定。开发流程的逐步统一。开发流程的逐步统一。开发理念工具化。开发理念工具化。2.第9页/共77页第十页,共77页。7.3 V模式的一般(ybn)流程 V模式一般流程有以下几部分模式一般流程有以下几部分(b fen)组成:组成:(1)第一阶段:功能需求定
10、义和控制方案设计第一阶段:功能需求定义和控制方案设计.现代方法中采用现代方法中采用(ciyng)模型方式,如信号流模型方式,如信号流图的方式图的方式(Simulink模型模型)(2)第二阶段:快速控制原型第二阶段:快速控制原型(Rapid Control Prototyping,RCP),快速实现控制系,快速实现控制系统的原型、并且包括实际系统中可能包括的各种统的原型、并且包括实际系统中可能包括的各种I/O、软件及硬件中断等实时特性。、软件及硬件中断等实时特性。(3)生产产品代码。将模型转换为产品代码是开发过程中最关键的一步。生产产品代码。将模型转换为产品代码是开发过程中最关键的一步。2.第1
11、0页/共77页第十一页,共77页。(4)第四阶段:硬件第四阶段:硬件(yn jin)在环仿真在环仿真(Hardware-in-the-Loop,HIL)(5)第五阶段:系统集成测试第五阶段:系统集成测试(csh)/标定标定 以以Matlab结合结合(jih)dSpace Targetlink工具箱为例来说明上述的具体开发步骤:工具箱为例来说明上述的具体开发步骤:步骤步骤1:用线性或非线性方程建立控制对象的理论模型;:用线性或非线性方程建立控制对象的理论模型;步骤步骤2:用:用Matlab工具箱设计一原始控制方案。这些工具包括工具箱设计一原始控制方案。这些工具包括Control System T
12、oolbox、Nonlinear Control Toolbox,Robust Control Toolbox,Opimization Toolbox.2.第11页/共77页第十二页,共77页。步骤步骤3:用:用Simulink对控制方案设计进行对控制方案设计进行(jnxng)离线仿真初步确认设计结果。离线仿真初步确认设计结果。步骤步骤4:在:在simulink中,从中,从RTI中对中对I/O参数参数(cnsh)进行设置。设置实进行设置。设置实时时I/O如图如图6-2所示。所示。步骤步骤5:自动:自动(zdng)完成目标完成目标DSP系统的实时系统的实时C代码生成、编译、链接和下载。如图代码生
13、成、编译、链接和下载。如图6-3所所示。示。步骤步骤6:用:用Control Desk试验工具软件包与实时控制器进行交互操作。如试验工具软件包与实时控制器进行交互操作。如图图6-4所示。所示。步骤步骤7:利用:利用Mlib/Mtrace从实时闭环控制系统获得数据,并将该数据回传给建模,从实时闭环控制系统获得数据,并将该数据回传给建模,实现参数的自动优化过程。实现参数的自动优化过程。上述三个步骤如上述三个步骤如图图6-1所示。所示。2.第12页/共77页第十三页,共77页。步骤步骤(bzhu)8:返回步骤:返回步骤(bzhu)1.通过实时测试,获得反馈信息。通过实时测试,获得反馈信息。以上以上(
14、yshng)Matlab结合结合dSpace Targetlink展示典型汽车展示典型汽车ECU开发流程。开发流程。2.第13页/共77页第十四页,共77页。7.2 模型(mxng)搭建与算法仿真功能设计功能设计(建模建模)功能设计,即系统逻辑结构和技术结构的确定。用户需求功能设计,即系统逻辑结构和技术结构的确定。用户需求(xqi)分析是指在系统分析是指在系统开发的早期阶段,对于需求开发的早期阶段,对于需求(xqi)和限制条件的一种结构化的处理方法。目的是从系和限制条件的一种结构化的处理方法。目的是从系统用户的角度准确地描述系统的逻辑系统结构。统用户的角度准确地描述系统的逻辑系统结构。逻辑逻辑
15、(lu j)系统结构描述的是抽象的结果,即系统和功能的抽象逻系统结构描述的是抽象的结果,即系统和功能的抽象逻辑辑(lu j)模型。如图模型。如图6-5所示。所示。逻辑系统要求可从两方面进行描述:逻辑系统要求可从两方面进行描述:l描述应该具有的系统特性;描述应该具有的系统特性;l描述不应该具有的系统特性。描述不应该具有的系统特性。2.第14页/共77页第十五页,共77页。逻辑系统要求可分为逻辑系统要求可分为(fn wi)功能性和非功能性系统要求;功能性和非功能性系统要求;逻辑系统要求是用参与开发过程的工程学科的语言来表达的。图形化标志,逻辑系统要求是用参与开发过程的工程学科的语言来表达的。图形化
16、标志,适合适合(shh)于基于模型的逻辑系统的描述。比如结构框图和状态自动机。于基于模型的逻辑系统的描述。比如结构框图和状态自动机。为了实现功能控制要求为了实现功能控制要求(yoqi)抽象化描述,就是建立一个数学模抽象化描述,就是建立一个数学模型。图型。图6-6所示的各个具体的功能模型可以由结构图来表示。方框表示所示的各个具体的功能模型可以由结构图来表示。方框表示转换环节,可分为开环转换环节,可分为开环/闭环控制器模型、执行器模型、被控对象模型、闭环控制器模型、执行器模型、被控对象模型、设定点发生器和传感器模型、驾驶员、运行环境。设定点发生器和传感器模型、驾驶员、运行环境。2.第15页/共77
17、页第十六页,共77页。闭环控制任务就是通过检测控制变量闭环控制任务就是通过检测控制变量X,然后被控变量,然后被控变量X与参考变量与参考变量W相比较。根据比较结果,调整变量相比较。根据比较结果,调整变量X使其接近参考变量使其接近参考变量W,闭环控制的目,闭环控制的目的是是控制变量的是是控制变量X的值接近参考变量的值接近参考变量W,尽管存在由于干扰变量,尽管存在由于干扰变量Z所导致所导致(dozh)的干扰情况。的干扰情况。相应的开环控制任务是一个系统的一个或多个输入变量影响某个输出相应的开环控制任务是一个系统的一个或多个输入变量影响某个输出变量使其符合系统设计的特征变量使其符合系统设计的特征(tz
18、hng)的过程。的过程。基于模型化的功能设计有助于了解系统的功能,从而尽可能完整且无矛盾地描述系统功基于模型化的功能设计有助于了解系统的功能,从而尽可能完整且无矛盾地描述系统功能,并且在仿真模拟测试能,并且在仿真模拟测试(csh)、功能校正和优化中体现更大的灵活性和便利性。、功能校正和优化中体现更大的灵活性和便利性。2.第16页/共77页第十七页,共77页。技术系统结构必须考虑各种制约因素,如技术的和经济的制约,组织结构和技术系统结构必须考虑各种制约因素,如技术的和经济的制约,组织结构和制造技术的约束。通过制造技术的约束。通过(tnggu)对逻辑系统结构分析和技术系统结构描述确定对逻辑系统结构
19、分析和技术系统结构描述确定技术系统结构,如图技术系统结构,如图6-7所示。所示。图图6-8给出了一个典型的开环、闭环汽车控制系统的技术给出了一个典型的开环、闭环汽车控制系统的技术(jsh)体系结体系结构。当确定开环和闭环控制系统的技术构。当确定开环和闭环控制系统的技术(jsh)系统结构时,必须明确设定系统结构时,必须明确设定点发生器、传感器、执行器、点发生器、传感器、执行器、ECU网络的具体实现方法,并在具体的技术网络的具体实现方法,并在具体的技术(jsh)系统结构上实现系统的逻辑体系功能。系统结构上实现系统的逻辑体系功能。随着技术系统结构的全部确定随着技术系统结构的全部确定(qudng),接
20、下来就是组件和子系统的实现,主,接下来就是组件和子系统的实现,主要分为硬件组件的设计实现和软件组件的设计实现。要分为硬件组件的设计实现和软件组件的设计实现。软件开发是从软件需求分析开始,首先进行软件体系结构的分析和确定。软件开发是从软件需求分析开始,首先进行软件体系结构的分析和确定。2.第17页/共77页第十八页,共77页。快速控制原型(算法(sun f)仿真)快速控制原型,即控制系统的快速功能测试原型,是通过一定的技术手段,在短快速控制原型,即控制系统的快速功能测试原型,是通过一定的技术手段,在短时间内开发与控制器产品功能一致的测试用功能原型装置时间内开发与控制器产品功能一致的测试用功能原型
21、装置(zhungzh),通过它的实物,通过它的实物实验来检测和修改设计。实验来检测和修改设计。采用先进的控制系统建模工具进行建模,并生成代码,用其他控制器采用先进的控制系统建模工具进行建模,并生成代码,用其他控制器(PC,compact PC,单片机单片机)临时临时(ln sh)代替将要开发的实际控制器,快速对代替将要开发的实际控制器,快速对控制算法进行验证和测试,在设计阶段发现问题并解决问题。如图控制算法进行验证和测试,在设计阶段发现问题并解决问题。如图6-9所示。所示。开发流程:建立离线仿真模型,进行离线仿真;其次,在离线仿真通过后加上开发流程:建立离线仿真模型,进行离线仿真;其次,在离线
22、仿真通过后加上I/O接口,接口,修改为实时仿真模型;再次,为目标修改为实时仿真模型;再次,为目标ECU生成目标代码,并转换为可执行代码。最生成目标代码,并转换为可执行代码。最后,下载到实时内核进行实时仿真。如后,下载到实时内核进行实时仿真。如图图6-10所示。所示。2.第18页/共77页第十九页,共77页。以以Matlab为例,与实物的为例,与实物的I/O接口是通过接口是通过Simulink中的中的Real-Time Windows Target模块库提供模块库提供(tgng)I/O接口模块实现的。接口模块实现的。旁路旁路(pn l)技术技术 通过将快速原型硬件系统与所要控制的实际设备通过将快
23、速原型硬件系统与所要控制的实际设备(shbi)相连,可以反相连,可以反复研究使用不同传感器及驱动机构时系统的性能特征。而且。利用旁路复研究使用不同传感器及驱动机构时系统的性能特征。而且。利用旁路(Bypass)技术(见图技术(见图6-11)将原型电控单元或控制器集成到开发过程中,)将原型电控单元或控制器集成到开发过程中,从而逐步完成从原型控制器到产品控制器的顺利转换。从而逐步完成从原型控制器到产品控制器的顺利转换。2.第19页/共77页第二十页,共77页。旁路技术是指原有的旁路技术是指原有的ECU依然依然(yrn)起着主要作用,如原有的起着主要作用,如原有的ECU必须提供经过有效必须提供经过有
24、效性验证的系统的基本函数,运行所有的传感器和执行器,以及支持到实验系统的旁路接口。性验证的系统的基本函数,运行所有的传感器和执行器,以及支持到实验系统的旁路接口。已有函数依然已有函数依然(yrn)在在ECU中计算,但按照以下方式进行修正:中计算,但按照以下方式进行修正:输入信号由原有输入信号由原有ECU通过通过(tnggu)旁路接口进行传递,并由旁路接口进行传递,并由ECU通过通过(tnggu)一个控制流接口触发旁路函数的计算。当原有的一个控制流接口触发旁路函数的计算。当原有的ECU接收到旁路输出接收到旁路输出信号和检测其拟真性后决定是否采用新输出值或转接到内部替代值。信号和检测其拟真性后决定
25、是否采用新输出值或转接到内部替代值。2.第20页/共77页第二十一页,共77页。常用的两种旁路技术常用的两种旁路技术(jsh)工具:工具:ETAS公司公司(n s)的的INTECRIO(如图(如图6-12所示)和所示)和dSpace公司公司(n s)的的MicroAutoBox(如图(如图6-13所示)。所示)。2.第21页/共77页第二十二页,共77页。7.3 自动(zdng)代码生成 相比传统相比传统(chuntng)的手工编码方式,自动代码生成有明显的优势,两者的对比如表的手工编码方式,自动代码生成有明显的优势,两者的对比如表6-1所所示。典型的自动代码生成工具包括示。典型的自动代码生成
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 汽车 嵌入式 系统 开发 流程 电子技术 学习 教案
限制150内