こんなものを作りました。
流れ
- システム構成図
- はじめに
- 始まり
- セットアップ
- コーディング(午前)
- 昼食
- コーディング(午後)
- 電子工作
- お披露目
- おわりに
システム構成図
はじめに
この記事は以下の記事の続きです。が、見なくても全然大丈夫です。
始まり
Raspberry Piハッカソン会場にやってきました。ドキドキ。 #ゆるパイ pic.twitter.com/IhQZRZFHFa
— 植田 達郎(Tatsuro Ueda) (@weed_7777) July 25, 2015
@ueponx そうでしたか。何か作って、ぜひギーク・フェアーにいっしょに出ましょう!
— 植田 達郎(Tatsuro Ueda) (@weed_7777) July 25, 2015
ええっ、レベル高杉!と思ったら「今回は無理だから11月の伊勢ギーク・フェアーに出すことを目標にする」ゆるっw #ゆるパイ pic.twitter.com/mY2GOCEbru
— 植田 達郎(Tatsuro Ueda) (@weed_7777) July 25, 2015
ちなみに伊勢ギーク・フェアーというのはこれです:
別の参加者の4足歩行ロボット。SUGEEE。 #ゆるパイ pic.twitter.com/2rmmKUfnle
— 植田 達郎(Tatsuro Ueda) (@weed_7777) July 25, 2015
壁が黒板。「こんな形をBlenderで作って3Dプリントしたら、いいんじゃない?」「あー、それいいですね」おいまてレベル高いよ! #ゆるパイ pic.twitter.com/qQoEhlsABy
— 植田 達郎(Tatsuro Ueda) (@weed_7777) July 25, 2015
会場のSharebaseになんと私が持ち込んだものと同じパンチバッグが!これは使える? #ゆるパイ pic.twitter.com/6duhuRbfJk
— 植田 達郎(Tatsuro Ueda) (@weed_7777) July 25, 2015
セットアップ
自軍を展開(Macは別の人のです)。手前から材料箱✖️2、工具箱、空気の抜けたパンチバッグ、空気のポンプ。 #ゆるパイ pic.twitter.com/7FDr6cbOgM
— 植田 達郎(Tatsuro Ueda) (@weed_7777) July 25, 2015
- 出版社/メーカー: ニーズ
- メディア: その他
- 購入: 1人 クリック: 7回
- この商品を含むブログ (1件) を見る
何はともあれ、まずはRaspberry PiをWi-Fiにつなぐ。 #ゆるパイ pic.twitter.com/KDI2fz0zO1
— 植田 達郎(Tatsuro Ueda) (@weed_7777) July 25, 2015
- 出版社/メーカー: Raspberry Pi
- メディア: Tools & Hardware
- この商品を含むブログ (3件) を見る
Raspberry Pi Model B+ / Pi2用ケースセット(GPIO Open型-Blue)
- 出版社/メーカー: TechShare
- メディア: エレクトロニクス
- この商品を含むブログを見る
ELECOM LANケーブル Cat5準拠 モバイル 巻き取り式 1.5m ブラック LD-MCTU/BK
- 出版社/メーカー: エレコム
- 発売日: 2004/11/22
- メディア: Personal Computers
- 購入: 7人 クリック: 19回
- この商品を含むブログ (12件) を見る
Apple Thunderbolt - ギガビットEthernetアダプタ MD463ZM/A
- 出版社/メーカー: アップル
- 発売日: 2012/06/13
- メディア: Personal Computers
- この商品を含むブログ (2件) を見る
Wi-FiにつながったのでマイクロSDカードをRaspberry Pi A+(右)に移します。 #ゆるパイ pic.twitter.com/q3KNaFJbEw
— 植田 達郎(Tatsuro Ueda) (@weed_7777) July 25, 2015
- 出版社/メーカー: raspberrypi.org
- メディア: エレクトロニクス
- この商品を含むブログを見る
Pibow Coup? A+ Royale パイボー クーペ ロイヤル for Raspberry Pi Model A+
- 出版社/メーカー: Pimoroni
- メディア: Personal Computers
- この商品を含むブログを見る
- 出版社/メーカー: スイッチサイエンス
- メディア: エレクトロニクス
- この商品を含むブログを見る
サンワダイレクト SDカードケース 12枚収納 microSD収納トレー付 200-FC002
- 出版社/メーカー: サンワダイレクト
- メディア: エレクトロニクス
- この商品を含むブログを見る
@weed_7777 右側のケース便利そうです
— ueponx (@ueponx) 2015, 7月 25
ブレッドボードを付けると萌えますよね(?) #ゆるパイ https://t.co/gEyf75JUpu
— 植田 達郎(Tatsuro Ueda) (@weed_7777) July 25, 2015
配線して・・・ #ゆるパイ pic.twitter.com/Lot5wIxUR2
— 植田 達郎(Tatsuro Ueda) (@weed_7777) July 25, 2015
- 出版社/メーカー: スイッチサイエンス
- メディア: エレクトロニクス
- 購入: 1人 クリック: 1回
- この商品を含むブログを見る
加速度を取れていることを確認。 #ゆるパイ pic.twitter.com/VRmeDFIaIV
— 植田 達郎(Tatsuro Ueda) (@weed_7777) July 25, 2015
コーディング(午前)
今回のコード(実はsample.pyだけ) #ゆるパイ / “weed/punch-bug-p150716 · GitHub” http://t.co/uq4NpkTkvI
— 植田 達郎(Tatsuro Ueda) (@weed_7777) July 25, 2015
とりあえずステートを「停止」「ゆっくり動いている」「速く動いている」の3つにしてみる。 #ゆるパイ pic.twitter.com/HCl1g08y4t
— 植田 達郎(Tatsuro Ueda) (@weed_7777) July 25, 2015
状態があるていど維持されるようにしたのですが・・・頭が悪くて、どうしたら良いのか分かりません。泣きながらナントカ作ったのが動画の挙動。もし「こうしたらいいよ」というのがありましたらプルリク下さい。😢 #ゆるパイ pic.twitter.com/mebuJcP0mc
— 植田 達郎(Tatsuro Ueda) (@weed_7777) July 25, 2015
@weed_7777 何をどうしたいの?
— けんた@おいっこらぶ (@tw_hoehoe) 2015, 7月 25
「速く動いている」状態のとき、1秒経つと状態が変わっちゃうんです。往復して振っているので「遅く動いている」「停止」状態を経由してしまうんです。まあでもパンチバッグに付けたら、あまり関係なくなるかなと思うのですが・・・ #ゆるパイ https://t.co/RvP0mcgbIM
— 植田 達郎(Tatsuro Ueda) (@weed_7777) July 25, 2015
@weed_7777 んー、色々あるですね。
まず、加速度センサーの初期設定が1番小さいレンジ(2G)になってますので、早く動かした時のが拾えてるのかな?とか。
1秒の時間の区切りではなく、加速度の値のみでifを振り分けたらどうなるか…とか、その辺りかなぁ?
— けんた@おいっこらぶ (@tw_hoehoe) 2015, 7月 25
おおお、初期設定、見てませんでした。見ます!加速度の場合分けはパンチバッグに付けてから挑戦してみますね。アドバイスありがとうございます!#ゆるパイ https://t.co/EmnGxJCdwN
— 植田 達郎(Tatsuro Ueda) (@weed_7777) July 25, 2015
そういうのこそ、Rx の出番ってかんじします。イベントの流入を制御して、状態をコントロールしたり。 https://t.co/QB1LogZPsO
— けん (@ken_zookie) 2015, 7月 25
ReactiveX/RxPY https://t.co/47qKFQd2gW の他にもいくつかライブラリがあるようです。とりあえず動いたら見てみます。アドバイスありがとう! #ゆるパイ https://t.co/okbr6rInZM
— 植田 達郎(Tatsuro Ueda) (@weed_7777) July 25, 2015
昼食
煮詰まっていたところで、みんなで昼食へ。肉ラーメンでした。 #ゆるパイ pic.twitter.com/523ikz3mVb
— 植田 達郎(Tatsuro Ueda) (@weed_7777) 2015年7月25日
コーディング(午後)
よーし、やっとHTTPリクエストを送る段階に来たぞ!ちなみにサーバは盟友 http://t.co/RCVq6UbM4q さんにつくってもらいました。HTTP GETで0-100を送ると、その値に応じて派手なアニメーションが動きます。 #ゆるパイ
— 植田 達郎(Tatsuro Ueda) (@weed_7777) July 25, 2015
おおお、動いてますよ、 http://t.co/RCVq6UbM4q さん!感動!! #ゆるパイ pic.twitter.com/EYIj9oPsZk
— 植田 達郎(Tatsuro Ueda) (@weed_7777) July 25, 2015
電子工作
4線の導線をハサミでカットします。 #ゆるパイ pic.twitter.com/gRQI91veiz
— 植田 達郎(Tatsuro Ueda) (@weed_7777) 2015年7月25日
4線です。電源とグランドと、あと2本はI2Cです。 #ゆるパイ pic.twitter.com/J5AuTtEU77
— 植田 達郎(Tatsuro Ueda) (@weed_7777) 2015年7月25日
剥(む)きます。みなさん、こういうのは懐かしいのでは? #ゆるパイ pic.twitter.com/kJKCG8oerU
— 植田 達郎(Tatsuro Ueda) (@weed_7777) July 25, 2015
オスコネクタピンを着けます。 #ゆるパイ pic.twitter.com/O3RThfzD7s
— 植田 達郎(Tatsuro Ueda) (@weed_7777) July 25, 2015
ふー。あとはハンダ付けだ。 #ゆるパイ pic.twitter.com/8ZYW56UERR
— 植田 達郎(Tatsuro Ueda) (@weed_7777) July 25, 2015
ハンダ付けおわた・・・ふー。 #ゆるパイ pic.twitter.com/bFgTLsl7zX
— 植田 達郎(Tatsuro Ueda) (@weed_7777) July 25, 2015
センサ部を分離しました。これでちゃんと動くかな・・・ #ゆるパイ pic.twitter.com/WbPHTlrrSw
— 植田 達郎(Tatsuro Ueda) (@weed_7777) July 25, 2015
加速度センサをパンチバッグに取り付けました! #ゆるパイ pic.twitter.com/lYe3QcJqzt
— 植田 達郎(Tatsuro Ueda) (@weed_7777) July 25, 2015
パラメータ調整中・・・いい感じです。#ゆるパイ pic.twitter.com/EF0i5y4gI7
— 植田 達郎(Tatsuro Ueda) (@weed_7777) July 25, 2015
・・・というわけで、来ていた方々に遊んでもらいました。
お披露目
おわりに
補足
サーバは hibara.org さんにつくってもらいました。いろいろ試行錯誤してくれました。ありがとうございます。サーバを使うに当たって決めておいたことは、HTTP GETで0〜100の値を渡す、ということでした。
あと、けんた@おいっこらぶ(@tw_hoehoe)さんにもお世話になりました。
感想
動いた!とりあえずこれが嬉しいですね。さらに「これ面白いよ」と言われると大変うれしい。やっほー!
反省
- 熱収縮チューブは必要。ピントピンが接触してしまう。接触するとアプリが落ちる。
- 人間のアクションをセンサーが拾わないことがある。しっかり拾えれば、かなり楽しくなるはず。
印象に残ったこと
橋本さんのキャラクターですw ハッカソンなのにハッカソンになってませんでしたw 他のイベントとダブルブッキングしていて2日目中止に。ゆるっ!
でも橋本さんは、Raspberry Pi初心者に丁寧に教えていました。Raspberry Piは最初のセットアップが大変ですからね。みんなGoogle Coder使えば良いのに(ボソ)
橋本さんは3Dプリンタの使い方も教えていました。私も3Dプリンターを使ってみたくなりました。
次の機会にはさらにパワーアップしたものをつくりたいです!
以下の記事が本記事の続編です。