APP下载

基于Cortex-A9平台的ZigBee物联网综合实验平台设计

2017-11-04李凤岐刘文杰覃振权

实验室研究与探索 2017年9期
关键词:网关串口联网

李凤岐, 朱 明, 刘文杰, 覃振权

(大连理工大学 软件学院,辽宁 大连 116021)

·计算机技术应用·

基于Cortex-A9平台的ZigBee物联网综合实验平台设计

李凤岐, 朱 明, 刘文杰, 覃振权

(大连理工大学 软件学院,辽宁 大连 116021)

基于ARM嵌入式平台,设计无线网络通信实验课程,能够把分散的嵌入式系统知识点,整合在统一平台中,达到创新物联网实验教学体系的目的。实验通过Cortex-A9内核平台与ZigBee无线网络平台配套研发,让学生在实际操作和编程过程中,深刻理解物联网通讯的工作原理。实验分析了Cortex-A9内核在物联网实验中的工作特点,选用Tiny4412核心板,配套CC2530传感器节点,搭建物联网综合实验平台。同时,针对高校学生的基本情况,设计了理论完善、操作性强的实验流程,实现Android APP应用、Linux QT应用、QT应用的演示方式,贯穿物联网3个结构层次所涉及的知识要点和实践重点。

物联网实验; Cortex-A9; ZigBee无线网络; 实践教学

0 引 言

“物联网”被誉为信息通信下一个万亿级的超级产业[1]。同时,作为一门交叉学科,物联网专业的实践教学平台建设应与理论课程紧密配套。目前,国内大专院校开设物联网专业的学校刚刚开始应用基于ARM Cortex-A9多核微处理器为核心部件的物联网实验平台。国内生产该平台教学仪器厂家只能提供一些配合平台销售的使用说明书和简单应用案例,缺少物联网课程群所需要的科学性、先进性、工程性和综合性的应用实例。

从物联网工程专业的实验教学需求出发,应在物联网综合教学实验平台上完成“物联网感知和识别、网络传输和管理服务与综合应用”3个结构层次[2]。该平台应适用于物联网课程群中“无线传感器网络”“物联网与传感器技术”“射频识别(RFID)技术”“物联网控制技术”和“物联网课程设计”等专业课程的实践教学。学生们通过具体应用和操作,掌握贯穿物联网3个结构层次所涉及的知识和技能,提高自身在物联网工程应用方面的实践能力。

针对高校物联网实验需求,设计了基于Cortex-A9内核的ZigBee实验平台[3]。该实践平台硬件部分包括有国内最先进的嵌入式多核处理器(ARM Contex-A9)为核心的网关及显示与控制平台和基于SOC(片上系统)CC2530为核心的多种无线传感器节点两部分。

在该平台的具体设计阶段,将整个系统模块化,分别实现每个功能模块,然后通过对模块进行用例测试来确保每个模块都能正常工作。网关平台可以分别基于Linux和Android 两种操作系统来实现应用环境,完成系统的整合,同时可以基于Z-Stack协议栈完成CC2530基于ZigBee下的组网,实现了核心板的Android应用开发和Linux下的服务器和网站的搭建,以及相应的应用编程实例[4]。总之,该平台在实现内容上基本满足了物联网专业课群多层次实践教学的需要。

1 物联网实验教学的构成

物联网专业是为了适应目前国家现代化建设的需要而新设立的专业,根据教育部计算机科学与技术专业教学指导分委员会编制的《物联网工程专业规范》,按照物联网组成架构的三层结构规划:①感知、识别与控制层;②网络传输层;③综合管理服务应用层[5]。本实践平台实现了针对于各层次的实践应用实例,如图1所示。

图1 物联网综合实验平台架构

在感知、识别与控制层中,其关键技术是传感器技术、无线传感器节点硬件和核心协议栈软件设计、RFID技术的应用和低功耗设计技术等[6]。所以针对这一层次的实践教学需要,设计完成无线单节点的感知、识别与控制模块的开发与应用实例和完成无线传感节点间通信、组网应用与实例。

在网络层中,其主要关键技术为多种网络网关设计、无线通信技术和掌握主流无线网络标准[7]。所以针对于网络层教学的需要,设计完成了基于Linux环境下物联网网关平台的构建与应用,完成基于Android环境下物联网网关平台的构建与应用。

