原创 FPGA技术在汽车电子中的应用

2007-5-22 13:57 2161 4 4 分类: FPGA/CPLD

因为现场可编程门阵列(FPGA)技术具有自定义逻辑功能和高可靠性的特点,所以,工程师已将FPGA技术融入测试系统,解决汽车电子设计与测试的困难,同时满足低成本、系统可扩展性和复杂的测试环境要求。本文将探讨FPGA相关技术在汽车电子中的应用。

FPGA技术的应用领域

FPGA(Field Programmable Gate Array),是PAL、GAL、PLD等可编程器件进一步发展的产物,其逻辑功能由内部规则排列的逻辑单元阵列完成。逻辑单元阵列内部包括可配置逻辑模块、输入输出模块和内部连线(Interconnect)三个部分。工程师可通过软件编程实现FPGA内部的逻辑模块和I/O模块的重新配置,以实现自定义的逻辑。

FPGA技术有很多优势,包括自定义I/O硬件定时和同步、高度可靠性、数字信号处理和分析等。这些优势为快速增长的汽车电子测试技术提供了灵活的低成本解决方案。基于FPGA技术的汽车电子应用主要包括车载数据采集和对电子控制单元(ECU)的硬件在环(HIL)仿真。

1) 车载数据采集

车载数据采集系统(IVDAS)作为最常见的汽车电子测试应用之一,主要用于记录和分析汽车内的多种传感器的信号,同时对测试系统的可靠性、便携性和开发性等具有较高的要求。车载应用涉及的技术指标包括采样率、信号调理、处理和分析等。例如,采样率的范围从GPS数据记录的15Hz到碰撞试验的200kHz不等,由于FPGA可以直接连接到数字和模拟I/O,并可对各通道定义不同的采样率和触发。所以,基于FPGA技术的系统可以同时解决这些车载测试应用,避免定制硬件或多个测试系统的需要。即单个FPGA平台既可用于低速、高精度GPS或温度记录;又可通过快速编程实现用于有高采样率要求的碰撞试验;也可将不同采样率以并行方式共存于同一个测量应用中,比如,在配置FPGA实现10Hz温度采集的同时进行50kHz的振动测试;并可实现任何I/O之间的同步,比如,实现CAN总线数据和数字或模拟I/O信号间纳秒级的同步测量。没有FPGA技术,则很难实现单个系统同时满足这些不同的车载数据采集的需求。

应用FPGA技术,还可对任何传感器信号进行高级信号处理和分析。在很多信号处理系统中,底层的信号预处理算法要处理大量的数据,对处理速度要求很高,但算法相对简单,便可用FPGA进行编程实现。此外,可很方便地在FPGA上实现对所采集的信号作数字滤波运算、快速傅立叶变换(FFT)、加窗等多种信号处理和分析。传感器级信号处理和分析功能将使FPGA技术更适合于车载数据采集的应用。

2) ECU的硬件在环仿真

硬件在环仿真作为设计流程中重要的组成部分,是对虚拟运行环境中的设备进行非常逼真的实际I/O的模拟。其最显著的优点是可以对实际情况进行模拟,而不会产生实际危险。您可以在真实世界中不能实现的极端条件下对控制装置进行测试-在理论上汽车可以达到的最高行驶速度下进行测试。功能强大的高逼真度硬件在环实时仿真不仅通过缩短开发周期加快了产品上市时间,还由于测试期间无需使用实际硬件而降低了设备成本以及相关的维护成本。ECU是用于汽车发动机和传动系控制的电子装置,它接收传动速度、曲轴和凸轮轴速度以及油门位置等信号,对此信息进行处理后,以产生用于控制发动机的信号和传动系参数。作为汽车最核心的部件之一,ECU设计中任何一个微小的差错都会导致车毁人亡。这使得硬件在环仿真成为了在最终运用之前对ECU进行测试的标准方法。

