Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Manufacturing Technology >> Производственный процесс

Сенсорный выключатель LED на Arduino UNO: простой DIY-проект

Компоненты и материалы

Arduino UNO 1 шт.
LED (любой) 1 шт.
Перемычки 4 шт.
Резистор 1 МОм 1 шт.
Алюминиевая фольга или монета 1 шт.

Приложения и сервисы

О проекте

Сделан сенсор касания из монеты, работающий на библиотеке Capacitive Sensing. Сенсор включает/выключает LED при касании. Ёмкостные сенсоры детектируют проводящие объекты или те, у которых диэлектрическая проницаемость сильно отличается от воздуха (человеческое тело, рука).

Библиотека CapacitiveSensor превращает два и более пинов Arduino в ёмкостной сенсор, чувствующий ёмкость тела. Нужен резистор среднего/высокого номинала, провод и кусок алюминиевой фольги на конце. В максимальной чувствительности сенсор срабатывает на расстоянии нескольких дюймов.

Сенсорный выключатель LED на Arduino UNO: простой DIY-проект

Схема и принцип работы

Простая RC-цепочь (резистор-конденсатор). Измеряя время перехода из одного состояния в другое, получаем приблизительную дистанцию (известны ёмкость тела, резистор, материал сенсора). Высокоомный резистор обеспечивает значительное время разряда.

В качестве сенсорного материала можно использовать любые металлические предметы: монету, фольгу и т.д.

Сенсорный выключатель LED на Arduino UNO: простой DIY-проект

Программное обеспечение

Функция включения/выключения света касанием реализована в скетче. Перед загрузкой установите библиотеку CapacitiveSensor: GitHub.

Сборка железа

Установите резистор 1 МОм между пинами 2 и 4 Arduino. По программе пин 4 — приёмный, подключите монету (сенсор) к пину 4. Соедините LED между GND и пином 8.

Тестирование

При касании сенсора меняется предыдущее состояние: LED включается или выключается. Большие резисторы делают сенсор более чувствительным, работает как датчик приближения.

Код

Arduino код

#include <CapacitiveSensor.h>
CapacitiveSensor cs_2_4 = CapacitiveSensor(2,4); // 1M резистор между пинами 2 и 4, пин 4 — сенсор, добавить провод и/или фольгу
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() {
  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;
}

Схемы

Сенсорный выключатель LED на Arduino UNO: простой DIY-проект

Производственный процесс

  1. Управление светодиодом с PIR-датчиком движения на Raspberry Pi
  2. Создание многодатчиковой системы мониторинга температуры и света с Raspberry Pi и DS18B20
  3. Датчик занятости ванной комнаты на Raspberry Pi с голосовыми и SMS-уведомлениями через Twilio
  4. Цифровой датчик света — управление светодиодом по освещённости на Windows 10 IoT Core
  5. Передача данных температуры и влажности между двумя Arduino через Firebase
  6. Настольная RGB-лампа с управлением жестами – Интерактивное беспроводное освещение
  7. Робот для поиска людей на базе Arduino Uno: пошаговая интеграция датчиков
  8. Надежный ИК-датчик пульса на Arduino: пошаговое руководство
  9. Android-управляемая робот-платформа на Raspberry Pi и Motor Shield
  10. Умная банка на ESP8266 + Arduino: мониторинг наполненности в реальном времени