基于SOPC技术的便携式定位系统方案

最新更新时间:2013-05-26来源: 互联网关键字:SOPC技术  便携式  定位系统 手机看文章 扫描二维码
随时随地手机看文章
随着GPS(Global Positioning System)全球定位系统的不断改进,应用领域正在不断地开拓,目前已遍及国民经济各种部门,并开始逐步深入人们的日常生活。当前基于GPS定位产品体积一般较大,且处理核心大多采用单片机,单板机等,产品开发周期长,开发成本高,产品升级不方便,生命周期短。

  超大规模集成电路技术的发展,尤其是PLD和FPGA技术的发展,使得在一块可编程芯片上实现整个的嵌入式系统成为可能。 SOPC(System on a programmable chip)技术将CPU,存储器,I/O接口等系统设计所必须的模块集成在一片FPGA上,具有设计灵活,可裁减、可扩充、可升级、软硬件在系统可编程的功能[1]。

  本文设计了一种基于SOPC技术的便携式定位系统,并针对GPS在城市高楼和地下停车场等地方容易出现定位盲区的问题,提出采用GPS/数字指南针组合定位的解决方案。本文首先介绍了系统组成和硬件实现,再对软件开发作了详细分析,并给出了源程序,最后对试验样机进行了试验,验证了系统的可行性。

  1 系统基本结构

  基于NIOSⅡ的便携式组合定位系统由两部分组成:接收终端和监控中心。接收终端接收GPS/数字指南针组合定位信号,并通过GPRS模块发往监控中心,监控中心将接收到的组合定位信号进行数据融合,采用基于模糊模式识别技术的地图匹配法,借助GIS电子地图库中的高精度道路信息作为分类模板来进行模式识别,根据识别结果来提高GPS接收数据的定位精度,实现数据与电子地图的实时匹配,实时地显示接收终端佩戴者所在的位置,授权用户也可以通过 Internet随时随地查看终端佩戴者的位置。一旦发生紧急情况,终端佩带者可以触发终端上的报警按钮,由监控中心实时进行相应处理。

  2 接收终端硬件设计

  系统接收终端硬件由一块FPGA芯片和GPS模块,GPRS模块,数字指南针模块,报警模块等组成,在FPGA芯片中主要实现NIOSⅡ软核处理器,片上存储器和数字接口电路的功能。

  NIOSⅡ是Altera公司推出的32位RISC嵌入式处理器,能和用户逻辑相结合,编程至Altera FPGA中。处理器具有32位指令集,32位数据通道和可配置的指令及数据缓冲,实现成本低,在FPGA中实现成本只要35美分,灵活性大,采用软核形式,具有完全的可定制特性,设计人员可根据实际需求在多种系统设置组合中进行选择,达到性能、特性和成本最优化,具有超过200DMIP的性能[2]。可以通过下载硬件配置文件到FPGA来实现更新,非常方便。

  根据系统的功能要求和NIOS II软核处理器的高度可配置性,在硬件开发工具SOPC Builde定制的NIOS II软核处理器系统如图1所示,在一块Altera EP1C12Q240C8 FPGA上实现了NIOSⅡ软核CPU,OnChip RAM,Timer,UART,Epcs controller等模块,NIOSⅡ软核CPU和其它IP模块之间通过Avalon片上总线相连,该总线规定了主部件和从部件之间进行连接的端口和通信的时序。

  图1定制的NIOSⅡ处理器系统

  UART串口通信模块用于NIOSⅡ处理器和外部的通信,本系统通过串口采集GPS和数字指南针的定位信号,并通过串口将定位信号和报警信号发给GPRS模块发往监控中心。On Chip RAM为系统提高片上存储单元,CY1C12Q240C8提供了239,616 bits的RAM单元,系统无需扩展外部存储器。Epcs controller模块用于系统上电时,控制硬件配置文件和程序从串行配置芯片下载到FPGA中。Timer定时器模块提供系统定时中断,报警模块由一个按钮组成,终端佩带者遇到紧急情况时通过触发按钮向监控中心报警。电源模块给系统提供系统电源,晶振模块给系统提供系统时钟。

  3 接收终端软件实现

  接收终端软件开发在集成开发环境Nios II IDE中进行,主要完成定位数据的采集和与监控中心的通信。

  3.1 软件开发环境Nios II IDE

  Nios II IDE是Nios II软核处理器的主要开发工具,它基于开放和可扩展的Eclipse平台,为软件开发提供了一个完整的C/C++设计开发环境,它包括一个具有工程管理、源代码开发、基于JTAG调试功能的图形用户界面(GUI),借助于HAL(Hardware Abstraction Layer,硬件抽象层)可以用类似C语言的库函数来访问硬件设备或文件[3],缩短软件开发周期。

  3.2 HAL系统库

  HAL(Hardware Abstraction Layer,硬件抽象层)系统库可以为嵌入式软件开发人员访问底层硬件提供简单的设备驱动接口,NIOS II软核处理器支持HAL,其为用户提供了以下支持:与ANSI C集成的标准库-提供类似C语言的标准库函数;设备驱动,提供访问系统中的每个设备的驱动程序;HAL API,提供标准的接口程序如设备访问、中断处理等;系统初始化和设备初始化,提供main( )函数之前处理器和系统外围设备的初始化。基于HAL的系统层次如图2所示。

  

  图2 基于HAL的系统层次

  3.3 接收终端软件开发

  根据系统的功能,软件设计流程图如3所示。

  

  图3 软件设计流程图

