项目简介
本项目基于Arduino构建智能家居系统,集成了DHT传感器、实时时钟、OLED显示屏等多种设备。借助SPI通信协议,系统能把采集的温度、湿度数据从Mega2560传输到MKRWiFi1010,并发送至ThingSpeak服务器存储与分析。用户可在本地通过显示屏查看环境数据和时间,还能通过按键切换显示内容。此外,系统具备门禁功能,可读取卡片并控制门的开关。
项目的主要特性和功能
- 环境参数监测:利用DHT传感器实时监测温度和湿度。
- 数据显示:通过OLED显示屏展示温度、湿度和当前时间,可按键切换显示内容。
- 远程数据传输:借助MKRWiFi1010模块和SPI通信,将环境数据发送到ThingSpeak服务器,实现远程监控和数据分析。
- 门禁控制:读取卡片信息,卡片匹配时开门。
- 内外环境模拟:增加额外的MKRWiFi1010和DHT11模拟室内外环境。
- 消息特性测试:对MQTT的retain和will特性进行测试。
安装使用步骤
- 准备硬件:准备Mega2560开发板、MKRWiFi1010模块、DHT11传感器、OLED显示屏、实时时钟模块、卡片读取器、按键、连接线、电平转换器等。
- 安装库:在Arduino IDE中安装以下库:
- Mega2560所需库:Arduino、SPI、Wire、Adefruit_BusIO、Adafruit_GFX_Library、Adafruit_SSD1306、Adafruit Unified Sensor、DHT sensor library。
- MKRWiFi1010所需库:Arduino、WiFiNINA、ThingSpeak、SercomSPISlave。
- 硬件连接:
- MKRWiFi1010的SPI连接:MISO接pin 10,SCK接pin 9,MOSI接pin 8,SS接pin 7,与Mega2560共地,并使用电平转换器。
- Mega2560的SPI连接:MISO接pin 50,SCK接pin 52,MOSI接pin 51,SS接pin 53,与MKRWiFi1010共地,并使用电平转换器;显示屏SDA接SDA pin,SCL接SCL pin,VCC接5v,GND接ground;时钟SDA接SDA pin,SCL接SCL pin,VCC接5v,GND接ground;DHT11信号接pin 2,VCC接5v,GND接ground;按键一脚接ground,另一脚接pin 3。
- 编写并上传代码:根据项目需求编写Arduino程序,然后将代码分别上传到Mega2560和MKRWiFi1010。
- 系统测试:测试系统各项功能,如环境数据显示、远程数据传输、按键切换显示、门禁控制等是否正常工作。
- 远程监控:登录ThingSpeak服务器,查看和分析上传的环境数据。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】