APP下载

基于Labview的智能家居控制系统的设计

2017-05-09伍麟珺,刘杨,吴乐

电子设计工程 2017年7期
关键词:下位上位串口

基于Labview的智能家居控制系统的设计

伍麟珺,刘杨,吴乐
(湖南工学院 电气与信息工程学院,湖南 衡阳421003)

文中设计的智能家居控制系统设计分为下位机和上位机两个部分。下位机以CC2530为控制核心,Zigbee终端分别采集温度等传感器数据,以无线传输的方式,将数据信息传送给Zigbee协调器,协调器通过液晶屏显示实时接收数据.同时将数据通过RS485总线传输给上位机。上位机采用LabView技术,对下位机发送过来的数据进行分析,然后通过RS485总线将控制指令传送给下位机,指导下位机控制相应设备,实现对家居环境的自动调节。

智能家居;Zigbee无线通信;Labview;485总线

智能家居是以住宅为平台,利用综合布线技术、网络通信技术、安全防范技术、自动控制技术、音视频技术将家居生活有关的设施集成,构建高效的住宅设施与家庭日程事务的管理系统,提升家居安全性、便利性、舒适性、艺术性,并实现环保节能的居住环境。最近几年,无线网络高速发展,相对于传统的有线网,无线网络有诸多优势,目前蓝牙、WiFi、ZigBee是智能家居网络的主要技术,而ZigBee技术是一种短距离无线通信技术,它可以应用在很多场合,它使用的波段为2.4 GHz,采用跳频和扩频技术[1-2]。鉴于ZigBee技术的低功耗、低成本、体积小等特点,在智能家居控制方向,将成为最受欢迎的的无线通信方式之一[3]。

1 系统总体结构设计

智能家居控制系统设计分为下位机数据采集和上位机数据处理两个部分。下位机以CC2530为控制核心,由终端和协调器一起组成Zigbee无线通信网络[4-6],Zigbee终端分别采集室内温度[7]、烟雾、粉尘、人体热释红外等传感器[8]数据,以无线传输的方式,将数据信息传送给 Zigbee协调器,协调器通过LCD12864液晶屏显示实时接收数据,同时以串口通信的方式,将数据通过RS485总线传输[9]给上位机做进一步处理,上位机采用可视化图形编程语言LabView技术[10],对下位机发送过来的数据进行分析,然后通过RS485总线将控制指令传送给下位机,指导下位机做出相应的动作,即打开或者关闭空气净化器、风扇等相应电气设备,实现对家居环境的自动调节,使之始终维持在一个较佳状态。系统还设置了有火灾预警,家用电器控制,远程在线监控等辅助功能。系统框图如图1所示。

图1 系统硬件框图

2 硬件系统设计

智能家居控制系统硬件部分设计分为传感器检测部分和智能接收显示两个部分,其主要由电源、Zigbee无线通信、DS18B20温度检测、粉尘PM2.5检测、MQ2烟雾检测、人体热释红外检测、LCD12864液晶显示以及RS485串口通信等模块组成。

2.1 CC2530无线传输系统

设计分为Zigbee终端和Zigbee协调器两大模块电路,其中,Zigbee终端用来采集温度、烟雾、PM2.5、人体热释红外感应4个传感器数据,4个Zigbee终端为相互独立硬件系统,其中,每个Zigbee终端主要由CC2530无线传输电路和传感器电路等组成;Zigbee协调器对终端发送过来的数据进行显示和传送给上位机,主要由CC2530无线传输最小系统、RS485串口通信电路、LCD12864液晶显示器接口电路等组成[11-12]。

2.2 无线传感器电路

无线传感器模块由传感器和单片机CC2530及外围电路组成,本系统包括温度、烟雾、PM2.5、人体热释红外感应四路传感器数据采集。每个Zigbee终端由CC2530无线传输系统和传感器电路组成,4个传感器和单片机通信方式类似。

2.3 无线智能接收机

无线智能接收机由CC2530单片机、LCD12864液晶显示、电源和通信芯片接口组成,该设备可及时将检测器采集的温度、烟雾、PM2.5、人体热释红外感应传感器数据信息进行显示、处理。继电器[13]通过接收上位机的指令来控制家用电器的开启和关闭,以便实现室内环境自动调节。其中,RS485通信模块用于实现上位机和下位机双向实时通信。

3 软件系统设计

系统软件设计分为上位机和下位机两个部分组成,下位机以CC2530为控制核心,采集和显示温度、烟雾、PM2.5、人体热释红外感应传感器数据,包括Zigbee无线通信协议栈程序、监控程序、串口通信程序等,而上位机采用Labview技术,包括串口通信、数据处理和显示程序等。

3.1 下位机ZigBee软件设计

ZigBee协议栈就是以函数的形式将各个层定义的协议都集合在一起,并给用户提供API应用层调用。我们在开发一个应用时,协议较底下的层与应用是相互独立的,因此只要在应用层进行相应的改动,就可以实现组网,数据的发送和接收。Zigbee协调器首先尝试建立Zigbee无线网络,然后给Zigbee终端分配短地址,通过这个短地址来管理各个终端。即各个终端分别将自己采集的数据通过无线传输的方式发送协调器,协调器通过短地址来确定是哪一个终端发送过来的数据,从而对终端进行有效管理,防止数据丢失和出错[14]。

3.1.1 PM2.5检测

PM2.5粉尘传感器读取数据分为A/D转换和串口通信两种方式,为了减轻CC2530的工作负担,设计选择串口读取的方式。PM2.5传感器首先会通过自带控制芯片对粉尘浓度进行检测,然后封装为一帧数据,这一帧数据由8个字节组成,其中第一个和最后一个为数据帧识别字节,而第二个和第三个为该设计需要的有效字节,所以只需要通过串口读取这一帧数据,提取有效字节,读取的数据为十六进制,通过一定的算法,将十六进制数据转化为PM2.5实际浓度值。

3.1.2 温度检测

温度传感器DS18B20的测温原理遵循严格的单总线协议,单片机通过时序来写入和读出DS18B20中的数据。首先初始化,启动温度转换进程,发温度读取指令,读高八位和低八位十六进制数据,并保存,通过算法,将其转化为实际温度值。

3.1.3 LCD12864显示

首先对LCD12864显示屏进行初始化,然后对LCD12864液晶进行查忙操作,如果BF为低电平,则显示RAM地址,将其写入相应的数据并进行显示。如果BF高电平,则无法写入数据,直到BF为低电平,则可以写入新的数据。

3.2 上位机LabView软件设计

LabVIEW的核心是VI,分为前面板和后面板,其中后面板主要用来编写框图形式的源程序。LabVIEW尽可能采用了通用的硬件,并且充分利用了计算机平台强大的数据处理能力,用户就可以根据自己的需要定义和制造各种仪器[15-18]。

3.2.1 登陆模块

登陆界面主要负责管理用户权限,以保证系统的安全性。登陆管理前面板设计。只有正确的输入用户名和密码才能进入系统,登陆结果为登陆成功,欢迎使用,否则,显示用户名或密码错误,请重新登陆。上位机和下位机通信采用十六进制数据传输,由于上位机从串口读取的为数据帧格式,即先截取字符串,然后索引数组,提取有效数据,则可正常显示当前温度值,与此同时,将提取的实际温度值与设置的阀值进行比较,比较结果送LED显示。

输入的用户名和密码与先前程序设定的用户名和密码进行比较,然后将两者相与,只有当用户名和密码都为真时结果才为真,才能进入用户界面,登陆界面程序设计框图如图2所示。

图2 登陆界面设计

登陆模块获取系统时间程序,其调用路径为“函数选板->编程->定时->获得时间/日期(秒)”。利用LabVIEW里面自带的“获取时间函数”,由该函数返回一个系统当前的时间戳,并使用“时间标识显示”控件将当前时间的时间戳显示出来。

