基于Linux的智能家居的设计(2)
智能家居系统的是一个实时查询家庭的温湿度、照明控制、自己主动控制的设定。集家庭娱乐、智能安防为一体,大量数据快处理、可靠的系统,因此在硬件和软件上都有非常大的要求,因此在这里进行了多方面的考虑有下面两个实现方案:
方案一:利用STM32单片机作为手持终端的控制器,使用按键和12864液晶屏作为人机交互的接口。利用51单片机作为房子内部的电灯、空调、门禁等家电的控制器,利用串口实现STM32单片机和51单片机作为传输数据的通道。这个能够实现。可是。机械按键和12864在智能家居中与实际的场景有些不符合。
方案二:利用ARM架构的S3C6410作为手持终端的主控芯片,以Linux系统作为平台,QT设计友好的人机交互界面。结合多个传感器进行採集。使用TI的CC2530作为网络传感器和房子内部电器的控制器。而且利用串口通信实现数据的交互,利用RFID的门禁钥匙。通过PC机上的client软件实现远程的智能家居系统监控[6]。
比較以上两种方案。另外一种方案更为合理。Linux系统有非常多的优势:免费开源、内核可裁剪、网络功能强大且稳定、可靠安全等都方面的优势[7]。
Qt设计支持多国语言、优良的跨平台特性、面向对象、丰富的API(包含图形设计器,Makefile制作工具、字体国际化工具、Qt的C++类库)、模块化、能够随意裁剪、大量的开发文档、XML支持等多方面的优势[8]。所以选择方案二。
本设计的总体系统框图如图1-1所看到的:
图1-1 总体系统框图
硬件部分的结构框图如图1-2所看到的:
图1-2
硬件结构框图
这里的主控芯片是用于数据的处理和系统的控制,TFT液晶屏用于人机交互。协调器和主控芯片用串口通信实现家庭网络的数据交互。温湿度传感器採集室内的温湿度,光照度传感器採集光照度,通过终端节点将数据收集打包。发送到协调器,协调器通过串口将数据发送到主控制芯片,主控器进行数据处理在界面TFT屏上给出对应的信息。而且发出对应的指令控制空调和电机。门禁模块实现控制舵机的转动从而控制门的开关。
基于Linux的智能家居的设计(2)的更多相关文章
- 基于Linux的智能家居的设计(3)
2 硬件设计 本课题的硬件设计包含主控制器.传输数据设计.数据採集设计.控制驱动设计.显示设计.门禁设计. 2.1 主控制器 依据方案三选择S3C6410主控芯片,S3C6410是由Samsung ...
- 基于Linux的智能家居的设计(4)
3 开发环境的搭建 本次课题使用的开发环境比較特殊.没有一个现成的集成开发环境,需要自己一步一步的搭建开发环境,开发环境的搭建的过程十分复杂,并且假设没有这个开发环境本次课题就无法进行. 因此.在进 ...
- 基于Linux的智能家居的设计(5)
4 软件设计 软件设计部分主要包含uboot移植.内核编译.系统移植.设备驱动编程.应用程序编程(QT编程.mysql数据库编程.控制系统编程).各个模块的功能函数(部分是在windows以下的IA ...
- 基于ESP32的智能家居管理系统的设计与实现
基于ESP32的智能家居管理系统的设计与实现 ESP32的智能家居管理系统访问链接: https://www.cnblogs.com/easyidea/p/13101165.html 一.需求分析 1 ...
- 基于树莓派的智能家居项目的设想与实现 Hestia
注:本人内容的准确性仅限于笔者写该篇文章时的情况,不保证后续与实际项目代码一致.实时内容还请关注Github项目托管页面:https://github.com/GenialX/hestia-serve ...
- 一只简单的网络爬虫(基于linux C/C++)————配置文件设计及读取
一般来说linux下比较大型的程序都是以配置文件作为参数介质传递的,该爬虫也采用配置文件的方式来获取参数,配置文件格式大致如下: max_job_num=1 #seeds=https://www.ba ...
- 基于能量收集的智能家居-2013国家级大学生创业实践项目申报_商业计划书_V0.2
SmartHome项目商业计划 基于能量收集的 免电池无线智能家居系统 IA-SmartHome团队 2012.12 l 基于无线的智能家居解决方案,节省施工成本: l 基于能 ...
- Home Assistant + 树莓派:强大的智能家居系统 · 安装篇
Home Assistant + 树莓派:强大的智能家居系统 · 安装篇 转载:Home Assistant + 树莓派:强大的智能家居系统 · 安装篇 目录 1. 初始安装 3. Homebridg ...
- 智能家居系统 Home Assistant 系列 --介绍篇
一. HomeAssistant 是什么? HomeAssistant是构建智慧空间的神器.是一个成熟完整的基于 Python 的智能家居系统,设备支持度高,支持自动化(Automation).群组化 ...
随机推荐
- RocketMQ学习笔记(7)----RocketMQ的整体架构
1. RocketMQ主要的9个模块,如图: 2. 模块介绍 1. rocketmq-common:通用的常量枚举,基类方法或者数据结构,按描述的目标来分包,通俗易懂.报名有admin,consume ...
- 常用的字符串方法 String ;
字符串: 1,str.charAt(num);//根据下标查找字符串中对应的字符,返回对应下标的字符; 2,str.charCodeAt(num);//字符串中下标对应的那位字符的 Unicode ...
- mysql 修改默认的引擎
需求: mysql 的默认的引擎为MyISAM 虽然该引擎访问的速度快,但并不支持存储事物,也不支持外键,所以我们修改为innob Linux修改MySql默认存储引擎为InnoDB 一 ...
- 错误解决:error: expected ‘;’, ‘,’ or ‘)’ before ‘&’ token
今天看到一个比较有趣的题目,如下代码,分析输出结果 #include <stdio.h> void num(int &b) { b = 222; return; } int mai ...
- 收集整理的openstack java封装 api的第三方实现的选择
Apache jclouds 地址:http://jclouds.apache.org/guides/openstack/ 一个开源库,java实现,支持cloudstack,openstack以及各 ...
- idea 包的显示方式
idea 可以通过点击Project的导航栏里的小齿轮里面有一个 Flatten packages 选项,将其勾上.就可以得到跟eclipse一样的包的显示方式. 没有设置默认是这样的 2018-06 ...
- 关于ValueAnimation以及Interpolator +Drawable实现的自己定义动画效果
ValueAnimation : Android中的属性动画,他跟objectAnimation是比补间动画拥有更强大的功能,能够操作对象.所以我们能够在自 定义View中通过他们来实现些特别的功能. ...
- 芒果TV真实视频地址解析
本文旨在互相学习,请勿滥用 若有幸被您引用请附加地址来源http://blog.csdn.net/feige2008/article/details/37579051 文章主要解析芒果TV的视频真实地 ...
- 设置Webdriver启动chrome为默认用户的配置信息
Webdriver 启动Chrome浏览器时,默认是打开一个新用户,而非默认用户.即新用户没有我们安装扩展程序.但在实际应用中,我们会须要 默认用户安装的一些扩展程序,比方对于某些js或者css样式. ...
- directshow 获取本地摄像头播放
最近因为项目的需要,做了一个基本的获取本地笔记本摄像头并且播放的例子,因为网上的关于这部分的完整例子基本都没有,那我就上传一个吧,希望能够帮到需要学习视频的朋友. 另外也是为了纪念雷霄骅博士为音视频方 ...