Pro Microと静電容量式タッチセンサ(TTP223)【Arduino】

 

Pro Microと静電容量式タッチセンサ(TTP223)【Arduino】

この記事では、Arduinoで静電容量式タッチセンサーTTP223の使い方を解説します。

タッチセンサーは、Arduinoやラズパイなどのマイコンと相性の良いセンサデバイスです。機械的な動作がないため壊れにくく、防水対策がしやすいのもタッチセンサーの良い所ですね。

ぜひみなさんもタッチセンサーの魅力に触れてみてください。

つかうもの

はじめに、この記事でつかうものをご紹介します。

タッチセンサーTTP223

タッチセンサーは、TTP223というこちらのKKHMFのものを購入しました。10個セットですが、格安でした!

▼ 写真のように基板がつながって送られてきます。パキッと折って、1つ1つバラバラにしてから使ってください。

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

また、ブレッドボードで使う場合は、ピン端子の半田付けが必要になります。ピン端子は付属されていないので、お持ちでない方は合わせて購入しましょう。

▼ ご覧の通り1円玉よりも小さいサイズです。

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

Arduinoボード

ここでは、Arduino互換機であるLeonardo Pro Microを使用しました。

▼ もちろん他のArduinoボードでも構いません。

Arduinoと抵抗で作る自作タッチセンサ〜Pro Micro編の記事でも触れましたが、Arduinoをパソコンのキーボードやマウスとして認識させたい場合は、LeonardoのようなATmega32U4チップ搭載のボードをお使いください。

▼ ATmega32U4搭載ボード

もしまだArduinoをお持ちでないようでしたら、オススメArduinoどれを選べばいい?Arduinoで電子工作をはじめる方へをご参考になさってみてください。

その他

1kΩの固定抵抗を使いますので、あわせて用意しておいてください。カーボン抵抗または金属皮膜抵抗のどちらでもかまいません。

また、LEDを点灯して動作確認しますのでLEDをご用意ください。

ブレッドボードやジャンプワイヤをお持ちでない方は揃えておいてください。

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

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

このタッチセンサーの電源電圧は、2V〜5.5Vの範囲で使用できます。

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

TOG(B) AHLB(A) 動作・機能
0 0 モーメンタリ
タッチされたらHIGHを出力
0 1 モーメンタリ
タッチされたらLOWを出力
1 0 オルタネイト
電源オン時にLOWの状態
1 1 オルタネイト
電源オン時にHIGHの状態
  • モーメンタリとは、タッチしている間だけオンになる動作
  • オルタネイトとは、タッチするたびにON・OFFが切り替わる動作

基板のAジャンパは「AHLB」、Bジャンパは「TOG」へ配線されているので注意しましょう。

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

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

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

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

それでは実際にタッチセンサーを使ってみましょう。タッチセンサーとArduinoでLチカをやっていきます。

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

まずは、次の通りタッチセンサーとArduinoを配線してください。

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

LEDのアノードをA10につなぎ、1kΩ程度の抵抗を介してGNDへ落とします。

タッチセンサー Arduino
Vcc 5V
I/O A9
GND GND

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

こちらの動画のように、タッチセンサーでLチカするプログラムをArduinoに書き込みます。

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

感想

今回はじめてタッチセンサーモジュールを使ってみましたが、とても使いやすかったです。完全に触れる前から反応するほど感度が良く、厚めのアクリルケースなどに収めても反応できると思います。誤作動もほとんどないですし、自作タッチセンサーとは比べ物にならないほど完成度高いです(笑)

YouTubeで モノ作りチャンネル料理チャンネルベースチャンネル 始めました!
記事に関するご質問などがあれば、
Twitter または お問い合わせ までご連絡ください。
人気のArduino互換機
Arduinoで人気の周辺パーツ
Arduinoのオススメ参考書

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

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

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

関連記事