搜档网
当前位置:搜档网 › 6LowPAN的物联网系统建立

6LowPAN的物联网系统建立

6LowPAN 的物联网系统建立

Application Note 6LowPAN无线系列产品

产品应用笔记Version:V2.14.10.08Date:2014/10/08

类别内容

关键词6LowPAN、物联网系统、IPv4、IPv6、NAT、NAPTPT

摘要

本文基于成都世纪华宁科技有限公司的6LowPAN无线系列

产品,讲述一个完整的物联网应用系统的建立过程。基于

6LowPAN的物联网系统包括,基于xPAN模块设计节点模

块、6LowPAN路由器配置、物联网服务器的开发等。

成都世纪华宁科技有限公司

修订历史

版本日期原因V2.14.10.082014/10/08创建文档

目录

1.适用范围 (1)

2.方案优势 (2)

3.系统框图 (3)

4.系统建立 (4)

4.1系统配件选择 (4)

4.26LowPAN路由器配置 (4)

4.36LowPAN节点设计 (5)

4.4物联网服务器开发 (5)

5.产品声明 (7)

1.适用范围

打算基于6LowPAN无线自组网协议开发物联网系统应用的公司或个人,主要适用于智能楼宇、智能农业、智能家居、智能工业、智能电网、无线传感网的应用等。

2.方案优势

成都世纪华宁科技有限公司以6LowPAN为基础,致力于基于TCP/IP的物联网传输技术的应用与推广服务。表 2.1给出了目前存在的比较常见的物联网技术。

蓝牙,是一种低功耗的物联网技术,目前的主要应用领域的蓝牙耳机、蓝牙鼠标、蓝牙键盘等。它组网时需要配对,支持节点个数通常在10个以内,智能农业、智能工业、智能楼宇、智能电网显然支持节点个数偏少,并且目前大部分的应用都不是基于TCP/IP的,这对于节点直接接入互联网造成一定的阻碍。

WIFI,是目前普及率最高的一种无线组网技术,大家常见的手机、平板电脑等消费类电子都集成了WIFI。它的特点是传输速度高,但是安全性低,抗干扰性也低。目前,很多公司采用WIFI设计了智能家居,这是一种简单的,目前最容易实现的一种方式。因为当前的家用路由器都集成了WIFI,用户可以不需要网关就使用基于WIFI的智能家居。但是缺点是支持的节点个数少,当发展到一定程度时,势必造成一定的阻碍。一个比较恰当的应用是WIFI做家庭视频、音频的传输,用于宽带上网;低速网络6LowPAN用于传感器、设备的控制等。

Zigbee是2001年Zigbee联盟推出一个物联网自组网协议。它是一个商业协议,使用时需要有Zigbee联盟的授权。它是自组网的结构,支持节点个数多,功耗低,在很多的无线项目中,如智能路灯、工业自动化等都得到了广泛的应用。相当长的一段时期内,人们把Zigbee当做物联网的最后一公里接入。但是当今的互联网是TCP/IP的互联网,任何其它的协议都需要转换为TCP/IP,这就造成了Zigbee网关的实现需要定制。并且只有Zigbee网关才可能有IP地址,zigbee节点是不可能有IP地址的。

6LowPAN是2006年推出的,基于IPv6的无线自组网协议标准,它是Zigbee发展到一定阶段的产物。2009年,Zigbee联盟基于6LowPAN推出最新的Zigbee IP协议标准,这是无线自组网的物联网技术发展的新阶段。美国国家电网公司将6LowPAN制定为美国国家电网标准规范。6LowPAN在欧美一些发达国家已经得到了非常广泛的应用。

6LowPAN和Zigbee是最值得比较的地方,两者和其它组网方案具有一定的差距。它们可以运行在相同的硬件平台上,都能支持较大的节点,如果做一般的无线自组网项目,那么两者基本是相同的。无非就是Zigbee网关通常的串口网关;而6LowPAN是与应用无关的以太网网关。如果做具有互联网服务器的物联网系统,那6LowPAN的优势就出来了,因为6LowPAN本身就是TCP/IP的架构,从服务器上可以看到每一个节点的IP地址,这正是物联网应用所需要的。谷歌、三星已经将6LowPAN的UDP作为标准来设计新的智能家居应用。

