当前位置:首页 > 嵌入式 > 嵌入式软件
[导读]基于Internet网络架构的无线传感器网络系统

     摘要: 由MD600G和无线传感器节点组成了基于Internet网络架构无线传感器网络系统,实现了远程分布节点的过程行为实时数据跟踪和实时数据库生成。本系统不仅具有低功耗、低成本、分布式和自组织的特点,而且还实现了通信信息的无线透明传输和基于Internet可视化动态数据显示等功能。

  引言

  随着微机电系统(Micro?Electro?Mechanism System, MEMS)、片上系统(System on Chip,SoC)、无线通信和低功耗嵌入式技术的飞速发展,无线传感器网络(Wireless Sensor Networks, WSN)也以其低功耗、低成本、分布式和自组织等特点带来了信息感知的一场变革。无线传感器网络由部署在监测区域内大量的廉价微型传感器节点组成,通过无线通信方式形成一个多跳的自组织网络。

  无线传感器网络可连接众多类型的传感器,可探测包括地震波、电磁场、温度、湿度、噪声、光强度、压力、土壤成分、移动物体的大小和速度等。基于MEMS的微传感技术和无线互联网技术为无线传感器网络赋予了广阔的应用前景,在航空、反恐、防爆、救灾、环境、医疗、保健、家居、工业、商业等领域有广泛的应用。本文以无线温度传感器节点和无线数据终端MD600G为例,介绍了基于MD600G的Internet无线传感器网络的设计,并给出了对温度数据的可视化处理等操作的实现。

  1  基于Internet的无线传感器网原理

  1.1  MD600G简介

  智能无线数据终端MD600G可以用于数据中心和被监控设备间,实现数据的远程透明传输。MD600G的内部结构如图1所示,它有如下特点:

  ①基于ARM平台、8 MB数据缓存,内置Siemens MC35i GPRS无线模块;

  ②嵌入式Linux系统,包含TCP/IP协议栈以及ETCPTM协议,保证传输数据不丢失;

  ③提供独立RS232配置串口及标准RS232/485数据接口;

  ④符合电工电子产品低温GB/T2423.1、高温GB/T2423.2的要求,适于在气候条件恶劣的地区及户外使用;

  ⑤可以快速连接RTU、PLC、工控机等设备,实现数据透明传输,广泛应用于电力抄表、配电自动化、路灯监控、道路交通等行业。

图1  MD600G硬件结构图

  1.2  无线传感器网络

  由MD600G组成的基于Internet无线传感器网络原理图如图2所示。

 

图2  无线传感器网络结构原理图

  图2中的用户设备是自行开发的温度传感器节点。传感器节点采样的数据通过RS232/485接口传送到智能无线数据终端MD600G,MD600G对接收到的数据通过GPRS与Internet连接并进行无线数据透明传送,服务器mSever端通过Internet网将接收到的数据生成实时数据库,同时将这些实时数据以WEB页的形式动态显示和跟踪。[!--empirenews.page--]

  1.3  温度传感器节点

  温度传感器节点模块主要由温度传感器DS18B20组成,并将其输出的温度数据送往单片机,然后单片机将这些数据进行相关处理,最后再送往后续的通信设备,并将温度数据进行数码管或液晶屏显示。这里采用了实时时钟电路DS1302来实现该系统的实时性。

  2  软件设计

  基于MD600G和Internet的无线传感器网的软件包括温度传感器节点的软件设计、MD600G与温度传感器节点的串口软件设计、服务器mSever端与Internet网的数据通信软件及mSever端温度数据可视化程序的设计等。

  2.1  mSever端温度数据可视化程序设计

  利用Visual C++强大的编译器以及网络与数据库的处理能力,开发出基于Windows平台的32位数据可视化应用程序。图3是mSever端温度数据可视化程序设计的原理图。


 


图3  可视化界面的设计原理图

  以下为可视化界面模块源码:

  void CDemoView::OnInitialUpdate() {

  CView::OnInitialUpdate();

  CRect Rect;

  GetClientRect(Rect);

  m_Plot.Create(WS_CHILD|WS_VISIBLE,Rect,this,12000);

  m_Plot.SetSerie(0, PS_SOLID, RGB(255,0,0), 0.0, 40.0, "Temperature");//窗口

  m_Plot.SetLegend(0, PS_SOLID, RGB(255,0,0), "Temperature");//背景方框

  m_Plot.m_bAutoScrollX=TRUE;

  SetTimer(1,1000,NULL);//背景刷新时间

  canSize=TRUE;

  }

  void CDemoView::OnTimer(UINT nIDEvent) {

  static BOOL pros={FALSE};

  if(!pros) {

  pros=TRUE;

  CDemoDoc* pDoc=GetDocument();

  ASSERT_VALID(pDoc);

  y=pDoc->p.buffer;

  m_Plot.AddPoint(0,CTime::GetCurrentTime(),y);

  Invalidate();

  pros=FALSE;

  }

  CView::OnTimer(nIDEvent);

  }

  void CDemoView::OnSize(UINT nType, int cx, int cy) {

  CView::OnSize(nType, cx, cy);

  if(canSize) {

  CRect Rect;

  GetClientRect(Rect);

  m_Plot.MoveWindow(Rect);

  }

  }

  void CDASocket::OnReceive(int nERRORCode) { //接收数据端的程序[!--empirenews.page--]

  char buff[64];

  int ret=0;

  ret=Receive(buff,64);//AfxMessageBox("OK");

  if(ret==ERROR)

  {TRACE("ERROR!");}

  else

  m_pDoc->Presscessding(buff);

  CAsyncSocket::OnReceive(nErrorCode);

  }

  图4是用Visual C++开发的mSever端温度数据可视化显示的界面,图中显示的是1个节点的温度变化实时曲线。


