傾くと光る 傾斜センサー

第15回 IoT×プログラミング教育

単純で簡単そうな部品「傾斜センサー」を使ってみます。

傾斜センサーとは?

Arduino拡張キットにコンデンサーみたいな形のセンサーが入っていました。

降ると音がして、中に球が入っているようです。

説明書には「傾斜センサー」と書かれていたので、傾きを取得してくれるのでしょう。

「ESPr Developer」を使う

傾斜センサーに反応して光る仕組みを作りますが、最終的には無線接続をしたかったので、今回は「Arduino」ではなく、Wi-Fi搭載の「ESPr Developer」をArduino互換機として使います。

以前「ESPr Developer」について予習した知識では

  • アナログ入力は1つしかなく、TOUTピンを使う
  • TOUTは1Vまでの入力なので分圧回路を組む

・・・ここら辺は、子供に説明できるレベルを超えているような気がして、傾斜センサーを中心に見ていきます。

傾斜センサーの回路を組む

「ESPr Developer」の下にジャンパーワイヤーを差し込んでいます。

傾斜センサーは足が2本しかないので、今まで使ったセンサーの中で最も簡単な部類に入るかと思います。片方の足に電圧をかけ、アナログ入力(TOUT)につなぐだけです。

傾きに応じて、電圧が変化すると思いきや・・・ON、OFF、スパッと切り替わります。

これは、センサーというよりスイッチでは?

傾くとスイッチが切れるようです。

アナログ入力を使う必要があるのか分かりませんが、分圧回路で510Ωと200Ωの抵抗器を使い、TOUTへ入力を1V以下に抑えています。

あとは、傾きに反応して光るよう、13ピンにLEDをつないでいます。

傾けて光らせよう

 

計算では・・・常時942くらいのアナログ入力値を受け取ることになると思いますが、余裕をみて800より大きい時を通常時とし、800以下を傾いたと判断します。

#define PIN 13
int val = 0; //アナログ入力値

void setup(){
 pinMode(PIN, OUTPUT);
}

void loop(){
 val = analogRead(0);
 if(val > 800){ //傾き無し
  digitalWrite(PIN,LOW);
 }else{ //傾き中
  digitalWrite(PIN,HIGH);
 }
 delay(50);
} 

傾けている間、光ります。

やってみます。

傾けると・・・

光ります。

・・・これだけです。

しかし、次回は「ESPr Developer」を使ったIoTを体験できるようにします。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)