基于Linux的智能家居的设计(3)
本课题的硬件设计包含主控制器、传输数据设计、数据採集设计、控制驱动设计、显示设计。门禁设计。
依据方案三选择S3C6410主控芯片,S3C6410是由Samsung公司推出的一款低功耗、高性价比的RSIC处理器 。基于ARM11内核。内置强大的硬件加速。显示处理和缩放,运动视频处理。音频处理[9]。这个作为智能家居的处理器是不二之选。硬件性能上全然能够实现。本设计选用的基于S3C6410的OK6410开发板。开发板上拥有例如以下特征[10]:
(1) 12MHz、48MHz、27MHz、32.768KHz时钟源,支持5V电压供电;
(2) 採用8位拨码开关设置系统启动方式;
(3) 共4个串口,包含1个五线RS 232电平串口(DB9母座)。
(4) 触摸板接口支持4线电阻式触摸板;LCD接口支持4.3寸TFT LCD,利用触摸屏实现人机交互。
(5) 1个CMOS摄像头接口,支持ITU-RBT601/656 8位模式,使用10*2插针连接器。
(6) 1个100M网口,採用DM9000AE,带连接和传输指示灯。
本次课题OK6410开发板的RS232电平串口与PC机相连;3个三线TTL电平串口(20pin2.0mm间距插头座)与ZigBee协调器相连。网口与PC相连进行网络通信;10*2插针连接器与CMOS摄像头相连。
OK6410开发板实物图如图2-1所看到的:
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
本课题的传输数据分为PC机和主控制板之间的传输数据。它们之间使用网络双绞线和串口线进行连接。主控制板与无线网络传感器之间的通信,使用TTL电平转串口。无线网络传感器与无线网络传感器之间的通信。使用Zigbee协议栈;以及摄像头与主控制器通过10*2插针连接器直接进行通信。详细的设计框图如图2-2所看到的:
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
图2-2 传输数据设计框图
数据採集包括有温湿度的採集、光照度的採集、视频数据的採集。
温度传感器採用的是含有已校准数字信号输出的DHT11温湿度传感器。其电路原理图如图2-3所看到的:
图2-3 DHT11温湿度传感器的电路原理图
光照度採集传感器採用的是採用灵敏型光敏电阻传感器。模块在环境光线亮度达不到设定阈值时,DO 端输出高电平,当外界环境光线亮度超过设定阈值时。DO 端输出低电平。电路原理图如图2-4所看到的:
图2-4 光照度传感器电路原理图
本课题COMS摄像头採用的硬件是OV9650作为图像採集传感器。OV9650与S3C6410的接口原理图如图2-5所看到的:
图2-5 OV9650与S3C6410的接口原理图
本课题採用的是网蜂的Zigbee模块进行无线传输。
网蜂Zigbee的特点例如以下[11]:
(1) 高性能、低功耗的8051微控制器内核;
(2) 适应2.4GHz IEEE 802.15.4的RF收发器;
(3) 电源电压范围宽(2.0~3.6V);
(4) 看门狗、电池监视器和温度传感器;
(5) 具有8路输入8~14位ADC。
(6) 2个支持多种串行通信协议的USART,1个红外发生电路;
(7) 1个通用的 16 位和2个8位定时器;
(8) 21个通用I/O引脚,2个具有20mA的电流吸收或电流供给能力。
(9) 小尺寸QLP-40封装。6mm×6mm。
电路原理图如图2-6所看到的:
图2-6 zigbeeCC2530电路原理图
Zigbee的P0_2、P0_3分别与OK6410开发板上的RXD1和TXD1连接实现数据的传输。Zigbee的P0_6与DHT11的数据port相连接,实现温湿度数据的传输;P1_4、P1_3、P1_2、P1_1分别接到UL2003A芯片驱动电灯;可调的光敏传感器的数据port接P1_5port;P1_6接在电机(空调)的驱动器上,控制电机的转动。P1_7接在减速电机(窗帘)的驱动器上,控制窗帘的开关。P0_4、P0_5与门禁模块相连接。读取门禁卡的信息;P0_0与舵机的信号线相连,控制门的开关。
空调电机的控制和窗帘电机的控制使用的LN298电机驱动模块,其原理图如图所看到的:
图2-7 LN298电路原理图
灯具的控制驱动使用的是UL2003A驱动芯片。
8号引脚接电源的+5V,16号管脚接电源的GND。逻辑电路原理图例如以下所看到的:
图2-8 UL2003A逻辑电路原理图
本课题的显示部分使用的4.3寸TFT屏,LCD的硬件主要包含LCD玻璃板、LCD驱动器和LCD控制器。LCD控制器和LCD驱动器之间的接口信号主要有:VD0~VD23、VCLK、HSYNC、VSYNC、VDEN、LCD_PWERN、TSXP、TSYP、TSXM、TSYM[12]。
这里的VD0~VD23是LCD像素数据信号线。用来传输要显示的数据;VCLK是显式时钟信号,每一个VCLK信号,LCD控制器传送一个像素的数据到LCD;HYSNC是水平同步信号,也称为行同步信号;VSYNC是垂直同步信号,也称为帧同步信号;VDEN是数据使能信号。TSXP、TSXM是用来确定平面上X轴上的坐标;TSYP、TSYM是用来确定平面上Y轴上的坐标。TFT触摸屏和ARM之间的硬件框图如图2-9所看到的:
图2-9 TFT触摸屏和S3C6410硬件接口图
门禁系统使用的是RFID读卡模块RC522,利用舵机控制门的开关,当钥匙不对时刷卡会出现蜂鸣器报警。直到正确的钥匙到了开门才停止报警。门禁部分的基本框图如图2-10所看到的:
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
图2-10 门禁部分的基本框图
后面的在基于Linux的智能家居的设计(4)。
基于Linux的智能家居的设计(3)的更多相关文章
- 基于Linux的智能家居的设计(4)
3 开发环境的搭建 本次课题使用的开发环境比較特殊.没有一个现成的集成开发环境,需要自己一步一步的搭建开发环境,开发环境的搭建的过程十分复杂,并且假设没有这个开发环境本次课题就无法进行. 因此.在进 ...
- 基于Linux的智能家居的设计(2)
1 系统整体设计方案 智能家居系统的是一个实时查询家庭的温湿度.照明控制.自己主动控制的设定.集家庭娱乐.智能安防为一体,大量数据快处理.可靠的系统,因此在硬件和软件上都有非常大的要求,因此在这里进 ...
- 基于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).群组化 ...
随机推荐
- MFC小型工具通用界面框架CLIST控件+右键菜单功能
MFC-小型工具通用界面框架 0x1 场景 由于工作需要我会写代码开发工具给客户或者同事用.代码都能实现,但写个黑乎乎的命令行工具给别人用确实显得不够专业,用别人写好的成型工具又担心有后门. 所以掌握 ...
- 递归&冒泡&装饰器
递归 在函数内部,可以调用其他函数.如果一个函数在内部调用自身本身,这个函数就是递归函数. #lambda: func = lambda x,y:9+x 参数:x,y 函数体:9+x 函数名:func ...
- H5页面关于android软键盘弹出顶起底部元素的解决方案
应用场景:用div在移动端页面设置一个底部工具栏,css的代码大概如下: .tool{ width: 100%; height: 60px; position: fixed; left: 0px; b ...
- MAVEN:不能互相引用
工程A,工程B,工程C,这三个工程:C依赖B,B依赖A,这是没有问题的. 但是不能A依赖B,B又依赖A,这是不允许的.
- OS X 10.11:在exFAT分区的外置硬盘上使用Time Machine。
Time Machine默认需要使用HFS+分区的外置硬盘,但在网络硬盘上也可以使用单个的 .sparsebundle 镜像文件备份.在本地USB或Firewire等接口连接的外置硬盘,只有exFAT ...
- TimedSupervisorTask
啊啊啊 UnsupportedOperationException Lists.emptyLIst() . add (String[] ) 这他妈的不行.. .2017/09/13 16:42:16. ...
- mybatis-config.xml 模板
ssm模板 <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE configuration ...
- 5 个 Laravel Eloquent 小技巧
1. 快速生成 Model & Migration 这并不是一个很多人知道的小技巧,为文章生成 Model 和 Migration. $ php artisan make:migration ...
- LOJ 10138 -「一本通 4.5 例 1」树的统计
树链剖分模板题,详见这篇博客.
- git stash命令使用手册
修改记录压栈保存: git stash push -u -m "msg" // -u ~ --意思是包含未被跟踪的文件git stash push -m "msg&quo ...