基于物联网的室内环境检测云系统设计(树莓派RPI、Arduino、智能家居、RFID、APP)
4.项目完成的是一个完整的智能家居演示系统。树莓派解析Arduino传来的数据,上传至网络,同时将网络上传递来的控制信号传给Arduino,进行反向控制;3.代码实现简单,因为Python和Arduino提供了很多完善的开发库,大大缩短开发时间,而且所需的代码量实际上很小,根据Arduino的综合出的代码量来看,只有7612bytes(UNO一共最大可以32256byte的代码量);1.使用两大开
·
题 目: 基于物联网的室内环境检测云系统设计
关键词: 树莓派RPI、Arduino、智能家居、物联网
目录
摘要 2
- 引言 3
- 系统方案 3
- 系统硬件设计 6
1)Arduino介绍 6
2)DHT11温湿度 7
3)Relay&LED 8
4)RFID读卡器 8
5)显示屏LCD1602 8
6)树莓派RPI介绍 9
7)红外模块 10 - 系统软件设计 11
- 导入各个使用库和定义使用的管脚 12
- 初始化各个模块 12
- 对各个模块进行轮询,采集数据 13
- 红外收发模块lirc的安装(确保树莓派在联网状态) 13
2)利用python编程控制 14
3)HTTP请求响应与JSON格式 14
4)RPI上传数据与本地红外控制 15
d数据上传至网络平台 16
- 系统创新 17
- 评测与结论 18
附录 19
2.系统方案
项目使用目前火热的两大开源硬件树莓派RPI和Arduino,搭载温湿度传感器对环境进行实时感知,利用继电器模拟对家庭电器的开关控制,使用RFID读卡器对出入门禁进行管理,并利用显示模块进行显示。各个传感器采集的数据和状态信息实时通过路由器上传至网络上的物联网服务器平台。用户在本地,可以使用红外遥控器对电器进行控制;在远程环境下,通过电脑或移动终端,通过登录网页或者APP的形式,对数据进行实时监控。
项目使用的开发硬件是Arduino UNO R3,开发环境为 Arduino IDE,开发语言是Scratch;树莓派B+,开发语言为Python,上面搭建红外接收模块;服务器使用Coolpy,乐为,yeelink,机智云……目前网络上有很多免费的服务器平台,接口大都使用JSON格式的Http服务器请求响应,差异不大,都很容易接入网络。
项目应用场景如下图2-1所示。
图2-1 应用场景
1.使用两大开源硬件树莓派RPI与Arduino联合设计,结合它们的开发优势,制作成为智能家居网关的一个设计原型。
2.设计了RPI与Arduino之间串口通信的通信协议,系统可以很方便地进行功能扩展;
3.代码实现简单,因为Python和Arduino提供了很多完善的开发库,大大缩短开发时间,而且所需的代码量实际上很小,根据Arduino的综合出的代码量来看,只有7612bytes(UNO一共最大可以32256byte的代码量);
4.项目完成的是一个完整的智能家居演示系统。作为感知层的Arduino实时读取各个传感器的数据, 本文转载自http://www.biyezuopin.vip/onews.asp?id=11109将数据传输给RPI再上传给物联网平台;树莓派解析Arduino传来的数据,上传至网络,同时将网络上传递来的控制信号传给Arduino,进行反向控制;服务器实时显示上传的数据,用户可以随时随地接入服务器进行查询。
2)初始化各个模块
使能串口,将通信协议帧数据上传至树莓派RPI
DDRC|=_BV(DHT11_PIN);
PORTC|=_BV(DHT11_PIN);
pinMode(RELAY1,OUTPUT);
pinMode(RELAY2,OUTPUT);
Serial.begin(9600);
SPI.begin();
rfid.init();
lcd.init();
lcd.backlight();
lcd.print("Welcome to IOT !");
delay(1000);
lcd.clear();//clear the screen
lcd.print("Hum: %,Temp: C");
lcd.setCursor(0,1);
lcd.print("Hello, world!");
lcd.print("IOT");
//Serial.println("rfid dht11 Ready");
digitalWrite(RELAY1,HIGH);
digitalWrite(RELAY2,HIGH);








更多推荐

所有评论(0)