【ACCESS精品源码栏目提醒】:网学会员,鉴于大家对ACCESS精品源码十分关注,论文会员在此为大家搜集整理了“车载导航系统设计 - 毕业设计”一文,供大家参考学习!
车载导航系统设计 课程名: 修改记录表 版本 发行日期 修改记录 C: 新增Ver: 1.0 2010/06/22 创建人:Ver: 1.1 2010/06/22 M: 修改 修改人:开发文档: 车载导航系统设计 车载导航系统设计 摘要:随着汽车产业的迅速发展,GPS 车载导航系统得到了越来越广泛的应用,已成为汽车上的重要配置,为用户提供便利。
另一方面随着计算机技术、通信技术的迅猛发展,微型化和专业化成为发展的新趋势, 而 嵌入式系统已经成为信息产业的热点。
Linux 操作系统以其性能稳定可靠、
源码公开免费、可裁剪、易移植等优点成为嵌入式系统的首选操作系统,具有巨大的市场价值和潜力。
在此基础上,本文提出了将 GPS 导航定位技术和嵌入式 Linux 系统相结合,设计基于嵌入式Linux 的 GPS 车裁定位导航定位系统。
在 ARM9 平台上移植嵌入式 Linux 操作系统,然后基于此平台实现 GPS 车载定位导航系统。
与此同时,要求系统平台具备一个完整的车载多媒体终端的潜力,包括 GPS 导航定位、语音导航、防盗以及 MP3/MP4 播放等功能。
该系统设计中,硬件系统是基础,嵌入式 Linux 操作系统是软件的运行平台,它们在 GPS 车载导航系统中具有重要的地位。
关键词:嵌入式系统;车载导航:GP5;Linux;ARM9开发文档: 车载导航系统设计1.引言1.1 目的 对需求的进一步明确,提出系统的解决方案,划分模块,初步确定数据结构,可作为 编写详细设计说明书的参考,也可作为了解整个系统的的参考资料使用; 面向的读者:程序员、测试人员、详细设计说明书编写人员,其他读者;1.2 项目背景 现在,随着 GPS 技术、多媒体应用、LCD 显示技术的日趋成熟,汽车导航、防盗系统 在高端汽车中已经是现实,而在普通汽车中实现,也是指日可待了。
车载导航系统中 包含了很多前卫、实用的技术,如:GPS 应用技术、GPRS 应用技术、GUI 开发技术、 多媒体功能应用技术、传感器技术、嵌入式操作系统应用开发技术、系统构建技术、 驱动编写技术、数据库技术等等。
通过项目的完成,对于巩固理论知识、拓展实用的 项目经验都有很大的帮助。
2341.3 术语及缩略语定义1.3.1 术语定义234 GPS:全球定位系统。
GPRS:通用分组无线服务。
GUI:图形化用户界面。
sql:结构化查询语言。
1.3.2 缩略语定义234 GPS: Global Position System GPRS: 通用分组无线服务。
GUI: Graphic User Interface sql: Struct Query Language开发文档: 车载导航系统设计2.系统概述2.l 需求规定 系统目标 设计开发出一个 GPS 导航系统,并实现短信防盗报警和简单的娱乐功能。
功能需求 系统应实现以下功能15: 1. 定位功能 GPS 通过接收卫星信号,可以准确地定出其所在的位置,位置误差小于 10 米。
利用 GPS,在地图上实时显示车辆当前位置。
2. 地图导航功能 输入目标地点后,自动在地图上显示出行车路线;假如用户因为不小心错过路口,没 有走车载 GPS 导航系统推荐的最佳线路,新为用户设计一条回到主航线路线,或是为用户 设计一条从新位置到终点的最佳线路。
3. 语音导航功能 输入目标地点后,车辆只要遇到前方路口或者转弯,车载 GPS 语音系统提示用户转向 等语音提示。
4. 防盗功能 通过发送 GPRS 短信7,可以返回车辆当前位置。
5. 娱乐功能 播放 U 盘、SD 卡中的 MP3、MP4 文件。
6. 增加兴趣点功能 由于我国大部分城市都处于建设阶段,随时随地都有可能冒出新的建筑物,由此,电 子地图的更新也成为众多消费者关心的问题。
因此遇到一些电子地图上没有的目标点, 只要你感兴趣或者认为有必要,可将该点或者新路线增加到地图上。
开发文档: 车载导航系统设计2.2 系统结构图 GSM/GPRS GPS模块 模块 液晶触摸屏 ARM9平台 扬声器 嵌入式linuxQT/E SD卡/USB存储 SQLITE数据库 加速度传感器 系统基于 ARM9 的硬件平台,采用了嵌入式 linux 的软件架构,通过扬声器完成语音提示 。
。
。
。
及音乐播放;液晶是进行人机交互的接口;。
。
。
2.3 软/硬件要求 硬件名称 说明 CPU S3C2410, MPLL200M FLASH 2M norflash 64M Nand Flash SDRAM 64M USB 1 个 USB Host 接口, 1.1 标准 网口 10M 串口 2 个 3 线串口 SD 卡接口 sd 卡容量 1G I/O 8 路 I/O LCD 3.5 寸 240320 TFT 屏 触摸屏 4 线电阻式触摸屏 GPRS 模块 3 线串口接线 GPS 模块 3 线串口接线 加速度传感器 输出电压范围 0-3V U盘 容量 14G 软件名称 说明 操作系统 Linux-2.6.22 开发工具 GNU 工具 启动代码 u-boot 1.3.6 驱动程序 所有硬件驱动 文件系统 根文件系统采用 cramfs,用户文件系统采用 yaffs2开发文档: 车载导航系统设计 GUI QT 地图3.系统硬件平台设计3.1 ARM 核心系统设计1. ARM 处理器9 ARMAdvanced KISC Machines公司是全球领先的 16/32 位 RISC 微处理器知识产权设计供应商。
ARM 公司通过将其高性能、低成本、低功耗的 RISC 微处理器,外围和系统芯片设计技术转让给合作伙伴来生产各具特色的芯片。
ARM 公司已成为移动通信、手持设备、多媒体数字消费嵌入式解决方案的 RISC 标准。
Intel、Motorola、Samsung、Atmel、Ti 等公司都有采用 ARM 核生产ARM 处理器。
3.2 液晶设计……3.3 扬声器设计……3.4 重力加速度模块设计………3.5 存储模块设计………….3.6 通信模块设计1. GPS 模块选择 GPS 市场经过多年的发展已经非常成熟,而 GPS 设备随着技术的发展,体积、功耗和成本都得到极大改善,因此其选择余地非常大。
国际上的各大知名芯片公司都有做 GPS:包括 SiRF、u.blox、Ti、Analog Devices、索尼、意法半导体、Atmel、SiGe、u-Nav 等等。
现在 GPS 设备大体上可以分为 4 类开发文档: 车载导航系统设计 本课题选用了价格便宜、台湾 HiMARK 公司生产的 GPS 接收机:EB6808。
它是一款基于HiMARK 公司的全功能 GPS 接收机。
接收 GPS 卫星信号经过处理后实现定位,能给出三维坐标以及时间、速度、加速度等参数,适合应用于:车用导航、航海导航、舰队管理、基地服务、自动驾驶、个人导航、旅游设备、轨迹设备、系统及绘图应用程序等。
EB6808 GPS 接收机的主要性能参数: 低耗损:lt30mA 通道数:可同时追踪、接收 12 颗卫星数据 定位时问:每 l00mS 接收卫星信号;每秒更新定位数据 启动时间:冷启动/温启动/热启动 60/35/10 秒 支持协议:NMEA-01830/二进制 定时精度:lt500 纳秒 接收机结构:AR2010SoCampRX3650RF IC 灵敏度:静态-132dBm;跟踪-139dBm 定位精度:5~15m 动态性能:高度 18000m,速度 500m/s,加速度 4G 输出接口:RS-232,波特率 4800/9600~115200bps 输入电压:3.3V~9V DC 操作温度:-40℃~85℃2. 通信模块选择 现今我国正在使用的无线数据通信网络有 3 种:GSM、GPRS 和 CDMA。
分别介绍如下:7 GSMGlobal System for Mobile Communications是全球移动通信系统的简称,基于窄带 TDMA国制式,是世界上主要的蜂窝系统之一。
GPRSGeneral Packet Radio Service是通用分组无线业务的简称,是在现有的 GSM 网络基础上发展出来的一个新的网络。
GPRS 能给用户提供端到端的、广域的无线 IP 连接。
通俗地讲,GPRS是一项无线高速数据传输技术, 它以分组交换技术为基础, 用户通过 GPRS 可以在移动状态下使用各种高速数据业务,包括收发 E-mail、Internet 浏览、即时聊天等。
CDMACode Division Multiple
Access是码分多址技术的简称, 它是在扩频通讯技术上发展起来的~种崭新而成熟的无线通信技术,目前的标准有 W-CDMA、CDMA2000 Jx 和 TD--SCDMA。
CDMA 技术的原理是基于扩频技术,即将需要传送的具有一定信号带宽信息数据,用~个带宽远开发文档: 车载导航系统设计大于信号带宽的高速伪随机码进行调制,使原数据信号的带宽被扩展,再经载波调制并发送出去。
接收端使用完全相同的伪随机码, 与接收的带宽信号作相关处理, 把带宽信号转换为原信息数据的窄带信号即解扩,以实现信息通信。
AnyDATA.NET 公司一直致力于开发设计简单、体积小并且成本低廉的无线数据模块,己成功地研制出 DTG 系列。
DTU-800X 是 AnyDATA.NET 公司最新的一款小巧精密型的无线数据模块。
DTU-800X 的工作频率:上行 824.04~849.97MHz,下行 869.04~893.97MHz;工作电压为外部直流 4.0V~5.0V;空闲时电流低于 1.5mA,忙状态下电流不超过 700mA;最大输出功率为 0.3w:而且该模块会在空闲时进入睡眠模式,自动切断不工作电路的供电,从而大大降低功耗。
DTU-800X 的接口方面包括: 标准 RS-232、数字音频、外部重启、LCD 显示、键盘、响铃和 R-UIM中国市场。
软件方面有标准 AT 指令,内嵌 TCP/IP 协议、UDP 协议。
AnyDATA DTU-800X 提供了一个操作方便、价格低廉的无线数据传输解决方案。
当然,它的功能多于无线数据传输,不过就其在本课题中的应用而言,我们仅需研究其数据传输方面的功能。
DTU-800X 模块和系统主控器之间的数据传输是通过串 13 实现的,其提供了三个 UART 串口。
UARTl 带有 512Byte 的 FIFO 寄存器,波特率可达 230.4kbps:UART2 和 UART3 带有 64Byte 的 FIFO 寄存器,最高波特率 115.2kbps。
3. 串口电路设计 串行口是计算机一种常用的接口,具有连线少、通讯简单的特点。
串口技术如今已经发展的很成熟、很稳定,被广泛的应用于各种设备之间的互联。
现在使用最广的是 9 针串口,其针脚功能如表 3-2 所示。
S3C2410A 内置有串口收发模块,只要在外围模块中设计串口电平转换电路就可以与其他设备进行串行通信本系统中采用了 Maxim 公司的电平转换芯片 MAX3232,可以实现 2 对串口收发信号电平转换,连线详见图 3-13。
开发文档: 车载导航系统设计4. 操作系统设计3.1 系统功能结构图系统移植系统编码: 文 件 名 称 : u-boot.binzImage 文 件 系 页次: 统子系统编码: 子文件名称: 填写:XXX 日期:XXX加工编号: 加工名称: 审核:XXX 日期:XXX输入数据流: 输出数据流:处理说明:系统移植主要包括如下三个部分:1、U-Boot:编译基于 ARM9 平台的 U-Boot 引导程序,并下载到 NAND Flash 中。
实现 U 盘和 SD 卡的自动升级功能。
2、Linux 内核:编译基于 ARM9 平台的 linux 内核,去除不必要的内核功能和模块,使内核尽量小巧。
3、文件系统:根文件系统采用 cramfs,用户文件系统采用 yaffs2。
3.2 软件模块说明3.2.1 操作系统模块说明系统编码: 文件名称: 页次:子系统编码: 子文件名称: 填写:XXX 日期:XXX模块编号: 模块名称:linux 操作 审核:XXX 日期:XXX 系统功能描述:初始化硬件平台,运行 linux 操作系统。
输入数据:开机上电 输出数据:linux 命令行界面处理说明:开发板上电后,由 U-Boot 引导启动 linux 内核,加载文件系统,并最终进入 linux 字符见面。
开发文档: 车载导航系统设计4.驱动开发设计4.1 系统功能结构图驱动开发系统编码: 文件名称: 页次: gps.cgprs.cframebuffer.ctouchscr een.cusb.csd.c子系统编码: 子文件名称: 填写:XXX 日期:XXX加工编号: 加工名称: 审核:XXX 日期:XXX输入数据流: 输出数据流:处理说明:驱动开发主要完成以下几个功能:1、GPS 定位:内核识别 GPS 模块,获取 GPS 经纬度信息,实现用户层到内核层的系统调用。
2、GPRS 通讯服务:内核识别 GPRS 模块,通过 GPRS 模块向用户手机发送报警短信息。
3、LCD 显示:内核识别 LCD 模块,显示字符见面,进而实现图形化用户界面的开发。
4、触摸屏输入:内核识别触摸屏,实现触摸屏输入。
5、USB 接口:内核识别 U 盘,实现 U 盘存储设备的数据交互。
6、SD 卡接口:内核识别 SD 卡,实现 SD 卡存储设备的数据交互。
4.2 模块说明4.2.1 GPS 驱动模块说明系统编码: 文件名称: 页次: gps.hgps.c子系统编码: 子文件名称: 填写:XXX 日期:XXX开发文档: 车载导航系统设计模块编号: 模块名称: 审核:XXX 日期:XXX GPS 驱动功能描述:初始化 GPS 模块,提供给用户层获取经纬度数据的接口。
输入数据: 输出数据: 经度值,纬度值。
处理说明:在导航模式下,实时获取 GPS 模块接收的经纬度信息,并更新值,当用户层应用程序需要时,将数据返回给用户层应用程序。
在防盗模式下,保存原有值不更新,并实时获取新的经纬度值,当新值与旧值相差一定数量时发出信号,通知用户层应用程序。
4.2.2 GPRS 驱动模块说明系统编码: 文件名称: 页次: gprs.hgprs.c子系统编码: 子文件名称: 填写:XXX 日期:XXX模块编号: 模块名称: 审核:XXX 日期:XXX GPRS 驱动功能描述:初始化 GPRS 模块,为用户层应用程序提供交互接口。
输入数据: 输出数据:要发送的信息内容处理说明: 由用户层应用程序向 GPRS 设备文件写入要发送的信息内容,最后通过系统调用通过驱动程序完成信息发送到指定手机终端。
4.2.3 LCD 驱动模块说明系统编码: 文件名称: 页次: lcd.hlcd.c子系统编码: 子文件名称: 填写:XXX 日期:XXX模块编号: 模块名称: 审核:XXX 日期:XXX LCD 驱动功能描述:初始化 LCD 屏,实现 framebuffer,为用户层应用程序提供显示接口。
开发文档: 车载导航系统设计输入数据: 输出数据:要发送的信息内容处理说明:将用户层应用程序写入 LCD 设备文件的信息通过 framebuffer 正确传输并显示。
4.2.4 触摸屏驱动模块说明系统编码: 文件名称: 页次: touchscreen.htouchscreen.c子系统编码: 子文件名称: 填写:XXX 日期:XXX模块编号: 模块名称: 审核:XXX 日期:XXX 触摸屏驱动功能描述:初始化触摸屏,为用户层应用程序提供触摸屏输入接口。
输入数据: 输出数据:触摸事件 触摸点的坐标处理说明:初始化触摸屏,响应中断,返回坐标值。
4.2.5 USB 存储设备驱动模块说明系统编码: 文件名称: 页次: usb.husb.c子系统编码: 子文件名称: 填写:XXX 日期:XXX模块编号: 模块名称: 审核:XXX 日期:XXX USB 驱动功能描述:内核识别 USB 接口,初始化 USB 设备,实现读写 U 盘。
输入数据: 输出数据:触摸事件 触摸点的坐标处理说明:初始化函数,可读/可写中断,读写函数。
4.2.6 SD 卡存储设备驱动模块说明系统编码: 文件名称: 页次:开发文档: 车载导航系统设计 sd.hsd.c子系统编码: 子文件名称: 填写:XXX 日期:XXX模块编号: 模块名称: 审核:XXX 日期:XXX SD 卡驱动功能描述:内核识别 SD 卡接口,初始化 SD 卡设备,实现读写 SD 卡。
输入数据: 输出数据:触摸事件 触摸点的坐标处理说明:初始化函数,可读/可写中断,读写函数。
开发文档: 车载导航系统设计5.GPS 导航应用程序设计5.1 系统功能结构图导航应用系统编码: 文件名称: 页次:子系统编码: 子文件名称: 填写:XXX 日期:XXX加工编号: 加工名称: 审核:XXX 日期:XXX输入数据流: 输出数据流:经纬度坐标值 地图中相对位置处理说明: 1. 根据实时获取的坐标值,在地图中显示当前位置。
2. 根据用户输入的起点、终点坐标值,计算最优路径。
3. 在导航过程中,将要到达每一个交叉点时,提供语音提示。
防盗应用系统编码: 文件名称: 页次:子系统编码: 子文件名称: 填写:XXX 日期:XXX加工编号: 加工名称: 审核:XXX 日期:XXX输入数据流: 输出数据流:经纬度坐标值 报警信息处理说明:保存旧的坐标值,实时获取新的坐标值,当两值相差一定数量值时,产生报警信息。
5.2 模块说明5.2.1 定位模块说明系统编码: 文件名称: 页次:子系统编码: 子文件名称: 填写:XXX 日期:XXX模块编号: 模块名称:定位模块 审核:XXX 日期:XXX功能描述:实时更新,并在地图上显示当前位置信息。
输入数据: 输出数据:经纬度坐标值 在地图上标注位置信息开发文档: 车载导航系统设计处理说明:1. 从 GPS 设备文件中读取当前经纬度坐标。
2. 将经纬度坐标.
上一篇:
路由器架构相关1
下一篇:
bc80e7a0-d1f2-4595-b21d-01a76798e87a