基于Arduino开发板实现电容触摸控制灯

在本篇文章中,我制作了一个基于Arduino电容式感应库的触摸控制灯。您可以使用铝箔制作触摸传感器(任何金属物体都可以工作)。你可以通过触摸铝箔点亮或熄灭灯。
原理图

工作原理:

首先,简要介绍电容库的工作原理:
capacitiveSensor库将两个或多个Arduino引脚转换为电容式传感器,可以感应人体的电容。所有传感器的设置都需要一个中到高值的电阻和一根导线以及触摸传感器。在最敏感的情况下,传感器将开始感应距离传感器几英寸的手或身体。电容传感器方法将微控制器发送引脚切换到新状态,然后等待接收引脚切换到与发送引脚相同的状态。
因此,对于高值电阻,这种行为就像接近传感器
要了解Arduino电容式感应库,请点击此链接

所需的硬件

● Arduino UNO开发板
● 1MΩ电阻
● LED指示灯
● 铝箔
● 连接导线

基本的软件需求

1、下载Arduino 开发软件,Arduino 下载地址:
https://downloads.arduino.cc/arduino-1.8.9-windows.zip
2、您必须安装电容式感应库,您可以从这里下载Capacitive Sensing Library。
3、如果你不知道如何安装新的库到Arduino软件,请按照此链接了解如何在Arduino IDE中安装库。

制作触摸传感器

触摸传感器可以由任何金属物体制成。我使用的是铝箔。对于许多应用,如果传感器用纸、塑料或其他绝缘材料覆盖,则获得更有用的值范围,使得用户实际上不接触金属箔。所以我用绝缘胶带覆盖它,效果很好。

在这里插入图片描述

上传代码

点击项目中验证/编译
点击项目上传
如下图所示:
若显示上传成功,代码正确了
在这里插入图片描述
测试方法:
你可以通过触摸铝箔,你可以观察到灯变红了,再触摸一下,红灯变暗了,这样即表示铝箔触摸器是可行的。

代码

以下是本文使用的完整代码:

//arduino code for touch controlled light based on capacitive sensing library

#include <CapacitiveSensor.h>

CapacitiveSensor   cs_2_4 = CapacitiveSensor(2,4); // 1M resistor between pins 2 & 4, pin 4 is sensor pin, add a wire and or foil

int in = 2;
int out = 4;  
int state = HIGH;  
int r;      
int p = LOW;
long time = 0; 
long debounce = 200;
void setup()
{
    pinMode(4, INPUT);
    pinMode(8, OUTPUT);
}
void loop()   
{
void loop()    
}

 r = digitalRead(4);
if (r == HIGH && p == LOW && millis() - time > debounce) {
   if (state == HIGH)
       state = LOW;
   else 
      state = HIGH;
      time = millis();    
 }
  digitalWrite(8, state);
   p = r;
}

参考资料:

https://www.yiboard.com/thread-1076-1-1.html

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Huang_xianlong

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值