Arduino GrowBox 控制器
组件和用品
![]() |
| × | 1 | |||
![]() |
| × | 1 | |||
![]() |
| × | 2 | |||
![]() |
| × | 2 | |||
![]() |
| × | 1 | |||
![]() |
| × | 1 |
必要的工具和机器
![]() |
|
应用和在线服务
|
关于这个项目
Arduino GrowBox 控制器可在 GitHub 上获得。我终于用 GPL3 许可证分享了我这些年为我的 GrowBox 开发的固件。
在我的网站上,我已经分享了我如何构建 GrowBox、我及时做出的修改和植物生长图片。
感谢 Arduino Mega 2560 Rev.3,这个开源固件提供了一个小型网络服务器,用于配置、数据传输到 EmonCMS 实例和数据记录到 SD 卡。 CSV 日志文件可从 GrowBox Controller 的网页下载。

Arduino GrowBox 控制器使用 DHT22 传感器读取盒子内外的温度和湿度。 DS18B20也用于样品罐和地温监测。
Ethernet Shield 允许进行远程配置,以及数据可视化和日志下载。这使得 20x4 LCD 显示屏变得多余,但在您不想打开手机或平板电脑时很有用。

EmonCMS 与 Arduino GrowBox 控制器的集成使我们能够从任何地方保存历史记录并监控趋势。如果您已经将 EmonCMS 用于能源监控应用程序,您也可以将其集成。

从去年开始,我只种植辣椒,但在 2018 年,我种植了西红柿、西葫芦、辣椒(不是辣的!)、茄子、西瓜和甜瓜,可以在我的菜园里种植。因为我住的地方夏天很短而且不能从田间种子开始,所以较早开始。还有,6月份吃西红柿好棒!

在 Arduino GrowBox 控制器上实现的功能
我们来看看这个控制器能做什么!

环境参数控制
GrowBox 温度控制
可以设置加热阈值:
- 最低温度:低于此阈值,加热器将被激活
- 最高温度:超过此阈值,加热器将被禁用
湿度阈值
可以设置加湿器阈值:
- 最低湿度:%RH 低于此阈值,将启动加湿器
- 最大湿度:%RH 超过此阈值,将禁用加湿器
地面/沙温
- 最低地面温度:如果地面温度低于此阈值(如果内部温度也低于最低阈值),控制器可以激活加热
- 最大地面温度:如果内部温度需要加热,控制器也会禁用加热。 这是为了防止锅和彻底损坏
灯光控制
- 开始时间:控制器开灯的时间
- 开始分钟:控制器开灯的分钟
- Stop Hour:控制器关灯的时间
- 停止分钟:控制器开灯的分钟数
如果我们需要6:30开灯,22:30关灯,我们会设置:
- 开始时间:6
- 开始分钟:30
- 停止时间:22
- 停止分钟:30
网络
本节与本地网络参数有关。
- IP 地址:您选择的静态 IP 地址
- 子网掩码:您的子网掩码
- 网关:网关的 IP 地址
- DHCP:检查您是否需要 DHCP。以上配置将被忽略。
粉丝
有些灯在生长箱内会发热,所以我们可以为“夜晚”和“白天”设置不同的程序。
风扇 - 灯亮
- 持续时间:以分钟为单位的持续时间
- 间隔:激活之间的间隔,以小时为单位
风扇 - 灯关闭
- 持续时间:以分钟为单位的持续时间
- 间隔:激活之间的间隔,以小时为单位
实时时钟
设置您的当地时间,以允许准确的日志并在电源故障的情况下重新启动程序。
采集和记录频率
我选择将这两个参数分开是因为控制器可以快速反应(快速采集频率)但我们不需要所有这些数据,所以记录频率很慢。更快的记录频率,我们会有更大的 CSV 文件,更多的数据传输到 EmonCMS 和更慢的下载时间。
- Sample Rate:采样率,以秒为单位。控制器可以更快地做出反应
- 传输和日志速率:CSV 更新和 EmonCMS 数据传输之间的分钟数
Arduino GrowBox 控制器的 PCB

我开始为 Arduino Mega 设计一个“屏蔽”,这样您就可以轻松连接以太网屏蔽、继电器和传感器。我用的是 Eagle,源代码在 GitHub 上。

后续步骤
这是我种植辣椒(和其他蔬菜)的第三年,但我仍然想念一些我将来会整合的功能:
- 用于加热的 PID,通过使用固态继电器 (SSR) 来控制加热元件并提高能源效率和温度控制
- MQTT,将此设备集成到家庭自动化系统或物联网平台(如 ThingsBoard.io)中
- NTP 设置实时时钟并避免错误
- 预热:在关灯前开始加热以增加温度稳定性
- 使用样品罐探针进行灌溉。
希望你喜欢这个项目!
分享你的成长!
代码
Arduino GrowBox 控制器
GrowBox 控制器的 Arduino 固件 https://github.com/Yarosia/Arduino-GrowBox-Controller示意图
Arduino GrowBox 扩展板
Eagle 原理图和屏蔽的 pcb(尚未铣削)https://github.com/Yarosia/Arduino-GrowBox-Controller制造工艺