物联网.NET开发(第二版) 课件 项目九 智能家居系统_第1页
物联网.NET开发(第二版) 课件 项目九 智能家居系统_第2页
物联网.NET开发(第二版) 课件 项目九 智能家居系统_第3页
物联网.NET开发(第二版) 课件 项目九 智能家居系统_第4页
物联网.NET开发(第二版) 课件 项目九 智能家居系统_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

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

文档简介

智能家居系统任务1:智能家居网络环境搭建任务2:环境监测及控制任务3:RFID门禁控制任务4:红外报警及控制任务5:烟雾报警及控制项目九智能家居系统模拟实现对室内环境监测及风扇、灯光联动控制、门禁刷卡控制、红外报警及点阵联动控制、烟雾报警及语音联动控制。本项目通过唯众物联网实训平台,为智能家居提供解决方案。项目主要包括五个部分,分别为:智能家居网络环境搭建、环境监测及控制、RFID门禁及控制、红外报警及控制、烟雾报警及控制。唯众物联网实训平台,是一套基于物联网系统的综合应用平台。实训平台融合C#应用开发、Android应用开发及单片机应用开发于一体,集成了物联网应用的主要技术。基于平台,通过C#语言,我们可以开发出各种物联网应用软件。项目引入理解物联网实训平台的硬件组成及技术参数掌控WPF编程的基本方法掌握使用C#语言实现物联网平台传感器数据的方法掌握使用C#语言实现物联网平台硬件启动及停止的方法学习目标智能家居网络环境搭建:实现唯众物联网融合平台环境搭建,客户端通过浏览器访问服务器网页,以“新增项目”的方法在局域网中搭建无线网关连接实现物联网平台传感器及物联网设备的在线监测及控制,“项目”创建成功后,会生成对应的项目编号ProjectId,智能家居网络环境搭建成功后,通过服务器地址和项目编号实现后续物联网应用程序开发。环境监测及控制功能:实现对物联网平台温度传感器及光敏传感器数据的实时监测和分析,通过实时数据自动控制风扇的打开和关闭,RGB灯的打开和关闭,用户同时可以通过“打开风扇”、“关闭风扇”、“打开RGB灯”、“关闭RGB灯”实现手动控制风扇和RGB灯的打开和关闭,项目运行主界面如图9-1所示:项目描述RFID门禁及控制功能:实现RFID卡门禁控制,程序运行首先通过“开卡”实现RFID房卡数据的识别,识别的数据作为有效房卡数值。开卡成功后,需要刷卡进行验证,如果刷卡数据与开卡数据一致,则提示刷卡成功,同时打开风扇模拟刷卡成功,否则提示刷卡失败。项目运行主界面如图9-2所示:项目描述红外报警及控制功能:项目运行实时监测红外传感器数据,红外监测无人时,状态显示为“正常”,点阵初始显示“正常”,如果红外监测到有人进入,状态变为“有人进入”,同时控制点阵循环显示“有人进入”,如果人离开,状态显示为“正常”,点阵恢复显示“正常”,项目运行主界面如图9-3所示:项目描述烟雾报警及控制功能:项目运行实时监测烟雾传感器数据,烟雾监测无烟雾或可燃气体时,状态显示为“正常”,如果监测到有烟雾或可燃气体,状态显示为“烟雾报警”,同时控制语音模块重复发出报警声“请注意烟雾报警”,如果烟雾或可燃气体消失,语音模块停止报警,状态显示为“正常”,项目运行主界面如图9-4所示:项目描述任务1:智能家居网络环境搭建任务2:环境监测及控制任务3:RFID门禁控制任务4:红外报警及控制任务5:烟雾报警及控制工作任务任务描述

