Сенсорная кнопка Ардуино ttp223

Сенсорная кнопка Ардуино ttp223 позволяет сделать удобный включатель/выключатель реле или осветительных приборов. Правильная настройка работы ttp223 допускает использование модуля без микроконтроллера. Рассмотрим в этой статье, характеристики сенсора, как использовать ttp223 без Ардуино для включения приборов и, как правильно подключить модуль ttp223 к Arduino Nano.

Модуль сенсорной кнопки TTP223 Ардуино

При подключении питания к ttp223 Arduino, на выходе OUT сенсорного датчика устанавливается низкий уровень сигнала. Если прикоснутся к рабочей области модуля, выход OUT переключится на высокий уровень и включится встроенный светодиод. Режим работы ttp223 можно настроить по своему усмотрению — для этого на модуле предусмотрены перемычки А и В (по умолчанию перемычки не замкнуты).

Настройка режима работы сенсорного модуля ttp223
Настройка режима работы сенсорного модуля ttp223

При замыкании перемычки А, сигнал на выходе OUT инвертируется, т.е. при касании пальцем рабочей области на выходе устанавливается низкий уровень сигнала. Перемычка В включает режим фиксации переключения модуля, т.е. чтобы переключить состояние сигнала на выходе OUT, необходимо повторно коснутся датчика. Далее представлены основные характеристики ttp223 Arduino.

Характеристики TTP223 (datasheet на русском)

Сенсорная кнопка ttp223 Ардуино выполнена на базе микросхемы TTP223-BA6 в виде бескорпусного модуля. Датчик имеет площадку на печатной плате в виде металлизированной поверхности с надписью «touch». Чувствительность TTP223 зависит от конденсатора – место под который предусмотрено на плате. При установке конденсатора 50 пикофарад чувствительность датчика будет минимальная.

Технические характеристики TTP223:

  • Напряжение питания: 2 – 5,5 Вольт;
  • Потребляемый ток: 70 — 500 мкА;
  • Выходной уровень (при питании 5 В): 4 Вольта (высокий) / 0 Вольт (низкий);
  • Максимальное время срабатывания: 220 мС;
  • Размеры модуля: 11 x 15 мм.

Подключение сенсорной кнопки без Ардуино

Сенсорная кнопка ttp223 выносной сенсор
Сенсорная кнопка ttp223 выносной сенсор

На схеме размещенной выше, плата Arduino Uno используется в качестве источника питания. При этом к выносному сенсору ttp223 не стоит подключать больше 3 светодиодов. Для управления большой нагрузкой с помощью данного модуля следует использовать транзистор или релейный модуль (силовой ключ), который будет замыкать цепь с высоким током. Пример такого подключения размещен ниже.

Схема подключения ttp223 и LED ленты
Схема подключения ttp223 и LED ленты

Выносной модуль можно использовать без микроконтроллера, если перевести ttp223 в режим работы триггера. Для этого следует замкнуть перемычку B и тогда режим будет переключаться при каждом касании к сенсору. Обратите внимание, что кнопку можно включать в электрическую цепь только, как логический ключ. Большие нагрузки (моторы, адресная LED лента или реле) работать не будут, сенсор просто сгорит.

Как подключить сенсорную кнопку к Ардуино

Для этого занятия потребуется:

  • Arduino Uno / Arduino Nano / Arduino Mega;
  • сенсорный модуль выключателя ttp223;
  • релейный модуль SRD-05VDC-SL-C;
  • макетная плата;
  • светодиод и резистор 220 Ом;
  • провода «папа-папа», «папа-мама».
Сенсорная кнопка ttp223 схема подключения
Сенсорная кнопка ttp223 схема подключения к Ардуино

Следующая программа будет включать светодиод, подключенный к 7 пину микроконтроллера, при касании к сенсору. так как в это время на пин 2 будет поступать логическая единица (высокий сигнал). Схема сборки и сам код очень простой, а модуль работает без фиксации (т.е. перемычка B разомкнута). После сборки схемы, размещенной выше, загрузите следующий скетч в плату Arduino Uno.

Скетч. Подключение ttp223 к Ардуино (Touch Sensor)

void setup() {
   pinMode(7, OUTPUT);  // объявляем пин 7 как выход
   pinMode(2, INPUT);       // объявляем пин 2 как вход
}

void loop() {
   // когда на pin 2 поступает высокий сигнал включаем светодиод
   if (digitalRead(2) == HIGH) { digitalWrite(7, HIGH); }

   // когда на pin 2 поступает низкий сигнал выключаем светодиод
   if (digitalRead(2) == LOW) { digitalWrite(7, LOW); }
}

Пояснения к коду:

  1. этот пример программы с touch sensor Arduino довольно простой и ничем не отличается от подключения тактовой кнопки к Ардуино;
  2. если сконфигурировать пин 7 с помощью INPUT_PULLUP, то можно удерживать светодиод во включенном состоянии (следующий пример).



Сенсорная кнопка ttp223 в режиме работы переключателя
Сенсорная кнопка ttp223 в режиме работы переключателя

В следующем примере модуль touch sensor работает в режиме фиксации (триггера), т.е. перемычка B замкнута. Включение/выключение релейного модуля будет происходить при каждом касании к сенсору. Программа для микроконтроллера при этом остается прежней, так как после того, как вы уберете палец с модуля, на выходе ттп223 все равно сохранится высокий уровень сигнала (логическая единица).

Скетч. Сенсорный переключатель ttp223 (Touch Sensor)

boolean ledState = 0;
boolean buttonWasUp = true;

void setup() {
  pinMode(7, OUTPUT); // пин для подключения транзистора
  pinMode(2, INPUT_PULLUP); // пин для подключения ttp223
}

void loop() {
  // узнаем состояние кнопки
  boolean buttonIsUp = digitalRead(2);

  // если кнопка нажата меняем состояние пина 7
  if (buttonWasUp && !buttonIsUp) {
    delay(10);
    buttonIsUp = digitalRead(2);
    if (!buttonIsUp) { ledState = !ledState; }
  }
  buttonWasUp = buttonIsUp;

  digitalWrite(7, ledState);
}

Пояснения к коду:

  1. при подключении модуля реле, вместо транзистора, можно управлять устройствами с большими токами, например, моторами и лампами 220 Вольт;
  2. фиксация включения осуществлена на программном уровне, без перевода сенсора в режим триггера.

Заключение. В этом обзоре мы рассмотрели емкостный датчик прикосновения ttp223 для микроконтроллера Ардуино, который можно использовать в различных DIY устройствах. Благодаря своей низкой стоимости и простотой схеме подключения данный модуль будет отличной альтернативой обычной тактовой кнопке. Если у вас возникли вопросы по этой теме — оставляйте их в комментариях к этой записи.



3 Replies to “Сенсорная кнопка TTP223 подключение к Ардуино”

  1. Здравствуйте. Вопрос такой. Можно ли и как сенсорной кнопкой отключать и включать аудиосигнал перед унч в схеме выхода аудио из ESP32? И надо ли обязательно при этом задействовать программу с микроконтроллера?

  2. И ещё такой вопрос. Длительность нажатия сенсорной кнопкой короткое и длительное определяется так же как и с обычной механической кнопкой? Могли бы вы опубликовать скетч с определением длительности кнопки? И какое-нибудь действие, для примера, в зависимости от длительности нажатия?

  3. Да, было бы интересно если б яркость светодиода регулировалась длительностью нажатия.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.