3.3.1 终端初始化程序设计

  终端初始化主要是在系统上电时完成硬件配置文件的下载,系统初始化和设备初始化等。使用main( ) 函数,HAL系统库能自动初始化系统。但自动初始化屏蔽了底层操作,一些没有用到的设备驱动程序也进行了初始化,增加了程序代码长度和降低了系统效率,ANSI C标准提供了一个供用户自由初始化系统的函数alt_main( ),用户可以在该函数中自由初始化系统而代替main( )的自动初始化,本系统的alt_main( )函数如下:

  

  3.3.2 定位数据的采集程序设计

  定位数据的采集主要采集GPS和数字指南针的定位数据,采用串口接收中断的方式。NIOS II中,串口包括6个16位的寄存器,在软件中对应的数据结构为:

  程序

  串口被当成字符设备,对其访问可以通过标准输入(stdin)和标准输出(stdio)来完成,也可以通过打开和写文件的方式,本系统采用直接访问寄存器方式,采用系统自动生成的访问宏,这样可以采用精简Newlib C,减少程序代码长度,并采用串口中断方式接收数据,NIOS II中使用中断首先要向系统注册,并且要打开硬件中断。中断采集GPS信号主要程序如下:

  

  3.3.3 定时器中断方式程序实现

  系统采用定时中断方式与监控中心通信,将定位数据发往监控中心。NIOS II提供了两种类型的时钟,HAL系统时钟(HAL system clock)和基于时标驱动(timestamp driver)的时钟,后者适用于对时钟具有高精度的场合。系统时钟提供了定时的功能,使用定时器和使用中断方式一样,首先要通过 alt_alarm_start ( )函数向系统注册一个时钟中断,再在时钟中断服务程序中实现GPRS发送,alt_alarm_start ( )函数声明如下:

  alt_alarm_start (&alarm,alt_ticks_per_second( ),GPRS_ISR ( ),NULL)

  其中alarm为定时中断变量,由系统自动初始化,第二个形参为注册时钟中断后多长时间后开始执行服务程序,alt_ticks_per_second ( )为每秒系统时钟的“滴答”数,此处为一秒后开始执行,GPRS_ISR ( )为服务程序,NULL为服务程序的形参,此处为空。

  定时中断服务程序完成将定位数据通过GPRS模块发往监控中心,通过串口向GPRS写数据实现,通过下条语句实现:IOWR_ALTERA_AVALON_UART_TXDATA(BASE, DATA) //向串口写数据,BASE为串口基地址,DATA为要写入数据。

  3.4 软件开发中应注意的问题

  针对NIOS II软核处理软件开发特点,总结以下需要注意的几点:

  (1) HAL系统库作为NIOSⅡ处理器支持的软件包,可以给软件开发人员提供便利,包括自动初始化系统,可以使用ANSI C标准库等,但这样是以增加代码长度为代价的。

  (2) 进行NIOSⅡ软核处理器的嵌入式软件开发时可以通过多种方式减少软件代码和提高工作效率,包括使用自定义初始化函数alt_main( ),使用精简Newlib C库,优化软件编译参数,自定义指令等,但这样无疑对软件开发人员提出了更高的要求。

  (3) 编写中断服务程序时要注意防止系统“死锁”,尤其是使用ANSI C标准库函数访问IO设备时。

  4 试验结果

  该系统样机与GPS单一定位的定位系统在武汉徐东地下通道进行了对比试验。试验结果如图4、图5所示。从对比结果可以看出,GPS单一定位的定位系统在地下通道区出现了定位盲区,而本系统接收终端在地下通道行走时,监控中心地图上还可以实时显示轨迹,克服了以往单一GPS定位系统的定位盲区,验证了该系统的可行性并体现了其优越性。

  

  图5 GPS单一定位轨迹

  

  图6 本系统定位轨迹

  5 总结

  本文采用SOPC技术,设计并实现了一种基于NIOSII软核处理器的便携式组合定位系统,并采用GPS和数字指南针组合定位,克服了单一GPS定位的盲区。与传统的便携式定位产品相比,该系统具有开发周期短,开发成本低,产品生命周期长,适用范围广等优点。该系统体积小,便于携带,并可以缝制在衣服、饰物品中。适合于老人、小孩、智障人群佩戴,以便对他们进行监控,防止他们走失,也适合一些特殊行业,例如邮政、公安、电力、冶金行业,市场前景可观。