实现唯众物联网融合平台环境搭建,客户端通过浏览器访问服务器网页,以“新增项目”的方法在局域网中搭建无线网关连接实现物联网平台传感器及物联网设备的在线监测及控制,“项目”创建成功后,会生成对应的项目编号ProjectId,智能家居网络环境搭建成功后,通过服务器地址和项目编号实现后续物联网应用程序开发。任务1智能家居网络环境搭建1.唯众物联网平台主要硬件设备:(1)节点底板:用来安装传感器及无线模块。如图9-5所示:知识引入任务1智能家居网络环境搭建1.唯众物联网平台主要硬件设备:(2)无线模块:用来实现与无线网关组网,连接传感器与无线网关,如图9-6所示:知识引入任务1智能家居网络环境搭建1.唯众物联网平台主要硬件设备:(3)无线网关:实现与无线模块的组网功能,为应用程序读取数据及控制硬件提供支持,如图9-7所示:知识引入任务1智能家居网络环境搭建2.常用物联节点UID在物联网实训平台中,为区别不同的物联网传感器节点,帮助应用程序开发,为不同的节点分配固定的UID值,在程序开发中,调用动态链接库,通过不同的UID值对物联节点进行监测和控制,常见物联节点UID值如表9-1所示:知识引入任务1智能家居网络环境搭建节点名称UID温湿度30008光敏30009可燃气体30010人体红外30011风扇30012RFID30013门锁30014电灯30015继电器30016点阵30021RGB三色灯30018语音播放30023雨滴检测300223.唯众物联网融合平台知识引入任务1智能家居网络环境搭建4.WPF窗体程序知识引入任务1智能家居网络环境搭建WPF为WindowsPresentationFoundation的首字母缩写,中文译为“Windows呈现基础”。WPF是微软推出的基于Windows的用户界面框架,是Windows操作系统中一次重大变革,它提供了统一的编程模型、语言和框架,真正做到了分离界面设计人员与开发人员的工作,WPF是基于DirectX引擎的,支持GPU硬件加速,在不支持硬件加速时也可以使用软件绘制,同时它提供了全新的多媒体交互用户图形界面。4.WPF窗体程序知识引入任务1智能家居网络环境搭建【例9-1】第一个WPF项目新建WPF项目跟新建Winform项目一样,选择文件—新建—项目—WPF应用程序,选择存储位置,输入名称即可,如图9-18所示:4.WPF窗体程序知识引入任务1智能家居网络环境搭建【例9-1】第一个WPF项目点击确定,进入WPF窗口设计界面,如图9-19所示:4.WPF窗体程序知识引入任务1智能家居网络环境搭建【例9-1】第一个WPF项目新建的WPF项目会自动生成一个App.xaml和MainWindow.xaml文件,App.xaml用来设置Application,应用程序的起始文件和资源及应用程序的一些属性和事件,app.xaml.cs是处理应用程序的相关资源和事件,MainWindow.xaml是相应的窗体文件,MainWindow.xaml.cs为窗体后台代码设计文件。我们向设计窗口中添加一个标签Lable控件,这时XAML代码窗口会自动在<Grid>到</Grid>间自动生成标签Lable1代码,设置Lable的Content属性为“窗口一”,如图9-20所示:4.WPF窗体程序知识引入任务1智能家居网络环境搭建【例9-1】第一个WPF项目再向WPF项目中添加一个WPF窗口,使用默认名称Window1,如图9-21所示:4.WPF窗体程序知识引入任务1智能家居网络环境搭建【例9-1】第一个WPF项目向Window1中添加一个标签Lable1,设置Lable的Content属性为“窗口二”。项目初始运行窗口为MainWindow,如果修改App.xaml文件中StartupUri属性值为StartupUri=“Window1.xaml”,项目运行则显示窗口Window1。运行项目,效果如图9-22所示:5.WPF窗体布局WPF窗体控件要求放在一个容器中,布局控件主要用来存放基本控件和其他容器控件,布局控件同时可能通过属性设置内容控件的位置及对齐方式。Grid布局控件为WPF窗体默认添加的布局控件,Grid称为“网格”,由行和列组成,如果没有拆分行和列,默认为一行一列,即一个单元格,一个单元格内也可放多个控件,根据控件的Margin值确定控件的位置,如Margin=“128,126,0,0”,表示控件离单元格“左上右下”的距离。为了美化窗体,往往使用多行多列以及嵌套布局容器的方式设计窗体,并且Grid的行和列还可以象word中的表格一样进行合并。知识引入任务1智能家居网络环境搭建5.WPF窗体布局【例9-2】使用Grid布局设计登陆窗口知识引入任务1智能家居网络环境搭建新建一个WPF项目,设置window属性为:Title=“登陆”Height=“300”Width=“400”,分别表示窗体的标题,高度和宽度,使用一个五行三列的Grid进行窗体布局,布局代码如下:<Grid><Grid.RowDefinitions><RowDefinitionHeight="*"></RowDefinition><RowDefinitionHeight="40"></RowDefinition><RowDefinitionHeight="40"></RowDefinition><RowDefinitionHeight="40"></RowDefinition><RowDefinitionHeight="*"></RowDefinition></Grid.RowDefinitions><Grid.ColumnDefinitions><ColumnDefinitionWidth="80"></ColumnDefinition><ColumnDefinitionWidth="*"></ColumnDefinition><ColumnDefinitionWidth="40"></ColumnDefinition></Grid.ColumnDefinitions></Grid>5.WPF窗体布局【例9-2】使用Grid布局设计登陆窗口知识引入任务1智能家居网络环境搭建继续向窗体Grid网格中添加控件,设计代码如下:<Grid><Grid.RowDefinitions><RowDefinitionHeight="*"></RowDefinition><RowDefinitionHeight="40"></RowDefinition><RowDefinitionHeight="40"></RowDefinition><RowDefinitionHeight="40"></RowDefinition><RowDefinitionHeight="*"></RowDefinition></Grid.RowDefinitions><Grid.ColumnDefinitions><ColumnDefinitionWidth="80"></ColumnDefinition><ColumnDefinitionWidth="*"></ColumnDefinition><ColumnDefinitionWidth="40"></ColumnDefinition></Grid.ColumnDefinitions><TextBlockGrid.Row="1"Grid.ColumnSpan="3"Text="唯众物联管理平台2.0"TextAlignment="Center"FontSize="22"></TextBlock><TextBlockGrid.Row="2"TextAlignment="Right"VerticalAlignment="Center"Text="IP地址:"/><TextBoxGrid.Row="2"Grid.Column="1"Height="30"Name="txtName"Margin="100100"/><TextBlockGrid.Row="3"TextAlignment="Right"VerticalAlignment="Center"Text="项目ID:"/><TextBoxGrid.Row="3"Grid.Column="1"Height="30"Name="txtPwd"Margin="100100"/><StackPanelGrid.Row="4"Grid.Column="1"Orientation="Horizontal"><ButtonContent="连接"Width="70"Margin="30000"Height="30"Name="btnLogin"/><ButtonContent="退出"Width="70"Margin="30000"Height="30"Name="btnExit"/></StackPanel>

