多功能智能家居控制模拟系统_第1页
多功能智能家居控制模拟系统_第2页
多功能智能家居控制模拟系统_第3页
多功能智能家居控制模拟系统_第4页
多功能智能家居控制模拟系统_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、多功能智能家居控制模拟系统指导老师:邓昌奇学生:机电 13-4 陈宝星功能简介: 该智能家居控制系统有如下功能: 1.时间日期显示2.室内蓝牙控制家电开关。3.室外通过发信息远程控制家电开关。4.定时控制家电开关。 5.定温控制家电开关。 6.火焰报警功能,检测到火焰发送信息到手机,蜂鸣器发出报警声,同时启动水泵。硬件构成: 1.以 51 单片机和 arduino 为控制中心, 因为要用到蓝牙和发信息两个串口中断,arduino 是有多个串口,但由于技术的问题,只能用两种控制芯片。arduino 芯片用于短程控制,51 单片机用于远程控制,继电器可通过并联引出两条线接到这两种芯片中去。2.Ds

2、1302实时时钟,作时间显示以及定时控制。3.Ds18b20温度传感器作定温控制。继电器多个,接到定制的插座上去,插座就可以接上220v 家电了。 4.蓝牙短距离控制, gsm 模块接收与发送信息。5.Lcd1602 液晶显示屏用于显示时间。6.充电宝用于给系统供电。7.火焰传感器,水泵,面包板。8.各种器件通过杜邦线或导线连接到芯片中去。效果演示说明:1.当系统接上电源时,lcd 中会显示时间日期。 2. 当我们用手机连接上系统的蓝牙, 就可以通过发相应的指令来控制插座上家电的开关。3.手机通过蓝牙发相应指令,lcd 上会显示定时的时间,到达指定时间家电会进行相应的开与关。4.用手接触温室传

3、感器,温度传感器温度上升,接到温度插座的风扇开启,当放开手时,温度下降,接到温度插座的风扇关闭。 5.gsm 模块已经把手机卡放进去,用手机发相应信息到该模块的卡上去,比如“kai1"或“guanl ”关掉与开。相应家电。6.由于多种调试中,火焰传感器中因为受到光和其他因素影响不怎么行,为此只能理想化。通过按键进行模拟有火灾情况,此时蜂鸣器会发出响声,同时水泵工作,从一边吸水,另一边喷水进行灭火。此外指定的手机会接收到一条信息 ” jialiyouhuozai ” 。实际作品演示视频网址:v.youku./v_show/id_XMTUzMDA2MTI1Mg=.html实际作品图说明:

4、整个作品图各部分详细说明图.部分代码说明:因为代码实在比较长,只能将部分重要代码展示出来如果有兴趣的可以到我的百度云盘下载完整代码进行研究,相应链接: pan.baidu./s/1c1XMaZI 密码: tqxrarduino 是开源的,里面关于一些传感器比较底层的库函数可以在网上找到,因此主要是写好主程序就行了,主程序主要调用库函数。液晶显示时间的函数: void print_time() Time t = rtc.time();/* 从 DS1302 获取当前时间 */memset(day, 0, sizeof(day); /* 将星期从数字转换为名称*/switch (t.day)cas

5、e 1: strcpy(day, "Sunday"); break;case 2: strcpy(day, "Monday"); break;case 3: strcpy(day, "Tuesday"); break;case 4: strcpy(day, "Wednesday"); break;case 5: strcpy(day, "Thursday"); break;case 6: strcpy(day, "Friday"); break;case 7: strcpy(

6、day, "Saturday"); break; snprintf(buf, sizeof(buf), "%s%02d%02d%02d", day, t.yr-2000,t.mon, t.date); snprintf(buf1, sizeof(buf1), " %02d:%02d:%02d"t,.hr,t.min, t.sec); /* 将日期代码格式化凑成buf 等待输出 */* 输出日期到串口 ,手机蓝牙可显示该时钟时间 */Serial.print(buf);Serial.print(buf1);lcd.setCursor(0

7、, 0) ;/ 设置光标位置为第 1 行第 1 个位置lcd.print(buf); / 使屏幕显示文字lcd.setCursor(0, 1) ;/ 设置光标位置为第 1 行第 1 个位置lcd.print(buf1); delay(500); / 使屏幕显示文字/ 延时定温处理函数:if(celsius>=176)/ 温度上升到一定值时digitalWrite(jidianqi,HIGH); / 相应定定温插座打开Serial.print("temperature digital:");Serial.println(celsius); wen=1; / 串口温度显示

8、,温度标志位置1else Serial.print("temperature digital:"); / 温度在一定比较低值时Serial.println(celsius);/ 串口显示温度值if(wen=1) / 温度在低值时且之前上升到高温退下来,关掉插座 digitalWrite(jidianqi,LOW); digitalWrite(led,LOW); wen=0;/ 蓝牙控制部分程序while(Serial.available()>0)/ 当蓝牙有指令接收时p=Serial.parseInt();/ 提取读取的数字if(Serial.read()='

9、x') 首个指令为x,比如x1为定时1分钟 if(p>=1&&p<=60)/1 到 60 为定时的时间分钟,程序只设1 个小时定时 shi=1;lcd.clear();b=1; / 作出相应处理 /*蓝牙指令打开或关闭相应电器,部分省略,比如 x61 为打开 jidianQi 电器 */else switch(p) case 61: digitalWrite(jidianqi,HIGH); break;case 62: digitalWrite(jidianqi,LOW);break;default: break; 发送短信部分程序, gsm 模块主要熟悉A

10、T 指令:if(a=1)/ 当火焰标志位为真,发短信 Uart1Sends("AT+CMGS="110rn");/ 此处修改为对方的电话号DelaySec(5);/延时3秒,为gsm模块更好反应过来Uart1Sends(sms_text);修改短信内容,smx_text 为字符串DelaySec(3);/延时3秒,为gsm模块更好反应过来Uart1Send(0x1a);发短信结束时要发的指令a=0; DelaySec(10); /延时20 秒结论: 整个智能家居控制模拟系统总体差强人意。 它还有些不足的地方, 比如没有把整个作品变得美观以让它变成一个产品可出售, 第二其中一些传感器受外境影响因素太大了, 火焰传感器会受光影响因此只能让它理想化仿真火焰报警功能, 关掉电源再次打开时钟有时会紊乱。 而市场上的智能

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论