




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 基于 ARM 的嵌入式车载 GPS 定位系统设计鹿存波,邓飞贺,赵龙章(南京工业大学自动化与电气工程学院,江苏南京 210009摘要:介绍了嵌入式 GPS 定位系统的整体设计方案,着重对基于 ARM9和嵌入式 Linux 的系统进行硬件设计和内核移植,同 时介绍了 GPS 接收模块的制作方案 。 最后对 GPS 驱动程序及应用程序进行了设计 。关键词:GPS ; ARM ; 嵌入式 Linux 操作系统Design of Embedded Vehicle GPS Location System Based on ARMLU Cunbo , DENG Feihe , ZHAO Longzhan
2、g(College of Automation and Electric Engineering , Nanjing University of Techonology , Nanjing Jiangsu 210009, China Abstract :The whole design of embedded GPS system is introducedThe paper mainly designed the hardware and makes Linux kernel transplantedAnd it particularly implemented the execution
3、of GPS moduleFinally , the paper designed the GPS driver and the application programKeywords :GPS ; ARM ; Embedded Linux OS0引言车载定位系统作为车载信息系统的重要部分,利用 GPS 等装置,以一定精度实现车辆定位,包含位置 、 速度和行车方向 等车辆姿态信息 。 继一些国家之后,我国一些科研院所和高校 也开始研究自己的车载定位系统,市场空前地繁荣 。 但是传统 系统功能单一 、 集成度不高 。 随着 ARM 处理器在全球范围的 流行, 32位的 RISC 嵌入式处理器已经
4、成为嵌入式应用和设计 的主流 。 同时嵌入式 Linux 是一个非常好的免费的操作系统内 核,具有稳定 、 良好的移植性,优秀的网络功能,完备的各种 文件系统的支持以及标准丰富的 API 等特点 。 因此,本文提供 了一套具有先进性及工程实用性的车载定位系统整体解决方 案,使得系统的性能 、 集成度和可扩展性大大提高 。1系统的硬件设计1. 1系统的整体硬件设计本文车载信息系统由主控制 、 定位 、 通信 、 数据采集 、 显示等几部分组成,如图 1所示 。图 1车载定位系统总体硬件设计方案主控制部分采用了三星公司基于 ARM920T 的 S3C2410和 Linux 的嵌入式系统平台,完成整
5、个系统的控制 。 其主要包括电源电路 、 时钟电路 、 复位电路 、 存储模块电路 、 JTAG 接口 电路 、 串行口电路 、 LCD 接口 、 SPI 接口以及按键电路的设计 。 主控模块通过串行口 、 SPI 接口 、 LCD 接口与扩展模块相连接 构成整个硬件系统 。1. 2GPS 模块的硬件设计与制作定位部分采用了自行设计和制作的基于瑞士 U-BLOX 公司 LEA-4S 芯片的 GPS 接收模块 。 在此给出了 GPS 接收模块的整 体设计,如图 2所示 。图 2GPS 接收模块的整体设计u-blox 的 GPS 部分分为两部分,采取数字 /模拟分开设计 的方法,有效提高了模块的抗
6、干扰能力 。 在硬件的设计制作过程中,也是分为两步,即模块部分和数字部分 。 模拟部分主要 由天线接入端及天线供电部分 /检测电路构成 。天线选用 3V 供电的有源天线,增益 27dB 左右,噪声系数 1. 5dB 左右 。 天线接入模块较为复杂,从 GPS 有源天线天线接收的信号频率高达 1. 575G ,属于微波范围 。 PCB 设计需要满足 天线座到模块 RF_IN 端的阻抗匹配为 50。模块供电电源稳压电路为 5V 转 3V 的五脚 LDO ,对电压稳 定精度较高,要求输出纹波在 50mV 以下,电流为 150mA 左右,这里选用精工的 SOT-23-5封装的 LDO S-11123.
7、 0V ,能满 足电源供应的要求 。 后备 3V 可充电微型锂电池则为数据保存 作用 。选择电路为波特率的选择及速率选择,或是启动速度之类 的选择,一般可以用默认值 。数字部分硬件相对简单, LEA-4S 为两路 TTL 电平输出, 分别为 9600/11520波 特 率, 分 别 支 持 国 际 通 用 GPS 协 议 NMEA 及 u-blox 公司的 UBX 二进制格式 。 在本设计中,通过串 口 O 提取 ASCII 码,串口数据通过 MAX232电平转换为 RS232电平 。 另外,将 GPS 模块的发送端和接收端经电平转换后与串 口 DB9交叉相连 。2软件平台的搭建系统的软件平台
8、的搭建其实就是嵌入式 linux 操作系统的 移植工作,主要包括 4步:建立交叉编译环境; 移植引导程 序; 编译内核; 生成根文件系统 。交叉编译工具主要由 gcc 、 binutils 和 glibc 这几部分组成 。 由于重新建立一个交叉编译工具链比较复杂也没有任何意义, 所以本文使用已经做好的工具链 。 因此建立交叉编译环境的过 程实际就是对工具包 cross 3. 3. 2. tar. bz2解包的过程 。本文移植的 Bootloader 是韩国 Mizi 公司开发的 vivi 。 首先 在根目录下创建一个 armsys2410目录,对 vivi_armsystgz 执 行解压命 令
9、 。 解 压 完 成 后 进 入 vivi _armsys 。 执 行 命 令 make menuconfig ,然后选择 “ Load on Alternate Configuration File ” 菜 单,再写入 arch /def-configs /smdk2410,进行 vivi 的裁剪 。 执行 make 命令进行编译,在 vivi_armsys 目录下生成 vivi 二进制文 件 。 最后将其烧写到 Flash 。内核的编译通过命令 make menuconfig 进行内核的配置; 通 过命令 make dep 建立依赖关系; 通过命令 make zImage 建立内 核 。
10、得到 Linux 内核压缩映像 zImage 。 最后通过 vivi 命令提示 模式下使用下载命令,将压缩映像文件 zImage 装载到 flash 存 储器中 。Linux 支持多种文件系统 。 cramfs 是 Linus Torvalds 撰写的 只具备最基本特性的文件系统 。 本文使用 mkcramfs 工具对主机 里已有 cramfs 文件系统进行制作和压缩 。 最后也要烧写到 flash 的相应部分 。3GPS 模块驱动程序的开发Linux 将设备分为最基本的两大类,字符设备和块设备 。 字符设备是单个字节为单位进行顺序读写操作,通常不使用缓 冲技术; 而块设备则是以固定大小的数据
11、块进行存储和读的 。 GPS 模块驱动程序是在 UART 驱动程序的基础上加入对 GPS 模块初始化和对 GPS 模块输出数据处理的部分,构建一个 独立的驱动模块,在导航系统进实时导航工作模式时挂接到系 统内核中,实现 GPS 功能 。3. 1初始化 /清除模块在初始化程序段中要完成对 GPS 设备的注册,设备节点的 创建和对串口相关寄存器的初始化 。 部分代码如下:if (register_chrdev(GPS_MAJOR, GPS_NAME, gps_fops 0/注册 GPS 字符设备printk (KERN _INFO ” registering of “ GPS ” is faile
12、d n ” ;return ret ;devfs_GPS_dir=devfs_mk_dir(NULL , “ GPS ” , NULL ; devfs_handle=devfs_register(devfs_GPS_dir, “ GPS ” DEVFS _FL_DEFAULT, GPS_MAJOR, 0, S_IFCHR|S_IRUSR|S_IWUSR, GPS_fops, NULL ;printk (“ GPS suecessfully initialized n” ;*UCON0=OxO211; /串口工作模式定义*UBDRO =OxOO17; /波特率的选择相反, 清除模块函数 GPS_
13、Cleanup(, 完成注销字符设备 。 devfs_unregister_chrdev(GPS_MAJOR, GPS_NAME;printk (“ GPSmoduleremoved n” ;3. 2两个数据结构定义模块驱动的最终目的就是取得 GPS 信息,因此规范 GPS 数 据是对数据传递的可靠性和速率都是有益的 。struct GPS_DATAunsigned int hour ; /小时, 24小时制unsigned int minute ; /分unsigned long Second ; /秒, 精度小数点后三 位unsigned long latitude ; /纬度unsign
14、ed char southornorth ; /纬度属于南北的 标志码unsigned long longitude ; /经度unsigned char eastorwest ; /经度属于东西的标 志码; /其中包括了在导航系统中所需的几个重 要数据 。另外还有对驱动模块文件操作结构的定义 。 即:static struct file_operationsgps_fops=ead :gps_read,rite :gps_write,octl :gps_ioctl,open :gps_open ,elease :gps_release,; /定义了设备操作映射 函数结构 。3. 3驱动程序的
15、模块操作在导航系统进入 GPS 导航模式时,系统首先是将 GPS 模块 注册到操作系统中,实现初始化过程,再通过 gps_open 打开设备,此过程中完成对中断 、 缓冲区以及定时器等资源的 申请,为 GPS 数据读取做准备 。 通过 gps_write ( 向模块写 命令字来是自主地选择工作模式, gps_ioctl ( 则是选择串口 传输模式,使之与 GPS 模块传输模式相匹配 。 之后的应用程序 将创立一个独立的进程来进行 GPS 数据的读取 gps_read (, 该进程没有数据时进程一直处于睡眠状态等待数据,有数据 来,进入中断处理模块,完成数据的分析,生成 GPS_DATA 数据结
16、构,供导航使用 。 这个进程是随着导航模式的切换而终 止的,此时除了关闭进程外,还需调用 gps_release ( 释放 申请的所有资源,并关闭设备 。3. 4应用程序的实现GPS 模块通过串口输出 NMEAO183语句,而应用程序主要 完成对 GPS 数据的采集与解析 。 NMEA0183输出语句多达十余 种,任意一种定位语句都包含一定的定位数据,由于以 “ $G-PRMC ” 开头的语句包含了本系统所需的所有定位信息,本系 统只需研究该类型 。$GPRMC , 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, *hh , CR LF 等该类型定位数据的各个符号位的含义
17、如表 1所示 。表 1$GPRMC 帧基本格式的描述域 描述$GPRMC 定位语句起始标志1协调世界时 UTC2GPS 定位状态指示, A 为有效定位, V 为无效定位 3纬度4纬度标志, N 为北纬, S 为南纬5经度6经度标志, E 为东经, W 为西经7相对于地面的速度8:轨道相对于地面的夹角9UTC 日期,日月年10磁偏角*hh 校验标志符CR LF 语句中止符应用程序的整体设计流程如图 3所示 。从图 3可以看出,系统开始运行后首先对串口的初始化就 是对 GPS 模块初始化,包括设置波特率 、 数据位 、 校验位等; 然后开始接收 GPS 数据,即从串口读数据,并将读到的数据保 存到
18、 BUF 中; 接着进入数据的解析和提取阶段,通过 BUF 5等不等于 “ c ” 判断 是 否 为 $GPRMC ,若 是,则 开 始 提 取 经 纬 度 、 时间等信息并存入结构体 GPS_DATA 中,最后通过 LCD 显示出来 。图 3软件设计整体框图4结束语本文给出了基于 ARM9和嵌入式操作系统 Linux 下, GPS 定位系统的整体解决方案 。 包括了系统的整体设计, GPS 模块 制作方案,开发平台搭建以及 GPS 驱动程序和应用程序的设 计 。 与市场上的车载定位系统相比,本设计在功能性 、 可扩展 性和稳定性上都有所提高 。 以本系统作为基础,车载定位系统 的下一步工作将可以专注于应用程序的编写,包括提高 GPS 定 位精度的算法,以及开发更加友好的人机交互界面 。参考文献:【 1】 徐俊仕 基
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年江西省南康市南康中学高三下-学分认定考试英语试题试卷含解析
- 合肥职业技术学院《创新创业基础土木工程》2023-2024学年第一学期期末试卷
- 大连工业大学《办公室工作实务》2023-2024学年第二学期期末试卷
- 山东文化产业职业学院《文学基础》2023-2024学年第二学期期末试卷
- 左氧氟沙星口服溶液-药品临床应用解读
- 吉林建筑科技学院《混凝土桥》2023-2024学年第二学期期末试卷
- 湖北健康职业学院《运动训练管理学》2023-2024学年第一学期期末试卷
- 12渠道构建与协调
- 2025年广东省“四校”高考模拟试卷(生物试题文)试卷含解析
- 山西卫生健康职业学院《大数据应用技术基础》2023-2024学年第二学期期末试卷
- 新大象版四年级下册科学第二单元《自然界的水》课件(共4课)
- GB/T 772-2005高压绝缘子瓷件技术条件
- 2023年苏州卫生职业技术学院高职单招(语文)试题库含答案解析
- 拘留所教育课件02
- 中国音乐史课件
- 11471劳动争议处理(第4章)
- 小学语文人教三年级下册 赵州桥-
- 基因治疗课件最新版
- 幼儿园社会领域自我意识活动教案(3篇)
- 识别和获取法律法规管理制度
- 《碳纤维片材加固混凝土结构技术规程》(2022年版)
评论
0/150
提交评论