こんにちは。サービス開発U 技術Gの島村と申します。
今回はクリエイターの日の制度を利用して、Raspberry Piを利用したピタゴラスイッチ的装置の開発を行いましたので、その概要を紹介させていただきます。
クリエイターの日の制度に関して気になる方は下記をご覧ください。
http://nextdeveloper.hatenablog.com/entry/2015/01/28/125100
Raspberry Piについて
まず、Raspberry Piに関しては改めて説明するまでもなく、すでに様々なドキュメントがWeb上にも存在しますが、ざっくりいうとちっちゃいパソコンでした。
今回はModel B+を購入し、RapbianというDebian系のLinux OSを入れて使いました。 主にsshで接続し、ターミナル経由で開発を行いましたが、Raspberry Pi特有の何かに悩まされることはほとんどありませんでした。
ちょっと配線を間違えただけでショートして壊れてしまうのでは、、と心配もしていたのですが、全くそんなことはありませんでした。
さて、今回そのRaspberry Piを利用して開発したものですが、自部署で運営しているあるキャンペーンのKPI達成状況を、わかりやすくピラゴラスイッチ的装置で表現しようという試みになります。
キャンペーンについて
そのキャンペーンに関して、ちょっと宣伝させてください。 今HOME'Sを使ってお部屋探しをすると、楽天スーパーポイントがもらえるキャンペーンを実施中です。 対象の店舗・モデルルームにチェックインするだけでポイントがもらえるので、住まい探し中の方は是非チェックしてみてください。
開発した装置
で、早速今回開発した装置ですが、こちらになります!
・・・。 まさにデジタルとアナログの融合、といった感じの風貌になりました。割り箸と輪ゴムでピタゴラ作ろうとしたのが正直甘かった。
システムの概要をざっくりと説明します。
まず、今回のキャンペーンKPI達成状況を社内の開発サーバーで定常監視し、それを別のフラグ管理サーバーに通知し、フラグを立てます。
Raspberry Pi側はそのフラグ管理サーバーを監視し、KPIの達成が確認できたら、ピタゴラ装置を作動させます。
今回はRaspberry Piをネットワーク的に開発サーバーとやりとりさせるのが難しかったため、このような冗長な構成をとりました。
それでは、装置が実際に動作する様子をごらんください。
今回は2人のエンジニアで開発に取り組みましたが、KPIの達成状況に対し、1人は音楽の再生、1人はサーボモーターの制御に取り組みました。
あまり格好のいい装置にはなりませんでしたが、一通りのシステムとして組み上げるところまではいけました。
このシステムに関する詳細や開発におけるTips等はまた別のエントリに書きたいと思います。