表 2.1无线组网方案比较

6LowPAN Zigbee WIFI蓝牙自组网是是不是需要配对

功耗低低高低

安全性高高低高接入节点数200个以上200个以上20个以下10个

TCP/IP性质IPv6无IPv4/v6IPv4/v6性质公有协议私有协议公有协议公有协议

3.系统框图

基于6LowPAN的物联网应用系统框图如图 2.1所示。系统需要一个6LowPAN路由器(即网关)、6LowPAN节点xPAN模块、互联网服务器以及配套的应用软件组成。成都世纪华宁科技有限公司有2.4G频段和780M频段两个系统的6LowPAN无线自组网产品,用户可以根据需要选择。一般情况下,一个6LowPAN路由器可以带200个节点模块,它们组成一个无线自组织的mesh网络,每一个节点具有一个唯一的IPv6地址。

如图 2.1所示,在6LowPAN节点xPAN模块上运行IPv6协议栈,6LowPAN路由器上,运行IPv4和IPv6的双协议栈,而互联网运行的是IPv4协议栈。

图 2.16LowPAN物联网应用系统框图

总所周知,当今的互联网运行的是IPv4协议,而6LowPAN是基于IPv6协议的。为了让6LowPAN节点直接访问互联网,势必需要一个协议转换。本公司的6LowPAN正是完整完成了这个功能,同时它还负责6LowPAN网络的建立和维护。只要保证6LowPAN路由器的以太网接口可以通过IPv4访问互联网,那么6LowPAN模块则都可以直接访问互联网了。当xPAN模块要访问互联网服务器的时候,经过6LowPAN路由器,它内部集成了NAPTPT 协议,内部会建立一个NAT表,将IPv6地址转换为IPv4地址去访问互联网服务器;当互联网服务器返回数据的时候,在查询这个NAT表,如果存在记录,就将数据返回给NAT表记录的节点。这个过程和IPv4的NAT是完全一样的。需要注意的是互联网服务器,不能直接访问6LowPAN节点,正像百度不能直接访问我们的电脑一样。必须6LowPAN节点发起通信,服务器记录了节点的地址,才能返回数据。

4.系统建立

本章详细讲诉基于6LowPAN的物联网系统的建立过程,正在开发6LowPAN的物联网项目的公司或个人请详细阅读本章内容。

4.1系统配件选择

要建立物联网应用系统,需要的必须配件如表 4.1所示,至少需要物联网网关和节点模块。如果还需要传感器或者其它模块,用户可以自行选购。通常,一个6LowPAN路由器下面可以接200个6LowPAN模块。如果用户要设计更大的应用,可以选择多个6LowPAN路由器,通过设置不同信道或者加密密钥的方式,将他们分在不同的网段,进而实现更多节点的应用。

表 4.1系统配件列表

类别个数作用

6LowPAN路由器16LowPAN网络的建立,6LowPAN物联网网关,负责数

据转发

6LowPAN模块若干(200个以内)6LowPAN节点,数据传输到互联网服务器

4.26LowPAN路由器配置

6LowPAN路由器是基于6LowPAN的物联网系统中的网关设备,它负责6LowPAN网络的建立、6LowPAN无线mesh网络拓扑结构的维护、6LowPAN节点数据与服务器之间的数据转发等。本公司生产的6LowPAN路由器,内部具有类似家用路由器一样的配置网页。用户配置以太网的IP地址,将其配置连接路由器的需求,保证它可以直接访问互联网即可。或者读者可以将其配置为DHCP方式获取IP地址。注意:这种方式下,用户将不知道设备的IP地址,下一次将不能通过浏览器访问。强烈建议用户将6LowPAN路由器的LAN口设置的OCP配置为of_mrh,如表 4.1所示。这是符合Zigbee IP标准的,更符合无线自组网网络的应用。默认6LowPAN网络不加密的,在保证安全的情况下,建议用户配置一个安全密钥。其它配置读者可以详细参考相关的数据手册或者直接登录路由器查看相关配置。

