Arduinoと戯れてみる!

Arduino 入門 Lesson 41 【タッチセンサ その3】

arduino-lesson41-00Arduino入門編
スポンサーリンク
子供と一緒に始める マイコンプログラム
Arduino 入門
Lesson 41
【タッチセンサ その3】

こにんちは、管理人のomoroyaです。

センサーの使い方の基本を学習する入門編。

 

世の中には、まだまだ色々なセンサーがあります。

これからも、色々なセンサーで遊んでいきます。

 

本記事はLesson 41 【タッチセンサ その3】です。

Lesson 3940にてタッチセンサモジュール、自作タッチセンサーで遊びました。

似たようなセンサモジュールを見つけたので「本Lesson その3」でご紹介。

 

こちらのセンサーモジュールも、2回路入り低動作電圧低オフセット電圧コンパレータLM393を使用したタッチセンサモジュール。

Amazonでは売っていませんので、あしからず。

 

Arduino入門編の解説にて使用しているArduinoは互換品です。

互換品とは言え、Arduinoはオープンソースであり複製して販売するのもライセンス的に問題なし。

そのため互換品の品質も悪くなく、それでいて値段は安いです。

正規品本体の値段程度で豊富な部品が多数ついています。

 

正規品の本体単品がほしい方はこちらとなります。

 

スポンサーリンク

はじめに

今回使用する「タッチセンサモジュール」の動作はLesson 39と同様です。

接触するとパルス波形が出力され実装されたLEDが光るというもの。

 

詳細な回路に関しては時間を見つけて基板から読み取って書き起こす予定・・・。

Lesson 39と同じようなモジュール化されたタッチセンサが他にもありますよという紹介です。

 

Lesson 40にてトランジスタ(NPN)、抵抗、LEDだけで接触を感知するセンサを作成しました。

トランジスタを用意して、作るのは面倒・・・。

そんな時は、本Lessonのタッチセンサはモジュール化されていて感度調整不要のため扱いやすくおすすめ。

 

Lesson 41 目標

本Lessonの目標は以下です。

1.タッチセンサモジュール(touch sensor)の使い方を学習する
2.接触を検知するスケッチを描く
3.タッチセンサで遊ぶ

いつものように、遊ぶことが重要です。

本LessonはLesson 39のタッチセンサモジュールの別商品のご紹介と思ってもらえれば良いです。

 

準備

ではLessonの準備に取り掛かりましょう。

 

部品は「タッチセンサモジュール」のみ。

ただし、動作の見た目を分かり易くするために自作のLチカも使います。

 

必要なもの

※ブレッドボードはセンサとUNOを直接つなぐ場合不要です。
※ジャンパワイヤーは「M-M」「M-F」を必要に応じて使い分けてください。

 

Jumper wire、抵抗は今後も頻繁に利用します。

Jumper wireはできれば、「オス-メス オス-オス メス –メス」の3種類を揃えておくことをお勧めします。

短めが使いやすい場合も。

 

使用部品説明

タッチセンサモジュール」について説明していきます。

 

タッチセンサモジュール 実物写真

下の写真がタッチセンサモジュールの実物写真です。

本Lessonで使用するものは、回路が基板実装されたもの。

VCC、OUT、GNDの3ピンのみでシンプルです。

右側の丸の部分にタッチすると基板に実装されたLEDが光るとともに、OUTピンにパルスが出力されます。

touch-sensor-module

 

タッチセンサモジュール 回路図

本Lessonのタッチセンサモジュール回路について。

電圧コンパレータIC(LM393)、J3Y(トランジスタ)、2TY(トランジスタ)が実装されたモジュールとなります。

あとは、チップ抵抗、チップ容量、LEDが実装されています。

 

詳細な回路図については、基板から回路を読み取る予定・・・。

とくに、データシートなどなく説明はどこにもありません。

実装されている、コンパレータIC、トランジスタの仕様から使い方はLesson39と同じであろうことは想像がつきます。

 

タッチセンサ 仕様

センサモジュールの仕様は以下。

  • 動作電源:3~5V
  • 動作電流:10mA前後
  • 出力パルス:Highレベル 3.9V / Lowレベル 0.1V
  • 反応時間: < 2μs

 

本Lessonは遊び、学習を想定しています。

Arduinoの仕様範囲内で使用していれば問題になることもありません。

遊び、学習以外での使用用途をお考えの場合はデータシートを必ず確認しましょう。

 

実践 回路作成とコード作成

最初に回路図を確認してください。

次に、回路図に合わせて部品を接続します。

最後にコードを書いて、振動センサを動かしていきましょう。

 

Arduinoのピン配置を確認したい方は番外編02を参照してください。

 

回路図

タッチセンサが実装されたモジュール端子を接続していきます。

Arduinoはデジタル入力ピンとして10、デジタル出力として13を使用。

あとは、5VGNDのみ。

 

回路図がこちら。
※LEDが不要の場合は、13番ピンには何も接続する必要はありません。

circuit-diagram

 

 

こちらがブレッドボード図。

breadboard-diagram

 

 

回路図は「fritzing」を利用しています。

「fritzing」の使い方は下記を参照してください。

 

接続

下図に示すように、用意した部品を使用して接続しましょう。

部品は「タッチセンサモジュール」、LED、抵抗のみとなります。
※センサが実装されたモジュール

部品は3個、接続は簡単です。

タッチセンサモジュールと接続するジャンパーワイヤーはF-Mを使用してます。

そのため、面実装されているLEDで確認する場合はブレッドボードもいりません。

 

毎回ブレッドボードにLEDをセットするのも面倒なので「Lチカ」自作しました。

おすすめです。

 

使用するポートは、デジタル入力10、デジタル出力13、5V、GND。

穴に挿入しづらいときは、ラジオペンチなどを使用してください。

actual-circuit

 

 

コードの書き込み

接続が終わったら、USBケーブルを使用してUNOにプログラムを書き込んで行きましょう。

コードを書き終えたら、いつでも利用できるように「ファイル」⇒「名前を付けて保存」で保存しておきましょう。

 

コマンド説明

本Lessonでは、特に新しいコマンドはありません。

 

サンプルコード

本Lessonのスケッチではデジタル出力として13を指定してLEDを点灯させています。

タッチセンサモジュールに実装されているLEDで接触しているかどうがわかります。

不要な方はコメントアウトする必要があります。

目的は、D0の出力をLEDで分かり易く確認するためのものです。

また、シリアルモニタでOUTの状態を確認するスケッチも入っています。

//Lesson 41 タッチセンサモジュール(touch sensor module)
//接触を検知するセンサ
//https://omoroya.com/

int DQ0 = 10; //センサモジュールのOUT出力先
int led = 13; //センサの状態をモニタするためのLED <- いらなければ不要
  
void setup (){
  pinMode (DQ0, INPUT);  //10番ピンをINPUT指定
  pinMode (led, OUTPUT); //13番ピンをOUTPUT指定
  Serial.begin (9600); //シリアル通信のデータ転送レートを9600bpsで指定
}
  
void loop (){
  int D0_out;

  //タッチセンサモジュールOUTピンの読み取り
  D0_out = digitalRead(DQ0); //10番ピンの状態を読み取り
  Serial.println (D0_out);   //センサの出力値をシリアルモニタで確認

  if(D0_out == 0){           //10番ピンが"0" 接触している
    digitalWrite(led, HIGH); //13番ピンに"HIGH"を出力
    }
  else if (D0_out == 1) {    //10番ピンが"1" 接触していない
    digitalWrite(led, LOW);  //13番ピンにLowを出力
  }
}

 

動作確認 LEDの「点灯」「消灯」

では、さっそく動作を確認していきます。

センサの灰色の丸い部分を手で触ってみてください。

  • 接触なし → LEDは消灯
  • 接触あり → LED点灯

 

補足
OUTの出力状態を知りたい場合はシリアルモニタを開きます。
OUTの出力は非接触「1」接触「0」となっていることがわかります。

 

■触っていない状態

non-contact

 

■触っている状態(モジュールのLEDとLチカが点灯)

contact

 

使用した感想
感度良く、接触を感知することができます。
扱いやすいセンサと考えます。

 

まとめ

本Lessonは、以下を目標としました。

1.タッチセンサ(touch sensor)の使い方を学習する
2.接触を検知するスケッチを描く
3.タッチセンサで遊ぶ

 

Lesson 39、40、41にてタッチセンサについて学習していきました。

その1、その2、その3は原理的には同じセンサです。

次回は、方式の異なるタッチセンサで遊んでみようかなと考えています。

 

Lesson 41 【タッチセンサ その3】 はここまで。

色々工夫をすれば遊びに使えるセンサです。

ぜひ、遊んでみてください。

疑問点、質問などありましたら気軽にコメントください。

 

次回、Lesson 42は 方式の異なるタッチセンサで遊んでみたいと考えています。

Arduino 入門 Lesson 40 【タッチセンサ その2】
本記事はLesson 40 【タッチセンサ その2】。Lesson 39でタッチセンサのmジュールで遊びました。ダーリントントランジスタIC(KSP13)、コンパレータIC(LM393)が実装されたセンサモジュールです。本Lessonではも…

 

最後に

疑問点、質問などありましたら気軽にコメントください。

この電子部品の解説をしてほしい!などなどなんでもOKです。

リンク切れ、間違いなどあればコメントいただけると助かります。

 

Arduino入門編、番外編、お役立ち情報などなどサイトマップで記事一覧をぜひご確認ください。

 

Arduino入門編で使用しているUNOはAmazonにて購入可能です。

互換品とは言え、Arduinoはオープンソース。

複製して販売するのもライセンス的に問題なし。

 

そのため互換品の品質も悪くなく、それでいて値段は安いです。

正規品本体の値段程度で豊富な部品が多数ついています。

 

学習用、遊び用、お試し用には安価な互換品がおすすめです。

 

 

上記のものでも十分に多数の部品が入っていますが、最初からもっと多数の部品が入っているこちらもお勧めです。

 

Amazonでお得に買う方法

Amazonでお得に購入するなら、Amazonギフト券がおすすめです。

現金でチャージするたびに、チャージ額に応じたポイントが付与されます。

最大2.5%!!!(Amazonプライム会員ならさらにお得)

チャージ額(一回分)一般プライム会員
5,000円~19,999円0.5%1.0%
2,0000円~39,999円1.0%1.5%
40,000円~89,999円1.5%2.0%
90,000円~2.0%2.5%

さらに、初回チャージで2000ポイントもらえるキャンペーンも実施中!
※いつもは1000ポイント、今なら2000ポイントです!

\Amazonギフト券 2000ポイントキャンペーン/
Amazonチャージ 初回購入で2000ポイントキャンペーン

 

補足情報
コンビニ・ATM・ネットバンクが対象
購入は1円単位で可能

コメント

タイトルとURLをコピーしました