来源:中国一卡通网 作者:应时彦 朱小挺 汤顺 发布时间:2012-08-22 09:44:34 字体:[大 中 小]
摘 要: "智能家居"(smart home)又称智能住宅,它利用先进的计算机技术、嵌入式系统技术、网络通讯技术与传感器技术等,把家中的各种设备有机的结合起来,优化用户生活方式,方便用户管理设备,并能通过场景设定使多个设备间形成联动。
"智能家居"(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 从机节点射频流程图。
推荐文章
串口联网服务器——ZLSN2100
RS485有源光隔转换器
RS232转RS485有源防雷转换器
RS232转RS485无源转换器
工业网络光端机--支持2/4路以太网
工业1光2(4)电以太网收发器
工业数据光端机--支持RS232/422/485
工业级RS232/485光纤转换器
串口联网服务器(RS485)
论坛热帖