您现在的位置: 通信界 >> 无线通信 >> 技术正文  
 
智能家居无线网络通讯协议设计方案[图]
[ 通信界 / 佚名 / www.cntxj.net / 2012/8/18 22:16:14 ]
 

"智能家居"(smart home)又称智能住宅,它利用先进的计算机技术、嵌入式系统技术、网络通讯技术与传感器技术等,把家中的各种设备有机的结合起来,优化用户生活方式,方便用户管理设备,并能通过场景设定使多个设备间形成联动。

家庭网络的分层结构中,整个系统分成5 层:

物理媒体层(Media),底层协议层(Protocol)、应用程序接口层(API)、应用程序层(APP)和最终用户接口层(UI)。其中第一、二层标准已经颁布并在实际中应用;第三层(API)是家庭网络技术发展的关键,是当前业界研究的热点;第四层是应用程序层,是在第三层的基础上由技术人员开发的各种应用程序;第五层是各种用户接口(UI)工具,包括各种遥控装置、应急开关、求助按钮以及其它可视接口设备,对整个系统性能的发挥和使用至关重要。本文主要针对第三、四层结构,设计符合智能家居系统平台的数据通讯协议。

1 系统总体方案

1.1 总体设计方案

图1 中ARM 主控制器作为智能家居远程Web 服务器,通过以太网芯片ENC28J60 接收远程控制数据包,完成数据解析后通过射频模块发送控制命令,延时并接收节点应答数据,将应答数据以json 数据格式(一种数据保存格式)通过网关发送局部更新Web信息,达到监测控制家居环境的效果。

图1 智能家居远程监控方案

1.2 控制单元

控制单元采用ARM 微控制器STM32F103RBT6,Cortex-M3 内核,64 引脚LQFP 封装。具有128K 字节的程序存储空间,20K 字节的RAM,最高工作时钟72MHz,具有丰富的片上资源,有7 通道DMA 控制器,能够支持SPI,USART 等外设。适合低成本,低功耗的嵌入式系统的开发与设计。

图2 中,该芯片通过SPI 串口共连3 外设:SD 卡接口、以太网芯片ENC28J60 以及射频模块芯片nRF24l01.ARM 微控制器的PA4-PA7 口分别作为SD卡的片选信号,时钟信号引脚,MISO 和MOSI 口;PB12-PB15 分别作为以太网芯片ENC28J60 的片选信号,时钟信号引脚,MISO 和MOSI 口;PC6 为射频模块RX/TX 模式使能端,PC7 为SPI 使能引脚,PC10-PC12 分别作为射频模块nRF24L01 的MOSI,MISO 和时钟信号引脚,结合MCS-51 单片机的微控制应用能力,设计了一种简单、实用的嵌入式智能家庭网关及终端控制方案。

图2 系统控制单元设计。

1.3 射频通讯单元

接收部分采用无线射频模块nRF24l01,该模块在2.4GHz 全球开放ISM 频段使用;最高工作速率2Mbps,高效GFSK 调制,抗干扰能力强;共有126个频道,满足多点通信和跳频通信的需要;内置硬件CRC 校错和点对多点通信地址控制[9].其中至少两个模块组成了通信系统,图3 中,一个作为主控制器数据发送端;其它作为节点设备数据接收端。接收端完成命令数据接收,依据命令内容联动对应设备;完成命令后节点射频模块进入发送状态,返回当前节点设备状态。

图3 无线通信系统。

2 软件设计

2.1 射频工作模式选择

nRF24l01 射频模块的收发模式有三种:EnhancedShockBurst TM 收发模式、ShockBurst TM 收发模式和直接收发模式三种。Enhanced ShockBurst TM 收发模式由器件EN_AA 寄存器配置内容决定。

在Enhanced ShockBurst TM 收发模式下,使用片内先入先出堆栈区,数据从微控制器低速送入,高速发射,速率为1Mbps,通过这种节能方式即使使用低速的微控制器也能得到很高的射频发射速率。并且与射频协议相关的所有高速信号处理都在片内进行,这样有三大优点:节能;系统费用低;数据空中停留时间短,抗干扰性高。同时也减小了整个系统的平均工作电流。

2.2 数据发送接收流程

2.2.1 主控制器射流程

本文设计的无线通信系统是在同一信道下,初始状态下只有一个发射节点,多个接收节点,主控制器射频流程如图4.

