【《基于传感器技术的水环境监测系统的硬件和软件设计案例》14000字】_第1页
【《基于传感器技术的水环境监测系统的硬件和软件设计案例》14000字】_第2页
【《基于传感器技术的水环境监测系统的硬件和软件设计案例》14000字】_第3页
【《基于传感器技术的水环境监测系统的硬件和软件设计案例》14000字】_第4页
【《基于传感器技术的水环境监测系统的硬件和软件设计案例》14000字】_第5页
已阅读5页,还剩35页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于传感器技术的水环境监测系统的硬件和软件设计案例

目录

TOC\o"1-3"\h\u

27318

基于传感器技术的水环境监测系统的硬件和软件设计案例

1

12048

第1章水环境监测系统的硬件设计

2

29123

1.1网络节点硬件总体构架设计

2

11932

1.2控制模块设计

4

3242

1.2.1CC2530芯片原理

5

2658

1.2.2CPU和内存

9

2177

1.2.3时钟和电源管理

10

11136

1.2.4USB转串口电路设计

10

8417

1.2.5按键接口电路设计

11

16975

1.2.6电源模块电路设计

12

17217

1.3传感器模块

12

4843

1.1.1温度传感器

12

26079

1.1.2PH值传感器

14

15070

1.1.3电导率传感器

17

22331

1.1.4浊度传感器

20

24900

1.1.5溶解氧传感器

22

21049

1.4通信模块

25

3294

1.5电源模块

25

17493

1.6硬件实物展示

25

30702

1.7本章小结

27

24220

第2章水质监测无线传感节点的软件设计

28

14295

2.1软件总体设计方案

28

3907

2.2节点组网软件设计

29

32468

2.2.1开发环境简介

29

12560

2.2.2ZigBee节点配置

31

12352

2.2.3汇聚节点建网

33

26355

2.2.4终端传感器节点入网

37

1093

2.2.5节点组网实验

40

3454

2.3上位机软件设计

41

7666

2.1.1开发环境简介

41

14632

2.1.2功能控件简介

42

20227

2.1.3上位机软件界面的设计

43

12144

2.1.4上位机软件功能的实现

43

第1章水环境监测系统的硬件设计

此次的传感器节点为片上系统,该系统的核心部件为CC2530芯片。在组网过程中,协调器和终端节点模块网络构造相同,以便组成一体化的网络系统。网络构建和数据传输由协调器完成。数据的提取和输送由终端节点完善。网络程序的重点设计工作集中在终端节点和协调器的功能实现方面,借助电脑中的端口传输至上位机中。

1.1网络节点硬件总体构架设计

此次完成的传感网络节点在设计硬件时,共分为四个模块,分别是传感器、控制、电源和通信等。下图3-1代表设计的传感节点硬件构成。采用ZigBee的CC2530开发模块作为本次设计的基础模块,这一模块中包揽了8051微处理器和ZigBee协议,促使接下来的各个模块中硬件设计更为简约。传感器模块内部的构成为DS18B20温度传感器、E-201-C型PH复合电极传感器、EC10土壤电导率传感器、GS-TS型浊度传感器和RY952溶氧传感器和调理电路。电源部分的设计中,使用稳压芯片的型号为AMS1117,以便各个部分在通电时保持电压的稳定性,以便维持运转。



图3-1传感节点硬件总构架图

1.2控制模块设计

1.2.1CC2530芯片原理

本次选取的芯片型号为CC2530,主要是出于以下几个方面的考量,确保芯片花费低、不会产生大的功率消耗,将数据的传输能力最大化。

该芯片是一种新的片上系统,支持ZigBee协议,由TI公司开发的新一代芯片。它的工作频段为2.4千兆赫兹。CC2530有四种闪存空间的版本,分别有着32KB、64KB、12KB、256KB的闪存空间,在内部集成了8051MCU的内核、高性能的射频收发器、256KB的ROM和8KB的RAM,并且可以扩展其他的外接设备。

