新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 智能家居无线网络通讯协议设计方案

智能家居无线网络通讯协议设计方案

作者:时间:2013-06-05来源:网络收藏

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 从机节点射频流程图。



评论


相关推荐

技术专区

关闭