基于Wemos D1 mini Pro与MicroPython的温室环境监控系统搭建指南

发布时间:2026/6/4 13:53:37

基于Wemos D1 mini Pro与MicroPython的温室环境监控系统搭建指南 1. 项目概述与核心价值如果你有一个后院的小温室或者对阳台种植感兴趣那么你肯定遇到过这样的困扰每天要手动检查土壤干了没、温度高了还是低了出门几天更是提心吊胆。传统的环境监控要么依赖昂贵的专业设备要么就是纯靠经验数据既不连续也不精准。这正是物联网技术可以大显身手的地方。今天分享的这个项目就是我自己动手搭建的一套低成本、高灵活性的温室传感器数据采集系统。它的核心是利用一块叫做Wemos D1 mini Pro的开发板配合MicroPython这门对新手极其友好的编程语言把土壤湿度、空气温湿度这些关键环境参数实时采集上来并自动发送到家庭自动化服务器Domoticz里进行集中展示和记录。这个方案的价值在于它不是一个“黑箱”产品。从硬件选型、接线、编程到服务器配置整个过程都是透明且可定制的。你不仅能得到一个可用的监控工具更能彻底理解一套物联网数据采集系统是如何从零开始构建起来的。无论是想监测温室、花房还是想学习嵌入式物联网开发这个项目都是一个绝佳的起点。它用到的硬件成本可控软件生态成熟最关键的是整个逻辑链条清晰完整从传感器探头到云端数据看板每一步你都能自己掌控和调整。2. 硬件选型与系统架构解析2.1 核心控制器为什么是Wemos D1 mini Pro在众多物联网开发板中选择 Wemos D1 mini Pro 是基于几个非常实际的考量。首先它基于乐鑫的 ESP8266 芯片这意味着它原生支持 Wi-Fi这是我们实现无线数据传输的基础省去了额外配置无线模块的麻烦。其次“Pro”版本相较于标准版主要增加了板载陶瓷天线和一个额外的 Flash 存储空间通常是 4MB 或 16MB。对于我们的项目更大的 Flash 空间意味着可以容纳更复杂的 MicroPython 固件和更多的用户程序文件为后续功能扩展留足了余地。最后它的尺寸非常小巧引脚布局与经典的 Arduino Nano 相似有丰富的数字和模拟 IO 口并且价格低廉非常适合作为一次性部署在户外的设备核心。注意市场上存在 D1 mini 和 D1 mini Pro 的混用购买时务必确认型号。标准 D1 mini 的 Flash 通常是 4MB而一些 Pro 版本可能达到 16MB。固件烧录时需要区分否则可能导致设备不断重启。2.2 传感器阵容与选型逻辑一套完整的温室环境监控需要关注空气和土壤两个维度的参数。我选择了以下三种传感器它们各自承担着不同的角色DHT22 温湿度传感器负责采集空气温度和湿度。选择它是因为其精度温度±0.5°C湿度±2-5% RH和性价比在业余项目中足够用并且有成熟的 MicroPython 库支持。它使用单总线协议只需要一个数字引脚即可通信接线简单。DS18B20 温度传感器这是一个防水封装的一线式数字温度传感器。我把它埋入土壤中专门用于测量土壤温度。为什么不用 DHT22 测土壤温度因为 DHT22 并非为埋土设计其塑料封装在潮湿土壤中长期使用可能损坏。DS18B20 的不锈钢探头封装则完全无此顾虑且同样使用单总线协议支持多个传感器挂载在同一总线上未来扩展很方便。土壤湿度传感器模拟量这是一个简单的电阻式传感器。它的两个探针插入土壤通过测量土壤电阻来间接反映湿度。它输出的是模拟电压信号0-3.3V需要连接到开发板的模拟输入引脚A0。它的优点是极其便宜缺点是长期埋在地下金属探针可能氧化导致读数漂移。但对于周期性监控和趋势观察它完全胜任。2.3 系统整体工作流程整个系统的架构可以清晰地分为三层感知层、网络层和应用层。感知层由 Wemos D1 mini Pro 和上述三个传感器组成。MicroPython 程序周期性地从传感器读取数据。网络层Wemos 通过 Wi-Fi 连接到家庭路由器并基于 HTTP 协议将采集到的数据以 JSON 格式发送到内网中的 Domoticz 服务器。应用层Domoticz 服务器运行在树莓派 Zero 上。它接收数据将其存储到数据库中并通过 Web 界面以图表、仪表盘的形式可视化展示。你可以在任何能访问家庭内网的设备手机、电脑上查看温室实时状态和历史曲线。这个架构的优点是解耦。数据采集端Wemos只负责采集和发送逻辑简单稳定数据展示和存储由专业的家庭自动化软件 Domoticz 负责功能强大且可靠。即使 Domoticz 暂时不可用Wemos 端也可以加入简单的重试和缓存机制本项目基础版未包含但易于扩展。3. 开发环境搭建与固件烧录3.1 MicroPython 固件获取与烧录工具MicroPython 是运行在微控制器上的 Python 3 精简实现。首先我们需要为 ESP8266 芯片下载合适的固件。前往 MicroPython 官网的下载页面找到针对 ESP8266 的固件文件通常是一个.bin文件。烧录工具我们使用乐鑫官方的esptool.py它是一个 Python 脚本可以通过 pip 安装pip install esptool。将 Wemos D1 mini Pro 通过 Micro-USB 数据线连接到电脑。在 Windows 上你可以在设备管理器中查看它对应的 COM 端口号例如 COM5在 Linux 或 macOS 上它通常是/dev/ttyUSB0之类的设备。3.2 关键步骤针对 D1 mini Pro 的正确烧录命令这是第一个容易踩坑的地方。对于大多数 ESP8266 开发板通用的擦除和烧录命令如下esptool.py --port COM5 erase_flash esptool.py --port COM5 --baud 460800 write_flash --flash_sizedetect 0 firmware.bin但是对于Wemos D1 mini Pro使用--flash_sizedetect参数可能会导致固件烧录后设备不断重启。这是因为工具未能正确检测到 Pro 版本特定的 Flash 大小和布局。经过实测最稳定的方法是显式指定 Flash 大小。假设你的固件文件是esp8266-20220618-v1.19.1.bin正确的命令应该是esptool.py --port COM5 erase_flash esptool.py --port COM5 --baud 460800 write_flash -fs 4MB 0 esp8266-20220618-v1.19.1.bin这里-fs 4MB明确告诉工具 Flash 容量为 4MB。如果你的 Pro 版是 16MB Flash则相应改为-fs 16MB。执行成功后打开串口终端工具如 Putty、Arduino IDE 串口监视器或screen/picocom设置波特率为 115200重启板子你应该能看到 MicroPython 的 REPL 提示符这表示固件烧录成功。3.3 驱动文件上传与常用工具固件只提供了 Python 运行环境我们还需要将传感器驱动库和主程序上传到板子的文件系统中。这里推荐使用ampy工具pip install adafruit-ampy。假设我们已经准备好了以下文件ssd1306.py: OLED 显示屏的 I2C 驱动库。dht.py: DHT22 传感器驱动库。onewire.py和ds18x20.py: DS18B20 传感器驱动库。main.py: 我们的主程序需要稍后配置。使用ampy上传驱动文件注意不要先上传未配置的main.py因为它会开机自启动ampy --port COM5 put ssd1306.py ampy --port COM5 put dht.py # ... 上传其他驱动文件上传后可以在 REPL 中使用import os; os.listdir()命令来确认文件是否已在设备中。4. 硬件连接与电路细节4.1 电源方案与引脚分配规划Wemos D1 mini Pro 的工作电压 3.3V所有传感器的逻辑电平都必须匹配。板子可以通过 Micro-USB 口供电5V也可以使用其上的5V和GND引脚接入外部 5V 电源。板载稳压器会将其降至 3.3V 供芯片和 GPIO 使用。在进行物理连接前务必规划好引脚避免冲突。Wemos D1 mini Pro 的引脚标注如 D1, D2对应的是 ESP8266 的内部 GPIO 编号而非物理引脚顺序。我们需要查阅其引脚图来正确连接。以下是详细的接线方案我强烈建议先在面包板上测试通过再进行焊接或使用杜邦线永久连接1. 土壤湿度传感器模拟红色线 (VCC)- 连接到 Wemos 的3.3V引脚。黑色线 (GND)- 连接到 Wemos 的GND引脚。黄色线 (信号/SIG)- 连接到 Wemos 的A0引脚这是板上唯一的模拟输入引脚。2. OLED 显示屏 (I2C 接口例如 0.96寸 SSD1306)GND- Wemos 的GND。VCC- Wemos 的5V或3.3V注意有些 OLED 模块需要 5V 才能正常点亮背光使用 3.3V 可能亮度不足请根据模块规格书决定。SCL (时钟线)- Wemos 的D1引脚GPIO5这是 MicroPython 默认的 I2C SCL 引脚。SDA (数据线)- Wemos 的D2引脚GPIO4这是 MicroPython 默认的 I2C SDA 引脚。3. DS18B20 土壤温度传感器 (单总线协议)红色线 (VDD)- Wemos 的3.3V。黑色线 (GND)- Wemos 的GND。白色/黄色线 (DQ/数据)- Wemos 的D6引脚GPIO12。关键一步在数据线D6和3.3V之间必须连接一个4.7kΩ 的上拉电阻。这是单总线协议的要求用于在总线空闲时将其拉至高电平确保通信稳定。没有这个电阻传感器很可能无法被识别。4. DHT22 空气温湿度传感器引脚1 (VCC)- Wemos 的3.3V最左边引脚当传感器正面朝你网格一面朝外时。引脚4 (GND)- Wemos 的GND最右边引脚。引脚2 (DATA)- Wemos 的D3引脚GPIO0。注意DHT22 也需要一个上拉电阻但幸运的是许多模块如图中所示已经将电阻集成在电路板上了。如果你购买的是只有三个引脚的模块版通常已包含上拉电阻如果是裸传感器则需要在数据线和 3.3V 间加一个 10kΩ 电阻。4.2 连接检查与常见硬件问题连接完成后不要急于上电编程。先做一次彻底的目视检查短路检查确保任何电源线3.3V 5V没有直接碰到 GND 或其他数据线。电平匹配确认所有传感器的逻辑电平是 3.3V。将 5V 传感器直接接到 ESP8266 的 GPIO 会损坏芯片。上拉电阻DS18B20 的 4.7kΩ 上拉电阻是否已正确连接这是最容易被忽略的导致传感器无响应的问题。接触不良杜邦线连接是否牢固在移动中很容易松脱。实操心得在将整套系统装入防水盒之前务必在桌面上完成所有功能的测试。一旦封装再排查硬件问题将极其困难。我习惯在面包板阶段用彩色标签纸标记每一根线对应的传感器和引脚并在代码中用字典或常量定义这些引脚号做到硬件连接与软件定义一一对应避免后期混淆。5. Domoticz服务器配置与虚拟传感器创建5.1 Domoticz的安装与基础设置Domoticz 是一个轻量级的开源家庭自动化服务器它支持多种硬件和协议且 Web 界面友好。在树莓派 Zero 上安装 Domoticz 非常简单通常通过其官方脚本或包管理器即可完成。安装并启动后通过同一局域网内电脑的浏览器访问http://树莓派IP地址:8080就能进入管理界面。首先我们需要创建一个“虚拟硬件”来代表我们的 Wemos 传感器盒子。因为 Wemos 是通过 HTTP API 向 Domoticz 发送数据对于 Domoticz 来说这个数据源就像一个虚拟设备。进入Setup - Hardware。在页面底部“Create Virtual Sensors”旁边从下拉菜单中选择Dummy。给它起一个名字比如 “Greenhouse Sensor Box”类型保持 “None”。点击 “Add” 按钮。这样就在硬件列表中创建了一个虚拟的容器。5.2 创建虚拟传感器并获取关键IDX接下来我们需要在这个“虚拟硬件”下创建具体的传感器设备用来接收温度、湿度等数据。在刚才创建的 “Greenhouse Sensor Box” 硬件行点击右侧的Create Virtual Sensors按钮。在弹出的窗口中我们需要为每个物理传感器创建一个对应的虚拟传感器。传感器类型选择 “Temperature”。传感器名称输入 “Air Temperature”。点击 “Create Sensor”。重复此过程创建以下传感器类型 “Humidity” 名称 “Air Humidity”类型 “Temperature” 名称 “Soil Temperature”类型 “Custom Sensor” 名称 “Soil Moisture”。对于自定义传感器我们需要指定其单位在下拉菜单中选择 “%” 或 “moisture”取决于你想如何显示。创建完成后进入Setup - Devices。在“All”或对应的硬件标签页下你应该能看到刚刚创建的四个传感器。这里有一个至关重要的信息IDX。每个设备都有一个唯一的 IDX 编号。记录下这四个传感器的 IDX我们稍后需要将它们填入 Wemos 的main.py脚本中。例如你可能会得到类似这样的 IDX 列表Air Temperature: 101Air Humidity: 102Soil Temperature: 103Soil Moisture: 104此外你还需要记录下运行 Domoticz 的树莓派的本地 IP 地址例如192.168.1.100。Domoticz 默认的 HTTP API 端口是8080。6. MicroPython主程序解析与编写6.1 程序结构设计与核心逻辑主程序main.py是整套系统的大脑它需要完成以下任务初始化硬件、连接Wi-Fi、读取传感器数据、处理数据、通过HTTP发送给Domoticz并处理异常。程序应该具备健壮性即使网络暂时中断或某个传感器故障也不应导致系统崩溃而应尝试恢复或重启。一个典型的程序结构如下导入模块引入必要的 MicroPython 内置模块和传感器驱动。引脚与常量定义集中定义所有传感器连接的 GPIO 引脚、Wi-Fi 凭据、Domoticz 服务器地址和设备 IDX。硬件初始化函数初始化 I2COLED、单总线DS18B20、DHT22 和 ADC土壤湿度。Wi-Fi连接函数实现连接本地网络并加入连接失败时的备用配网模式如 Web 配网。数据读取函数分别从各个传感器读取原始数据并进行必要的转换如模拟电压转百分比。数据发送函数将数据格式化为 Domoticz API 要求的 URL并使用urequests或socket模块发送 HTTP GET 请求。主循环以固定的时间间隔例如每30秒或每分钟执行“读取-发送”流程并包含异常捕获和错误处理。6.2 关键代码段与Domoticz API调用以下是main.py中几个关键部分的代码示例和解释。你需要根据之前记录的 IDX 和 IP 修改相关配置。配置部分# config.py - 或直接写在 main.py 开头 WIFI_SSID 你的Wi-Fi名称 WIFI_PASSWORD 你的Wi-Fi密码 DOMOTICZ_IP 192.168.1.100 # 你的Domoticz服务器IP DOMOTICZ_PORT 8080 # 传感器IDX (根据你在Domoticz中创建的设备填写) IDX_AIR_TEMP 101 IDX_AIR_HUMI 102 IDX_SOIL_TEMP 103 IDX_SOIL_MOIST 104 # 硬件引脚定义 PIN_DHT 0 # GPIO0, 对应板载标记 D3 PIN_DS18B20 12 # GPIO12, 对应板载标记 D6 PIN_SOIL_ADC 0 # 模拟引脚 A0数据发送函数Domoticz 提供了一个简单的 HTTP JSON API 来更新设备数据。对于温度设备URL 格式如下http://IP:PORT/json.htm?typecommandparamudeviceidxIDXnvalue0svalue温度值对于湿度设备格式略有不同svalue字段包含湿度和舒适度状态等。 对于自定义传感器土壤湿度格式为...svalue数值在 MicroPython 中我们可以使用urequests库来发送请求import urequests import network def send_to_domoticz(idx, value, sensor_typetemp): base_url http://{}:{}/json.htm.format(DOMOTICZ_IP, DOMOTICZ_PORT) if sensor_type temp: url {}?typecommandparamudeviceidx{}nvalue0svalue{}.format(base_url, idx, value) elif sensor_type humidity: # 湿度值舒适度状态(0-3)湿度状态文字可空 url {}?typecommandparamudeviceidx{}nvalue0svalue{};{};{}.format(base_url, idx, value, 0, ) elif sensor_type custom: url {}?typecommandparamudeviceidx{}nvalue0svalue{}.format(base_url, idx, value) try: response urequests.get(url) print(Sent to idx {}: {}, Response: {}.format(idx, value, response.text)) response.close() # 重要关闭响应释放资源 except Exception as e: print(Failed to send data:, e)土壤湿度模拟值转换土壤湿度传感器输出的是 0-3.3V 的模拟电压对应 ADC 读取的原始值范围是 0-102310位精度。完全干燥时电压最高ADC值小完全湿润时电压最低ADC值大。需要做一个简单的映射def read_soil_moisture(): adc_value machine.ADC(PIN_SOIL_ADC).read() # 读取原始ADC值 # 校准将ADC值转换为百分比。这两个阈值需要根据你的传感器和土壤实测确定。 dry_value 650 # 在空气中完全干燥时读取的值 wet_value 300 # 传感器探针完全浸入水中时读取的值 # 将ADC值映射到0-100%的湿度并限制范围 moisture_percent 100 - int((adc_value - wet_value) / (dry_value - wet_value) * 100) moisture_percent max(0, min(100, moisture_percent)) # 限制在0-100之间 return moisture_percent6.3 健壮性设计Wi-Fi连接管理与错误处理物联网设备最怕的就是网络不稳定。我们的代码必须能处理 Wi-Fi 断开重连的情况。一个简单的策略是在启动时尝试连接预设的 Wi-Fi如果失败例如超时 10 秒则启动一个“配网模式”比如开启一个 AP访问点让用户可以通过网页配置新的 Wi-Fi 凭据。有许多现成的 MicroPython 库可以实现此功能例如wifimgr。在主循环中每次发送数据前检查网络连接状态。如果断开则尝试重连。对于传感器读取失败应使用try...except捕获异常打印错误日志并跳过该次数据发送而不是让整个程序崩溃。最后可以在主循环外层包裹一个大的try...except如果发生不可预知的错误记录日志并执行软重启machine.reset()让设备自动恢复。7. 系统集成、测试与部署7.1 完整功能测试流程在将所有代码上传到 Wemos 并放入温室之前必须在桌面完成端到端的全链路测试硬件通电测试连接 USB 供电观察板载 LED 和 OLED 屏幕如果接了是否有显示。使用串口工具查看启动日志确认无报错。Wi-Fi连接测试在代码中确保打印连接状态。查看串口日志确认已成功获取 IP 地址。传感器读取测试在 REPL 中手动导入你的模块调用数据读取函数查看返回值是否合理。例如用手握住 DHT22看温度是否上升将土壤传感器探针触碰湿毛巾看 ADC 值是否变化。Domoticz API 测试临时修改代码只发送一次测试数据到 Domoticz。刷新 Domoticz 的 Devices 页面查看对应传感器的“最后更新”时间戳和数值是否变化。循环稳定性测试让程序在主循环中运行至少半小时观察串口日志是否有异常抛出Domoticz 上的数据是否在持续、稳定地更新。7.2 防水封装与户外部署要点测试无误后就可以考虑户外部署了。选择一个大小合适的防水接线盒。部署时需注意电源如果使用 USB 供电需要将 USB 线引出盒子并做好出口的防水密封使用防水电缆接头。更好的方案是使用 5V 直流电源适配器直接接入 Wemos 的 5V 和 GND 引脚。传感器引出在盒子上开孔用防水接头将 DHT22、DS18B20 和土壤湿度传感器的线缆引出。DS18B20 和土壤湿度探头需要埋入土壤不同深度的位置例如DS18B20 在植物根区土壤湿度传感器在旁边。散热与透气DHT22 需要测量空气温湿度因此其探头部分必须暴露在盒子外的空气中但电路部分应做好防潮处理。可以在盒子侧面开一个小百叶窗。天线位置确保 Wemos 的陶瓷天线区域不要被金属盒子完全屏蔽最好靠近塑料外壳部分以保证 Wi-Fi 信号强度。7.3 数据可视化与自动化联动初探数据成功进入 Domoticz 后你就可以享受到集中监控的便利了。在 Domoticz 的 Dashboard 上可以将这四个传感器添加为“收藏”这样一打开页面就能看到实时数据。点击每个传感器可以查看其历史数据图表非常直观。更进一步Domoticz 的强大之处在于其自动化规则“场景”和“脚本”。你可以基于采集的数据创建自动化逻辑例如高温报警当空气温度超过 35°C 时向你的手机发送一条通知Domoticz 支持 Telegram、邮件等通知方式。自动通风逻辑虽然本项目不直接控制设备但你可以创建一条规则“如果土壤湿度低于 20%且空气温度低于 30°C则触发一个‘需要浇水’的虚拟开关”。这个虚拟开关可以关联到其他真正的执行设备为未来的自动灌溉系统打下基础。8. 常见问题排查与优化建议在实际搭建和运行过程中你几乎一定会遇到下面这些问题。这里我把它们和解决方案整理出来希望能帮你节省大量排查时间。8.1 传感器读数异常或无数据问题Domoticz 上某个传感器一直显示为 0 或“超时”。排查步骤检查串口日志这是最重要的信息源。查看 Wemos 启动和运行过程中打印的日志看是否有明确的错误信息如 “DHT read error”, “DS18B20 not found”, “ADC read failed”。检查硬件连接首先确认电源3.3V, GND是否稳定接通。用万用表测量传感器 VCC 和 GND 之间的电压是否为 3.3V。然后检查信号线是否连接到了正确的 GPIO并且接触良好。检查上拉电阻对于 DS18B20确认 4.7kΩ 上拉电阻是否已正确连接在数据线和 3.3V 之间。对于 DHT22如果是裸传感器也需要 10kΩ 上拉电阻。检查代码引脚定义确认代码中PIN_DHT、PIN_DS18B20等常量的值与你实际的物理连接完全一致。MicroPython 使用 GPIO 编号而非板载的 “Dx” 标记。单独测试传感器在 REPL 中单独导入驱动库并尝试读取传感器数据排除其他代码的干扰。8.2 Wi-Fi连接不稳定或Domoticz通信失败问题设备频繁离线或数据发送经常失败。排查与优化信号强度温室可能离路由器较远或有遮挡。在 Wemos 代码中可以加入import network; sta network.WLAN(network.STA_IF); print(RSSI:, sta.status(rssi))来打印信号强度。如果 RSSI 低于 -70考虑增加 Wi-Fi 中继器或将设备部署在信号更好的位置。静态IP分配在路由器中为 Wemos 的 MAC 地址分配固定的 IP 地址避免 IP 变化导致 Domoticz 连接问题虽然我们的代码用的是域名或固定IP但路由器分配固定IP更稳妥。增加重试机制在数据发送函数send_to_domoticz中加入重试逻辑。例如如果第一次请求失败等待 2 秒后重试最多重试 3 次。心跳与看门狗在 MicroPython 中启用硬件看门狗from machine import WDT; wdt WDT(timeout8000)并在主循环中定期喂狗wdt.feed()。这可以在程序死锁时自动重启设备。同时可以在 OLED 上显示“最后成功通信时间”方便现场诊断。8.3 土壤湿度传感器读数不准与校准问题土壤湿度百分比显示不准确或者在空气中不是 0%在水中不是 100%。解决方案这是电阻式土壤湿度传感器的通病需要进行校准。干值校准将传感器探针完全置于空气中不要接触任何物体读取此时的 ADC 原始值作为代码中的dry_value。湿值校准将传感器探针完全浸入一杯清水中读取此时的 ADC 原始值作为代码中的wet_value。土壤校准进阶如果你想更精确可以取一份完全干燥的土壤样本和一份加水至饱和的土壤样本分别插入传感器记录对应的 ADC 值用这两个值作为干湿阈值。不同土质的导电性差异很大校准是获得有意义数据的关键。8.4 电源管理与续航优化场景如果你希望使用电池供电或者遭遇不稳定的市电。优化建议降低采样频率温室环境变化较慢将数据发送间隔从 30 秒增加到 5 分钟或 10 分钟能大幅降低功耗。使用深度睡眠ESP8266 支持深度睡眠模式。可以在每次采集并发送数据后让芯片进入深度睡眠定时唤醒。这需要将 GPIO16 连接到 RST 引脚并使用machine.deepsleep(睡眠时间_毫秒)。在这种模式下电流消耗可降至微安级别仅靠电池即可运行数月。但注意深度睡眠时所有网络连接会断开唤醒后需要重新连接 Wi-Fi。电源隔离为模拟传感器土壤湿度和数字传感器使用独立的 3.3V 线性稳压器或者至少在电源入口处增加大容量电容如 100µF滤波可以减少传感器对主控芯片的电源干扰提高稳定性。这个项目从一块小小的开发板开始最终构建起一个能真实运行、提供价值的温室监控系统。整个过程涉及了硬件选型、电路连接、嵌入式编程、网络通信和服务器配置等多个环节是一个典型的物联网全栈小实践。我最深的体会是调试和日志是关键。在代码中尽可能多地添加有意义的打印信息并利用好串口终端这个窗口它能帮你快速定位绝大多数问题。当看到 Domoticz 的图表上第一次出现那条由你的设备上传的数据曲线时那种成就感是无可替代的。你可以在此基础上继续扩展比如增加光照传感器、二氧化碳传感器甚至连接继电器模块来控制补光灯或通风扇真正迈向全自动的智慧温室。

相关新闻