Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
GoPiGo2で遊んでみた
Search
Kazuyuki Mori
May 15, 2016
Programming
44
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
GoPiGo2で遊んでみた
Kazuyuki Mori
May 15, 2016
More Decks by Kazuyuki Mori
See All by Kazuyuki Mori
ライブ配信サーバー完全に理解した
mainyaa
2
840
BitMech 探索的 トレーディングシステム fin-py study #1
mainyaa
0
55
Electron(旧atom shell)基礎+入門
mainyaa
0
47
Docker基礎+Docker0.9/0.10概要
mainyaa
0
41
Docker基礎+docker0.9, 0.10概要
mainyaa
0
59
Other Decks in Programming
See All in Programming
AIが無かった頃の素敵な出会いの話
codmoninc
1
150
【やさしく解説 設計編 #0】DDDのコード、読めるのに分からない人へ
panda728
PRO
2
270
ランチタイムLT会3周年!ランチタイムLT会を3年間続けられたお話
y0hgi
1
150
言語を使う側から、作る側へ。 自作 Lisp で得た新たな気づき。
andpad
0
130
JAWS-UG横浜 #102 AWSサ終供養LT会 成仏できない AWS サービスたち 〜本日、三体供養します〜
maroon1st
0
220
Built Our Own Background Agent at LayerX #aidevex_findy
layerx
PRO
5
2.3k
霧の中の代数的エフェクト
funnyycat
1
410
FDEが実現するAI駆動経営の現在地
gonta
2
170
AIキャラアプリkaiwaの低遅延音声通話基盤をどう作ったか - AWS Gravitonで支える低遅延・低コストAI Agent基盤
mogamit
0
180
AI時代、エンジニアはどう育つのか -未経験エンジニアの成長を間近で見て考えたこと-
thasu0123
0
140
SLOをサービス品質の共通言語にするために 取り組んできたこと
wakana0222
0
530
AI時代の仕事技芸論〜ソフトウェア開発で「遊ぶように働く」職人的熟達のすすめ(スクフェス仙台 2026バージョン)
kuranuki
0
680
Featured
See All Featured
Testing 201, or: Great Expectations
jmmastey
46
8.2k
KATA
mclloyd
PRO
35
15k
GitHub's CSS Performance
jonrohan
1033
470k
How to make the Groovebox
asonas
2
2.3k
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
62
45k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
Faster Mobile Websites
deanohume
310
32k
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
350
Context Engineering - Making Every Token Count
addyosmani
9
1k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
2k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
62k
Transcript
GoPiGo2で遊んでみた
Who am i 森 和之 @mainyaa 株式会社トップゲート ボドゲ好き猫エンジニア
GoPiGo2
GoPiGo2とは • RaspberryPIを積んだロボットカー • Dexter Industries社製 ◦ LEGOマインドストームのキットを作ってる • Kickstarter発
None
GoPiGo2の良い所 • 20分で作れる • センサーがキットになっていて、カスタマイズ出来る • 電子工作が初めてでも作れるぐらい簡単 • LEGOみたいにセンサーを組み合わせられる
GoPiGo2の良い所2 • ソースコードがオープンソースで公開されている(GPL) • ライブラリが豊富 ◦ C、C#、Java、NodeJS、Python、Scratch • https://github.com/DexterInd/GoPiGo/ •
プログラマブルなロボットカー
購入ガイド • RaspberryPIすでに持っている人 ◦ BaseKit+何かのセンサーで十分 ◦ $99 • これからRaspberryPIを始める人 ◦
StarterKitがおすすめ ◦ $299
None
None
GoPiGo2の良い所3 • Exampleが豊富 ◦ https://github.com/DexterInd/GoPiGo/tree/master/Software/Python/Ex amples • PS3コントローラーで操作できる(要bluetooth) • 超音波センサーで2m先まで物体があるか検知できる
• エンコーダーホイールがあるため、cm単位でモーターを制 御できる
None
エンコーダー ホイール タイヤと同じ軸に取り付ける タイヤがどれだけ回転したのかを パルスで受け取る Photo: ROBOTC http://www.robotc.net/wikiarchive/Tutorials/Arduino_Projects/Mobile_Robotics/BoeBot/What_is_an_Encoder
エンコーダーホイール • エンコーダーの穴は合計64個なので、360 / 64で、5 deg / pulse • ホイールの半径は3.25cm
• DER (Degree Per Ratio)がわかれば、タイヤをn cm進むのに必要なパルス数 が求められる
エンコーダーホイール • 例:90度右を向く def right_deg(degree): pulse= int(degree / 5) #
5 degree/pulse enc_tgt(0, 1, pulse) right()
どこでもRaspberryPI開発したい
どこでもRaspberryPI開発したい • 家に置いてあるRaspberryPIをノマドしつつ開発する ◦ wifiを自動再接続するようにする ◦ SSH Tunnelを使う ◦ wifiは11acを使う
•
どこでもRaspberryPI開発したい • wifiを自動再接続するようにする ◦ $ sudo apt-get install wicd ◦
$ wicd-curses
どこでもRaspberryPI開発したい • SSH Tunnelを使う ◦ MacもRPIも異なるプライベートネットワークで、グローバルIPがない ◦ GCPやAWS上にSSH Tunnel用の中継サーバーを建てちゃう ◦
世界中どこからでもRPIにSSH接続できる
Google Cloud Platform RPI(母艦) Macbook 中継サーバー private network private network
どこでもRaspberryPI開発したい - SSH Tunnelを使う • $ sudo apt-get install autossh
• $ git clone https://github.com/mainyaa/RaspberryPi-Mothership • $ cd ssh-tunnel-example • $ vim usr/bin/ssh_tunnel ◦ [ssh_tunnel]をglobalIPに書き換え
どこでもRaspberryPI開発したい - SSH Tunnelを使う • sudo apt-get install -y autossh
• git clone https://github.com/mainyaa/RaspberryPi-Mothership.git • sudo cp ./RaspberryPi-Mothership/init.d/ssh_tunnel /etc/init.d/ • sudo cp ./RaspberryPi-Mothership/sbin/ssh_tunnel /usr/sbin/ • sudo insserv ssh_tunnel • sudo reboot ◦ これで、RPIが常に中継サーバーにSSH接続している 状態になった
どこでもRaspberryPI開発したい - SSH Tunnelを使う • RPIに接続する ◦ ssh -o 'ProxyCommand
ssh ssh-tunnel nc %h %p' -p 20022 pi@localhost
Google Cloud Platform RPI(母艦) Macbook 中継サーバー private network private network
Port20022 Port22
どこでもRaspberryPI開発したい • RaspberryPiがどんなネットワークにいようと、raspiのIPアドレスを調べることな くssh接続できるようにする ◦ http://qiita.com/mainyaa/items/f10d15a7d2cdddd7dfbf
どこでもRaspberryPI開発したい • wifiは11acを使う ◦ これは間に合いませんでした>< ◦ ドライバのビルドのためにカーネルヘッダーを用意したり、ドライバのソース にパッチを当てたり、大変なのに認識してくれない>< ◦ 成功している人いますか?
GoPiGo2で脳◦メーカー作ってみた
GoPiGo2で脳◦メーカー作ってみた • Cloud Vision APIすごいよ • # LABEL_DETECTION カテゴリの検出 •
# LANDMARK_DETECTION 観光名所などの場所名 • # LOGO_DETECTION ロゴの検出 • # TEXT_DETECTION OCR、文字の検出 • # SAFE_SEARCH_DETECTION 画像が有害な内容を含んでいるかを検出 • # IMAGE_PROPERTIES 画像に関する色データを検出 • # FACE_DETECTION 顔検出 •
GoPiGo2で脳◦メーカー作ってみた • Cloud Vision APIすごいよ ◦ 顔検出ができる ▪ 顔の座標特定 ▪
笑顔、怒り、悲しみ、驚きを判定
GoPiGo2で脳◦メーカー作ってみた • Cloud Vision APIすごいよ ◦ 物体検出ができる ◦ カメラに写っている物体を識別 ▪
gadget, cat, human, room, floor, clothing, book
GoPiGo2で脳◦メーカー作ってみた • Cloud Vision APIすごいよ ◦ 課金はリクエスト1,000回=1unitで換算 ◦ 月1unitまで無料 ◦
以降、月1unitごとに$5 ▪ https://cloud.google.com/vision/docs/pricing
GoPiGo2で脳◦メーカー作ってみた • Cloud Vision APIの凄さを伝えるべくRasPi botとビデオを作った話 ◦ http://qiita.com/kazunori279/items/768c7fdf96cdf45a9d16 • kazunoriさんに作成とOSS化の許可を得て、フルスクラッチでvBot君を
作った • OSSで公開予定
GoPiGo2で脳◦メーカー作ってみた • 僕のvBot君の機能 ◦ 顔を検知できなかったら認識できた物体をしゃべるよ ◦ 笑顔を認識すると寄ってくるよ ◦ 笑顔から笑顔度を判定して◯内メーカー風に画像を出し てくれるよ
None
None
デモ
None
Thanks