基于PXA270开发板的GPS定位系统

本文是在pxa270嵌入式开发板和gps模块上开发实现的。在linux下的嵌入式开发环境中,利用c++设计完成定位。嵌入式系统利用软件设计主要完成gps定位信号的处理、电子地图的移植、地球坐标的转换、定位的显示等功能。
1 系统概述
嵌入式系统是控制、监视或者辅助装置、机器和设备运行装置;是软件和硬件的综合体,可涵盖机械等附属装置;有着友好的人机界面,支持lcd及gps模块;主要完成提取gps定位信号的数据、坐标转换、电子地图的显示等功能。软件设计流程如图1所示。
2 嵌入式系统软件设计
2.1 gps模块输出的信息的提取
gps模块通电后,会自动搜索卫星信号,并把计算数据从串口输出。所有gps接收机以通用的nmea格式输出数据。nmea-0183协议定义的语句较多,但常用且兼容性较广的语句只有:$gpgga、$gpgsa、$gpgsv、$gprmc、$gpvtg、$gpgll等。如图2所示。
用串口连接宿主机与开发板的串口0。宿主机进入linux,打开minicom终端。设置波特率115 200,8位数据,1位停止,无校验,无流控。串口的设备文件为/dev/ttys*,其中,ttys0为串口1,ttys1为串口2,以此类推。在对串口通信之前,首先要对串口参数进行初始化、设置它的属性以保证通信双方的通信参数保持一致。初始化完串口,就可以进行读取操作了。由于gps发送的数据类型都是以&gpgga符号开头,所以检测&gpgga符号,进而进行下一步的处理。关键代码如下:
2.2 坐标转换
gps模块输出的地理坐标是wgs-84坐标系。而国内地图一般是以54北京坐标系作高斯-克吕格平面投影。所以必须作一个坐标转换,即将gps坐标(wgs-84坐标系)转换到电子地图坐标(54北京坐标系)。坐标转换的具体步骤如下:
(1)空间直角坐标转换成国家大地坐标,国家大地坐标转换成地图平面坐标。
(2)由于x,y的具体推算过程复杂,这里就不全部列举,其结果如下
(3)地图平面坐标转换成屏幕坐标。例地图比例尺为1:k,窗口要显示的区域长、宽各为m和n,窗口像素点位a×b点,则定位数据xs,ys在窗口上坐标分别为
2.3 电子地图重构
一般来说,电子地图包含的数据格式都不能直接用在嵌入式平台,所以需要对电子地图的数据进行提取、存储、重构。目前主要使用的是桌面电子地图系统mapinfo,它是美国mapinfo公司的桌面地理信息系统软件,具有数据可视化、信息地图化的桌面解决方案。mapinfo数据格式主要分为tab和mif两种格式。mif格式是mapinfo公司提供的一种与外界交换数据的机制。它主要用于保存空间对象的几何数据。将电子地图的数据读出后,再在嵌入式平台下,用绘图工具重新组成电子地图即可。部分实现代码如下
3 仿真测试
点测试、线测试、面测试如图3所示。
4 结束语
整个测距定位系统在pxa270嵌入式开发系统下完成,工程系统庞大,整个系统基本功能已实现。由于本系统软硬件平台有较强的升级能力,许多指标与功能可以进一步完善与提高。从gps定位数据到电子地图数据的转换,需要一系列复杂的算法,这些算法有待进一步改进和简化,以提高系统运行效率和数据准确性。

那么多的校准术语,你get到精髓了吗?
机器人产业被热捧 ,需防“消化不良”
人类或许早已受到AI的控制
聚氨酯脲(PUU)聚合物防弹衣:比钢铁结实15倍
汽车芯片IP将迎来哪些迭代方向和技术挑战?
基于PXA270开发板的GPS定位系统
音箱分频器分频点的确定
嵌入式系统设计开发大全
EMQ & 南洋万邦云边一体化方案:激活数据潜力,打造智慧工业园区
人工智能感知的三个核心内容
物联网智能跟踪简化端到端物流管理
国辰机器人实力亮相工博会领航智能发展新时代
PLC编程异常的原因及处理办法
顾客希望PLC越小越好,这是基于什么心态?
国内产业物联网发展主要以政策驱动为主
Wi-Fi网络资源共享现状及发展研究
如何用FPGA实现FFT算法?
海口:形成新型互联网工业设计、建筑设计和集成电路设计等产业集聚
折叠屏手机的战争华为Mate F vs三星 Infinity F
准系统主板芯片组