CN101600168A - 经由gsm的无线传感器网络远程数据传输系统 - Google Patents

经由gsm的无线传感器网络远程数据传输系统 Download PDF

Info

Publication number
CN101600168A
CN101600168A CNA2009100300151A CN200910030015A CN101600168A CN 101600168 A CN101600168 A CN 101600168A CN A2009100300151 A CNA2009100300151 A CN A2009100300151A CN 200910030015 A CN200910030015 A CN 200910030015A CN 101600168 A CN101600168 A CN 101600168A
Authority
CN
China
Prior art keywords
gsm
gprs
monitoring
wireless sensor
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CNA2009100300151A
Other languages
English (en)
Inventor
李伟
王秀凯
闫述
陈祖爵
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Jiangsu University
Original Assignee
Jiangsu University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Jiangsu University filed Critical Jiangsu University
Priority to CNA2009100300151A priority Critical patent/CN101600168A/zh
Publication of CN101600168A publication Critical patent/CN101600168A/zh
Pending legal-status Critical Current

Links

Images

Abstract

本发明涉及无线通信领域,具体涉及一种经由GSM的无线传感器网络远程数据传输系统。该系统由监测主机、汇聚节点、一般节点、手机、以及安装在汇聚节点上的GSM/GPRS模块组成,通过GSM/GPRS模块使无线传感器网络实现GPRS和GSM双路远程数据的传输。本发明适用范围广,在无线GSM/GPRS网络的覆盖范围之内,都可以进行大面积环境监测,能满足一些环境恶劣的偏远地区的监测需求。系统还具有短信息远程维护功能,通过发送带有相应指令的手机短信可以实现激活GRPS连接,设定数据采集间隔时间等功能,保证了系统工作的稳定性,可靠性强。因此,在远距离、大面积的监测系统中具有广泛的应用前景。

Description

