当前位置:首页 > 嵌入式 > 嵌入式软件
[导读]基于PXA270-Linux的智能家居系统研究

智能家居是通过综合采用先进的计算机、通信和控制技术(3C),建立一个由家庭安全防护系统、网络服务系统和家庭自动化系统组成的家庭综合服务与管理集成系统,从而实现全面的安全防护、便利的通讯网络以及舒适的居住环境的家庭住宅。智能家居是一个多功能的技术系统,它包括可视对讲、家庭内部的安全防范、家居综合布线系统、照明控制、家电控制、远程的视频监控、声音监听、家庭的影音系统等。随着技术发展和人们需求的增长家居智能化包含的内容会更多。

1 智能家居系统结构
    目前完整的智能家居系统主要包括5个部分:主控模块、电器控制子系统、照明控制子系统、安全控制子系统和网络控制子系统。5个部分功能各司其职,逻辑上构成一个完整的控制实体。整个系统能为人们提供智能、舒适、安全的家庭环境,同时提供远程信息监控能力。智能家居系统组成如图1所示。主控模块负责子系统的信息集中、存储、分析和决策。嵌入式芯片的发展使主控模块越来越精巧,功能日益丰富。


    智能家居是一个庞大的系统,主控系统是系统的控制中枢,家庭网络是系统的神经系统,传输系统信息流和控制流。家居中的设备众多,设备的接口各异,实现各种设备的智能控制面对巨大挑战。该设计采用分布式技术、总线技术和嵌入式技术构造了一个多功能、通信能力强的智能家居系统。

2 开发平台的选择与构建
2.1 智能家居系统硬件构成

    主控平台:UP-SmarHome智能家居教学实验系统属于一种综合的教学实验系统,主处理器选用基于ARM核的Intel XScale架构的PXA270处理器,它集成了存储单元控制器、时钟和电源控制器、LCD控制器、AC97控制器等外围控制器,可以实现丰富的外围接口功能。其低电源运行模式以及动态电源管理技术可以有效降低电源的功耗。内置的LCD控制器和触摸屏控制器简化液晶显示的电路设计,此系统中采用16 b 8 寸640×480真彩LCD显示屏和触摸屏。PXA270处理器主频高达624 MHz,运算能力强,功耗低,可满足主控模块的运算要求,外围接口丰富,为主控模块的扩展提供良好的支持,用户可以自己设计接口进行其他模块的功能实现。[!--empirenews.page--]
2.2 嵌入式开发软件平台
    嵌入式硬件资源日益丰富,成本也较低廉,资源的增强使软件有更多的资源可以利用。该设计中主控模块的硬件资源非常丰富,软件系统也很庞大,软件系统无法避免在访问资源时遇到冲突、数据同步、数据交换的问题,所以需要一个嵌入式操作系统统一管理硬件资源,并对软件开发提供良好的基础环境,此系统采用在源代码开放、可移植性强的Linux操作系统上进行开发。
2.2.1 引导程序
    引导加载程序Bootloader是嵌入式系统软件开发的第一个环节,是目标板系统加电后运行的第一段代码,通过初始化硬件设备,建立内存空间的映射表,为最终加载操作系统内核建立适当的系统软硬件环境。Bootloader是严格地依赖于硬件而实现的,通用的Bootloader几乎是不可能的。在此,由于U-boot是遵循GPL条款的开放源码项目,能支持尽可能多的嵌入式处理器和嵌入式操作系统。此系统在PXA270开发
板上成功移植了U-boot。
2.2.2 Linux内核移植和编译
    所谓Linux移植就是把Linux操作系统针对具体的目标平台做必要改写之后,安装到该目标平台使其正确地运行起来。这个概念目前在嵌入式开发领域讲的比较多。其基本内容是:获取某一版本的Linux内核源码,根据具体目标平台对这个源码进行必要的改写,然后添加一些外设驱动,打造一款适合于目标平台的新操作系统,对该系统进行针对目标平台的交叉编译,生成一个内核映象文件,最后把该映象文件烧写(安装)到目标平台中。而通常对Linux源码的改写工作难度较大,这里采用的是目标平台提供商所给的文件。如果系统中有些硬件没有驱动起来,就需要自己开发驱动程序。

