数字家庭遥控器的研究与开发
扫描二维码
随时随地手机看文章
关键词:数字家庭,遥控器,PXA255,Linux
1 引言
数字家庭是一个融合了家庭控制网络和多媒体信息网络于一体的信息化平台,通过有线或无线的方式在家庭范围内实现PC、消费电子产品和通信设备的互联和管理,对内实现各种信息的资源共享,对外实现信息的互换。数字家庭遥控器是数字家庭的控制终端,通过红外、蓝牙或Wi-Fi等无线介质连入数字家庭网络,使用户能够随时随地获取家庭控制、数字媒体等信息。
本文的目的是研究并开发一款数字家庭遥控器。普通的遥控器只能控制一个或一类设备,数字家庭遥控器能够通过与家庭网络的通讯,实现对挂接在家庭网络上的所有家用电器的查询与控制。用户可以通过液晶显示随时监控设备的状态和参数。除了家电控制功能以外,数字家庭遥控器还具有丰富的娱乐和多媒体功能,能够实现无线上网、影音播放、视频监控等数字家庭功能。
本文第2节描述数字家庭的系统结构,第3节介绍遥控器的系统设计,包括硬件平台的设计和软件平台的设计,第4节给出结论和创新点。
2 数字家庭的系统结构
数字家庭主要由家庭网关、各种信息终端设备和智能家电设备、家庭智能联网环境三部分组成,如图1[1]所示。其中家庭智能联网环境包括家庭控制网络和多媒体信息网络。E-Home智能家居系统[2]是由清华大学自动化系和清华同方公司合作开发的家庭控制网络系统。本文设计的数字家庭遥控器能够控制E-Home、Zigbee等家庭控制网络系统,同时也能够和多媒体信息网络通信,实现无线上网、多媒体浏览等功能。
3 系统设计
3.1 遥控器硬件平台
遥控器的硬件平台以PXA255为核心,包括核心系统、电源系统、音视频系统、以及Zigbee、红外通信等其他功能扩展系统。遥控器硬件结构框图如图2所示。
3.1.1 核心系统设计
数字家庭遥控器的硬件平台采用了Intel公司的Xscale系列CPU PXA255作为核心。PXA255处理器基于ARM V5TE指令集,最高运行频率400MHz,内部集成了大量功能模块,比如LCD控制器、USB Device控制器、PCMCIA卡接口等,功能强、体积小、功耗低。
除了PXA255,系统核心还包括了64MB的SDRAM、32MB的NOR Flash(主要用于存储程序)、128MB的NAND Flash(主要用于存储数据),为了调试方便设计了JTAG接口与RS232串口。嵌入式手持设备一般采用单键延时开关机设计,分为硬开关设计和软开关设计两种。由于PXA255在睡眠状态下功耗很低,为了能够实现快速开关机,设计中采用了单键软开关设计的方法。当系统关机时CPU并未完全掉电,而是进入睡眠状态。
图1 数字家庭网络结构图
图2 数字家庭遥控器硬件结构框图
3.1.2 电源设计
使用单节锂电池为系统供电。电源系统主要分为充电和电源管理两个部分。
采用MAXIM公司的MAX1555芯片作为充电管理芯片,可以通过5V直流电源或者USB接口为锂电池充电,并用一个LED指示充电状态。采用纽扣型锂电池作为备份电源,当主电源存在时为备份电池充电;当主电源无效时,备份电池接替主电源为实时时钟(RTC)供电。
采用MAX1586芯片作为系统的电源管理芯片。MAX1586芯片针对Xscale系统CPU进行了优化,集成了7路高性能、低工作电流的电源,以及监测和管理功能。为了节约电能,需要根据CPU的运行频率,通过PXA255的I2C接口动态调整内核电压。当系统进入睡眠状态时,可以完全切断CPU的内核电源并将液晶屏、扬声器等外设电源切断。
3.1.3 音视频设计
数字家庭遥控器需要具有较强的音视频功能。选用了NEC的NL2432HC22-22B液晶模块作为显示屏,该模块是3.5英寸、半反射型的TFT液晶屏,具有240x320的分辨率和18位色深,并带有触摸屏接口和矩阵键盘。
PXA255内部集成了AC’97(音频多媒体数字信号编/解码器)控制单元。遥控器采用PHILIPS公司的UCB1400芯片作为音频编解码芯片,实现了双声道音频输出、麦克风音频输入等功能。音频输出部分使用了LM4880功放芯片驱动2个8欧姆扬声器。
3.1.4 其他扩展功能设计
利用PXA255的PCMCIA接口设计了CF扩展卡插槽。CF卡作为一种存储卡接口标准在便携式设备中应用广泛,具有物理尺寸小、低功耗、灵活性强等特点。市面上有大量符合CF卡标准的存储卡、无线网卡、GPS接收器、摄像头等。插入这些符合CF卡标准的I/O卡可以为数字家庭遥控器扩展相应的功能。比如我们通过一个CF以太网卡为遥控器扩展了以太网通信的功能。
红外通信模块选用了安捷伦公司的HSDL-3020红外收发器和TFMS5380红外接收芯片。HSDL-3020具有2个红外发射LED:波长为875nm的红外LED用于IrDA快速数据传输,波长为940nm的LED用于家电红外遥控。其中家电遥控的最远距离为14米;IrDA数据传输的最远距离为50厘米,速率介于9.6kbps和4Mbps(FIR)之间。TFMS5380芯片直接接收波长940nm,载波频率为38kHz的红外信号,并对红外信号解调、放大、滤波、整形。通过软件支持,数字家庭遥控器红外模块具有普通家用电器的万能红外遥控、E-Home系统的红外控制、IrDA红外通信三个功能。
ZigBee(IEEE802.15.4)技术是最近发展起来的一种短距离无线通信技术,被业界认为是最有可能应用在家庭自动化控制的无线方式,市场上已经出现了很多基于ZigBee的家庭控制系统。ZigBee使用2.4GHz波段,采用跳频技术和扩频技术。遥控器设计中选用了飞思卡尔的MC13192芯片作为ZigBee收发器。MC13192采用标准的4线SPI及7根GPIO与PXA255通信。
3.2 遥控器软件平台
数字家庭遥控器的软件平台自底向上分别是Redboot、Linux、MiniGUI和应用程序。其软件平台结构如图3所示。
图3 数字家庭遥控器软件结构框图
3.2.1 Redboot
Redboot是一个专门为嵌入式系统定制的开发工具,是嵌入式操作系统eCos的一个最小版本。Redboot集Bootloader、调试、Flash烧写于一体,支持串口、网络下载、执行嵌入式应用程序等功能。把编译好的Redboot映像烧写到物理地址为0x00的NOR Flash上,这样Redboot就是系统上电后第一个运行的程序。然后利用Redboot来引导Linux操作系统。
Redboot建立在eCos的硬件抽象层(HAL)和设备驱动程序的基础上。硬件抽象层对处理器结构和系统硬件平台进行抽象,当需要将Redboot移植到一个新的平台只需对底层的硬件抽象层(HAL)进行修改。移植Redboot到遥控器的步骤如图4所示。
3.2.2 ARM-Linux
数字家庭遥控器要为用户提供智能家庭控制、影音娱乐等功能。要实现这些功能,多任务、网络协议、文件系统、出色的GUI都是不可缺少的。选用操作系统可以简化系统的开发难度,并使开发具有更好的可扩展性和可移植性。数字家庭遥控器选用了Linux作为操作系统,ARM-Linux是打了ARM补丁的Linux操作系统。在设备驱动的支持下,Linux管理了系统硬件并向上层提供了一个统一的,硬件不可见的应用程序接口。
选用2.4.19版本的标准Linux内核并打上了针对PXA255处理器的补丁diff-2.4.19-rmk7-pxa2.gz。将Linux移植到遥控器平台上的流程如图5所示。移植的一个重要工作是为液晶屏、音频模块、CF卡插槽、Zigbee模块、红外模块等外设编写驱动。移植的最后要为Linux启动建立初始化RAM盘映像(initrd),initrd里包含了必要的设备文件、链接库、启动脚本、busybox工具等。
图4 Redboot移植流程图
图5 Linux板级移植流程图
3.2.3 MiniGUI
遥控器采用MiniGUI作为图形用户界面系统。MiniGUI是我国国内自主开发、比较成熟的一个图形用户界面系统,面向基于Linux 的嵌入式系统,采用微客户端/ 服务器模式来提供对多进程的支持,集成了多字体和多字符集。MiniGUI采用分层设计的层次结构,修改最底层的GAL(图形抽象层)和IAL(输入抽象层)将MiniGUI移植到遥控器平台上。
基于MiniGUI编写了服务器程序mginit和遥控器的主界面程序。按下主界面上的按键就可以调用相应的应用程序,如E-Home系统控制、视频播放等。
3.2.4 应用程序
为遥控器编写应用程序实现丰富的数字家庭功能。数字家庭遥控器具有以下功能:
1. 家庭控制网络系统控制功能
为遥控器编写了基于MiniGUI的E-Home家庭网络控制程序,实现了遥控器对E-Home系统的即插即用控制[3] [4]。当E-Home网络上新添加设备或者删除设备时,遥控器能够自动更新配置文件并得到新设备的控制方法,用户可以通过图形液晶显示方便的查询和控制新设备。对于普通的电视、空调等非智能设备,数字家庭遥控器可以学习并保存他们的遥控码,并利用HSDL-3020红外收发器提供的940nm红外发射端口对这些普通家电进行控制。此外遥控器还具有联入并控制ZigBee网络的能力。
2. 媒体娱乐功能
编写了推箱子、扫雷等几个基于MiniGUI的图形游戏,证明了遥控器可以实现美观的图形界面。另外移植了开源的视频播放软件mplayer到遥控器上,实现了音视频播放功能。通过实验数字家庭遥控器可以很流畅的解码并播放20帧/秒、240x320像素、MPGE4编码的视频文件和15帧/秒、240x320像素、H.264编码的视频,具有较强的多媒体功能。
3. 网络通信功能
通过CF扩展卡为遥控器扩展了以太网功能,并利用Ftp服务实现了文件的上传与下载。利用基于MiniGUI的mSpider嵌入式浏览器、FlashPlayer等开源软件,还可以实现网页浏览、Flash动画播放等。除此之外,遥控器可以利用USB接口或者IrDA红外通信端口与PC机通讯并交换数据。
4 结束语
数字家庭具有广泛的发展前景,现在市面上还没有成熟的数字家庭遥控器产品。本文提出的数字家庭遥控器功能丰富,能实现对E-Home家庭网络、ZigBee家庭网络、普通家用电器的控制。同时该遥控器具有较强的媒体娱乐功能和网络通信功能,可以给家庭用户带来全新的感受。经过系统运行实验,数字家庭遥控器非常适合未来数字家庭的应用。
本文作者创新点: 现有的家庭网络遥控器只能实现对某一种特定家庭控制网络的控制,功能单一,而且不具备未来数字家庭必需的多媒体能力。本文提出的数字家庭遥控器能同时实现对E-Home、ZigBee两种流行的家庭控制网络的控制,而且能够控制没有联入家庭网络的普通家电,还可以实现媒体娱乐、互联网通信等功能。本文给出了该遥控器的具体软硬件实现方法,对今后数字家庭遥控器的研究与开发具有很好的指导意义。
参考文献
[1] “数字家庭”产业发展研究报告. 北京:诺达咨询,2005
[2] 杨士元. E-Home在中国. 工程设计CAD与智能建筑,2000,(11):80~84
[3] 林丽华,杨士元,叶朝辉,徐海. 即插即用家庭网络遥控器的研究与开发[J]. 微计算机信息,2006, 12-1: 1-4.
[4] Zhaohui Ye,Yindong Ji, Shiyuan Yang. Home Automation Network Supporting Plug-and-Play [J]. IEEE Transaction on Consumer Electronics, Feb. 2004, 50(2): 173-179.