一个典型的硬件在环系统(见图1)包括用于引擎模型仿真的控制器,该控制器运行在实时环境下并仿真引擎上的各种动态特性;I/O模块用来接收ECU的输出信号并将经过引擎仿真后的信号反馈给ECU,使用FPGA技术可以创建自定义的I/O来满足仿真条件下对各种信号的需求,例如用于爆震、火花、发动机位置传感器,燃油喷射器以及歧管压力的同步信号,和开关、温度、脚踏板、油门和汽车行驶速度等异步信号;此外还包括测试数据的记录和测试步骤等。为了构成一个完整的系统,还需要一台主机运行操作界面,并配合相应的测试管理软件和后续数据分析软件。


点击看大图
图1 一个典型的硬件在环系统的构成

由于硬件在环测试往往要求系统在极高的速度下运行,多个输入/输出设备之间的精确定时和同步就显得极为重要。例如,您可以通过FPGA的I/O向控制器输出一个可变磁阻传感器信号,并确保控制器在适当的时间和正确的电流下打开和关闭燃油喷射器。与传统的定制系统相比,基于FPGA技术的系统在实现精确且同步的波形生成和获取方面具有明显的优点,它可以实现多个I/O在高速下进行同步,并快速完成信号数据与输入/输出信息间的转换。

除了实现对ECU的硬件在环仿真,FPGA还可应用于对ECU的快速原型设计中,从硬件层面验证控制算法和模型的效果,同时FPGA的并行性允许将多个快速控制循环集成在同一个系统中。例如,Drivven公司应用FPGA的可重复配置性能,实现了对Yamaha YZF-R6发动机控制系统的原型设计,而避免了在设计过程中购买多个定制硬件的需要,从而降低了成本。

图形化FPGA编程

FPGA技术有很多优点,比如可自定义逻辑、高可靠性等,可广泛应用于车载测试和ECU的设计流程中。但工程师在对FPGA进行编程时,往往需要掌握硬件设计语言如VHDL之类的知识。而图形化开发工具,比如National Instruments (NI)的高效图形化开发环境LabVIEW,则是专为需要建立灵活的可扩展性测试测量和控制应用系统的工程师和科学家设计的,以满足他们以最小的成本、最快的速度开发系统的需求。

LabVIEW直观的图形化开发特性,可使工程师把更多的精力集中在功能开发上,而不是代码撰写上,进而大幅缩短开发时间和成本。LabVIEW又是一个开放性的软件平台,对于一些特定的应用,提供多种工具包和模块来提升和加速系统开发。比如,LabVIEW FPGA模块,工程师就无须硬件描述语言和硬件设计相关专业知识,便可在WINDOWS操作系统上,通过图形化开发自定义的FPGA逻辑代码并下载到FPGA硬件目标,来实现创建自定义硬件。如图2所示,使用LabVIEW FPGA实现CAN数据和数字或模拟信号间纳秒级的同步测量。当测试要求改变时,可通过下载新的代码到FPGA,而无需新的定制硬件。同时,提供VHDL语言接口,为方便工程师直接使用现成的VHDL代码。LabVIEW Real-Time模块则用于针对实时硬件目标开发时间确定性的应用程序。此外,LabVIEW附加的仿真接口工具包实现了LabVIEW和MathWorks Simulink(r) 软件(运用该软件您可以将您的算法模型从Simulink(r)导入LabVIEW中)之间的无缝连接。总之,图形化开发软件LabVIEW将极大地提高工程师的工作效率。


点击看大图

图2 用NI LabVIEW实现FPGA图形化编程


使用LabVIEW FPGA软件和可重复配置硬件技术,可创建高性能的控制和采集系统。下面举两个例子,有关基于FPGA技术的硬件平台在汽车电子中的应用。

用户解决方案1:便携式车载数据采集系统

车载数据采集的信号类型包括温度信号(热电偶、RTD)、声音和振动信号(带IEPE激励的加速度传感器或麦克风)、压力和载荷信号(应变计或称重传感器)、位置信号(LVDT或线性电位计)、速度信号(编码器)、控制总线信号(CAN,J1350,ODBII),以及视频信号等。这些信号都是用于汽车性能的评价。

德国Goepel Electronic公司在面临上述信号类型、环境条件复杂、有大量数据存储要求,用于车载测试分析和在线诊断的便携式测试设备时,选择了NI CompactRIO嵌入式控制系统,LabVIEW FPGA模块和LabVIEW Real-Time模块。在很短的时间内开发了CARLOS (in-car logging system),加上CompactRIO平台的低成本解决方案,从而大大节省了预算。


