[SPACEBLOCK-10]自動で開くゴミ箱を発明!〜サーボモーター・障害物回避センサ

狩野 さやか

SPACEBLOCK 10 自動で開くゴミ箱を発明!〜サーボモーター・障害物回避センサ

所要時間目安:55分[接続:10分/工作:30分/プログラミング:15分]

ゴミ箱のフタを開けるのって意外と面倒なんだよなぁ……手がゴミでふさがっているし……そんな「ちょっと困った!」を解決したいときは、小さなものづくりコンピューター「SPACEBLOCK(スペースブロック)」におまかせ!! 今回はゴミ箱を改造して、ゴミを捨てようとするとフタが自動的にぴょんっと開く自動ゴミ箱にしちゃいましょう。

今回改造したいゴミ箱は……こちら!卓上に置いて勉強中にちょっと食べたお菓子の袋をぽいっと捨てるのに便利です。花粉症の季節にも活躍しそうですね!

SPACEBLOCK
フタがついていてきれいだけど、開けるのがちょっと面倒……

今回の改造には「180°マイクロサーボモーター」と「赤外線障害物回避センサモジュール」を使いますよ。

必要なもの&準備

SPACEBLOCK
左上:SPACEBLOCK通常パッケージ、左下:障害物回避センサ、右:サーボモーター

プログラミング画面の開き方など基本の作業の流れは、「SPACEBLOCKのプログラミング手順をチェック!」で確認してくださいね。

SPACEBLOCKに拡張パーツを接続する

まずは、今回使用するサーボモーターと障害物回避センサをSPACEBLOCKに接続してみましょう。

SPACEBLOCK
接続の全体像

細かい部分は次の図を参考にしてください。障害物回避センサには4本のピンヘッダがありますが、このうち「G」「V」「S」と書かれた3本だけを使います。

SPACEBLOCK
ジャンパーワイヤの色とピンソケットの位置に注意して接続する

サーボモーターって何ができるの?

サーボモーターは、軸が0°〜180°までの範囲で回転するモーターで、指定した角度まで回転させることができます。回転軸に付属のサーボホーンと呼ばれるパーツを取り付けて工夫すれば、引く、回す、倒す、振る、などさまざまな動きを作ることができます。今回はゴミ箱のフタを開ける動力として使います。

SPACEBLOCK
サーボに付属のサーボホーンをつけて工作の工夫をすればさまざまな動力にできる

プログラムするときは「出力」カテゴリーの[サーボ《A0(T2)》を《90》°に動かす]ブロックを使います。

SPACEBLOCK
プログラムにはサーボモーター専用のブロックを使う

障害物回避センサって何ができるの?

障害物回避センサは、赤外線によって一定の距離内に障害物があるかどうかを検知することができます。今回はゴミ箱の近くに手が来たことを検知するために使います。

障害物となるものがあるか、何もないのかを判定してコンピューターに情報を渡すことができますが、障害物までの距離や障害物の大きさなどの情報を渡すことはできません。このように「ある」「ない」など2つの情報だけを渡すことをデジタル入力と呼びます。

障害物回避センサは、何も障害物がない状態ならば挿したピンヘッダの電圧を高くして、何か障害物があると電圧を下げます。なお、今回は使いませんがプログラミングではtrue(トゥルー)とfalse(フォルス)という値を使うことがあり、デジタル入力の場合、電圧が高いときはtrue、電圧が低いときはfalseという値がプログラムに渡されます。

SPACEBLOCK
障害物回避センサは障害物があるのかないのかを判定する

プログラミングには、[入力]カテゴリーの[《A0》の電圧が《上がった》]というブロックを使います。障害物を検出すると電圧は低くなりますから、障害物があるときの動きをプログラムしたいときは、[《A0》の電圧が《下がった》]とします。

SPACEBLOCK
障害物回避センサを使う際のプログラムブロック

障害物の検出距離は、障害物回避センサについているポテンショメータという調整用の軸をドライバなどで回して調節します。障害物回避センサをSPACEBLOCKにつないで電源が入っていれば、ライトの点灯状況で障害物を検出しているかどうかを確認することができます。