图 4.16LowPAN路由器建议配置

4.36LowPAN节点设计

6LowPAN节点主要完成物联网的具体功能。如果是楼宇监控,它可能外接一个烟感,也可能接一个温湿度传感器,也可能接一个灯控制器;如果是工业智能化,它可能采集PLC 的一些信息,上传到服务器。本公司的6LowPAN节点xPAN模块仅仅完成6LowPAN数据传输的功能,具体的传感器、IO控制用户可以再设计项目时,根据相关资源自行实现。xPAN 模块采用AT指令进行配置,用户可以先将模块设置为配置模式,配置好相关的参数,之后在将模块设置为应用模式。在应用模式,串口是透明传输的,串口发送的数据将直接转发给服务器。xPAN模块应用时需要注意以下几点:

●AT指令参数配置完毕后,一定通过AT+Save\r\n命令保存配置;

●为了符合物联网应用,将服务器IP地址配置为IPv4兼容的IPv6地址,如图4.2所示;

●为了系统的稳定,用户可以再底板上设计看门狗电路,xPAN模块自带喂狗信号;

●为了数据高效,通常配置xPAN模块工作在UDP基本模式;

●为了减少射频冲突,透传数据时,串口每隔固定时间加一个随机数发送一次数据。

6LowPAN是低速网络,严禁太快发送数据;

●特别需要时,本公司开放xPAN模块的OTA固件升级协议,用户可以远程维护设备。

图4.2IPv4兼容的IPv6地址格式转换

4.4物联网服务器开发

物联网服务器开发是本方案要介绍的重点部分,本小节主要介绍物联网服务器的工作流程。基于6LowPAN的物联网应用,由于xPAN模块工作在UDP模式,于是通常将服务器软件开发为一个UDP应用。这是一个典型的C/S架构的应用,类似于聊天软件qq。如果要设计客户端软件和6LowPAN节点通信,建议直接采用服务器转发的形式,不建议打洞,因为6LowPAN是低速网络,数据较慢,打洞的过程太长,不太值得去做。

由于6LowPAN路由器内部有NAPTPT协议,内部具有一张NAT表,禁止外网直接对内网的访问,故服务器不能够直接访问6LowPAN节点。6LowPAN节点必须先进行通信,为了避免NAT失效,每隔固定时间,6LowPAN节点都要给服务器发送握手信号。服务器软件的工作流程如下:

●服务器拥有固定IP地址和端口号,和xPAN模块设置的服务器地址即端口号对应;

●服务器建立UDP应用,为了提高工作效率,通常让UDP工作在非阻塞模式;

●服务器UDP等待接收节点数据;

●用户自定义协议,让每个节点拥有一个ID,xPAN模块发送数据的时候,数据部分应包

含这个ID;

●服务器收到节点数据,根据节点ID和节点IP地址及端口号建立一张表,建议建立hash

表,如果是大型物联网应用,可以直接建立存储在数据库中;

●服务器再次收到数据,查询ID对应的表记录是否存在。如果不存在,则建立记录;如

果存在,则更新记录,更新最新的节点IP地址和端口号;

●服务器要给节点发数据,根据ID查询表,找到对应的IP地址和端口号,发送出去

●如果用户要设计智能家居应用,还可以设计手机app应用,手机控制节点的时候,首先

手机将数据发给服务器,然后在通过服务器转发给节点。

●智能家居控制中,如果是局域网应用,手机可以通过wifi方式联网,只要和6lowpan

路由器的WAN口在一个网段即可;如果是互联网服务器应用,手机可以通过wifi或者3G等移动互联网的方式联网,只要保证手机可以上网,可以访问互联网服务器就可以控制。

5.产品声明

本应用笔记描述的的成都世纪华宁科技有限公司的产品或方案,用于指导用户基于本公司的产品进行物联网项目或者系统的开发。

成都世纪华宁科技有限公司保留任何时候在没有事先声明的情况下对本手册的修改。

在使用本产品过程中,遇到任何问题,请及时反馈给我们,我们会及时修正。

感谢您使用成都世纪华宁的6LowPAN无线系列产品。

相关主题