(1) 等待网络数据包的到来,nRF24l01 射频模块启动发送模式,在配置信道上通过广播方式发送,延时50ms,保证每个从控制器都能接收数据包。

(2) 数据发送完成后射频模块立即配置为接收模式,接收从控制器设备的状态数据帧,并定时2 秒,超时或成功接收从控制器设备应答数据则重新自动配置成发送模式并返回第1 步,防止射频模块全部进入接收模式出现互锁"假死"状态。

(3) 如果成功接收从控制器设备应答数据,射频模块进入等待状态。

2.2.2 从控制器射频流程

所有接收节点接收该数据包,并对该数据包的驱动接口数据进行解析校对,比如接收地址匹配,命令码,操作文件?有匹配节点则进入驱动应用程序并执行操作。该射频模块多数情况下处于接收模式,具体流程如图4:

图4 主控射频流程

(1) 从控制器节点nRF24l01 射频模块配置成接收模式,直到接收数据包。

(2) 对数据包的驱动接口部分进行解析,接收地址是否匹配,如不匹配则返回步骤(1),再判断命令操作码及文件标志,如出现非法操作码或文件标志,则返回步骤(1),有对应驱动接口则进入驱动应用程序。

(3) 根据输入的应用数据(记录控制数据和记录数据),操作设备将设备状态写入发送数据帧。完成后,射频模块配置进入发送模式,将发送数据帧返回主控制器,并延时1 秒。

(4) 判断是还发送成功,失败则重新进入步骤(1),成功则结束,同样进入初始化状态。

图5 从机节点射频流程图。

3 无线通讯协议

智能家终端设备品种繁多,且功能不一,不同设备要进行统一控制,必须对各种设备进行抽象处理,提取它们的共同特征。可以把终端设备抽象成文件,在控制端分配一块内存描述该设备当前状态,利用设备控制方法读取或修改当前状态,控制方法可分为三类:文件读取(Read),文件修改(Write),文件控制(Control)。

Read:读设备文件操作,即对节点设备状态扫描查询,程序设计API 如下:

void drv_lit_read(rxp_cmdreq req)以上为读设备API 入口,参数req 为结构体指针,写、控制设备操作类似。

Write:写设备文件操作,即对节点设备状态修改,程序设计API 如下:

void drv_lit_write(rxp_cmdreq req)Control:控制设备文件操作,即对节点设备状态的调节。程序设计API 如下:

void drv_lit_cnt(rxp_cmdreq req)并不是所有的文件都支持这三种控制方法,多数文件只支持前两种控制方法,下文以灯控设备为例。

3.1 通讯协议

无线射频模块nRF24l01 对应收发模式的数据有效负载最大为32 个字节,该数据包作为一帧数据,其中可分成三类数据:驱动接口数据,记录控制数据以及记录数据,输入帧与输出帧数据类型相同。数据格式如表1.

表1 帧数据格式

  (1)驱动接口数据。

Dest:接收端地址,1 字节表示,属性值从0-255,可以表示256 个节点地址,满足多数智能家居的节点资源。

Src:发送端地址,1 字节表示,与Dest 意义相同。

Cmdid:节点命令码,1 字节表示,如上文表示,共有三种类型:0x01,表示读命令(read);0x02,表示写命令(write);0x03,表示控制命令(control)。

节点即对应从控制器编号。

Fileid:文件标志符,1 字节表示,即节点地址上对应的设备号,最大支持0x00-0xFF 256 个文件。

(2)记录控制数据。

Result:操作结果码,1 字节表示,当有数据返回时,要求填写该字节。0x00,操作成功;0x10,非法节点;0x11,非法文件标识符;0x12,非法初始记录值;0x13,非法记录。0xFF,默认无效值。

Start:记录开始值,1 字节表示,当有多条记录操作时,该值即对应的记录序。

Len:记录长度,1 字节表示,当作为输入数据时,表示记录操作的长度,如果Len 值大于当前节点的最大记录长度,则取当前节点记录长度最大值;当作为输出数据时,表示当前节点操作的记录长度。

(3)记录数据Records:记录数据缓冲,缓冲区达25 个字节。

该缓冲区可存放多条记录,记录格式如表2,每条记录字节长度不一,一般在3-5 个字节左右,最多能存放8 条记录。

表2 记录数据格式