</Grid>5.WPF窗体布局【例9-2】使用Grid布局设计登陆窗口知识引入任务1智能家居网络环境搭建运行项目,窗体界面如图9-24所示:5.WPF窗体布局【例9-3】WPF窗体的事件代码知识引入任务1智能家居网络环境搭建WPF的事件代码编写类似于winform窗体,在窗体设计窗口中,双击“登陆”按钮自动生成登陆按钮的Click事件代码,编写代码如下:privatevoidbtnLogin_Click(objectsender,RoutedEventArgse){

try{vartask=httpClient.GetAsync("http://"+txtName.Text+":8080/wziot/wzIotApi/"+"getProjectState/"+txtPwd.Text);task.Result.EnsureSuccessStatusCode();HttpResponseMessageresponse=task.Result;varresult=response.Content.ReadAsStringAsync();stringresponseBodyAsText=result.Result;varjsonObject=JsonConvert.DeserializeObject<dynamic>(responseBodyAsText);if(jsonObject["msg"].Value=="查询数据成功"){task=httpClient.GetAsync("http://"+txtName.Text+":8080/wziot/wzIotApi/"+"isCreateOfProject/"+txtPwd.Text);

task.Result.EnsureSuccessStatusCode();response=task.Result;result=response.Content.ReadAsStringAsync();responseBodyAsText=result.Result;jsonObject=JsonConvert.DeserializeObject<dynamic>(responseBodyAsText);if(jsonObject["msg"].Value=="该项目已生成"){MessageBox.Show("验证通过,欢迎登陆!");}elseMessageBox.Show("项目未生成!");}elseMessageBox.Show("参数有误!");}catch{MessageBox.Show("参数有误!");}}

privatevoidbtnExit_Click(objectsender,RoutedEventArgse){this.Close();}任务1

智能家居网络环境搭建任务实现操作演示唯众物联融合平台通过局域网实现物联网设备的在线管理。WPF是微软推出的基于Windows的用户界面框架,它提供了统一的编程模型、语言和框架,实现界面设计人员与开发人员工作的分离。任务1

智能家居网络环境搭建任务小结任务描述环境监测及控制实现对物联网平台温度传感器及光敏传感器数据的实时监测和分析,通过实时数据自动控制风扇的打开和关闭,RGB灯的打开和关闭,当监测到室内温度高于28度,自动控制打开风扇,当温度低于28度,自动控制关闭风扇,当监测到光敏值高于150,自动控制打开RGB灯,否则关闭RGB灯。用户同时可以通过“打开风扇”、“关闭风扇”、“打开RGB灯”、“关闭RGB灯”实现手动控制风扇和RGB灯的打开和关闭。任务2

环境监测及控制1.温湿度传感器温湿度传感器是把空气中的温湿度通过一定检测装置,测量到温湿度后,按一定的规律变换成电信号或其他所需形式的信息输出,用以满足用户需求。温湿度传感器是指能将温度量和湿度量转换成容易被测量处理的电信号的设备或装置。市场上的温湿度传感器一般是测量温度量和相对湿度量。2.光敏传感器光敏传感器是对外界光信号或光辐射有响应或转换功能的敏感装置。光敏传感器是利用光敏元件将光信号转换为电信号的传感器,它的敏感波长在可见光波长附近,包括红外线波长和紫外线波长。光传感器不只局限于对光的探测,它还可以作为探测元件组成其他传感器。任务2环境监测及控制知识引入任务2环境监测及控制任务实现操作演示物联网平台通过UID识别不同的物联网设备。物联网设备控制包括自动控制与手动控制,在烧写单片机程序时根据需要可使用“按键”、“变量”两种方式进行控制。任务小结任务2环境监测及控制RFID门禁及控制模拟实现RFID卡门禁控制,程序运行首先通过“开卡”实现RFID卡数据的存储,存储的数据作为有效房卡数值。开卡成功后,需要刷卡进行验证,如果刷卡数据与存储的开卡数据一致,则打开风扇模拟刷卡成功,否则表示刷卡验证失败。任务描述任务3

RFID门禁控制RFID技术RFID(RadioFrequencyIdentification)技术,又称无线射频识别,是一种通信技术,可通过无线电讯号识别特定目标并读写相关数据,而无需识别系统与特定目标之间建立机械或光学接触。射频识别(RFID)是一种无线通信技术,可以通过无线电讯号识别特定目标并读写相关数据,而无需识别系统与特定目标之间建立机械或者光学接触。知识引入任务3

RFID门禁控制任务实现任务3

RFID门禁控制操作演示每个RFID标签都有唯一的编码,通过编码实现与房间的对应关系。通过继电器打开风扇模拟刷卡验证成功。任务小结任务3

RFID门禁控制项目运行实时监测红外传感器数据,红外监测无人时,状态显示为“正常”,点阵初始显示“正常”,如果红外监测到有人进

温馨提示

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

评论

0/150

提交评论