智能家居软件用户手册.docx
《智能家居软件用户手册.docx》由会员分享,可在线阅读,更多相关《智能家居软件用户手册.docx(14页珍藏版)》请在冰豆网上搜索。
![智能家居软件用户手册.docx](https://file1.bdocx.com/fileroot1/2023-4/17/3dcfaf9a-68d0-4692-8bf4-cf63a80768a7/3dcfaf9a-68d0-4692-8bf4-cf63a80768a71.gif)
智能家居软件用户手册
一、设计思路1
二、系统架构1
(1)ClientLayer1
(2)ServerLayer:
2
(3)SensorLayer:
2
(4)ExternalEquipment(外接设备):
3
三、通信协议说明3
四、文件传输与管理4
五、使用说明5
1.程序启动5
(1)运行server端程序5
(2)运行client端程序6
2.系统操作7
(1)系统登录7
(2)系统注销9
(3)系统退出9
3.数据监控9
(1)启动监控15
(2)监控操作16
(3)报警操作18
(4)通道数据19
(5)报警数据20
(6)云端数据22
(7)窗口管理22
六、结语27
基于嵌入式的智能家居系统
软件手册
一、设计思路
随着智能家居产业的兴起,小型化服务器、多功能数据监测与控制系统,已经成为智能家居系统发展的一种趋势,建立集服务、控制、监控、报警于一身的低成本智能家居系统,将在未来的市场中占有巨大的优势。
基于此,系统设计阶段,即第三轮代码编写阶段,软件架构便明确的设计为,基于嵌入
式系统的、利用TCP通信作为接口的Server/Client模式。
Server程序作为嵌入式系统内长期运行的服务程序,无需面板显示功能,因此Server程序设计为无面板的黑盒;Client程序作为用户程序,通过LAN或Internet链接到Server,对服务器进行访问、设置等等,
展现智能家居系统的全部功能。
对于Server而言,其本身除提供Client端的数据访问外,还应具有传感器数据采集等等功能,通过“链接”在Server端的传感器,实时的监控家居环境。
对于家庭环境,基于无线网络的监控系统,将大大的提高系统的安装灵活性。
因此Server与Sensor之间的通信,
将主要通过无线网络来完成。
在Server于Sensor的通信中,由于Server无需实时的采集全部Sensor的数据,只需定时获取相关信息,因此在这一个层面的通信中,Sensor将作为
“服务器Server”,而Server将作为“客户端Client”,Server主动的链接Sensor获取数据,而在获取数据后断开与Sensor的链接,这样便可实现Server对多个Sensor的定时监控。
除了传统的传感器数据采集,近些年视频监控与图像识别,在各个领域内的应用越来越广泛。
如若智能家居系统与视频监控相结合,既能满足对家庭环境的远程视频查看,又能利用图像识别功能,在儿童监护、老人防摔、家庭防盗、人脸识别等等方面发挥更大的作用。
因此将视频监控系统集成与系统内,也是系统设计较早便考虑的方面。
二、系统架构
根据设计思路,系统架构由“三个层次”以及“外接设备”构成,我们将这三个层次分别命名为:
ClientLayer、ServerLayer、SensorLayer。
(1)ClientLayer
由客户端程序构成,运行于一台独立的PC,其与ServerLayer通过LAN或Internet
进行通信,实现命令的发送和数据的读取;
(2)ServerLayer
由服务器软件及myRIO部分功能构成,程序分别运行于一台PC和myRIQ两个程序间
的数据通信以共享变量"来实现。
这里额外要说的是,设计的初衷是将ServerLayer的全
部程序运行于myRIQ中,这样便实现了真正的嵌入式,但是与NI工程师沟通后,得到目前myRIQ不支持数据库功能的结论,因此不得不将myRIO与PC混合使用,来实现数据的存储。
在实际的使用中,Server内部的通信将在内存中直接完成,可以舍弃全部共享变量;
(3)SensorLayer:
由Sensor程序构成,其运行于myRIQ内,其与ServerLayer通过无线网络的TCP或
UDP进行通信,将采集到的传感器数据,通过网络发送给ServerLayer。
在实际的使用中,
可以用无线通信模块及数据采集模块代替myRIO,以降低采购成本;
myRIO
Sensor1
Interface
PC
Interface
myRIO
External
Equipment
myRIO
Server
myRIO
External
Equipment
Sensor2
Sensor3
myRIO
Sensor4
Client1
Client2
Client3
PC
PC
PC
V
A
JT
结构图
4)ExternalEquipment(外接设备)
直接连接于ServerLayer或通过网络连接于ServerLayer的设备,包括摄像头、麦克风等等设备,可实时的采集家庭内的数据或发出报警信息,并通过LAN或Internet与Client
Layer连接,实现数据的远程传输。
三、通信协议
对于三层数据传输的架构,针对性的制定了2套不同的通信协议,分别用于ClientLayer与ServerLayer间的通信,以及ServerLayer与SensorLayer之间的通信,我们这里分别命名为UserProtocol和SensorProtocol。
(1)UserProtocol
该协议用于ClientLayer与ServerLayer间的通信,ServerLayer作为服务器,监听特定的端口,ClientLayer作为客户端,链接ServerLayer,建立连接后,实现数据的通信。
当需要断开链接时,ClientLayer发送断开命令,ServerLayer将链接断开。
该协议共分为5大部分,利用了三个不同的端口进行不同数据的通信。
基本按照第三轮至第五轮的顺序,依次添加了不同部分的协议,这也是基于通信协议的优势,只要协议制定合理,其扩展能力很强,可以满足各种不同功能的需要。
三个端口中,Port1主要用于常规命令的发送和反馈信息的回复,可以实现小规模数据的通信;Port2主要针对Monitor模块中的实时数据查看功能,当监测的窗口较多时,数据通信量较大,单独利用一个端口实现数据的传输,可以提高系统的反应速度;Port3
主要针对视频传输数据,其目的与Port2相同,减少Port1的数据通信量。
(2)SensorProtocol
该协议用于ServerLayer与SensorLayer之间的通信,包括UDP协议和TCP协议两个部分,其中对于TCP通信,SensorLayer为服务器,ServerLayer为客户端,实现ServerLayer对多个Sensor的数据采集。
UDP协议主要用于Sensor的探测,利用UDP可以跨网段传输的特性,在未设置IP地址
的前提下便可将网络内的Sensor信息监测到,增加系统配置配置的灵活性。
在添加设备时可以利用该功能自动查找可用的Sensor,方便系统设置。
TCP协议主要用于Sensor数据的获取,该协议为各个Sensor的通用协议,这样便可方
便Server的数据采集。
四、数据管理
所有的数据都存储在Server中,这样无论Client端在何处登录,都可以读取到同样的数据。
对于图像、音乐等较大的文件数据,以文件的形式在指定文件夹内进行存储,对于传感器采集的数据,则在数据库中进行管理。
软件的架构设计应该以数据的流向作为轴线,进行功能的设计和代码的编写,因此本系统将Server作为数据的核心,Client与Sensor的数据都以Server为基准进行上传和下载。
软件针对不同的模块,引入了面向对象编程,将属性与数据结构匹配,提高了程序的扩展性,同时与数据结合更加紧密。
五、使用说明
程序需要安装LabVIEW2014开发环境,myRIO开发包,wsncloud云端服务器插件,
Access2007数据库驱动。
运行项目StageO5_ZhangChao.lvproj项目文件,弹出如下对话框,依次运行myRIO.vi、Server.vi、Client.vi。
'uLfl^KJt_j&Mn^C.hK,hpraj-^rcj*cH|:
E-sJori"
FiliE(MPlWtfO^STFltT-tfllijiW*diTHWp
harfui
d-It-
r二:
二一二
Moduli
«.°
迹urn
liNr-m>WiZi^fflKI-2C-T9Z/;F『口皿口典帕咼blVitale
USkibdl
}SvmarL^iwy.Mib
'/Carrier命AQkJad
--十D-^ihan中*DVAH>
%軸出SfWt■胡"4
J.F-II*-
JjnqL二寸旳Me-"P«z-j-■WfCfin'ipUBri
dim
CLrwtBhuwi
P*"il
^dad
hMriH
LankFEl
Smrd
1.程序启动
(1)运行myRIO程序
首先打开NI-myRIO-1900设备下的myRIO.vi,运行该程序,首先要部署共享变量,女口
下图所示:
启动成功后,程序运行如下图所示:
myRIO程序
其中stop按钮用于退出myRIO程序,该按钮实际只在调试中有效,实际运行时程序部
署到myRI0中,按钮失去作用;Clientsconnected表示myRIO中的sensor服务器当前连
接的客户端个数。
当server从sensor采集数据时,该控件显示不为0,当server采集结束后,该控件变为0。
(2)运行server程序
打开server虚拟文件夹下的server.vi,运行服务器程序,由于server与myRIO之间
要通过共享变量进行数据通信,因此程序首先部署共享变量,如下图所示:
。
程序运行后如下图所示。
server程序
其中stop按钮用于停止server程序,visionalarm按钮用于控制视频报警的开启和
关闭,Clientsconnected表示Server中的服务器当前连接的Client个数。
(3)运行Client程序
打开Client虚拟文件夹下的Client.vi,运行客户端程序,程序运行后如下图所示。
2.系统操作
(1)系统登录
点击菜单File-Login,如下图所示:
或者将鼠标移动至界面的底端,在弹出的按钮框中点击login按钮,如下图所示:
弹出Login对话框,输入IP地址,Name默认ZhangChao,通过该账号可登陆系统,用
户也可以在setting中新建账号,将在后面详细介绍,如下图:
点击ok按钮,进入password界面输入密码,默认密码为5600。
点击#"确认输入内容,并将账号和密码发送至服务器,与服务器数据库内的账号信息进行比对;点击*”清空输入
内容。
当鼠标悬停在“#”与“*”会有功能提示。
同样,将鼠标移动至界面底端,会弹出按钮对话框,点击logout断开与服务器的连接,点击exit按钮,退出程序;
登录成功播放uniock提示音,登录失败播放error提示音,并显示相应的提示信息;
登录成功后密码按键将变为禁用状态,菜单栏将增加operation菜单栏,用户可以继续进一
步的操作;同时File菜单内的Login菜单由启用状态变为禁用状态,Logout、Home菜单由禁用状态变为启用状态。
登录失败