M5Stack

M5Stackで作る!最先端スマート洗濯バサミ【第1回】

洗濯物の取り込みを教えてくれるスマートな洗濯バサミを作ろう!

 

こんにちは、ヨシケンです!

最近は、いま非常に注目されている小型Arduino互換機のM5Stackシリーズを使って、さまざまな電子工作をおこなっています。そんな中、今回はM5Stackを使って洗濯バサミをIoT化してみようと思います。洗濯物をこの洗濯バサミで留めておくだけで、洗濯物の乾き具合が分かり、離れていても取り込むタイミングを教えてくれます。また各種センサで、外気温や湿度なども分かります。インターネットにもつなげることができ、天気の急変を知らせてくれて、洗濯物が雨に濡れる前に取り込むこともできるようしたいと思います。

それでは早速、そんな最先端スマート洗濯バサミをM5Stackで作っていきましょう!

smart-clothespin-with-m5stack-01-01

M5Stackシリーズを使って最先端洗濯バサミ作り

 

今回の記事の流れ

  1. 今回使うM5Stackシリーズについて
  2. このデバイスを作るのに必要なもの
  3. 最先端洗濯バサミの機能と学べる事
  4. M5Stick-Cのセットアップ
  5. まとめ

 

1. 今回使うM5Stackシリーズについて

電子工作に使われる代表的なシングルボードのArduinoには、様々な派生、互換モジュールがあります。ESP32というArduino互換開発モジュールに、ディスプレイ付きの外装と使いやすい接続端子備えたものにM5Stackシリーズがあります。M5Stackシリーズは、Wi-FiとBLEが内蔵されたEspressif社のESP32基盤を使っているので、Arduinoと同様に開発が可能です。また始めからセンサやディスプレイ、ボタンなどがついているモデルもあるので、簡単に開発を始めることができます。

M5Stackは、大きめのディスプレイが付いたM5Stack Coreや、それを小型化して使いやすいようにしたM5Stick-Cもあります。さらにM5Stick-Cを半分くらいの超小型にしたATOMというシリーズも出ています。

smart-clothespin-with-m5stack-01-02

左からM5Stack CoreM5Stick-CM5Stack ATOM

 

今回は洗濯バサミに付けても小さくてかさばらず、バッテリも内蔵したM5Stick-Cを使っていくことにします。

smart-clothespin-with-m5stack-01-03

M5Stick-Cの外観

 

シリーズ M5Stack
名前 M5Stick-C
チップ ESP32 (Wi-fi、BLE内蔵)
メモリ 520KB SRAM
大きさ 6×2.8×1.6cm
ディスプレイ 0.96インチ 80×160 TFT
センサ類 MPU6886 (加速度センサ)
赤色LED
IRトランスミッタ
マイク有
バッテリ 80mAh @3.7V

このM5Stick-Cに水分センサや温室度センサを追加して、洗濯バサミ型として外で使ってみます。洗濯物の乾き度合いをチェックしたり、外の温度を測ったりしてみます。インターネットにもつながって、離れたところからその状況を確認できるようにします。

smart-clothespin-with-m5stack-01-04

M5Stackで最先端洗濯バサミ

 

2. このデバイスを作るのに必要なもの

M5Stick-Cとセンサを接続して、室外の洗濯物の状況や気温などを計測します。その数値を外部から把握できるようにもします。必要な部品などは以下です。

最先端洗濯バサミ

M5Stick-C

ESP32に小型ディスプレイを搭載したArduino互換機。ボタン、BLE、Wi-fiおよびモーションセンサなども始めから入っている。

smart-clothespin-with-m5stack-01-03

 

水分センサ

赤外線により接触物の水分量を計測

smart-clothespin-with-m5stack-01-05

 

DHT11温湿度センサ

温度と湿度が両方測れるデジタル温湿度センサモジュール

smart-clothespin-with-m5stack-01-06

 

これらの部品をそろえて、最先端洗濯バサミを作っていきます。

 

3. 最先端洗濯バサミの機能と学べること

今回のIoT化された洗濯バサミを作ることによってできる機能は以下のようなものがあります。また、この制作を通じて学べることも列挙してみます。

最先端洗濯バサミの機能

  1. 洗濯物が乾いているかどうか(水分)を判別する機能
  2. 室外の気温、湿度の計測
  3. インターネットにつないで天気、雨の情報を取得
  4. 外部から外の状況をチェックする機能

