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

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

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

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

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

はじめに

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

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

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

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

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

タッチセンサー「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);
}

感想

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

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

記事に関するご質問などがあればTwitterへお返事ください。
この記事で紹介した商品
人気のArduino互換機
Arduinoで人気の周辺パーツ
Arduinoのオススメ参考書

▼ Arduino初心者向きの内容となっています。ほかのArduino書籍と比べて図や説明がとてもていねいで、読みやすかったです。Arduinoで一通りのセンサーが扱えるようになります。

▼ 外国人が書いた本を翻訳したものです。この手の書籍は、目からうろこな発見をすることが多いです。

▼ Arduinoの入門書を既に読んでいる方で、次のステップを目指したい人向きの本です。C言語のプログラミングの内容が中心です。ESP32だけでなく、ふつうのArduinoにも役立つ内容でした。

関連記事