在综合服务与应用层中,掌握应用技术是关键,要求学生能够独立设计不同需求的物联网应用系统[8]。针对于该层次的实践教学需要开发了基于物联网智能家居和环境监测2个综合应用实例。具体包括系统总体方案设计、硬件系统(网关、无线传感节点、中心节点等硬件)和软件系统(网关与控制中心开发平台、操作系统、Web服务器、数据库、触摸屏等相关软件、中心节点和终端节点的检测与控制)。

2 基于ARM平台的ZigBee技术

物联网一个重要特征就是能够长期稳定运行并且能够快速大规模部署[9]。这样的特征决定了物联网产品必须具备可靠、安全、无线、无缝、绿色的能力。构成物联网的最基础最广泛最核心的单元细胞就是传感器以及相关的控制单元。使用ZigBee技术能够使大量的传感器传动单元之间相互协调实现通信,大幅减少传感器单元能量消耗,大幅提高传感器节点将数据通过无线电波在不同网络节点间传送的通信效率[10]。ZigBee技术低功耗、抗干扰能力强、易于组网和维护、容易扩大范围,高可靠性、便于快速大规模部署等特点符合新兴物联网发展的趋势和要求。因此,ZigBee技术必将在物联网领域获得更广泛的应用[11]。

无线传感器节点CC2530是TI公司基于ZigBee通信协议开发的主流通信模块,外部配有各类传感器、电源和相关软件组成。通过终端感知节点、终端控制节点、路由节点和汇聚节点,构成了基于ZigBee通信协议的无线传感网络[12]。该节点集成有支持2.4 GHz IEEE802.15.4协议的RF收发器。其传送速率最大达250 Kb/s、传输通道16个,可选频段传输距离在0~100 m。CC2530的Flash容量有32、64、128、256 KB 4种类型,并具有8 KB RAM和10位的ADC和许多其他的功能[13]。

对无线节点的控制平台一般都会采用嵌入式网关,基于ARM Cortex-A9多核处理器的Tiny4412核心板作为系统平台主控部件,网关平台的接口部分外配有摄像头、条形码阅读器、RFID读写器和指纹识别器等外设。核心板Tiny4412由高性能的四核Exynos4412微处理器组成。其内部集成了Mali-400 MP高性能图形引擎,支持3D图形流畅运行,并可播放1080P大尺寸高清视频[14]。同时,核心板上配置有1GB DDR3内存和4GB高速eMMC闪存,LCD可支持从90~307 mm高清屏。另外,还具有1个10/100 MB自适应以太网RJ45接口(采用DM9621),2个DB9式RS232串口(另有4个TTL电平串口),1个micro USB Slave 2.0接口,1路3.5 mm立体声音频输出接口,1路在板麦克风输入,1路USB Host 2.0接口,1个标准SD卡座,5 V直流电压输入接口和1个I2C-E2PROM芯片(256 byte,主要用于测试I2C总线)[15]。支持Linux Kernel 3.5和Android 4.2.1版本操作系统。

3 物联网综合实验平台设计研发

3.1实践平台软件

实践平台软件是由分布监控端和总控处理端两个部分组成,采用物联网网络技术常用的星型网络拓扑结构进行组网连接。基于CC2530处理器的分布传感器模块中烧写了基于Z-Stack协议栈的ZigBee无线组网应用,通过内嵌的无线收发器进行星型网络连接,汇聚节点负责处理其他分布节点的数据。

(1) 分布监控端。通过各分布节点上的温湿度、光照、声音传感器、可燃气体和烟雾、超声波测距、陀螺仪加速度、GPS定位等等传感器模块,获取各个节点的信息数据。并且各个无线传感器节点通过ZigBee网络传输协议将各个传感器模块采集到的信息数据包发送到汇聚节点上。

(2) 总控处理端。汇聚节点只需完成数据包转发工作。汇聚节点接收来自分布传感器节点的数据信息,然后通过串口将该信息转发给嵌入式网关平台。

3.2嵌入式网关平台

在嵌入式网关平台上移植了Linux或Android操作系统以及图形界面库,并编写了相应的应用程序。在程序编写中嵌入模式查询匹配算法,根据发送的特定数据格式判别发送数据的传感器类型,然后截取无线传感器节点数值并在相应的UI部分更新显示。

(1) ZigBee网络数据传输。采用单播、广播2种方式。网络组建可采用星型网络,树形网络,图形网络3种方式。其中广播方式容易造成网络带宽以及信道的大幅占用,从而增加大组网的能量消耗。所以该网络传输采用点对点传输,既保证了数据的正确性,也节约了能量消耗。

