微波EDA网,见证研发工程师的成长!
首页 > 应用设计 > 汽车电子 > 基于GPS-GSM的汽车短信防盗系统设计方案

基于GPS-GSM的汽车短信防盗系统设计方案

时间:10-29 来源:互联网 点击:
  摘 要:针对目前汽车防盗设备存在的问题及市场应用前景,作者提出了一种新的汽车防盗系统的设计方案。本系统由STC89C52单片机、TC35i无线通信模块、XN934+一体化GPS模块、继电器等元件构成。经测试,本系统可以对汽车进行实时监控,且其定位精度为5m,实现了汽车防盗功能。

  0 引 言

  我国每年都有大量的汽车盗窃案件发生,根据北京市交管局统计,2006年北京市日均发生汽车盗窃案件达10多起,严重危害了人民群众的财产安全,且近年来相关案件的发生数量大幅上升,做案手段不断升级,做案活动已向职业化、智能化、集团化发展。针对以上情况,本文设计了一种基于当前已分布广泛的GSM(Global System for Mobile CommunicatiON )网络和高精度的GPS(Navigation Satellite Timing and Ranging Global Position SySTem)定位技术的汽车防盗系统。通过收发短信操作,便可实现对车辆位置的实时监测,帮助车主管理车辆,并可在车辆被盗后进行有效的追回。本系统具有很高的灵敏度、良好的实时性,且系统结构简单、成本低廉。

  1 系统工作原理

  如图1所示,本系统通过单片机控制继电器切换单片机与GPS模块及无线通信模块TC35i之间的通讯。在车主不需要对车辆进行监控时,单片机的串口输入和TC35i的串口输出相连。当车主离开车辆时手动驱动继电器吸合,将单片机的串口输入和GPS的串口输出连接,系统自动采集GPS位置数据后开始对车辆进行实时监测。当系统连续两次检测出由GPS模块采集到的位置信息有一定差异时,由继电器恢复单片机的串口输入和TC35i的串口输出连接,并发送警告短信息“车辆情况危险,当前位于东经XX、北纬XX”给车主。

  

  图1 系统通讯模块框图


  2 系统硬件组成

  本系统采用单片机作为微处理器,利用GPS模块采集汽车的位置信息,然后通过无线通信模块实现与车主的实时通信。本系统硬件部分的组成具体如下:
  (1)STC89C52:该款单片机价格低廉,能很好完成本系统的控制任务,具有较高的性价比。
  (2)TC35i无线通信模块:TC35i西门子工业GSM模块是支持中文短信息的工业级GSM模块,工作在EGSM900和GSM1800双频段,其数据接口通过AT命令可双向传输指令和数据,可以很好地实现信息的传输。
  (3)一体化GPS模块:采用XN934系列型号为XN934+的GPS模块,工作电压为3.3V,工作温度为-40~85℃,定位精度为5m,其输出接口为RS232,可以直接与单片机接口连接,且耗能低、体积小、便于集成。
  (4)继电器:采用松川小型继电器,其触点形式为三开三闭。
  (5)电源:系统由12V 直流电源供电,单片机系统与GPS模块由以7805芯片为核心的稳压系统供电。
  系统硬件结构框图如图1所示。

  3 系统软件设计

  系统流程图如图2所示。

  

  图2 系统流程及控制框图

  程序:
  #include< P>
  #include< P>
  #define OVER 0x0d
  #define S_OVER 0x1a
  void Delay(unsigned char ms) //延时子程序
  void UART1_Init(void) //串口1初始化
  void UART_Init(void)
  void SendASC(char ASC)
  void ClrRsBuf(void) //清理缓存
  void SendToTc35(char*p,unsigned char Long) //发送命令到TC35
  nsigned char idata*mystrstr(char q[],unsigned char qx)//查询匹配字符
  void Rs485_Do(void)interrupt 4using 1 //通讯中断接收程序
  void Send_AT(void) //发送AT连机命令
  void SetText(void) //设置文本
  unsigned char EraseMsg() //删除短信息
  unsigned char ReadMsg() //读取短信息
  void SendMsgStart(void) //发送短信息
  void UART2_Init(void) //串口2
  void Read_Gps(void) //读GPS
  void Check_GPS(unsigned char j,char undercheck[]) //检查GPS
  void main()
  {
  D11=1; //开机完成
  while(1)
  {
  if(!b){ //是否处于固定位置模式
  if(bn){ //检测GPS间隔
  {
  Check_GPS(5,SNalarm_GPS); //分别读出开始和当前经纬度
  if(((aa1-aa2)>80)||((ba1-ba2)>80)) //检测位置是否变化
  {
  b=1; //位置已变,发送完警告信息,关闭固定位置模式
  }
  }
  }
  }

  4 系统实物图及测试结果图

  系统实物图(图3)列出了本系统的全部硬件。本系统结构设计较为紧凑,便于安装,系统安装在汽车上后可以采用汽车的电瓶为其供电,进一步简化了本系统,并降低了其成本。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top