智能家居系统是利用计算机、嵌入式系统和网络技术,将各种家用照明、安防、家电等通过家庭网络连接到一起,从而为人们提供更为便利舒适生活的系统。随着嵌入式Internet技术不断地发展和成熟,通过Internet实现对智能家居的远程监控正成为业界技术发展的方向。这种方式具有成本低、控制地域广、可靠性高、通讯速度快、操作简单等优点。其基本工作原理是把智能家居系统中的信息与控制中心设备(简称控制终端)设计成web服务器,通过远程计算机上的浏览器软件对嵌入式Web服务器的访问实现远程的监控。因此实现这种系统的关键就是要设计能够接入Internet的嵌入式控制终端。
1 系统总体结构
1.1 系统结构
智能家居系统是由信息家电、安防报警、三表抄送三个子系统和一个控制终端组成的。控制终端是智能家居系统的核心设备,其主要功能是:对子系统各功能模块实施分布式管理和控制;借助现场网络与各模块实现信息交换与共享;作为嵌入式web服务器,通过Intenet实现远程通讯和监控。各子系统与控制终端通过家庭总线相连,家庭总线采用Zigbee无线通信方式。系统的结构图如图1所示。
1.2 系统的工作原理
系统的工作原理是智能控制终端根据从现场或远程网络接收到的指令,对各功能模块实行分布式轮循管理与控制,同时把智能家居系统的状态信息传送到远程控制端。控制终端与远程计算机通过B/S模式工作,控制终端作用相当于一个嵌入式Web服务器,远程计算机则作为浏览器工作。
用户在家中可以通过内嵌Zigbee模块的PDA方便地对家用电器进行控制。
2 系统硬件模块设计
2.1 网络接口模块设计
ARM公司的Cortex-M3是一个速度快、功耗低、价格便宜的32位内核,能很好地实现控制以及以太网接入等功能。本设计选用NXP的具有Cortex-M3内核的LPC1769作为主控器件,采用ENC28J60作为网络接口器件来设计以太网接入器。
图2为网络接口硬件连接示意图。ENC28J60通过SPI总线实现与LPC1769的数据传输。SSEL为片选信号。SCK为时钟信号,MOSI/MISO为数据传输串口。此外,ENC28J60还与网络变压器HR901170A相连,引出RJ45接口。
当用户通过浏览器软件向控制终端发出服务请求时,信息通过RJ45送至ENC28J60,ENC28J60负责将以太网帧的首、尾部信息剥离,将处理后的数据包送入LPC1769的TCP/IP协议栈以及应用层软件处理。同时控制终端的网页数据又可经过相反的方向传送至远程的用户端进行显示。[page]
2.2 Zigbee模块设计
在RF收发器上,本设计选用了Chipcon公司的CC2420射频收发器,它实现Zigbee协议的物理层(PHY)及媒体访问控制层(MAC),具备65,000个节点通道并可随时扩充,以及低耗电、250kbps传输速率、快速唤醒时间(<30ms)、CSMA-CA通道状态侦测等特性。
CC2420可以通过4线SPI总线(SI、SO、SCLK、CSn)设置芯片的工作模式,并实现读/写缓存数据,读/写状态寄存器等。通过控制FIFO和FIFOP管脚接口的状态可设置发射/接收缓存器。在数据传输过程中CSn必须始终保持低电平。另外,通过CCA管脚状态的设置可以控制清除通道估计,通过SFD管脚状态的设置可以控制时钟/定时信息的输入。
Zigbee模块的电路原理图如图3所示:
3 系统软件设计
系统软件设计利用C语言进行编程,采用“嵌入式操作系统”加“应用程序的开发”模式,采用模块化设计方法。本系统中采用的操作系统是uC/OS-Ⅱ。它是一个嵌入式多任务实时操作系统,具有简洁高效、易于移植、可裁剪等特点。针对本系统各模块我们设计了相应的独立任务完成所需的功能,主要包括主程序任务、安防报警任务、信息家电控制任务和三表抄送任务。
3.1 主程序设计
主程序任务是其他各任务的创建者,由它来管理各个任务的创建及运行。故程序运行时首先创建主程序任务,它的显示界面将提供其他各个任务的进入菜单。系统主程序流程图如图4所示。
从图中可以看到,系统上电后,首先进行系统初始化(包括LCD、中断、串口等初始化),再进行Zigbee网络的硬件初始化,再进入操作系统uC/OS-II的载入及初始化,接下来创建主程序任务,主程序任务默认又创建安防报警任务并进入运行状态。当要进行其他模块任务的创建时就需要将安防报警任务挂起,等其他模块任务退出后再恢复运行安防报警模块。每一时刻在uC/OS-II最多只有两个任务处于运行状态,这样做很好地保证了系统的实时性。
3.2 Zigbee收发子程序设计
在对Zigbee节点进行网络设置时,使用Chipcon公司提供的开发套件,该套件包括各种高性能的Zigbee软件工具,如网络设置器、协议追踪调试工具等。Zigbee收发子程序流程图如图5所示:
4 结论
本系统采用具有ARM Cortex-M3的嵌入式器件LPC1769作为主控制器件,在uC/OS-Ⅱ平台上构建了一个能够接入Internet的嵌入式智能家居监控终端。经检验,此系统工作性能稳定,与传统智能家居系统相比更舒适、方便、快捷,应用前景广阔。另外,本文提出的原理和方法对于一些基于网络接口的嵌入式系统都具有一定的参考价值。
上一篇:Cortex—M3的SRAM单元故障软件的自检测研究
下一篇:触控屏的控制电路制作小记(附STM32的驱动)
推荐阅读最新更新时间:2024-03-16 13:07
设计资源 培训 开发板 精华推荐
- 打破台积电垄断!联电夺下高通先进封装订单
- Ampere 年度展望:2025年重塑IT格局的四大关键趋势
- 存储巨头铠侠正式挂牌上市:首日股价上涨超10%
- Vishay 推出新款精密薄膜MELF电阻,可减少系统元器件数量,节省空间,简化设计并降低成本
- 芯原推出新一代高性能Vitality架构GPU IP系列 支持DirectX 12和先进的计算能力
- NXP 2.5亿美元收购Aviva,但车载SerDes领域依然处于战国时期
- 应对 AI 时代的云工作负载,开发者正加速向 Arm 架构迁移
- 沉浸式体验漫威宇宙,英特尔锐炫显卡为《漫威争锋》提供Day 0支持
- 艾迈斯欧司朗与法雷奥携手革新车辆内饰,打造动态舱内环境
- 《嵌入式-STM32开发指南》第二部分 基础篇 - 第7章DMA(HAL库)