基于龙芯1B的物联网网关设计与实现
2018-01-25陆锐周圣雅王姗
陆锐,周圣雅,王姗
(成都理工大学信息科学与技术学院,四川成都,610059)
0 引言
随着“智慧地球”的潮流,物联网网关在实现信息交流上的作用越来越突出。目前市场上广泛应用的物联网网关多是基于嵌入式的,但物联网网关嵌入式处理器基本都不是本国的处理器。本文设计了一种基于国产自主芯片龙芯1B的物联网网关,从芯片级做到了信息安全自主可控,对国民经济发展以及国家安全保障有着重大的现实意义和深远的战略意义。
1 系统功能描述
物联网的基本体系架构可分为感知层、网络层(传输层)和应用层[1]。网关主要体现在汇聚层,实现把ZigBee节点采集到的数据进行汇聚存储、数据格式转换,再按照TCP/IP协议标准对数据重新进行封装并通过以太网发送出去[2]。系统的硬件平台主要由龙芯1B控制器、ZigBee模块、RS232串口通信以及其他外围电路等几部分组成。
软件的设计基于嵌入式Linux操作系统和Z-Stack协议栈,它们都提供了串口驱动,调用相应的串口API即可实现对串口的读写等操作,方便开发[2]。
2 龙芯最小系统实现
龙芯1B支持处理器从 SPI Flash 启动,上电后自动执行存储在SPI ROM 中的PMON,PMON程序会初始化串口、网口等外围设备,引导Linux内核启动。
3 各模块的设计与实现
3.1 ZigBee内部模块通信实现
ZigBee网络内部有终端节点、路由器、协调器三种节点[2],ZigBee支持星型、树型和网状型3种拓扑结构[3]。本文以协调器为中心,组建星型网络。协调器负责ZigBee无线传感网络的组建。
3.2 网关主控模块与ZigBee模块通信实现
网关主控模块和ZigBee模块通过串口连接,获取ZigBee采集到的数据。串口通信满足嵌入式系统低功耗、高带宽利用率的基本硬件要求[2]。
3.3 网关主控模块与因特网通信实现
网关与因特网通信模块的实现,一方面,网关通过RJ45与因特网连接,另一方面,通过串口线与PC机连接。本设计中采用了基于TCP协议的流式socket。采用C/S模型达到IP网络与物联网网关客户端的命令和数据交互。Client先将用户的需求提交给Server,再将Server返回的结果以特定形式提供给用户。
4 测试结果
图1 网关功能测试图
网关主控模块负责接收ZigBee模块通过串口传送的数据,解析并发送到IP网络客户端,最终通过网页显示。此处以温湿度为例,网关IP地址配置为192.168.1.110, 客户端IP地址为192.168.1.120。IP网络客户端解析接收到的数据解析后得到的结果如图 1所示。
其中,横轴为测量时间,纵轴为传感器采集到的数据。
以上结果表明,本设计方案的网关能够将ZigBee节点采集的数据正确地上传至IP网络PC客户端并通过网页显示,实现ZigBee网络与IP网络的互联互通。
5 结语
本系统利用龙芯1B控制器,提出了一种基于嵌入式Linux系统和Z-Stack协议栈的ZigBee网关设计,将ZigBee收集到的相关信息通过网关上传到IP 网络、PC客户端。实现了用户的远程浏览访问,同时实现了ZigBee网络的管理、协议转换、数据收发等功能,达到了两种异构网络之间通信的目的,验证了网关基本功能的有效性。
[1]关辉.物联网RFID系统的安全问题及策略[J].福建电脑,2013,29(08):72-73+104.
[2]张艺粟,李鸿彬,贾军营,于波.物联网ZigBee网关的设计与实现[J].计算机系统应用,2013,22(06):34-38.
[3]周岭松,余春暄.基于ZigBee技术的温、湿度控制系统[J].电子测量技术,2011,34(06):47-50.