欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > DOCX文档下载  

    关于物联网的环境实时监测与控制系统.docx

    • 资源ID:3310083       资源大小:45.97KB        全文页数:26页
    • 资源格式: DOCX        下载积分:6.99金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要6.99金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    关于物联网的环境实时监测与控制系统.docx

    关于物联网的环境实时监测与控制系统物联网基本设计能力综合实训报告 报 告 题 目:面向物联网的实时 环境监测系统 班 级: 所 在 分 组: 三人组 组 员 姓 名: 指导教师姓名: 完 成 时 间:XX年7月 计算机与遥感信息技术学院 物联网基本设计能力综合实训报告 目 录 第1章概述 . 1 1.1 设计目的 . 1 1.2 设计要求 . 1 1.3 任务分工 . 2 第2章系统设计 . 3 2.1 系统功能框架 . 3 2.2 功能模块说明 . 3 第3章硬件设计 . 5 3.1 蜂鸣器及接口设计 . 5 3.2 LED灯及接口设计 . 5 3.3 风扇及接口设计 . 6 3.4 温湿度及接口设计 . 7 3.5 气压传感器及接口设计 . 8 3.6 光照度传感器及接口设计 . 10 第4章软件设计 . 11 4.1 传输协议设计 . 11 4.2 手机终端设计 . 18 4.2.1界面结构 . 18 4.2.2 界面设计 . 18 4.2.3 手机终端总结 . 19 第5章系统测试 . 20 5.1 采集测试 . 20 5.2 手机端测试 . 20 5.2.1 测试简述 . 20 5.2.2 流程测试 . 20 5.3 联调测试 . 23 第6章总结 . 24 物联网基本设计能力综合实训报告 第1章概述 1.1 设计目的 家居智能化在中国的应用已经有一段时间了,但是大多数的智能家居系统仍然适用于别墅、洋房、公寓等高级住房。在世界上人口最多的国家,移动电话的应用也是非常的普及,所以手机智能家居系统软件将最终成为智能家居系统中的主流产品。 对于智能家居产品,第一印象便是便捷,通过一个小小的手机,便可随时掌握、控制家里的所有常用家电设备,包括:灯光、窗帘、电器、空调、地暖、新风等,甚至天气预报,室内温湿度显示等,这才是未来理想智能家居的必需品。随着各种基于3G和WIFI功能的智能产品逐步应用于人们的生活中,方便直观触摸操作的移动触摸智能控制终端诸如Android、iPhone、ipad等,必将成为智能家居未来的发展趋势。 掏出你的手机按几个键,让智能家居就在指尖的滑动中变为现实,来实现家居智能化的实际操作和应用。例如,我们通过手机来控制他们的家居照明,空调,监控摄像头,电视机,DVD,以及更多。当我们试图找到遥控器打开这些设备时,你可以考虑使用手机来进行相关的操作了。 然而,在物联传感智能家居中,有更多的应用。比如: 1.如果你在工作的时候,你可以使用移动探测器警报通知您,当您的孩子从学校回家。你甚至可以切换到有监控摄像头的房子,看到他们。 2.假如你回家较晚,您可以通过手机轻松地打开你的前廊灯。 3.下班前你可以通过手机打开家中的空调设备,设置好适应的温度,然后再开车回家。 4.如果你在休假在外的时候,你可以打开家中的某一盏电灯,使它看起来像家中有人。你也可以开启你房间内的安防监控系统,以确保家中的安全。 5.为了提高安全性和警惕性,当您进家前,可以使用使用“打开室内所有灯光”按钮。 6.通过手机来控制家中视频/音频设备。然后通过手机观看或收听家中的视频或音频。 7.如果有小偷闯入你的房子,而你不在家,红外报警探测器会发出警报,你可以看到通过监控摄像头找到小偷的踪迹。现在,您可以使用声光报警器来驱赶和震慑他。 本系统结合以上物联网新型概念,实现用户通过网络对家中情况的实时监控。该系统可以使用户能够对家庭内部情况进行实时的掌握以及控制。通过各种传感器获取家庭内信息,用户在Android界面上可以对这些信息进行掌控。 1.2 设计要求 设计需实现利用多个传感器采集环境数据,并将信息通过蓝牙传输到手机上,手机可以实时显示数据以及对执行器的控制。 第1页 物联网基本设计能力综合实训报告 1.3任务分工 第2页 物联网基本设计能力综合实训报告 第2章 系统设计 2.1 系统功能框架 手机 传感器信息 控制信息 气压模块 光强模块 温湿度模块 STM32 F103C8 执行单元 蜂鸣器 LED灯 风扇 2.2 功能模块说明 1数据采集模块 数据采集模块分三个部分,温湿度数据采集,气压海拔数据采集,光照度数据采集。 温湿度的数据采集应用温湿度传感器AM2320可以比较精准的采集到温度和湿度的信息。气压海拔的数据采集用BOSCH公司的BMP180传感器,较为准确快速的测量气压,海拔数据。光照度应用BH1750光强传感器来采集光强信息。 第3页 物联网基本设计能力综合实训报告 2无线传输模块 无线传输模块使用TI公司的CC2451蓝牙芯片,通过蓝牙模块实现传感层和手机应用控制层通信。本系统通信不需要太大的通信速率,所以采用蓝牙BLE,其特点是功耗低,速度低。通信模式为串口透传,通过AT指令配置蓝牙为串口透传模式。串口波特率为57600. 3. 手机终端模块 调用系统蓝牙服务结合数据采集模块以及传输协议接收传感器数据,发送命令,将接收到的传感器数据处理得到各种环境参数。进行Android应用设计显示各个环境参数并控制各个执行器。 第4页 物联网基本设计能力综合实训报告 第3章 硬件设计 3.1 蜂鸣器及接口设计 蜂鸣器的控制主要通过控制其与单片机相连的引脚的高低电平来实现,高电平 void Buzzer_Init(void) 蜂鸣器初始化函数,即初始化相关引脚。 void Buzzer_Cont(u8 com) /蜂鸣器控制 蜂鸣器控制函数,即接口函数,通过调用此函数来控制蜂鸣器的开关。 if(com) else BUZZER(OFF); BUZZER(ON); GPIO_InitTypeDef GPIO_InitSturcture; /定义GPIO结构体 RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE); /使能GPIOB时钟 GPIO_InitSturcture.GPIO_Pin = GPIO_Pin_13; /定义引脚 GPIO_InitSturcture.GPIO_Speed = GPIO_Speed_50MHz; /引脚频率 GPIO_InitSturcture.GPIO_Mode = GPIO_Mode_Out_PP; /推挽输出 GPIO_Init( GPIOC, &GPIO_InitSturcture); GPIO_SetBits(GPIOC, GPIO_Pin_13); 蜂鸣器关,低电平蜂鸣器开。 3.2 LED灯及接口设计 LED灯的控制主要通过控制其与单片机相连的引脚的高低电平来实现,高电平 LED灯关,低电平LED灯开。 void LED_Init(void) GPIO_InitTypeDef GPIO_InitSturcture; /定义GPIO结构体 RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE); /使能GPIOB时钟 第5页 物联网基本设计能力综合实训报告 GPIO_InitSturcture.GPIO_Pin = GPIO_Pin_8 |GPIO_Pin_9; /定义引脚 GPIO_InitSturcture.GPIO_Speed = GPIO_Speed_50MHz; /引脚频率 GPIO_InitSturcture.GPIO_Mode = GPIO_Mode_Out_PP; /推挽输出 GPIO_Init( GPIOB, &GPIO_InitSturcture); GPIO_SetBits(GPIOB, GPIO_Pin_8 |GPIO_Pin_9); LED灯初始化函数,即初始化相关引脚。 void LED_Cont(u8 com) /LED灯控制 LED灯控制函数,即接口函数,通过调用此函数来控制LED灯的开关。 if(com) else LED1(OFF); LED2(OFF); LED1(ON); LED2(ON); 3.3 风扇及接口设计 风扇的控制主要通过控制其与单片机相连的引脚的高低电平来实现,高电平 void Fan_Init(void) GPIO_InitTypeDef GPIO_InitSturcture; /定义GPIO结构体 RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE); /使能GPIOB时钟 GPIO_InitSturcture.GPIO_Pin = GPIO_Pin_5; /定义引脚 GPIO_InitSturcture.GPIO_Speed = GPIO_Speed_50MHz; /引脚频率 GPIO_InitSturcture.GPIO_Mode = GPIO_Mode_Out_PP; /推挽输出 第6页 风扇关,低电平风扇开。 物联网基本设计能力综合实训报告 GPIO_Init( GPIOB, &GPIO_InitSturcture); GPIO_SetBits(GPIOB, GPIO_Pin_5); 风扇初始化函数,即初始化相关引脚。 void Fan_Cont(u8 com) /风扇控制 风扇控制函数,即接口函数,通过调用此函数来控制LED灯的开关。 if(com) else FAN(OFF); FAN(ON); 3.4 温湿度及接口设计 温湿度传感器AM2320采用I2C通信协议与单片机进行通信,AM2303的驱动需要单片机给他发一些初始化指令才能正常工作,初始化过程为: 步骤一:唤醒传感器 起始信号+0xB8+等待(>800us)+停止信号 START+0xB8+0x03(功能码)+0x00(起始地址)+0x04(寄存器长度)+STOP 0x03(功能码)+0x04(数据长度)+0x03(湿度高位)+0x39(湿度低位)+0x01(温度高位)+0x15(温度低位)+0xE1(CRC 校验码低字节)+ 0xFE(CRC 校验码高字节); 步骤四:计算数据 0339H = 3×256+3×16+9 = 825 =>湿度= 825÷10=82.5%RH; 0115H = 1×256+1×16+5 = 277 =>温度= 277÷10=27.7。 void AM2303_Info_Coll(void) /温湿度传感器数据采集 unsigned char Huniture_Buffer8 = 0; Waken; AM2320_Write; delay_ms(2); 第7页 步骤二:发送读指令或发送写指令 步骤三:读返回数据或确认信号 物联网基本设计能力综合实训报告 将采集封装为AM2303_Info_Coll温湿度采集函数接口,在系统中调用此函数,讲数据存入信息数组,随后将收集好所有信息的数组通过蓝牙发往手机。 AM2320_Read( Huniture_Buffer,8); All_Info0 = (float)(Huniture_Buffer4*256+Huniture_Buffer5)/10.0; All_Info1 = (float)(Huniture_Buffer2*256+Huniture_Buffer3)/10.0; 3.5 气压传感器及接口设计 气压传感器BMP180同样采用I2C协议通信,微控制器发送一个启动序列启动压力或温度测量。转换时间后,结果值可通过I2C接口读取。用于计算温度并在帕斯卡的压力,该校准数据已被使用。这些常数可以从BMP180 E2PROM通过在软件初始化I2C接口被读出。 采样率可以提高到128个样本每秒,用于动态测量。在这种情况下,它足以对测量温度只有每秒一次,在同一期间使用该值对于所有的压力测量。采集流程图为: 第8页 物联网基本设计能力综合实训报告 通过I2C对特定的BMP180寄存器进行读写,可以对气压进行测量: 下图显示了详细的算法对压力和温度测量。 第9页 物联网基本设计能力综合实训报告 void BMP180_Info_Coll(void) /气压传感器数据采集 将采集封装为BMP180_Info_Coll气压、海拔采集函数接口,在系统中调用此函数,讲数据存入信息数组,随后将收集好所有信息的数组通过蓝牙发往手机。 extern long result_UT; float altitude; bmp180Convert; altitude=44330.0*(1-pow(float)result_UP/101325,1/5.255); All_Info2 = result_UP; All_Info3 = altitude; extern long result_UP; 3.6 光照度传感器及接口设计 光照度传感器BH1750也是通过I2C总线进行通信,单片机通过I2C总线向BH1750发送一系列配置指令使BH1750正常工作,再通过I2C总线读取光照度数据。此过程为: 1.MCU发送通电指令. 2.MCU发送连续测量指令(0x11). 3.延时. 4.MCU读取测量数据. 5.对测量数据进行处理 下图为指令集: 第10页 物联网基本设计能力综合实训报告 void BH1750_Info_Coll(void) /光照度传感器数据采集 将采集封装为BH1750_Info_Coll光照采集函数接口,在系统中调用此函数,讲数据存入信息数组,随后将收集好所有信息的数组通过蓝牙发往手机。 float illumination = 0; illumination = Read_BH1750; All_Info4 = illumination; 第4章 软件设计 4.1 传输协议设计 协议说明 数据包头 命令 分片标志 数据 包尾 第11页 物联网基本设计能力综合实训报告 数据包头 1字节 命令 1字节 分片标志 1字节 数据 n字节 包尾 2字节 主机->从机: 包头:0xaa 包尾:0x0d 0x0a 命令:0x01 查询从机状态 0x02 数据请求 0x03 控制命令 发送信息示例: 查询命令:0xaa | 0x01 | 0x00 | 0x0d 0x0a 数据请求:0xaa | 0x02 | 0x00 | 0x0d 0x0a 控制命令:0xaa | 0x03 | 0x00 | 0x01 | 0x00 | 0x0d | 0x0a (字节编号从0开始)字节3为执行器 字节4为执行器的开关 从机->主机: 包头:0xbb 包尾:0x0d 0x0a 命令:0x01 就绪 0x02 忙 0x03 出错 0x11 命令执行成功 0x12 忙 0x13 命令执行出错,命令不存在 发送信息示例: 第12页 物联网基本设计能力综合实训报告 0xbb | 0x01 | 0x01 | data | 0x0d 0x0a 0xbb | 0x11 | 0x00 | 0x01 | 0x00 | 0x0d 0x0a (字节编号从0开始)字节3为执行器 字节4为执行器的状态 /包头 #define HOST_TO_SLAVE_H 0xaa /主机->从机 包头 #define SLAVE_TO_HOST_H 0xbb /从机->主机 包头 #define MESSAGE_TAIL_F 0x0d /包尾结束标志 0x0d 0x0a #define MESSAGE_TAIL_B 0x0a #define DIVIDE_ENABLE 0x01 /有分片 #define DIVIDE_DISABLE 0x00 /无分片 /主机->从机 命令 #define HOST_CMD_CHECK 0x01 /查询从机状态 #define HOST_CMD_READ 0x02 /读取从机数据 #define HOST_CMD_WRITE 0x03 /向从机中写入数据 /从机->主机 从机状态命令 #define SLAVE_STA_READY 0x01 /从机准备就绪 #define SLAVE_STA_BUSY 0x02 /从机忙 #define SLAVE_STA_ERROR 0x03 /从机出错 /从机->主机 从机执行状态命令 #define SLAVE_EXU_SUCCE 0x11 /命令执行成功 #define SLAVE_EXU_BUSY 0x12 /从机忙 #define SLAVE_EXU_ERROR 0x13 /命令执行出错,命令不存在 /执行器 #define LEDCONTROL 0x01 #define BEEPCONTROL 0x02 #define FANCONTROL 0x03 #define ONSTATE 0x01 /开 第13页 物联网基本设计能力综合实训报告 #define OFFSTATE 0x00 /关 #define MES_HEAD_LEN 3 /包头长度 #define MES_TAIL_LEN 2 /包尾长度 enum MixData TMPH, TMPL, /温度 HUMH, HUML, /湿度 PRETH,PRETL, / bmp1750 ut PRESH, PRESL, / bmp1750 up LIGH, LIGL, /光强 PRE_REG_AC1H, PRE_REG_AC1L, /bmp1750 ac1-ac6,b1,b2,mb-md PRE_REG_AC2H, PRE_REG_AC2L, PRE_REG_AC3H, PRE_REG_AC3L, PRE_REG_AC4H, PRE_REG_AC4L, PRE_REG_AC5H, PRE_REG_AC5L, PRE_REG_AC6H, PRE_REG_AC6L, PRE_REG_B1H, PRE_REG_B1L, PRE_REG_B2H, PRE_REG_B2L, PRE_REG_MBH, PRE_REG_MBL, PRE_REG_MCH, PRE_REG_MCL, PRE_REG_MDH, PRE_REG_MDL, TOTAL_DATA ; 值 值 的值 externunsignedchar All_Info_CharTOTAL_DATA; /信息数组,将传感器采集的信息放入此数组中,存储次序为上方的MixData表 int messageAnalysis(u8 USART_RX_BUFUSART_REC_LEN); /报文解析 void slaveState; void slaveSendM; void slaveRecM(u8 USART_RX_BUFUSART_REC_LEN); int messageAnalysis(u8 USART_RX_BUFUSART_REC_LEN) /报文解析 第14页 物联网基本设计能力综合实训报告 if(USART_RX_STA&0x8000) /当包尾为0d 0a时进行处理 if(USART_RX_BUF1 = HOST_CMD_CHECK) slaveState; USART_RX_STA = 0; elseif(USART_RX_BUF1 = HOST_CMD_READ) slaveSendM; USART_RX_STA = 0; elseif(USART_RX_BUF1 = HOST_CMD_WRITE) slaveRecM(USART_RX_BUF); USART_RX_STA = 0; else USART_RX_STA = 0; void slaveState unsignedchar message7 = 0; message0 = SLAVE_TO_HOST_H; message1 = SLAVE_EXU_SUCCE; message2 = DIVIDE_DISABLE; message5 = MESSAGE_TAIL_F; message6 = MESSAGE_TAIL_B; message3 = LEDCONTROL; /执行器 message4 = LedState; /状态 USART_SendMessage(USART3, message, 7); delay_ms(50); message3 = BEEPCONTROL; message4 = BeepState; USART_SendMessage(USART3, message, 7); delay_ms(50); message3 = FANCONTROL; message4 = FanState; 第15页 物联网基本设计能力综合实训报告 USART_SendMessage(USART3, message, 7); delay_ms(50); void slaveSendM /从机向主机发送信息 int i = 0,j = 0, len; volatileint k = 0; int totaldata = TOTAL_DATA; unsignedchar messageTOTAL_DATA+MES_HEAD_LEN+MES_TAIL_LEN = 0; for(i = 0; i < TOTAL_DATA / 15; i+) /分片,每片最多20字节 message0 = SLAVE_TO_HOST_H; message1 = SLAVE_STA_READY; message2 = DIVIDE_ENABLE; for(j = MES_HEAD_LEN; j <15 + MES_HEAD_LEN; j+, k+) messagej = All_Info_Chark; message18 = MESSAGE_TAIL_F; message19 = MESSAGE_TAIL_B; USART_SendMessage(USART1, message, 20); delay_ms(10); len = k; message0 = SLAVE_TO_HOST_H; message1 = SLAVE_STA_READY; message2 = DIVIDE_DISABLE; for(j = MES_HEAD_LEN; j < TOTAL_DATA+MES_HEAD_LEN - k; j+, k+) messagej = All_Info_Chark; messageTOTAL_DATA+MES_HEAD_LEN+MES_TAIL_LEN -len-2 = MESSAGE_TAIL_F; messageTOTAL_DATA+MES_HEAD_LEN+MES_TAIL_LEN - 1-len = MESSAGE_TAIL_B; 第16页 物联网基本设计能力综合实训报告 USART_SendMessage(USART1, message, TOTAL_DATA+MES_HEAD_LEN+MES_TAIL_LEN - len); void slaveRecM(u8 USART_RX_BUFUSART_REC_LEN) / USART_SendMessage(USART3, "ok3", 3); unsignedchar message7 = 0; if(USART_RX_BUF3 = LEDCONTROL) LED_Cont(USART_RX_BUF4); LedState = USART_RX_BUF4; message1 = SLAVE_EXU_SUCCE; elseif(USART_RX_BUF3 = BEEPCONTROL) Buzzer_Cont(USART_RX_BUF4); BeepState = USART_RX_BUF4; message1 = SLAVE_EXU_SUCCE; elseif(USART_RX_BUF3 = FANCONTROL) Fan_Cont(USART_RX_BUF4); FanState = USART_RX_BUF4; message1 = SLAVE_EXU_SUCCE; else message1 = SLAVE_EXU_ERROR; message0 = SLAVE

    注意事项

    本文(关于物联网的环境实时监测与控制系统.docx)为本站会员(小飞机)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开