当前位置:文档之家› 物联网-智能家居基本设计能力综合实训报告

物联网-智能家居基本设计能力综合实训报告

物联网基本设计能力综合实训报告报告题目:基于Android的智能家居系统班级: B13512 所在分组:闭雨哲、丁文娟、李畅组员姓名:闭雨哲指导教师姓名:王兴会、王静完成时间: 2016年7月计算机与遥感信息技术学院目录第1章概述 (1)1.1 设计目的 (1)1.2 设计要求 (1)第2章系统设计 (2)2.1 系统功能框架 (2)2.2 功能模块说明 (3)第3章硬件设计 (6)3.1 蜂鸣器及接口设计 (6)3.2 气压传感器及接口设计 (6)3.3 XXXX传感器及接口设计 (7)第4章软件设计 (8)4.1 传输协议设计 (8)4.2 手机终端设计 (9)第5章系统测试 (12)5.1 采集测试 (12)5.2 手机端测试 (12)5.3 联调测试 (13)第6章总结 (14)第1章概述1.1 设计目的随着社会电子信息化的不断发展,人们在家居中使用的电器越来越多,由此带来的安全隐患也有了明显的增多。

在这些电器中一旦出现一些异常,便会给人们带来很大的损失。

为了降低电器的不合理使用带来的异常情况,就要求在异常发生时用户能及时得到信息,并通过实时监控采取一定的操作排除异常。

因此,远程监控系统的作用是非常巨大的。

此外,随着物联网的深入发展,智能家居越来越多的走进百姓家中,加上当前智能手机的发展趋势已经愈加明显,对于用户来讲,上网进行登陆,通过手机便可对家中情况进行远程控制与管控,十分方便。

再者,作为物联网专业的一名学生,通过一次“智能+硬件”的综合实训,对我们即将步入企业实为一次能量的大补给。

1.2 设计要求我们需要怎样智能的家?手机软件控制家居设备:WIFI模块——实时数据传输需网络支持照明模块——开/关,光照场景风扇模块——开/关,空气指数,如PM2.5高于某一个值,自动开启换风干燥模块——湿度控制,低于(或高于)某一个湿度,自动开启干燥空调模块——温度控制,低于(或高于)某一个温度,空调自动开启报警模块——危险(火警),接收(解除)报警压强海拔——可用于监控家中物品是否被恶意移动等小组分工:闭雨哲:Android界面设计、Android控制端模块设计与实现。

李畅、丁文娟:通信传输协议及硬件部分设计与实现。

第2章系统设计2.1 系统功能框架系统整体框架图及最终成品框架图如图2.1、图2.2所示。

图2.1图2.2系统工作原理整个系统分为软件控制单元和系统执行单元,我们通过智能家居的手机软件去控制硬件部分的执行,软件控制端与硬件执行端的每一个细分模块一一对应。

如图2.3所示。

图2.32.2 功能模块说明1.数据采集模块在计算机广泛应用的今天,数据采集的重要性是十分显著的。

它是计算机与外部物理世界连接的桥梁。

各种类型信号采集的难易程度差别很大。

(一)AM2320(数字温湿度传感器):对室内温湿度进行采集。

AM2320 通信方式采用单总线、标准I2C 两种通信方式。

标准单总线接口,使系统集成变得简易快捷。

超小的体积、极低的功耗,信号传输距离可达20 米以上,使其成为各类应用甚至最为苛刻的应用场合的最佳选择。

I2C 通信方式采用标准的通信时序,用户可直接挂在I2C通信总线上,无需额外布线,使用简单。

(二)BH1750(光照传感器):BH1750是基于IIC协议的器件,不同的工作环境,需要调整相关函数,当改用1T的MCU时,需调整此延时函数。

bh1750光照采集采用微控制器进行控制,利用I2C总线接口进行数据传输,可将光照强度传输到我们的控制输出端。

(三)bmp180(气压传感器):BMP180被设计成直接连接到经由I2C总线的移动设备的微控制器。

BMP180由一个压阻传感器,模拟- 数字转换器,并与E2PROM和一个串行I 2 C接口的控制单元。

该BMP180提供的压力和温度补偿的值。

E2PROM中已存储的个人校准数据的176位。

这是用于补偿偏移量,温度依赖性和传感器的其他参数。

微控制器发送一个启动序列启动压力或温度测量。

转换时间后,结果值(UP或UT)通过I2C接口进行读取。

2.无线传输模块无线传输有WIFI和蓝牙两种,我们采用的是WIFI传输。

wifi链接需要三个参数(wifi 名称)(wifi 密码)(wifi 类型)class Adminwifi{} 里封装了打开、关闭,连接、断开的方法WIFI链接整体流程如下:1.checkNetworkState() -------------- //判断当前网络是否已连接2.WifiOpen() ---------- //如果当前WiFi处于关闭状态,则打开WiFi3.wifi_init() --------- //wifi初始化获取周边wifi信息并列出条目4.CreateWifiInfo(wifi_name,"",wifitype) ---//进行WiFi匹配并连接5.WifiClose() ----------------------------------- //关闭wifi3. 手机终端模块整个项目的手机终端模块包括:(一)Wifi · Activity - Wifi搜索与连接模块(二)Led ·Activity - 灯光照明控制模块(三)Fan ·Activity - 风扇控制模块(四)Data ·Activity - 温湿度、光照、海拔、压强等信息采集模块(五)First ·Activity - 初始界面,停顿一会则自动跳转到下一个界面模块图2.4 灯光照明控制模块与初始界面图图2.5 风扇控制模块与温湿度光照等信息模块图第3章硬件设计A硬件信息1、LZ_STM32F103开发板2、J-linkV8或J-linkV9仿真器一套B软件信息1、Keil开发环境,版本:5.172、J-link V4.93.1 蜂鸣器及接口设计如图2.6 蜂鸣器及接口设计原理图。

