完整版基于安卓的车载虚拟仪表人机界面设计毕业论文Word下载.docx
- 文档编号:4166182
- 上传时间:2023-05-02
- 格式:DOCX
- 页数:20
- 大小:689.92KB
完整版基于安卓的车载虚拟仪表人机界面设计毕业论文Word下载.docx
《完整版基于安卓的车载虚拟仪表人机界面设计毕业论文Word下载.docx》由会员分享,可在线阅读,更多相关《完整版基于安卓的车载虚拟仪表人机界面设计毕业论文Word下载.docx(20页珍藏版)》请在冰点文库上搜索。
第六章总结28
绪论
1.1课题背景
21世纪是经济高速发展的时代,简单而又形象实用的虚拟仪表对于人们来说已经越来越必不可少。
虚拟仪表方便的人们的生活,在日常生活中各方各面都有虚拟仪表的影子,车载的虚拟仪表显得尤为显眼。
车早就成为了人们日常生活不可分割的一部分,近年来,汽车销量颇为可观。
而仪表作为汽车整个系统中十分重要的部分,是提高汽车综合性能的重要方面之一。
随着计算机软硬件技术、总线技术、电子技术等的快速发展,控制系统臃肿、接线布线复杂、占用空间大的传统电磁机械仪表渐渐被淘汰,虚拟仪表正以传统机械仪表无法比拟的速度迅猛发展。
目前虚拟仪表通常包括纯数字仪表和虚拟仪表盘仪表2种:
纯数字仪表成本较低,但功能和界面比较简单,满足不了一般驾驶员的需求;
而现有的虚拟仪表盘仪表虽然功能和界面比较丰富,但又存在着开发成本高、可移植性和可重绘性差、可扩展性不足等缺点,不利于大范围的推广与应用。
随着android系统的不断发展与完善,它已经融入我们生活的方方面面。
由于android是开源的平台,基于android的虚拟仪表,不存在以往阻碍移动产业创新的专有权障碍。
而且android系的优越性已经在众多的移动设备上得到验证。
因此,选择基于android的车载虚拟仪表人机界面设计变得非常有意义。
1.2相关领域的研究现状
Android一词的本义指“机器人”,同时也是指Google于2007年11月5日宣布的基于Linux平台的开源手机操作系统的名称,该平台由操作系统、中间件、用户界面和应用软件组成,号称是首个为移动终端打造的真正开放和完整的移动软件。
安卓主要有这几个优点:
1、系统基于Linux,非常稳定,怎么折腾都不死机。
2、系统代码年轻并且精简,手机运行比较快。
3、系统升级后以前的软件都可用,支持的软件很多。
4、安卓操作界面很人性化,象苹果手机一样很多界面都是动态的,酷炫且华丽,并且在图标甚至空白处长按三秒有类似电脑鼠标右键的快捷菜单弹出,很方便。
今年来android的发展非常迅速,市场占有率很高,支持的设备广泛,软件众多,Android已然成为行业里的中坚力量。
虚拟仪表是伴随着计算机技术和通信技术的高速发展而出现的,是传统硬件到软件的根本转变,对社会的发展有着深远的影响。
虚拟仪器技术是美国国家仪器公司(National
Instruments,NI)在1986年提出的一种构成仪器系统的新概念,其基本思想是:
用计算机资源取代传统仪器中的输入、处理和输出等部分,实现仪器硬件核心部分的模块化和最小化;
用计算机软件和仪器软面板实现仪器测量和控制功能。
所谓虚拟仪器,就是以计算机为核心的硬件平台上,其功能由用户设计和定义,具有虚拟面板,其测试功能由测试软件实现的一种计算机仪器系统。
虚拟仪器的实质是利用计算机显示器的显示功能来模拟传统仪器的控制面板,以多种形式表达输出检测结果;
利用计算机强大的软件功能实现信号数据的运算、分析和处理;
利用I/O接口设备完成信号的采集、测量和调理,从而完成各种测试功能的一种计算机仪器系统。
使用者利用鼠标或键盘操作虚拟面板,就如同使用一台专用测量仪器一样。
因此,虚拟仪器的出现,使测量仪器和计算机的界限模糊了。
虚拟仪器的“虚拟”两字主要包含以下两方面的含义:
(1)虚拟仪器的面板是虚拟的。
虚拟仪器面板上的各种“图标”与传统仪器面板上的各种“器件”所完成的功能是相同的。
由各种开关、按钮、显示器等图标实现仪器电源的“通”、“断”,被测信号的“输入通道”、“放大倍数”等参数的设置,及测量结果的“数值显示”、“波形显示”等。
传统仪器面板上的器件都是“实物”,而且是由“手动”和“触摸”进行操作的;
虚拟仪器前面板是外形与实物相像的“图标”,每个图标的“通”、“断”、“放大”等动作都可以通过操作计算机鼠标或键盘来完成。
因此,设计虚拟仪器前面板就是在前面板设计窗口中摆放所需的图标,然后对图标的属性进行设置。
(2)虚拟仪器测量功能是通过对图形化软件流程图的编程来实现的。
虚拟仪器是在以PC为核心组成的硬件平台支持下,通过软件编程来实现仪器的测量功能的。
因为可以通过不同测试功能软件模块的组合来实现多种测试功能,所以在硬件平台确定后,就有“软件就是仪器”的说法。
这也体现了测试技术与计算机深层次的结合。
1.3论文的主要研究内容
本论文所要实现的内容是以REAL210硬件平台为基础,利用android提供的组件设计虚拟仪表人机界面的各个功能逻辑模块,使得模块设计更为合理模块之间的耦合性更小。
从而实现功能更加丰富,操作更加友好,便于升级维护,能更好的满足客服市场的需求。
系统的硬件设计方面,系统采用的硬件平台是REAL210,CPU处理速度600MHz~1GHz,基于Cortex-A8架构。
系统中主要的硬件模块有音频模块、CAN模块、液晶显示模块、串口和以太网通信模块。
系统软件的设计方面,由于Android最初是基于手机软件开发平台进行设计的,而且其中大部分模块都是为手机通信所设计,为节约开发板资源,需要将Android系统中不必要的组件剪裁掉,保留必要的最小系统。
因此必须对框架进行修改,将与电话、短信等相关的模块移除。
仅留下必需的Android的核心模块,包括Package
Manager、System
Service、InputService、HardwareService和SystemServer等。
通过修改SystemServer的加载过程可以去掉不需要的服务和模块,另外还要实现底层硬件的驱动程序,重新交叉编译Linux2.6内核,并在驱动程序实现的基础上封装函数库,以便Android的应用程序通过JNI的方式访问底层驱动。
1.4论文的内容安排
本论文第一章所主要阐述的是虚拟仪表的发展背景,以及相关领域的发展现状。
介绍了论文的主要内容,以及内容结构安排。
本论文第二章主要是对所选择的技术路线的具体阐述,包括理论依据,以及所涉及到的技术的基本原理的分析。
本论文第三章是对系统硬件体系的分析与设计,介绍硬件系统架构,以及需要注意的指标。
本论文第四章是对android软件系统的定制,介绍软件开发的环境,以及具体的软件系统设计。
本论文第五章是应用系统的设计与实现,通过packagemanager提供的各个APK的信息以菜单方式对各个功能模块进行调用,从而使整个系统的功能实现。
本论文第六章是对整个系统的总结与展望,总结当前技术下,设计过程中存在的不足,展望未来系统发展前进方向。
技术理论介绍以及分析
2.1
汽车仪表及其显示装置的作用和组成
在驾驶员前方台板上都装有仪表报警灯及电子显示装置,用来指示汽车运行以及发动机运转的状况,以便驾驶员随时了解和掌握汽车各系统、各部件的工作状态,保证汽车可靠而安全地行驶。
汽车上较常用的一般有5种仪表和3种相应的传感器,即电流表、机油压力表、水温表、燃油表及车速里程表,机油压力传感器、水温传感器、油量传感器。
仪表板总成分垂直安装式和倾斜安装式两类,二者又各有组合式和分装式#种。
分装式仪表板总成,它是由薄钢板先冲压成一块仪表板,然后将每只单个仪表用夹板及螺栓固装在仪表板上。
2.1.2
汽车仪表的使用条件
1.温度
汽车是被广泛使用的交通运输工具,要在各种环境温度下都能正常运行,因此要求汽车仪表在-40~+55℃范围内都能正常工作。
温度传感器用于监测冷却液(水箱)温度。
2.湿度
由于汽车仪表工作的环境条件所限,因此它还将受到湿度的影响。
潮湿的空气将使仪表零件(特别是黑色金属零件)表面生锈,电气绝缘件的绝缘性能降低甚至漏电。
还由于潮湿空气的变冷,使毛细管内的水分凝聚,引起指示误差以致堵塞。
因此,金属零件尤其是黑色金属零件要进行表面处理,如电镀、化学处理、喷漆等工艺。
要求仪表应能在相对湿度为90%的环境下工作,并通过耐潮试验及绝缘介电强度试验
3.振动
汽车行驶引起的车身振动,发动机高速运转引起的汽车各部件振动,都会影响仪表指示的准确性,缩短仪表的使用寿命,因此必须在仪表板外面加放橡皮减震垫圈等,以保证仪表零件的足够强度和紧固件的牢固性。
4.其他
汽车仪表的工作环境还可能遇到其他气候条件(如暴雨、灰尘的侵蚀,阳光辐射,油腻的沾污,
霉菌的腐蚀,
海洋盐雾的浸蚀以及冰冻等)的影响,因此仪表零件的各种金属材料,非金属材料以及各种油类、保护层等都要根据不同的气候条件加以选用。
装有电子钟的仪表板总成,要防止汽车电气设备产生的高频振荡对电子钟走时性能的干扰。
2.2虚拟仪表技术
虚拟仪表是指在测量中,不存在直接的物理传感器实体,而是利用其他由直接物理传感器实体得到的信息,通过数字模型计算手段得到所需检测信息的一种功能实体。
虚拟仪表综合运用了计算机软件、智能测试、模板及总线的标准化、数字信号处理的高速专用集成电路制造等技术,是建立在标准化、系列化、模块化和积木化的硬件与软件平台上的一个完全开放的系统。
虚拟仪表的基本思想是利用计算机来管理仪表,组织仪表系统,进而逐步代替仪表完成测量,最终达到取代传统电子仪表的目的。
虚拟仪表中的硬件是完成数据的输入与输出,真正实现测量功能的是计算机的软件,因此,有“软仪表或软测量”的说法。
虚拟仪表是基于计算机(PC)构成的,它的硬件部分往往具有很大程度上的通用性,软件是系统的核心,这样使它的实现不是强调其物理形式。
虚拟仪表的优点:
(1)性能价格比高。
虚拟仪表的价格一艘是同类功能的传统仪表1/5~1/10,而且可以重复利用,技术更新快。
(2)开放性好。
用户可根据需要组成仪表或系统,甚至不用更改任何硬件,只需应用相应的软件模块即可构成新的虚拟仪表。
(3)智能化高。
计算机强大的分析、计算、逻辑、判断能力,可以在其上建立一套专家系统。
对于数据则可以编辑、存储、打印,在完善的数据库基础上,还可以实现数据的检索与分析。
(4)界面友好,使用方便。
在基于视窗技术的虚拟仪表面板上,用户通过鼠标即可完成所有功能,人机界面十分友好,测量结果可通过显示器直观地显示出来。
(5)具有网络功能。
虚拟仪表是面向应用的系统结构,可方便地与网络、外设及其他应用相联系。
(6)误差小。
在虚拟仪表的测量过程中,由于减少了硬件的使用,使误差有所减少。
2.3REAL210核心板介绍
REALARM出品的E210COREV2核心板功能如下:
1、基于三星A8处理器
1GHz
S5PV210
2、521M
Byte
DDRII内存,256M
byte
SLC型NandFlash
3、集成声卡WM9713,支持音频互联,PHONE连接模式
4、DM9000AEP支持100M以态网
5、智能单片PMIC
WM8310电源管理,支持充电和DVS动态电压调整
6、230脚
TQFP封装,引出大部分接口
7、仅6cm*6cm,适合内嵌各种设备
8、核心板全速工作在1GHZ,功耗大约5V/200mA
2.4核心板引脚功能分类
电源支持
1、
支持5V电源输入(DC5V引脚)
2、
支持锂电池输入(VBAT引脚)
3、
支持锂电池充电,充电电流500mA,支持电池温度检测
4、
支持USB供电
5、支持VBAT
VUSB
DC5V无逢切换,优先级为DC5V>
VUSB>
VBAT
6、
支持低电平按键开机
7、
支持开关机键检测
8、1.8~3V
RTC后备电池输入引脚
显示接口
RGB
24Bit接口
支持HDMI输出
TVOUT输出
TOUCH接口支持
系统总线
1、16位数据总线
2、2^16地址空间
3、支持单字节和双字节读写
Camera接口
支持一路Camera
8bit
或YUV输入
串行总线
两路IIC接口
四路
TTL
UART,其中两路三线,两路五线
两路SPI
一路USB
HOST2.0
5、
一路OTG2.0
SDIO接口
两路4bit
SDIO接口,可接SDIO设备和SDMEMOY
以态网接口
一路100M以态网接口
音频
支持两路差分MIC输入
支持一路单端MIC输入
支持一路耳机输出(带插入检测)
支持两路差分SPEAK输出,输出增益可调
一路左右声道LINE信号输入
键盘接口
支持8*8矩阵键盘
可做为GPIO使用
外部中断接口
支持GPIO输入输出,支持外部中断
共18路外部中断入支持
BOOT配置引脚
支持NAND和UART引脚配置
JTAG
支持仿真器调试
系统硬件体系的分析与设计
一硬件系统构架
以嵌入式系统的硬件为背景,对主要部件给予客观的分类和评价。
硬件是软件的基石,固然它硬件是有多么的重要。
嵌入式系统开发与软件开发有巨大的差别!
只有充分了解硬件,软件才能更大限度的挖掘硬件的能力。
所谓硬件系统,是指构成计算机的物理设备,即由机械、光、电、磁器件构成的具有计算、控制、存储、输入和输出功能的实体部件。
如CPU、存储器、软盘驱动器、硬盘驱动器、光盘驱动器、主机板、各种卡及整机中的主机、显示器、打印机、绘图仪、调制解调器等等,整机硬件也称“硬设备”。
随着电子系统的复杂化,系统设计已经成为一门重要的学科,传统的反复试验法已经越来越不适应时代的发展。
发展迅速的软硬件协同设计技术越来越受到人们的重视。
它是在系统目标要求的指导下,通过综合分析系统软硬件功能及现有资源,最大限度地挖掘系统软硬件之间的并发性,协调设计软硬件体系结构,以使系统工作在最佳工作状态。
虽然Android是作为一款手机软件平台进行开发的应用程序框架和应用程序但其本质是一个嵌入式软件开发平台。
若将Android用于车载虚拟仪表系统的开发,需要对仪表系统应用的特点进行调整,系统采用的硬件平台是REAL210,CPU处理速度600
MHz~1
GHz,基于Cortex—A8架构。
系统中主要的硬件模块有音频模块、CAN模块、液晶显示模块、串口和以太网通信模块,如图所示。
二硬件系统分为三种典型结构
1、单总线结构
即用一组系统总线将计算机系统的各部分连接起来,各部分之间可以通过总线交换信息。
这种结构的优点是易于扩充新的I/O设备,并且各种I/O设备的寄存器和主存器的存储单元可以统一编址,使CPU访问I/O设备更方便灵活;
其缺点是同一时刻只能允许挂在总线上的一对设置之间互相传送信息,也即分时使用总线,这就限制了信息传送的吞吐量,这种结构一般用在微型计算机和小型计算机中。
2、双总线结构
为了消除信息传送的瓶颈,常设置多组总线,最常见的是在主存和CPU之间设置一组专用的高速存储总线。
这种结构的优点是控制线路简单,对I\O总线的传送速率要求低;
其缺点是CPU的工作效率较低,因为I/O设备与主存之间的信息交换要经过CPU进行。
以存储器为中心的双总线结构中,主存储器可通过存储总线与CPU交换信息,同时还可以通过系统总线与I/O设备交换信息,这种结构的优点是信息传送速率高;
其缺定是需要增加硬件的投资。
3、采用通道的大型系统结构
为了扩大系统的功能和提高系统的效率,在大、中型计算机系统中采用通道结构,在这种结构中,一台主机可以连接多个通道,一个通道可以连接一台或多台I/O控制器,一台I/O控制器又可以连接一台或者多台I/O设备,所以它具有较大的扩展余地,另外由通道来管理和控制I/O设备,减轻了CPU负担,提高了整个系统的效率。
最小硬件系统
嵌入式系统的硬件设计与其应用场合和应用系统的不同而有所差别。
一般情况下,用户可以根据自己的要求,选用合适的微处理器类型,根据相应的接口电路搭配不同类型外设,构成不同用途、不同不同规模的应用系统。
这些系统,无论其规模多大,从硬件上看,都可以分为由核心电路构成的最小系统以及各种各样外部设备所需的外围接口电路。
通常最小硬件系统指的是,由处理器以及SDRAM和FLASH构成的存储电路,再加上一些必要的辅助电路构成的核心系统。
最小硬件系统不仅是整个硬件系统的核心部分,它的构成对软件系统也有重要的影响,其构成决定了处于软件系统最底层的Bootloder的设计,同时它也是嵌入式操作系统正常运行的基础。
换而言之,最小硬件系统及其之上的最底层的最小软件系统构成了嵌入式系统最基本最核心的部分
三Cortex-A8介绍
Cortex-A8第一款基于ARMv7构架的应用处理器。
Cortex-A8是ARM公司有史以来性能最强劲的一款处理器,主频为600MHz到1GHz。
A8可以满足各种移动设备的需求,其功耗低于300毫瓦,而性能却高达2000MIPS。
Cortex-A8是ARM公司第一款超级标量处理器。
在该处理器的设计当中,采用了新的技术以提高代码效率和性能。
在Cortex-A采用了专门针对多媒体和信号处理的NEON技术。
同时,还采用了JazelleRCT技术,可以支持JAVA程序的预编译与实时编译。
针对Cortex-A8,ARM公司专门提供了新的函(Artisan
Advantage-CE)。
新的库函数可以有效的提高异常处理的速度并降低功耗。
同时,新的库函数还提供了高级内存泄漏控制机制。
结构特性:
Cortex-A8采用了复杂的流水线构架
A.
顺序执行,同步执行的超标量处理器内核
13级主流水线
10级NEON多媒体流水线
专用的L2缓存
基于执行记录的跳转预盼
B.
针对强调功耗的应用,Cortex-A8采用了一个优化的装载/存储流水线,可以提供2
DMIPS/MHZ的性能.
C.
采用ARMv7构架
支持THUMB-2,提供了更高的性能,改善了功耗和代码效率
支持NEON信号处理,增强了多媒体处理能力
采用了新的Jazelle
RCT技术,增强了对JAVA的支持
采用了TrustZone技术,增强了安全性能
D.
集成了L2缓存
编译的时候,可以把缓存当作标准的RAM进行处理
缓存大小可以灵活配置
缓存的访问延迟可以编程控制
E.
优化的L1缓存
可以提高访存储问速度,并降低功耗
F.
动态跳转预判
基于跳转目的和执行记录的预判
提供高达95%准确性
提供重放机制以有效降低预判错误带来的性能损失
2.3
A8和ARM11的区别
Cortex-A8:
基于ARMv7指令架构,运行速度可以达600MHz至1GHz,功耗在300mW以下。
Cortex-A8处理器复杂的流水线架构基于双对称的,顺序发射的,13级流水线,带有先进的动态分支预测,可实现2.0
DMIPS/MHz。
10级NEON媒体流水线,专用的L2缓存,带有可编程的等待状态,支持多项与L3存储器之间的未完成事务,以充分利用CPU。
ARM11:
基于ARMv6指令架构,运行频率300MHz-500MHz,在0.13um工艺,1.2v条件下,ARM11处理器的功耗可以低至0.4mW/MHz。
ARMv6保持了所有过去架构中的T(Thumb指令)和E(DSP指令)扩展,ARM11处理器的流水线由8级流水线组成。
不过没有专用的L2缓存,相比Cortex-A8,处理能力会弱很多。
Android软件系统的定制
1
Android系统架构
由于Android最初是基于手机软件开发平台进行设计的,而且其中大部分模块都是为手机通信所设计,为节约开发板资源,需要将Android系统中不必要的组件剪裁掉,保留必要的最小系统。
Service、Input
Service、Hardware
Service和System
Server等。
通过修改System
Server的加载过程可以去掉不需要的服务和模块,另外还要实现底层硬件的驱动程序,重新交叉编译Linux
2.6内核,并在驱动程序实现的基础上封装函数库,以便Android的应用程序通过JNI的方式访问底层驱动。
经过定制和修改过的Android系统架构如图所示。
车载虚拟仪表人机界面的应用程序需要进行重新开发,主要是界面模块、CAN模块、数据访问模块和告警模块。
其中CAN模块设计成Service的方式。
数据访问模块设计为Content
Provider。
告警模块采用的通知方式为Broadcast
Receiver和Notifica。
系统通电后,在Android的System
Server中首先启动CAN模块,然后启动主界面的程序
2
程序重新开发
应用程序的设计与实现
应用程序的系统架构。
通过PackageManager提供的各个APK的信息以菜单方式对各个功能模块进行调用。
51CTO为大家介绍过《Android
SNK初探》,Android开发必须要了解构造块,Android应用程序是由四个重要组成部分组成的,这四种构造块如下:
◆Activity
◆Intent
Receiver
◆Serv
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 完整版 基于 车载 虚拟 仪表 人机界面 设计 毕业论文