经由GSM的无线传感器网络远程数据传输系统
技术领域
本发明涉及无线通信领域,具体涉及一种经由GSM的无线传感器网络远程数据传输系统。
背景技术
无线传感器网络在国家安全、国民经济等各方面均有着广泛的应用前景。其中,大面积环境监测是无线传感器网络应用的重要领域。在监测区内,无线传感器网络由大量廉价微型节点组成,通过无线通信方式形成多跳的自组织网络,协作地感知、采集和处理网络覆盖地区所要探知的信息,然后传送给监控中心。目前从无线传感器网络到监测中心的远程数据传输手段主要有:卫星通信(Polastre J,Szewczyk R,Mainwaring A,Culler D.Anderson J.Analysisof wireless sensor network for habitat monitoring.Wireless Sensor Networks,2004:399-423)、直接接入Internet网关节点(南京邮电大学王汝传,董挺挺,孙力娟,黄海平,陈志.无线传感器网络与因特网的连接装置及连接方法.国家发明专利公开号101087304,中国专利信息网,公开日期2007.12.12),全球移动通信(Global System for Mobile Communication,GSM)(ChinE Lin,Chih-Ching Li,An-Sang Hou,Chih-chen Wu.A real-time remote control architecture usingmobile communication,IEEE Transactions on Instrumentation and Measurement,2003,52(4):8-18)以及在此基础上发展起来的通用分组无线业务(General Packet Radio Service,GPRS)(Kalden R,Metrtck I,Meyer M.Wireless internet access based on GPRS,IEEE PersonalCommunications,2003,52(4):997-1003)。这些手段中的卫星通信的业务申请比较繁琐、费用较高,直接入网方式受Internet网覆盖范围的限制,只能解决一部分无线传感器网络与Internet网的互访,偏远地区的远程数据传输还无法实现;而全球移动通信网络已经覆盖了我国绝大部分地区,利用GPRS模式和GSM模式实现无线传感器网络与监测中心的远程数据传输是一种符合中国国情,并能达到实际应用程度的数据传输方式。这两种模式都是通过在无线传感器网络的汇聚节点上安装GPRS硬件模块,经由移动网传输数据。其中GPRS模式把传感器采集的数据打包封装后通过TCP/IP协议接入GPRS网络,由移动服务商转接到Internet网,再通过各种路由、网关到达监测中心的计算机上;GSM模式可以通过手机发送指令实时接收传感器侦测来的短信,在管理人员离开监测计算机时也能实时了解监测区域的信息。本发明将无线传感器网络的一般节点、汇聚节点、GPRS模块、移动网、Internet网之间通过软件编程构成经由GSM的无线传感器网络远程数据传输系统,具有GPRS模式到GSM模式之间的切换功能,可以和GPRS模式共同应用。本发明较之单独的GSM模式(清华大学邓志东,裴忠民.基于无线传感器网络的家用保安、环境监测报警系统.国家发明专利公开号CN1949814A,中国专利信息网,公开日期2007.4.18)可以进行GPRS和GSM之间的功能互补。由于移动公司对GPRS连接空闲时间做了一定的限制,当长时间没有数据通信时,移动网关会自动断开通信连接,因此可以用基于GSM网络的手机短信激活GPRS连接,实现双路(GPRS模式与GSM模式)远程数据传输,使通信的稳定性和可靠性更高,更灵活。
对比文件:
发明内容
为了使无线传感器网络环境监测中稳定可靠并且能对所有监测节点进行实时控制,本发明提供了一种经由GSM的无线传感器网络远程数据传输系统,即采用手机短信和GPRS网络二者相结合的方式进行远程数据传输。
无线传感器节点本身的最大通信距离理论上只有300m~500m(实际应用中受周围环境影响更短),仅适合短距离且为视距距离的通信。要将监测数据传输到几km、几百km甚至几千km的监控中心,需要解决远程数据传输问题以及监控中心对所有监控节点的实时控制。本发明经由GSM网络通过手机短信获得远程双向数据传输能力,同时还要解决与GPRS模式之间的切换,由于移动公司对GPRS连接空闲时间做了一定的限制,当长时间没有数据通信时,移动网关会自动断开通信连接,因此用GSM网络的手机短信激活GPRS连接,提供GPRS和GSM双路远程数据传输的可能性。
本发明所采用的技术方案是:
一种经由GSM的无线传感器网络远程数据传输系统,由监测主机、手机、GSM/GPRS模块、汇聚节点和一般节点组成,其中
监测主机:用于接收和存储无线传感器网络的监测数据;
手机:用于接收和存储无线传感器网络的监测数据;发送短信控制指令给汇聚节点;
GSM/GPRS模块:用于将一般节点采集的数据通过GPRS网络发送到监控主机或通过GSM网络发送到管理人员手机;自动接收手机短信控制指令并通过RS232串口传给汇聚节点;
汇聚节点;接收一般节点采集的数据,对这些数据进行处理并通过GSM/GPRS模块发送至监测主机或者管理人员手机,同时自动接收来自手机短信的控制指令并实施相应的控制;
一般节点:用于实时监测环境,并将采集到的数据发送给汇聚节点。
一种经由GSM的无线传感器网络远程数据传输方法,其步骤或流程是:
(1)系统初始化,进行GSM网络连接并设置为TEXT模式。
(2)对短信内容进行解析,使汇聚节点能够识别手机发送的短信控制指令。
(3)对手机短信控制指令进行判断,实现短信激活和短信备用数据传输通道功能
(4)定时激活GPRS连接,并发送远程监测数据到监测中心。
(5)发送带有温度信息的中文短消息给手机。
(6)开启服务器并接入Internet网,运行网络调试工具NetAssist.exe,并进行正确的通讯设置。
本发明如图1所示,系统由1台监测主机、手机,1个GSM/GPRS模块,1个汇聚节点(基站),若干一般节点组成。采用的是性价比适当的ATmega128单片机(美国Atmel公司),CC2420射频收发芯片,GSM/GPRS模块SIM300(SIMCOM公司)。传感器一般节点通过安装不同的测量芯片可以实现对温度,湿度等各类参数的监测。图2为温度监测系统一般节点结构图。
通过在汇聚节点上安装GSM/GPRS模块就可以使无线传感器网络实现GPRS和GSM双路远程数据的传输。由于两种模式不能共存,必须通过GPRS模式和GSM模式的切换使其完成系统的功能。先建立GSM连接,通过手机发送相应的短信指令激活GPRS连接或者通过设置汇聚节点的定时器在指定时间自动激活GPRS连接,从而向监测中心发送传感器监测到的数据。
3、有益效果
本发明适用范围广,在无线GSM/GPRS网络的覆盖范围之内,都可以进行大面积环境监测,能满足一些环境恶劣的偏远地区的监测需求。系统可同步接收、处理多个数据采集点的数据,较之单独的GSM模式可以进行GPRS和GSM之间的功能互补,当管理人员因故不在监测电脑前时,可启用短信作为备用数据传输通道,把含有实时监测信息的短信发送到管理人员手机。系统还具有短信息远程维护功能,通过发送带有相应指令的手机短信可以实现激活GRPS连接,设定数据采集间隔时间等功能,保证了系统工作的稳定性,可靠性强。因此,在远距离、大面积的监测系统中具有广泛的应用前景。
五、附图说明
图1表示无线传感器监测系统的总体结构图
图2表示无线传感器温度监测系统一般节点结构图
图3表示无线传感器温度监测系统程序流程图
六、具体实施方式
为进一步解释本发明的目的、技术方案和有益效果,下面结合具体实施例并参照附图和相关C语言程序代码来对本发明详细说明。
本实施例结构如图2所示,程序流程如图3,用于对新疆煤田地区的温度实施远程监测。其中,汇聚节点主要由微处理器ATmega128L、射频收发芯片CC2420及天线组成。ATmega128内集成有4KB的RAM,4KB的EEPROM,128KB的Flash,以及2个UART串行接口等。CC2420芯片工作在2.4GHz频率,微处理器ATMEGA128通过SPI接口与CC2420交换数据、发送指令。SIM300模块同时支持GSM/GPRS,内嵌TCP/IP协议,已获得国内的无线电设备入网证。SIM 300体积小、重量轻、工作温度范围宽,具有标准AT命令接口。本系统使用的是SIM300开发板,可以直接同汇聚节点的串口进行连接使用。相关AT指令如下所示:
(1)AT+CSCA=″短信中心号码″。不同地区短信中心号码不同,如镇江为+8613800511500,返回OK表示设置成功;
(2)AT+CMGF=1/0。其中1设置消息内容为文本模式(TEXT),0设置消息内容为PDU模式。返回OK表示设置成功;
(3)AT+CNMI=2,1。“AT+CNMI”用于设置模块收到新短信后的指示方式,当有短信发送到模块时,为使单片机读取短信,需要知道短信的序列号(index),故设置模块为收到短信后有提示信息返回,返回内容为:+CMTI:″SM″,index。
此外还应设置成不打开回报功能,否则会干扰单片机处理工作,影响系统工作效率。返回OK表示设置成功。
(4)AT+CMGD=index删除序列号为index的短信,返回OK表示成功。
(5)AT+CMGS=029发送短消息,返回“>”后,可输入PDU编码形式的短信内容,用“Ctrl+Z”(在程序中用0X1A表示)表示发送,发送成功后返回OK。(其中029表示短消息内容转换为PDU编码后的长度)
(6)AT+CMGR=index读取序列号为index的短信,读取成功后返回该序列号的短信内容。
(7)AT+CIPSTART=″TCP″,″202.195.161.9″,″81″。建立TCP连接,服务器IP地址为202.195.161.9,端口号为81,返回OK表示连接成功。
(8)AT+CIPSEND。通过GPRS网络发送数据,返回“>”后可输入要发送的内容,用“Ctrl+Z”(在程序中用0X1A表示)表示发送,发送成功后返回OK。
(9)AT+CIPCLOSE。关闭GPRS连接,返回OK表示关闭成功。
(10)AT+CIPSHUT。关闭移动场景,返回OK表示关闭成功。
步骤1)系统初始化,进行GSM网络连接并设置为TEXT模式。
系统初始化程序如下:
void IoInit(void)
{      /*接收使能、发送使能、接收中断允许*/
UCSR0B=_BV(RXEN0)|_BV(TXEN0)|_BV(RXCIE0);UBRR0L=8;//波特率设置为57600
/*I/O流UART连接*/
fdevopen(usart_putchar,usart_getchar,0);}
微处理器ATmegal28通过串口向SIM300模块发送AT指令可以进行GSM连接。相关程序如下:
void msg_start()//SIM300建立TEXT模式的GSM连接
{Printf(″AT\r\n″);
While(recevicedchar!=′K′);
recevicedchar=0;
Printf(″AT+CSCA=\″+8613800511500\″,145\r\n″);
While(recevicedchar!=′K′);
recevicedchar=0;
Printf(″AT+CMGF=1\r\n″);//设置为TEXT模式
While(recevicedchar!=′K′);
recevicedchar=0;
Printf(″AT+CNMI=2,1\r\n″);//收到短信后有提示信息返回,内容为:+CMTI:″SM″,index。
While(recevicedchar!=′K′);
recevicedchar=0;
Leds_greenOn();
}
基于GSM网络连接方式的短信可分为TEXT与PDU。大多数关于GSM短信的设计,均采用PDU模式。然而控制指令采用英文字符更便捷,且DU对发送纯英文字符并不合适,因为它会自动对数据进行7-bit编码。把英文字符的最高位(bit7)省略掉,将众多7-bit的ASCII字符整合为8-bit的数据。虽然数据量减少了,但是单片机接收时,解码程序会占用过多的程序存储器,降低处理效率,所以本发明采用TEXT和PDU相结合的模式。向管理人员发送的监测数据短信为中文,需要采用PDU模式,向系统发送的控制指令短信为英文,需要采用TEXT模式。
步骤2)对短信内容进行解析,使汇聚节点能够识别手机发送的短信控制指令。
1、建立缓冲区
由于短信传到串口包含很多字符,而串口中断却是收到一个字符就会产生一次,如果出现一次中断就急于处理,短信字符可能没接收完整就已经进行了判断,从而无法实现执行控制指令。所以必须等字符收全后再处理。这就需要建立一个接收缓冲区(因为本系统中控制字符仅为4个,故设20为缓冲区的长度,多余的字符会在处理过程中自动舍去,不计入缓冲区,以提高处理效率。),将读取的字符全部存入到缓冲区中后,再对这些字符进行处理即可。建立缓冲区程序如下:
//短信索引结构
typedef struct{
unsigned char In_Dex[2];//短信索引
unsigned char Mess_len;//索引长度
}MESSAGE_t;
//短信内容结构
Typedef struct{
unsigned char M_state;     //信息状态,1未读,0已读
unsigned char Sender[14];//发信息者号码
unsigned char M_DATA[17];  //时间
unsigned char M_main[30];//信息内容
unsigned char M_Length;  //信息长度
}Message_xinxi_t;
bool NEW_Message_Flag=0;
volatile unsigned char UART1_RX_state=0x00;//串口1接收状态机
volatile unsigned char RX1_counter=0;//串口1接收辅助记数
volatile unsigned char RX1_BUF[20]={0};//串口1接收缓冲区
MESSAGE_t Message={{0},0};
Message_xinxi_t M_XinXi={0,{0},{0},{0}};
Message_xinxi_t*P_xinxi=&M_XinXi;
2、解析串口收到的数据
这里串口收到的数据包括模块自动返回到串口的提示序列号的数据和短信数据。要判断短信的内容是否含有所需的控制字符,首先需要知道所收短信的序列号,这样才能正确读取该序列号的短信内容,从而对短信内容进行解析,执行我们需要的程序。由于设置的是新信息到达后自动返回提示信息,所以当有新信息到达时会自动返回“+CMTI:″SM″,index”到串口(序列号用index表示)。由于单片机串口一次最多只能接收一个字符,所以直接从+CMTI:″SM″,index提取index是不可行的,需要按照顺序从符号″+″开始依次判断。为此设置一个串口接收辅助记数变量RX1_counter,一旦正确接收到″+″,程序会将RX1_counter的值+1,再接收到“C”,RX1_counter继续+1,依次类推,直到出现“0X0a”为止(0X0a对应的ASCII码表示换行,一旦出现该字符,表示自动返回的提示信息已经接收完毕,可以提取index)。如果在接收“+CMTI:″SM″,index”的过程中漏掉一个字符,其它字符都已经接收到,程序仍会将变量RX1_counter置0,这样就保证了序列号index数值的准确性。
提取序列号采用atoi()函数,它将由字符数组In_Dex[]构成的序列号直接转换成整型数:index=atoi(Message.In_Dex)。这样当序列号为两位数的时候也可以直接提取。提取程序如下(其中recevicedchar为串口中断每次接收的字符型变量):
switch(UART1_RX_state)//UART1_RX_state初始值0x00串口1接收状态机
{case 0x00:RX1_BUF[RX1_counter]=recevicedchar;//引导同步头
          switch(RX1_counter)          //串口1接收辅助记数RX1_counter
          {Case 0:if(RX1_BUF[0]!=′+′)
                      RX1_counter=0;
                      Else
                      RX1_counter++;
                   Break;
           Case 1:if(RX1_BUF[1]!=′C′)
                      RX1_counter=0;
                      Else
                      RX1_counter++;
                   Break;
           Case 2:if(RX1_BUF[2]!=′M′)
                      RX1_counter=0;
                      Else
                      RX1_counter++;
                      Break;
           Case 3:if(RX1_BUF[3]!=′T′)
                      RX1_counter=0;
                      Else
                      RX1_counter++;
                      Break;
           Case 4:if(RX1_BUF[4]!=′I′)
                      RX1_counter=0;
                      Else
                      RX1_counter++;
                      Break;
           Case 5:if(RX1_BUF[5]!=′:′)
                      RX1_counter=0;
                      Else
                      RX1_counter++;
                      Break;
           Case 6:if(RX1_BUF[6]!=″)
                      RX1_counter=0;
                      Else
                      {RX1_counter=0;
                           UART1_RX_state=0x11;}
             Break;
             Default:break;
             }
             Break;
   Case 0x11:RX1_BUF[RX1_counter]=recevicedchar;
            RX1_counter++;
            if((RX1_counter>4)&&(RX1_BUF[RX1_counter-1]==′,′))
            {RX1_counter=0;
              if((RX1_BUF[1]==′S′)&&(RX1_BUF[2]==′M′))
                  UART1_RX_state=0x12;
              Else
                 UART1_RX_state=0;
}
             Break;
   case 0x12:RX1_BUF[RX1_counter]=recevicedchar;//信息索引
             RX1_counter++;
            If((RX1_counter>0)&&(RX1_BUF[RX1_counter-1]==0x0A))
           {for(BYTE k=0;k<RX1_counter-2;k++);
                {Message.In_Dex[k]=RX1_BUF[k];
                  Message.Mess_len=RX1_counter-2;
                }
              NEW_Message_Flag=1;
          RX1_counter=0;
              UART1_RX_state=0x00;
          Read_Message(P_xinxi);
            }
            Break;
    Default:break;
    }
