第一章 绪论
1.1智能家居简介
在曾经不能满足温饱时,人们关注的重点是吃饱穿暖,社会重点是如何快速发展经济,随着温饱问题的解决,人们不在局限于自己动手,而是着手于解放人类,更加注重精神世界的发展,因此,曾经在我们想象中的许多假如都成了现实,例如,只用一个遥控器甚至利用手机软件就可以控制家里的电器、窗帘、照明等,这就是家居的智能化,是现代科技的必然产物。
智能家居为我们带来的不只是舒适、便利的生活环境,更是一种生活态度,使科技更加平易近人、融入生活。
1.2物联网简介
在如今的社会,各方面技术都急速发展,人们开始追求更高品质的生活,我们希望可以使人、物互相之间有更强的联系,也可以使我们更加便利地去利用其中的联系,因而出现了物联网来满足我们的需要。
互联网是一种将各地网络甚至全世界的网络连接在一起而形成的巨大网络,使我们可以通过各种设备如电脑、手机等连接网络后实现网上聊天、网络购物、共享资源等,但是互联网需要我们人类进行判断、操作来控制自己的设备以达到自己的需求。而物联网基于互联网的基础之上通过各种传感设备将物与物之间连接起来,使其可以自身进行智能感知,不需通过人体才能进行识别或者控制,使得物联网更加符合个人需要,操作方面也更加简洁便利。
随着物联网应用越来越广泛,生活中越来越离不开物联网,或许在许多你不知道的时刻都在享受着物联网带来的便利。如今智能家居大热,而智能家居就是利用物联网将各种电器设备连接起来并利用网络进行管理。我们利用各种传感设备进行感知并传达信号,家居用品加入网络连接,我们就可以实现家居的远程控制甚至是家居的自我控制。
在物联网发展的同时,由于传感器的大量应用,也加速了传感器的发展,当然,我们所说的传感设备不只是传感器,还有射频识别技术、激光扫描器、全球定位系统等,但在该设计中我们需要的传感设备仅用传感器已经可以满足我们的需要。
1.3 CC3200简介
SimpleLink wifi CC3200是德州仪器根据物联网的需要推出的,SimpleLink平台的出现是为了使物联网技术的应用更加便利,可以解决的范围更宽,其中的Internet-on-a-chip选项可以使嵌入式WIFI与互联网相结合并更加融入到各类电子产品中去,从而为开发设计者提供了更加广泛的发挥空间,同时可以减少成本与设计时间。
CC3200的特别之处主要体现在它是第一个有内置WIFI功能的无线微控制单元,并且集成了高性能的ARM Cortex-M4 内核,使用户可以使用单芯片方案来进行开发。
CC3200主要由三部分构成,分别是:
(1)应用微控制单元子系统
该子系统中使用ARM Cortex-M4 内核,其运行频率为 80MHz;系统中有一个嵌入式存储器,其中包括了内存容量高达256KB的用于代码和数据的灵活嵌入式随机存储器RAM以及用于外部串行闪存引导加载程序和外设驱动程序的只读内存ROM;具有32通道直接内存访问;具有极高的快速安全的硬件加密引擎,其中包括了各种加密方式,例如,使用最为广泛的数据加密算法DES、由DES逐渐加强得到的更安全的三重数据加密算法3DES以及更利于操作、更加快速运行的高级加密标准Rijndael加密法AES、安全散列算法SHA2、消息摘要算法MD5、循环冗余校验以及校验和;同时该系统也包含了许多外接设备,例如,有8位并行摄像头接口、1个支持两个I2S 通道的多通道音频串口接口、1 个 SD/MMC 接口、2个通用异步收发器、1 个串行外设接口SPI、1 个内部集成电路 I
(2)Wi-Fi 网络处理器子系统
该子系统中包含一个专用的ARM MCU,可以用于完全免除应用 MCU 的Wi-Fi 以及互联网协议的处理负担;有特有的Wi-Fi Internet-On-a-Chip、媒介访问控制、Wi-Fi 驱动器以及请求方;在外设上也有满足行业标准的BSD插槽应用编程接口;也具有强大的加密引擎,主要用于针对TLS和SSL连接的256位AES加密方式可以快速安全地连接Wi-Fi 和互联网;CC3200所支持的模式有基站、访问点和 Wi-Fi Direct模式,对于与 Wi-Fi 连接的 SimpleLink 连接管理器要求快速、安全、自主同时成立,而需要实现便捷的Wi-Fi服务就需要用到SmartConfig™ 技术、AP模式和WPS2。
(3)电源管理子系统
该子系统含有支持广泛电源电压范围的集成直流-直流转换器,该转换器支持2.1 至 3.6V 的VBAT 宽电压模式以及预稳压 1.85V 模式;在该系统可以开启高级低功耗模式,在该模式下支持实时时钟的休眠,所需电流少于4µA;该系统当处于低功耗深度睡眠时所需电流少于120µA;系统中的时钟源包含有内部振荡器的 40.0MHz 晶振以及32.768kHz 晶振或外部 RTC 时钟;该系统采用
第二章 总体设计
2.1总体设计要求
本设计主要是基于CC3200芯片进行设计、开发,以达到下面描述的目的,即通过CC3200芯片中的内置WIFI来使CC3200开发板连接到云端服务器,使二者之间可以完成信息的交互,手机控制端可以使用应用程序与云端服务器进行连接,以此来向服务端发出指令,同时服务器端还可以向手机控制端反馈信息并在手机上显示出来,这样我们就可以随时随地的查看发出的控制指令是否已经完成,或者完成到了什么程度。
基于 cc3200芯片的智能家居设计主要需要实现的功能及过程如下图所示,
图2-1 基于cc3200芯片的智能家居设计主要需要实现的功能及过程图
2.2软件设计部分概述
在基于CC3200的智能家居系统中,CC3200开发板实现的是发出指令来控制家居,而手机软件是智能终端,云端的服务器提供一个平台来使他们之间可以相互通信,从而达到控制与监控的目的。当我们在手机终端上发出指示,服务器将会收到我们所发出的控制信号,基于我们的设计是利用WIFI控制,所以此时CC3200的完整开发板电路上会通过WIFI连接到互联网,通过机智云的WiFi通讯模块程序,每隔一定时间就会向服务器发出请求,查看控制量是否已经完成,如果还未进行相应操作,此时便会发出响应,通过输出数字信号0和1以及输出PWM波控制电机来实现控制,如果已经完成相应动作,则不做处理。
2.3硬件设计部分概述
在此次设计中,我主要是负责硬件部分,因此下文将用比较大的篇幅来介绍硬件设计部分。在硬件设计中我们主要进行设计的部分有传感器部分、BoosterPack引脚接入部分、按键与指示灯、FTDI JTAG仿真部分、电源控制模块等,下文将逐一介绍。硬件部分功能图如下所示:
图2-2 硬件部分功能图
第三章 硬件设计
3.1传感器部分
传感器技术在如今社会应用十分广泛,不只在我们此次应用的智能家居方面,还可以用于医疗、交通、工业、生物工程等方面。
传感器的作用是把输入的各种非电物理量转换为电信号,由于输入量的多种类型、能量转化的多种方式、信号转换的各种过程 、输出信号的各种性质等导致了传感器的多种多样,就需要我们根据要求来选择合适的型号。在传感器的型号选择时,主要考虑灵敏度、精确度、检测极限范围以及抗干扰性。
本次智能家居的设计中传感器模块的设计分为加速度传感器的设计和温度传感器的设计。
(1)加速度传感器
在本次设计中选用的加速度传感器型号是BMA222,本设计中使用加速度传感器是为了应用于门锁装置。
BMA222是一种十分先进的加速度传感器,其先进性表现在许多方面,例如,①超薄:BMA222采用LGA封装,只有2 x 2 x 0.95㎜³的大小②三轴:BMA222允许被测量的加速度方向是相互垂直的,并因此可以感觉到各类倾斜、移动、撞击,即使是手机、平板电脑、计算机外设、游戏控制器的轻微振动也可以查觉到③低功耗:在最大速率的工作状态下,也只需要139μA的电流,节能状态下电流可降到 7μA或者1μA,同时最低电源电压仅为1.62V,最低I/O电压为1.2V④精确度高:BMA222具有±
BMA222的出现意味着加速度传感器的新时代的到来。BMA222集中了许多功能, 是高度可配置的,为它在许多领域的应用奠定了基础,给设计者提供了充分的灵活性和广泛性,电流的低消耗和高度的系统兼容性使得BMA222适用于各类移动电子设备,与此同时,BMA222具有集成的自测功能,提高了整个系统的可靠性。
BMA222有两种支持的操作模式,分别为数据流模式和中断发动机模式。①数据流模式:加速度数据是通过加速度传感器直接读出的数字并利用系统控制器进行计算,应用于处理器或者是基带处理器②中断发动机模式: BMA222中集成的可编程中断引擎已经将加速度数据计算完成。信号通过传感器的两个特定的管脚发生中断,相应寄存器也可以很容易通过数字传感器接口进行设置和读出。
BMA222的管脚排列方式和各管脚说明如下:
图3-1 BMA222的管脚排列方式图
表3-1 BMA222的管脚说明
管脚名称 |
说明 |
SDO |
SPI串行数据输出 |
SDx |
I²C / SPI串行数据输入/输出 |
VDDIO |
I / O电源电压 |
NC |
未连接 |
INT1 |
中断输出# 1 |
INT2 |
中断输出# 2 |
VDDA |
电源电压 |
GND IO |
IO接地 |
GND |
接地 |
CSB |
SPI芯片选择 |
PS |
协议选择管脚(0 = SPI,1 = I |
SCL/SCK |
SCL(I |
(2)温度传感器
本设计中选用的温度传感器型号是TMP006,用于需要测量温度的各种场合,例如温控窗帘。
TMP006 是德州仪器根据在微型电子机械系统上所获得的专业技术开发而成,是第一款尺寸小、耗能小而且成本低的新型红外温度传感器 。实现了全新市场及应用中的非接触式温度测量。
TMP006传感器使用热电堆来吸收被测量的对象所发出的红外能量,并利用相应热电堆电压的变化来确定该测量对象的温度。TMP006不仅提供了一个被动式红外传感器,并且包括了对所采集到信号的调节,在不与物体接触时就可以测量物体的温度。
TMP006采用的是WCSP封装即晶圆级芯片封装,是应用于便携式设备中的首款热电堆产品,采用低功耗设计,延长了电池寿命。
该传感器测量对象温度的范围是–
TMP006可以检测到将近180°的视野的信号,计算出的目标对象的温度是在一个集成信号传感器的视野中的,因此, TMP006的准确计算能力反映在测量出的目标温度取决于红外传感器从目标捕获大部分信号的能力。这个捕获能力取决于两个因素:入射角以及TMP006与目标之间的距离。
由此可知,当使用TMP006测量物体的温度时,有两个需要注意的测量约束,来确保测量时被测物体温度计算的准确性。两个主要的限制分别是:目标物体表面的发射率、TMP006的位置相对于目标的大小。
TMP006管脚排列方式和管脚说明如下所示:
图3-2 TMP006的管脚排列方式图
表3-2 TMP006的管脚说明
管脚名称 |
说明 |
DGND |
数字接地端 |
AGND |
模拟接地端 |
V+ |
正向电源输入 |
ADR1 |
地址选择引脚 |
SCL |
SMBus串行时钟线 |
ADR0 |
地址选择引脚 |
DRDY |
数据准备,低电平有效 |
SDA |
SMBus串行数据行 |
在工业生产和日常生活中我们经常需要根据不同情况对不同对象进行测量或者监控,尤其是现在各种尖端科技逐渐融入生活,我们对传感器的应用更加广泛了,测量和监控时也更加的依赖传感器。
无论在测量还是监控时,传感器都需要将所得到的信号通过放大处理成为更强的信号,而这种过程就是信号调理电路发挥作用的过程,也就是传感器电路。
对传感器电路的设计也由于使用环境、使用目的、传感器的型号等的不同而产生差异。在设计传感器电路时主要考虑以下几个方面:精确度、抗干扰性、稳定性、可调性等。
(1)加速度传感器电路原理图如下所示,
图3-3 BMA222加速度传感器电路原理图
(2)温度传感器电路原理图如下所示,
图3-3 TMP006温度传感器电路原理图
3.2 BoosterPack
使用BoosterPack 是为了扩展CC3200 LaunchPad的引脚至2x20 Pin,在使用时需要注意引脚不要接错或者接反,另外,还需要特别注意的是CC3200上对准VCC 5V的位置有一个白色的小三角形作指示。
40个引脚确切的连接信号分配如下表,P1-Pn的命名方式是只是用于2 x20管脚的连接器。 所有的信号是由SDK和图显示的默认映射的引脚数称。请注意,一些引脚被重复穿过连接器。例如,引脚59可在P1和P3使用,但只有P1默认连接,在P3的信号是标有*(星号)来表明它在默认情况下是没有连接的,这可以通过使用一个0Ω电阻路径路由到管脚。
表3-3 引脚信号分配表
|
P1 |
P3 |
P4 |
P2 |
||||
序列 |
连接管脚 |
信号分配 |
连接管脚 |
信号分配 |
连接管脚 |
信号分配 |
连接管脚 |
信号分配 |
1 |
Vcc |
3.3v |
5v |
5v |
P02* |
PWM |
GND |
GND |
2 |
P58 |
ADC_CH1 |
GND |
GND |
P01* |
PWM |
P18 |
GPIO |
3 |
P04 |
UARTO_RX |
P57 |
ADC_CH0 |
P17* |
PWM |
P8 |
SPI_CS |
4 |
P03 |
UARTO_TX |
P60 |
ADC_CH3 |
P64* |
PWM |
P45 |
GPIO |
5 |
P61 |
GPIO |
P58* |
ADC_CH1 |
P21* |
CCAP/GPIO |
|
RESET_OUT |
6 |
P59 |
ADC_CH2 |
P59* |
ADC_CH2 |
P18* |
CCAP/GPIO |
P07 |
SPI_DOUT |
7 |
P05 |
SPI_CLK |
P63 |
AUD_SYNC |
P62* |
GPIO |
P06 |
SPI_DIN |
8 |
P62 |
GPIO |
P53 |
AUD_CLK |
P60* |
GPIO |
P21 |
GPIO |
9 |
P01 |
I |
P64 |
AUD_DOUT |
P16 |
GPIO |
P55 |
GPIO |
10 |
P02 |
I |
P50 |
AUD_DIN |
P17 |
GPIO |
P15 |
GPIO |
BoosterPack的各管脚连接方式的电路原理图如下图所示。
图3-4 BoosterPack电路原理图
3.3按键
在开发板上需要三个按键,其中复位按键连接到了扩展引脚RESET_OUT上,因此可以重置所有与BoosterPack连接的外部可堆栈。对于三个按键详细信息见下表,
表3-4 按键详细信息
按键 |
名称 |
连接引脚 |
发挥作用 |
SW1 |
复位按键 |
RESET |
重置该CC3200芯片 |
SW2 |
用户按键 |
GPIO_22 |
按下高电平 |
SW3 |
用户按键 |
GPIO_13 |
按下高电平 |
三个按键的电路连接原理图如图所示,
图3-5 按键电路原理图
3.3 LED 灯
在设计中用到了六个LED灯,六个灯的详细信息如下,
D1是橙色的指示灯,用来表现是否连接系统复位信号端口nRESET,当信号灯亮时,代表设备处于重置状态,当信号灯熄灭后表示已经重置完成。
D2是绿色的指示灯,用来指示是否处于JTAG测试状态,当指示灯亮时,表示系统已经启用过JTAG调试
D4是红色的指示灯,用来指示是否有3.3v电源供电,当指示灯亮时,表示有3.3伏电源供应。
D5是绿色的指示灯,用来指示GPIO_11接口是否输出为逻辑1,如果输出是逻辑1时,指示灯亮;同时还作用于I
D6是黄色的指示灯,用来指示GPIO_10接口是否输出为逻辑1,如果输出是逻辑1时,指示灯亮;同时还作用于I
D7是黄色的指示灯,用来指示GPIO_09接口是否输出为逻辑1,如果输出是逻辑1时,指示灯亮。
六个灯在电路中的连接方式如下图所示,
图3-6 LED灯电路原理图
3.5 FTDI JTAG 仿真
在板子上有FTDI JTAG 仿真部分,在FTDI设备上有安装芯片FT2232D才使得这块开发板有了虚拟串口,而FT2232D芯片有两种连接方式,一种是连接到仿真的JTAG或者另一种是连接虚拟串口。