作る事により学べること

  1. M5Stick-CのArduino IDEでの開発の仕方
  2. M5Stick-Cでの水分センサの使い方
  3. M5Stick-Cでの温湿度センサの使い方
  4. M5Stick-Cでのインターネットとの連動

 

4. M5Stackの開発環境のセットアップ

M5Stick-Cは、M5Stack社が提供しているArduino互換ESP32の開発キットです。USB-Cポートや3.3/5V電源、バッテリ、小型液晶にGROVEコネクタなどがあらかじめ搭載されており、使い始めるのに必要なものが大抵揃っています。

通常Arduinoで開発をおこなう時は、Arduino IDE統合開発環境を、ダウンロードページからダウンロードします。ソフトウェアのインストール方法については、Device Plusのこちらの記事(Arduino利用編)が参考になります。今回は、Arduino IDE 1.8.16を使っています。

Arduino IDEのインストールが終わったら、ソフトウェアを立ち上げて、ESP32ボードのセットアップをおこないます。

ソフトウェアの設定が進んだら、ハードウェアのM5Stickを見ていきます。M5Stickには上下に各種端子が並んでおり、裏面にこのようなピン配置が書かれています。

下側には、GROVE端子と呼ばれる4本の配線がひとまとめになったものがあり、ケーブルとGROVE規格のセンサ群をつなぐ事により簡単に外部モジュールを使うことができるようになっています。

また、上部には8本のピンがあり、ここにも外部機器をつなぐことができます。ArduinoのGPIO(入出力ピン)はGxxで書かれたピンと対応しています。

smart-clothespin-with-m5stack-01-08

 

M5Stickの基本的な使い方としては、USB-Cポートにつなぐと自動的に電源が入ります。バッテリが入っているので、ポートから抜いても5分程度は起動し続けます。強制的に電源を落としたい場合は、M5と書かれた正面ボタンの左側面にあるボタンを6秒長押しします。再度電源を入れたい場合は、同じボタンを2秒長押しします。

smart-clothespin-with-m5stack-01-09

 

それでは、ソフトウェアのセットアップをしたパソコンと、M5StickをUSB-Cケーブルでつなぎます。シリアルポートの部分にUSB接続が見えない場合は、ドライバが入っていない可能性があるので、インストールをおこなってください。

ここでArduino IDEに、更にM5Stick用のサンプルプログラムを追加します。スケッチ > ライブラリをインクルード > ライブラリを管理 から、M5Stickライブラリを選択します。

ダウンロードしたら、M5Stickライブラリにサンプルがいくつか付いているので、それを使ってみます。ファイル > スケッチ例 > M5Stick からサンプル・スケッチを選んで、流し込んでみます。

smart-clothespin-with-m5stack-01-10

 

ここではM5Stick-C > Basic > Displayを選んでいます。これをM5Stickに流し込みます。サンプルプログラムがコンパイル、転送されると、M5Stickの画面が光ってさまざまに変わるのが分かると思います。

smart-clothespin-with-m5stack-01-11

 

これで、Arduino IDEのセットアアップ、M5Stickの設定は完了です。

 

5. まとめ

この連載では、M5Stickを使った最先端スマート洗濯バサミを作っていきます。
M5Stickに水分センサや温湿度センサなどを接続して、外の洗濯物の状況をチェックできるようにします。

また、インターネットにもつながって、天気の情報や雨が降り出すかどうかもお知らせすることができます。

smart-clothespin-with-m5stack-01-13

 

次回以降、実際にデバイスを作っていきたいと思います。
お楽しみに!

 

 

今回の連載の流れ

第1回:洗濯物の取り込みを教えてくれるスマートな洗濯バサミを作ろう!(今回)
第2回:M5Stickに水分センサを付けて洗濯物乾き具合をチェック
第3回:インターネットに接続して天気予報から取り込みタイミングをお知らせ!
第4回:省電力化して最先端スマート洗濯バサミの完成!

アバター画像

普通の会社に勤めるサラリーマンですが、モノ作りが好きな週末メイカーで、電子書籍MESHBOOKを出したり、ブログを書いたりしています!

http://blog.ktrips.net

IRKitではじめるIoT