当提取出序列号的数值后,只要发送AT+CMGR=index指令到串口,模块就会自动返回该序列号的短信内容。例如控制3号节点的短信传到串口其返回内容为:
+CMT:″+8615862938263″,″08/09/02,15:34:01+3″
0003
读取短信后,还需要将短信的内容提取出来进行判断。提取程序如下:
void Read Message(Message_xinxi_t*P_xinxi)//读消息
{Unsigned char k=0;
  Unsigned char BUF[30]={0};
  k=0;
  do    //接收响应信息
{BUF[k]=usart_getchar();
   k++;
   If((BUF[0]==′E′)&&(BUF[1]==′R′))
     Return;
    }while(BUF[k-1]!=′,′);
    if(BUF[12]==′U′)
       P_xinxi->M_state=1;
     Else
       P_xinxi->M_state=0;
  k=0;
  do//接收响应信息--发送方手机号码
      {BUF[k]=usart_getchar();
       k++;
       }while(BUF[k-1]!=′,′);
       For(k=0;k<14;k++)
        P_xinxi->Sender[k]=BUF[k+1];
  k=0;
  do//接收响应信息--,分割符
      {BUF[k]=usart_getchar ();
       k++;
      }while(BUF[k-1]!=′,′);
  k=0;
  do//接收响应信息--时间信息
      {BUF[k]=usart_getchar();
      k++;
      }while(BUF[k-1]!=′+′);
  For(k=0;k<17;k++)
      P_xinxi->M_DATA[k]=BUF[k+1];
k=0;
  For(k=0;;k++)//接收回显
 {BUF[k]=usart_getchar();
  If((BUF[k]==0X0A)&&(BUF[k-1]==0X0D))
    Break;
 }
 k=0;
 do//接收响应信息
   {
    P_xinxi->M_main[k]=usart_getchar();
    k++;
    If(k>20)
    Break;
   }while(P_xinxi->M_main[k-1]!=0x0A);
    P_xinxi->M_Length=k-2;
到这里已经短信息内容已经提取完毕,可以开始判断了。
步骤3)对手机短信控制指令进行判断,实现短信激活和短信备用数据传输通道功能
一旦提取出短信内容,系统就会对短信内容进行判断。本系统采用“0001”,“0002”,“0003”分别作为1号节点,2号节点,3号节点采集温度并向手机发送相应温度信息的控制字符,实现短信备用数据传输通道功能;采用″GPRS″作为激活GPRS连接的控制字符。判断这些短信指令,使用了memcmp(void*buf1,void*buf2,unsigned int count)函数。它的功能是比较内存区域buf1和buf2的前count个字节。以使3号节点向手机发送温度短信为例:
Unsigned char des_address11[4]=″0003″;
if(!memcmp(P_xinxi->M_main,des_address11,4));
本系统中激活GPRS连接的控制指令为“GPRS”,相应的程序为
Const unsigned char GPRS[4]=″GPRS″;
If(!memcmp(P_xinxi->M_main,GPRS,4));
通过上面的程序,一旦收到短信控制指令,就会通过USART接收中断执行相应的中断处理程序。系统所用的USART接收中断如下
void_attribute((signal))_vector_18(void)//USART接收中断
需要注意的是,因为控制指令是基于GSM网络的,所以一旦激活GPRS连接且数据通过Internet网传输至监控中心后,系统将重新切换为GSM网络的Text模式。切换方法只需要重新运行步骤1提到的void msg_start()函数即可。
步骤4)定时激活GPRS连接,并发送远程监测数据到监测中心。
在ATmega128的定时器中断中,可以设定间隔时间,使系统每隔这段时间自动由GSM连接方式切换为GPRS连接方式,再通过Internet网向监测中心发送远程监测数据。需要注意的是,每次必须先关闭GPRS连接和移动场景后,才能进行GSM网络连接。而从GSM连接转为GPRS连接,无需关闭,可以直接进行。系统所用的定时中断如下:
void_attribute((interrupt))_vector_26(void)//定时器A中断函数,在该中断函数中可以设定时间间隔。
相关程序如下:
void gprs_start()    //SIM300模块进行GPRS连接
{printf(″AT\r\n″);
  While(recevicedchar!=′K′);
  recevicedchar=0;
  Printf(″AT+CIPSTART=\″TCP\″,\″202.195.161.9\″,\″81\″\r\n″);
  While(recevicedchar!=′K′);
  recevicedchar=0;
  While(recevicedchar!=′K′);
  recevicedchar=0;
  Leds_redToggle();
 }
 void gprs_send()    //基于GPRS连接发送监测数据
  {printf(″AT+CIPSEND\r\n″);
   While(recevicedchar!=′>′);
   recevicedchar=0;
 }
  void gprs_close()    //关闭GPRS连接
 {printf(″AT+CIPCLOSE\r\n″);
  while(recevicedchar!=′K′);
  recevicedchar=0;
  printf(″AT+CIPSHUT\r\n″);
  while(recevicedchar!=′K′);
  recevicedchar=0;
    }
步骤5)发送带有温度信息的中文短消息给手机
要使发送的温度信息为中文,需要由Text模式切换为PDU模式,由于在PDU编码中数字由1个字节转为2个字节,例如0x03(对应数字3)转为0x0003且温度信息为实时的,因此要正确发送带有实时温度信息的中文短信需要用到以下3个函数将温度值转换为相应的PDU编码形式的字符串:
itoa(int value,char*string,int radix);//整数转换为字符串;
atoi(const char*nptr);//把字符串转换成整型数;
sprintf(string format,mixed[args]);//把整数打印到字符串:
具体程序如下:
itoa(temperature,buf,10);//温度值转为字符串
     aa=buf[0];
     high=atoi(&aa);//提取温度值高位,
     aa=buf[1];
     low=atoi(&aa);//提取温度值低位
     sprintf(str,″003%d003%d″,high,low);//将温度值高低位写入相应PDU编码形式的字符串中
/*切换为PDU编码形式*/
printf(″AT+CMGF=0\r\n″);
While(recevicedchar!=′K′);
recevicedchar=0;
/*发送中文短信到管理人员手机*/
printf(″AT+CMGS=029\r\n″);
While(recevicedchar!=′>′);
recevicedchar=0;
/*温度为:XX℃(XX为温度的实时测量数值)*/
printf(″0011000D91685168928362F30008010E6E295EA64E3AFF1A%s2103″,str);
usart_putbyte(0x1A);//发送结束标志
最后,开启服务器计算机并接入Internet网,运行网络调试工具NetAssist.exe,并进行正确的通讯设置。只要到达指定时间或者收到含有“GPRS”的控制指令,服务器端的网络调试工具数据接收栏里便会显示“当前节点监测的温度是XX℃”。当管理人员因故不在检测电脑前时,通过发送“0001”,“0002”,“0003”等短信指令,系统会把1号,2号,3号等相应节点采集的温度信息发到管理人员手机。

