0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何使用Arduino构建基于触控的变色植物

科技观察员 来源:circuitdigest 作者:Mr.X 2022-08-08 16:21 次阅读

在本文中,我们将学习如何使用 Arduino 构建基于触控的变色植物。当您触摸植物时,植物花瓶的颜色会自动改变。这是一个不错的室内装饰项目,也是初学者构建和学习一些有趣东西的小爱好项目。

现在,当我们说基于触摸的植物时,可能会出现一个常见问题,即电子电路如何通过植物检测到人类的触摸。如今,触摸感应设备无处不在。我们可以在智能手机和不同类型的电器中看到触摸屏。触摸传感器只是一个开关,当有人触摸触摸传感器时,传感器会关闭电子电路并允许电流流动。

触摸传感器类型

手机智能自动售货机,如今,我们可以在所有现代设备中找到触摸传感器。触摸传感器主要有两种类型,即 电阻式触摸式和电容式触摸式。类型名称本身就表明了操作方式和工作原理

电阻式触摸传感器:顾名思义,电阻式触摸传感器的工作原理是基于导体的电阻。当人体发生触摸时,导体的电阻率会发生变化,也会产生电压变化,这种电压变化会被电路检测到,事情就会发生。

电容式触摸传感器:这是最常用的触摸传感器类型。这仅仅是因为我们可以一次执行多个触摸。电容式触摸传感器基于电容的变化工作,即当我们触摸传感器时,电路的电容发生变化,这将被检测为触摸。现在让我们详细讨论一下我们的电路。

如何检测植物的触摸?

我们厂的电路也是基于电容式触摸传感器。也就是说,我们将一根电线连接到我们的植物上,使其像电极一样,然后当我们触摸植物时,由于我们身体的存在,电容会发生变化,这将被我们的电路检测到。说到电路,我们需要一个微控制器来检测电容的变化并控制整个系统。在我们的例子中,微控制器是 Arduino。

poYBAGLwxtaAZZdUAAXQ_bqFP-0568.png

制作我们的变色植物花瓶所需的材料

阿杜诺

共阴极RGB LED

1兆欧电阻(棕色、黑色、绿色)

连接线

有基地的植物

普通PCB

pYYBAGLwxt2AN3enAAm8-KRWw2A131.png

基于触摸的变色 Arduino Plant 电路图

该项目中使用的完整电路图如下所示。该电路是使用 Easy EDA 创建的,如您所见,它是一个非常简单的电路。

poYBAGLwxuKAVQnEAABycc3MPEA527.png

首先,在 Arduino 引脚 2 和引脚 4 之间连接一个兆欧电阻。然后将一根长线(铜)连接到引脚 4。这条线充当电极或触摸引线,然后将 RGB LED 公共接地连接到地,红色连接到Arduino的D5和D6的绿色,D7的蓝色,最后将电线连接到植物体上,就是这样。连接后我的硬件设置如下所示。

pYYBAGLwxuaABRmHAAkvredqyzU345.png

我已将 RGB LED 连接到一个普通的穿孔板上(如下图所示),最后将底座(玻璃)放在 PCB 上方。而已。

pYYBAGLwxu2ADadAAAdusYy6CwY407.png

用于检测植物触摸并更改 LED 颜色的 Arduino 程序

此项目中使用的完整程序可在此页面底部找到。要检测植物的电容,我们需要使用电容传感器库。您可以从以下链接下载 Arduino 电容式传感器库。

下载 Arduino 电容式触摸传感器库

下载库并将其添加到您的 Arduino IDE 后,将该库包含到您的代码中。该库有助于读取 Arduino 引脚的电容。

#include <电容传感器.h>

我们已经在引脚 2 和 4 之间连接了电阻,因此我们需要测量引脚 4 中的电容,为此,定义引脚。

电容传感器 cs_2_4 = 电容传感器(2,4);

电容传感器切换微控制器引脚,即它将引脚发送到新状态,然后等待接收引脚更改为与发送引脚相同的状态。在设置部分,我为 LED 和传感器引线定义了不同的引脚。

  pinMode(4,输入);
  pinMode(5,输出);
  pinMode(6,输出);
  pinMode(7,输出);

在循环部分借助数字读取,我们可以读取引脚 4 的状态,并将值存储在变量“r”中。

r = 数字读取(4);
  if (r == HIGH && p == LOW && millis() - time > debounce) { 
    cnt++; 
  如果(状态 == 高)
     状态 = 低;
if(cnt == 1){ 
    digitalWrite(5, HIGH); 
    数字写入(6,低);
    数字写入(7,低);
  } 
  if(cnt == 2){ 
    digitalWrite(5, LOW); 
    数字写入(6,高);
    数字写入(7,低);
  } 
  if(cnt == 3){ 
    digitalWrite(5, LOW); 
    数字写入(6,低);
    数字写入(7,高);
  } 
  if(cnt > 3){ 
      cnt = 1; 
  } 
  p = r;

每次检测到触摸时,它都会增加计数,我根据增加的数字给出了不同的条件以不同的颜色点亮。

代码准备好后,只需将其上传到您的 Arduino 板并将 LED 放在您的花瓶下。在这里,我使用的是玻璃花瓶,一切准备就绪后,我的设置看起来像这样。

#include <电容传感器.h>
电容传感器 cs_2_4 = 电容传感器(2,4);// 引脚 2 和 4 之间有 1M 电阻,引脚 4 是传感器引脚,添加一根导线和
诠释cnt = 0;
整数 = 2;
诠释= 4;
诠释状态=高;
诠释r;
诠释 p = 低;
长时间 = 0;
长时间去抖 = 200;
无效设置()
{
pinMode(4,输入);
/* LED 输出 */
pinMode(5,输出);
pinMode(6,输出);
pinMode(7,输出);
}
无效循环()
{
r = 数字读取(4);
if (r == HIGH && p == LOW && millis() - time > debounce) {
cnt++;
如果(状态 == 高)
状态=低;
别的
时间=毫秒();
}
如果(cnt == 1){
数字写入(5,高);
数字写入(6,低);
数字写入(7,低);
}
如果(cnt == 2){
数字写入(5,低);
数字写入(6,高);
数字写入(7,低);
}
如果(cnt == 3){
数字写入(5,低);
数字写入(6,低);
数字写入(7,高);
}
如果(cnt > 3){
cnt = 1;
}
p = r;
}

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 触控
    +关注

    关注

    9

    文章

    219

    浏览量

    71235
  • RGB
    RGB
    +关注

    关注

    4

    文章

    796

    浏览量

    58324
  • 触摸传感器
    +关注

    关注

    0

    文章

    121

    浏览量

    23040
  • Arduino
    +关注

    关注

    187

    文章

    6456

    浏览量

    186470
收藏 人收藏

    评论

    相关推荐

    如何构建Arduino官方开发环境

    本系列教程将向大家讲述,在自己的计算机上构建完善的嵌入式系统开发环境的方法。本文将向大家讲述构建Arduino官方开发环境的方法。Arduino简介:
    发表于 12-24 06:44

    基于Arduino的自动植物浇水系统

    描述Arduino自动植物浇水系统Sprout 是一款现代室内种植机,可自动浇灌您的植物、草药、蔬菜等,并将彻底改变您的园艺游戏。它由一个集成的蓄水池组成,从该蓄水池中抽水并保持植物
    发表于 09-14 07:10

    基于arduino屏扫描例程资料下载

    基于arduino屏扫描例程。
    发表于 03-20 17:04 0次下载

    Arduino自动植物浇水系统

    电子发烧友网站提供《Arduino自动植物浇水系统.zip》资料免费下载
    发表于 08-19 09:23 8次下载
    <b class='flag-5'>Arduino</b>自动<b class='flag-5'>植物</b>浇水系统

    Arduino智能植物孵化器

    电子发烧友网站提供《Arduino智能植物孵化器.zip》资料免费下载
    发表于 10-28 15:58 1次下载
    <b class='flag-5'>Arduino</b>智能<b class='flag-5'>植物</b>孵化器

    arduino植物浇水报警系统

    电子发烧友网站提供《带arduino植物浇水报警系统.zip》资料免费下载
    发表于 12-21 16:52 0次下载
    带<b class='flag-5'>arduino</b>的<b class='flag-5'>植物</b>浇水报警系统

    Arduino带TFT LCD的植物浇水系统

    电子发烧友网站提供《Arduino带TFT LCD的植物浇水系统.zip》资料免费下载
    发表于 12-22 15:15 1次下载
    <b class='flag-5'>Arduino</b>带TFT LCD的<b class='flag-5'>植物</b>浇水系统

    基于Arduino Uno的植物浇水自动化设计

    过去很长一段时间,经常会因为假期而忘记照顾植物导致植物干枯。因此,我考虑将任务自动化以挽救未来的植物生命。我将 Arduino Uno 与Infineon的TLE94112 多半桥结合
    发表于 12-23 14:26 0次下载

    Arduino城市植物浇水解决方案

    电子发烧友网站提供《Arduino城市植物浇水解决方案.zip》资料免费下载
    发表于 12-29 15:05 0次下载
    <b class='flag-5'>Arduino</b>城市<b class='flag-5'>植物</b>浇水解决方案

    如何使用Arduino构建植物浇水系统

    在本教程中,我们将学习如何使用湿度传感器,水泵和绿色LED闪烁来制作植物浇水系统。硬件组件:Adafruit 12V水泵×1个Arduino UNO Wifi版本2×1个SparkFun土壤湿度
    发表于 01-03 17:56 1次下载

    Arduino变色小鬼灯

    电子发烧友网站提供《Arduino变色小鬼灯.zip》资料免费下载
    发表于 02-09 11:21 0次下载
    <b class='flag-5'>Arduino</b><b class='flag-5'>变色</b>小鬼灯

    使用Arduino构建植物浇水系统

    电子发烧友网站提供《使用Arduino构建植物浇水系统.zip》资料免费下载
    发表于 06-28 16:06 0次下载
    使用<b class='flag-5'>Arduino</b><b class='flag-5'>构建</b><b class='flag-5'>植物</b>浇水系统

    如何使用Arduino构建植物监视器

    电子发烧友网站提供《如何使用Arduino构建植物监视器.zip》资料免费下载
    发表于 06-28 15:34 0次下载
    如何使用<b class='flag-5'>Arduino</b><b class='flag-5'>构建</b><b class='flag-5'>植物</b>监视器

    arduino变色电子变色

    电子发烧友网站提供《arduino变色电子变色龙.zip》资料免费下载
    发表于 07-05 10:31 0次下载
    <b class='flag-5'>arduino</b><b class='flag-5'>变色</b>电子<b class='flag-5'>变色</b>龙

    Arduino自动化园艺植物

    电子发烧友网站提供《Arduino自动化园艺植物.zip》资料免费下载
    发表于 07-06 10:43 0次下载
    <b class='flag-5'>Arduino</b>自动化园艺<b class='flag-5'>植物</b>