HomeMadeGarbage Loading

導電布 EeonTex で モーションセンシンググローブ DigiTe

ホーム
電子工作
Raspberry Pi
IOT
音楽
Home > 電子工作 > 導電布 EeonTex で モーションセンシンググローブ DigiTe
すき 0
うんこ 0

ずいぶん前に感圧導電布を購入したまま埃かぶってたので、手袋に貼り付けてモーションセンシングしてみました。

その名もモーションセンシンググローブ DigiTe(デジ手)。
 

構成

指の動きを感圧導電布で検出してBLEで信号送信し、PCで指の動きに応じた音声を再生します。

全体ブロック図

 

モーションセンシンググローブ DigiTe 回路図

部品

  • EeonTex 感圧導電布

  • 導電糸

  • BLE搭載マイコンAdafruit Feather 32u4 Bluefruit LE

  • リチウムイオンポリマー電池400mAh

  • 抵抗器 4.7kohm

  • ブレッドボード

     

手袋製作

感圧導電布を1cm×5cmほどに切って、配線ハンダ付け用に両端を導電糸で縫い付けて両面テープで手袋の指に貼り付けます。

 
指を曲げると圧力によって感圧導電布の両端の抵抗値が減少します。

 
同様に残りの指にも貼り付け。

 
ちょっと強引ですが、ブレッドボードも手袋に貼り付けてBLE搭載マイコンFeather 32u4と部品を載せて配線します。

 

Arduinoコード

Feather 32u4の詳細設定は以下のとおりです。

Blynk で BLE 制御ラジコン!

Feather 32u4用のBLEライブラリをインストールします。
 https://github.com/adafruit/Adafruit_BluefruitLE_nRF51

このライブラリのコード例 bleuart_datamode.ino を参考にプログラムしました。

マイコン起動時に各指の感圧導電布の初期抵抗を測定(指は伸ばした状態)し、曲げた際に30%抵抗が減少すると曲げられた指が検出されます。

指の動きが変化すると、伸びた指の数を算出しBLE送信します。
 

Node-RED設定

グローブからのBLE信号をPCで受けて音声出力させるためにNode-REDを使用しました。

以下のノードをインストールして使用しています。

ノードの設定

左から順に各ノードの設定について説明します。
 

Injectノード

次段のBLE入力ノードを起動するためのノードです。

ペイロードをJSONとして以下を入力します。

このノードを起動することで60秒間、グローブからのBLE信号を受信することができます。ずっと受信したいので、繰り返しを1分間で設定しています。
 

BLE入力ノード

BLEデータ受信用のノードです。グローブを起動した状態でダブルクリックして以下の編集ボタンをクリックします。

以下の”Select from scan result”をチェックして、Scan Resultで “Adafruit Bluefruit LE”を選択して”更新”をクリックします。

この状態でデプロイしてInjectノードを起動すると、グローブからのBLE信号を受信し続けます(ピリオドを無限にするやり方が分からなかった。。。)。
 

Functionノード -データパース-

以下のように入力し、BLE信号から指の数をパースします。

 

Functionノード -条件分岐-

以下のように入力し、指の数(1〜5)によって出力を分岐します。

 

audioノード

それぞれ再生するmp3データをパス込みで指定します。

ここではBLEデータ(指の数)が1のとき「いち」、2のとき「に」…と再生するようにしました。長女ちゃんの声を録音しました。
 

動作

応用してじゃんけんバージョンも

ちょっと試作感満載ですがモーションセンシンググローブができました。
まだまだ導電布たくさんあるし、なかなか使えるなぁ 🙄 。

曲げセンサより経済的だしね!

追記

18/8/22

Adafruit様のブログで紹介いただきました!

コメントはこちらから

メールアドレスが公開されることはありません。コメントのみでもOKです。

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください