用意したもの
- RaspberryPi3 Model B RS版 日本製 (2年前に買ったものなので、古いかもしれない)(以後ラズパイ)
- MacBook Air(macOS High Sierra 10.13.4)(以後Mac)
- microSDHC TOSHIBA 16GB UHS-I
- LANケーブル
- USB電源アダプタ(出力5.0V 1.5A。推奨は2.5Aらしい)
- マイクロB端子のUSBケーブル(iPhoneじゃないスマホを充電するときに使うあのケーブルです)
- Webカメラ Logicool HD Webcam C510
- ステレオイヤホン
MacでのmicroSDHCのフォーマット
今回使うmicroSDは、2年前にラズパイで遊んだものなので、フォーマットし直します。MS-DOS(FAT)形式にフォーマットします。Disk Utilityを起動してやる方法がよくネット上にあるんですが、うまくいかないので、SD Card Formatterを使います。
- SD Card Formatterを起動
- フォーマットしたいカードを選択、Quick Formatを選択、Format
ラズパイにRASPBIAN STRETCH LITEを入れる
-
Downloads ->
RASPBIAN
->RASPBIAN STRETCH LITE
と進んで、執筆時最新の2018-06-27-raspbian-stretch-lite.zip
をダウンロード。
途中にあるNOOBSはRaspbianのインストーラでインストールをよしなにやってくれるものですが、昔うまく動かなくてハマったし、Raspbianだけあれば十分です。RASPBIAN STRETCH WITH DESKTOPとRASPBIAN STRETCH LITEの違いですが、WITH DESKTOPのほうはデスクトップ環境を持ったもので、何やかんや色々入っていてイメージファイルのサイズは4GB以上になります。LITEのほうは2GBに満たない軽量なものです。いまのところデスクトップ要らないですし、必要になったら入れるのでLITEで十分でした。
- ダウンロードしたzipファイルを解凍。
- Etcherを起動。select imageには、解凍したimgファイルを選択。select diskには、フォーマットしたmicroSDHCを選択。Flash!
- sshというファイルをmicroSDHCの中に作る。
touch /Volumes/boot/ssh
- microSDHCをMacから取り出し、ラズパイに差し込む。
- ラズパイにUSBケーブルのマイクロB端子を差し込み、USB端子のほうをUSB電源に差し込む。
- USB電源をコンセントに差し込み、ラズパイの緑のランプが点滅するまで待つ。
有線LAN接続する
- ラズパイにLANケーブルを差し込み、LANケーブルの反対側の端子をルーターに差し込む。
- ラズパイのIPアドレスを確認する。
IPアドレスの確認方法は何でもいいですが、私は、元々FingというアプリをiPadで使っていたので、そこで出てきた raspberrypi
のIPアドレスを確認。ラズパイ・Mac・iPadが同じネットワーク内にある(同じルーターを介している)状態で行います。
- Macからラズパイにssh接続する。
ssh pi@確認したIPアドレス
# 例えば、 ssh pi@192.168.0.20
# Are you sure you want to continue connecting (yes/no)? yes
# pi@192.168.0.20's password: ここにパスワードを入力
# デフォルトのパスワードは`raspberry`。入力内容は画面には表示されません。
もし、過去に同じIPアドレス(例では192.168.0.20)で別の機器(もしくは同じRaspberryPiだけどRaspbianをインストールし直したりした場合)にsshしたことがある場合、リモートホストのIDが変わったと言われてログインできないかもしれません。その場合、~/.ssh/known_hosts
へ行って、確認したIPアドレスが書かれている行(例では192.168.0.20)を消した後で、sshしてみてください。
ターミナルの入力待ち画面がpi@raspberrypi:~ $
となったらssh接続成功です。
無線LAN接続する
パスワードの変更
passwd
# Changing password for pi.
# (current) UNIX password: いまのパスワード(デフォルトは`raspberry`)
# Enter new UNIX password: 新しいパスワード
# Retype new UNIX password: 新しいパスワード
# passwd: password updated successfully
タイムゾーン・Wi-fiの国設定
やってることはdpkg-reconfigure
等々なので、コマンドからやっても良いと思います。
sudo raspi-config
青いバックグラウンドにグレーのパネルが出るので、Localisation Options
からそれぞれ設定します。
ロキャルの設定
デフォルトはen_GB.UTF-8
になっていて、そのままでもいいですが、気分的にen_US.UTF-8
に変えます。これは (2018/09/03追記: raspi-config
でうまく動かなかったので、手動でやります。/etc/locale.gen
を編集してロキャルを生成し、/etc/default/locale
を編集します。ちなみに、エディタはvi使ってますが、nanoでもなんでもいいです。raspi-config
もしくはdpkg-reconfigure locales
で問題なく行けました)
ネットワークの設定
sudo vi /etc/wpa_supplicant/wpa_supplicant.conf
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
network={
ssid="SSID"
psk="暗号化キー"
key_mgmt=WPA-PSK
}
ルーターのIEEE802.11b/g/n
のSSIDと、ルーターのパスワードを確認して、それぞれ""
で囲って記述します。
ラズパイのローカルIPを固定する
interface インターフェイスのタイプ # 例えば、無線接続ならwlan0、有線接続ならeth0
static ip_address=割り当てたいIPアドレス/24 # 例えば、192.168.0.20
static routers=ルーターのIPアドレス # 例えば、192.168.0.1
static domain_name_servers=ネームサーバのIPアドレス # 例えば、192.168.0.1
(2018/09/03追記: 上のように/etc/dhcpcd.conf
を編集するのが定石で、以下のように /etc/network/interfaces
をいじるやり方は過去のバージョンのRasbianでのことのようです。)
~~```bash:Terminal(ラズパイ側)
sudo vi /etc/network/interfaces
~~`/etc/network/interfaces/`に以下を**追加**。~~
~~```:/etc/network/interfaces
auto wlan0
allow-hotplug wlan0
iface wlan0 inet static
address 割り当てたいIPアドレス # 例えば、192.168.0.20
netmask 255.255.255.0
gateway ルーターのIPアドレス # 例えば、192.168.0.1
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
```~~
### ラズパイを再起動する
```bash:Terminal(ラズパイ側)
sudo reboot
LANケーブルを外して、再度ssh接続を試みて、先程変更したパスワードを入力して接続できたら成功です。
Webカメラで録音してみる
- WebカメラのUSB端子をラズパイに差し込む。
lsusb
# Bus 001 Device 004: ID 046d:081d Logitech, Inc. HD Webcam C510
lsusb
はUSBに接続されているデバイスを認識できるコマンドです。上のように、差し込むだけで、HD Webcam C510
と認識されていることがわかります。あっさり。
- apt-get update & upgradeする。
sudo apt-get update && sudo apt-get -y upgrade
わらわら入ります。少し待ちます。
- デバイスの確認
arecord -l
# =>
# card カード番号: ... device デバイス番号: ...
# となっているので、番号を覚えておいてあとで使います
- 録音。
cd ~
arecord -D plughw:1,0 -d 10 -f cd test.wav
# plughw:カード番号,デバイス番号 です。先程控えた番号を入れます。
# dオプションで録音する長さを指定します。上の例では10秒です。
-
test.wav
がホームディレクトリ(デフォルトでは/home/pi
)にできているのを確認。
ls ~
# test.wav
- ラズパイのイヤホンジャックにイヤホンを差し込み、
text.wav
を再生します。
aplay test.wav
Webカメラで撮影してみる
- fswebcamを入れる。
sudo apt-get install -y fswebcam
- 撮影。
cd ~
fswebcam img.png
- 画像を閲覧する機能はあとで使うつもりはないので、ここではMac側で確認します。img.pngがホームディレクトリ(デフォルトでは
/home/pi
)にできているのを確認し、ログアウト。
ls ~
# img.png
exit
- 画像ファイルをダウンロード
scp pi@IPアドレス:/home/pi/img.png ./
# 例えば、scp pi@192.168.0.20:/home/pi/img.png ./
scpを実行したディレクトリ直下にimg.pngが保存されているはずなので、それを開くと、画像が確認できると思います。
参考
Installing Raspbian Lite, Enabling and Connecting with SSH
Raspbian Jessie Lite の Wi-Fi 設定
無線LANの設定
raspberry pi で USBカメラ(c270)から画像/音声入力/出力