SPACEBLOCK
距離を調整するポテンショメータは弱い力で回る範囲で調整する

手をかざしたらゴミ箱のフタが開く装置のプログラム

それでは、ゴミを捨てようとしたらゴミ箱のフタが自動的に開く装置を作りましょう。障害物回避センサがゴミを捨てようとする手を検知したら、サーボモーターがゴミ箱のフタを開けるという仕組みです。

まずはプログラムを作ります。次の図の通りです。

SPACEBLOCK
何かを検知したら自動的にゴミ箱のフタが開いて3秒後に閉まるプログラム

作成したプログラムを実行してみると、障害物回避センサに手を近づけると、サーボモーターがウィンと動き、3秒後に元の位置にまたウィンと動きます。

動画でご覧ください。

さて、ここからは装置を作っていきましょう!

サーボの力でフタを開ける仕組み

サーボモータの動きでゴミ箱のフタを開ける仕組みを作ります。サーボ付属のパーツにストローを巻きつけて長さを拡張します。力がかかるところですので、しっかり補強してから使いやすい長さに切るのがおすすめです。

SPACEBLOCK
ストローで長さを拡張

このパーツをゴミ箱の内側につけて、フタを押し上げる動力にする作戦です。

SPACEBLOCK
サーボをこの位置に取り付けて……
SPACEBLOCK
ストローの力でフタを押し上げる

力のかかる場所なので、補強して……

SPACEBLOCK
ゴミ箱に貼り付ける面積を増やす工夫

このように取り付けました。

SPACEBLOCK
テープで貼り付けるだけ

障害物回避センサを設置

次に障害物回避センサを取り付けます。ゴミを捨てるときに自然と手が通る場所に設置しましょう。センサを内側に引っ込めた状態で固定すると、ゴミ箱の面を障害物だと判定してしまうので、少し大きめの穴を開けて設置しました。

SPACEBLOCK
この位置に少しゆとりを持って穴を開ける
SPACEBLOCK
障害物回避センサをゴミ箱内側にテープで貼り付ける

上から見るとこんな感じです。

SPACEBLOCK
サーボモーターと障害物回避センサの位置が定まった

テスト&完成!!

まずは動きをテストしてみましょう。フタが勢いよく開きすぎたり、うまく開かなかったりしたら、プログラムでサーボの角度を変えたり、サーボをつける位置を調節したり、ストローの長さなどを変えてみたりすると、ほど良い状態が見つかりますよ。手が反応する距離を変えたいときは、障害物回避センサのポテンショメータで調節しましょう。

SPACEBLOCK
ストローに角度がつくことでフタが押し上げられる

動画で見てみましょう。

あとは、SPACEBLOCKと電池ボックスを邪魔にならない位置に貼り付けてゴミが入っても汚れたり壊れたりしないように保護すれば、自動開閉ゴミ箱の完成です!

SPACEBLOCK
捨てようとするとサッとフタが開くゴミ箱の完成

ゴミを捨てているところを動画を見てみましょう。

すいすいと開いてくれるので、なんとなく楽しくてどんどんゴミを捨てたくなってしまいます! サーボを使ったフタの開け方は他にもありそう。みなさんも挑戦してみてください。

身近な「困った……」、「ちょっと面倒……」をSPACEBLOCKの発明でどんどん解決していきましょう!!

SPACEBLOCKの使い方や作品アイデアがたくさん! SPACEBLOCKでプログラミングものづくり!
SPACEBLOCK(スペースブロック)は経済産業省実施のEdTech導入補助金に採択されたEdTechツールです。

狩野 さやか
Studio947のデザイナー・ライター。デザイン・ウェブ制作全般を担当する一方、技術書籍の執筆や、教育のICT活用・子ども向けプログラミングについての取材・執筆をしている。著書に『ひらめき!プログラミングワールド』『見た目にこだわるJimdo入門』『ふたりは同時に親になる 産後の「ずれ」の処方箋』。

コメント

コメントを書く