当前位置:首页 > 嵌入式 > 嵌入式软件
[导读]MD600G的Internet无线传感器网络设计

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

关键词: 分布式; 无线传感器网络; 可视化

Distributed Wireless Sensor Networks Based on MD600G and Internet
Hong Jiaping, Wang Ziyun, Ding Hui
(College of Computer Science and Technology,Hubei Normal University,Huangshi 435002,China)
Abstract: A distributed wireless sensor nodes network system based on MD?600G and internet architecture is generated. The real?time data tracking  and real?time database generation of  distance nodes process?oriented behavior are realized. It not only has low?power, low?cost, distributed and self?organizing characteristics, but also achieves transparent transmission of communication information, Internet?based visualization of dynamic data and other functions.
Key words: distributed; wireless sensor networks; visualization

引言

  随着微机电系统(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) { //接收数据端的程序
  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地址库的动态更新。[!--empirenews.page--]

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,"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);
      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;
}

结语

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

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

作者 Mohamad Ali| IBM咨询首席运营官 北京2024年5月24日 /美通社/ -- 生成式AI的兴起几乎在所有面向上给业务带来改变。根据 IBM 商业价值研究院最新的年度 CEO 研究,近60%...

关键字: IBM AI BSP 模型

台北2024年5月21日 /美通社/ -- 提供针对AMD WRX90和TRX50主板优化的DDR5 OC R-DIMM 提供容量128GB(16GBx8)到768GB(96GBx8),速度5600MHz到8...

关键字: AMD 内存 BSP GB

上海2024年5月20日 /美通社/ -- 2024年5月16日,世界知名的生命科学公司 Eppendorf 集团于第二十三届生物制品年会上成功举办了"疫路超越 推流出新"的产品发布会,正式推出大规模...

关键字: RF PEN BSP IMAC

北京2024年5月20日 /美通社/ -- 过去五年里,支付和收款方式日新月异,其发展和变化比过去五十年都要迅猛。从嵌入式数字商务的出现,到"一拍即付"的...

关键字: VI BSP PAY COM

华钦科技集团(纳斯达克代码: CLPS ,以下简称"华钦科技"或"集团")近日宣布致敬 IBM 大型机 60 载辉煌历程,并将继续实施集团大型机人才培养计划。

关键字: IBM BSP 研发中心 PS

助力科研与检测新突破 上海2024年5月15日 /美通社/ -- 全球知名的科学仪器和服务提供商珀金埃尔默公司今日在上海举办了主题为"创新不止,探索无界"的新品发布会,集中展示了其在分析仪器领域的最...

关键字: 质谱仪 BSP DSC 气相色谱

上海2024年5月16日 /美通社/ -- 2024年5月10日至5月13日,富士胶片(中国)投资有限公司携旗下影像产品创新力作亮相北京P&E 2024。在数码相机展览区域,全新制定的集团使命"为世界绽...

关键字: 富士 数码相机 影像 BSP

贝克曼库尔特目前已成为MeMed Key免疫分析平台和MeMed BV检测技术的授权经销商 在原有合作的基础上,继续开发适用于贝克曼库尔特免疫分析仪的MeMed BV检测 加州布瑞亚和以色列海法2024年5月16日...

关键字: BSP IO 检测技术 免疫分析仪

英国英泰力能的燃料电池是可产业化的产品解决方案 英国首个专为乘用车市场开发的燃料电池系统 在 157kW 功率下,此燃料电池比乘用车的其他发动机更为强大 &...

关键字: ENERGY INTELLIGENT 氢燃料电池 BSP

深爱人才,共赴"芯"程 深圳2024年5月15日 /美通社/ -- 5月11日,深圳国资国企"博士人才荟"半导体与集成电路产业专场活动在深圳市重投天科半导体有限公司(简...

关键字: 半导体 集成电路产业 BSP 人工智能
关闭
关闭