みんなのラズパイコンテスト2017

みんなのラズパイコンテスト2017に作品を応募しました。

その作品の概要を下で説明します!

 

作品名

 乾ぺき! つぶやく服

f:id:NU_denj:20170915112500p:plain

 

1.背景

はじめに

まずは背景について説明させていただきます。

 

洗濯物取り込むタイミング分からない!

 一応大学生になってから一人暮らしを5年間続けてるんですけど、未だに家事で難しいなーって思うことがあるんですよね~。そう、それは洗濯物を取り込むタイミングです。。。そんなことかよ!って思った方もいるでしょうが、実は悩んでいる方も多いのではないのでしょうか。

 

夏は色褪せがひどい!

 一年を通してほんと悩まされます。まずは夏。長時間外で乾かすと太陽からの強い紫外線によって洗濯物の色褪せが起こってしまいます。この間、シャツを購入したのですが、一回洗濯して長時間乾かしたらすごく色褪せを起こしていました。。。気に入ってたのに(;_;)

f:id:NU_denj:20170909214823p:plain

 

冬は生乾きがつらい!

 冬は紫外線が弱いから問題ないのでは?と思いますよね。でもよく考えてみてください。冬って洗濯物を触ってみても乾いたかどうか判断しにくくないいですか?とりあえず乾いただろうと思って取り込んで着てみて「あちゃ~」って何回思ったことか。。。これに共感してくれる人は多いはずです。

 

まとめ 

 このように一年を通して洗濯物を取り込むタイミングを把握することは大切ですよね。乾き具合は手で触っても判断しづらい時があるので高感度センサに任せちゃおう!ってのが今回の作品です。また、SNSと連携することでいつでもどこでも取り込むタイミングが分かるようになっています。

f:id:NU_denj:20170909214909p:plain

 

 

2.装置を作ろう!

はじめに

 こういった理由から洗濯物の乾き具合を把握できる装置を作りました。ここではハード側とソフト側に分けてどんな感じに作製したのか、それぞれ説明します。一応私達、工学部の学生なので頭良い感じに説明します。笑

 

センサの回路

 まずはセンサの回路の説明をさせていただきます。

 センサにはEnergy eye(デンソー)という超高感度の熱流センサを使用しました。熱流センサはゼーベック効果ってのを利用してます。表と裏に温度差があると電圧が発生します。この電圧の変化によって洗濯物の乾き具合を見ます。下に回路図を描きました。

f:id:NU_denj:20170909214949p:plain

 

 まあこんな感じです。熱流センサで得た電圧を計装アンプ「LT1167 CN8」で増幅してます。こうすることで僅かな信号の変化をパソコンで読み取ることができました。

 

 ラズパイではアナログ値を使用できないため、この信号はAruduino MEGAでアナログの信号として読み取り、二値化(0と1)してからラズパイに入力しています。

f:id:NU_denj:20170909215149p:plain

 

 ここで工夫した点は熱流センサの片側に乾いた布をつけたことです。下にその写真を載せました。片側の温度が逐一変化してしまうと正確に乾き具合を測ることができません。そこで乾いた布をつけることで正確に測ることに成功しました。

f:id:NU_denj:20170909220137p:plain

 

ラズパイ側の処理

ソフト方面では、ラズパイからの信号を観測してツイッターに流すことを行いました。
 
ラズパイとツイッターとのやりとりは、IBM BluemixのNode-REDにて行いました。IoTを手軽に利用できるので便利です。
 
今回初めての開発ということで、どこまで詳細に書くべきかわからなかったので、丁寧めに書きます。
 
Node-REDはBluemix上でAPI/IoTサービスを提供するツールです。APIどうしのやりとり、つまりデータの流れを、ノード同士を接続したフロー図として簡単に表すことができます。ノードに関数を設定することができるのですが、基本的にjavasctiptで書きます(Node-REDがNode.jsからきているので)。
 
ラズパイに入力された信号は、ラズパイ中の特定のファイルに0か1で書き込まれます(CUIでのコマンド入力によってラズパイへの入力ピンを設定すると、ラズパイ内にピン設定に関するファイルが生成されます)。Node-REDでそのファイルの信号を逐次観測することで、洗濯物が乾いたかどうかを観測することができます。
 
さらに、ユーザー利便性を追求するために、Twitter上で観測の開始・終了ができるようにフローを作成しました。Node-REDではTwitter APIが提供されており、ツイートのリアルタイム観測と指定内容でのツイートをすることができます。
 
Twitter上からハッシュタグ”#洗濯bot”を含むツイートを観測し、そのツイートの中身が”開始”であればラズパイからの信号の観測を開始します。そして洗濯物が乾いたことを確認すると”乾きました”とツイートし、観測を終了します。
 
ここで重要なことは、現在の仕様では、2回目以降の観測を開始する手段は、”乾きました”のツイートを削除することになります。これはユーザー仕様としてはやりづらいところがあるので、改善の余地があります。
 

f:id:NU_denj:20170919164726p:plain

 

Twitterを用いて起動と終了をするため、僕たち以外(例えば親とか)での利用もできるようになってます。androidアプリを開発したりサーバーを立てた方が良かったのかもしれませんが、時間の都合上により今回は経験のあるBluemixでの実装となりました。今後はアプリを用いた実装を行なっていきたいです。
 
わからないところがあったら是非質問ください。

 

 

 

 

3.実際に使ってみた

はじめに

 増幅回路がうまく動作しない、ツイッターの動作チェックの際にツイートが止まらずアカウントが凍結されるなどの問題を乗り越えながら完成しました!!

f:id:NU_denj:20170910222029p:plain

こんな感じで作ったわけですが、どう使うのか、ちゃんと使えるのかよく分かりませんよね。そこで実際に使用してみました。

 

洗濯物に装着

f:id:NU_denj:20170910222138p:plain

 

 こんな感じで洗濯物に装着しました。あとはラズパイを起動してセット完了です!セットするのはとても簡単でした^^

 

SNSで測定開始のコール

f:id:NU_denj:20170910170059p:plain

 では、SNSで測定開始の合図を送ります。乾いたらツイートされるはずですが、、、、

 

乾き具合の状況確認に成功!

f:id:NU_denj:20170910172007p:plain

 はい!見事現在洗濯物の乾き具合が送られてきました!

   果たして実際に乾いているのか、、、

f:id:NU_denj:20170917202829p:plain

乾いていました!(画像からはわかりづらいですが(笑))

 

 これで、いつでもどこでも洗濯物を取り込むタイミングが分かるようになりました!これで長年の悩みも解決しますね~