微波EDA网,见证研发工程师的成长!
首页 > 通信和网络 > 通信网络技术文库 > 嵌入式智能家居控制系统的研究与设计

嵌入式智能家居控制系统的研究与设计

时间:05-01 来源:今日电子 点击:

系统结构设计

本文将控制系统分为现场控制级(主机)和多个控制对象级(分机)。现场控制级设备能够收集到控制对象的各种信息,对这些数据进行处理,并能够在设定的条件下产生报警。通过该系统,可以得到家居的各种运行状态(例如,房间温度、湿度,煤气泄漏报警等),并能根据现场情况做出相应的调整控制(例如,照明及家电控制等)。其家居控制系统结构如图1所示。

图1 家居控制系统结构图

本文仅研究设计智能家居的现场控制部分,图1中的GSM和GPRS等远程通信模块作为以后系统的扩展升级。主机MCU选用ARM9芯片S3C2410,因其具有丰富的功能端口而适合设计要求和日后扩展。S3C2410嵌入式微处理器集成了众多的常用资源,例如,LCD控制器、NAND Flash控制器、SDRAM控制器、系统片选逻辑以及一些常用的通信接口等资源。

分机采用16位单片机MSP430F149,主要考虑此芯片的低功耗性能,具有超低功耗的MSP单片机可以完成分机家居现场的控制功能。报警信息的采集就是对各传感器的信息采集;对各种家电的控制是通过控制连接在家电电源的继电器来实现;现场控制手动命令是通过触摸屏来实现的。各分机通过nRF905收发模块与主机进行无线通信。各分机通过连接不同的传感器或控制器来实现不同的功能。

系统软件开发

在Windows CE.net产品的开发中,有两个重要的方面,一个是内核定制,另一个是应用程序的开发。微软在这两个方面都提供了非常好的开发工具,这就是内核定制工具Platform Builder和应用程序开发工具Embedded Visual C++。

1 操作系统平台定制

Windows CE平台的定制过程

(1)选择操作系统的基本配置,并且为特定的平台选择相应的微处理器和板级支持包BSP(Board Support Packet)。本系统终端采用S3C2410处理器,因此我们导入了和硬件平台相关的smdk2410.cec文件。

(2)利用标准开发向导,根据Windows CE的架构创建一个定制平台,根据目标硬件设备开发Boot Loader、设备驱动程序,适当的裁减、添加组件,如有需要还须对某些配置文件进行修改,然后封装所需要的各功能模块,编译生成OS镜像文件。

(3)通过以太网、USB或串口将镜像文件下载到目标设备,可以使用Platform Builder提供的调试工具查看Windows CE.net的运行情况并进行调试,若需要,进行重复配置、封装、下载及调试,直到满足要求,完成平台的创建。

(4)最后,导出相应的SDK(Software Development Kit)软件开发工具包,运行后安装到EVC中,使得可以进行特定硬件平台上的应用程序开发。SDK包含程序库、头文件、示例程序源代码和库函数使用文档,同时还包括编程指导和API参与以及设备驱动工具包(DDK)。

安装BSP

把Windows CE.net移植到新硬件平台由平台构造器(Platform Builder)完成。Platform Builder 4.2是一个定制基于Windows CE.net 4.2操作系统的嵌入式平台的集成开发环境(IDE)。我们为一个硬件平台构建CE系统,在PB里实际上就是创建平台,然后编译平台,得到CE映像文件的过程。所以我们首先需要创建一个平台。板级支持包(BSP)是连接一个硬件平台和操作系统内核功能的桥梁,所以,首先PB会要求选择BSP。

Platform Builder本身就提供了多种目标板的BSP,如果开发板和Platform Builder提供得相同,那么只需重新编译,生成相应的系统镜像下载到开发板即可。但是实际情况更多的可能是处理器相同,但是板上的各种外围硬件接口不尽相同,这时候可以通过修改Platform Builder中相同或相近处理器的BSP来完成一个新的BSP,这样可以大大减少BSP的研发时间。这里我们利用厂商直接提供的BSP,节省了开发时间,也可以提高成功率。

图2 生成系统镜像

定制Windows CE操作系统镜像

PB定制基于本平台的操作系统镜像的步骤如下。

(1)选择板级支持包:本系统开发板CPU是S3C2410,所以选"SAMSUNGSMDK2410:ARMV4"BSP。

(2)选择平台类型。本文选择了手持设备。在"Available configurations"列表中,选择"Mobile Handheld",并输入"Platform name:sbc2410"。

(3)选择基本类库及所需要的网络通信服务,平台配置完毕。

(4)右键单击"SBC2410 features"选项的"Setting…"。在对话框Build Option属性页中,选择[Enable Full Kernel Mode],Windows CE中所有线程都会运行在核心态。这会使整个系统相对不稳定,但是也可提高系统的运行效率。选择[Enable Images Larger than 32MB],Windows CE的最终运行时映像可大于32MB。

(5)利用Platform Builder进行Windows CE.net操作系统的定制和开发一个重要的步骤就是在Platform Bu

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top