CC2530在运作过程中可以采用多种方式,当合理地进行设置后,可降低损耗,同时还能够实现在极短的时间内将芯片的工作方式进行转换,也可以降低一些芯片损耗[28]。在一些应用的设计中,这种芯片均可适用,在IEE802.15.4网络协议中可以快速构建,因此笔者决定使用CC2530芯片构成这一模块[29]。图3-2表示的是CCC2530设备在不同模块下的构造形式,图中重点描述了不同模块中的芯片具备的职能和外设中的作用。模块大体分为三类:第一类,作为处理器使用;作为计算之用、外设电路;进行信号收集和发出之用。

芯片CC2530的特点如下:在构成上,拥有高度敏锐的接受能力、可抵御外界的干扰,同时无需大量的连接原件,在进行系统配置过程中,可以随意设置无线电频率。其中最为突出的一个特点即为对能源的消耗较低;作为微控制器配件时,具有极低的内核消耗和较高的性能。可以预先保存和提取代码。可以预先调试硬件并运用IAR实施;芯片的外部设施方面,DMA具备五个通道实现大型数据块的运输工作,并配备12位的ADC。看门狗可作为定时器使用,以防出现程序出错,确保系统在运行中较为稳固。同时使用CC2530芯片时,外部电路的构造简洁,不需要较大的设计,芯片具备小体积、低功耗等特色,因此构建系统过程中,大部分应用在无线传感器方面,这种基础下,其使用范围非常广。

本系统中选取CC2530F256芯片作为节点模块,将这一芯片与网络企业出具的ZigBee协议栈加以综合运用,形成功能较强的ZigBee技术,向客户提供服务[30]。该系统的各个终端节点都配备了5类传感器与CC2530对接,一些传感器为了保证获取数据的精确性,需要借助AD的转换功能,并在进行数据传递时需在芯片的I/O口实现。图3-3指的是该芯片具备的引脚技能。

图3-4图形绘制的是基于CC2530特质的外部电路图。

图3-2内部结构图

3-3CC2530引脚图

图3-4CC2530外围电路图

1.2.2CPU和内存

此次选用的CPU为8051兼容内核[31],单周期。配备三种访问总线,对SFR、DATA和主SRAM实施单周期的访问,为方便其调试功能,设置了单独的调试接口。不仅如此,还配置了十八个输入的扩展中断单元。

内部仲裁器被设置在系统的中心部位,通过总线SFR的串联作用,将各个构件如外部设施、控制器、中央处理器、存储器等连接为一个部分。内存仲裁器内部存在四个访问部位,并可以反映至三个物理储存期中的一个里面。物理储存期分别为8KBSRAM、闪存存储器和寄存器。其工作为进行裁决,为存储器在一个时间段的访问存储器行为制定访问的次序。8KBSRAM可以同时在XDATA存储空间和DATA存储空间进行映射。属于功耗极低的一类SRAM,即便是显示的数字部位没有电的连接,内容也可以被储存在供电模式2和供电模式3中。对于设计中需要低能耗这一需求来讲,该性能十分重要。不同存储量的内存卡为电路的编程提供保持作用,还可以在XDATA存储空间和CODE存储空间中进行保存。

1.2.3时钟和电源管理

时钟[32]:该系统中配备主时钟一枚,时钟的源可以选用32MHz晶体或者16MHzRC振荡器。控制时钟的是CLKCONCMDSFR寄存器。其中,CLKCONCMD寄存器、RC振荡器或晶体振荡器都可以作为32MHz的时钟源。在获取时钟的目前形态时,可以选取CLKCONSTA寄存器进行得知,这种寄存器需具备只读功能。

管理电源方面:电源在工作过程中,可以进行多种设置,为了降低电源的功率消耗,需选取恰当的电力运输模式。为了保证超低的功率消耗,需将电源进行关闭,防止出现静态的消耗。运用门控时钟、将振荡器停止,以便达成这一要求。电源的五种不同运行模式(供电模式)分别为PM1、PM2、PM3、空闲模式、主动模式。通常采用的模式为主动模式。能耗最低的模式为PM3。PM1模式下,需要将稳压器的一些数字显示出来。但是PM2、PM3模式运行时,则无需显示稳压器中的数字。主动模式下功能可以全部开启,稳压器中的数字内核被运行,同时振荡器也不断运作,两类振荡器可以同时工作。空闲模式与之相比,系统中的各个部位均停止工作。

