基于ARM的智能导航盲杖系统设计

发布者:冰心独语u最新更新时间:2011-10-10 关键字:ARM  智能导航盲杖 手机看文章 扫描二维码
随时随地手机看文章

本文采用了基于ARM11-Win CE平台的嵌入式系统作为系统的控制平台,以提高系统的性能、集成度以及可扩展性;运用GPS定位技术和TTS文语转换系统,实现了对视障人士的GPS定位及电子地图导航;利用超声波测距功能,系统可以提供一定距离内的障碍物探测与告警。为实现上述功能,采用Trimble公司的GPS接收模块Lassen iQ实现了GPS定位功能,处理器采用三星公司的S3C6410(ARM1176JZF-S核心)芯片,操作系统为Windows CE 6.0。

  1 系统硬件设计

  1.1 系统整体结构

  本智能导航盲杖系统是为了实现GPS定位、电子地图查询、路径选择以及超声波探测、语音输出等主要功能,系统设计图如图1所示。各个功能模块实现功能如下:

  

 

  (1)GPS信号接收模块:接收GPS信号,输出当前经纬度、移动方向与速度、时间等信息。完成与中央处理器的通信,报告工作状态,并接收中央处理器的控制[1]。

  (2)存储模块:存储系统程序、电子地图数据以及GPS获取的信息等,可以进行存储、读取、查询信息等操作。

  (3)超声波测障模块:发送和接收超声波脉冲,反馈给中央处理器并接收其控制信号。

  (4)人机接口模块:包括显示和键盘输入、语音输出,采用中央处理器控制和监测。

  (5)中央处理器:控制并接收GPS模块、超声波测障模块产生的信号,监视键盘状态,并控制LCD显示、语音输出等。

  1.2 系统主要模块设计

  (1)GPS模块。系统选择Trimble公司的Lassen iQ GPS接收器作为GPS信号接收模块,其接口电路如图2所示。为了利于在户外手持使用,系统要考虑体积、功耗以及精度的需求。系统选用的GPS模块面积仅有8 cm2,功耗小于89 mW,而其GPS定位精度可达10 m,速度精度能够达到0.1 km/h,GPS方向可精确到2°,基本能够满足本系统的要求。

  

 

  (2)中央处理器。系统选用Samsung公司的S3C6410A-XH66作为中央处理器。

  S3C6410A-XH66是一款基于ARM1176JZF-S内核的32 bit RSIC微处理器,其优化的外部存储器接口分为DRAM和Flash/ROM/DRAM两路端口,能满足本系统读取电子地图时对数据带宽的要求。另外,S3C6410A-XH66还有Camera接口、TFT 24 bit真彩色LCD控制器、4通道的UART、I2C总线等。处理器内部时钟为533 MHz,可以满足较复杂导航算法的需要。[page]

(3)存储模块。系统选用两片64 M×16 bit的Mobile DDR芯片K4X1G163PC,构成共256 MB的内存模块,以及一片1 G×8 bit的NAND Flash芯片K9G8G08U0M作为外部存储。内存模块设计如图3所示,两片K4X1G163PC的连接方式相同,使用1.8 V工作电压,主频为166 MHz,在处理器内部时钟为533 MHz时,能够接近最高使用效率。需要注意的是,在进行PCB布线工作时,两片内存芯片的地址线和数据线必须进行等长设置。

 

  

 

  (4)超声波测障模块。该模块使用两个超声波换能器,分别完成超声波发送和检测接收的任务。发送模块在设计之初采用反相器74LS04,但在测试过程中发现由于脉冲时间过短,而造成反相器输出波形不够理想。经过多次调试比较,最终采用Philips公司的高速反相器74HC04,其在工作电压VCC为4.5 V时,标准跳变时间可达6 ns,极佳地实现了系统功能。超声波检测接收模块使用CX20106进行信号放大,如图4所示。

  2 系统软件设计

  系统软件的设计充分利用了硬件平台提供的资源[2],实现业务流程的有序运行,是整个系统设计的重要组成部分[3]。软件的设计主要有:(1)建立交叉编译环境。(2)Windows CE 6.0操作系统(包括驱动)的移植。(3)GPS定位与导航程序设计。(4)超声波测障功能设计。

  2.1 GPS定位与导航模块软件设计

  GPS定位与导航模块首先要完成用户位置信息的采集、处理与存储。由于GPS采用串行口通信,所以本文在串行口通信的基础上实现了对GPS数据的接收、处理和存储。该模块软件设计的基本思想是:首先接收完整的NMEA0183语句,然后提取相关的数据(如时间、经纬度、速度等),再将这些数据发送给中央处理器进行下一步操作,并且可以保存以便日后查看[4]。

  本系统使用Lassen iQ的串口1输出的数据,串口通信流程如图5所示。所获取的NMEA0183语句格式为:$GPRMC,162 206,A,3 955.400 7,N,11 612.0591 E,000.0,000.0 181010 002.5,W*71,表示目前的时间是2010年10月18日16点22分06秒(这是UTC时间,不是本地时间,两者大约相差8小时),位置是北纬39°55.4007′、东经116°12.0591′,速度为0。

  