该Len 值与记录控制数据中的Len 值意义不同,表示该条记录的字节长度,其中并不包含本身字节长度,1 个字节长度;Opt 值为保留字节,一般无意义,控制命令与该字节相关,1 个字节度;Content 为设备文件的记录值,记录字节长度不定,一般1-2 字节长。

3.2 协议扩展与特点

地址资源,单字节的Dest 与Src 地址分配对于普通的智能家居用户完全能满足要求,对于家居环境复杂,地址分配点较多的用户,可能会出现资源不够的情况,该情况可将Dest 与Src 地址扩展至16 位,即2字节。满足65535 个节点要求。

节点命令码,三种命令类型只占用Cmdid 的二位,其余的高六位值保留,以备协议扩展所需。同理。

记录选项,Opt 为保留字节,默认值为0x00,该字节主要针对控制操作,用于记录控制操作符,如表2 说明,主要针对灯控文件的变亮,变暗操作。

该通讯协议的设计主要有以下特点:

(1)统一外设,将外部设备抽象成标准文件,并在控制器内存记录文件内容,操作指定设备只需访问该设备映射文件所处内存空间数据即可,规范外设标准,提高通讯效率。

(2)通讯协议的制定极大的优化了主控制器与射频模块之间的数据传输性能,主控制器只需根据固定的通讯协议格式填充即可,简化其处理过程。

(3)同样简化了从控制节点的数据处理过程。

4 通讯协议实现结果

按照系统功能需求的划分,可分为智能温度的控制,智能安防的控制,智能家电的控制,智能照明的控制等。

智能温度控制:系统实时采集室内的温度,并能以图形方式展示给用户,用户可以根据需要自行控制室内温度。

智能安防控制:系统集成防盗、防劫等功能,能够通过网页远程监控家居状况,并能查询控制警报器的状态。

智能照明控制:用户可以根据需要控制家庭的灯光效果,具有调光功能,不仅能够满足用户的需求,还能达到节能和环保的功能,其记录数据说明见表3.

表3 灯控记录数据

记录数据的首字节Len 表示当前记录字节长度,照明的三种控制方法具体说明如下:

Read:读当前灯的亮度。

输入:无。

输出:Opt 保留字节0x00.Value 表示当前灯的亮度值(0x00-0x09),值越大,亮度越高,下同。

Write:设置灯的亮度值。

输入:Opt 保留字节0x00.Value 为要设置的亮度值。

输出:Opt 保留字节0x00.Value 表示当前灯的亮度值(0x00-0x09)。

Cnt:调节灯的亮度。

输入:Opt 的最低位为1,表示减少亮度;Opt 的最低位为0,表示增加亮度。Value 省略无意义。

输出:Opt 为保留字节0x00.Value 表示当前灯的亮度值(0x00-0x09)。

灯控设备支持多条记录同时读取与返回,设备的读操作无记录输入,有记录输出;写操作与控制操作有记录输入,同时有记录输出。假设当前操作节点为0x00,主控节点为0xFF,Value 值为0x03.

以灯控控制命令为例:

控制命令(0x03):假设当前亮度值为0x03,将灯亮度值加1,则输入数据帧如表4,输出数据帧如表5.

表4 输入数据帧

表5 输出数据帧

输入数据帧与输出数据帧进行相互转换时,发送主体不同,因此发送地址与接收地址对调。由于是控制命令,Cmdid 设置为0x03,如果是读命令或写命令,则该字节设置为0x01 或0x02.由上已知当前操作节点为0x00,即Fileid 的设置值。Result 表示数据返回结果码,0x00 表示操作成功。在输入数据帧中无意义。

本例中,只有1 个记录值,因此在数据输入、输出帧记录地址Start 从0x00 开始,数据帧长度Len 为0x01.

读命令、写命令数据帧类似,参照控制命令格式。

5 结论

本系统中,以嵌入式Web 服务器为架构,实现了对智能家居终端设备的远程监测与控制,并以nRF24L01射频模块32 字节的数据帧为基础,最终完成了针对较低成本智能家居的通讯协议设计。在实际操作过程中,也能够通过网页Web 的调节控制,最终能够达到对终端文件设备的控制,实现对灯控设备的开关,调亮,调暗等功能。能在发出命令后1 秒内返回准确数据信息,保证该系统的实时控制,具有较高应用价值。

 