3.2.2 家居环境自动调节模块

家居自动控制模块主要由串口通信、家居环境参数显示和自动调节等部分组成。选择好串口号,就能在各个显示控件上读到相应的数据,比如当温度超过预警值则相应的指示灯点亮,提示温度过高,同时,上位机会发送相应的控制指令给下位机,下位机接收指令打开相应的电器设备,从而调节室内温度。其中,温度预警值还可以由用户自定义。环境控制界面前面板如图3所示。

上位机和下位机通信采用十六进制数据传输,下位机送给上位机的数据要先经过数据处理,才能正常显示。下面介绍温度数据的处理,由于上位机从串口读取的数据为一帧一帧的数据,即先截取字符串,然后索引数组,再创建显示控件,则可正常显示当前温度值,与此同时,将提取的实际温度值与设置的阀值进行比较,比较结果送LED显示。上位机将通过串口发送一个指令给下位机,打开降温设备,完成室内环境的自动调节。

系统上位机和下位机采用串口实时通信,由于系统设计采用RS485转USB接口,所以首先必须安装RS485转USB驱动,这样才能为上位机和下位机串口通信提供条件。串口的波特率和数据位以及奇偶校验可以通过VISA设置,设置好,系统就可以通过读取和写入函数,实现数据发送和接收,实现上位机和下位机实时通信。

图3 控制系统界面设计

3.2.3 家用电器控制模块

家电控制程序,创建一个数组,当数组的第一个元素为aa时代表进入电器控制,电器控制由二个按键控制,每个按键的开启和关闭对应发出数据1和0,数组的第一个元素为净化器控制指令,数组的第二个元素为电饭煲控制指令,如选中控制空气净化器为真时,即给数组第二个元素赋值为1,然后这个控制指令通过数组写入串口发送函数,labview上位机自动发送给下位机指令1,下位机接到控制指令1,立即打开空气净化器,当选择控制空气净化器为假时,发送关闭控制指令数据0,即可关闭空气净化器。

4 硬件电路测试

首先测试CC2530单片机系统电路板和上位机能否正常工作和通信,其次测试各个模块是否能单独工作,各个模块是否能和CC2530进行通信,这是数据采集的基础;最后测试Zigbee协调器和终端之间是否可以进行正常的无线数据传输,因为传感器采集的数据都是通过无线进行传输的,没有它整个系统的硬件设备无法正常运行。

下位机串口数据采集和发送:首先将Zigbee各个传感器终端按要求连接好,然后将Zigbee协调器通过MAX485转USB连接电脑USB接口,打开串口助手,然后观察协调器显示数据和串口显示数据,对比是否相同,经测试,结果相同,即下位机数据采集和发送正常。

上位机串口数据接收:打开labview智能家居控制登陆界面,输入正确密码登入控制界面,设置波特率为115 200,选择串口,观察labview界面显示的环境参数数据和协调器是否相同,经测试,数据同步并且相同,即上位机串口接收数据正常。

上位机和下位机协同工作,实现环境参数自动调节:首先准备一个温度传感器,然后在实验室给传感器不同的温度,经测试,温度数据会发生变化,同时,下位机控制风扇的继电器开关会根据温度值的大小自动打开或关闭,经过一段时间调节,室内始终维持在一个良好的环境,检测结果如图4、5所示。

图4 下位机检测结果

图5 上位机监控结果

5 结束语

基于ZigBee的智能家居控制系统的设计采用无线传感器网络技术对室内传感器节点采集的数据进行传输,避免了现场布线带来的各种问题,改变了人们的家居生活方式,提高了人们的生活水平。

[1]翁静兰.基于ZigBee技术的数据采集系统的研究[D].镇江:江苏大学,2009.

[2]李蛟,杨仁锟,肖峻.2.4GHz无线技术标准及ZigBee抗干扰性能 [J].电信工程技术与标准化,2006 (3):31-35.