1.2.4USB转串口电路设计

为了便于对系统进行调试,需要对配备USB转串口电路,确保协调器设备可以直接连接上位机,进行通信工作。实现了全方位地进行管理,针对网络中各个节点的工作状态进行全方位地监督。选取PL2303芯片使用,目的是确保USB和串口二者之间可以进行转变,这一工作属于转换电路的重点。该电路下,有三个部分组成,与CC2530进行对接的电路、可以安装USB的电路,确保PL2303芯片能够正常运转的外部电路设计。

图3-5代表此次规划的USB转串口电路图。

图3-5USB接口电路图

1.2.5按键接口电路设计

该系统中,按键方面的构造设计十分必要,人通过按键可以实现与电脑的互动。程序的运行在操作中,也需要通过按键开启。为了尽可能地少占用I/O资源,此次配备3个按键,电路图见3-6。

图3-6按键接口原理图

1.2.6电源模块电路设计

因为协调点的功率很小的弱电系统,故采用电池供电及USB低压供电两种方式。供电系统图如下3-7。

图3-7供电电源电路

1.3传感器模块

1.1.1温度传感器

针对温度传感器,笔者考虑后选择型号为DSI8B20的传感器,功能是测量水温。这种传感器具有以下几个特征:首先具有较强的适应能力,可在多种季节环境下正常工作;其次,该传感器在一条线连接的情况下,能够两个方向实现通信。外部无需安装另外的设施。使用过程中,与I/O主控板之间连接便可工作;第四具备网络功能,DSI8B20能够实现8个以上的传感器同时并联工作,满足多个监测点的温度传感检测。参考以上因素可知,DSI8B20传感器具备结构简单、适用性强、抗干扰[33],等多重优点,是水环境温度检测的首选设备。

(1)DS18B20芯片封装结构

负责测量温度的传感器入水一端已做防水处理,因此测量过程中可以接触水,在另一部位将所测的信息以数字发送出去,通常信号为16位数据。接地线、电源线和信号输出线构成了输出端。详细构图为3-8所示。

图3-8DS18B20芯片封装结构

(2)DS18B20硬件电路设计:

通过观察硬件的线路发现其非常简洁,只需要设计可以广泛使用的I/O端口在主控制板中,便可以满足日常工作所需,进行地址的寻找、将数据向其他设备传输等。电路图为3-9

图3-9DS18B20电路图

1.1.2PH值传感器

PH值得测定最常用的方式就是电极法,通过计算正负电极之间的总电压(即电动势)来进行测定。电极的选定中,复合电极具备使用方便快捷的优点,单电极则具备测试时间段的优点。通过对比考虑,此设计首选E-201-C型的PH复合电极作为应用种类,它具有塑料外壳,是能够进行充电功能复合电极,有正负两极,是最为适合的PH检测设备。PH值测定主要是通过PH复合电极改变电位的方式为改变氢离子在水中的运动状态,同时计算电极正负极出现的电位差得出pH值[34]。这种类型的复合电极以电压的变化作为测量信息,电压级别属于Mv,PH值从0排列至14。

(1)传感器调理电路设计:

这种电路模块中,在电路中引入该传感器的两个电极,接着运用TLC4502双运算放大器法转化作用,将弱化的传感器电压变大,电压由毫伏级改变为0至三伏,下图代表的是该传感器的电路工作模式。

图3-10PH模块电路图

(2)PH值与电压值对应关系

在实验过程中,需要勾兑一些pH值不等的溶液,确保其值为4、7和9,为了得出符合要求的PH值,使用苯二甲酸氢钾、混合磷酸盐和硼酸混合后的出符合要求的溶液。勾兑方式为,将这三种化学品根据不同比例放入3个烧杯中,在杯子中加入250毫升25摄氏度的水,均匀地进行搅拌;然后将需要监测的传感器一端没入溶液中,另一端与万用电表相连,便能得到电压数据,将数据进行记载,表为3-1。

表3-1pH值与采集电压

PH标准溶液

信号值(V)

4.00

6.86

9.18

1.678

1.180

0.845

(3)PH值传感器的校正:

通过以上方式进行大量反复试验后取得的数据为在pH值为4的溶液中,传感器对应的电压值为1.678V,在PH值为6.86的溶液中,得出的电压值为1.180V,在对应的PH值为9.18的溶液中得出的设备电压值为0.845V,以下是根据数据绘制的PH值走势图。二者之间的关系表现为以下函数图形。

图3-11PH拟合曲线

借助得出的拟合直线为基础,进而完成纠正PH值传感器工作,保证在测量中得出准确的水参数,进而将两个变量采集电压和PH值的关系以函数公式表示如下:

Y=-6.182X+14.31;R2=0.999(Y为PH值,X为电压值)

1.1.3电导率传感器

此次笔者采用的电导率传感器型号为EC10,专门对土壤进行测试,其优点在于高度敏捷,同时EC10在检测土壤时,可以在多种环境下应用,如草原、试验田、大棚中,被广泛应用在农业、工业等多个行业。

(1)该传感器特征具体被详细列举在下表3-2中[35]。

表3-2土壤水分电导率传感器特点

序号

内容

1

2

3

4

5

较为精密的密封性,即使在酸碱度较高的环境下,也有一定的防腐蚀性,可以长期放置在土壤、水中工作。

在各种液体和土壤中,经过测试可以将电导率得出。

精确度极高,响应非常及时,可以实现较好的互换,设计了插入式的探针,目的是保证测量的特性比较准确。

选用的电极材料为特色材质,不易被破坏,可以在较大的外力下保持稳固性。

设计的保护电路非常完美,信号输出的接口较多。

(2

)图3-12表示土壤水分电导率传感器接线。

图3-12电导率传感器接线图

(3

)该传感器需要的各类技术参数,具体被列举在表3-3。

表3-3电导率传感器相关参数表

表3-4电导率与电压对应关系表

1.1.4浊度传感器

当前可以采用两类方式对浊度传感器进行度量,依次为散射式传感器和透射式传感器。对水样的浑浊程度进行检测的方式为,将与散射器发出的光照角度相垂直的光进行收集后,得出其强度值,并计算水浊度。这种散射光属于强度较高的单色光,波长890纳米,产生于光发生器,在照射水体时,在水中悬浮物的反射下出现光。

散射式浊度传感器在相关领域中,进行研究时有着大量的应用记录,在实际检测水环境时,也得到了广泛的使用。这种传感器灵敏度高,尤其在低浓度水中检测效果较好。在一些地区的湖水、水坑等低浓度水中,浑浊度较低时采取这种散射式GS-TS型传感器[36]。可以实现0到5000NTU的测试范围,可以输出4到20毫安的模拟电。

表格3-5代表浊度传感器的参数值。

表3-5浊度传感器相关参数

(2)浊度传感器实物接线

用于测试水浑浊度的传感器与水接触的一段,进行了防水处理,因此不再害怕工作中会被水进入出现损坏,上端为三条电线构成,一条接地线,一条为电压接触线,另一条将检测的信号发射出去,具体见图3-13。

图3-13浊度传感器

(3)采集信号调理模块

这一设备的作用是进行电路的转换,将弱电流经过处理变为强的电压,选取的芯片为MCP602I,可进行双运算和放大之用,其构造图为3-14。

图3-14浊度传感器电路板

(4

)浊度值与采集电压对应关系,见表

3-6。

表3-6浊度值与采集电压

图3-15浊度曲线

多次进行实验后将获取的数据加以整理,并进行拟合处理,得出以上曲线,具体见上图3-15,并计算得出两种变量二者的函数关系式:

Y=-1.37X+4.6(Y为浊度,X为采集电压)

由于:10-6=1ppm=1mg/l=0.13NTU;1.5%=35000ppm=35000mg/l=4550NTU推出:Y=5980-1781x(Y为浊度值单位NTU,X为采集电压单位V)

1.1.5溶解氧传感器

(1)RY952溶氧传感器属于一种电化学原电池式高稳性传感器。内部的透气膜和电解液均不需要定期更换[37]。缺点在于需要防止直接硬物接触,防止透气膜被破坏。为了保持其完整性,可为其配置保护套,并在使用保护套时轻拿慢取,按照准确的方向取下,不能使用蛮力一把扯下,目的是防止透气膜被划破,保持其完整性。

(2)表3-7指的是传感器对应的有关参数。

表3-7溶解氧传感器相关参数表

(2

)传感器的校正,见表3-8。

表3-8不同温度溶氧量与对应输出电

表3-9相同温度溶液与溶氧量关系

表3-9列举的数据为笔者翻阅大量专业书籍后得出的,对这些数据拟合处理后,便可将两种变量溶解氧含量和采集电压二者的函数关系以公式形式加以表示为Y=-5.4x+0.3(Y为溶解氧含量,X为采集电压)

(4)传感器放大模块:

放大后的传感器电路见下图。

图3-16传感器放大电路

(5)传感器实物:

图3-17为传感器实物照片。

图3-17传感器实物图

1.4通信模块

这一模块下,收发器的选取采用UART,并在异步数据中应用。收发器的功能是负责通信作用,与控制器和终端进行信息联系。

UART收发器属于异步串口通信协议的一类,在进行数据的运输时,以字符为单位进行传递,通常采用9600、19200或者11520的波特率代表传递的速度效率。各个数据在传输时,从前至后的字符分别为起始位、数据位、传输校验位和停止位。第一种在传递时,首先运输逻辑0,借着进行传递、0和1构成了数据位,由二进制的数据构成字符。传输工作的流程为:CPU将需要传递的命令输送至收发器,借助协议编码格式将信号定位至TxD导线上,并采用串行的形式加以传输。收取数据过程中,首先对数据编码信号进行收集并检测,并采用串行的模式保存在缓冲部位,接着传递至CPU,有它进行数据的识别。

1.5电源模块

ZigBee网络根据应用场所的差别,在不同节点中对应的参数也具备很大的不同。当前采用两类供电的手法,采用电池供给电、连接PC机。由于节点支持与PC机对接工作的技能,因此供电可采用这种模式。传感节点工作时在水面中工作,因此供电也可使用电池。本次选用4颗南孚电池作为电源供电方式,因为各个节点的功率均很低,因此使用电池作为电源供给方式,节点可以使用两个月左右,符合设计中的需求。

1.6硬件实物展示

图3-18和3-19分别代表PCB电路板和节点实物。

图3-18PCB电路板图

图3-18传感器节点硬件实物图

1.7本章小结

第三章中主要是针对本系统中的硬件进行设计,选取了CC2530芯片作为重点,构建了硬件部分的大致架构。本部分设计的关键在以下两个部分:第一,由各个硬件对应的电路所组成的控制模块,如选用的芯片对应的电路、USB接口对应的电路、按键、电源等对应的电路;第二,传感器有关的设计。具体有传感器的设计和对应的对水质进行测量使用的电路方面的构造,直接测量传感器、各个电量的快速转化等构建。依据测量水质的各个指标要求,传感器的设计囊括了温度、PH值、电导率、浊度和溶解氧等五个标准方面的构建。在设计过程中,第一个重点部分的设计,对各个硬件对应的电路设计,在基于系统特质的要求下,注重设计时的简化性、小体积性;第二个设计的重点方面,笔者关注了在检测水环境时指标的特点以及和传感器对接时方便转化,进而推出了相对应的模型。在以上两个重点方面的设计下,进而实现了本系统中的硬件构造。

第2章水质监测无线传感节点的软件设计

2.1软件总体设计方案

此次在软件方面对系统进行规划,分为两个区域:传感网络节点组网、上位机等的设计。首先需要研究本系统中硬件需要达成的工作需求,然后在进行对应的软件设计,确保二者的兼容性。同时,设计的软件需满足操作简易、不可太过繁杂,还应具备自保的能力。此处的软件系统的构建主要目标是为迎合硬件的工作,将硬件提取到的水环境数据通过网络输送至设备的屏幕中,汇集以后发送至节点中。在设计网络节点时需具备的特征如下:拥有自适应的技能、带有模块化特点、改善节点的能量、功能与应用相符、可以进行维护和升级。

2.2节点组网软件设计

2.2.1开发环境简介

本次设计运用iarembeddedworkbench(简称为IarEwarm)来对ZigBee网络程序执行研发。此系统可以对多类芯片内核执行程序编辑,包含arm与avr等芯片内核,能够像客户供应的服务包含有C/C++编辑器与测试器的集成设计平台(IDE)、即时操纵系统与模态机模型构建工具等多个产品[38]。

IarEwarm给客户供应了一个全方位的软件模拟系统,准许客户仿真各类arm内核、外围装置、中止或程序运作而无需硬件的支持,在IarEwarm中有1个完备的嵌入型ide,此中有效集结了客户在1个项目中可能运用的大多数功能,而且供应了1个能够将各种有效工具全部嵌入的构架。

IarEwarm把C/C++编辑器、汇编器、连接器与C-SPYDebugger聚集到1个全面集成的设计平台中,有很多性能强劲的组件,比如为便于客户执行测试与追踪及静态解析与对程序运作剖析的工具,增添了很多功能。

(1)IarEwarm8.10简介

本次设计运用的软件程序是IarEwarm8.1版本。相比于先前的IAR程序版本,IarEwarm的8.10版本能够完全适用于C与C++语言,其工具链接功能变得更为全面,能够适用于Unicode,还具有编辑器、ide与测试器这类功能,工程管理具有极大的拓展,读写与操纵能够运用armcmsis-pack软件构件来完成,能够运用客户更为便利的程序执行编辑。8.10版本还能够对ide功能做出更新,加强了功能,提升了客户运用的效率,比如对窗格管理与对接执行的优化,而且给客户供应了一个高效的开端,让客户可以对程序软件展开设计,并易于追踪与巡航,而且供应了在重复、中止与语句边缘巡航中执行前行或者倒退的功能,便于客户在大量追踪数据采样中的导航。如下图4-1显示。

图4-1IAREWARM8.10编程界面

(2)安装ZStack-CC2530-2.1.0-1.2.0协议栈

TI企业向客户供应了一个半开放式的协议栈ZStack-CC2530-2.1.0-1.2.0.exe,对ZigBee结点工具的程序编辑重点在协议栈的基准上执行,其为客户供应了ZigBee协议栈各个层的分配程序与ZigBee调整器,路由结点、末端结点的分配文件[39],便于客户执行程序编辑。对末端结点与对聚集结点的程序编辑需选取对应的作业区来执行编码。我们重点是在此协议栈的软件应用层执行结点程序编码,在ZMain层当中编辑程序主体函数,即进口函数。在IarEwarm中的协议栈分配文档内容,如下图4-2显示。

图4-2ZStack-CC2530-2.1.0-1.2.0协议栈

2.2.2ZigBee节点配置

ZigBee聚集结点是整个网络系统的核心,在网络当中此结点主要用于网络的组成、管控与维护并把接受获得的数据通过处理与传输至上位计算机中,汇合结点经过ZigBee协议执行自主组网并处置路由结点与末端结点的入网请求;路由结点能够拓展网络的容纳量并传输末端结点的数据信息,经过扫描信号通道传送到协调器,在连入请示的网络开始处置末端结点发送的网络连接请求,然后处置末端结点的连网请示数据信息。因此,末端结点也能够经过路由选取结点加进网络。末端结点通电之后,通过扫描通路来获得邻近网络数据信息,同时把网络访问请示传送给汇合结点或者路由结点添加至网络,接着把传输感应器采样数据传输给父结点。

ieee802.15.4协议把ZigBee网络当中的装置分成所有功能的ffd装置与仅有几个核心功能的RFD装置。汇合结点需与其它结点通讯,路由结点也要互相执行通讯,因此其仅能是ffd装置,而末端结点仅执行单方向的通讯,因此其既能够是ffd装备,也能够是rfd装备[40]。

本次设计是执行水质检测传输感应器结点的组网,在执行组网实验时运用1个汇合。结点负责组网,5个末端结点采样收集水体数据,传输感应器数目比较少,总体架构比较简单,所以运用星形网络架构执行组网。在ZigBee星形网络当中,协调器除去要执行网络的建立与维管,还包含数据处理的工作,而且需对整个网络做出管控,在网络当中调控结点以外的其它装置均是末端结点。这类末端结点都能够直接和协调器执行网络通讯。

确认了网络架构以后就执行组网,先通过协调器执行网络构建,接着末端结点才可以入网。ZigBee单元组网包含有三类形式,依次为广播组网(如下图4-3)、组播组网(如下图4-4)与点播组网(如下图4-5)。

图4-3ZigBee广播组网模式图4-4ZigBee组播组网模式

图4-5ZigBee点播组网模式

选取广播形式组网,数据被传输至网络当中的全部末端结点,而且多传播形式把数据信息传输至网络当中的汇合结点与路由结点。而点播形式仅向设定的结点传输数据信息。

本次设计运用ZigBee星形架构网络,所以调控器选取广播形式组网,向全部末端传输感应器传输数据信息,如下图4-6显示。而末端结点运用点播形式连网,向调控器传输采样收集的数据信息,如下图4-7显示。

图4-6协调器组网方式

图4-7终端节点组网方式

2.2.3汇聚节点建网

汇聚结点一共包含有两个功能。第1个是构建1个网络,此网络是1个全新的无线传输感应器,其可以准许其它结点进度其中来。第2个是可以接收到信息。此信息主要由末端传输感应器结点传送而来。汇合结点能够把接收的信息汇合,同时把其传送至上位计算机,同时在上位计算机中展示结果。汇合结点程序开发重点包含有准许末端结点加进网络、结点的初始化、网络调整器构建网络、末端结点信息的接受处置与接口传送等内容。

控器在ZigBee无线网络当中担任者关键的角色,其重点包含所有网络的构成、维管。构建网络的基础是先启动调控器,进而连通信息传送的“快车道”。然后初始化回位开始,重点是初始化硬件单元的结构与程序这2个单元。接着执行扫描指定信号通道的运行,然后选择最佳的信号通道,同时找到1个pan-id之后执行组网,接着把网络信号通道、id传输至系统全部的结点。再接受到末端结点发送的连网请求讯号之后,把独立的网址配置给能够添加网络的末端。此独立的网址是用作通讯的地址。末端结点或路由结点把信息包(传输感应器数据与结点的地址编码)传输给调控器,然后调控器把其接收的信息包经过串接口传送至上位计算机[46]。协调器的电力供应电流是交流。其无需休息,由于网络需连续运作,所以其需要时刻维持运行模式。汇合结点的程序设定步骤,如下图4-8显示。

图4-8协调器程序流程图

在协调器程序当中包含汇合结点的初始化、接受末端结点的信息、往上位计算机传送信息等过程。此中程序开发的关键环节便是数据信息的初始化操作。初始化运行包含广播信标、结点网络构建、信号通道的扫描等步骤。

数据传输部分程序如下:

2.2.4终端传感器节点入网

末端结点的第1个关键任务便是加进ZigBee网络,然后将数据信息传输至处在网络中的汇合结点。此中传送的信息是传输感应器接受到的。末端结点加进网络的形式包含两类,一类是经过关联形式连网,也是实际运用中最为广泛的连网方法,另外一类是直接连网。在本次设计过程中末端结点运用第一类方式入网。

末端结点上电起动之后,自行扫描通讯信号通道,找寻已经建立好的网络,找寻到网络之后,末端结点往汇合结点发送连网请求,同时准备入网。假如加入网络不成功,则末端结点会再一次扫描信号通道,同时重新传输加入网络请求。假如末端结点加入网络成功,会获得调控器配置的网络地址。遭遇无采样收集任务末端结点的状况,末端结点会进到休眠模式,减低功率消耗,增长结点寿命。假如接受到任务指令,系统会采样收集数据信息,同时把采样收集数据传送至父结点。假如完成信息传送,末端会进到休眠模式;假如信息传送不成功,则结点会再一次执行数据传送,直至信息传送成功为止[42]。末端结点的软件程序开发步骤,如下图4-9显示。

本次设计过程中,除了温度传送感应器直接传出数字讯号之外,其它传输感应器均是传出仿真讯号包含毫安电流与毫伏电平,这类仿真讯号通过调整单元被放大与转变为0-1.0V电平之后才被主体控制芯片接受到。在此程序当中,把P0.6接口设定成讯号传入接口,采样收集四次电平求算平均数值才是最终传出数值。采样收集电平程序设计代码显示如下:

图4-9终端节点程序流程图

2.2.5节点组网实验

程序编辑完成以后就需把程序烧写至末端结点与调控器中,经过结点的组网试验来检测程序能不能完成结点组网功能,经过末端结点lcd的显示数据状况能够判定加入网络有没有成功。

把程序烧写至末端结点与调控器的方式有两类。一类是在IAREmbedded中形成hex文本,接着运用单片机烧写程序,把hex文档烧写至结点中执行组网试验。这类方式的好处为能够对源代码执行加密,适合于商业秘密的保密。但操纵起来比较繁琐,不但在形成hex文档时需对传出文档格式执行分配,而且需转换程序对结点执行程序的烧写。另一类做法是运用IAREmbedded中的Debug把程序烧写至结点当中,相比于第一类做法,第二类做法操纵起来比较简单快速,适用于在程序编辑初始阶段的多次烧写检测更改,所以在试验当中运用第2类做法执行程序烧写。

在程序烧写的时候需在Workspace中先选取结点的类别,如下图4-10显示,接着经过下载器烧写至结点单元中。在本次试验中因为仅有协调器与末端结点,所以在烧写的时候选取自身的作业空间。

图4-10选择节点类型

把程序烧写至结点中之后,经过计算机usb接口往结点供应电力,开启各个结点开关之后,协调器自行建立网络,末端结点自行连网。末端结点能够展示自身结点的类别、编码与调控器配置的网络短地址,调控器则展示结点类别与其对应的ieee地址。

图4-11组网效果图

因为条件受限,所以在检测的时候仅运用1个协调器和2个末端结点执行组网试验。进行过多次的试验,同时对调控器与末端结点程序执行反复更改之后,调控器和末端结点可以准确的执行组网,同时在lcd上展示了准确的组网数据,初步做到了ZigBee网络的构建。具体组网效果如图4-11显示。

2.3上位机软件设计

2.1.1开发环境简介

上位计算机软件需要做到和协调器的串接口通讯,同时展示每个末端结点采样的5项水环境数据信息。微软企业研发的VisualBasic6.0是面向用户的程序编辑软件工具,能够达到本次设计的功能需求,所以本次设计运用VisualBasic6.0执行上位计算机程序的设计。

VisualBasic6.0主要是对Windows操纵系统执行程序开发的设计平台,完成了对象的封装。VB能够研发由事件传动的程序,程序是在产生指定事件之后才能够运作,是一类便于人机互操作的运作体制,能够适用于多种任务运作模式,另外也提升了程序运作的效率。VB6.0将客户设计页面,编辑程序,测试运作等多类功能聚集在一块,为便于客户及时获得与查询相关辅助功能来获得有关的数据信息[43]。依托于VB6.0研发的上位计算机程序在运用中也能够随时进行改进,以达到客户自身的应用要求。

2.1.2功能控件简介

本次设计核心设计内容是串接口通讯,数据展示,制作谱线等,VB6.0供应的系统组件基本能够符合设计规定。在本次设计过程中重点运用组件有串接口通讯mscomm组件、计时器timer组件、combobox组件等。

(1)MSComm控件

MSComm用于实现串接口通讯的组件,经过电脑接口执行数据信息的接收发送,有查找与事件驱动两类处理信息传送的方法。

经过事件驱动形式处置串接口通讯具有很高的效力,MSComm组件中包括了1个OnComm事件,在串接口产生事件的时候,比如串联接收数据的有效信息抵达接受的缓存区的时候,就能够处置信息传送。运用事件促动方式来执行串接口通讯具有通讯响应即时性好,信息传送的稳定性强等优势特性。独立的串接口对照着独立的MSComm组件,当程序需运用诸多高串接口执行通讯的时候,就需运用诸多个MSComm组件

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论