3 软件设计
3.1 主控模块软件设计

    智能家居主控模块上硬件资源丰富,软件上有Linux操作系统的支持,各个子模块在主控模块的控制下协同工作。主控模块和子模块之间主要传输信息流和控制流。主控模块到子模块传输的主要是控制流,这些控制流完成子模块的配置或者命令子模块系统完成特定的任务。子模块到主机传输的主要是数据流,数据流主要包含子模块系统中各设备的运行状态或传感器数据等。
    主控平台软件的主要功能是系统初始化,建立人机交互界面,实现与GSM通讯,与各监测、控制模块通讯。
    在初次使用时,由用户设置手机号码,号码将保存在主控平台配置的FLASH中,主控平台等待用户命令,此命令可能来自GSM模块或当前主控人机界面,当用户通过短消息向系统发送控制消息时,GSM模块将接收的短消息通过串口发送给主控平台,由主控平台对短消息解析,并将消息组装成命令帧,通过RS 485总线发送给被控模块;如果命令来自当前主控平台,则主控平台直接解析命令,组装命令帧发送到对应控制模块。
3.2 子模块软件设计
    子模块初始化后,定时查询RS 485总线接口,检测是否有命令帧,如果有就接收帧,取帧中的机器号和此模块的机器号比较是否相同,如果相同就解析此帧,执行相应的命令,否则继续检测总线接口。

4 结语
    分析了家庭控制网络的结构,提出了一种基于PXA270处理器和Linux操作系统的智能家居控制系统,分析了系统软硬件平台设计。最后介绍了主控模块和子模块系统的软件设计及主控模块和其他功能子系统之间的RS 485总线通讯协议。该方案具有设计灵活,可裁剪性强,集成度高,易于升级等优点,后续工作应该是在此基础上进一步完善和改进,以提高效率和实用性。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

Linux电脑输入poweroff退出操作系统后电源会自动切断,而嵌入式Linux如果没做特殊处理 输入poweroff关闭系统后电源依旧保持着。敲击键盘也不会有响应。原因是CPU和主板之间有着行业标准,比如ACPI(A...

关键字: Linux 电源 硬件IO

学习Linux动态链接库是一个绕不开的话题,我们今天就一起来看一下什么是动态链接库、动态链接库有什么好处、如何编译出一个动态链接库等几个关于动态链接库的几个基本概念,废话少说咱们直接开始

关键字: Linux 静态链接库 动态链接库

在Linux内核中,提供了一个用来创建双向循环链表的结构 list_head。虽然linux内核是用C语言写的,但是list_head的引入,使得内核数据结构也可以拥有面向对象的特性,通过使用操作list_head 的通...

关键字: Linux 内核链表

(全球TMT2022年9月15日讯)IBM于美国东部时间9月13日发布其下一代LinuxONE服务器,这是一个具有高度扩展性的基于Linux和Kubernetes的平台,旨在为企业提供所需的可扩展性,使其能用一个单一系...

关键字: IBM Linux NET 可扩展性

下一代LinuxONE服务器扩展了IBM帮助行业客户实现可持续目标的能力,花旗银行就是很好的例子 北京2022年9月14日 /美通社/ -- IBM(纽约证券交易所:IBM)于美国东部时间9月13日发布其下一...

关键字: IBM Linux X86 数据中心

(全球TMT2022年9月15日讯)IBM发布其下一代LinuxONE服务器,这是一个具有高度扩展性的基于Linux和Kubernetes的平台,旨在为企业提供所需的可扩展性,使其用一个单一系统就能支持成千上万的工作负...

关键字: GROUND IBM Linux 亚马逊

为了使得多种设备能通过网络相互通信,和为了解决各种不同设备在网络互联中的兼容性问题。

关键字: Linux 网络包

北京2022年8月26日 /美通社/ -- 双碳目标的实现或许任重道远,但是低碳、可持续的理念已经渗透到我们生活工作的方方面面。持续整个夏季的异常高温,以及四川等地限电,让许...

关键字: IBM 可持续发展 AI Linux

摩尔线程MTT S系列GPU与浩辰CAD Linux 版V2022软件产品近日完成兼容性适配。在双方工程师的通力协作下,摩尔线程MTT S系列GPU能够为浩辰CAD Linux软件提供快速运行所需的性能,并在持久的高负载...

关键字: 摩尔线程 GPU Linux

近日,摩尔线程MTT S系列GPU与中望二三维CAD Linux版产品完成产品兼容性认证。经摩尔线程和中望软件双方团队的共同严格测试,中望CAD Linux、中望3D Linux、中望CAD机械版Linux、中望CAD建...

关键字: 摩尔线程 GPU Linux

嵌入式软件

15715 篇文章

关注

发布文章

编辑精选

技术子站

关闭