关键字:SOPC技术  便携式  定位系统 编辑:神话 引用地址:基于SOPC技术的便携式定位系统方案

上一篇:转换器输入阻抗计算方法及测量技巧
下一篇:基于USB的家电自动化

推荐阅读最新更新时间:2023-10-12 20:46

固定式便携式氧气检测仪的不同优点
  固定式便携式氧气检测仪的不同优点有哪些呢?我们除了通过字面上的区分,其实还有更专业的详细介绍,从而能够更加全面的了解不同形式的氧气检测仪性能特色,更加有利的选择最佳的检测仪器,来满足企业的安全,从而减少安全生产的隐患,帮助企业提升效益。   固定式便携式氧气检测仪的不同优点可以通过对比直观的看到,固定式氧气检测仪通常是工业在线式氧气检测为目标,进行实时检测,可以把数据上传到电脑上,进行统计归纳,为企业的安全生产提供有利的数据支持,更加有利于企业安全生产设的完善工作。而便携式氧气检测仪主要便于检查人员,定时或者随时的对所处环境中氧气含量的检测,从而保障安全。   固定式氧气检测仪也成为在线式氧气检测仪或
[测试测量]
固定式<font color='red'>便携式</font>氧气检测仪的不同优点
测压传感器介绍及在医疗电子中的应用
  测压传感器基本上是可将力或重力转化为电信号的换能器。数十年来,这种传感器广泛用于各行各业的测量和传感领域。大多数测压传感器的核心部件是电阻应变计。该元件受到拉力或压力时,电阻会发生变化。箔应变计是最常用的一种,由经过热处理的超薄金属箔片制成。该箔片可以在介电薄层上化学蚀刻而成,或者采用真空沉积或溅射技术,通过材料的分子键合附着在介电层上。后一种技术通常称为薄膜法。理想的应变计应该体积小,成本低,对于负荷方向上的应变极为灵敏,而且不受周围环境温度变化的影响。 要通过应变计测量应变,所用电路必须能够测量微小应变带来的微弱电阻变化。应变计换能器通常包括4个应变计元件,这些元件通过导线连接成惠斯顿电桥电路。作为应变测量的最