Claims (2)

1、一种经由GSM的无线传感器网络远程数据传输系统,包括监测主机、汇聚节点和一般节点,其特征在于,还包括手机、以及安装在汇聚节点上的GSM/GPRS模块,通过GSM/GPRS模块使无线传感器网络实现GPRS和GSM双路远程数据的传输,其中
监测主机:用于接收和存储无线传感器网络的监测数据;
手机:用于接收和存储无线传感器网络的监测数据;发送短信控制指令给汇聚节点;
GSM/GPRS模块:用于将一般节点采集的数据通过GPRS网络发送到监控主机或通过GSM网络发送到管理人员手机;自动接收手机短信控制指令并通过RS232串口传给汇聚节点;
汇聚节点;接收一般节点采集的数据,对这些数据进行处理并通过GSM/GPRS模块发送至监测主机或者管理人员手机,同时自动接收来自手机短信的控制指令并实施相应的控制;
一般节点:用于实时监测环境,并将采集到的数据发送给汇聚节点。
2、根据权利要求1所述的经由GSM的无线传感器网络远程数据传输系统,其特征在于,GPRS和GSM两种模式不能共存,先建立GSM连接,通过手机发送相应的短信指令激活GPRS连接或者通过设置汇聚节点的定时器在指定时间自动激活GPRS连接,从而向监测中心发送传感器监测到的数据。
CNA2009100300151A 2009-03-31 2009-03-31 经由gsm的无线传感器网络远程数据传输系统 Pending CN101600168A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNA2009100300151A CN101600168A (zh) 2009-03-31 2009-03-31 经由gsm的无线传感器网络远程数据传输系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNA2009100300151A CN101600168A (zh) 2009-03-31 2009-03-31 经由gsm的无线传感器网络远程数据传输系统

