楽しく使おう・始めよう!
Raspberry Pi入門∼実践編∼
Japanese Raspberry Pi Users Group
あっきぃ
OSC2013 Tokyo/Fall (2013/10/20)
自己紹介
•  あっきぃと申します
•  Ejectコマンドユーザー会主宰
•  わたしとRaspberry Pi
–  2012年8月デビュー
–  はじめはEjectサーバーとして使用
–  RasPiの本にEjectについて書いた(???...
※	
  Ejectはありません	
  ※	
  

∞	
∫	
  

,';:☜;.`,ਊ,,;';,;☞,.՞	
  
՞	
  	
  .	
  	
  	
  	
  	
  	
  .	
  	
  ,	
  .’	
  	
  `...
RasPiとEject
•  http://www.raspberrypi.org/archives/4824
実践編の内容
• 
• 
• 
• 
• 

ハードウェア系中心にご紹介
Raspberry Pi Camera Moduleについて
RasPiとスクリプトでLEDを光らせよう
交通系ICカード残高チェッカーを作ろう
おまけ: CD-ROMド...
Raspberry Pi
Camera Moduleについて
Raspberry Pi Camera Module
•  2013年5月頃に発売
•  Raspberry Piに接続して
使うことができる専用の
カメラモジュール
特徴
•  安価($25/¥2,400)
•  性能がいい
–  5メガピクセル(500万画素)
–  フルHD動画を30fpsで出力
•  RasPiのGPU性能が良いため

–  H.264サポート
–  やはり元々はケータイ向けの部品

...
接続したようす
•  リボンケーブルをCSIポートに差し込む
–  Camera Serial Interfaceの略

•  違う長さのリボンケーブルや、固定用アク
セサリは通販で買える
–  shop.pimoroni.com
–  mod...
アクセサリの例
•  オーディオジャックにさせる固定アーム

•  Pimoroni製マウントキット(大破済)
            ←三脚用穴付
使えるようになるまでの手順
•  最新のNOOBS(1.3)でRaspbianを用意
•  カメラを接続して起動
•  初回起動時もしくはraspi-configコマンド
でカメラサポートを有効にする
•  再起動する
写真を撮影してみる
•  raspistill ‒o test.jpg

•  意外とキレイに写る
フィルタオプション
•  ホワイトバランスや画像フィルタが充実
•  sketchフィルタの例

$	
  raspis5ll	
  –o	
  test.jpg	
  -­‐t	
  3	
  -­‐w	
  400	
  -­‐h	
  3...
動画を撮影してみる
•  raspivid ‒o test.x264 ‒t 15000
–  -tは撮影時間(上記は15秒)
–  指定しない場合は5秒
–  デフォルトではフルHD(1920x1080)で出力
されるので、適宜-x,-yでサイ...
ストリーミング
•  VLCを使った例
•  vlcパッケージをインストールして、以下
のコマンドを実行
$	
  raspivid	
  -­‐o	
  -­‐	
  -­‐t	
  9999999	
  -­‐w	
  320	
  -­‐...
他になにができる?
•  マクロレンズをつけてマクロ撮影
•  OpenCVと組み合わせて顔認識など
–  http://youtu.be/CxFW7X_d9IM

•  気球につけて飛ばして空を撮る
(先日Eben氏らがやっていた^^;)
–...
カメラを活用する
•  RaPiRo: RasPiを搭載して操作できるロ
ボット。カメラも搭載できる
•  Pi-Pan: カメラをケースに固定して、
RasPiからアングルを操作するツール
RasPiとカメラを始めるなら今
•  RSコンポーネンツにて、RasPi ModelA
とカメラモジュールのセットが$42少々で
購入できるキャンペーン中
•  ネットワークは無線LANにすればいいの
でModelAでも問題なし
•  います...
RasPiとスクリプトで
LEDを光らせよう
Raspberry Piと電子工作
•  Raspberry PiにはGPIOやI2Cと呼ばれる
IO入出力機能が付いている
•  これを利用して電子工作が学習できる
•  OSとの連携もLinuxなのでかんたん
–  専用のOSやアセンブラは...
用意するといいもの
•  ブレッドボード
–  電子部品をボードに差して接続できるボード

•  ジャンパーピン
–  Raspberry Piとブレッドボードと部品とを
つなぐ線

•  購入場所
–  近くの電子工作屋さん
–  通販
– ...
LEDチカチカをしてみる
•  LEDをLinuxから点灯させてみよう
–  通称Lチカ……某コンビニのフライドチキン
みたいな呼び方だな(?)

•  使うもの
–  LED(3.3Vのもの)
–  270Ω∼330Ωくらいの抵抗(ない時はも...
回路図
•  今回はGPIO4に接続(ピン番号では7)

※GNDはPin6が正しい
(FritzingのRaspberry Piのデータが間違っている模様)
接続してみたようす
チカチカさせる
•  Rubyでチカチカさせてみよう
light.rb	
•  wiringpiを使用する
require	
  'wiringpi'	
  
$ sudo gem install
wiringpi
gpio	
  =	
  7...
光った!!
ね?簡単でしょ?
•  簡単なサンプルでした
•  しかし、この動作に実用性を見いだせら
れれば、立派な作品になる、かも?
–  もう何個かLEDを並べてcronジョブで点灯さ
せて、常夜灯代わりにする(電力量には注意)
–  Webでオン・オ...
交通系ICカード
残高チェッカーを作ろう
概要
•  家電屋で購入できるPaSoRiと、有志が開
発するオープンソースのライブラリとサン
プルを利用して交通系ICカードの残高
チェッカーを作る
•  「Raspberry Pi [実用] 入門」
で紹介されているLCDディス
プレイモジ...
用意するもの
•  PaSoRi(RC-S320/330/370)
–  最新モデルのRC-S380は非対応なので注意
–  3000円前後

•  LCDモジュール
–  SB1602BW (http://strawberry-linux.c...
LCDモジュールを使ってみる
•  書籍11章11-3を参考に組み立てる
(ハンダ付けを10ヶ所ほどする)
•  書籍11章11-4を参考に接続して、
Raspberry Pi側の設定を行う
•  書籍を参考にサンプルのシェルスクリプト
を書い...
ライブラリの用意
•  PaSoRi用にlibpafeライブラリを使用
–  http://homepage3.nifty.com/slokar/
pasori/libpafe.html
–  ソースをDLしてコンパイルする

•  libpa...
スクリプトを組む
•  libpafe-rubyのサンプルから必要なコード
だけ抜粋
•  LCDの制御は書籍の11章11-5にあるシェ
ルスクリプトを移植してクラス化
–  ここでもwiringpiを使用する

•  lcd.rbができた
–...
動かす
•  $ sudo ruby lcd.rb
スタンドを作る
•  ブレッドボードのままでは見栄えがよく
ない
•  スタンドをつくってみた
•  使ったもの
–  近いサイズの基板
–  丸ピンソケット(LCDパネルのピンが細い)
–  ケーブル
–  ハンズで買ったスタンド
レッツ工作
•  ブレッドボードでつないでいたものを
基板で表現するだけの簡単なお仕事
•  線はなるべく束ねて接続しやすくした
完成
•  紅の豚を見ながら
作ったらかなり配線
間違えた
•  ちゃんと集中して
作ろう!!!1
•  先に図を書こう!!
•  ブースで展示中です
まとめ
•  まずは、わかんないなりに、公開されてい
る手順を見て真似ればなんとかできる
•  そこから自分で応用をきかせて新しいも
のを作っていくことで楽しみも増す
•  まずはやってみよう!
•  カメラボード安いのでとりあえず買おう
Upcoming SlideShare
Loading in...5
×

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

9,106

Published on

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

0 Comments
12 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
9,106
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
30
Comments
0
Likes
12
Embeds 0
No embeds

No notes for slide

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

  1. 1. 楽しく使おう・始めよう! Raspberry Pi入門∼実践編∼ Japanese Raspberry Pi Users Group あっきぃ OSC2013 Tokyo/Fall (2013/10/20)
  2. 2. 自己紹介 •  あっきぃと申します •  Ejectコマンドユーザー会主宰 •  わたしとRaspberry Pi –  2012年8月デビュー –  はじめはEjectサーバーとして使用 –  RasPiの本にEjectについて書いた(???) –  電子工作もちょっとやるようになった –  EjectとRasPiのコラボ?か今アツい(??)
  3. 3. ※  Ejectはありません  ※   ∞ ∫   ,';:☜;.`,ਊ,,;';,;☞,.՞   ՞    .            .    ,  .’    `:.
  4. 4. RasPiとEject •  http://www.raspberrypi.org/archives/4824
  5. 5. 実践編の内容 •  •  •  •  •  ハードウェア系中心にご紹介 Raspberry Pi Camera Moduleについて RasPiとスクリプトでLEDを光らせよう 交通系ICカード残高チェッカーを作ろう おまけ: CD-ROMドライブでハムスターに エサをあげよう
  6. 6. Raspberry Pi Camera Moduleについて
  7. 7. Raspberry Pi Camera Module •  2013年5月頃に発売 •  Raspberry Piに接続して 使うことができる専用の カメラモジュール
  8. 8. 特徴 •  安価($25/¥2,400) •  性能がいい –  5メガピクセル(500万画素) –  フルHD動画を30fpsで出力 •  RasPiのGPU性能が良いため –  H.264サポート –  やはり元々はケータイ向けの部品 •  簡単なコマンドで写真や動画の撮影がで きる
  9. 9. 接続したようす •  リボンケーブルをCSIポートに差し込む –  Camera Serial Interfaceの略 •  違う長さのリボンケーブルや、固定用アク セサリは通販で買える –  shop.pimoroni.com –  modmypi.com
  10. 10. アクセサリの例 •  オーディオジャックにさせる固定アーム •  Pimoroni製マウントキット(大破済)             ←三脚用穴付
  11. 11. 使えるようになるまでの手順 •  最新のNOOBS(1.3)でRaspbianを用意 •  カメラを接続して起動 •  初回起動時もしくはraspi-configコマンド でカメラサポートを有効にする •  再起動する
  12. 12. 写真を撮影してみる •  raspistill ‒o test.jpg •  意外とキレイに写る
  13. 13. フィルタオプション •  ホワイトバランスや画像フィルタが充実 •  sketchフィルタの例 $  raspis5ll  –o  test.jpg  -­‐t  3  -­‐w  400  -­‐h  300  -­‐q  90  -­‐ifx  sketch
  14. 14. 動画を撮影してみる •  raspivid ‒o test.x264 ‒t 15000 –  -tは撮影時間(上記は15秒) –  指定しない場合は5秒 –  デフォルトではフルHD(1920x1080)で出力 されるので、適宜-x,-yでサイズ変更可能 •  mp4に変換するには、MP4Boxコマンド を使用(gpacパッケージをインストール) –  MP4Box -fps 30 -add test.h264 test.mp4
  15. 15. ストリーミング •  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 •  リモートのマシンの VLCからネットワーク 接続
  16. 16. 他になにができる? •  マクロレンズをつけてマクロ撮影 •  OpenCVと組み合わせて顔認識など –  http://youtu.be/CxFW7X_d9IM •  気球につけて飛ばして空を撮る (先日Eben氏らがやっていた^^;) –  http://www.raspberrypi.org/archives/ 4733
  17. 17. カメラを活用する •  RaPiRo: RasPiを搭載して操作できるロ ボット。カメラも搭載できる •  Pi-Pan: カメラをケースに固定して、 RasPiからアングルを操作するツール
  18. 18. RasPiとカメラを始めるなら今 •  RSコンポーネンツにて、RasPi ModelA とカメラモジュールのセットが$42少々で 購入できるキャンペーン中 •  ネットワークは無線LANにすればいいの でModelAでも問題なし •  いますぐポチってRasPiをはじめよう •  http://raspberrypi.rsdelivers.com/ product/rs/picamera-1/type-a-sbcwith-camera/7902704.aspx
  19. 19. RasPiとスクリプトで LEDを光らせよう
  20. 20. Raspberry Piと電子工作 •  Raspberry PiにはGPIOやI2Cと呼ばれる IO入出力機能が付いている •  これを利用して電子工作が学習できる •  OSとの連携もLinuxなのでかんたん –  専用のOSやアセンブラは不要 –  シェルスクリプトやLightweight Language で開発できる •  入門にはうってつけ
  21. 21. 用意するといいもの •  ブレッドボード –  電子部品をボードに差して接続できるボード •  ジャンパーピン –  Raspberry Piとブレッドボードと部品とを つなぐ線 •  購入場所 –  近くの電子工作屋さん –  通販 –  dx.com(海外の通販。2週間かかるけど送料無料)
  22. 22. LEDチカチカをしてみる •  LEDをLinuxから点灯させてみよう –  通称Lチカ……某コンビニのフライドチキン みたいな呼び方だな(?) •  使うもの –  LED(3.3Vのもの) –  270Ω∼330Ωくらいの抵抗(ない時はもう少 し値が大きくても良い。470Ωとか) ※値が小さいとLEDが壊れるけれど、 それもまた学習(?)
  23. 23. 回路図 •  今回はGPIO4に接続(ピン番号では7) ※GNDはPin6が正しい (FritzingのRaspberry Piのデータが間違っている模様)
  24. 24. 接続してみたようす
  25. 25. チカチカさせる •  Rubyでチカチカさせてみよう light.rb •  wiringpiを使用する require  'wiringpi'   $ sudo gem install wiringpi gpio  =  7   •  GPIOは7(ピン番号)を io  =  WiringPi::GPIO.new   io.mode(gpio,  OUTPUT)   指定 io.write(gpio,  1)   •  ルート権限で実行 sleep  3   $ sudo ruby light.rb io.write(gpio,  0)
  26. 26. 光った!!
  27. 27. ね?簡単でしょ? •  簡単なサンプルでした •  しかし、この動作に実用性を見いだせら れれば、立派な作品になる、かも? –  もう何個かLEDを並べてcronジョブで点灯さ せて、常夜灯代わりにする(電力量には注意) –  Webでオン・オフできるようにしてみるとか –  別のサーバーを死活監視して、障害を検知し たら点滅させる
  28. 28. 交通系ICカード 残高チェッカーを作ろう
  29. 29. 概要 •  家電屋で購入できるPaSoRiと、有志が開 発するオープンソースのライブラリとサン プルを利用して交通系ICカードの残高 チェッカーを作る •  「Raspberry Pi [実用] 入門」 で紹介されているLCDディス プレイモジュールを利用して 残高を表示する
  30. 30. 用意するもの •  PaSoRi(RC-S320/330/370) –  最新モデルのRC-S380は非対応なので注意 –  3000円前後 •  LCDモジュール –  SB1602BW (http://strawberry-linux.com/ catalog/items?code=27021) –  800円少々
  31. 31. LCDモジュールを使ってみる •  書籍11章11-3を参考に組み立てる (ハンダ付けを10ヶ所ほどする) •  書籍11章11-4を参考に接続して、 Raspberry Pi側の設定を行う •  書籍を参考にサンプルのシェルスクリプト を書いて動かしてみる •  宣伝乙(◞‸◟).oO(説明も長く          なるしね)
  32. 32. ライブラリの用意 •  PaSoRi用にlibpafeライブラリを使用 –  http://homepage3.nifty.com/slokar/ pasori/libpafe.html –  ソースをDLしてコンパイルする •  libpafe-rubyをベースにスクリプトを作る –  http://homepage3.nifty.com/slokar/ pasori/libpafe-ruby.html –  DLしておく
  33. 33. スクリプトを組む •  libpafe-rubyのサンプルから必要なコード だけ抜粋 •  LCDの制御は書籍の11章11-5にあるシェ ルスクリプトを移植してクラス化 –  ここでもwiringpiを使用する •  lcd.rbができた –  https://gist.github.com/Akkiesoft/ 6971348
  34. 34. 動かす •  $ sudo ruby lcd.rb
  35. 35. スタンドを作る •  ブレッドボードのままでは見栄えがよく ない •  スタンドをつくってみた •  使ったもの –  近いサイズの基板 –  丸ピンソケット(LCDパネルのピンが細い) –  ケーブル –  ハンズで買ったスタンド
  36. 36. レッツ工作 •  ブレッドボードでつないでいたものを 基板で表現するだけの簡単なお仕事 •  線はなるべく束ねて接続しやすくした
  37. 37. 完成 •  紅の豚を見ながら 作ったらかなり配線 間違えた •  ちゃんと集中して 作ろう!!!1 •  先に図を書こう!! •  ブースで展示中です
  38. 38. まとめ •  まずは、わかんないなりに、公開されてい る手順を見て真似ればなんとかできる •  そこから自分で応用をきかせて新しいも のを作っていくことで楽しみも増す •  まずはやってみよう! •  カメラボード安いのでとりあえず買おう
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×