[3]佘明辉,余轮.基于扩频技术的跳频扩频分析[J].电子世界,2012(8):16-116.

[4]徐小玲,刘美,李绪政.基于STM32的无线智能家居终端设计[J].电子设计工程,2016(2):176-180.

[5]俞萍,刘辉,郭有环.ZigBee技术在智能家居中的应用研究[J].廊坊师范学院学报:自然科学版,2015(12):48-50.

[6]卢建伟,崔璨.基于ZigBee技术的智能家居系统概要设计[J].电子技术与软件工程,2014,18:28-30.

[7]李石林,魏雄.基于 ARM-Linux的温湿度远程监控系统设计[J].电子技术与软件工程,2014,27:264-265.

[8]贾强.基于热释电红外线传感器的电路设计[J].电子技术与软件工程,2015,3:126.

[9]卢嫚.基于RS-485总线的温室多点监测系统设计与实现[D].西安:西北农林科技大学,2013.

[10]郑对元,等.精通LabVIEW虚拟仪器程序设计[M].北京:清华大学出版社,2012.

[11]陈小龙,郑炜超,朱春望.基于CC2530的智能无线装置设计[J].电子设计工程,2015,12:133-135.

[12]王翠香,邵星.基于无线传感器网络的智能家居系统设计[J].工业控制计算机,2015,12:58-59.

[13]张军,袁红兵.智能家居中继电器智能控制系统设计[J].机电一体化,2013,11:72-75,88.

[14]薛秦刚.IEEE802.15.4的ZigBee协议栈研究与仿真[D].西安:西安理工大学,2010.

[15]董翰川,郭勇,李文杰.LabVIEW串口通信在数据采集中的应用 [J].微型机与应用,2011,23:63-64,68.

[16]宋玉琴,姬引飞,段俊瑞,等.基于Android和ZigBee的智能家居系统设计[J].西安工程大学学报,2015 (4):442-446.

[17]万磊,章勇,李剑.基于ZigBee无线传感器网络的智能家居设计[J].电子科技,2012(2):116-119.

[18]谭涛,徐晓辉,黄晓亮,等.基于Arm—Linux的嵌入式智能家居控制系统的设计[J].电子设计工程,2011(3):160-162.

Design of smart home control system based on Labview

WU Lin-jun,LIU Yang,WU Le
(Institute of Electrical and Information Engineering,Hunan Institution of Technology,Hengyang 421003,China)

The design of smart home control system is divided into two parts,the lower and the upper computer.The lower computer uses CC2530 as the control core,Zigbee terminals collects temperature sensor data in wireless transmission mode,than transmit data to the Zigbee coordinator,the data display on LCD screen at the same time.The data transmission to the upper computer for further processing by RS485 bus.The upper computer using analyze the data from upper computer by Labview,and then send control commands to the slave machine through the RS485 bus which to guide upper computer to the corresponding action to achieve automatic adjustment of the home environment.

smart home;Zigbee wireless communication;Labview;485Bus

TN92

A

1674-6236(2017)07-0165-05

2016-03-29稿件编号:201603394

2014年湖南省大学生创新训练计划项目(H1402);湖南工学院大学生创新训练计划项目(H1315)

伍麟珺(1982—),女,湖南衡阳人,硕士,讲师。研究方向:信号与信息处理。

猜你喜欢

下位上位串口
浅谈AB PLC串口跟RFID传感器的通讯应用
发射机房监控系统之下位机
特斯拉 风云之老阿姨上位
“三扶”齐上位 决战必打赢
基于ZigBee和VC上位机的教室智能监测管理系统
景洪电厂监控系统下位机数据传输网络改造
围观党“下位”,吐槽帝“登基”
USB接口的多串口数据并行接收方法探索
基于蓝牙串口适配器的GPS接收机与AutoCAD的实时无线通信
以新思路促推现代农业上位