汽车嵌入式计算平台的软硬件体系结构
0 2023-01-28

电子设备在汽车中的广泛应用被认为是汽车技术发展进程中的一次革命。随着汽车电子技术的发展和汽车控制单元的增加,汽车电子技术正朝着集中化、智能化、网络化和模块化方向发展。车内CAN/LIN总线网络的使用使得车内各个控制单元的数据可以共享,从而使在汽车嵌入式计算平台上采用多变量多目标的综合协调控制成为可能。另一方面,网络化拓展了汽车的服务领域,为汽车的移动通信、移动办公、娱乐、导航定位和远程诊断与维修提供了技术基础,逐步形成了汽车、家庭、社会一体化的互动体系。汽车嵌入式计算平台在该一体化体系中担当重要角色。

本文介绍了车载嵌入式计算平台,它为完成汽车辅助驾驶和安全监控、远程诊断和维修、在线/离线导航定位、娱乐、与家庭互动等各项功能提供了很好的软硬件平台。下面将从汽车/家庭/社会一体化体系结构、计算平台的硬件体系、软件体系三个方面进行说明。

1、汽车/家庭/社会一体化体系结构

汽车嵌入式计算平台为实现各种功能服务提供了良好的软硬件平台。车外网络和车内网络结合构成了汽车/家庭/社会一体化的互动体系结构。该体系结构示意图见图1,车内计算网络示意图见图2。

基于AVR单片机的实用车载空调控制器电路

在图1中,交通管理中心、汽车服务中心、互联网服务中心和娱乐服务中心等共同组成汽车远程服务平台,家庭/办公室和汽车组成汽车/家庭互动平台体系。其主要提供三类服务:

(1)汽车集成服务。

主要指汽车远程诊断服务和汽车最优控制方案服务。汽车计算平台通过CAN/LIN总线读取电子控制模块(ECM)诊断产生的故障代码,然后通过汽车网关利用无线通信技术发送至最近的汽车服务中心。汽车服务中心分析故障代码形成诊断方案并以服务的形式发送到汽车嵌入式网关,经过协议解析后再发送到汽车嵌入式计算平台,最后通过人机接口显示给驾驶员。汽车制造商同时向汽车提供下载最佳汽车控制方案的服务,以适合汽车在不同的行驶条件下运行。这些服务主要由汽车远程服务平台或汽车制造商提供。

(2)导航定位服务。

运行在车载嵌入式平台上的应用层软件接收GPS接收仪发送的数据,借助车载的地理信息系统(电子地图)实现导航。此外应用层软件还可以把GPS接收的数据发送到远程汽车服务平台或第三方服务提供商,再由他们把导航信息以服务的形式发送给汽车嵌入式平台。这些服务对准确性和及时性要求比较高。如何准确高效地传递这些信息成为决定这类服务质量的关键。

(3) 个人/娱乐信息服务。

汽车/家庭互动平台体系使人们可以在驾驶汽车的过程中了解家中的情况,将汽车-家庭连为一体。车载信息处理(TelematICs) 系统的地位日益突出。它通过无线通信技术将安全保密信息或娱乐信息以服务(Service)的方式传递至汽车。

2、汽车嵌入式计算平台的硬件体系结构

硬件平台的设计必须根据其要完成的功能来确定。本项目是将汽车嵌入式网关集成到计算平台中,因此,计算平台要完成的功能主要为:与远程服务中心的无线通信功能;导航功能;音视频播放的功能;通过CAN/LIN总线访问车内电子控制模块的功能等。基于32位ARM内核的EP9315处理器具有良好的计算能力和丰富的外围接口,在对其做了适当的外围扩展后设计出如图3所示的汽车嵌入式计算平台。

基于AVR单片机的实用车载空调控制器电路

EP9315是高度集成的片上系统处理器。它拥有200MHz ARM920T处理器及支持Linux、Windows CE和其他许多嵌入式操作系统的存储器管理单元(MMU)。EP9315内置一个高性能1/10/100 Mbps以太网媒体存取控制器(MAC)及外部接口,可连接SPI、I2S音频、Raster/LCD、IDE存储外设、小键盘和触摸屏等。该器件还集成了运行速度为12Mbps的三端口USB 2.0全速主机和3个UART。PCMCIA接口的无线网卡提供远程网络的访问功能,可以实现对远程服务中心网络服务器的访问。IDE接口的电子硬盘用来存放地理信息系统,为导航软件提供电子地图。GPS接收仪通过串口与EP9315处理器相连,提供实时的车辆地理位置信息。触摸屏是人机输入界面,用来完成各种用户信息的设置。LCD显示屏和扬声器是人机输出界面,可以播放MPEG4视频或提示语音报警信息。CAN/LIN总线接口可以挂接汽车内的 CAN/LIN总线,提供对车内CAN/LIN总线的访问。基于上述硬件平台所设计的软件能很好地完成计算平台所要完成的各项功能。

3、汽车嵌入式计算平台的软件体系结构

软件平台采用嵌入式Linux设计。上文已对软件部分要实现的功能进行了一定的描述。其中导航任务是一个实时任务,而Linux不具有实时功能,因此需要改进Linux,使其支持实时任务。基于实时Linux的软件体系结构如图4所示。

基于AVR单片机的实用车载空调控制器电路

系统上电后,首先启动LINux操作系统,然后启动QT引擎,再启动 QT主程序。在LCD显示屏上显示各个应用程序的选择按钮,通过触摸屏按下相应的按钮,即会启动相应的应用程序。下面介绍主要应用程序的执行流程。

(1)导航应用程序。