[医疗电子]
测压传感器介绍及在医疗电子中的应用
一款便携式简单型锂电池充电器的制作
由于我的四轮驱动机器人上采用了16.5V的锂电池供电,而市场上又没有该电池的充电器,使得充电让我很纠结。无奈之下便设计了一款便携式简单型锂电池充电器。解决的充电的烦恼。   该充电器可以输出100mA-1A可调的充电电流,输入电压为VIN》18V,可用笔记本上的19V电压充电。充电时间一般按照充电输出电流的大小决定。   下面见图   下面讲解一下电路的工作原理。因为我是给16.5V的锂电池充电的,所以输入的电压为18V电压,也可以大于18V.用笔记本上的充电器很不错哦。   输入电压18V经过1.5A的保险丝,二极管保护后到PNP功率管的输入端。默认状态功率管是出于导通状态,因为LM324的1脚输出高,Q3三
[电源管理]
一款<font color='red'>便携式</font>简单型锂电池充电器的制作
一种低噪声便携式的心电监测仪设计方案
0 引 言 监护仪是一种用以测量和监控病人生理参数,并可与已知设定值进行比较,如果出现超差可发出报警的装置或系统。便携式监护仪小型方便,结构简单,性能稳定,可以随身携带,可由电池供电,一般用于非监护室及外出抢救病人的监护。心血管疾病是人类生命的最主要威胁之一,而心电(Electrocardiogram,ECG信号是诊断心血管疾病的主要依据,因此实时监测病人心电活动,设计自动采集病人心电信号的便携式系统具有重要意义。 传统的导联系统采用通用的三电极方式,右胸上电极及左腹下电极为心电采样电极,右腹下电极为右腿驱动电极。这种联接方式有效实用,有利于便携使用。便携式监护仪分析处理系统可以分为两大部分,一是携带在被检查者身上的袖珍监护仪
[单片机]
一种低噪声<font color='red'>便携式</font>的心电监测仪设计方案
欧盟科研团队成功研制便携式石棉检测器
  石棉具有坚韧、富有弹性、防火、易加工等特性,使其成为优良的建筑材料,长期广泛应用于世界建筑行业。但愈来愈多的研究表明,石棉对人体的危害极大,其中被称之为“间皮瘤”的肺部肿瘤尤甚。世界卫生组织(WHO)的统计数据显示,目前世界上仍有1.25亿人暴露在含有石棉材料的工作场所,预计每年有10万工作人员因此患上石棉相关疾病。     欧盟第七研发框架计划(FP7)提供资助,由英国赫特福德大学科技人员牵头负责,欧盟5个成员国英国、西班牙、荷兰、意大利和爱沙尼亚14家科研机构与创新型中小企业组成的欧洲ALERT研发团队。利用欧盟研发框架计划的科技成果,即探测石棉纤维新的光散射技术,经过3年时间的努力,成功研制出便携式石棉检测器,并注册AR
[测试测量]
便携式系统选择电源拓扑方案的分析及对比
本文将讨论各种 电源 拓扑,尤其是在将锂离子 电池 电压转换为3.3V电压 电压轨(大多数便携式设备的 电源 电压)时的利弊。本文还将说明降压/升压转换器的不同应用,并解释降压/升压转换器的解决方案需“量身定做”的原因。 从图1可以看出,将锂离子电池电压转换为3.3V电压轨的设计很有挑战。在充满电的情况下,典型的锂离子电池放电曲线的起始电压为4.2V。X轴起始点为“-5分钟”,对应的电压为电池充满电时的开路电压。在“0分钟”时,电池接入负载,由于内部阻抗以及保护 电路 的作用,电压开始下降。电池电压缓慢降至约3.4V,然后电压开始快速下降,原因是放电周期已接近终点。为充分利用电池储存的电量,3.3V电压轨需要在放电周期的大部
[电源管理]
【MEDICA】日本大学展示便携式“乳腺癌检测仪”
  日本大学在2011年11月16~19日于德国杜塞尔多夫举行的“MEDICA 2011”上,展出了便携式“乳腺癌检测仪”。设想用于在家中或其他场合轻松作检测。   该仪器在日本贸易振兴机构(JETRO)设置的“日本馆”一角展示。其大小和重量可单手握持贴在胸部使用。无需像乳腺X光机那样将胸部夹住。另外,现场禁止对试制品拍照。       该检测仪采用了名为“相移法”的技术。装置在对着胸部的一面,配置了LED发光元件和光敏元件。工作原理是:检查时,装置发出波长850nm的光,并检测来自胸部的反射光。如果患有癌症,“因血管聚集,其颜色与周围相比会稍有变化(会变红),光线会被吸收所以反射光会减少”(日本大学)。对这种变化,可
[医疗电子]
基于单片机设计的便携式超声波水声声压计设计
  随着水下超声波技术的发展,在很多应用场所提出了测试其声强的需要。我们采用CS-3型水听器设计便携式超声波声压计。   系统设计   设计目标要求:实现15-45kHz超声波声压、声强的测量。测量的范围是0-10个大气压(或声压级范围:30-120dB)。测量的误差为在总体的频率范围内大小3dB,对单一频率小于1dB。   CS-3型水听器的特性是在10-100kHz,其M参数的不一致性小于3dB。M参数是指水听器受单位声压的作用而产生的输出电压,单位是V/Pa。用分贝表示的M参数是:   M(dB )=20log(M/Mo),其中Mo为参考声压Mo=1V/礟a。   声强I=P2 /(r*C),其
[单片机]
小广播
最新模拟电子文章
换一换 更多 相关热搜器件
随便看看
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved