智慧城市实训报告.docx

上传人:b****1 文档编号:11082938 上传时间:2023-05-29 格式:DOCX 页数:27 大小:365.39KB
下载 相关 举报
智慧城市实训报告.docx_第1页
第1页 / 共27页
智慧城市实训报告.docx_第2页
第2页 / 共27页
智慧城市实训报告.docx_第3页
第3页 / 共27页
智慧城市实训报告.docx_第4页
第4页 / 共27页
智慧城市实训报告.docx_第5页
第5页 / 共27页
智慧城市实训报告.docx_第6页
第6页 / 共27页
智慧城市实训报告.docx_第7页
第7页 / 共27页
智慧城市实训报告.docx_第8页
第8页 / 共27页
智慧城市实训报告.docx_第9页
第9页 / 共27页
智慧城市实训报告.docx_第10页
第10页 / 共27页
智慧城市实训报告.docx_第11页
第11页 / 共27页
智慧城市实训报告.docx_第12页
第12页 / 共27页
智慧城市实训报告.docx_第13页
第13页 / 共27页
智慧城市实训报告.docx_第14页
第14页 / 共27页
智慧城市实训报告.docx_第15页
第15页 / 共27页
智慧城市实训报告.docx_第16页
第16页 / 共27页
智慧城市实训报告.docx_第17页
第17页 / 共27页
智慧城市实训报告.docx_第18页
第18页 / 共27页
智慧城市实训报告.docx_第19页
第19页 / 共27页
智慧城市实训报告.docx_第20页
第20页 / 共27页
亲,该文档总共27页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

智慧城市实训报告.docx

《智慧城市实训报告.docx》由会员分享,可在线阅读,更多相关《智慧城市实训报告.docx(27页珍藏版)》请在冰点文库上搜索。

智慧城市实训报告.docx

智慧城市实训报告

 

无线传感器网络实训报告

 

题目:

智慧城市沙盘控制系统

专业:

物联网应用技术

班级:

物联网12-1

学号:

0000000

姓名:

XX

指导教师:

 

二〇一四年六月十二日

目 录

第1章 实训项目简介1

第2章 系统需求分析2

2.1 案例呈现于任务描述2

2.1.1 智能家居的系统构成2

2.1.2 智能家居安防系统2

第3章 系统通讯协议规划4

3.1 系统运行流程4

3.1.1 注册网络4

3.1.2 获取网络参数5

3.1.3 下发控制指令5

3.2 通信协议规划6

3.2.1 规划原则6

3.2.2 WSN网络结构6

3.1.3 通信协议7

第4章 Server服务端软件开发与测试13

4.1 三层架构程序设计简介13

4.2 开发环境的搭建14

4.3 软件开发14

4.4 按键功能程序编写15

总结19

第1章 实训项目简介

本次实训系统以模拟智能家居为载体,它由感知层子系统、传输层子系统、应用层子系统三个部分组成,如图1所示。

图1 实训系统组成

图中,感知层子系统由开关量控制节点和模拟量控制节点等两类节点组成。

其中,灯光控制节点、风扇控制节点、电源控制节点三类是开关量控制节点;窗帘控制节点、雨棚控制节点是模拟量控制节点。

传输层子系统是基于CC2430的ZigBee无线传输网。

所有感知层节点的控制指令均由应用层子系统通过服务端通过串口下发给CC2430协调器,再由后者通过ZigBee无线网络下发给CC2430终端节点。

第2章 系统需求分析

2.1 案例呈现于任务描述

2.1.1 智能家居的系统构成

一套完整的智能家居系统通常由一个中央控制系统和各子系统组成,如图2-1-1所示。

子系统一般包括门禁系统、远程控制系统、安防系统、背景音乐系统、智能窗帘系统、智能照明系统、智能家电系统。

若业主只要求其中部份子系统功能,可配臵相应子系统控制器代替中央控制系统,以节约成本。

为进一步提升生活品质,一些住宅还配有家庭AV系统、家用中央吸尘及新风系统、宠物设备、智能卫浴系统、车库智能换气系统、自动浇花系统、自动给排水系统等智能家居子系统。

图2-1-1 智能家居系统结构

2.1.2 智能家居安防系统

住宅的安全永远是放在第一位的,所以家庭安防系统是智能家居中最重要的一套子系统,其基本应用情况如图2-1-2所示。

家庭安防系统发展到现在,可实现的功能越来越多,主要有如下几方面:

1)提供无线防区,外接各种安防探测器与警灯、警号,对每一不同的安防探测器具识别功能;

2)实现一键撤布防,紧急求助、布防延时,密码撤防、消警等功能;

3)业主可以通过电话和网络进行远程撤布防,具有联动控制功能;

4)用户与管理中心可查询报警类型、报警点、报警时间、处理记录;

5)触发警情后可通过小区局域网向保安中心报警,同时拨打用户设定的电话号码进行报警;

6)通过家庭智能安防系统,可以实现各个防区与其他家电自动化设备的联动控制。

图2-1-2 家庭安防系统应用示意图

第3章 系统通讯协议规划

3.1 系统运行流程

智能家居系统的运行主要包括注册网络、获取网络参数、下发控制指令等三方面的操作。

在智能家居系统中服务器与CC2430协调器之间是通过串口进行通信,两者之间是需要使用统一的波特率、并按指定帧格式收发数据。

CC2430协调器与CC2430终端节点之间是通过ZigBee无线网络通信的,需要物理地址和网络地址。

CC2430终端节点是通过普通I/O口将控制命令转化为控制模块(执行机构)的驱动信号的。

3.1.1 注册网络

系统启动后,CC2430协调器首先建立无线网络,路由器和终端节点在发现网络后,会主动加入网络,并上传网络参数(物理地址、网络地址、节点类型等)。

注册网络的流程如图3-1-1所示。

图3-1-1 注册网络运行流程

3.1.2 获取网络参数

系统运行中,为及时发现掉线节点,系统会周期性去询问节点,要求返回网络参数。

获取网络参数的流程如图3-1-2所示。

图3-1-2 获取网络参数运行流程

3.1.3 下发控制指令

当需要改变各被控对象的运行状态时,系统就需要下发各类控制指令,其流程如图3-1-3所示。

图3-1-3 下发控制指令运行流程

3.2 通信协议规划

3.2.1 规划原则

1)透明传输,将控制与传输分离。

2)ZigBee无线网支持广播、点对点通信。

3.2.2 WSN网络结构

1.WSN类型节点

1)协调器(Coordinator)

在无线传感网络中,有且只有一个协调器节点,它负责选择网络所使用的频率通道、建立网络并将其他节点加入网络、提供信息路由、安全管理和其他服务。

2)路由器(Router)

路由器节点是网络远距离延伸的必要部件。

它负责发送和接受节点自身信息;节点之间转发信息;允许子节点通过它加入网络。

3)传感器节点(Sensor)

传感器节点的主要任务就是发送和接收信息,通常一个终端节点处在数据收发状态时可进入休眠状态以降低能耗。

2.网络拓扑选择本系统的无线网络基于Z-Stack协议栈完成,由于控制点不多、分布范围较窄,故采用星形网络拓扑结构。

3.1.3 通信协议

协议的规划应采用分层方式实施,以便明确边界。

对于本系统而言,整个协议从下自上为分三层,如图3-1-3-1所示。

图3-1-3-1 自定义协议的层次结构

1)网络间传输数据流的特点。

表3-1-3-1 数据流特点

序号

链路

方向

数据流功能

数据流大小

数据流内容

1

上行

注册网络(1-1)

>=24B

源节点物理地址(8B)

源节点网络地址(2B)

源节点的节点类型(3B)

父节点物理地址(8B)

父节点网络地址(2B)

目标节点提取的链路质量(1B)

上传网络参数

(2-4)

>=24B

源节点物理地址(8B)

源节点网络地址(2B)

源节点的节点类型(3B)

父节点物理地址(8B)

父节点网络地址(2B)

目标节点提取的链路质量(1B)

上传执行结果

(3-5)

>=11B

源节点物理地址(8B)

源节点网络地址(2B)

执行结果(1B)

2

下行

下发获取网络参数指令(2-3)

>=13B

目标节点物理地址(8B)

目标节点网络地址(2B)

帧功能标识(3B)

下发控制指令

(3-3)

>=14B

目标节点物理地址(8B)

目标节点网络地址(2B)

帧功能标识(3B)

控制参数(≥1B)

2)协议帧格式。

表3-1-3-2 无线网通信协议基本帧格式

内容

字节数

备注

帧头

&WSN

4

帧类型

3

详见表3-1-3-3

帧长度

24

1

物理地址

8

功能复用:

(1)注册网络和获取网络参数时:

承载源节点物理地址(8B)、网络地址(2B);

(2)下发控制指令时:

承载目标节点物理地址(8B)、网络地址(2B);

(3)上传执行结果时:

承载源节点物理地址(8B)、网络地址(2B)。

网络地址

2

数据包

5

功能复用:

(1)注册网络和获取网络参数时:

18-19字节承载父节点网络地址(2B),20-22承载节点类型(3B);

(2)下发控制指令时:

承载控制参数(≥1B),没有用完的字节填充0;

(3)上传执行结果时:

承载执行结果(1B),没有用完的字节填充0。

连接质量

1

帧尾

END

3

3)表3-1-3-2中,各字段含义。

表3-1-3-3 各字段含义

帧头

用于表明一帧数据的开始。

帧类型

用于指明传输的这一帧的数据的用途。

帧长度

用于指明接下来要传输的物理地址、网络地址、数据包等三字段的长度。

物理地址

功能复用,见表3.3。

网络地址

功能复用,见表3.3。

数据包

用于指明通信中具有实质意义的数据。

连接质量

用于指明WSN中节点与节点通信的链路的通信质量。

帧尾

用于表明一帧数据的结束。

4)帧类型简表。

表3-1-3-4 帧类型简表

帧类型功能

命令

备注

下行链路

下发获取网络参数指令(2-3)

RNP

ReadNodeNetworkParameters

读取节点网络参数

下发控制指令(3-3)

CPA

ControlbyPhysicalAddress

根据物理地址下发控制指令

CNA

ControlbyNetworkAddress

根据网络地址下发控制指令

上行链路

注册网络(1-1)

JNS

JoininNetworkWhenStarted

新节点加入网络

上传网络参数(2-4)

SPS

SendParameterstoServer

上传网络参数到服务器

上传执行结果(3-5)

SRS

SendResulttoServer

上传网络参数到服务器

5)帧类型详表。

表3-1-3-4 帧类型详表

功能

类型

详细解释

CPA

下发控制指令(3-3)

(1)用途

根据网络地址下发控制指令。

(2)协调器下发到终端的数据

项目

字节数

内容

帧头

4B

&WSN

帧类型

3B

CPA

帧长度

1B

0x12

物理地址

8B

目标节点物理地址

网络地址

2B

目标节点网络地址

数据包

7B

[1字节]灯组号

[2-3字节]控制状态

[4-7字节]0000

连接质量

1B

协调器收到节点数据后的连接质量数据

帧尾

3B

END

(3)使用步骤及示例

1)启动协调器和终端节点

2)向终端下发控制指令

3)终端节点接收下发的指令

路由器节点:

&WSNCPA120000000000000000000000ON0000000000END

RNP

下发获取网络参数指令

(1)用途:

协调器向终端下发获取网络

(2)由协调器下发到路由器或终端的数据

项目

字节数

内容

帧头

4B

&WSN

帧类型

3B

RNP

帧长度

1B

0x12

物理地址

8B

源节点物理地址

网络地址

2B

源节点网络地址

数据包

7B

00000000

连接质量

1B

协调器收到节点数据后的连接质量数据

帧尾

3B

END

(2)使用步骤及示例

1)下发获取网络参数指令

2)启动协调器

3)协调器下发信息给终端,并判断是否接收?

终端节点:

&WSNRNP12000000000000000000000000000000000007END

功能

类型

详细解释

SRS

上传执行的指令结果

(1)用途:

上传指令的结果

(2)终端节点或路由器上传到协议器的数据:

项目

字节数

内容

帧头

4B

&WSN

帧类型

3B

SRS

帧长度

1B

0x12

物理地址

8B

源节点物理地址

网络地址

2B

源节点网络地址

数据包

7B

[0-2字节]源节点节点类型(3B)

[4-5字节]父节点网络地址(2B)

[6]执行结果(2B)ON-开灯,OF关灯;

连接质量

1B

协调器收到节点数据后的连接质量数据

帧尾

3B

END

(3)使用步骤及事例

1)上传指令的结果

终端节点:

&WSNSRS11234567800RFD00ON1END

SPS

返回网络参数

(1)用途:

上传参数到网络服务器

(2)终端节点或路由器上传到协调器的数据

项目

字节数

内容

帧头

4B

&WSN

帧类型

3B

SPS

帧长度

1B

0X12

物理地址

8B

源节点物理地址

网络地址

2B

源节点网络的值

数据包

7B

[0-2字节]源节点类型地址

[3-4字节]父节点网络地址

[5-6字节]00

连接质量

1B

协调器收到节点数据后的连接质量数据

帧尾

3B

END

(3)使用步骤及示例

1)返回网络参确定源节点类型、是路由器还是协调器、明确身份。

终端节点:

&WSNSPS01234567800RFD00001END

第4章 Server服务端软件开发与测试

4.1 三层架构程序设计简介

所谓三层架构,是指数据访问层、业务逻辑层以及窗体表示层,各层的主要功能如下:

1.数据访问层

在三层架构设计中,数据访问层一般用于对数据库进行各项操作,即实现对数据表的Select、Insert、Update、Delete操作。

本项目不涉及数据库的操作,因此数据访问层的功能主要是完成串口的操作,包括获取可用串口、打开串口、关闭串口、通过串口收发数据等。

2.业务逻辑层

业务逻辑层是三层架构中体现核心价值的部分,主要负责业务规则的制定、业务流程的实现。

在本项目中,业务逻辑层的功能主要是完成SLE4442卡中三类存储器的读写操作。

3.窗体表示层

表示层位于离用户最近的最上层,用于显示数据和接收用户输入的数据,为用户提供一种交互式操作的界面。

图5-1 项目三层架构设计

4.2 开发环境的搭建

VisualStudio2005是基于.NET2.0框架的。

它同时也能开发跨平台的应程序,如开发使用微软操作系统的手机的程序等。

总体来说是一个非常庞大的软件,甚至包含代码测试功能。

这个版本的VisualStudio包含有众多版本,分别面向不同的开发角色。

同时还永久提供免费的VisualStudioExpress版本。

1)安装Visualstudio2005或以上版本的集成开发环境软件。

2)安装Framework2.0。

3)创建实训所需工程文件。

4)利用C#在VisualStudio2005上进行软件开发。

4.3 软件开发

首先对窗体表示层进行设计:

1)设置窗体固定大小。

2)设置不能随意缩放。

3)设置不能最大化。

4)修改窗体名称。

5)添加工作组,按键等。

6)合理对窗体进行布局,使窗体清晰易懂一目了然。

对按键进行程序的编写:

1)双击需要添加程序的按键。

2)在弹出的程序编写界面编写能实现该按键功能的程序。

3)对程序进行调试修改,以实现按键功能。

4.4 按键功能程序编写

窗体表示画好后,对各个按键的功能进行相应的程序编写,首先串口号和波特率部分进行程序编写,以实现自动检测端口的功能和波特率选择功能;然后对节点开关灯功能进行程序编写,节点部分开关灯有8个按键,分别为“0801节点开灯”、“0802节点开灯”、“0803节点开灯”、“0804节点开灯”、“0801节点关灯”、“0802节点关灯”、“0803节点关灯”、“0804节点关灯”。

鼠标双击对应节点按键进行程序编写,例如0801开灯和关灯程序:

///

///打开0801节点控制的灯

///

///

///

privatevoidbtnOpen0801_Click(objectsender,EventArgse)

{

//先检查串口是否打开  

if(myport1.IsOpen==false)

{

this.tSLabelState.Text="亲,串口未打开";

return;

}

 //根据通讯协议封装命令

//贞类型

cmd[4]=0x43;

cmd[5]=0x50;

cmd[6]=0x41;

//贞长度

cmd[7]=0x12;

//物理地址

cmd[8]=0x08;

cmd[9]=0x01;

cmd[10]=0x08;

cmd[11]=0x01;

cmd[12]=0x08;

cmd[13]=0x01;

cmd[14]=0x08;

cmd[15]=0x01;

//网络地址

cmd[16]=0x00;

cmd[17]=0x00;

//数据包

cmd[18]=0x00;

cmd[19]=0x4F;//字符'O'

cmd[20]=0x4E;//字符'N'

cmd[21]=0x00;

cmd[22]=0x00;

cmd[23]=0x00;

cmd[24]=0x00;

//连接质量

cmd[25]=0x00;

//调用串口对象的 方法下发指令

myport1.Write(cmd,0,29);

this.tBPortData.Text="";

foreach(bytechincmd)

{

this.tBPortData.Text+=ch.ToString("X2")+"";

}

//接收并处理协调器通过串口反馈的数据

}

///

///关闭0801节点控制的灯

///

///

///

privatevoidbtnClose0801_Click(objectsender,EventArgse)

{

//先检查串口是否打开  

if(myport1.IsOpen==false)

{

this.tSLabelState.Text="串口未打开";

return;

}

//根据通讯协议封装命令

//贞类型

cmd[4]=0x43;

cmd[5]=0x50;

cmd[6]=0x41;

//贞长度

cmd[7]=0x12;

//物理地址

cmd[8]=0x08;

cmd[9]=0x01;

cmd[10]=0x08;

cmd[11]=0x01;

cmd[12]=0x08;

cmd[13]=0x01;

cmd[14]=0x08;

cmd[15]=0x01;

//网络地址

cmd[16]=0x00;

cmd[17]=0x00;

//数据包

cmd[18]=0x00;

cmd[19]=0x4F;//字符'O'

cmd[20]=0x46;//字符'F'

cmd[21]=0x00;

cmd[22]=0x00;

cmd[23]=0x00;

cmd[24]=0x00;

//连接质量

cmd[25]=0x00;

//调用串口对象的 方法下发指令

myport1.Write(cmd,0,29);

this.tBPortData.Text="";

foreach(bytechincmd)

{

this.tBPortData.Text+=ch.ToString("X2")+"";

}

//接收并处理协调器通过串口反馈的数据

}

总 结

WSN是WirelessSensorNetwork的缩写,即无线传感器网络。

是由部署在监测区域内大量的廉价微型传感器节点组成,通过无线通信方式形成的一个多跳的自组织的网络系统,其目的是协作地感知、采集和处理网络覆盖区域中被感知对象的信息,并发送给观察者。

传感器、感知对象和观察者构成了无线传感器网络的三个要素。

本次无线传感器网络实训的是智慧城市灯光控制系统,实训的内容是对智慧城市沙盘系统进行电路原理分析,系统结构组成分析和控制端口分析及划分,在VisualStudio2005下用C#程序语言进行控制智慧城市沙盘系统的软件开发,首先进行控制软件的窗体表示层界面的设计,完成相应控制按键的绘制,然后根据划分好的端口对相应的按键进行的程序的编写,以实现对应按键功能的目的。

这一步是本次实训知识综合应用的一个体现,只有在理解沙盘系统电路原理和系统结构的基础上才能很好地进行控制软件的编写。

这次实训我们小组四人齐心协力,最终完成了对智慧城市沙盘系统的控制,在一盏盏交通灯、别墅灯、花园灯亮起的一瞬间,整个沙盘看上去是那么的美丽,我们的组员心情也是激动的,美丽的,因为这是我们四人两个星期实训的成果,只有在自己亲自动手做了,最后实现了才能体会到最后的那份喜悦的心情。

我体会到了!

最后必须感谢两位老师,正是你们的耐心、细致的教导,我们小组才能看到实训的成果,收获了成功的喜悦。

在此向两位老师致以诚挚的谢意和崇高的敬意。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工程科技 > 能源化工

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2