作者:佚名 合作媒体:不详 编辑:顾北

 

 

 
 热点技术
普通技术 “5G”,真的来了!牛在哪里?
普通技术 5G,是伪命题吗?
普通技术 云视频会议关键技术浅析
普通技术 运营商语音能力开放集中管理方案分析
普通技术 5G网络商用需要“无忧”心
普通技术 面向5G应运而生的边缘计算
普通技术 简析5G时代四大关键趋势
普通技术 国家网信办就《数据安全管理办法》公开征求意见
普通技术 《车联网(智能网联汽车)直连通信使用5905-5925MHz频段管理规定(
普通技术 中兴通讯混合云解决方案,满足5G多元业务需求
普通技术 大规模MIMO将带来更多无线信道,但也使无线信道易受攻击
普通技术 蜂窝车联网的标准及关键技术及网络架构的研究
普通技术 4G与5G融合组网及互操作技术研究
普通技术 5G中CU-DU架构、设备实现及应用探讨
普通技术 无源光网络承载5G前传信号可行性的研究概述
普通技术 面向5G中传和回传网络承载解决方案
普通技术 数据中心布线系统可靠性探讨
普通技术 家庭互联网终端价值研究
普通技术 鎏信科技CEO刘舟:从连接层构建IoT云生态,聚焦CMP是关键
普通技术 SCEF引入需求分析及部署应用
  版权与免责声明: ① 凡本网注明“合作媒体:通信界”的所有作品,版权均属于通信界,未经本网授权不得转载、摘编或利用其它方式使用。已经本网授权使用作品的,应在授权范围内使用,并注明“来源:通信界”。违反上述声明者,本网将追究其相关法律责任。 ② 凡本网注明“合作媒体:XXX(非通信界)”的作品,均转载自其它媒体,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。 ③ 如因作品内容、版权和其它问题需要同本网联系的,请在一月内进行。
通信视界
华为余承东:Mate30总体销量将会超过两千万部
赵随意:媒体融合需积极求变
普通对话 苗圩:建设新一代信息基础设施 加快制造业数字
普通对话 华为余承东:Mate30总体销量将会超过两千万部
普通对话 赵随意:媒体融合需积极求变
普通对话 韦乐平:5G给光纤、光模块、WDM光器件带来新机
普通对话 安筱鹏:工业互联网——通向知识分工2.0之路
普通对话 库克:苹果不是垄断者
普通对话 华为何刚:挑战越大,成就越大
普通对话 华为董事长梁华:尽管遇到外部压力,5G在商业
普通对话 网易董事局主席丁磊:中国正在引领全球消费趋
普通对话 李彦宏:无人乘用车时代即将到来 智能交通前景
普通对话 中国联通研究院院长张云勇:双轮驱动下,工业
普通对话 “段子手”杨元庆:人工智能金句频出,他能否
普通对话 高通任命克里斯蒂安诺·阿蒙为公司总裁
普通对话 保利威视谢晓昉:深耕视频技术 助力在线教育
普通对话 九州云副总裁李开:帮助客户构建自己的云平台
通信前瞻
杨元庆:中国制造高质量发展的未来是智能制造
对话亚信科技CTO欧阳晔博士:甘为桥梁,携"电
普通对话 杨元庆:中国制造高质量发展的未来是智能制造
普通对话 对话亚信科技CTO欧阳晔博士:甘为桥梁,携"电
普通对话 对话倪光南:“中国芯”突围要发挥综合优势
普通对话 黄宇红:5G给运营商带来新价值
普通对话 雷军:小米所有OLED屏幕手机均已支持息屏显示
普通对话 马云:我挑战失败心服口服,他们才是双11背后
普通对话 2018年大数据产业发展试点示范项目名单出炉 2
普通对话 陈志刚:提速又降费,中国移动的两面精彩
普通对话 专访华为终端何刚:第三代nova已成为争夺全球
普通对话 中国普天陶雄强:物联网等新经济是最大机遇
普通对话 人人车李健:今年发力金融 拓展汽车后市场
普通对话 华为万飚:三代出贵族,PC产品已走在正确道路
普通对话 共享退潮单车入冬 智享单车却走向盈利
普通对话 Achronix发布新品单元块 推动eFPGA升级
普通对话 金柚网COO邱燕:天吴系统2.0真正形成了社保管