历史上的今天

今天是:2024年10月19日(星期六)

正在发生

2020年10月19日 | 基于嵌入式Linux系统的导航软件设计思路

发布者:Joyful222Life 来源: elecfans关键字:嵌入式  Linux系统  导航软件 手机看文章 扫描二维码
随时随地手机看文章

1 引言

随着汽车等各种车辆交通工具的普及,车辆导航设备的需求也变得日益旺盛。作为车载设备。不仅要有可靠的性能,而且需要具有便携、低功耗和低价格等特点。而采用基于ARM微处理器的嵌入式系统GPS模块相配合的GPS导航终端机的设计方案,可以很好的满足这一系统需求。为此,本文介绍了一种利用ARM9开发板和GPS模块实现GPS导航功能的终端机的软硬件结构和设计方法。


2 GPS导航系统结构

本文所介绍的GPS全球定位导航系统按功能可分为嵌入式主控模块、GPS模块、显示模块、扩展模块及供电模块等五大部分。


嵌入式主控模块基于S3C2440处理器,主要负责对GPS导航模块数据的响应、处理和控制。在硬件上,主控模块就是一个嵌入式开发板,包括触摸LCD接口电路、SD卡接口电路、FLASH、SDRAM等。而在软件上,主控模块上应当运行嵌入式Linux系统。而嵌入式Linux操作系统的主要作用是管理程序模块进程并调度进程等。


GPS模块主要用于接收导航卫星数据,并以特定的格式发送给主控模块。显示模块可选用3.5寸TFT带触摸屏LCD,主要用于与用户进行交互。扩展模块主要指的是SD卡。供电模块主要为系统正常工作提供电源。图1所示是该系统的结构图。


1.jpg

3 GPS数据的提取

GR-87型GPS模块的输出语句遵循NMEA-0183标准。该标准的语句都是以“$”开始,以《CR》《LF》结束。 “$”之后是5字符地址,头两个字符为发送者识别码(GPS为“GP”),后3位为语句名称。定位信息中的数据由“,”来划分。GPS模块一般每秒可以输出一次NMEA-0183格式语句。在导航系统中,一般只需要用到时间、日期、经纬度、速度。而由于RMC语句完整包含了系统所需的上述信息,因此。只需要对RMC语句进行提取即可。图2所示是对GPS数据进行提取的具体流程。



2.jpg


4 导航地图的实现

在获得了经纬度等定位信息之后,还需要将它们直观的显示在电子地图或其它显示媒体上,这样才能真正起到导航的作用。要想将其准确的显示在电子地图上,就需要用一定的算法进行转化,即地图匹配算法。


一般来说,地图匹配的基本思路是通过车辆的GPS轨迹与地图上矢量化的路段对象进行匹配,从而寻找当前所行进的道路,并将当前的GPS定位点投影到道路上。


地图匹配的关键是确定匹配点,设计时可以用投影法来寻找匹配点。投影法的基本思路是依据点到直线的距离来确定最小的值为投影的匹配点,并用最邻近法进行处理,然后通过设置阈值来滤掉错误匹配点,得到初步结果,从而完成点到线的匹配。


具体的实现方法是先预处理道路层,再将道路转换为折线段,找到当前道路,然后把当前定位点投影到道路上,再找到离定位点最近的公路图层中的一条线段,之后再计算得到点到线上距离最短的点,最后查找各层中在误差范围之内的道路。


其算法的基本流程代码如下:


3.jpg

导航地图的实现可以采用嵌入式图形界面工具Qt embedded来实现。该图形界面为人机交互界面,用户可以通过屏幕来了解导航信息,也可以直接操作触摸屏来操作系统,如地图的缩放、查看定位信息等。


5 结束语

由于ARM处理器具有低功耗、高性能等特点,因此可以广泛用于各种便携式电子产品中。本设计在现有的电子产品基础上,通过外接GPS模块来扩展GPS导航功能,可为用户在节省费用的同时又不损失太多的便携性。为此,作者希望使用ARM开发板和GPS模块相结合来实现GPS导航功能的方法,可以为智能设备扩展GPS功能提供一个参考。

