#はじめに
この記事は、春のIoTリレーハンズオン@関西の一環として開催される<日本橋買い物ツアー>のハンズオン用資料として作成します。
当日の地図はこちら。
本ハンズオンでは、Raspberry pi(以降、ラズパイ)を設定し、使えるようになるまでの手順をまとめます。
セットアップは、USBシリアル変換ケーブルを使ってRasbianの設定を行う方法を採用します。
#[Step 1.] 必要な機材の準備
まずは必要なものを準備します。以下のものをご用意ください。
- PC(Windows/Mac※)
- RaspberryPi 2 Model B
- micro SDカード(8GB以上推奨)
- micro SDカードリーダー
- Wi-Fiドングル
- USBシリアル変換ケーブル
- micro USBケーブル
- USB ACアダプタ
※Linuxでも可能ですが、以降ではWindowsとMac向けにのみ記載します。
#[Step 2.] OSイメージのダウンロード
次に、本家のダウンロードサイトから必要なOSイメージをダウンロードします。
多数のイメージが公開されていますが、今回は、Rasbianを選択します。「RASPBIAN JESSIE」をダウンロードください。
ダウンロードしたイメージがZIPの場合は、ツールで解凍しておいてください。
#[Step 3.] OSイメージをSDカードに書き込む
micro SDカードリーダーをPCに接続し、SDカードを差し込みます。SDカードリーダーとSDカードが認識されているかを確認ください。認識されていない場合は、micro SDカードリーダーの説明書を参考にドライバーのインストールや初期設定を行ってください。
次に、OSイメージをSDカードに書き込みます。
OSイメージをSDカードへ書き込む方法はいくつかありますが、ここではWindows/Macについてそれぞれ1例を挙げておきます。
##Windowsの場合
- Win32 Disk Imagerをダウンロードし、インストールします。
- アプリを起動すると以下の画面が出ますので、"Image File"に先ほどダウンロードしたOSイメージを、"Device"にはSDカードが刺さっているドライブを指定します。Deviceは間違わないようにご注意ください!
3. Writeボタンを押して書き込みを開始します。書き込みにある程度時間がかかりますので、完了するまで待ちます。
##Macの場合
1.ApplePi Bakerをダウンロードし、インストールします。
2. アプリを起動すると以下の画面が出ます。SDカードが認識されていると、"Pi-Crust"に表示されますので、選択します。選択先は間違わないようにご注意ください!
3. "Pi-Ingredients"の"..."ボタンを押して、先ほどダウンロードしたOSイメージを選択します。"Pi-Crust"で選択しないとボタンが有効にならないので注意ください。
4. Restore Backupボタンを押して書き込みを開始します。書き込みにある程度時間がかかりますので、完了するまで待ちます。
#[Step 4.] USBシリアル変換ケーブルの設定
(注)Raspberry pi 3の方は、この記事の最後の方にある「私のラズパイ、Raspberry pi 3なんですが。」を先にご覧ください。
まずはUSBシリアル変換ケーブルの設定を行います。
使用するUSBシリアル変換ケーブルに対応するドライバーをインストールしてください。
製品名 | Winドライバ | Macドライバ |
---|---|---|
PL2303HX内蔵USBシリアル変換ケーブル | PL2303 Windows Driver Download | PL2303 Mac OS X Driver Download |
FTDI USBシリアル変換アダプター | Virtual COM Port Drivers | Virtual COM Port Drivers |
<参考>PL2303(HXがついてない)は、Windows8や10のドライバーがないので注意ください。Windows8や10で使用される場合はPL2303HXDとHXDがついているものを購入ください。Macについては、PL2303も使用できます。
(追記1)PL2303HXDですが、Windows8、10をサポートしているはずなのですが、うまく動かないようなので、FTDIのものを選ぶのをお勧めします。
(追記2)PL2303HXDですが、Windows8、10での対処法についての情報を以下にまとめました。
Windows8/10でPL2303HDXのドライバーが動作しない場合の対応方法について
つぎに、ケーブルをラズパイのGPIOに接続します。
GPIOとは以下のようにピンが並んでいる部分のことです。
左上から、右、次の列の左、右、、、の順で1、2、3、、、と番号がついています。
つまり、
(1) (2)
(3) (4)
(5) (6)
...
となっています。
接続に必要なのは次の3本です。
GPIOピン番号 | 名称 | 接続先 | ※ |
---|---|---|---|
6 | Ground | GND | 黒 |
8 | TXD(UART) | RX | 白 |
10 | RXD(UART) | TX | 緑 |
※PL2303HX内蔵USBシリアル変換ケーブルの場合の線の色 |
ケーブルによっては4本線が出ているかもしれませんが、残りの1本(5Vの電源線、赤い線の場合が多い)は使用しません。
あと、RXとTXがひっくり返って接続されている(一般的にクロスといいます)のにも注意ください。
#[Step 5.] Rasbianの起動とログイン
さぁ、次はラズパイを起動してみましょう。
まず、OSイメージを書き込んだSDカードをラズパイに差します。その後、mirco USBケーブルをUSB ACアダプタを差し、ラズベリーパイに接続すれば起動が開始されます。
次に、シリアルからのログインです。
##Windowsの場合
いくつか方法がありますが、ここではTeraTermを使用した例で説明します。
- TeraTermをインストールします。
- デバイスマネージャーを開き、"ポート(COMとLPT)"の項目を確認します。USBシリアル変換ケーブルが認識されていると、この項目に表示されます。そこにあるシリアルポート(COMXXという形式、XXは数字)を覚えておきます。
- TeraTermを起動します。何も設定されてない場合は、"新しい接続"のダイアログが表示されます。もし、設定される場合は、メニューの"ファイル(F)"から"新しい接続(N)..."を選択すると同じダイアログが表示されます。
- "シリアル"を選択し、"ポート(R)"で先ほどデバイスマネージャーで確認したシリアルポートを選択して、OKボタンを押します。
- 次に、通信速度の設定をします。メニューの"設定(S)"から”シリアルポート(E)..."を選択しすると、"シリアルポート設定"のダイアログが表示されます。この中の、ボー・レートを115200に設定して、OKボタンを押します。
- 起動ログもしくは、ログインプロンプトが表示されれば成功です。
##Macの場合 - ターミナルを起動します。
- "ls /dev/tty.*"と入力します。 USBシリアル変換ケーブルが認識されていると、/dev/tty.usbXXXというファイルが見つかると思います。(XXXはケーブルによって異なります)
- "screen /dev/tty.usbXXX 115200"と入力します。
- 起動ログもしくは、ログインプロンプトが表示されれば成功です。
ログインIDとパスワードはデフォルトで以下になります。
ログインID:pi
パスワード:raspberry
#[Step 6.] 初期設定
基本、この状態でも普通に使用できます。
以下にいくつかの設定方法を記載しますので、好みに応じて設定してみてください。
##設定ツールの起動
コマンドを入力して、設定ツールを立ち上げます。
$ sudo raspi-config
上下キーでメニューの選択、TABキーで<Select>/<Finish>/メニューの項目の選択が行え、Enterキーで決定となります。
終了は、<Finish>を選択してEnterキーを押します。
##ファイルシステムの拡張
SDカードの容量によっては、OSイメージをコピーしただけだと、SDカードのすべての領域が使えない状態です。すべての領域をできるようにするために、
"1 Expand Filesystem"
を選択してください。その後、再起動を行います。
##ユーザーパスワードの変更
ユーザpiのパスワードを変更したい場合は、
"2 Change User Password"
を選択して変更してください。
##タイムゾーンの変更
タイムゾーンでは時間帯の指定を行います。デフォルトではUTC(協定世界時)となっており、日本標準時(JST)と9時間の差があります。
タイムゾーンを日本標準時にするには、
"5 Internationalisation Options"
次に、
"I2 Change Timezone"
を選択し、"Asia" -> "Tokyo"を選択してください。
##Wifi設定の変更
Wifiで使用できるチャンネルは国によって異なります。そのため、Wifiを使う予定のある人は、以下の設定を行っておいてください。
"I4 Change Wi-fi Country
を選択し、"JP Japan"を選択してください。
その他の項目については、必要に応じて設定ください。
ロケールを変更することで、エラー表示等を日本語で表示させることも可能ですが、別途フォントのインストールが必要なため今回は行いません。
どうしてもという方は、Raspberry Pi 2の文字コードを変更する(日本語の設定)等のサイトを参考にトライしてみてください。
#[Step 7.] Wifi設定
この状態でも、EthernetにケーブルをつなげればDHCPでIPを取得して接続できます。
ここでは、Wifiの設定方法について簡単に記載します。
WPA2-PSKとWEPの2通りの方法を記載しますので、接続するアクセスポイントに合わせて設定してください。
WPA2-PSKの場合
想定するWifiの条件は以下です。SSIDおよびパスフレーズは適宜読み替えてください。
項目名 | 想定値 |
---|---|
セキュリティ | WPA2-PSK |
ステルス機能 | オフ |
IP割り当て | DHCP |
SSID | sample |
パスフレーズ | samplepasswd |
まず、Wifiアダプタが認識されているか確認します。Wifiアダプタをラズパイに差して、
$ iwconfig
と打って、以下のようにwlan0が表示されれば、Wifiアダプタは認識されています。ただし、まだ通信はできません。
以下のコマンドを実行します。
$ wpa_passphrase sample samplepasswd
すると以下のような文字列が出力されます。
network={
ssid="sample"
#psk="samplepasswd"
psk=528c5d46ff88fa51740bca0173a86e94dd45f1b9af2043448f40f649accbc0a5
}
この情報をコピーしておきます。
次に、/etc/wpa_supplicant/wpa_supplicant.confをスーパーユーザ権限で編集して、上記でコピーした値を追加します。
$ sudo vi /etc/wpa_supplicant/wpa_supplicant.conf
もしくは、
$ sudo nano /etc/wpa_supplicant/wpa_supplicant.conf
この最後にコピーした値を追加します。
6行目にコメントでパスフレーズが書かれていますので、実運用ではこの行は削除した方がセキュリティ的によいです。
この後、再起動すればwifiが有効になっているはずです。
WEPの場合
WEPはセキュリティが低いので、出来れば避けたいですが、PocketWifi等でWEPが必須の場合があるので記載しておきます。
想定するWifiの条件は以下です。SSIDおよびパスフレーズは適宜読み替えてください。
項目名 | 想定値 |
---|---|
セキュリティ | WEP |
ステルス機能 | オフ |
IP割り当て | DHCP |
SSID | sample |
パスフレーズ | samplepasswd |
/etc/wpa_supplicant/wpa_supplicant.confをスーパーユーザ権限で編集します。
$ sudo vi /etc/wpa_supplicant/wpa_supplicant.conf
もしくは、
$ sudo nano /etc/wpa_supplicant/wpa_supplicant.conf
この最後に以下の内容を追加します。
network={
scan_ssid=1
key_mgmt=NONE
ssid="sample"
wep_tx_keyidx=0
wep_key0="samplepasswd"
}
この後、再起動すればwifiが有効になっているはずです。
#その他の情報
###SDカードがうまく認識しない。
SDカードフォーマッターを使ってフォーマットしてみるといいかもしれません。
###私のラズパイ、Raspberry pi 3なんですが。
「ターミナルだけを使ってRaspberryPi 3にシリアルUSB変換ケーブルで接続する(モニタ・キーボード不要)」を先にご覧になって、USBシリアル変換ケーブルをつかえるように設定してください。