gpsone综合了gps、cdmalx(码分多址分组数据交换网络)、gis(地理信息系统)和互联网技术,是美国高通公司为基于位置业务而开发的定位技术,采用client/server方式。它将无线辅助a-gps和高级前向链路aflt三角定位技术有机结合,实现高精度、高可用性和较高速度的定位。在a-gps定位技术无法使用的环境中,会自动切换到aflt三角定位技术,确保定位的成功率和精确度。这里基于gpsone模块dtgs-800和低功耗单片机msp430设计并实现了具有定位、监控和报警功能的个人定位终端。
1 系统硬件设计
个人定位终端的硬件组成如图1所示。为了解决gps在室内和高层建筑密集区难以定位的问题,选用anydata公司的dtgs-800 gpsone模块;为了缩小体积、降低功耗和成本,主控单元mcu选用超低功耗的16位单片机msp430f147,显示器选用led。单片机负责控制 gpsone模块发起定位请求,接收并解析cdma网络控制中心发送的信息,获取当前的经、纬度及其他信息,并以短信的方式送至控制中心或操作者的手机。主控单元mcu如图2所示。它包括msp430f147,外接高速晶振和低速晶振,在不需要高速处理时,可将高速晶振关闭,只使用低速晶振,以降低功耗;msp430f147有2个串行异步通信接口(usart),其中一个(dcd、cts、dtr、ri、rfr/rts、txd、rxd引脚)接口连接dtgs-800的uar-t1,另一个(urxd0、utxdo)接口与pc机的串口相连,供系统调试使用。nrst、ms、tck、tdi、td0 引脚连接jtag插座,用于程序下载和在线调试;keyl和key2引脚分别接help和预留按键。外接的led ds3和led ds4分别用指示电池电量不足和dtgs-800与msp430之间的通信;battest用于检测电池电量。
dtgs-800模块是定位终端的主体,其内部集成有gpsone器件,采用gpsone解决方案定位;支持机卡分离ruim,提供标准rs-232数据接口和标准的at命令接口,为数据、语音、短消息和传真提供快速、可靠、安全的传输。该模块可采用外接电源或电池供电,电池供电电压为+4.0 v±10%,外接电源供电电压+4.5 v±10%,外接电源还能通过模块内部的电源管理器件为电池充电。
dtgs-800模块的电路如图3所示。其中dcd、cts、dtr、ri、rfr/rts、txd、rxd引脚连接msp430f147的uart1,是dtgs-800与msp430f147的通信通道;uim_data、uim_clk、uim_pwr_en、uim_reset接uim卡(图 4);sgl_sms、sgl_idel、sgl_gps、sgl_busy、sgl_power、sgl_ch-arge是系统状态指示信号,分别连接 6个led,用于指示新短信信号、cdma网络信号、gps信号、cdma网络忙、系统上电和电池充电等状态;batgauge接电池测试端,用于检测电池温度(图5)。
uim卡是cdma手机的一种智能卡,其功能类似于gsm手机中的sim卡。它支持专用的鉴权加密算法和0ta技术(0ver the air),可以通过无线空中接口方式对卡上的数据进行更新和管理。uim卡固定在卡座上,通过卡座的6个引脚与外部连接,如图4所示,其中 uim_reset和uim_clk需通过100 kω电阻下拉,uim_data需通过10 kω电阻上拉。
电源battery和charger模块如图5所示。dtgs-800模块的第88、90引脚是专用于电池供电的电源输入引脚。若需模块既可用外接电源又可用电池供电,可将外接电源接到第87和89引脚,电池接到第88、90引脚。此时,外接电源还能通过模块内部电源管理器件为电池充电。在模块只采用电池供电的情况下,需要给该模块一个power on信号;对该引脚进行第2次触发时,模块power off。
2 系统软件设计
该终端的软件设计有主程序、按键检测、电池检测、存储和串口通信5个模块。图6为主程序流程。
主程序模块负责其他4个模块的初始化和数据处理与存储。该模块判断接收数据的正确性,从中提取位置和其他有用信息,实现数据的分离和有效数据在片上ram 的临时存储,并将有用信息通过串口发送给dtgs8-800,dtgs-800再以短信的形式传给第三方。系统启动时,首先进行初始化,包括看门狗、定时器、电压检测模块(含md转换器)、uart、按键检测模块和dtgs-800的初始化;系统初始化完成后,如果没有中断请求则进入低功耗模式,以节约电量。
按键检测模块和电池检测模块都是以中断方式执行的。当有按键按下时,就会产生中断,通知控制器进行扫描,判断是哪个键按下,然后进行相应的处理;电池检测模块以一定时间间隔检测电池电量,如果电池电量不足则通知控制器开始计数,如果连续检测到电压过低状态超过一定次数后,则使相应的led闪烁,提醒用户充电。
如果用户发送报警信息,即按下help键,则产生中断请求,执行中断服务子程序,系统退出低功耗模式,进入“help”状态,发起定位请求,接收并解析定位信息,将有用信息和报警信息打包后,以短信的形式发送给helpnum指定的服务器,发送成功后,系统进入低功耗模式。
如果是第三方发起定位请求,系统则退出低功耗模式,进入“mpc定位”状态,发起定位请求,接收并解析定位信息,将有用信息以短信的形式发送给指定手机或服务器,成功后系统返回低功耗模式。服务密码及mpc的地址可通过短信以特定的格式远程设置。
3 系统测试
通过在不同环境下的综合测试,结果表明:该系统具有以下功能:1)进行mpc第三方定位(即网络侧发起定位);2)直接控制终端进行主动定位(即终端侧发起定位);3)支持单次定位和连续定位;4)支持ms-based和ms-assist定位模式;5)能远程设置各种参数;6)具有紧急报警、越区报警和超速报警等功能。
系统初始定位时间在20 s内,室内定位误差在500 m内,室外定位误差在20 m内;报警信息能在1 s内传到控制中心,出界、超速、电池电量过低等报警灵敏度高,系统可连续工作24 h,待机72 h,运行稳定可靠,可以满足个人定位系统基本的功能需求。
4 结束语
本文基于gpsone模块dtgs-800和低功耗单片机msp430f147,设计并实现了一个集个人定位、监控和报警于一体的个人定位终端,解决了在室内、隧道等场合gps无法定位的问题。由于采用低功耗处理器,使整个系统功耗降到最低。能够长期待机工作,为用户带来了极大方便,具有较高的实用价值。但由于系统使用cdma网络的短消息信道传输信息,实时性还不够理想。为了提高系统的实时性,可考虑改用gpsone模块内置的tcp/ip协议来进行信息传输。
手机OLED面板渗透率提升 加速2017年NOR Flash涨价
笔记本BIOS设置(高手必读)
现阶段中国产品哪些全球占有率最高?本文为你揭晓
交流恒流源电源作用和电路设计
浅析信号源的基本结构原理
基于GPSOne模块DTGS-800和MSP430F147的
空中宣讲会 | 嵌入式竞赛应用赛道ST选题指南解读
8253引脚功能图及参数说明
微雪电子树莓派RGB全彩LED扩展|RGB LED HAT (B)介绍
自动关灯电路
物联网设备安全需要端到端的方法
普通硬盘和固态硬盘的区别是什么
华为3nm芯片最新信息 华为12nm芯片的手机有哪些
5G网络发展时代,固网宽带该如何发展
什么是区块链ICO?为什么区块链ICO很重要?
瑞昱获多款MIPS32TM Pro SeriesTM内核授权
华为 以5“机”协同,共创行业新价值
石墨烯电池噱头大于实用 究竟是快充还是电容?
智慧路灯得到怎样的发展机会
准备好了吗?网络带宽将在2015年达到1Tbps