硬件
- 板子:带有分支板的NodeMCU V3(ESP8266 ESP-12E)
- 电源:分支板上的7.5V 1A(依次提供5V和3.3V电源)
- LCD 16x2显示器(I2C)(地址可能是0x27或0x3F;所需的电源可能是3.3V或5V)
- BH1750FVI(GY-30或GY-302)光传感器(I2C)(3.3V)
- MPU-6050 3轴加速度计/陀螺仪(I2C)(3.3V)
- DHT22温湿度传感器(5V)
- HC-SR04P超声波传感器(3.3V)(非P版本也可以使用,但需要5V电源)
- MQ2气体传感器(5V)
- 有源压电蜂鸣器(可通过低电压触发)(3.3V)
- 红色LED
- 继电器模块(5V)
软件
- NodeMCU V3的CH340G USB芯片驱动程序:http ://www.wch-ic.com/downloads/CH341SER_EXE.html
- MicroPython固件:v1.12 https://micropython.org/download (您可以使用PyFlasher 刷新固件)
- 我选择的编辑是Thonny 。
- LCD 16x2库:https : //github.com/dhylands/python_lcd
- MPU-6050库:https : //github.com/adamjezek98/MPU6050-ESP8266-MicroPython
- BH1750库:https : //github.com/catdog2/mpy_bh1750fvi_esp8266
- HC-SR04库:https : //github.com/rsc1975/micropython-hcsr04
功能
启动时将连接到您的WiFi路由器。如果此后连接断开,则主板将自行重启。
LCD显示亮度(以勒克斯为单位的照度),温度(摄氏度),湿度(%)和MQ2的模拟读数,每2秒更新一次。
当您在房屋前面时,LCD的背光灯会打开(由超声波传感器检测)。
开发板每10秒钟通过IFTTT的Webhook API 将温度,湿度和MQ2读数传输到我的Google云端硬盘中的Google电子表格。(该服务允许您同时发送3个数据。)API也会记录时间。
如果房屋倾斜3度以上,将触发蜂鸣器。摇房子可以达到同样的效果。(地震/防盗警报。)
如果MQ2读数超过700,也会触发蜂鸣器。(烟雾警报。尽管我不知道阈值应该有多高。)
来自:https://www.hackster.io/alankrantas/sim ... 266-d83f8e