导航程序启动后,用户通过触摸屏输入旅程的起始地点和目的地点。导航软件把该起始地点和目的地点发送到导航服务中心(本项目中为无线局域网中一台计算机),并且每隔一定时间调用导航API从串口1接收GPS接收仪发送的当前车辆的实时地理位置数据,再调用通信API,通过无线网卡把该地理位置数据发送到导航服务中心。导航服务中心根据接收到的旅程起始地点和目的地点计算出最优行使路径,并且每接收到车辆位置信息时,都计算出当前车辆所在的位置,把包含当前车辆位置和应该行使路径的小范围的位置图像发送到车辆。车上的导航软件把接收到的图像在LCD上显示出来,通过该图像司机就可以了解车辆当前的位置和下一步要行使的路线。

(2)诊断应用软件。

诊断服务软件启动后,该软件调用诊断API读取连接在CAN/LIN总线上的各个ECU的故障代码,然后再调用通信API把这些代码发送到汽车服务中心(本项目中是与导航服务中心相同的计算机)。汽车服务中心分析故障代码,确定出汽车的具体故障情况,把最终结果通过无线网发送到汽车嵌入式平台。汽车嵌入式平台通过无线网卡接收这些数据,诊断服务软件读取该数据,并在LCD上显示。

(3)汽车/家庭互动应用软件。

当在汽车嵌入式平台上运行家庭/汽车互动系统软件时,该软件在LCD上显示家庭中的各个电器及其状态。当用户通过触摸屏发出改变某个电器状态的命令时,汽车/家庭互动软件调用家庭API函数把该命令发送到家庭网关(由社会第三方服务公司提供)。在家庭网关上运行着实现 OSGI协议的软件,该软件可以完成所接收到的命令,并把执行的结果发送到汽车嵌入式平台。

(4)安全监控软件。

CCD摄像头把汽车行驶车道的图像输入到DSP处理系统,DSP处理系统对图像数据进行分析,并把分析结果送到在汽车嵌入式平台上运行的安全监控软件,监控软件分析该数据。如果汽车偏离行驶车道,监控软件则调用多媒体API通过扬声器或者在LCD上显示信息提醒驾驶员,从而实现安全监控和报警功能。 

声明: 本文转载自其它媒体或授权刊载,目的在于信息传递,并不代表本站赞同其观点和对其真实性负责,如有新闻稿件和图片作品的内容、版权以及其它问题的,请联系我们及时删除。(联系我们,邮箱:evan.li@aspencore.com )
0
评论
  • 相关技术文库
  • 单片机
  • 嵌入式
  • MCU
  • STM
  • STM32的GPIO工作方式

    STM32F1xx官方资料:《STM32中文参考手册V10》-第8章通用和复用功能IO(GPIO和AFIO)芯片数据手册(datasheet)STM32的GPI

    2小时前
  • 蜂鸣器发声驱动实现和代码

    蜂鸣器是很常见的设备,分为无源和有源两种。根据项目需求选择不同类型的蜂鸣器。最近的项目里有用到有源蜂鸣器对有源蜂鸣器。还是老一套,把电路板画完,接着编程。在项目

    2小时前
  • STM32芯片异常复位的解决

    问题描述某STM32用户反馈,当使用STM32L4芯片的时候,程序运行一段时间后,会忽然复位。复位后程序继续运行,但是还会继续复位,原因不详。问题解析01:初步

    2小时前
  • 51单片机汇编指令集

    (1)数据传送类指令(7种助记符)MOV(英文为Move):对内部数据寄存器RAM和特殊功能寄存器SFR的数据进行传送;MOVC(MoveCode)读取程序存储

    2小时前
  • STM32 学习笔记40条

    1、SYSCLK时钟源有三个来源:HSIRC、HSEOSC、PLL2、MCO[2:0]可以提供4源不同的时钟同步信号,PA83、GPIO口有两个反向串联的二极管

    昨天
  • 基于MM32W系列开发的数据透传应用

    在前面一个章节中我们详细介绍到了基于MM32W系列芯片开发的使用场景非常丰富的简易蓝牙智能锁方案,在本章节我们将继续给大家介绍一个蓝牙案例——基于MM32W系列

    昨天
  • MM32W无线MCU 自定义AT指令

    MM32W0/3提供模组和开发板方式供客户使用,支持UART\SPI\IIC接口的AT指令,用户通过发送相关固定格式的指令方式可以实现对应功能。开发板上电后,模

    昨天
  • MM32W无线MCU 自定义服务和特征值

    MM32W0x2xxB蓝牙功能协议栈目前以Lib形式提供,用户通过调用相关接口的方式实现对应功能。例程中,用户如需调整BLE数据交互的特征值、服务及数据的收发,

    昨天
  • MM32W无线MCU接口函数调用

    MM32W0x2xxB的蓝牙协议栈目前以lib形式提供用户使用,用户无需了解蓝牙底层协议,通过调用相关接口的方式即可实现蓝牙无线传输,其中BLE协议栈lib放置

    昨天
  • MM32W 低功耗模式的休眠和时钟配置函数

    本章我们来看一下低功耗模式下用到的休眠和时钟配置函数。目前MM32W0系列有n4和q1两个版本,n4主要针对需要大容量的应用方案,q1针对超低功耗精简型的应用方

    昨天
  • MM32W应用笔记,阻塞式例程

    本章我们将对软件架构进行简单的讲解。阻塞式例程介绍对于大部分的低功耗设备来说,CPU都是处在休眠模式中,只在接收到特定数据的时候被唤醒处理少量数据,这种应用场景

    昨天
  • 不同类型单片机之间的通信方式

    几种常用单片机之间的通信方式①采用硬件UART进行异步串行通信。这是一种占用口线少,有效、可靠的通信方式;但遗憾的是许多小型单片机没有硬件UART,有些也只有1

    前天
下载排行榜
更多
广告