关键词:GSM,Q2303C,AT指令,PIC
本文介绍一种基于GSM的简易定位设备的设计和开发。利用GSM网络,通过单片机读取GSM无线模块的蜂窝信息进而判断目标设备的位置,并通过比较两次读取的位置信息,判断目标设备是否发生了移动。此设备可以用于对定位精度要求不高的场所,用作位置跟踪。并可以通过二次开发应用到许多需要使用GSM网络进行监控的场所。
从事本设备开发需要具备下列知识和技能:
1) GSM AT指令相关知识。
2) Q<?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" />2303C GSM无线模块使用。
3) PIC单片机开发知识。
4) PCB设计及电子电路设计知识。
5) C语言。
本设备应用非常简单,通过手机发送短信或拨打电话即可进行控制,使用非常简单。应用场景如图 1系统应用框图。
<?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" /><?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
本系统通过使用GSM无线模块,由单片机通过串口读取GSM模块内部的蜂窝信息,通过对蜂窝信息进行分析和处理,以判断目标设备当前的位置状态。系统支持工作模式和待机模式。在工作模式下,由单片机定时进行查询,此时模式功耗会增加,因此平时不推荐使用。待机模式下,设备始终处于待机省电状态,功耗低,只有当收到短信和电话时,才唤醒设备,CPU根据电话号码或短信内容进行相关处理。
1) CPU
CPU选用PIC18LF252单片机。使用低压单片机,方便串口直接与无线模块对接。
2) 无线模块
无线模块选用Q2303C。此模块只支持GSM900/1800标准,支持电话和短信功能,价格低,连接器便于生产加工,体积较小,可以满足本设备的设计要求。
系统硬件框图如图2。
图 2硬件框图
单片机与GSM模块设计要点如下:
1) 通过串口与无线模块通信,同时串口进行了兼容设计,支持PC机与单片机的通信调试。
2) GSM模块的RING信号引入单片机中断管脚,用于电话唤醒CPU。
3) 串口接收信号也同时引入中断管脚,用于短信唤醒CPU。
4) 采用8M晶振,串口波特率9600;
5) GSM无线模块的ON/OFF,INTR,RST,引入单片机进行控制。
6) GSM无线模块输出的VCC只可用于SIM电路,不要用于ON/OFF,INTR,RST等信号的上拉,因为VCC只有等模块工作正常后才有输出,所以如果使用VCC上拉ON/OFF,INTR,RST会导致模块无法注册。
7) 本设备使用外置天线,将天线直接焊接在PCB上。
电源及充电电路设计要点如下:
1) 电源供电使用4.2v/1500maH的锂电池供电,电池内部集成充放电保护电路,单板待机功耗20mA,待机时间120H以上。
2) 单片机最低工作电压为2.5V,因此使用3V稳压芯片得到3V电源。
3) 无线模块直接由电池供电。
4) 电池充电采用5.5v/500maH充电器充电,充电电路设计中提供二极管防止电池倒灌,TVS管用于防雷。
5) 充电器接口电路设计简单的分压电路引入单片机中断,用于检测充电器插入。
系统软件框图如图3。
图 3系统软件框图
本系统支持两种模式:待机模式和工作模式。
待机模式下,系统处于休眠状态,只有当有电话或短信到时,由中断唤醒CPU,对电话或短信进行处理,电话用于查询位置信息,短信则用于查询位置信息和进行参数设置。
工作模式下,系统由定时器控制,定时时间到后,则读取当明蜂窝信息进行处理,当位置发生移动时,则向设定的号码发短信通知。如果有电话或短信到来时,中断唤醒CPU,对电话或短信进行处理。系统软件流程如图,其中绿色部分仅在工作模式下才用到。
图 4系统软件流程图
本文介绍的GSM定位设备体积小,成本低,在一些对定位精度要求的场合已经得到应用,可以实时跟踪目标的移动,适合用于一些紧急场合。
用户211545 2008-12-27 22:17