图4  服务器mSever端温度数据可视化显示界面

  2.2  mSever端Web访问程序设计

  为了实现多个客户端可以同时访问数据中心服务器,规定客户端在打开服务器的Web页面时,首先提交客户端的IP地址,然后服务器端把客户端的IP地址收录入库,再将接收到的温度数据转发给指定的客户端。因此,当有多个客户端同时访问数据中心服务器时,服务器端只需要将各个客户端的IP地址收录入库,最后再循环不断地往各个客户端转发温度数据即可。

  当客户端断开与服务器端的连接时,将向服务器提交断开请求,从服务器端的IP地址库中释放掉该客户端的IP地址,从而实现了服务器端IP地址库的动态更新。

  2.3  节点温度采集软件设计

  以下为温度传感器节点的温度采集部分代码:

  #include "Mini51B.h"//Mini51板头文件

  #include "LCD1602.h"//液晶模块头文件

  #include "ds18b20.h"//温度传感器头文件

  #include "stdio.h"//C标准函数库,系统集成

  #include "DS1302.h"

  #define uchar unsigned char

  uchar n,temp;

  uchar a[6]="000000"; //串口字符串

  SYSTEMTIME RTC;

  void main(void) {

  float V; //记录温度浮点型

  uchar str_buff[20];//字符缓冲区

  SCON=0x50;//串口工作在方式1,波特率9600,//晶振为22.1184 MHz

  PCON=0;

  TMOD=0x20;//定时器1工作在方式2

  TH1=0xfa;

  TL1=0xfa;

  IE=0x91;//1001 0001,EA=1,ES=1,EX0=1

  IT0=1;//外部中断0为低电平触发方式

  TR1=1;//定时器T1开始计数

  ds18b20_init();//初始化温度传感器时钟测试

  Initial_DS1302();//初始化时钟时间设定,执行一次后删除该部分

  Write1302(DS1302_MINUTE, 0x11);

  Write1302(DS1302_HOUR,0x08);

  Write1302(DS1302_DAY,0x15);

  Write1302(DS1302_MONTH,0x04);

  Write1302(DS1302_YEAR,0x08);

  lcd1602_init();

  lcd_put_xyns(2,1,14,"<http://www.stuelab.cn/>");

  delay_ms(1000);

  while(1) {

  for(n=0;n<10;n++) { //10*0.5 s=5 s数据发送周期

  V=ReadTemperature()/100.0; //温度部分

  sprintf(str_buff,"%2.2f",V); //格式转换

  lcd_put_xyns(1,1,11,"Temperatur=");

  lcd_put_xyns(12,1,5,str_buff);

  seg7_disp(V*100);[!--empirenews.page--]

  sprintf(a,"%2.2f",V);//送串口字符串

  DS1302_GetTime(&RTC);//时间部分

  DateToStr(&RTC);

  TimeToStr(&RTC);

  lcd_put_xyns(1,2,8,RTC.DateString);

  lcd_put_xyns(9,2,8,RTC.TimeString);

  delay_ms(500);

  }

  for(n=0;n<6;n++) {

  SBUF=a[n];

  while(!TI);

  TI=0;

  }

  }

  }

  void external0() interrupt 0{//外部中断0发送数据

  for(n=0;n<6;n++) {

  SBUF=a[n];

  while(!TI);

  TI=0;

  }

  delay_ms(1100);

  }

  void receving() interrupt 4 {//串口中断程序接收数据

  temp=SBUF;

  RI=0;

  }

  结语

  经过实际运行和测试证明,系统稳定可靠,系统误差达到了规定的要求。本系统虽然是以无线温度传感器节点为例,但同样也适合其他各种类型的无线传感器节点,因此可以推广到无线传感器网络的其他应用领域或行业,如电力抄表、配电自动化、路灯监控、道路交通等。


 

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