ハードウェア
IchigoJamをインターネットに繋げる「MixJuice」
shimizu
今回は、IchigoJamにインターネットへのアクセス機能を付加する「MixJuice」という拡張ボードを紹介します。
MixJuiceとは
MixJuiceは、HTTPでインターネットにアクセスする機能を持つ拡張ボードです。以前の記事で紹介したPanCakeと同様に、IchigoJamに重ねて接続することで、IchigoJamのプログラムからネット経由で情報を送受信することができます。それにより、Web上で公開されているプログラムをダウンロードしたり、IchigoJamで取得したセンサーデータをAPIサーバーに送信して蓄積するといったIoT機器を制作する用途にも応用が可能となります。
MixJuiceには次のような特徴があります。
- WiFiネットワークに接続可能(DHCPサーバーが動作している環境が必要)
- HTTP・HTTPSでのGET・POSTリクエストが可能
- シリアル通信(UART)を用いてIchigoJamなどの機器と通信する
- スリープして節電モードに入ることができる(秒単位)
実際に使ってみた
MixJuiceの組み立て済完成品を入手しました。(ちなみに組み立てキットは提供されていません)
※これ以降は、IchigoJam Tと組み合わせた場合を想定しています。その他のIchigoJamや互換機を利用する場合は仕様が異なるかもしれませんので、ご注意ください。
IchigoJamにセットする
IchigoJamに繋げるには、PanCakeと同様、ピンを重ねて差し込むだけでOKです。ここでさっそく電源を入れたいところですが、少々注意が必要です。MixJuiceは消費電力が比較的大きいため、直接給電する必要があります。そこで、電源を供給するmicroUSBケーブルはMixJuiceの方に差し、IchigoJamには差しません(ただし、MixJuiceのCN6にジャンパーピンをセットしておく)。この場合、IchigoJamへはMixJuiceから給電されます。
WiFiネットワークに接続する
それではスイッチをONにしてみましょう。IchigoJamとMixJuiceの電源をそれぞれ入れます。MixJuiceに命令を出すには、PanCakeの時と同様に「IchigoJamでMixJuice向けのコマンドを『PRINT』する」という方式になっています。MixJuiceのコマンドは、「MJ」で始まる文字列になっています。試しに「MJ APL」というコマンドを実行して、アクセスポイントの一覧を表示してみましょう。使用できるネットワークのSSIDがリストアップされるはずです。
?"MJ APL MJ APL OK 'WARPSTAR-xxxxxx 'Buffalo-G-xxxx 'xxxxxxxxx 'OK
次に、接続したいSSIDを選び、「MJ APC」コマンドにSSIDとパスワードを付けて実行します。
?"MJ APC (SSID) (パスワード) MJ APC (SSID) (パスワード) OK '............ 'WiFi connected: 192.168.xxx.xxx 'OK
接続に成功すると、上記のように「WiFi connected」と割り当てられたIPアドレスが表示され、緑のLED1が点灯した状態となります。なお、一度正しく接続した後は、電源を入れ直した際に自動的に同じネットワークに接続してくれます。
プログラムをダウンロードする
WiFiに繋がりましたので、公開されているプログラムをダウンロードしてみましょう。IchigoJam等のプログラムの投稿サイトである「Kidspod;」で公開されているサンプルゲーム、「縄跳びさっちゃんゲーム」をダウンロードしてみます。
HTTPでコンテンツを取得するには「MJ GET (URLの”//”以降)」、HTTPSの場合は「MJ GETS (URLの”//”以降)」というコマンドを使用します。
NEW ?"MJ GET kidspod.club/mj/3 MJ GET kidspod.club/mj/3 OK (以下、プログラムコードが表示される)
これでプログラムが読み込まれました。このままRUNすることで実行することが出来ます。
おわりに
MixJuiceの使い方として、プログラムのダウンロード方法をご紹介しました。それ以外にも、MixJuiceの機能を利用することで、テキストデータの取得やJSONデータのアップロードなど高度な目的に活用することができます。今後、IoTへの応用例についても触れていきたいと思っています。
詳しいコマンドリファレンスは公式サイトで参照できますので、気になった方はぜひチェックしてみてください。