关键字:嵌入式  Linux系统  导航软件 引用地址:基于嵌入式Linux系统的导航软件设计思路

上一篇:ARM Cortex M3/M4微控制器最大效率设计三秘诀
下一篇:基于UDP协议的ARM与X86平台之间的通讯方案

推荐阅读

搭载Qualcomm骁龙850移动计算平台的三星Galaxy Book2在纽约正式发布。时尚纤薄的二合一设计、突破性的千兆级LTE连接、多个工作日续航以及“即开即用”、 “始终更新”的特性,让三星Galaxy Book2为消费者带来了全新水平的移动生产力。 Qualcomm全球产品市场副总裁莫珂东(Don McGuire)出席了此次发布会,他表示:“PC用户应该享受到如同智能手机一般...
1.3d 原理 -- 简介3D 成像是靠人两眼的视觉差产生的。人的两眼(瞳孔)之间一般会有 8 厘米左右的距离。要让人看到 3D 影像,就必须让左眼和右眼看到不同的影像,使两副画面产生一定差距,也就是模拟实际人眼观看时的情况。3D 的立体感觉就是如此由来的。2.3d 原理 -- 偏振式 3D偏振式 3D 技术也叫偏光式 3D。属于被动接收,往往应用于投影机...
随着社会的快速发展,人们的生活节奏也愈加繁忙,家中的家务活自然是无暇顾及。这时候更多的智能清洁产品也开始出现在人们的生活中,其中完全解放双手的扫地机器人也凭借突破性技术受到了大众的喜爱,让扫地机器人市场从蓝海变成红海。而在这几年的国内扫地机器人行业中,不仅有国外品牌强势进入,也有不少的国内新品牌迅速崛起。其中,比较有代表性的新秀...
高价值模拟半导体代工解决方案的领先厂商Tower Semiconductor(NASDAQ/TASE:TSEM)今日宣布即将启动“2021年度全球技术研讨会”在线活动。在此次活动中,公司管理层将全面介绍各个先进的模拟技术平台;涵盖RF和高性能模拟、电源管理与传感器,包括由当前和未来不断增长的市场需求所驱动且与之相一致的最新创新与发展路线图。此外,内容还将展示公司的全...

史海拾趣

问答坊 | AI 解惑

ip核的问题

各位用的X,A,L公司的FPGA时候,用到的一些常用接口,比如,IIC,SPI,UART,DPRAM,FIFO,PCI之类的是不是用商家软件提供的IP核?还是自己写的?商家提供的IP核稳定么?…

查看全部问答∨

【求助】MSP430机器语言的机器周期问题~~~

哪位高手有这方面的介绍啊~~~~~~~~~ 请赐教!!! 小弟在这里谢谢了。…

查看全部问答∨

LM3S8962 GPIO 带弱上拉的开漏

这几天在看LM3S8962 的GPIO 方向和模式的时候 遇到一个问题 在配置GPIO 为输入做按键检测的时候 为什么只有在 配置为带弱上拉的推挽下 才能准确的检测按键 而配置为带弱上拉的开漏输出地时候 管脚输出一直为0呢?…

查看全部问答∨

基于MSP430g2553单片机DAC7678驱动

求大神给个多通道电压型DAC的驱动程序,MAP430的。。谢了…

查看全部问答∨

【加工方法】DIY之非金属材料的加工方法讨论—工欲善其事必先利其器

        【原创内容,转帖请注明https://bbs.eeworld.com.cn】         我们在介绍遥控坦克的机械结构过程中曾经穿插讨论过一次材料的加工问题(https://bbs.eeworld.com.cn/thread-363 ...…

查看全部问答∨

新人,请指教万国半导体的AO3400封装怎么办?

原理图用到了AO3400,但发现元件库里没有这个器件怎么办?…

查看全部问答∨

【ESP8266】清除Flash内容

当因为某些意外原因导致MicroPython运行后输出乱码,刷固件也不能恢复时,需要清理(擦除)Flash,然后在刷固件才能恢复正常。 使用esptool.py可以很方便的擦除ESP8266的Flash。注意下面命令中的串口需要根据实际串口设定,如果擦除的速度过快(不 ...…

查看全部问答∨
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved