静電容量式タッチセンサTTP223をArduinoで使う

Arduinoで静電容量式タッチセンサーの使い方【TTP223】

この記事では、Arduinoで静電容量式タッチセンサーTTP223の使い方を解説していく。タッチセンサーは、Arduinoやラズパイなどと相性の良いセンサデバイスだ。機械的な動作がないため壊れにくく、防水対策がしやすいのもタッチセンサーの良い所。

ぜひ皆さんもタッチセンサーの魅力に触れてみてほしい。

ちなみに、この記事ではこちらのKKHMFのタッチセンサーを使用した。10個セットなのに格安なので、要チェック!

KKHMF 10個 TTP223 静電容量式 タッチ スイッチ ボタン セルフロック モジュール 「国内配送」
KKHMF 10個 TTP223 静電容量式 タッチ スイッチ ボタン セルフロック モジュール 「国内配送」
Amazon

はじめに

写真のように基板がつながって送られてくるので、パキッと折って1つ1つバラバラにする。ブレッドボードで使う場合は、ピン端子の半田付けが必要。ピン端子は付属されていないので注意しよう。

タッチセンサーとPro Micro
タッチセンサーとPro Micro

HiLetgo® 20個セット 40Pin 2.54mm 単一列端子ピン ヘッダー ストリップ PBC 1*40 P ピッチ Ardunioに対応 DIYセット
HiLetgo® 20個セット 40Pin 2.54mm 単一列端子ピン ヘッダー ストリップ PBC 1*40 P ピッチ Ardunioに対応 DIYセット
Amazon

1円玉と比較してもこのようにかなり小さい。

タッチセンサーと1円玉
タッチセンサーと1円玉

なお、ArduinoはLeonardo Pro Micro(Arduino互換機)を使用した。

KKHMF Leonardo Pro Micro ATmega32U4 5V/16MHz Arduinoに対応
KKHMF Leonardo Pro Micro ATmega32U4 5V/16MHz Arduinoに対応
Amazon

タッチセンサー「TTP223」の使い方

タッチセンサー「TTP223」
タッチセンサー「TTP223」

このタッチセンサーは電源電圧は2V〜5.5Vの範囲で使える。

タッチセンサーには「223B 9NNH」というICチップが搭載されている。ジャンパピンによってタッチセンサーのモードを次の通りに変えられる。

TOG(B)AHLB(A)動作・機能
00モーメンタリ
タッチされたらHIGHを出力
01モーメンタリ
タッチされたらLOWを出力
10オルタネイト
電源オン時にLOWの状態
11オルタネイト
電源オン時にHIGHの状態

基板に書かれているAはAHLB、BはTOGへ配線されているので注意しよう。

  • モーメンタリとは、タッチしている間だけオンになる動作
  • オルタネイトとは、タッチするたびにON・OFFが切り替わる動作

今回は、タッチしている間だけONになるモーメンタリで使用する。また、タッチされたらHIGHの信号が出力されるモードに設定する。

「223B 9NNH」データシート

タッチセンサーを使ってArduinoでLチカしよう!

それでは実際にタッチセンサーを使ってArduinoでLEDを点灯させてみよう。

タッチセンサーとArduinoの配線

タッチセンサーとArduinoの配線図はこちら。LEDのアノードをA10に繋ぎ、1kΩ程度の抵抗を介してGNDへ落とした。

タッチセンサーとArduinoの配線図
タッチセンサーとArduinoの配線図

タッチセンサーArduino
Vcc5V
I/OA9
GNDGND

タッチセンサーでLチカするプログラム

タッチセンサーでLチカ
タッチセンサーでLチカ

タッチセンサーに触れている間だけ、LEDを点灯させるプログラムがこちら。タッチセンサーの使い方はとてもカンタンで、digitalRead関数を使ってタッチセンサーの状態を監視しすればよい。

/*
  Created by Toshihiko Arai.
  https://101010.fun/iot/arduino-touch-sensor.html
*/

const int SENSOR = 9;
const int LED_PIN = 10;

void setup() {
  pinMode(SENSOR, INPUT);
  pinMode(LED_PIN, OUTPUT);
}

void loop() {
  if (digitalRead(SENSOR)==HIGH) {
    digitalWrite(LED_PIN, HIGH);
  } else {
    digitalWrite(LED_PIN, LOW);

  }
  delay(1);
}

感想

このタッチセンサーは、完全に触れる前から反応するほど感度が良い。これなら厚めのケースの中に収めても問題ないだろう。

また、誤作動もなく以前作った自作タッチセンサーとはえらい違いだ。

今回使用した関連製品はこちら

KKHMF 10個 TTP223 静電容量式 タッチ スイッチ ボタン セルフロック モジュール 「国内配送」
KKHMF 10個 TTP223 静電容量式 タッチ スイッチ ボタン セルフロック モジュール 「国内配送」
Amazon
KKHMF TTP229 4x4 キーボード デジタル タッチ センサー 静電容量式 タッチ スイッチ モジュール Arduino用
KKHMF TTP229 4x4 キーボード デジタル タッチ センサー 静電容量式 タッチ スイッチ モジュール Arduino用
Amazon
KKHMF Leonardo Pro Micro ATmega32U4 5V/16MHz Arduinoに対応
KKHMF Leonardo Pro Micro ATmega32U4 5V/16MHz Arduinoに対応
Amazon
HiLetgo® 20個セット 40Pin 2.54mm 単一列端子ピン ヘッダー ストリップ PBC 1*40 P ピッチ Ardunioに対応 DIYセット
HiLetgo® 20個セット 40Pin 2.54mm 単一列端子ピン ヘッダー ストリップ PBC 1*40 P ピッチ Ardunioに対応 DIYセット
Amazon

Arduinoで人気の周辺パーツ

サインスマート(SainSmart) 8チャンネル 5V リレーモジュール for Arduino DSP AVR PIC ARM
サインスマート(SainSmart) 8チャンネル 5V リレーモジュール for Arduino DSP AVR PIC ARM
Amazon
KKHMF 10個 TTP223 静電容量式 タッチ スイッチ ボタン セルフロック モジュール 「国内配送」
KKHMF 10個 TTP223 静電容量式 タッチ スイッチ ボタン セルフロック モジュール 「国内配送」
Amazon
DSD TECH 2 PCS OLED 0.91インチディスプレイ  I2C
DSD TECH 2 PCS OLED 0.91インチディスプレイ I2C
Amazon
OSOYOO(オソヨー) DIY センサーモジュール キット
OSOYOO(オソヨー) DIY センサーモジュール キット
Amazon

人気のArduino互換機

ELEGOO Arduino用 Nanoボード V3.0 CH340/ATmega328P
ELEGOO Arduino用 Nanoボード V3.0 CH340/ATmega328P
Amazon
HiLetgo ESP32ワイヤレススティックLora + WiFi + BLE開発ボード LoRaWAN 868 / 915MHz、0.49インチOLEDディスプレイ
HiLetgo ESP32ワイヤレススティックLora + WiFi + BLE開発ボード LoRaWAN 868 / 915MHz、0.49インチOLEDディスプレイ
Amazon
M5Stack M5StickC Plus ESP32-PICO
M5Stack M5StickC Plus ESP32-PICO
Amazon
M5Stack Core2 開発キットデュアルコア32ビット240Mhz LX6プロセッサー
M5Stack Core2 開発キットデュアルコア32ビット240Mhz LX6プロセッサー
Amazon

Arduinoのオススメ参考書

電子部品ごとの制御を学べる! Arduino 電子工作実践講座 改訂第2版
電子部品ごとの制御を学べる! Arduino 電子工作実践講座 改訂第2版
KindleAmazon
Arduinoをはじめよう 第3版 (Make:PROJECTS)
Arduinoをはじめよう 第3版 (Make:PROJECTS)
Amazon
ESP32&Arduino 電子工作 プログラミング入門
ESP32&Arduino 電子工作 プログラミング入門
KindleAmazon
記事に関するご質問などがあれば、ぜひTwitterへお返事ください。