(2) 组网形状。树形网络虽然是目前主流的组网方式。但是由于树形组网存在关键节点,网络健壮性和鲁棒性不佳。而图形组网过于复杂,对于单一汇聚节点反而影响传输效率。所以,本系统架构设计采用星型网络形式。这样有利于提高系统的高效性,降低能耗。

(3) 传感器发送。中央汇聚节点接收到各类传感器发送的数据,然后通过一定的数据格式通过串口发送Tiny4412核心板。其数据格式是以$开始以#结束,$和#之间就是一条完整的数据。核心板接收到串口的数据后,按照数据格式进行合理的解析,解析提取出无线传感器节点的数值部分更新显示。数据在整个系统中的流程图如图2所示。

图2 传感器数据流图

(4) 数据显示。当物联网网关收到协调主节点传来的数据后需要通过软件形式显示在LCD屏上,本平台实现了两种方式用来显示采集到的数据,分别是Android App应用和Linux下服务器-网站方式。两种方式都是基于相同的Linux内核,但其工作的文件系统不同。采用了Tiny4412自带提供的内核系统,以及提供的Android和Linux文件系统。

Android App通过串口接收传感器网络协调主节点发送的数据信息,然后进行解析接收到的数据,判断数据来自哪类传感器,接着提取相应的传感器数值部分并更新应用界面。

Linux文件系统中集成了boa嵌入式Web服务器,在编译内核前进行相应的服务器参数配置,并在开机启动项添加服务器http服务,然后直接和内核一起编译,烧写到Tiny4412核心板上。通过配置好系统中的IP地址,同时在核心板上搭好相应的网站,就可以通过局域网中的PC机来访问核心板。网站后台主要通过CGI程序来获取从串口传输过来的主节点数据,按照相应的格式处理数据,更新网页上的信息。

4 物联网综合实验过程

物联网综合教学实验平台提供了基于Android APP应用、Linux QT应用、QT应用的演示方式。

4.1采用基于AndroidAPP应用的方式

通过在网关平台上烧写Linux内核和Android文件系统完成基础环境的搭建,然后开发出相应的APP应用。由于该方式只是在综合教学实验平台上显示,故只需实时更新传感器的数据即可,不需要使用数据库技术。通过在Android应用中实时监测串口并读取数据完成数据的采集,采用内部匹配算法来完成数据的解析,最后实时更新到网关平台显示主界面上。

4.2采用LinuxQT应用的方式

其工作原理同Android APP相似,只不过网关平台软件烧写的是Linux文件系统。在Ubuntu下完成QT应用的交叉编译,通过更改配置文件来修改网关平台上Linux下默认启动程序。然后也是通过实时监测串口并读取数据完成数据的采集,采用内部匹配算法来完成数据的解析,并实时更新到网关平台显示主界面上。

4.3QT应用界面在网关平台上的显示

主要的实现过程是在QT应用中完成数据的存储,传感器数据采用统一的格式(包括数据的名称、数值等)存储在本地文件中。然后在网关平台上搭建好服务器以及相应的网站,通过后台程序来读取相关的数据并返回给客户端,这样客户端就可以访问传感器信息。采用网站方式显示的部分传感器信息界面。

通过以上3种方式,开发人员可以更大程度地学习相关的知识,包括Linux环境应用开发或者Android环境应用开发和服务器配置及网站开发,进一步完善物联网相关的知识体系的学习。

5 结 语

由于物联网工程作为一门交叉学科,物联网技术所涉及的概念、原理、技术众多。同时物联网工程需要本专业的实践教学平台建设应与理论课程紧密配套,这样才能更好地提高学生的创新实践能力。

物联网作为新兴的产业和专业,其技术涉及多个学科,因此通过实践教学将这些跨学科知识进行融合和贯通尤为重要。本实践教学平台可应用于物联网课程群的“无线传感器网络”“物联网感知、识别与控制技术”“物联网课程设计”等实践教学中,希望通过提供优质的实践平台和丰富的实践资源,进行多层次、一体化的实践教学。这样,能够使学生们掌握贯穿物联网课程教学中所学到的知识,提高他们在物联网应用方面的实践能力和创新意识,为培养高素质应用型人才、复合型人才和拔尖创新人才奠定坚实基础。

[1] 余 琍,赵 健,黄传河,等.物联网工程专业建设与实践教学研究[J].计算机教育,2013(15):94-97.

