楽しく使おう・始めよう!raspberry pi入門〜実践編〜

38
楽しく使おう・始めよう! Raspberry Pi入門~実践編~ Japanese Raspberry Pi Users Group あっきぃ OSC2013 Tokyo/Fall (2013/10/20)

Upload: akira-ouchi

Post on 24-May-2015

8.807 views

Category:

Documents


0 download

DESCRIPTION

2013/10/20 OSC2013 Tokyo/Fall 2日目にて発表

TRANSCRIPT

Page 1: 楽しく使おう・始めよう!Raspberry Pi入門〜実践編〜

楽しく使おう・始めよう!Raspberry Pi入門~実践編~ Japanese Raspberry Pi Users Group あっきぃ OSC2013 Tokyo/Fall (2013/10/20)

Page 2: 楽しく使おう・始めよう!Raspberry Pi入門〜実践編〜

自己紹介 •  あっきぃと申します •  Ejectコマンドユーザー会主宰 •  わたしとRaspberry Pi

– 2012年8月デビュー – はじめはEjectサーバーとして使用 – RasPiの本にEjectについて書いた(???) – 電子工作もちょっとやるようになった – EjectとRasPiのコラボ?か今アツい(??)

Page 3: 楽しく使おう・始めよう!Raspberry Pi入門〜実践編〜

※  Ejectはありません  ※  

∫  ,';:☜;.`,ਊ,,;';,;☞,.՞  

՞    .            .    ,  .’    `:.

Page 4: 楽しく使おう・始めよう!Raspberry Pi入門〜実践編〜

RasPiとEject •  http://www.raspberrypi.org/archives/4824

Page 5: 楽しく使おう・始めよう!Raspberry Pi入門〜実践編〜

実践編の内容 •  ハードウェア系中心にご紹介 •  Raspberry Pi Camera Moduleについて •  RasPiとスクリプトでLEDを光らせよう •  交通系ICカード残高チェッカーを作ろう •  おまけ: CD-ROMドライブでハムスターにエサをあげよう

Page 6: 楽しく使おう・始めよう!Raspberry Pi入門〜実践編〜

Raspberry Pi Camera Moduleについて

Page 7: 楽しく使おう・始めよう!Raspberry Pi入門〜実践編〜

Raspberry Pi Camera Module

•  2013年5月頃に発売 •  Raspberry Piに接続して使うことができる専用のカメラモジュール

Page 8: 楽しく使おう・始めよう!Raspberry Pi入門〜実践編〜

特徴 •  安価($25/¥2,400) •  性能がいい

– 5メガピクセル(500万画素) – フルHD動画を30fpsで出力

•  RasPiのGPU性能が良いため – H.264サポート – やはり元々はケータイ向けの部品

•  簡単なコマンドで写真や動画の撮影ができる

Page 9: 楽しく使おう・始めよう!Raspberry Pi入門〜実践編〜

接続したようす •  リボンケーブルをCSIポートに差し込む

– Camera Serial Interfaceの略 •  違う長さのリボンケーブルや、固定用アクセサリは通販で買える – shop.pimoroni.com – modmypi.com

Page 10: 楽しく使おう・始めよう!Raspberry Pi入門〜実践編〜

アクセサリの例 •  オーディオジャックにさせる固定アーム

•  Pimoroni製マウントキット(大破済)

            ←三脚用穴付

Page 11: 楽しく使おう・始めよう!Raspberry Pi入門〜実践編〜

使えるようになるまでの手順 •  最新のNOOBS(1.3)でRaspbianを用意 •  カメラを接続して起動 •  初回起動時もしくはraspi-configコマンドでカメラサポートを有効にする

•  再起動する

Page 12: 楽しく使おう・始めよう!Raspberry Pi入門〜実践編〜

写真を撮影してみる •  raspistill ‒o test.jpg

•  意外とキレイに写る

Page 13: 楽しく使おう・始めよう!Raspberry Pi入門〜実践編〜

フィルタオプション •  ホワイトバランスや画像フィルタが充実 •  sketchフィルタの例

$  raspis5ll  –o  test.jpg  -­‐t  3  -­‐w  400  -­‐h  300  -­‐q  90  -­‐ifx  sketch

Page 14: 楽しく使おう・始めよう!Raspberry Pi入門〜実践編〜

動画を撮影してみる •  raspivid ‒o test.x264 ‒t 15000

–  -tは撮影時間(上記は15秒) – 指定しない場合は5秒 – デフォルトではフルHD(1920x1080)で出力されるので、適宜-x,-yでサイズ変更可能

•  mp4に変換するには、MP4Boxコマンドを使用(gpacパッケージをインストール) – MP4Box -fps 30 -add test.h264 test.mp4

Page 15: 楽しく使おう・始めよう!Raspberry Pi入門〜実践編〜

ストリーミング •  VLCを使った例 •  vlcパッケージをインストールして、以下のコマンドを実行

•  リモートのマシンの VLCからネットワーク 接続

$  raspivid  -­‐o  -­‐  -­‐t  9999999  -­‐w  320  -­‐h  240  |  cvlc  -­‐vvv  stream:///dev/stdin  -­‐-­‐sout  '#standard{access=hMp,mux=ts,dst=:8080}'  :demux=h264

Page 16: 楽しく使おう・始めよう!Raspberry Pi入門〜実践編〜

他になにができる? •  マクロレンズをつけてマクロ撮影 •  OpenCVと組み合わせて顔認識など

– http://youtu.be/CxFW7X_d9IM •  気球につけて飛ばして空を撮る (先日Eben氏らがやっていた^^;) – http://www.raspberrypi.org/archives/4733

Page 17: 楽しく使おう・始めよう!Raspberry Pi入門〜実践編〜

カメラを活用する •  RaPiRo: RasPiを搭載して操作できるロボット。カメラも搭載できる

•  Pi-Pan: カメラをケースに固定して、RasPiからアングルを操作するツール

Page 18: 楽しく使おう・始めよう!Raspberry Pi入門〜実践編〜

RasPiとカメラを始めるなら今 •  RSコンポーネンツにて、RasPi ModelAとカメラモジュールのセットが$42少々で購入できるキャンペーン中

•  ネットワークは無線LANにすればいいのでModelAでも問題なし

•  いますぐポチってRasPiをはじめよう •  http://raspberrypi.rsdelivers.com/product/rs/picamera-1/type-a-sbc-with-camera/7902704.aspx

Page 19: 楽しく使おう・始めよう!Raspberry Pi入門〜実践編〜

RasPiとスクリプトで LEDを光らせよう

Page 20: 楽しく使おう・始めよう!Raspberry Pi入門〜実践編〜

Raspberry Piと電子工作 •  Raspberry PiにはGPIOやI2Cと呼ばれるIO入出力機能が付いている

•  これを利用して電子工作が学習できる •  OSとの連携もLinuxなのでかんたん

– 専用のOSやアセンブラは不要 – シェルスクリプトやLightweight Languageで開発できる

•  入門にはうってつけ

Page 21: 楽しく使おう・始めよう!Raspberry Pi入門〜実践編〜

用意するといいもの •  ブレッドボード

– 電子部品をボードに差して接続できるボード •  ジャンパーピン

– Raspberry Piとブレッドボードと部品とを つなぐ線

•  購入場所 – 近くの電子工作屋さん – 通販 – dx.com(海外の通販。2週間かかるけど送料無料)

Page 22: 楽しく使おう・始めよう!Raspberry Pi入門〜実践編〜

LEDチカチカをしてみる •  LEDをLinuxから点灯させてみよう

– 通称Lチカ……某コンビニのフライドチキンみたいな呼び方だな(?)

•  使うもの – LED(3.3Vのもの) – 270Ω~330Ωくらいの抵抗(ない時はもう少し値が大きくても良い。470Ωとか) ※値が小さいとLEDが壊れるけれど、 それもまた学習(?)

Page 23: 楽しく使おう・始めよう!Raspberry Pi入門〜実践編〜

回路図 •  今回はGPIO4に接続(ピン番号では7)

※GNDはPin6が正しい (FritzingのRaspberry Piのデータが間違っている模様)

Page 24: 楽しく使おう・始めよう!Raspberry Pi入門〜実践編〜

接続してみたようす

Page 25: 楽しく使おう・始めよう!Raspberry Pi入門〜実践編〜

チカチカさせる •  Rubyでチカチカさせてみよう •  wiringpiを使用する $ sudo gem install wiringpi

•  GPIOは7(ピン番号)を 指定

•  ルート権限で実行 $ sudo ruby light.rb

require  'wiringpi'  

gpio  =  7  io  =  WiringPi::GPIO.new  io.mode(gpio,  OUTPUT)  

io.write(gpio,  1)  sleep  3  io.write(gpio,  0)

light.rb

Page 26: 楽しく使おう・始めよう!Raspberry Pi入門〜実践編〜

光った!!

Page 27: 楽しく使おう・始めよう!Raspberry Pi入門〜実践編〜

ね?簡単でしょ? •  簡単なサンプルでした •  しかし、この動作に実用性を見いだせられれば、立派な作品になる、かも? – もう何個かLEDを並べてcronジョブで点灯させて、常夜灯代わりにする(電力量には注意)

– Webでオン・オフできるようにしてみるとか – 別のサーバーを死活監視して、障害を検知したら点滅させる

Page 28: 楽しく使おう・始めよう!Raspberry Pi入門〜実践編〜

交通系ICカード 残高チェッカーを作ろう

Page 29: 楽しく使おう・始めよう!Raspberry Pi入門〜実践編〜

概要 •  家電屋で購入できるPaSoRiと、有志が開発するオープンソースのライブラリとサンプルを利用して交通系ICカードの残高チェッカーを作る

•  「Raspberry Pi [実用] 入門」 で紹介されているLCDディス プレイモジュールを利用して 残高を表示する

Page 30: 楽しく使おう・始めよう!Raspberry Pi入門〜実践編〜

用意するもの •  PaSoRi(RC-S320/330/370)

– 最新モデルのRC-S380は非対応なので注意 – 3000円前後

•  LCDモジュール – SB1602BW (http://strawberry-linux.com/catalog/items?code=27021)

– 800円少々

Page 31: 楽しく使おう・始めよう!Raspberry Pi入門〜実践編〜

LCDモジュールを使ってみる •  書籍11章11-3を参考に組み立てる (ハンダ付けを10ヶ所ほどする)

•  書籍11章11-4を参考に接続して、Raspberry Pi側の設定を行う

•  書籍を参考にサンプルのシェルスクリプトを書いて動かしてみる

•  宣伝乙(◞‸◟).oO(説明も長く          なるしね)

Page 32: 楽しく使おう・始めよう!Raspberry Pi入門〜実践編〜

ライブラリの用意 •  PaSoRi用にlibpafeライブラリを使用

– http://homepage3.nifty.com/slokar/pasori/libpafe.html

– ソースをDLしてコンパイルする •  libpafe-rubyをベースにスクリプトを作る

– http://homepage3.nifty.com/slokar/pasori/libpafe-ruby.html

– DLしておく

Page 33: 楽しく使おう・始めよう!Raspberry Pi入門〜実践編〜

スクリプトを組む •  libpafe-rubyのサンプルから必要なコードだけ抜粋

•  LCDの制御は書籍の11章11-5にあるシェルスクリプトを移植してクラス化 – ここでもwiringpiを使用する

•  lcd.rbができた – https://gist.github.com/Akkiesoft/6971348

Page 34: 楽しく使おう・始めよう!Raspberry Pi入門〜実践編〜

動かす •  $ sudo ruby lcd.rb

Page 35: 楽しく使おう・始めよう!Raspberry Pi入門〜実践編〜

スタンドを作る •  ブレッドボードのままでは見栄えがよくない

•  スタンドをつくってみた •  使ったもの

– 近いサイズの基板 – 丸ピンソケット(LCDパネルのピンが細い) – ケーブル – ハンズで買ったスタンド

Page 36: 楽しく使おう・始めよう!Raspberry Pi入門〜実践編〜

レッツ工作 •  ブレッドボードでつないでいたものを 基板で表現するだけの簡単なお仕事

•  線はなるべく束ねて接続しやすくした

Page 37: 楽しく使おう・始めよう!Raspberry Pi入門〜実践編〜

完成 •  紅の豚を見ながら 作ったらかなり配線 間違えた

•  ちゃんと集中して 作ろう!!!1

•  先に図を書こう!!

•  ブースで展示中です

Page 38: 楽しく使おう・始めよう!Raspberry Pi入門〜実践編〜

まとめ •  まずは、わかんないなりに、公開されている手順を見て真似ればなんとかできる

•  そこから自分で応用をきかせて新しいものを作っていくことで楽しみも増す

•  まずはやってみよう!

•  カメラボード安いのでとりあえず買おう