首 页文档资料下载资料维修视频汽修在线平台
请登录  |  免费注册
当前位置:精通维修下载 > 文档资料 > 电工技术 > 机电工程
基于ARM和Internet的GPS数据透传及定位关
来源:电工技术  作者:佚名  2017-07-15 10:35:04

    摘要:为了实现动态GPS数据的实时无线传输和定位,综合应用了嵌入式软硬件、GPS导航、Internet、GPRS通信等热门技术完成了一个物联网项目。在SIM908模块基础上进行硬件电路设计和编程,通过捕获卫星信号、数据处理、Internet网络透传、服务器接收、形成定位坐标,最后在Google地球中动态显示定位点。经测试,系统达到了预期效果,可用于运动物体在监控中心的电子地图上实时定位,还实现了基站定位功能。

    1 系统简介
    GPS具有高精度、高效率、全天候、操作简便、多功能等特点,广泛应用于定位、导航、测量等方面。近年来,GPS、计算机与移动通信技术的交叉融合在物联网领域内发展迅速。定位就是将GPS接收机接收到的远程车辆等目标的当前位置在电子地图上同步表示出来的过程。由于GPS数据是实时更新的,因此能实现目标在电子地图中的实时定位。数据远程传输则可通过GPRS和Internet实现。
    基于ARM和Internet的GPS数据透传和定位系统框图如图1所示。被监测端采用ARM微控制器STM3 2(基于Cortex-M3内核和uCGUI图形支持系统)。GPS接收硬件负责接收卫星信号,根据计算得到地理坐标信息后,通过串口传送给STM3 2微控制器;STM3 2微控制器将接收到的GPS数据进行相应打包处理后,通过串口发送给GPRS模块;由GPRS模块通过基站传送到Internet网络中,向指定的IP端口发送数据包。服务器端上位机通过监控该端口来捕获数据,然后将GPS数据发送到Google地球或其它导航软件中实现对接,以便实时监测观察。该系统还加入了基站辅助定位功能。由于GPS卫星信号的接收必须在户外,因此当被监控端处于室内或在接收不到卫星信号的恶劣情况下,系统仍能通过基站信息定位到大致的区域。

    2 配置GPRS与Internet的连接
    SIM908模块集成了GPS导航技术、GPRS无线通信技术和ARM嵌人式技术,为实现内嵌GPS的应用节省了开发时间和费用,其优异的兼容性为开发人员带来很大的设计灵活度。GPRS终端借助GPRS无线网络实现数据的无线传输,所以需建立无线连接,再按照GPRS通信协议传输数据。首先进行相关配置来建立无线连接,即用GPRS串口调试工具或编制程序输入相关AT指令,初始化GPRS终端的TCP链接功能过程如下。
    (1)关闭回显,不需把收到的指令原封不动地发回对方,以便串口专心监测GPRS终端返回的参数。
    (2)设置GPRS网络附着,即将GPRS终端附着到GPRS网络中,以保证后面的操作能顺利进行,因为后面的操作都是基于GPRS网络连接进行的。
    (3)配置APN,即GPRS接入点的配置。中国移动上内网的APN为“CMWAP,上网卡及上公网使用的APN为“CMNET”。
    (4)域名解析。如果采用拨号上网,那么每次拨号都会动态分配到一个动态IP地址,但不可能每次IP变化都去更改STM3 2程序再重新烧录,因此用一个固定域名与IP实时绑定。
    (5)建立一条TCP链接。得到上步返回IP后,经过封装可形成指令:AT+ IPOPEN= " TCP" 、".*.*·*”,关。该指令包含作为接收端服务器的IP地址和端口号,要求和上位机软件的监听端口对应。
    (6)如果计算机连接了路由器,那么其IP是路由器的一个子网IP,需设置路由器转发规则,使接收到的指定端口数据自动转发给子网IP的计算机。
    (7)判断TCP链接是否建立成功。如果TCP链接建立成功,则会返回CONNET参数,反之会返回ERROR: N(N表示错误的类型)。发生错误的情况下,一般需从第(1)步重新进行链接,但唯独对于ERROR: 9要做额外处理,即用指令“AT+ IPCLOSE= 5”注销网络,再重新链接。
    (8)设置I/O模式为明文ASCII模式,即数据传输过程中不需转换。数据要封装成AT+ IPSEND=”发送字符串数据”格式。

    3 GPS数据格式及程序功能
    3.1 GPS数据格式
    GPS数据接收模块主要处理对象是NMEA-0813数据帧。NMEA-0813定义了GPRMC、GPGGA、GPGSV、GPGGA等类型的语句格式,它们表达的定位信息各有侧重,可根据实际需要进行选择[6、7]。其中GPRMC语句又称为推荐最小定位数据(Recommended Minimum SpecificGNSS Data),包括了时间、日期、位置、航向、速率等信息,其完整结构如下:
    MYMGPRMC,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,<10>,<11>,<12>,关<13><CR><LF>
    <1>UTC时间,hhmmss(时分秒)格式;
    <2>定位状态,A=有效定位,V=无效定位;
    <3>纬度ddmm. mmmm(度分)格式;
    <4>纬度半球N(北半球)S(南半球);
    <5>经度dddmm. nu-nmm(度分)格式;
    <6>经度半球E(东经)W(西经);
    <7>地面速率(000.0~999. 9节);
    <8>地面航向(000. 0~359. 9度,以正北为参考基准);
    <9>UTC日期,ddmmyy旧月年)格式;
    <10>磁偏角(000.0~180.0);
    <11>磁偏角方向,E(东)或W(西);
    <12>模式指示(A=自主定位,D=差分,E=估算,N=数据无效);
    <13>校验值。
    3. 2 GPS数据处理与应用
    STM3 2通过串口接收GPS终端传来的GPS数据并存储到缓冲区,在提取主要数据后向GPRS终端发送。STM32在此过程中起到主控模块的作用,由STM3 2程序来完成这些工作,其中接收串口数据采用串口中断实现。由于采用的是当前经纬度信息,因此只需传输GPRMC数据,以减小GPRS数据传输负担。程序识别到GPRMC语句后,就可确定有效数据的起始位置181。程序中要注意数据包都是以MYM开头,以回车换行(转义符号表示为/r/n)结尾191。在STM3 2上移植uCGUI进行相关信息显示,可观察当前的模块状态与命令返回参数,以便调试。上位机的电子地图软件接收到GPRMC后,解析出经纬度坐标并显示在地图上。本文采用Google地球,亦可自行编写程序,调用百度地图API显示电子地图。

[1] [2]  下一页

关键词:

  • 好的评价
      0%(0)
  • 差的评价
      0%(0)

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分)
Copyright © 2007-2017 down.gzweix.Com. All Rights Reserved .
页面执行时间:183,753.90000 毫秒