基于ZigBee的无线物联网实训平台的设计与实现
2018-03-24兰忠建
兰忠建
摘 要:2011年,教育部已经明确将物联网工程专业列入计算机类专业。近年来,国内各中职学校陆续开设了物联网相关专业,建设物联网专业实验室并开发相关教学平台已提上议程。但由于物联网专业包括内容较多,且属于新专业,因此物联网专业课程体系尚未完全固定,物联网实训教学平台更是缺乏。有些学校虽然花了大量人力物力建设了看似高端的物联网专业实训室,但不实用,文中根据当前一些中职院校物联网建设的实际情况拟开发了一套实用的无线物联网实训平台。
关键词:ZigBee;物联网;实训平台;计算机
中图分类号:TP391 文献标识码:A 文章编号:2095-1302(2018)03-00-04
0 引 言
无线传感网络最早是美国伯克利加州大學(UC Berkeley)的一项研究计划。目前主流的无线传感器网络技术——ZigBee是一种短距离、低功耗的无线传输技术[1],主要优点包括高数据传输可靠性、低功率消耗等,所以开发者普遍使用ZigBee技术来开发环境监测、智能家居、工厂控制、智能农业及安防监控等物联网平台的传输层。
我们拟提出基于ZigBee的物联网实训平台,在该平台上,学生可以练习Android程序开发,ZigBee无线传感器网络开发。希望本研究提出的Android物联网平台能够对物联网相关课程的体系优化、创新人才培养、实训建设等方面提供参考。
1 ZigBee 无线网络
ZigBee是一种低功耗、低成本且拥有灵活自组网功能的无线技术,主要具有低功耗、低成本、数据传输可靠度高、支持三种网络拓扑、支持较多的网络节点设备等特点。
ZigBee网络包含一个主控设备和其他附属设备,单个网络最多有255个节点,如通过主控设备连接,ZigBee网络可以支持超过65 000个节点。
2 系统需求分析
本系统是为中职学校物联网相关专业师生提供的一款用于物联网实训课程的无线物联网实训平台,简单实用。文中针对该物联网实现课程平台做了需求分析,主要包括实训平台的功能性需求、非功能性需求、一级实验项目的需求、系统用例分析和系统模块规划。
2.1 功能性需求分析
本文拟开发的无线物联网实训平台的功能性需求如下:
(1)以德州仪器(TI)公司生产的CC2530芯片为基础,自主研发ZigBee模块,包括设计硬件电路图、设计ZigBee模块的天线、设计ZigBee软件程序。
(2)采用Eclipse设计Android APP程序,实现传感器数据的显示,使得手机用户可以通过APP控制电灯和电风扇的开关,并保留相关文档。
(3)利用自主设计的ZigBee模块、蓝牙模块、Android智能手机、相关传感器以及自行开发的Android APP和ZigBee程序完成无线物联网平台的组网搭建,实现通过温湿度传感器监测环境温湿度,通过烟雾传感器监测是否有烟雾,通过开关节点完成电灯控制,通过开关节点完成电风扇控制,通过人体红外传感器监测是否有人等功能。
(4)整理相关设计文档、图纸和源代码等,以便后续提取课程实验项目。所有电路原理图、源代码均保留详细文档说明,学生可以在此基础上新增、修改、删除系统功能,从而达到物联网课程实训目标,并可形成一套完整的实训指导书,学生可根据实训指导书完成相应的实训内容。
2.2 非功能性需求分析
通过该无线物联网平台培养学生具有如下能力:
(1)了解物联网网络技术基础知识,这是最基本也是最主要的;
(2)熟悉并了解物联网网络软硬件架构(组网方式、网元功能等),基本的网络软硬件架构通过此平台可以很好地掌握;
(3)熟悉并掌握物联网教学平台的组网搭建,这个需求对中职生而言是一个难点,但在此平台中可以充分实现;
(4)通过此平台学生基本可对ZigBee网络和Android的基础知识有充分的认识和掌握;
(5)熟悉并掌握物联网ZigBee传感模块的开发流程,虽然这个要求比较高,但仍能体现于基本的开发流程中;
(6)熟悉并掌握物联网客户端Android APP的开发流程,这是一个难点,但基础较好的学生有该需求。
3 系统设计
3.1 系统设计方法
本系统拟提出一款基于Android的物联网实验平台,在该平台上,学生可以练习Android程序开发、ZigBee无线传感器网络开发。
系统设计主要分为硬件设计和Android软件设计两部分,具体如下所述:
硬件设计包括蓝牙和ZigBee两个硬件功能模块。蓝牙功能模块负责与智能手机通信,ZigBee功能模块负责与风扇、温湿度传感器等设备通信。其中,蓝牙功能模块拟采用“网蜂”蓝牙4.0模块,ZigBee功能模块拟自行设计。
在软件方面,主要采用Eclipse集成开发环境结合Java语言进行Android程序的开发,程序分为可燃烟雾检测功能模块、灯光控制功能模块、风扇控制功能模块、人体红外监测功能模块、温湿度监测功能模块。
3.2 系统架构设计
本系统架构可以概括为通过Android系统结合ZigBee无线网络来设计并实现无线物联网平台。我们将平台分为三层,分别为ZigBee网络层、实体与应用连接层和用户应用接口层。
ZigBee网络层主要是本系统设计的ZigBee无线传感网络,配备了诸多系统所需要的传感器,能够方便学生学习各种不同传感器的数据采集方式和通信模式。系统架构示意图如图1所示。
ZigBee实体网络层主要包括ZigBee传感与控制节点,本系统中ZigBee节点包括电灯开关节点、温湿度终端节点、烟雾节点、人体红外线终端节点和安全监测开关节点。ZigBee 实体网络架构如图2所示。
4 系统实现
4.1 系统概述
如前所述,本文拟开发一套用于中职学校物联网工程专业师生实训的无线物联网教学平台,系统以目前流行的Android智能手机作为主控平台,结合ZigBee技术设计了相关软硬件,最终实现了通过ZigBee模块采集温湿度、烟雾、人体入侵等环境数据,并通过蓝牙转接板连接Android手机,待用户查看相关环境数据后还可控制电灯、电扇等电器的功能。
本系统中的节点包括蓝牙节点、温湿度ZigBee终端节点、烟雾ZigBee终端节点、电灯开关ZigBee节点、红外线ZigBee终端节点和插座开关ZigBee节点。系统示意图如图3所示。
4.2 系统软件界面
自行开发Android手机APP,其UI界面如圖4所示。
手机界面大致分为标题文字、电灯控制、传感显示和系统测试四部分:
(1)标题文字:可以标示目前使用的是哪一种系统。在本系统中,显示“无线物联网教学平台”。
(2)电器控制:电灯控制界面包括1张电灯图片、1张风扇图片及4个按钮,目前在界面中可以控制两种电器,若按下电灯的打开按钮,则远处的电灯会自动打开并回传信号,手机根据信号的内容变更电灯控制中电灯的图片。同理,可以远程控制电风扇的开关。
(3)传感显示:传感显示包括4个传感组件的显示值,分别为温度、湿度、烟雾和人体红外,远处的终端节点会每隔 5 s发送一组传感信号,界面中以数值和条状图显示当前的温湿度、烟雾报警、人体红外报警等信息。
(4)系统测试:系统测试界面包括文字输入、传输按钮和文字显示界面,用户可以在文字输入中输入特定的指令后按下传输按钮,无线物联网平台会根据输入的指令,将相应的内容传输到Android手机,手机便将内容显示在文字显示界面中。这里主要提供给开发者用以测试。
4.3 系统硬件实物
温湿度终端节点采用瑞士SENSIRION公司开发的DHT11温湿度传感器,该传感器包含一个电容式测湿组件和一个能隙式测温组件,并与一个14位A/D转换器及串行接口电路集成在同一芯片上,通过DHT11可回传环境温湿度信息至智能手机。本研究所使用的DHT11温湿度传感器、人体红外传感器、烟雾节点、风扇节点如图5所示。
5 系统测试
5.1 系统单元测试
测试方法主要包括电源电压单元测试、时钟频率单元测试、开机复位单元测试、温湿度实验压力测试、LED灯实验压力测试以及系统功能测试。我们分别进行了电源电压单元测试,时钟频率单元测试,开机复位单元测试。通过测试结果可知,各模块的相应数值都在标准范围内,系统稳定 。
5.2 系统压力测试
在进行压力测试时,动员全专业150名学生分成30组,每组轮流对随机选出的1套设备进行压力测试,重复5次,在一天之内完成2个实验。该设备共计承受300次压力测试,记录出现故障的次数。压力测试结果表明,系统运行稳定,可大量投入使用。
5.3 系统功能测试
本文将开关节点与普通电灯结合,当用户拿出Android智能手机开启APP应用程序并按下men键,选择Connect a device-Securec后会出现可供连接的所有蓝牙设备。选取蓝牙收发器设备,连接成功后就可以利用Bluetooth来连接ZigBee系统。测试所用硬件如图6所示。
开关节点与日常电灯结合 蓝牙节点设备 应用程序中选取
蓝牙收发器设备
目前手机已与蓝牙节点连接,用户可按下APP中的电灯按钮来控制电灯开关节点设备。实际手机控制电灯开关节点示意图如图7所示。手机与蓝牙节点上的蓝牙收发器通信并传输信号,蓝牙收发器再通过有线串口传输数据给ZBee模块,ZBee模块通过ZigBee无线信号将ZigBee数据传输给开关节点,开关节点会依据此数据中携带的命令码执行相关操作,例如打开电灯、关闭电扇等。当执行结束后,开关节点会反馈执行结果给ZBee。
无线物联网平台中的传感部分如图8所示,温湿度ZBee终端和烟雾ZBee终端会每隔5 s传输一组温湿度或烟雾浓度数据到ZigBee路由器,ZigBee路由器会将信息传输至蓝牙节点,蓝牙节点上的ZBee模块利用UART串行端口将传感信号内容传输至蓝牙收发器,蓝牙收发器通过无线蓝牙信号把数据发送给Android智能手机,手机将接收到的信息显示在屏幕上,用户可以远程实时查看当前温湿度和烟雾浓度数据。
5.4 实训项目效果评价
当前由于很多中职院校的物联网专业老师非科班出身,因此对于这门课程的教学方法都很迷茫,都在通过不断的学习和探索进行教学工作。而本无线物联网实训平台的出现可有效改进目前中职院校物联网课程的教学模式。
学生实现分组学习。本文实现的无线物联网实训平台具有完善的功能,使用时,老师可根据情况将学生分成若干小组,学生可以将此系统做为基础的物联网学习平台,无需考虑硬件的组成情况而直接进行工程开发。由于本平台设置了一些基础的编码程序,源代码开放,学生可以通过更改程序完成一些实验项目。
学生自由探究学习。此无线物联网实训平台组建灵活,学生可以很容易地搭建适合自己的学习平台。教师在使用此平台时也可编写包含相关感知层、传输层、应用层典型案例实验(如基础的网络搭建实验,学习ZigBee的网络组网基础知识等)的实训指导书。
6 结 语
随着信息技术的快速发展,继移动互联网之后,物联网已成为未来互联网的主流趋势,被公认为信息产业的Next Big Thing,2011年教育部明确将物联网工程专业列入计算机类专业。近年来,国内各中职学校陆续开设了物联网相关专业,建设物联网专业实验室并开发相关教学平台已提上议程。但由于物联网专业包括的内容较多,且属于新专业,因此物联网专业课程体系尚未完全固定,物联网实训教学平台更是缺乏。有些学校虽然花了大量人力物力建设了看似高端的物联网专业实训室,但并不实用。
本研究旨在为中职院校相关专业的教学研究提供一套完整的实验平台解决方案,系统搭载的各模块可为物联网相关专业的教学提供丰富的实验内容。借助该平台,学生可以练习Android程序开发、ZigBee无线传感器网络开发、PCB电路板的绘制和实践等。平台虽然简单,但很实用,对于中职院校的学生而言,这些平台已完全能够达到相关课程的教学效果。
在设计和实现过程中,我们使用开源、免费的Android集成开发环境作为本系统手机APP的开发平台,并基于CC2530芯片自主设计了ZigBee无线传输模块的硬件电路和软件程序,有效减少了物联网教学系统的开发成本。
测试运行结果表明,本系统功能丰富,运行稳定,采用了当前较为热门的Android和ZigBee技术,较好地满足了中职学校物联网相关专业等对无线物联网教学平台的需求。根据我校物联网专业学生的使用反馈情况来看,该系统已完全能够满足相应的教学任务要求。通过使用本系统提供的无线物联网教学平台,相信中职学校物联网相关专业的同学可以更好地锻炼物联网系统开发技能,实践相关理论知识,更好地适应高职院校升学和就业市场的需求。
本研究主要将研究范围集中于中职学校物联网实训课程的Android无线物联网平台的设计和开发,侧重于工程技术的实现,对物联网实训课程教学大纲的设计、实验项目的提取等内容未做深入探讨。未来可以根据本文提出的物联网平台的硬件实物、软件代码和软硬件设计文档进行分割、提取和设计,分模块或项目进行设计开发,从而开发出一套完整的实训教学系统,帮助物联网相关专业师生更加方便地进行教学和实践,并在其他中职学校中推广使用。
参考文献
[1]林顺达.高校理工科课程教学方法探讨[J].中国电力教育,2012 (23):42.
[2]王志良,閆纪铮,石志国,等.物联网学科建设与教学实践探讨[J].计算机教育,2012(19):45-49.
[3]潘绍明,罗功坤,劳有兰.基于无线传感器网络的RFID系统[J].仪表技术与传感器, 2012(6):86-87.
[4]徐振峰,尹晶晶,陈小林,等.基于ZigBee协议栈的无线传感器网络的设计[J].电子设计工程,2012,20(5):75-77.
[5]徐丽萍.ZigBee技术浅析[J].南京工业职业技术学院学报,2011,11(4):28-31.
[6]马文强,章专.基于S3C6410的无线视频传输节点设计[J].传感器与微系统,2011,30(10):96-98.
[7]魏晓宁.物联网实验教学初探[J].计算机时代,2011(10):49-50.
[8]马忠梅,孙娟,李奇.物联网工程专业课程体系与实践探讨[J].单片机与嵌入式系统应用,2011,11(10):1-4.
[9]郭土华,徐晓.基于高速嵌入式系统的信号完整性分析[J].电子技术应用,2011,37(1):55-57.
[10]王群.物联网体系结构研究及模拟实验平台的组建[J].实验技术与管理,2010,27(10):178-181.
[11]宁强.Android手机的家长控制[D].南京:南京大学,2013.
[12]杨永.基于ARM硬件虚拟化和TrustZone技术的Android系统保护方案[D].南京:南京大学,2013.
[13]黄亚玲.基于Android的移动终端SMMI自检系统的研究与设计[D].淮南:安徽理工大学,2016.
[14]李娜.基于Android平台IMS客户端的开发[D].武汉:武汉邮电科学研究院,2014.
[15]葛会会.基于Android 蓝牙考勤系统的设计与实现[D].抚州:东华理工大学,2016.
[16]李昊.基于XMPP协议的Android即时通信软件的设计与实现[D].抚州:东华理工大学,2016.
[17]张茜茜.基于Android的社区信息采集与管理系统应用开发[D]. 抚州:东华理工大学,2016.
[18]刘芳.基于Android的轮胎模具仓库温湿度移动监控系统设计与实现[D].青岛:青岛科技大学,2016.
[19]祁慧.基于Android系统的QR码识别技术研究与实现[D].南京:东南大学,2015.
[20]郭志昊.基于JavaScript的Android Framework设计与实现[D].南京:东南大学, 2014.
[21] BANDYOPADHYAY D,SEN J.Internet of Things: APPlications and challenges in technology and standardization [J].Wireless personal communications,2011,58(1):49-69.
[22] DAVI L,DMITRIENKO A,SADEGHI A R,et al.Privilege escalation attacks on android [Z]. Information security,2011:121.
[23] CHENG B,BUZBEE B.A JIT compiler for Android's Dalvik VM[C].Google I/O Developer Conference,2010:234.
[24] GRACE M,ZHOU Y,WANG Z, et al.Systematic detection of capability leaks in stock androidsmartphones [C].Proceedings of the19th annual symposium on network and distributed system security,2012:91.
[25]曾健平,邵艳洁.Android系统架构及应用程序开发研究[J].微计算机信息,2011(9):1-3.
[26]宋小倩,周东升.基于Android平台的应用开发研究[J].软件导刊,2011,10(2):104-106.
[27]宋杰,党李成,郭振朝,等.Android OS手机平台的安全机制分析和应用研究[J].计算机技术与发展,2010,20(6):152-155.
[28]孙延奎.物联网平台业务支持与管理技术的研究与实现[D].南京:南京邮电大学, 2013.
[29]杜占冬.基于智能手机平台的物流管理信息系统开发[D].北京:北京邮电大学, 2013.
[30]丁一鸣.物联网业务表示与选择机制的研究与实现[D].南京:南京邮电大学,2013.
[31]陆阳,乔钢柱,谭瑛.基于Android的智能家居程序开发与研究[J].物联网技术,2014,4(3):31-32.
[32]陈莉,付蔚.基于Android的远程家电控制终端设计[J].山西电子技术,2012(5):60-62.
[33]李真,宋朝阳.物联网技术发展及应用研究[J].软件,2012,33(6):125-127.
[34]周时伟,谢维波.基于Android的智能家居终端设计与实现[J].微型机与应用,2012,31(14):10-13.
[35]韩金辉.物联网安防深度应用展望[J].中国公共安全(综合版),2012(Z1):123.
[36]肖洋,郭平,王莹.在Android平台下利用WiFi技术实现即时通信[J].中国储运, 2011(3):98-99.
[37]王亚唯.物联网发展综述[J].科技信息,2010(3):13,43.
[38]祝继华,熊炎.基于Linux平台嵌入Web服务器的设计与实现[J].老区建设, 2008(16):56-57.
[39]宁焕生,张瑜,刘芳丽,等.中国物联网信息服务系统研究[J].电子学报,2006,34(B12):2514-2517.
[40]孫冠男.基于ZigBee协议的物联网实验教学平台的设计与开发[D].济南:山东师范大学,2014.