[2] 刘文杰,江 贺.基于VMware的桌面虚拟化实验设计[J].实验技术与管理,2015,32(1):127-128.

[3] Miller K, Pegah M. Virtually at the desktop[C]//35th Annual ACM SIGUCCS Conference on User Services. Orlando, Florida, USA, 2007:255-260.

[4] 刘文杰,王善坤.网络仿真技术在校园网网络实验中的应用[J].实验技术与管理,2016,33(1):132-134.

[2] 钱红燕,陈 兵,燕雪峰.物联网教学实践体系研究[J]. 计算机教育, 2011(23):21-24.

[5] 吴 选. 基于Android的智能家居系统家庭网关的设计与实现[D]. 成都:电子科技大学, 2013(5):103-106.

[6] 章伟聪, 俞新武, 李忠成. 基于CC2530及ZigBee协议栈设计无线网络传感器节点[J].计算机系统应用,2011,20(7):50-54.

[7] 刘文杰,惠 煌.基于802.1X的混合认证体系无线网络实验研究[J].实验技术与管理,2012,29(10):89-92.

[8] Liu Wenjie, Feng Bin , Wang Yongjian. A dynamic trust value based on the recommended solution[C]//2012 IEEE 2nd International Conferences on Cloud Computing and Intelligence Systems.Hangzhou, China, 2012:540-552.

[9] 贺志龙, 庞 字, 宋得龙.基于Android平台的ZigBee协调器的设计与实现[J]. 广东通信技术,2013(1):30-32.

[10] 吴 良,邹志宏,吴文华.智能实验室管理系统的开发与实践[J].实验室研究与探索,2012,31(5):169-172.

[11] 刘文杰,丁 宁,杨 涛.基于Xen的桌面虚拟化实验设计[J].实验技术与管理,2013,30(10):93-95.

[12] 刘文杰,李凤岐,薛 强.混合模式存储系统在网络实验中的应用[J].实验技术与管理,2011,28(7):106-108.

[13] Creasy R. The origin of the VM/370 time-sharing system[J].IBM Journal of Research and Development, 2010(25):483-490.

[14] Steinder M, Whalley I, Carrera D,etal. Server virtualization in autonomic management of heterogeneous workloads[J].Integrated Network Management, 2007:139-148.

[15] Baratto R, Potter S, Su G,etal. MobiDesk: Mobile virtual desktop computing[C]//Tenth Annual ACM International Conference on Mobile Computing and Networking (MobiCom). 2004: 1-15.

DesignofIoTComprehensiveExperimentPlatformBasedonCortex-A9andZigBee

LIFengqi,ZHUMing,LIUWenjie,QINZhenquan

(School of Software Technology, Dalian University of Technology, Dalian 116021, Liaoning, China)

Comprehensive experiments have been applied in the experimental platform. Applications of the Internet of Things has become an important means of the Internet teaching. Based on ARM embedded platform, the design of wireless network communication experiment course can integrate the dispersed knowledge of embedded system into a unified platform. The system has achieved the goal of innovative IoT experiment teaching. The experimental platform applies Cortex-A9 as kernel architecture and ZigBee as wireless network communication, students can process programming and actual operation, and can have a good understanding of the working principle of the Internet communication. After analyzing the architecture and working characteristics of Cortex-A9, we chose Tiny4412 core board and CC2530 sensor nodes, IoT comprehensive experiment platform was then set up. The Experimental platform also realized the demonstration of Android APP, Linux QT application, QT application. It can illustrate key points of three hierarchical knowledge levels involved in IoT.

internet of things(IoT) experiment; Cortex-A9; ZigBee wireless network; practice teaching

TP 391.0

A

1006-7167(2017)09-0107-04

2016-11-22

国家自然科学基金青年科学基金项目(61202442)

李凤岐(1975-),男,河北承德人,博士,高级工程师,副院长,主要研究方向为网络安全和物联网工程。Tel.:13390500898; E-mail: liuwj@dlut.edu.cn

猜你喜欢

网关串口联网
“身联网”等五则
《物联网技术》简介
浅谈AB PLC串口跟RFID传感器的通讯应用
抢占物联网
数字电源内部数据传输的串口通信方法实现
USB接口的多串口数据并行接收方法探索
基于蓝牙串口适配器的GPS接收机与AutoCAD的实时无线通信
LTE Small Cell网关及虚拟网关技术研究
应对气候变化需要打通“网关”
得MCU者得物联网天下