[page]

系统在获取到当前经纬度等信息后,进行坐标转换和地图匹配[5]。本系统结合超图格式(pwr,pmw)的北京市地图数据,调用超图接口函数读取电子地图数据,并对用户选择的目标点和当前点进行路径选择,最终导航信息以文本方式输出到界面,如图6所示。在经过添加TTS(Text to Speech)文语转换系统后,可将导航信息以语音播报的方式播送给盲人用户使用。

 

  

 

  2.2 超声波测障模块软件设计

  本模块的主要功能是自动测出用户与最近障碍物的距离,并将该数据传送给中央处理器。在一般条件下,当障碍物与用户之间小于极限安全距离(一般为0.6 m)时,系统会发出警告,提醒用户注意避让。

  超声波测障软件工作流程如图7所示。S3C6410微处理器通过一个GPIO口的一个反相器来控制超声波的发送,然后不停地检测XEINT0引脚,当XEINT0引脚的电平由高电平变为低电平时,认为超声波已经返回,通过换算超声波所经历的时间,就可以得到传感器与障碍物之间的距离。

  

 

  本文设计了基于ARM11-Win CE的软硬件平台,系统具有较高的集成度和可扩展性、成本低、功耗低、处理性能高、稳定性好等特点。软硬件系统均考虑到了视障用户的切身需求,针对视障人士的特点进行专门的功能设计,完全支持盲操作,提高了视障人群在日常生活中的便利性,是定位于视障人士独立出行的辅助性器材。

 

关键字:ARM  智能导航盲杖 引用地址:基于ARM的智能导航盲杖系统设计

上一篇:基于ARM处理器S3C2440的无线监控系统设计
下一篇:用单片机控制红外线通信接口电路设计

推荐阅读最新更新时间:2024-03-16 12:43

ARM(RISC)和x86(CISC)的技术差异
RISC和CISC,这一对冤家,从诞生之日开始就处在不停的纠缠之中。直到今天,两者经过多年的发展后,都在各自领域打开了一片天地,并且相互渗透。RISC专注高性能、高性能功耗比、小体积以及移动设备领域,CISC专注桌面、高性能和民用市场。现在,RISC的代表是ARM,而CISC的代表则是我们耳熟能详的x86。那么,他们的技术差异在哪里?究竟是怎样的技术分歧带来了两者如此大的差别呢? 指令集的出现 要说清楚RISC和CISC,也就是今天热门的ARM和x86之间的差异,还得把时间往前推一些,观察计算机诞生之初的一些事情,才能很清楚地了解指令集、精简和复杂之间的关系。 机器语言的实例 机器语言 含义 0000,0000,
[单片机]
<font color='red'>ARM</font>(RISC)和x86(CISC)的技术差异
基于ARM核处理器的机器人手臂控制系统
近年来,随着MEMS及相关技术的发展,微机器人领域已越来越来受人关注。但由于零件的尺寸很小,微机器人组件的装配需要很高的精确度,一般的装配方法无法满足要求。本文介绍了一个可进行微零件装配工作的机器人手臂控制系统的控制方法。 1 系统结构 考虑到多机器人手臂的使用,整个机器人控制系统由上位机与多个下位机组成。下位机即是手臂控制器,每个下位机控制一个机械手臂的伸缩运动。上位机即为控制终端,通过不同配件组装方式生成每个手臂的位置数据,并通过数据线传输给各个下位机,由下位机控制手臂到达目标位置并进行目标操作。整个系统的结构框图如图1所示。 1.1 机械结构 如图2所示,手臂控制器的机械结构由直流减速电机、手臂、
[工业控制]
ARM汇编语言源程序格式
Semihosting 在ADS的C语言函数库中,某些ANSIC的功能是由主机的调试环境来提供的,这套机制有一个专门术语叫Semihosting。 Semihosting通过一组软件中断(SWI)指令来实现。 当一个Semihosting软中断被执行时,调试系统先识别这个SWI请求,然后挂起正在运行的程序,调用Semihosting的服务,完成后再恢复原来的程序执行。 因此,主机执行的任务对于程序来说是透明的。 SWI传递的功能号 (例如: semi-hosting, 使用0x123456 (ARM) or 0xAB (Thumb) 续 在此例中,表格jumptable中存放地是子程序地入口地址,我们把这种表格称为跳转表格。 注意
[单片机]
ARM与台积电携手完成16nm FinFET工艺测试 年内客户或超20家
    对于英特尔来说,要想在移动芯片市场多分得一杯羹,就需要借助其更加先进的制造能力的优势。而今日宣布的新款Atom SoCs——举例来说——即基于22nm的3D或“三栅极晶体管”工艺。与传统的(基于平面晶体管结构的)芯片相比,新架构使得芯片可以在较低的电压水平上,更有效率地运作——在降低能耗的同时,更能延长系统的续航时间。 至于半导体行业中的其它公司,已经在向3D晶体管工艺(更常用的称呼为“FinFETs”)迁移的过程中,落后于英特尔。 如果没有这种新的结构,那么向28nm以下制程迁移的过程就会变缓。其中一部分原因为,随着平面型晶体管(planar transistor)变得更小,其能源效率和成本就变得不那么有吸引力。 幸运的
[手机便携]
基于ARM的车载音响设计与研究
  引言   纵观目前我国国内车载音响产品,大部分仍为卡式机或CD机,需要对高档汽车音响的设计与研发加大力度。本文设计了一种带Radio、IRDA 、MP3、DVD等功能的车载音响,具有很高的市场价值。   系统硬件架构   系统的硬件电路部分主要由按键、红外遥控、MOTOR控制、收音机、MP3、DVD以及LCD显示模块等构成,模块部分都由MCU通过相应的通讯协议进行控制。鉴于MCU在处理速度、外设功能以及价格等方面的考虑,32位ARM处理器在片内资源、性价比方面都明显优于8位MCU。这里选用ARM7TDMI处理器S3C44B0作为主控芯片。该芯片与外设的连接如图1所示。 图1 MCU与各种外设连接图
[单片机]
基于<font color='red'>ARM</font>的车载音响设计与研究
ARM开发(9)基于STM32的简单四则运算计算器
一 计算器原理: 1.1 本实验实现基于STM32的简单四则运算计算器 1.2 实验思路:理解计算器原理(按键扫描,字符实时显示,运算表达式计算,浮点数转字符串,字符串结果显示) 1.3 开发环境 : MDK5 库函数版本开发 JLINK仿真 STM32F103VBT6芯片 二 实验步骤: 2.1 key.h代码: #ifndef __KEY_H #define __KEY_H #include sys.h #define KEY_NULL 0 // no key #define KEY_0 40 // value 0 #define KEY_1 41
[单片机]
Spansion:3D图形MCU,让普通汽车变身豪车
近日,Spansion面向汽车仪表系统内丰富的人机接口技术推出最新Spansion Traveo微控制器系列,首次将其突破性HyperBus接口与基于ARM Cortex-R5的嵌入式Traveo MCU相结合,实现了与Spansion的HyperFlash闪存技术的无缝连接。 Spansion微控制器与模拟业务部门市场部营销总监王钰表示,Traveo系列微控制器可帮助汽车制造商充分利用更低的整体系统成本优势,让客户能够享有以前只有在豪华轿车才可享有的极致驾驶体验。 据王钰介绍,Spansion在2013年的收入为13亿美元。从市场领域来看,汽车电子领域的营销收入占到了30%。从区域来看,欧洲和日本是Spansion公司的
[嵌入式]
ARM处理器与嵌入式系统
  引言   由于各种新型微处理器的出现和应用的不断深化,嵌入式系统在后PC时代得到了空前的发展。随着时间的推移和技术的进步,在工业控制和新兴的手持式应用等领域,用户体验成为产品成功的关键因素之一,越来越多的产品需要良好的用户界面、互联功能以及较强的数据处理能力,这对嵌入式处理器硬件、软件、教学等提出了新的要求。   1 嵌入式处理器与硬件   在处理器方面,目前大量的中、低端嵌入式应用,主要使用8/16位单片机。在国内,由于历史的原因,主要是以MCS51核为主的许多不同型号单片机,主要厂商有Atmel、Philips、Winbond、宏晶等。还有一些近几年发展较快的新型单片机,如PIC、AVR、MSP430系列等。这些单片
[单片机]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

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

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

换一换 更多 相关热搜器件
随便看看
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved