福野泰介の一日一創

空席センサーオープンデータのつくりかた、JK課発、図書館アプリ「sabota」の舞台裏

2014/07/12 23:55:00
#opendata #maker #IchigoJam 

お披露目の時を迎えた図書館の1人机の空席状況オープンデータを使ってつくった、JKデザインの図書館アプリ「sobota」その舞台裏を紹介。システムの全体はこのようにつながっています。


1. 秋葉原の老舗電子パーツ屋さん、秋月電子で400円で売っている赤外線センサー、シャープ測距モジュールGP2Y0A21YKを11席の座席分揃えます。

2. 電源2線にアナログ信号1線の計3線を一箇所に集めます。この配線作業が結構大変でした。老眼の入った大人が音を上げる中、根気よくブレッドボードへの配線作業を進めるJK課メンバー!若さは力!

3. 11本のアナログ信号を一定の閾値を設定して、11本のデジタル信号への変換します(120円マイコンLPC1114を2つ使用)。

4. デジタル信号を2進数11桁の数値へと変換し、10進数の改行区切りのシリアル信号に変換します(120円マイコンLPC1114を1つ使用)。

5. こどもパソコンIchigoJamのシリアル入力につなぎ、オープンデータ化するWebサービスのURLとして出力します。10行目のINPUTで受け取り、30行目のPRINTで出力しています。

6. テレビ画面に表示できるIchigoJam、せっかくなので受け取った数値に合わせて座席の状況をテレビに映すことにしました。センサーに手をかざしてみて動きを確認してみるとおもしろいです。

7. IchigoJamからのシリアル信号で受け取ったURLへアクセスするマイコンがWebへとつなぎます。3,000円のマイコン評価キットLPC1769LANコネクタをつないで使用。今回は使用していませんが、送って返ってきたデータもシリアルで返ってくるのでシンプルにネットにつなげるに使えるモジュール。

8. Webサービスでは受け取った数値を元に、空席オープンデータとしてWebアプリで使用しやすいJSON形式へと変換しています。センサーの値そのものではなく、一時的に座席を空けてもすぐに空席となってしまわないようにと、今は反応後10分間は座席にいるという形にするなど、加工したデータを公開しています。「センサー値取得API http://sabae.club/rdfp/sabaelibrary/ CC BY Code for Sabae


こちらできあがった空席センサーをオープンデータとして発信するシステムの写真です。ものづくりをブラックボックスにしない化計画の一環でしたが、プログラミングと違い、物理的な配線作業の大変さを身にしみました。ご協力いただいた方々、この場を借りて厚く御礼申し上げます。

こどもと創るものづくり、ご興味ある方、こちらのイベントへぜひどうぞ!
PCN キックオフ講演会 at 福井

Tweet
クリエイティブ・コモンズ・ライセンス
この作品は「Creative Commons — 表示 4.0 国際 — CC BY 4.0」の下に提供されています。
CC BY 福野泰介 - Taisuke Fukuno / @taisukef / 高解像度プロフィール画像(和服)