0
КОРЗИНА
0 ТОВАРА
 Сенсорная кнопка TTP223 для Arduino ардуино
 Сенсорная кнопка TTP223 для Arduino ардуино
 Сенсорная кнопка TTP223 для Arduino ардуино
 Сенсорная кнопка TTP223 для Arduino ардуино

Сенсорная кнопка TTP223

Ёмкостная кнопка на микросхеме TTP223: срабатывает от касания пальцем, в том числе сквозь тонкую панель корпуса. Питание 2–5,5 В, перемычка B включает фиксацию, перемычка A переворачивает выход. Подробнее...
Модификация
В наличии: 96 шт. Артикул: # 1865
18 ₽
Возможен безналичный расчёт для юридических лиц при оформлении заказа
Сообщить о поставке на e-mail:
{{ status }}
  • В наличии и готов к отправке!
  • Доставка товаров по России, Белоруссии, Казахстану
  • Возможен безналичный расчёт для юридических лиц при оформлении заказа
Количество:
Перейти в корзину и оформить заказ.
MAX
Telegram
Обсудить вопросы приобретения, не технические!
*Доступно общение только текстовыми сообщениями, звонки и аудио сообщения не обслуживаются
Офлайн
Описание товара
Подробное описание товара

Общие сведения

Сенсорная кнопка TTP223 — маленькая плата с ёмкостным датчиком касания. Коснулись пальцем площадки — на выходе I/O сменился сигнал. Механики в ней нет, заедать и изнашиваться нечему. Датчик чувствует не нажатие, а близость пальца, поэтому срабатывает и сквозь тонкую стенку корпуса из пластика или стекла.

Всю работу делает микросхема TTP223-BA6 (на корпусе маркировка «223B»). Она сама следит за ёмкостью площадки, сама подстраивается под окружение и выдаёт наружу готовый логический сигнал «0» или «1». Библиотеки не нужны: модуль читается как обычная кнопка, через digitalRead(). Питание — от 2 до 5,5 В, так что модуль подходит и к Arduino Uno на 5 В, и к ESP32 или Raspberry Pi Pico на 3,3 В.

Режим задают две пары площадок на плате: капля припоя на A переворачивает выход, на B превращает кнопку в выключатель с фиксацией. С завода обе разомкнуты: пока палец на площадке, на I/O «1», убрали — «0». Светодиод на плате при этом загорается от касания, так что проверить модуль можно, просто подав на него питание.

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

Сенсор — медная площадка на обратной стороне платы, под белым кругом с надписью TOUCH. Касайтесь этой стороны и ею же прижимайте модуль к стенке корпуса. И второе: около 0,5 с после подачи питания модуль калибруется. В это время не трогайте площадку и ничего на ней не держите — всё, что лежит на ней в момент включения, модуль примет за «ничего нет».

Характеристики

  • Микросхема: TTP223-BA6 (Tontek), корпус SOT-23-6, маркировка «223B».
  • Напряжение питания: 2,0–5,5 В. 5,5 В — это и предельно допустимое значение, запаса сверху нет.
  • Выход I/O (несмотря на название, только выход): двухтактный КМОП, сам выдаёт и «0», и «1», подтягивающий резистор не нужен. Уровень «1» не выше напряжения питания модуля.
  • Ток выхода при питании 3 В, типовые значения: в «0» выход принимает 8 мА (при 0,6 В на выходе), в «1» отдаёт 4 мА (при 2,4 В). Для питания 5 В производитель цифр не даёт.
  • Ток потребления микросхемы при 3 В, без нагрузки: 1,5 мкА, не больше 3 мкА.
  • Время отклика при 3 В: до 220 мс в экономичном режиме, до 60 мс в быстром.
  • Калибровка после подачи питания: около 0,5 с.
  • Режимы: перемычка A переворачивает уровень выхода, перемычка B включает фиксацию. С завода: без фиксации, при касании «1».
  • Чувствительность: с завода максимальная, снижается конденсатором 0–50 пФ.
  • Индикация: светодиод на плате.
  • Выводы: GND, I/O, VCC — три отверстия под пайку.
  • Рабочая температура микросхемы: −40…+85 °C; защита от статического разряда — 4 кВ.
  • Вес: 1 г.

Токи, время и температура — из даташита на микросхему, редакция 2.1 (ссылка внизу). Для модуля целиком производитель их не даёт.

Перемычки A и B: четыре режима

Рядом с подписями выводов две пары квадратных площадок: A и B. Это не штырьки под джампер, а места под каплю припоя. По разводке платы A подключает к питанию вывод микросхемы, который выбирает уровень выхода, а B — вывод, который включает фиксацию. Внутри микросхемы оба вывода подтянуты к земле, поэтому разомкнутая пара значит «выключено» — это и есть заводской режим.

ABЧто делает выход I/OСразу после включения питания
не запаянане запаяна«1», пока палец на площадке (так с завода)«0»
запаянане запаяна«0», пока палец на площадке«1»
не запаяназапаянакаждое касание переключает: «0» → «1» → «0»…«0»
запаяназапаянакаждое касание переключает: «1» → «0» → «1»…«1»
Что делает выход сенсорной кнопки TTP223 в четырёх режимах перемычек A и B
  • Чтобы замкнуть пару, коснитесь жалом с каплей припоя сразу обеих площадок. Разомкнуть — снять припой оплёткой. Паяйте при отключённом питании.
  • Из скетча режим не переключить: A и B наружу не выведены. Если режим нужно менять на ходу, делайте выключатель программно (пример ниже).
  • Режим с фиксацией не запоминает состояние: после отключения питания выход снова такой, как в последнем столбце таблицы. Если свет должен помнить, горел ли он, делайте выключатель в скетче и храните состояние в EEPROM платы.
  • В инструкциях в интернете A и B иногда путают местами. На этой плате A — уровень выхода, B — фиксация: так идут дорожки к выводам микросхемы. Проверка: запаяйте B и залейте первый скетч из «Примеров» — «касание» появится на одно касание, «отпустили» — только на следующее.

Подключение

Подключение сенсорной кнопки TTP223 к Arduino Uno: GND к GND, I/O к выводу 2, VCC к 5V

Провода три: GND — на землю, VCC — на питание, I/O — на любой цифровой вывод. В примерах ниже это вывод 2 платы Piranha Uno или Arduino Uno. Внутреннюю подтяжку на входе включать не нужно: выход модуля сам тянет линию и вверх, и вниз. Кнопок можно поставить столько, сколько свободных выводов: GND и VCC у всех общие, а каждый I/O — на свой вывод.

  • Проводами к Arduino. Провода припаивают прямо в отверстия модуля, заводя их со стороны деталей. Удобно взять провода «папа-мама» и откусить у каждого ненужный наконечник. Для гнёзд Arduino Uno и макетной платы оставляют штырёк, для штырьков Trema Shield — гнездо. Другой конец зачищают и припаивают к модулю.
  • В корпус. Провода тоже заводите со стороны деталей. На стороне TOUCH откусите их вплотную к пайке, а бугорки припоя сточите надфилем: эта сторона должна лечь на стенку корпуса без щели.
  • К Trema Shield. У его колодок порядок G–V–S (земля, 5 В, сигнал), а у модуля — GND–I/O–VCC, сигнал посередине. Трёхпроводный шлейф «как есть» подаст 5 В на выход модуля, а питание модуля посадит на цифровой вывод. Соединяйте каждый провод отдельно: GND → G, VCC → V, I/O → S.
  • К платам на 3,3 В (ESP32, ESP8266, Raspberry Pi Pico). VCC подключайте к 3,3 В, а не к 5 В. «1» на выходе не бывает выше напряжения питания модуля: с питанием 3,3 В на вход платы не придёт больше 3,3 В, а с питанием 5 В придёт до 5 В.

Выше 5,5 В модуль не питают: «Крона» на 9 В, 12 В от светодиодной ленты или вывод Vin, когда Arduino питается от адаптера, — за пределом микросхемы. Если так уже включали и модуль греется или молчит, его, скорее всего, не спасти.

Примеры

Проверить кнопку

Светодиод на плате Arduino (вывод 13) повторяет касание, а в мониторе порта (9600 бод) появляются слова «касание» и «отпустили». Перемычки A и B не запаяны.

// Сенсорная кнопка TTP223, перемычки A и B не запаяны (как с завода):
// пока палец на площадке — на выводе I/O «1», убрали палец — «0».
// Подключение: GND → GND, VCC → 5V, I/O → вывод 2.
const uint8_t PIN_TOUCH = 2;    // вывод I/O модуля
const uint8_t PIN_LED   = 13;   // светодиод на плате Arduino

bool lastTouch = false;

void setup() {
  pinMode(PIN_TOUCH, INPUT);    // подтяжка не нужна: выход модуля сам выдаёт и «0», и «1»
  pinMode(PIN_LED, OUTPUT);
  Serial.begin(9600);
  delay(600);                   // модулю нужно около 0,5 с после подачи питания
  Serial.println("Готово, можно касаться");
}

void loop() {
  bool touch = digitalRead(PIN_TOUCH);   // HIGH — палец на площадке
  digitalWrite(PIN_LED, touch);          // светодиод платы повторяет касание
  if (touch != lastTouch) {              // в монитор порта пишем только перемены
    Serial.println(touch ? "касание" : "отпустили");
    lastTouch = touch;
  }
}

Сенсорный выключатель

Классическое применение: коснулись — свет включился, коснулись ещё раз — выключился. Так умеет и сам модуль с запаянной B, но в программе удобнее: модуль остаётся в заводском режиме, перемычки паять не надо, а состояние живёт в скетче — его можно переключить ещё и по таймеру или по датчику.

// Сенсорный выключатель: коснулись — включили, коснулись ещё раз — выключили.
// Перемычки A и B не запаяны. Скетч ловит момент касания (переход «0» → «1»),
// поэтому палец, задержавшийся на площадке, не щёлкает нагрузкой много раз.
const uint8_t PIN_TOUCH = 2;     // вывод I/O модуля
const uint8_t PIN_LOAD  = 13;    // светодиод платы; для реле — вывод, к которому подключён вход реле
const bool    LOAD_ON   = HIGH;  // каким уровнем включается нагрузка: HIGH для Trema-реле,
                                 // LOW для реле, которое срабатывает от «0»

bool loadOn    = false;
bool lastTouch = false;

void setup() {
  digitalWrite(PIN_LOAD, !LOAD_ON);  // сначала уровень «выключено», чтобы реле не щёлкнуло при старте
  pinMode(PIN_LOAD, OUTPUT);
  pinMode(PIN_TOUCH, INPUT);
  Serial.begin(9600);
  delay(600);                        // модулю нужно около 0,5 с после подачи питания
  lastTouch = digitalRead(PIN_TOUCH);
}

void loop() {
  bool touch = digitalRead(PIN_TOUCH);
  if (touch && !lastTouch) {         // палец только что коснулся
    loadOn = !loadOn;
    digitalWrite(PIN_LOAD, loadOn ? LOAD_ON : !LOAD_ON);
    Serial.println(loadOn ? "включено" : "выключено");
  }
  lastTouch = touch;
  delay(10);
}

Лампу или прибор включают через реле. Trema-реле срабатывает от «1» — оставьте LOAD_ON = HIGH; реле с входом IN (1 канал, 5 В) срабатывает от «0» — поставьте LOW. В PIN_LOAD впишите вывод, к которому подключён вход реле, например 7. Вывод 13 для реле не берите: при сбросе Uno (кнопкой RESET, при загрузке скетча, при открытии монитора порта) загрузчик мигает светодиодом на этом выводе, и реле защёлкает вместе с ним. Всё, что под напряжением 220 В, собирайте при отключённой сети и прячьте в закрытый корпус.

А без Arduino, прямо на модуль реле? Мы так не проверяли. Ток выхода при питании 5 В производитель не указывает, а часть тока забирает светодиод модуля, поэтому надёжный путь — через Arduino, как в скетче выше. Лампу, мотор или голую обмотку реле к выводу I/O не подключают совсем: выход рассчитан на миллиамперы.

Как встроить в корпус

Модуль прижимают к стенке корпуса изнутри стороной TOUCH, и палец касается уже панели снаружи. Крепёжных отверстий у платы нет, держится она на клею или на тонком двустороннем скотче без вспененной основы: вспененный скотч оставит между платой и панелью прослойку с воздухом. От чего зависит, сработает ли кнопка сквозь панель:

  • Толщина панели. Тоньше — чувствительнее. Предел у микросхемы есть, но цифрой производитель его не даёт, а цифры «до N миллиметров» в интернете сильно расходятся.
  • Материал. Лучше всего касание проходит сквозь материал с высокой диэлектрической проницаемостью; у стекла она выше, чем у большинства пластиков. Металла в панели быть не должно, металлической и металлизированной краски на ней тоже. По той же причине модуль не ставят за зеркало: на обороте зеркала металлический слой.
  • Зазор. У воздуха проницаемость самая низкая, и любая щель между платой и панелью работает как лишняя толщина. Плату клеят вплотную.

Проверяйте на своём материале до того, как сверлить и клеить: приложите модуль стороной TOUCH к панели, подайте питание и потрогайте снаружи — светодиод на плате покажет, чувствует ли модуль палец. И проверяйте с тем питанием, которое будет в готовом устройстве: прибор на батарейках, никак не связанный с землёй, чувствует палец хуже, чем плата на USB от компьютера (в расчёте Microchip — примерно на треть).

После сборки светодиод модуля смотрит внутрь корпуса и снаружи не виден. Нужна подсветка кнопки — ставьте отдельный светодиод от Arduino.

Несколько модулей под одной панелью ставьте с промежутком, чтобы палец над одной кнопкой не задевал соседнюю. Microchip советует между краями сенсоров 4 мм плюс толщину панели.

Сенсор побольше и чувствительность

Площадку можно продлить проводом к фольге или металлической пластине: чем больше электрод, тем выше чувствительность, но в меру. Провод делайте как можно короче и ведите в стороне от других проводов — ни рядом, ни поперёк, так советует даташит. Огромные электроды модуль «ослепляют»: на форуме Arduino к нему подключали фольгу 30 × 30 см, провод длиной 10 м и металлическую сетку — и он переставал замечать касание. После каждой переделки выключите и снова включите питание, ничего не касаясь.

Электрод — отдельная пластина или фольга. Палец касается его напрямую, поэтому он не должен быть связан ни с сетью 220 В, ни с металлическим корпусом сетевого прибора.

Куда припаять провод: у того же края платы, что и коричневый конденсатор, есть пустое посадочное место — две площадки без детали. По разводке это место под конденсатор чувствительности: одна площадка соединена со входом сенсора, другая — с землёй. Провод паяйте на ту, что не звонится мультиметром с выводом GND.

Если после этого кнопка срабатывает сама, на это же место впаивают керамический конденсатор ёмкостью до 50 пФ, начиная с меньших номиналов: чем больше ёмкость, тем ниже чувствительность. Даташит советует конденсатор с малым температурным дрейфом, лучше всего NPO (C0G). Подойдёт SMD-конденсатор по размеру площадок или обычный выводной, его выводы просто припаивают к площадкам. Если нужны и провод, и конденсатор, конденсатор ставят на обе площадки, а провод паяют к той, что не звонится с GND.

Если что-то не так

  • Не реагирует на палец. Панель слишком толстая, или между платой и панелью зазор. Во время включения палец лежал на площадке — отключите питание и включите снова, не касаясь. Выносной электрод слишком велик (см. выше).
  • Срабатывает сам. Скачет питание: в даташите на это прямое предупреждение. На форуме описан модуль, который сам переключался рядом с понижающим преобразователем, а в стороне от него работал лучше. Металл рядом с сенсором. Вода: капли и мокрая панель для датчика выглядят как касание. Длинный провод к выносному электроду — укоротите его или поставьте конденсатор чувствительности; он же поможет, если кнопка отзывается на руку, которая только проходит рядом.
  • Держу палец, а через несколько секунд «отпускает». По опыту пользователей форума Arduino, через 7–10 с удержания выход сам возвращается в исходное состояние, программой это не лечится. Таймера удержания у этого варианта микросхемы по даташиту нет, похоже, неподвижный палец со временем уходит в автокалибровку. Удержание в секунду-две скетч различит, а функции вида «держите 10 секунд для сброса» на этом модуле не делают.
  • Первое касание срабатывает с задержкой, следующие быстро. Так задумано ради экономии. В покое микросхема опрашивает сенсор редко, и отклик при 3 В — до 220 мс. После касания она переходит в быстрый режим (до 60 мс) и держит его ещё около 12 с после того, как палец убрали.
  • На батарейках ток больше, чем ждали. 1,5 мкА — это ток одной микросхемы при 3 В. Светодиод на плате, пока горит, и плата Arduino, к которой подключён модуль, потребляют несравнимо больше. Считайте ток всей схемы.

Эта кнопка или Trema-модуль?

Есть и сенсорная кнопка в формате Trema на той же микросхеме TTP223. Разница в обвязке:

  • Режим. Здесь — пайкой перемычек A и B. У Trema-модуля — отдельным выводом T: LOW — обычная кнопка, HIGH — с фиксацией. Режим можно менять прямо из скетча, без паяльника.
  • Подключение. Здесь — пайка проводов и внимание к порядку выводов. У Trema-модуля в комплекте шлейф для подключения к Trema Shield.
  • Размер. Здесь — плата весом 1 г, её легко спрятать за тонкую панель. Trema-модуль — 30 × 30 мм.

Берите эту, если кнопку нужно встроить в корпус или кнопок нужно много, а паяльник вас не пугает. Trema-модуль — для учебных проектов и макетов, где паять не хочется, а режим удобно задавать программой.

А если кнопку будут нажимать в перчатках, если на панель попадает вода или кнопку нужно держать дольше нескольких секунд, лучше механическая: Кнопка (Trema-модуль) или корпусная кнопка PBS-33B.

Что пригодится вместе

Ссылки

  • Даташит TTP223-BA6, редакция 2.1 на сайте производителя Tontek (PDF на английском). Цифры в этом описании — по нему.
  • Даташит TTP223, редакция 1.0 (PDF на английском) — общий на всё семейство, про TTP223-BA6 — стр. 9. Таймер удержания на 100 с, выбор режима питания и выводы OPDO и RST у этого варианта недоступны, а рабочая температура там ещё −20…+70 °C (в редакции 2.1 — −40…+85 °C).
  • Руководство Microchip по сенсорным кнопкам (AN2934, PDF на английском) — как размер сенсора и панель влияют на чувствительность.

Комплектация

  • 1 × сенсорная кнопка TTP223.
Товары
Первой необходимости и другие вещи, которые могут пригодиться!
В наличии
130₽
В наличии
Соединительные провода «папа-мама» (40 шт. / 10 см): Шлейф из 40 проводов «папа-мама» длиной 10 см для прототипирования электронных устройств Подробнее
108₽
В наличии
Breadboard Half (400 точек), макетная плата без пайки: Макетная плата на 400 точек для быстрого прототипирования Подробнее
120₽
В наличии
Реле электромеханическое ДО 250V 10 А. 1- канал 5V: Коммутирует цепи как переменного, так и постоянного тока до 10А. Подробнее
90₽
В наличии
Реле (Trema-модуль v2.0): Позволяет коммутировать цепи как переменного, так и постоянного тока до 10 А. Подробнее
261₽
В наличии
Trema Shield: Плата расширения для удобного подключения периферийных устройств Подробнее
540₽
В наличии
680₽
В наличии
Mini MP3-плеер: Компактный MP3-модуль, управляемый по UART Подробнее
186₽
В наличии
144₽
В наличии осталось 7 шт.
Часы реального времени RTC DS1307Z: Электронный энергонезависимый хронометр на чипе DS1307Z Подробнее
252₽
В наличии
Камера OV7670: Подробнее
483₽
690₽
В наличии
351₽
В наличии
351₽
В наличии
351₽
Или перейти в корзину и оформить заказ.
Гарантии и возврат Используя сайт Вы соглашаетесь с условями Библиотеки
Есть вопрос?