点击看大图
图3 Goepel CARLOS车载数据采集系统

CompactRIO硬件平台(见图3)是一个基于FPGA技术的嵌入式系统。FPGA芯片是CompactRIO体系结构的核心,直接和相应的车载模块相连。车载模块可直接和车用传感器、执行器和网络相联,并提供信号调理、隔离和汽车总线。该平台包含一个嵌入式实时处理器,可用于独立工作、确定性控制、车载数据记录和分析等。CompactRIO具有小型、坚固的机械封装、可承受50g冲击和-40℃到70℃工作温度范围等特点,提供双电压输入(9-35V),可直接从车上电池取电。这些都使CARLOS适用于复杂的车载测试环境和有限的测试空间。

该系统已成功用于实验室、风洞和试验场上的汽车测试,可长时间记录数据。另外,可通过选择相应的车载模块和内置的应用程序,实现不同测试的需求。比如为了实现冬季或夏季试验中发动机热管理系统的评价,只需选择温度等信号对应的车载模块和已开发好的LabVIEW应用程序即可;同时,该程序提供报警、用LabVIEW报告生成工具包实现数据写入EXCEL表格、或直接写进数据库、历史数据查看等功能。此外,基于FPGA的CompcatRIO开放试架构允许用户扩展系统或进一步开发自定义的测试系统。

用户解决方案2:用于BMW V12汽油发动机的硬件在环仿真

MicroNova公司在基于NI LabVIEW FPGA模块和NI PXI-7831R可重复配置I/O模块上,开发了一种全新的、灵活的可编程引擎硬件在环仿真系统(见图4),该系统能够直接对BMW 12缸概念车的汽油喷射器进行仿真,这是世界上第一种能够对这种情况进行仿真的系统。


点击看大图
图4 MicroNova V12汽油发动机的硬件在环仿真系统

该引擎硬件在环仿真系统可以与曲轴角度同步记录所有的汽油喷射时间和点火角度,并将这些数据提供给控制器作为仿真输入。同时通过模拟、数字以及脉宽调制器接口采集输入信号并输出相应的变量数据。而碰撞信号的仿真则是通过多达六个独立传感器,根据用户定义的碰撞函数,产生基于转速的输出信号。

NI的PXI平台为该系统提供了完整的硬件模块的选择,同时PXI高级的定时和触发特性保证了汽车信号间同步采样达到微秒级的触发精度。而基于PXI平台的可重复配置I/O模块更是保证了高精度、灵活的采集引擎高速传感信号。因为使用了LabVIEW开发FPGA,可以很方便的改变相应的组合逻辑,并针对不同气缸数目的各种引擎应用不同的软件配置,大大节省了开发成本、提升了性能。同时,使用了LabVIEW仿真接口工具包,可以很快速的将在MathWorks Simulink(r)下开发的仿真模型整合到LabVIEW的平台中,节省了大量的开发时间。总之,得益于PXI平台和基于FPGA的可重复配置I/O组件的模块化特性和灵活性,MicroNova公司在很短的时间内便开发出了高性能的ECU硬件在环仿真系统,成功应用于BMW 12缸的最新概念车型的验证。

本文小结

FPGA技术带来了汽车电子测试技术的创新,凭借开发基于FPGA硬件的单个系统可以解决不同的汽车设计和测试应用,而无需多个定制的测试设备。基于LabVIEW的图形化FPGA编程则进一步缩短了开发时间。NI CompactRIO和基于PXI的可重复配置I/O模块都是基于FPGA的硬件平台,用户不仅可以开发适用于涉及汽车总线、不同信号类型的车载测试应用,还可用于汽车ECU设计流程中的快速原型验证和硬件在环仿真测试。

作者: 徐赟 技术市场工程师 benny.xu@ni.com

梁锐 应用工程师 rui.liang@ni.com

朱君 市场部经理 june.zhu@ni.com

NI中国分公司



文章评论0条评论)

登录后参与讨论
我要评论
0
4
关闭 站长推荐上一条 /2 下一条