风筝
发表于: 2019-1-24 22:22:24 | 显示全部楼层

您是否一直想知道如何为您的植物添加一些高科技技术?通过这个很酷的项目,您可以确保您的可爱植物始终处于良好状态。完成此本文后,您将:

●    了解到如何使用模拟输出传感器

●    了解如何在OLED显示屏上显示数据

●    如果一切都很好,让你的植物微笑,如果有什么不对的话,植物就哭。


智能植物:这个想法的基础是什么?

如今,我们可以通过为我们的工具和基本电子元件添加技术来提高工作、爱好、生活方式等的效率。将人工智能添加到我们关心的事物中是非常有吸引力和惊人的。您可能已经看到绿色房屋使用智能控制和监督植物、花卉等。他们可以控制植物的水的时间和数量、照明、温度,以及许多其他重要和有效的参数。


这是一个很好的起点,进入这个令人兴奋的世界,并学习如何做到这一点。在本篇文章中,我们将获得有关我们植物状况的必要细节;例如沙子水分、环境温度和植物可以接收的光量。监控这些数据可以帮助我们始终保持工厂的良好状态。通过Arduino从传感器读取数据非常简单,并且在显示器上监控并不是那么难。你还在等什么?让我们的植物变得聪明!


所需的组件

●    Arduino Nano开发板

●    DHT11温湿度传感器

●    0.96英寸SPI 128X64 OLED显示模块

●    YwRobot土壤湿度传感器模块

●    LDR传感器

●    带状电缆

1111-800x579.jpg


电路连接

cir.jpg

您应该注意几点。首先,您需要一个能提供至少5V和20mA电源的电源。如果您的电源不符合这些条件,则应将模块连接到Arduino的5V引脚(不要使用3v3)。您还应注意使用带有SPI协议的OLED显示屏。如果您的显示器是I2C,则必须将它们连接到Arduino的A4和A5引脚。此外,这里使用的湿度传感器有2个引脚,因此需要一个带有一个模拟输出的放大器板。 DHT11传感器可以测量温度和湿度,但我们的代码仅显示温度。您可以通过添加几行代码来添加湿度。


组装

24-1.jpg


由于我们的花盆很小而且有空间限制,我们使用了适合我们的花盆的细丝。


为了连接这些电线,最好将引脚与元件分开。首先,OLED显示器排针应该被拆焊。为此,您可以使用烙铁,但最好使用加热器焊接。


OLED显示器粘在提供SPI通信的板上。为了更好地查看显示和隐藏电线,您可以将显示面板与电路板分开。用锋利的刀子做到这一点。


现在是时候将电线焊接到电路板上了。电路板将被放置在湿沙中,因此我们必须使所有连接和组件都防水。首先,我们用塑料包装覆盖它。然后我们用收缩管盖住它。你应该加热它以坚持板。现在用热胶填充接缝。


我们选择的湿度传感器需要一个单独的放大器。首先,将针头分开,然后使它们防水。


对于LDR传感器,必须在GND和传感器引脚之间连接一个10k欧姆的电阻。这也必须是防水的。


对于温度传感器,必须在Vcc和信号引脚之间连接一个10k欧姆的电阻。


现在是时候将所有传感器和显示模块连接到Arduino Nano。完成组装后,不要忘记让Arduino防水。

22-1.jpg

现在从花盆中倒出一些沙子(不是全部,它对植物有害)并将板和传感器(温度传感器除外)放入花盆内。温度传感器必须在花盆外。现在用去除的沙子填满花盆。

23.jpg

我们都完成了!现在开始上传代码吧。

98-1.jpg 99.jpg


代码

在此代码中,我们使用SSD1306和DHT库用于OLED显示和DHT11。您应首先添加这些库,然后编译并将代码上传到Arduino Nano。如果这是您第一次使用Arduino开发板,请不要担心。只需按以下步骤操作:

●    访问www.arduino.cc/en/Main/Software并下载操作系统的软件。按照说明安装IDE软件。

●    运行Arduino IDE并清除文本编辑器,然后在文本编辑器中复制以下代码。

●    导航到草图并包含库。现在单击添加ZIP库并添加库

●    在tools and boards菜单中选择您使用的Arduino电路板。

●    将Arduino连接到PC,然后在tools and port中设置COM端口。

●    按上传(箭头符号)按钮。

●    现在都准备好了!

100.jpg


必要的文件和下载:

ssd1306.zip (7.48 KB, 下载次数: 18)

DHT-sensor-library-master.zip (14.06 KB, 下载次数: 18)

本文完整的代码: main.rar (2.55 KB, 下载次数: 22)


接下来的改进措施

现在您可以根据自己的兴趣开发此项目。 以下是一些建议您可以将它们添加到项目中:

●    您可以显示时钟并测量不同条件的时间,并预测植物需要水或更多光的条件的时间。 你应该添加一个像DS1307这样的RTC模块,并添加一些代码来读取时间和日历,并显示或保存其中的一些以获得更多植物细节。

●    通过添加蜂鸣器,您可以设置一些警告,警告您有关植物条件的信息。 例如,当沙子非常干燥时,它可以每小时振铃1次。

●    我们为不同的条件设置了两个表情符号。 您可以为任何条件添加更多面部模型。 为此,您应阅读OLED显示教程,了解如何将图像转换为十六进制代码。

跳转到指定楼层
ljx0000
发表于: 2021-8-23 14:31:23 | 显示全部楼层

老师请问我的温度传感器DHT11有3个引脚,分别是VCC,GND和OUT。我应该把out链接到A1对么?
回复

使用道具 举报

ljx0000
发表于: 2021-8-23 14:32:36 | 显示全部楼层

编译的时候显示:C:\Users\t8498\Documents\Arduino\libraries\DHT-sensor-library-master\DHT_U.h:25:10: fatal error: Adafruit_Sensor.h: No such file or directory请问如何解决?谢谢楼主
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题 714 | 回复: 1501



手机版|

GMT+8, 2024-12-23 05:17 , Processed in 0.043057 second(s), 6 queries , Gzip On, MemCache On. Powered by Discuz! X3.5

YiBoard一板网 © 2015-2022 地址:河北省石家庄市长安区高营大街 ( 冀ICP备18020117号 )

快速回复 返回顶部 返回列表