- タッチセンサーの種類
- 植物の接触を検出する方法は?
- 色を変える植物の花瓶を作るのに必要な材料
- タッチベースの色変更Arduinoプラントの回路図
- 植物の接触を検出してLEDの色を変更するArduinoプログラム
この記事では、Arduinoを使用してタッチベースの色変更プラントを構築する方法を学習します。植物に触れると、植物の花瓶の色が自動的に変わります。これは素敵な屋内装飾プロジェクトであり、初心者がいくつかの興味深いものを構築して学ぶための小さな趣味のプロジェクトでもあります。以前は、Arduinoを使用してタッチベースの音楽プレーヤーも構築しました。これは同様の原理で動作します。それらをチェックすることもできます。
さて、私たちがタッチベースの植物と言うとき、ポップアップするかもしれない一般的な質問は、電子回路が植物を通して人間のタッチをどのように検出できるかということです。今日、タッチセンシングデバイスは私たちの周りにあります。スマートフォンやさまざまな種類の電化製品でタッチディスプレイを見ることができます。タッチセンサーは単なるスイッチであり、誰かがタッチセンサーに触れると、センサーは電子回路を閉じて電流を流します。
タッチセンサーの種類
携帯電話からスマート自動販売機まで、今日ではすべての最新デバイスにタッチセンサーが搭載されています。タッチセンサーは主に抵抗膜方式と静電容量方式の2種類があります 。タイプ自体の名前は、動作モードと動作原理を示しています。
抵抗膜方式タッチセンサー:名前が示すように、抵抗膜方式タッチセンサーは導体の抵抗に基づいて機能します。人体に触れると、導体の抵抗率が変化し、電圧も変化します。この電圧変化は回路によって検出され、物事が起こります。
静電容量式タッチセンサー:これは最も一般的に使用されるタイプのタッチセンサーです。一度に複数のタッチを実行できるからです。静電容量式タッチセンサーは、静電容量の変化に基づいて機能します。つまり、センサーに触れると、回路の静電容量が変化し、これがタッチとして検出されます。それでは、回路について詳しく説明しましょう。
植物の接触を検出する方法は?
私たちのプラント回路も静電容量式タッチセンサーに基づいています。つまり、ワイヤーを植物に接続して電極のように機能させ、植物に触れると、体の存在によって静電容量が変化し、これが回路によって検出されます。そして回路について言えば、静電容量の変化を検出し、システム全体を制御するためのマイクロコントローラーが必要です。私たちの場合、マイクロコントローラーはArduinoです。
色を変える植物の花瓶を作るのに必要な材料
- Arduino
- 共通カソードRGBLED
- 1メガオームの抵抗器(茶色、黒、緑)
- 接続線
- 基盤を持つ植物
- 一般的なPCB
タッチベースの色変更Arduinoプラントの回路図
このプロジェクトで使用される完全な回路図を以下に示します。回路はEasyEDAを使用して作成されており、ご覧のとおり、非常に単純な回路です。
まず、Arduinoのピン2とピン4の間に1メガオームの抵抗を接続します。次に、長いワイヤ(銅)をピン4に接続します。このワイヤは電極またはタッチリードとして機能し、RGBLEDの共通グランドをグランドに接続します。 ArduinoのD5と緑からD6、青からD7、最後にワイヤーを植物体に取り付けます。それだけです。接続後のハードウェアのセットアップは次のようになります。
RGB LEDを一般的なパフォーマンスボード(以下に示すように)に接続し、最後にベース(ガラス)をPCB上に配置しました。それでおしまい。
植物の接触を検出してLEDの色を変更するArduinoプログラム
このプロジェクトで使用される完全なプログラムは、このページの下部にあります。プラントの静電容量を検出するには、静電容量センサーライブラリを使用する必要があります。以下のリンクからArduino静電容量センサーライブラリをダウンロードできます。
Arduino静電容量式タッチセンサーライブラリをダウンロード
ライブラリをダウンロードしてArduinoIDEに追加したら、そのライブラリをコードに含めます。このライブラリは、Arduinoピンの静電容量を読み取るのに役立ちます。
#include
すでにピン2とピン4の間に抵抗を接続しているので、ピン4の静電容量を測定する必要があります。
CapacitiveSensor cs_2_4 = CapacitiveSensor(2,4);
静電容量センサーはマイクロコントローラーのピンを切り替えます。つまり、ピンを新しい状態に送信し、受信ピンが送信ピンと同じ状態に変化するのを待ちます。セットアップセクションでは、LEDとセンサーリードに異なるピンを定義しました。
pinMode(4、INPUT); pinMode(5、OUTPUT); pinMode(6、OUTPUT); pinMode(7、OUTPUT);
ループセクションでは、デジタル読み取りを使用して、ピン4の状態を読み取り、その値を変数「r」に格納します。
r = digitalRead(4); if(r == HIGH && p == LOW && millis()-時間>デバウンス){ cnt ++; if(state == HIGH) state = LOW; if(cnt == 1){ digitalWrite(5、HIGH); digitalWrite(6、LOW); digitalWrite(7、LOW); } if(cnt == 2){ digitalWrite(5、LOW); digitalWrite(6、HIGH); digitalWrite(7、LOW); } if(cnt == 3){ digitalWrite(5、LOW); digitalWrite(6、LOW); digitalWrite(7、HIGH); } if(cnt> 3){ cnt = 1; } p = r;
タッチが検出されるたびにカウントが増加し、増分された数に基づいてさまざまな色で点灯するようにさまざまな条件を与えました。
コードの準備ができたら、コードをArduinoボードにアップロードし、花瓶の下にLEDを配置します。ここではガラスの花瓶を使用していますが、準備が整うとセットアップは次のようになります。
ご覧のとおり、花瓶はすでに赤い色で点灯しており、植物に触れると色が変わります。ラッキーバンブーやマネープラントなど、水が豊富な植物を使用してください。このプロジェクトの完全な作業は、以下のビデオでもご覧いただけます。
このプロジェクトの構築を楽しんで、何か役立つことを学んだことを願っています。質問がある場合は、下のコメントセクションに残すか、フォーラムを使用して他の技術的なディスカッションを開始してください。