• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >嵌入式开发 > 智能控制与嵌入式系统智能家居控制系统研究与设计

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

作者:汇编爱好者 字体:[增加 减小] 来源:互联网 时间:2017-06-17

汇编爱好者通过本文主要向大家介绍了嵌入式系统与智能控制,嵌入式智能控制,嵌入式智能家居论文,嵌入式智能家居项目,嵌入式智能家居等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
</div>

  根据IEEE的定义,嵌入式系统是“控制、监视或者辅助装置、机器和设备运行的装置”。从中可以看出嵌入式系统是软件和硬件的综合体,还可以涵盖机械等附属装置。目前国内一个普遍被认同的定义是:以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。嵌入式系统以其占用资源少、专用性强、功耗低的特点使其广泛应用在移动通信、工业生产、安全监控等领域。以其在性能、体积及功耗等方面的优势在智能家居领域得到越来越广泛的应用。

  随着嵌入式技术、网络及信息技术的发展,针对人们对智能家居的追求,提出了一种基于ARM9的嵌入式智能家居控制系统的解决方案。介绍了嵌入式Linux系统的软硬件平台,结合实例阐述了嵌入式QT图形界面系统、嵌入式数据库SQLite等关键技术在嵌入式智能家居控制系统中的应用。该方案解决了控制系统的可视化操作问题,提高了系统数据管理效率,并具有通用性可移植到其他硬件或软件平台应用。

  系统结构设计

  本文将控制系统分为现场控制级(主机)和多个控制对象级(分机)。主机设备能够收集到控制对象的各种信息,对这些数据进行处理,并能够在设定的条件下产生报警。通过该系统,可以得到家居的各种运行状态(例如,房间温度、湿度,煤气泄漏报警等),并能根据现场情况做出相应的调整控制(例如,照明及家电控制等)。其家居控制系统结构如图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是微软公司嵌入式、移动计算平台的基础,它是一个开放的、可升级的32位嵌入式操作系统,是基于掌上型电脑类的电子设备操作系统,它是精简的Windows 95,Windows CE的图形用户界面相当出色。

  Windows CE作业系统是Windows家族中最新的成员,专门设计给掌上型电脑(HPCs)所使用的电脑环境。这样的作业系统可使完整的可携式技术与现有的Windows桌面技术整合工作。 Windows CE 被设计成针对小型设备(它是典型的拥有有限内存的无磁盘系统)的通用操作系统,Windows CE 可以通过设计一层位于内核和硬件之间代码来用设定硬件平台,这即是众所周知的硬件抽象层(HAL)(在以前解释时,这被称为 OEMC (原始设备制造)适应层,即 OAL; 内核压缩层,即 KAL。 以免与微软的 Windows NT 操作系统 HAL 混淆) 。

  Windows CE平台的定制过程

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

  (2)利用标准开发向导,根据Windows CE的架构创建一个定制平台,根据目标硬件设备开发Boot Loader、设备驱动程序,适当的裁减、添加组件。

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

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

  安装BSP

  BSP即Board Support Package,板级支持包。它来源于嵌入式操作系统与硬件无关的设计思想,操作系统被设计为运行在虚拟的硬件平台上。对于具体的硬件平台,与硬件相关的代码都被封装在BSP中,由BSP向上提供虚拟的硬件平台,BSP与操作系统通过定义好的接口进行交互。BSP是所有与硬件相关的代码体的集合。一个成熟的商用操作系统,其被广泛应用的必要条件之一就是能够支持众多的硬件平台,并实现应用程序的硬件无关性。一般来说,这种无关性都是由操作系统实现的。

  BSP就是为软件操作系统正常运行提供最基本、最原始的硬件操作的软件模块,它和操作系统息息相关,但又不属于操作系统的一部分。BSP可以分为三大部分:

  1:系统上电时的硬件初始化。

  2:为操作系统访问硬件驱动程序提供支持。

  3:集成的硬件相关和硬件无关的操作系统所需的软件模块。

  开发BSP需要的条件

        ·目标硬件:硬件调测完毕,经过必要的软件测试

        ·必要的硬件设计文档:如地址空间的分布,CPU和其他芯片的工作模式等。

        ·操作系统

        ·交叉开发工具:编译器、汇编器、链接器等

        ·下载机制:bootrom或仿真器等

  2    BSP实际开发的主要过程

  1.   掌握开发中使用的操作系统,和在这种操作系统下开发BSP的要求。

  2.   研读所选CPU的资料。

  3.   研读硬件设计文挡。

  4.   研读电路板中器件的资料。

  5.   找一个BSP模板,熟悉它并在此基础上开发自己的BSP。从头研制BSP工作量极大,也没有必要。

  6.   利用仿真器进行调试,开发最小BSP系统。

  7.   在最小BSP的基础上,利用Tornado集成开发环境,进一步调试外围设备,配置、完善系统。

  8.   调试单板上的设备驱动程序。

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

  Platform Builder 是微软公司提供给Windows CE 开发人员进行基于Windows CE 平台下嵌入式操作系统定制的集成开发环境。它提供了所有进行设计、创建、编译、测试和调试Windows CE 操作系统平台的工具。它运行在桌面Windows 下,开发人员可以通过交互式的环境来设计和定制内核、选择系统特性,然后进行编译和调试,如果开发板

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

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

相关文章

  • 2017-06-05 神龙卡驱动如何安装?
  • 2017-06-05 Lua尝试返回多个值,attempttocomparenilwithnumber
  • 2017-06-05 -基于zigbee2530的DHT11传感(含源代码和注释)
  • 2017-06-05 请教有关USB虚拟RS232的问题!望赐教
  • 2017-06-05 TICC2541141协议栈主机多次扫描问题
  • 2017-06-05 VC++调用matlab的cheby1
  • 2017-06-05 vxworks68使用shell命令sysReboot会有延迟
  • 2017-06-05 各位大哥,再帮忙看下,probe之后i2c_client中的devplatform_data为空
  • 2017-06-05 dns服务器地址DNS服务出错
  • 2017-06-05 hostname和dns之间是什么关系?

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • 关于ISE中NGC文件调用
    • 用51串口接收陀螺仪数据包数据不完整
    • ubootping不通pc机
    • 谁知道单片机开发怎么入门啊
    • 一些虚拟摄像头的原理是什么,如何编写的啊?
    • 有人了解ati显卡吗
    • 急!求讲解张帆《Windows驱动开发技术详解》的虚拟串口驱动,求讲解
    • 高分求救:98下modem安装上去了,在拨号网络中去看不到???
    • STM32F207+DP83848+rt-thread+lwip如何在三层交换机通信
    • 为什么网络缓冲池会耗尽?

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有