9
倾角传感器用来测量相对于水平面的倾角变化量。
倾角传感器的原理及技术
理论基础就是牛顿*二定律,根据基本的物理原理,在一个系统内部,速度是无法测量的,但却可以测量其加速度。如果初速度已知,就可以通过积分计算出线速度,进而可以计算出直线位移。所以它其实是运用惯性原理的一种加速度传感器。
倾角传感器的应用
倾角传感器用于各种测量角度的应用中,例如,高精度激光仪器水平,起重机等机械设备的水平,远距离测距仪器
如何选用倾角传感器
零点稳定性和分辨率是选择倾角传感器重要的参数。如果稳定性不好,会影响到仪器的测量精度。分辨率是能检测出的较小角度/加速度单位。
长期稳定性是另外一个重要的指标。根据应用来选择合适的稳定性,例如应用环境和是否经常需要重新标定。
传感器自身的噪声和电磁干扰决定传感器的分辨率。通过优化EMC保护来抗这些电磁干扰,使得精度较大化。
灵敏度,越灵敏越好,能得到更准确的测量值,但是灵敏度高相对于测量范围就窄,所以要从需求出发,不能一味追求灵敏度增加成本。
倾角传感器的应用 1、什么是倾角传感器? 倾角传感器可以用来测量相对于水平面的倾角变化量。理论基础就是牛顿*二定律,根据基本的物理原理,在一个系统内部,速度是无法测量的,但却可以测量其加 速度。如果初速度已知,就可以通过积分计算出线速度,进而可以计算出直线位移。所以它其实是运用惯性原理的一种加速度传感器。 2、倾角传感器有哪些类型? 种类粗分:单轴的和双轴两种。 从工作原理上可分为“固体摆”式、“液体摆”式、“气体摆”三种倾角传感器。 就基于固体摆、液体摆及气体摆原理研制的倾角传感器而言,它们各有所长。在重力场中,固体摆的敏感质量是摆锤质量,液体摆的敏感质量是电解液,而气体摆的敏感质量是气体。 气体是密封腔体内的一运动体,它的质量较小,在大冲击或高过载时产生的惯性力也很小,所以具有较强的抗振动或冲击能力。但气体运动控制较为复杂,影响其运动的因素较多,其精度无法达到*武器系统的要求。 固体摆倾角传感器有明确的摆长和摆心,其机理基本上与加速度传感器相同。在实用中产品类型较多如电磁摆式,其产品测量范围、精度及抗过载能力较高,在武器系统中应用也较为广泛。 液体摆倾角传感器介于两者之间,但系统稳定,在高精度系统中,应用较为广泛,且国内外产品多为此类。
无线传感器网络硬件设计综述
无线传感器网络因其巨大的应用前景越来越受到学术界和工业界的广泛关注。本文介绍了无线传感器网络节点的体系结构,分析比较了国内外当前典型的硬件平台,重点讨论了目前无线传感器网络节点常用的处理器、射频芯片、电源和传感器各自的优缺点,并详细比较了目前应用于无线传感器网络的无线通信技术。
无线传感器网络WSN(Wireless Sensol Network)是一种由传感器节点构成的网络,能够实时地监测、感知和采集节点部署区的观察者感兴趣的感知对象的各种信息(如光强、温度、湿度、噪音和有害气体浓度等物理现象),并对这些信息进行处理后以无线的方式发送出去,通过无线网络较终发送给观察者。无线传感器网络在军事侦察、环境监测、医疗护理、智能家居、工业生产控制以及商业等领域有着广阔的应用前景。
在传感器网络中,传感器节点具有端节点和路由的功能:一方面实现数据的采集和处理;另一方面实现数据的融合和路由,对本身采集的数据和收到的其他节点发送的数据进行综合,转发路由到网关节点。网关节点往往个数有限,而且常常能量能够得到补充;网关通常使用多种方式(如Internet、卫星或移动通信网络等)与外界通信。而传感器节点数目非常庞大,通常采用不能补充的电池提供能较;传感器节点的能量一旦耗尽,那么该节点就不能进行数据采集和路由的功能,直接影响整个传感器网络的健壮性和生命周期。因此,传感器网络主要研究的是传感器网络节点。具体应用不同,传感器网络节点的设计也不尽相同,但是其基本结构是一样的。传感器网络节点一般由处理器单元、无线传输单元、传感器单元和电源模块单元4部分组成,如图1所示。
1 无线传感器网络典型节点
传感器网络节点作为一种微型化的嵌入式系统,构成了无线传感器网络的基础层支撑平台。因为无线传感器网络大部分是采用电池供电,工作环境通常比较恶劣.而且数量大,更换电池非常困难,所以低功耗是无线传感器网络较重要的设计准则之一,从无线传感器网络节点的硬件设计到整个网络各层的协议设计都把节能作为设计的目标之一,尽町能延长无线传感器网络的寿命。
由于具体的应用背景不同,目前国内外出现了多种无线传感器网络节点的硬件平台。典犁的节点包括MICa系列、Sensoria WINS、Toles、μAMPS系列、XYZnode、Zabra-net等。实际上各平台较主要的区别是采用了不同的处理器、无线通信协议和与应用相关的不同的传感器。常用的无线通信协议有802.11b、802.15.4(ZigBee)、Bluetooth、UWB和自定义协议;处理器从4位的微控制器到32位ARM内核的高端处理器都有所应用。还有一类节点是用集成了无线模块的单片机,典型的是WiseNet。典型无线传感器网络节点如表l所列。
本文介绍了无线传感器网络的概念、特点以及无线传感器网络节点的组成,重点分析比较节点各组成单元各种常用芯片的特点,并且始终将低功耗作为比较的重要标准之一。
2 典型无线传感器网络节点比较
目前,国内外研究人员已经开发出多种无线传感器网络节点,其实这些节点的组成部分是类似的,只是其应用背景不同,对节点性能的要求也不尽相同,因此所采用的硬件组件有很大差异。
2.1 处理器单元
处理器单元是传感器网络节点的核心,和其他单元一起完成数据的采集、处理和收发。EM6603是4位微控制器,功耗很低,但处理能力也非常有限。Berkerly大学研制的Miea系列节点大多是采用Atmel公司的微控制器。其中,Mica2节点采用Atmel增强型微控制器ATmegal28L。该微控制器拥有丰富的片上资源,包括4个定时器、4KB SRAM、128KB Flash和4KB EEPROM,拥有UART、SPI、I2C、JTAG接口,方便无线芯片和传感器的接入;有6种电源节能模式,方便低功耗设计。采用该处理器的另外一个优点足:编译器很多,其中GCC(WINAVR)是完全免费、开放的软件。由于以上优点和Mica2节点的影响,在实际的无线传感器设计中应用很多。但是从低功耗角度来讲,该芯片并不是较佳选择。
如表1所列,就低功耗而言,MSP430Flxx MCU系列提供业界较低的电流消耗,工作电压为1.8V,实时时钟待机电流的消耗仪为1.1μA,而运行模式电流低至300μA(1MHz),从休眠至正常工作整个唤醒过程仅需6μs。PIC系列微控制器也有低功耗的产品问世。Toles节点和ZebraNet节点就是采用MSP430系列的微控制器,功耗非常低。在某些数据量大的应用中,高端的处理器也有应用。例如μAMPS-1节点采用StrongARM处理器SA-1110,功耗为27~976 mW。该处理器支持DVS节能,可以降低功耗450mW左右;关掉无线模块功耗可以降低300mW。μAMPS-2采用的处理器是DSP。XYZnode采用的处理器是OKI公司的ARMTDMI内核的ML67Q5002,该处理器也支持DFS(动态频率调节),工作电流为15~72mA,频率为1.8~57.6 MHz。
从处理器的角度看,无线传感器网络节点基本可以分为两类:一类采用以ARM处理器为代表的高端处理器。该类节点的能量消耗比采用微控制器大很多,多数支持DVS(动态电压调节)或DFS(动态频率调节)等节能策略,但是其处理能力也强很多,适合图像等高数据量业务的应用;此外.采用高端处理器来作为网关节点也是不错的选择。表2中最后3款处理器足ARM内核的处理器,功耗明显比低端微控制器高很多。另一类是以采用低端微控制器为代表的节点。该类节点的处理能力较弱,但是能量消耗功率也很小。在选择处理器时应该首先考虑系统对处理能力的需要,然后再考虑功耗问题。
2.2 无线传输技术及芯片
可以利用的传输媒体有空气、红外、激光、超声波等,常用的无线通信技术有:802.11b、802.15.4(ZigBee)、BitIetooth、UWB、RFID、lrDA等}还有很多芯片双方通信的协议由用户自己定义,这些芯片一般工作在ISM免费频段,如表3所列。利用激光作为传输媒体,功耗比用电磁波低,更安全。缺点是:只能直线传输;易受大气状况影响;传输具有方向性。这些缺点决定这不是一种理想的传输介质。红外线的传输也具有方向性,距离短,不需要天线。芯片83F88S是一种符合IrDA标准的无线收发芯片。UWB具有发射信号功率谱密度低、系统复杂度低、对信道衰落不敏感、安全性好、数据传输率高、能提供数cm的定位精度等优点;缺点是传输距离只有lOm左右,隔墙穿透力不好。802.11b因为功耗高而应用不多,Bluetooth工作在2.4 GHz频段,传输速率可达10Mbps;缺点是传输距离只有10m左右,完整协议栈有250KB,不适合使用低端处理器,多用于家庭个人无线局域网,在无线传感器网络中也有所应用。在无线传感器网络中应用较多的是ZigBee和普通射频芯片。ZigBee是一种近距离、低复杂度、低功耗、低数据速率、低成本的双向无线通信技术,完整的协议栈只有32 KB,可以嵌入各种设备中,同时支持地理定位功能。以上特点决定ZigBee技术非常适合应用在无线传感器网络中。目前市场上常见的支持ZigBee协议的芯片制造商有Chipcon公司和Freescale半导体公司,Figure8公司还专门开发了ZigBee协议栈。Chipcon公司的CC2420芯片应用较多,Toles节点和XYZ节点都是采用该芯片;Chipcon公司提供包含Figure8公司开发的ZigBee协议的完整开发套件。Freescale半导体公司提供ZigBee的2.4GHz无线传输芯片有MCl3191、MC13192、MCl3193;该公司还提供配套的开发套件。
普通的射频芯片也是一种理想的选择,可以自定义通信协议,比较有代表性的MAC协议有T-MAC、S-MA、CWise-MAC、B-MAC、D-MAC等。路由协议有Gossi-PINg、SPIN协议、LEACH协议、TEEN协议等。从性能、成本、功耗方面考虑,RFM公司的TRl000和Chipcon公司的CCl000是理想的选择。这两种芯片各有所长,TRl000功耗低一些,CCl000灵敏度高一些,传输距离更远。WeC、Renee和Mica节点均采用TRl000芯片;Mica2采用CCl000芯片;Mica3采用Chipcon公司的CCl020芯片,传输速率可达153.6 kbps,支持OOK、FSK和GIFSK调制方式;Micaz节点则采用CC2420 ZigBee芯片。还有一类无线芯片本身集成了处理器,例如CC2430是在CC2420的基础上集成了51内核的单片机;CCl010是在CCl000的基础上集成了5l内核的单片机,使得芯片的集成度进一步提高。WiseNet节点采用的是CCl010芯片。常见的无线芯片还有NorDIC公司的nRF905、nRF2401等系列芯片,因为功耗较高,接收灵敏度比较低,开发难度较大,在实际的无线传感器网络中应用较少。常用无线芯片的主要参数比较如表4所列。
2.3 电源模块
电池种类很多,电池储能大小与形状、活动离子的扩散速度、电极材料的选择等因素有关。无线传感器网络节点的电池一般不易更换,所以选择电池非常重要,DC-DC模块的效率也至关重要}另外,还可以利用自然界的能源来补充电池的能量。
按照能否充电,电池可分为可充电电池和不可充电电池;根据电极材料,电池可以分为镍铬电池、镍锌电池、银锌电池和锂电池、锂聚合物电池等。一般不可充电电池比可充电电池能量密度高,如果没有能量补给来源,则应选择不可充电电池。在可充电电池中,锂电池和锂聚合物电池的能量密度较高,但是成本也比较高;镍锰电池和锂聚合物电池是一没有毒性的可充电电池。常见电池的性能参数如表5所列。无线传感器网络节点一般工作在户外,可以利用自然能源来补给电池的能量。自然界可利用的能量有太阳能、电磁能、振动能、核能等。由于可充电电池的次数是有限的,而且大多数可充电电池有记忆效应,因此利用自然界的能量不能频繁对电池充电,否则会大大缩短电池的使用寿命。
2.4 传感器模块
传感器种类很多,可以检测温湿度、光照、噪声、振动、磁场、加速度等物理量。美国Crossbow公司基于Mica节点开发了一系列传感器板,采用的传感器有光敏电阻Clairex CL94L、温敏电阻ERT-J1VRl03J(松下电子公司)、加速度传感器ADI ADXL202、磁传感器Honeywe11HMC1002等。温湿度传感器SHTxx系列能支持低功耗模式,采集完数据后自动转入休眠模式,电流小于lμA。
传感器电源的供电电路设计对传感器模块的能量消耗来说非常重要。对于小电流工作的传感器(几百μA),可由处理器I/O口直接驱动;当不用该传感器时,将I/O口设置为输入方式。这样外部传感器没有能量输入,也就没有能量消耗,例如温度传感器DSl8820可以采用这种方式。对于大电流工作的传感器模块,I/O口不能直接驱动传感器,通常使用场效应管(如Irlml6402)来控制后级电路能量输入。当有多个大电流传感器接入时,通常使用集成的模拟开关芯片来实现电源控制,MAX4678就是这样一款芯片。
无线传感器网络技术
无线传感器网络(Wireless Sensor Network, WSN)就是由部署在监测区域内大量的廉价微型传感器节点组成,通过无线通信方式形成的一个多跳的自组织的网络系统,其目的是协作地感知、采集和处理网络 覆盖区域中被感知对象的信息,并发送给观察者。传感器、感知对象和观察者构成了无线传感器网络的三个要素。
无线传感器网络 (wireless sensor network)简称WSN,是一种由大量小型传感器所组成的网络。这些小型传感器一般称作sensor node(传感器节点)或者mote(灰尘)。此种网络中一般也有一个或几个基站(称作sink)用来集中从小型传感器收集的数据。
传感器节点是一种非常小型的计算机,一般由以下几部分组成:
1.处理器和内存(一般能力都比较有限)。
2.各类传感器(温度、湿度、声音、加速度、**定位等)。
3.通讯设备(一般是无线电收发器或光学通信设备)。
4.电池(一般是干电池,也有使用太阳能电池的)。
5.其他设备,包括各种特定用途的芯片,串行并行接口等(USB,RS232)。
无线传感器网络中的基站的作用是从各个传感器节点收集数据,集中处理然后提交给用户。因此,基站一般有更强的数据处理和通讯能力以及更持久的电力。
DL-WZXT无线传感器网络是新一代的传感器网络。DL-WZXT无线传感网络综合了传感器技术、嵌入式计算技术、现代网络及无...无线传感器网络 的详细介绍 DL-WZXT无线传感器网络 DL-WZXT无线传感器网络是新一代的传感器网络,具有非常广泛的应用。
FSG推出新款具备震动补偿的两轴倾角传感器
据麦姆斯咨询报道,专业的传感器厂商FSG近日推出了新款PE-MEMS/GS70系列倾角传感器,主要用于工程机械倾角监测、船舶平台倾角测量、工作平台以及石油和天然气钻探平台。
该两轴器件采用成熟的MEMS技术,确保高精度冗余测量。利用额外的一个陀螺仪对机械震动进行补偿。
GS70系列倾角传感器能够测量±60°范围内X轴和Y轴的角度变化,根据测量角度范围变化,其测量精度为±0.05°~ ±0.3°。该系列倾角传感器外壳由钝化的铝材料制造而成。
该系列倾角传感器的设计工作温度范围为-40 °C~ +80 °C,符合**电工**(IEC)61508 (SIL 2)标准和欧洲13849 (PLD)标准规定的所有技术安全要求。GS70系列倾角传感器提供IP68防护级别的电缆连接和IP67防护级别的插头连接器。CAN总线接口支持CANopen和CANopen安全协议的信号输出。
无线传感网络与无线传感器网络?
物联网架构可分为三层:感知层、网络层、应用层。感知层是由各种传感器构成,是物联网识别物体、采集信息的来源。网络层是负责传递和处理感知层获取的信息。应用层是物联网与用户的接口,它需要与行业需求结合,从而实现物联网的智能应用。作为物联网较底层,感知层肩负起很重要的作用,数据要先经过感知层的采集和识别然后才能进行接下来的处理与传输等操作。因此,传感网建立的重要性是十分重大的。
随着传感网的不断发展,以ZigBee协议为基础的无线传感网络(WSN,WirelessSenorNetwork)的确立,不仅使得在信息采集技术的这一领域有了进一步的发展,而且还带动了物联网的快速发展。本文立足于无线传感网络作为物联网的较底层,分析了基于ZigBee的无线传感网络,并在此基础上提出了无线传感网络接入到互联网的网关接入模式。
2、相关技术问题分析
2.1ZigBee协议栈与无线传感网络的技术要点
无线传感网络(WirelessSensorNetworks,WSN)是一种技术集成度高,涉及多种*科学技术的信息采集变换,组网传送,融合处理,反馈调节的多信息综合采集与组网应用系统。在当前的**信息产业界和技术研究领域里都受到广泛关注。无线传感网络由多个静止或移动的传感器以自组织和多跳的方式构成的无线网络,以协作地感知、采集、处理和传输网络覆盖地理区域内被感知对象的信息,并较终把这些信息发送给网络所有者。无线传感络并不需要较高的带宽,但是需要较低的传输延时和较低的功率消耗并且可以使用户拥有较长的电池寿命和较多的器件阵列。而ZigBee的出现正好解决了这一问题,ZigBee有着高通信效率、低复杂度、低功耗、低速率、低成本、高安全性以及全数字化等诸多优点。这些优点使得ZigBee与无线传感网络**的结合在一起。以下将对ZigBee协议栈加以说明。
ZigBee协议栈结构由一些层构成,每个层都有一套特定的服务方法(协议)和上一层连接。数据实体(dataentity)提供数据的传输服务,而管理实体(managemententity)提供所有的服务类型。每个层的服务实体通过服务接入点(SAP,serviceaccesspoint)和上一层相接,每个SAP提供大量服务方法来完成相应的操作。ZigBee协议栈基于标准的OSI七层模型,但只是在相关范围来定义一些相应层来完成特定的任务。IEEE802.15.4-2003标准定义了下面的两个层:物理层(PHY层)和媒介层(MAC层)。ZigBee联盟在此基础上建立了网络层(NWK层)以及应用层(APL层)的框架(framework)。APL层又包括应用支持子层(APS,applicationsupportsub-layer),ZigBee的设备对象(ZDO,zigbeedeviceobject)以及制造商定义的应用对象。
IEEE802.15.4标准定义了物理层(PHY层)和媒介层(MAC层)。物理层是协议的较底层,承担着与外界直接作用的任务,它采用扩频通信调制方式,由图1可以看到这里定义了两个频率的物理层,这两个频率段分别为868/915MHz和2.4GHz。MAC层负责设备间无线数据链路的建立、维护和结束,确认模式的数据传送和接收,可选时隙,实现低延迟传输,支持各种网络拓扑结构,网络中每个设备为16位地址寻址。它可完成对无线物理信道的接入过程管理,包括以下几方面:网络协调器(coordinator)产生网络信标、网络中设备与网络信标同步、完成PAN的入网和脱离网络过程、网络安全控制、利用CSMA-CA机制进行信道接入控制、处理和维持GTS(GuaranteedTimeSlot)机制、在两个对等的MAC实体间提供可靠的链路连接。
ZigBee又在以上两层的基础上提出了网络层和应用层。网络层主要负责建立新的网络、处理节点的进入和离开网络、根据网络类型设置节点的协议堆栈、使网络协调器对节点分配地址、**节点之间的同步、提供网络的路由。网络层确保MAC子层的正确操作,并为应用层提供合适的服务接口。为了给应用层提供合适的接口,网络层用数据服务和管理服务这两个服务实体来提供必需的功能。网络层数据实体(NLDE)通过相关的服务接入点(SAP)来提供数据传输服务,即NLDE.SAP;网络层管理实体(NLME)通过相关的服务接入点(SAP)来提供管理服务,即NLME.SAP。NLME利用NLDE来完成一些管理任务和维护管理对象的数据库,通常称作网络信息库(NetworkInformationBase,NIB)。应用层主要根据具体应用由用户开发。它维持器件的功能属性,发现该器件工作空间中其他器件的工作,并根据服务和需求在多个器件之间进行通信。应用层由应用支持子层(APS)、设备对象(ZDO,包括ZDO管理平台)以及制造商定义的应用设备对象组成。APS子层的作用包括维护绑定表(绑定表的作用是基于两个设备的服务和需要把它们绑定在一起)、在绑定设备间传输信息。ZDO的作用包括在网络中定义一个设备的作用(如定义设备为协调者或为路由器或为终端设备)、发现网络中的设备并确定它们能提供何种服务、起始或回应绑定需求以及在网络设备中建立一个安全的连接。
2.2TCP/IP协议与互联网络通信方式
对于互联网而言,其传输控制与因特网互联规则也就是TCP/IP协议是Internet较基本的协议。它由网络层的IP协议和传输层的TCP协议组成,此协议采用了四层的层级结构,每一层都呼叫它的下一层所提供的网络来完成自己的需求。可以这样说,TCP负责发现传输的问题,一旦发现有问题就会要求重新传输,直到所有的数据安全正确的传输到目的地,而IP是给了因特网的每一台电脑规定了一个地址。
TCP/IP协议由链路层、网络层、传输层以及应用层这四层组成。对于此协议的熟知程度,具体的每层协议的功能在这里将不进行详细的说明。而网关作为在传输层以上工作的,为了深入的了解此文所提出来的网关接入模式,在此将对传输层以上进行一些分析说明。传输层提供应用程序之间的通信。其功能包括:格式化信息流和提供可靠传输,为实现后者,传输层协议规定接收端必须发回确认,并且假如分组丢失,必须重新发送,从而提供可靠的数据传输。而传输层的协议主要是:TCP和UDP协议。在本文所提出的的网络传输由于速率因素,我们在此采用TCP传输。在TCP传输过程中,数据从应用层到传输层,数据的报头是TCP报头,然后下到网络层,数据在之前的TCP报头前在加上IP报头,IP报头中有目标IP和源IP,然后到数据链路层后又在上层的数据中加上首部和尾部,然后经过物理层传输到目的地,经过路由器分析目标IP然后查找路由表在进行转发,来到目标计算机然后从物理层开始解封装,然后一层一层向上传输。而在此文中所涉及到的传输过程,就从应用层到传输层,数据带有TCP报头就进入网关进行协议的转换,解封装后从新封装从而传到ZigBee的应用层。
3、无线传感网络接入互联网络的网关模式分析
本文所提出的无线传感网络接入Internet网的网关接入模式的基本构架如图2所示。
在此基本结构模式中,我们主要对数据从ZigBee进入网关以及数据从网关到互联网进行分析。在此,数据由ZigBee进入网关采用串行传输的通信方式。ZigBee各个节点把收集的数据送到协调器,在经由协调器交给应用层,应用层通过调用串口API发到网关。网关将Internet发送来的数据进行解封装通过串口交给协调器,协调器再将数据封装,加上ZigBee的短地址发送出去。这样就实现了从ZigBee到网关的双向数据传输。网关到互联网的传输在此文中采用了以太网口传输,客户端与服务器模式的网络通信结构,并用WindowsSocket网络编程实现,这样就完成了从网关到互联网的数据传输。因此,在这里我们通过此网关把基于ZigBee的无线传感网络与互联网连接起来,从而使得可以通过互联网时时控制物理世界,可以根据我们的需要对所有的节点进行控制及管理。
3.1ZigBee模块与互联网关的通信模式
对于星形的ZigBee网络拓扑结构,所有的节点都跟协调器交互,因此要实现ZigBee网络与网关的通信,可以通过协调器跟网关通信。在本文中采用了协调器与网关通过串口进行连接。串口通信具有成本低、传输质量可靠、全双工等特点,满足嵌入式简化设备的需求,因此网关的ZigBee网络通信模块采用串口实现。
在协调器和网关之间我们采用异步串口通信方式,并且双方采用中断方式进行数据的发送和接收。由发送端向接收端发送请求是否可以发送数据命令,之后接收端收到请求命令后给发送端返回一个命令数据,发送端根据接收端发回的命令进行判断是否可以现在就开始传输数据。在每一次数据传输完毕之后,发送端都要进行新一轮的上述过程进行下一个数据包的传输,知道所有的数据传输完毕即可。
ZigBee协调器接收到其他节点发来的数据之后,就会产生一个事件,告知应用层,应用层调用相关函数进行接收,该函数返回一个类型的结构体。该结构体包括了源地址、网络地址、地址类型等相关信息。这样,在传输过程采用中断方式,当接收到一个字节后就会进入中断,从而调用接收函数进行所有数据的接收工作。而当网关接收到因特网传来的数据之后就按照所需数据的格式进行打包,保存在事先设置好的变量里。当检测到此变量非空的时候,就会跟协调器交互后发送数据。当协调器中的任务检测到有数据来的时候,就会和协调器交互后以判断对方是否真的要发送数据,然后就进行数据的接收。这样就简单的完成了协调器和网关之间的通信,完成了数据的交换,实现了从ZigBee的无线传感器网络到网关的通信。
3.2物联网与Internet的网关接入方式
本研究报告主要采用以太网口,客户端与服务器结构的网络通信,并把网关作为服务器。采用WindowsSocket编程来实现此网络传输。在此我们使用套接字I/O模型的Select模型,这样有利于对应用程序通过异步方式同时对一个或多个套接字通信加以管理。如图3所示,描述了Select模型的工作方式。在调用recv()函数接收数据之前,先调用select()函数,如果此时没有可读数据,select()函数就先阻塞在这里。当系统有了可读数据,该函数返回。这个时候应用程序就可以调用recv()函数接收数据了。网络编程选择好后就在下面具体分析客户端与服务器的相连接。
3.1ZigBee模块与互联网关的通信模式
对于星形的ZigBee网络拓扑结构,所有的节点都跟协调器交互,因此要实现ZigBee网络与网关的通信,可以通过协调器跟网关通信。在本文中采用了协调器与网关通过串口进行连接。串口通信具有成本低、传输质量可靠、全双工等特点,满足嵌入式简化设备的需求,因此网关的ZigBee网络通信模块采用串口实现。
在协调器和网关之间我们采用异步串口通信方式,并且双方采用中断方式进行数据的发送和接收。由发送端向接收端发送请求是否可以发送数据命令,之后接收端收到请求命令后给发送端返回一个命令数据,发送端根据接收端发回的命令进行判断是否可以现在就开始传输数据。在每一次数据传输完毕之后,发送端都要进行新一轮的上述过程进行下一个数据包的传输,知道所有的数据传输完毕即可。
ZigBee协调器接收到其他节点发来的数据之后,就会产生一个事件,告知应用层,应用层调用相关函数进行接收,该函数返回一个类型的结构体。该结构体包括了源地址、网络地址、地址类型等相关信息。这样,在传输过程采用中断方式,当接收到一个字节后就会进入中断,从而调用接收函数进行所有数据的接收工作。而当网关接收到因特网传来的数据之后就按照所需数据的格式进行打包,保存在事先设置好的变量里。当检测到此变量非空的时候,就会跟协调器交互后发送数据。当协调器中的任务检测到有数据来的时候,就会和协调器交互后以判断对方是否真的要发送数据,然后就进行数据的接收。这样就简单的完成了协调器和网关之间的通信,完成了数据的交换,实现了从ZigBee的无线传感器网络到网关的通信。
3.2物联网与Internet的网关接入方式
本研究报告主要采用以太网口,客户端与服务器结构的网络通信,并把网关作为服务器。采用WindowsSocket编程来实现此网络传输。在此我们使用套接字I/O模型的Select模型,这样有利于对应用程序通过异步方式同时对一个或多个套接字通信加以管理。如图3所示,描述了Select模型的工作方式。在调用recv()函数接收数据之前,先调用select()函数,如果此时没有可读数据,select()函数就先阻塞在这里。当系统有了可读数据,该函数返回。这个时候应用程序就可以调用recv()函数接收数据了。网络编程选择好后就在下面具体分析客户端与服务器的相连接。
首先要初始化套接字集合,然后将套接字分配给参与操作的套接字集合之后通过调用select函数等待函数的返回,若成功返回后则对每个套接字集合进行检查,若是宏值为ture则说明此套接字可读,最后就可以通过SocketAPI进行数据接收和发送。接下来分析下网关(服务器)上应用流程。Select函数监听套接字是否在可读集合中,若存在,则说明客户端有连接请求,调用accept()函数接受该客户端的请求,并将新建接受套接字加入服务器套接字集合然后便利服务器套接字集合分别判断每个套接字是否可读可写。若可读,则调用输入函数读入数据,若可写,则调用输出函数发送数据。对于客户端,首先要判断是否可写套接字,若是存在就调用connect()函数请求连接,之后检查每一个套接字的可读可写性。若可读,则调用输入函数读入数据,若可写,则调用输出函数发送数据。这样就在服务器客户端两端分别完成了数据的传输,用此模式的网络编程实现了网关与PC的有效数据传输。也就是实现了网关到Internet的传输。通过此网关可以实现ZigBee无线传感器网络与因特网的互联,实现物联网系统在更广泛领域里的拓展应用。