Yahoo Open Hack Day 2 に参加した

ヤフーさんで開催された、Open Hack Day 2 に参加した。

チームはアフレルさん提供の LEGO MindStorm EV3 を使って焼き肉をひっくり返すロボット /dev/nikuを作った。

EV3とMacの間はBlueTooth通信で、Node.js のシリアル通信ライブラリ経由で3つのモーターへの命令を送っている。

実装はまず2時間でハードウェアとソフトウェアの最初の結合を行い方向性を確認。その後、実パイロットによる操作訓練を通じて得られるフィードバックを元にハードソフト両面を着実に改善して進めた。より確実に肉をつかむ動作を複数のモーターのトルクと輪ゴムを使ったテンションを調整して、精密な動きに繋げている。

プロセスはかなりアジャイルで、常に動く状態を維持し、継続的に改善した。またハードウェアをいじっている間はソフトウェアは調整できないとか、一旦ソフトウェア側を調整したら、ハードをいじると再調整する部分が発生するので余りドラスティックに変えない方がよいとか、モーターに恒常的なテンションがかかる部分は逆方向に輪ゴムで吊ってあげると制御が楽っぽいとか、工夫と学びがたくさんあった。

UIもきちんとしている。Sails という node.js 上の Rails みたいなやつと、 Twitter bootstrap を使っている(と思う)。当初は3つのモーターをそれぞれ制御するボタンだったのが、徐々に複数のモーターを同時制御する必要が確認され、ボタンが「動作」に割り当てられるようになった。また各種ECのAPIを使って肉々しい商品も表示されている。

チームの皆さんに感謝している。楽しんでやれたのが最高によかった。モーターの調整をするときに肉が飛んだり、人の手をつついたり、あーだこーだいいながら、徐々に精度をあげていくことができた。

Open Hack Day の運営も大変参考になった。数多くのスポンサーさんに協力いただいている点はすごいなぁ、と感心した。24時間開催にするためには、コーポレート系の部署や警備系の調整など、大変だったのではないかと推察する。このようなすばらしい会を開催いただきありがとうございます。