obniz(オブナイズ)は、センサーやモーターなどの電子部品を、インターネット上でかんたんに操作
できるようにするシステムで、obniz OS(オブナイズ オーエス)、obniz Board(オブナイズ ボード)、obniz Cloud(オブナイズ クラウド)で構成
されている。obniz OSが搭載
されているマイコンボードobniz Boardに接続した電子部品は、インターネット上のobniz OSを経由してパソコンやスマートフォンから遠隔
操作ができる。これを使うと、IoT(Internet of Things、モノのインターネット)がかんたんにできるんだ。
『子供の科学』本誌
では、obnizを使って家をスマートホーム(いろいろなものをインターネットにつないで遠隔操作できる家)にするための装置
をつくる連載
をしてきた。
これまでの連載は「obnizでつくろうスマートホーム!」バックナンバーで公開しているよ。これまでにつくった装置のつくり方を解説
しているので、まだ見たことがない人は見てみてね。Web連載は、本誌の連載の続きになっているので、基本的なことがわからなくなったら、本誌のバックナンバーを振り返ろう。
この連載では、「KoKa obnizスマートホームキット」が必要なので、持っていない人は「KoKa Shop!」で手に入れよう。プログラミングはスマートフォンを使うよ。親子でいっしょに取り組んでみてね。
お菓子
を食べているときテレビが見たくなった! けれど、手が汚
れていて、リモコンを触
るのはちょっと……というとき、さっと手をかざすだけでテレビをつけたり消したりできたら便利
だよね。今回は、手をかざすだけでテレビのオン/オフを操作できる装置をつくっていくよ!
1 装置のしくみを考えよう!
装置に手をかざすと、テレビの電源
がオンになり、もう一度手をかざすとオフになる装置をつくっていくよ。
装置に手をかざしたことを検知
するには、「赤外線
距離
センサー」を使うよ。テレビに信号を送るには、赤外線送信
・受信
モジュールを使うんだ。
赤外線距離センサーと赤外線送信・受信モジュールのくわしい説明は、『子供の科学』2020年1月号と3月号に載
っているから、ぜひ読んでみてね。バックナンバーはこちらから見られるよ!
はじめに、テレビをリモコンで操作するしくみを説明するね。
リモコンには赤外線を送信する部品が、テレビには赤外線を受け取る部品が付いている。リモコンのボタンを押
すと、赤外線がテレビに向かって送られる。それをテレビが受け取るとテレビの中の装置が働いて、画面が切り替わるようになっているんだ。
今回は、赤外線を送信・受信する部品をobniz Boardにつないで、obniz Boardを自作リモコンにしていくよ。
テレビのリモコンは、テレビ用の赤外線信号を覚
えているけれど、obnizはまだ覚えていない。だから今回は、まずテレビ用の赤外線信号をobnizに覚えさせていくよ!
2 リモコンの赤外線を記憶する装置をつくる
さっそく装置をつくってみよう。obniz Boardに部品をつなぐだけなのでかんたんだけど、つなぐ場所はまちがえないように注意してね。
まずはこの装置をつくる部品をそろえる。「KoKa obnizスマートホームキット」にあるもので、次の部品を使うよ。
① obniz Board
② 赤外線送信・受信モジュール
③ 電池ボックス
④ 電池ボックス接続用USBケーブル
① obniz Boardと赤外線送信・受信モジュールをつなごう。モジュールの5Vがobniz Boardの0番に、GNDが3番にくるように差し込もう。
② 電池ボックスとobniz Boardをつなごう。前回と同じように、コネクターの向きに注意しながら接続
しよう。これで装置は完成
だ。
3 プログラミングしよう!
装置ができたら、電池ボックスのスイッチをオンにして、プログラミングエディターを立ち上げよう。立ち上げる方法は、「obniz Boardとスマートフォンを接続して、プログラミングエディターを立ち上げる」を参考
にしてね。それでは、リモコンの赤外線信号を読み取るためのプログラムをつくっていくぞ。
① 一番上にある「“obniz”をobniz id“xxxx-xxxx”に接続する」ブロックだけを残し、他のブロックを削除
しよう。
② 赤外線送信・受信モジュールのブロックを用意するよ。電球のアイコンから「“obniz”に“irmodule”を接続する」を取り出してつなげよう。
③ 人差し指のアイコンから「“Label”を作る」、「“Label”で“text”を表示
する」、「“button”を“text”で作る」のブロックを取り出してつなげよう。“text”はそれぞれ、“ボタンをタップしてね!”と“ボタン”に変更
しよう。
④ 矢印
が円を描
いているアイコンから「ずっと~実行
」を、2本の矢印が書かれたアイコンから「もしも“true”実行」を取り出そう。「ずっと~実行」の中に「もしも“true”実行」を入れよう。
人差し指のアイコンから「“button”がクリックされた」を取り出し、「もしも“true”実行」の“true”に入れよう。
⑤ 電球のアイコンから「“irmodule”で赤外線を受信する」を取り出そう。人のアイコンにある「“ ”を“key”としてクラウドに保存する」を取り出して、“ ”の中に「“irmodule”で赤外線を受信する」を入れる。そして、「もしも [ “button”がクリックされた] 実行」の中に入れよう。“key”は“テレビの電源”に変更してね。
人差し指のアイコンから「“Label”で“text”を表示する」を取り出してつなげよう。“text”は”受信できたよ!”に変更しよう。
これで信号を受信するプログラムは完成だよ。さっそく信号を読み取ってみよう!
4 赤外線を記憶させよう!
まずは電池ボックスをオンにして、プログラムを実行してみよう。
スマートフォンの画面に画像のようなボタンが表示されるね。
「ボタン」をタップしたら、赤外線送信・受信モジュールにリモコンを向けて、「電源」ボタンを押そう。すると、スマートフォンの画面に「受信できたよ!」と表示されるよ。
読み取った信号は、リポジトリの中に保存されるよ。「bockprogram_storage.json」というファイルを開くと、数字がたくさん並んでいるのがわかるね。これが赤外線信号なんだ。
次回は、今回読み取った赤外線信号を使って、テレビの電源のオン/オフを切り替えるプログラムをつくって、装置を完成させるよ。お楽しみに!
(文/トボリ 写真/青柳敏史)