Publications (1)

Publication Number Publication Date
CN101600168A true CN101600168A (zh) 2009-12-09

Family

ID=41421365

Family Applications (1)

Application Number Title Priority Date Filing Date
CNA2009100300151A Pending CN101600168A (zh) 2009-03-31 2009-03-31 经由gsm的无线传感器网络远程数据传输系统

Country Status (1)

Country Link
CN (1) CN101600168A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011130939A1 (zh) * 2010-04-19 2011-10-27 中兴通讯股份有限公司 传感器网络与移动终端互联的方法和系统及网络连接设备
CN102480749A (zh) * 2010-11-25 2012-05-30 中国移动通信集团浙江有限公司 一种远程采集主机进程信息的方法、装置和系统
CN103245428A (zh) * 2013-05-10 2013-08-14 国家电网公司 变压器远程监控报警装置
CN106056876A (zh) * 2016-06-06 2016-10-26 暨南大学 一种企业能源管理信息采集系统及方法

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011130939A1 (zh) * 2010-04-19 2011-10-27 中兴通讯股份有限公司 传感器网络与移动终端互联的方法和系统及网络连接设备
CN102480749A (zh) * 2010-11-25 2012-05-30 中国移动通信集团浙江有限公司 一种远程采集主机进程信息的方法、装置和系统
CN102480749B (zh) * 2010-11-25 2015-05-27 中国移动通信集团浙江有限公司 一种远程采集主机进程信息的方法、装置和系统
CN103245428A (zh) * 2013-05-10 2013-08-14 国家电网公司 变压器远程监控报警装置
CN103245428B (zh) * 2013-05-10 2016-03-09 国网冀北电力有限公司廊坊供电公司 变压器远程监控报警装置
CN106056876A (zh) * 2016-06-06 2016-10-26 暨南大学 一种企业能源管理信息采集系统及方法

Similar Documents

Publication Publication Date Title
CN103365269B (zh) 基于无线传感网的智能家电多模式远程监控系统及方法
CN105491017B (zh) Rs485总线多设备多协议解析方法及系统
CN2906782Y (zh) 基于嵌入式处理器的电力远程自动抄表终端
CN201707782U (zh) 基于gprs的智能抄表系统
CN103761848B (zh) 一种数据集中采集的抄控表系统
CN103401881B (zh) 基于智能仪表的数据采集系统及方法
CN101527733A (zh) 无线传感器网络远程数据传输系统
CN108494816A (zh) 基于lpwan的数据传输方法、系统、设备以及可读存储介质
CN101600168A (zh) 经由gsm的无线传感器网络远程数据传输系统
CN101867493A (zh) 基于微波设备网管系统的以太网包快速转发的实现方法
CN102768051A (zh) 自来水电磁流量仪远程监控报警系统及其方法
CN110187172A (zh) 一种基于红外调制转换与无线通信的电表监控系统
CN106572160B (zh) 一种物联网网关的通信信道扩展系统
CN108512907A (zh) 半透传的设备通信方法
CN202750089U (zh) 蓝牙装置和集成式外设
CN101193040A (zh) 基于通用无线分组业务的嵌入式数据传送终端
CN115277867A (zh) 一种采集器及基于采集器的Modbus协议设备的电力通信方法和系统
CN108134841A (zh) 验箱物联网远程监控系统
CN202424743U (zh) 配电网自动化远程通信管理机
CN108540478A (zh) 一种用于智能电网的微基站系统及实现方法
CN109003427A (zh) 一种基于gprs网络的无线终端设备及无线数据传输方法
CN207458309U (zh) 一种基于gprs网络和云平台的野外观测数据远程传输系统
CN101192894B (zh) 基于码分多址网络的嵌入式数据传送终端
CN201345744Y (zh) 一种cdma网络无线数据传输终端
CN209248754U (zh) 基于入网模块通信的数据采集器

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Open date: 20091209