图2.6 蜂鸣器及接口设计原理图3.2 气压传感器及接口设计如图2.7 气压传感器BMP180原理图。

图2.7 气压传感器BMP180原理图3.3 光照传感器传感器及接口设计如图2.7光照传感器BH1750原理图。

图2.8光照传感器BH1750原理图第4章软件设计4.1 传输协议设计1. android 手机和开发板通过蓝牙/ wifi 进行连接2. 一般通信中都要规定主机与从机3. 本系统中:手机端是主机开发板是从机4. 通信系统中,进行一次通信都是有主机发起,从机不能发起一次通信,蓝牙/wifi 组成的网络中,从机要有地址,5. 主机发起一次通信,主机发送命令,从机去相应主机的命令第一次通信:主机-> 从机第二次通信:主机<- 从机以上是一次通信过程6. 暂定协议如下:(a).主机查询从机是否在线主机-> 从机包头|命令类型| 包尾0xaa 0x01 查询从机0xbb从机接收到这个命令后,可以返回从机的状态主机<- 从机包头| 从机状态| 包尾0xcc 0x01 busy 0xdd0x02 read / OK0x03 error(b). 主机读从机的数据信息主机-> 从机包头|命令类型| 包尾0xaa 0x02 读从机数据0xbb主机<- 从机包头| 命令类型|数据长度|数据.. |包尾0xcc | 0x02 字节数字节1,字节2,字节3,字节4,字节N 0xdd例如:主机读从机:(返回数据温度2字节,湿度2字节,大气压2字节,海拔2字节,pm2.5 2字节,光强2字节,adc电压2字节)发送命令:0xaa 0x02 0xbb返回的数据:0xbb 0x02 0x0e 温度高位温度低位湿度高位湿度低位大气压高位大气压低位海拔高位海拔低位PM2.5 高位PM2.5低位adc高位adc低位0xdd(c). 主机写从机命令主机-> 从机包头|命令类型| 数据长度| 数据.. | 包尾0xaa 0x03 写从机| 字节数|字节1,字节2,字节3,字节N 0xbb 从机返回主机写的内容主机<- 从机包头|从机执行命令状态| 包尾0xcc 0x 11 从机执行命令OK0x 12 命令错误0x 13 系统busy例如:发送命令:0xaa 0x03 0x4 led1开关led2开关beep开关fan开关0xbb返回数据:0xcc 0x11 0xdd 命令执行ok0xcc 0x12 0xdd 命令执行错误0xcc 0x12 0xdd 系统忙4.2 手机终端设计第5章系统测试5.1 采集测试对数据采集测试来说,精度是反映一个数据采集设备读入的信号测量值有多大程度的可能性。

测量误差分析与试验数据处理是实验中的重要部分,误差分析也是实验的基础。

不精确的测量可能会使开发项目与方案设计及产品质或自动化测试应用等费工费时全功尽弃,因此确保数据采集系统的精确也是我们评估设计方案的一个主要方式。

我们的采集测试工作主要集中在开发板的测试上,毕竟开发板才是数据的来源。

首先是测试开发板温湿度等模块烧写的代码准确性,程序是否有Bug、输出数据精度是否符合用户的标准,然后将数据输出到串口助手进一步在屏幕打印出来,我们将观察这些数据是否有误并进行代码修改等操作。

在我们的项目中,数据精度是一个比较重要的问题,因为数据存储不支持小数的形式,可通过乘以10得整数进行输出,进而避免这个问题。

5.2 手机端测试手机端的测试相比采集端的测试可通过Android 开发软件和手机段程序运行观测。

各模块的功能能正常点开关闭不出现EROOR就说明问题就不大了,接下来就是与硬件相关模块进行联调测试。

下面是手机端的测试结果图,可顺利打开系统模块与进行WIFI连接。

图5.1 手机端模块测试5.3 联调测试经过上面两个步骤的测试,我们就可以做整体项目的联调了,先来看看光照的测试,如图5.2所示。

图5.2 灯光照明模块开关测试可见光照模块是成功的,接下来测试温湿度、光照强度、压强和海拔模块也是成功的,测试结果如图5.3所示。

图5.3 环境监测图第6章总结在这二十天的高强度训练里,我们主要是运用Android系统与开发板设计了一个智能家居系统,并且用模块化的设计方法来实现各个。

在程序编写结束后,我们还对该程序进行了调试, 能按预期的效果进行模拟,基本完成课程设计的要求。

综上所述,本次实训通过对智能家居及其功能的介绍,展示智能家居的现代生活中的重要性。

实训过程中遇到不少的难题,比如对Android开发的学习周期短,还不熟悉API的使用,像只忙头苍蝇、硬件与软件间的传输协议是一大难题,数据间的传输转换与数据传输前后的格式也需要细细的理解等等,遇到这么多问题的同时,自己也不放弃不气馁,虚心踏实的请教老师和同学,最终解决了难点,完成了实训任务。

相关主题