Raspberry Piの始め方

この記事のまとめ:
  • Raspberry Piの購入方法と初期設定の方法をまとめています。
背景

スマートホームというほどではありませんが、夏本番を前に家の中の温湿度を可視化したいと思いまして、次のことが必要かと思っています。

  1. 温湿度をセンサーで測定
  2. 測定結果を無線で収集
  3. データを可視化

2.の役割をRaspberry Piで行おうと思い、今回Raspberry Piを購入して初期設定を行ってみましたのでその流れを説明します。 ちなみに1.はまだ手元にありませんが、Xiaomi Mijia Bluetooth Thermometer (英語サイトもないのでローカル商品かな?) を購入しまして、3.にはGrafanaで実装しようと思っています。

Raspberry Piの購入
Raspberry Pi本体

Amazonでも売っていますが、下記あたりで買うのがAmazonよりも安く購入できます。

Raspberry Pi ZeroはRSコンポーネンツでは販売していないようですが、スイッチサイエンスでは販売しています。

ちなみに私は、BluetoothとWi-Fi接続のみできればよかったので、一番安いRaspberry Piを購入しようと思って、スイッチサイエンスでRaspberry Pi Zero WとRaspberry Pi Zero WHを購入しました。Raspberry Pi Zero Wを2台でよかったのですが、1人1台までの購入制限がありました。

その他

本体以外に持っておくと便利な小物類を挙げておきます。

OSのセットアップ

必要な物品が揃ったらOSのセットアップを行い、Raspberry Piを起動したいと思います。

RaspBerry Pi対応OSはいくつかありますが、最も普及しているRaspbianのセットアップの仕方を紹介します。また、基本はGUIで動くようですが、GUIを使う理由がありませんので、起動時にWi-Fiに接続して、SSHからログインできるようにします。

主な流れは次の通りです。

  1. Raspbianのダウンロード
  2. SDカードにOSイメージ書き込み
  3. sshファイルの追加
  4. Wi-Fi設定ファイルの追加
Raspbianのダウンロード

公式ホームページからダウンロードします。特に容量を気にしなければ”Raspbian Stretch with desktop and recommended software”を使えば問題ないと思います。この場合、OSだけで5.4 GB程度の容量なので最低でも8 GBのSDカードを使いましょう。

SDカードにOSイメージ書き込み
  • SDカードのフォーマット

公式ドキュメントにWindowsの場合はSD Formatterを使ってFAT 32でフォーマットしましょうね、と書いてあるので、Windowsの場合にはリンクのあるSD Formatterなどでフォーマットします。MacOSやLinuxの場合はOSが提供しているフォーマット機能でいいはずです。

Windows The standard formatting tools built into Windows are limited, as they only allow partitions up to 32GB to be formatted as FAT32, so to format a 64GB partition as FAT32 you need to use a third-party formatting tool. A simple tool to do this is FAT32 Format which downloads as a single file named guiformat.exe - no installation is necessary. Run the SD Formatter tool first to ensure that any other partitions on the SD card are deleted. Then run the FAT32 Format (guiformat.exe) tool, ensure you choose the correct drive letter, leave the other options at their default settings, and click “Start”. After it has finished, you can proceed with the rest of the NOOBS instructions. If the FAT32 Format tool doesn’t work for you, alternative options are MiniTool Partition Wizard Free Edition and EaseUS Partition Master Free which are “home user” versions of fully featured partition editor tools, and so not as straightforward to use.

  • OSイメージを書き込み

書き込みソフトにはEtcherというソフトを使います。Etcherはダウンロードしてきたzip形式のRaspbianをそのまま書き込むことができるので便利です。

シンプルなUIなので従うがままにOSイメージをSDカードに書き込めばよいです。

sshファイルの追加

SSH接続するためには、OSが書き込み終わったSDカード内のルートディレクトリにsshという空ファイルを作ればよいです。それだけ。

Wi-Fi設定ファイルの追加

GUIを使わず、シリアルコンソールも使わず、SSHでログインしようと思うと、当たり前ですがLANに接続する必要がありますが、Raspberry Pi ZeroにはLANポートがありませんので、起動時にWi-Fiに接続してもらう必要があります。

そのために必要な設定ファイルを作ってくれるサイトがあります。 こちらのサイトに行き、接続させたいWi-FiのSSIDとパスワードを入力します。複数書き込むことができますので、接続させたいWi-Fiが複数ある場合は必要な分だけ追加します。

**「wpa_supplicant.conf 作成」**ボタンを押すと設定ファイルができますので、こちらもSDカード内のルートディレクトリに保存します。

Raspberry Piの起動とSSHでログイン

上記すべて正しく行えていればSDカードをRaspberry Piに挿して、電源を入れるとOSが起動し、Raspberry Pi Zeroであれば緑のLEDが点灯するはずです。

ここでSSHでログインしようと思うとIPアドレスがわからなければなりませんが、IPアドレスを事前に設定しておく方法はないようなので、これだけはWi-FiのDHCPに依存してしまうので、ご利用のWi-FiのDHCPの設定をご確認ください。 ※どうしてもわからなければGUIから確認するしかないでしょう

IPアドレスがわかれば下記が初期設定のユーザーIDとパスワードですので、これを使ってSSHでログインできるはずです。

  • User: pi
  • Password: raspberry
固定IPアドレスの設定

固定IPアドレスの設定はWi-FiのDHCP設定で固定的に割り当てることも可能だと思いますし、Raspberry Pi側でDHCPを使わずに静的にインターフェースの設定をすることもできます。 今回はDHCPを使わずに静的にインターフェースの設定を行います。

RaspbianはDebian系なので /etc/network/interfaces に必要な設定すればよいかと思いましたが、次のように書いてありました。

pi@raspberrypi:/etc $ cat /etc/network/interfaces
# interfaces(5) file used by ifup(8) and ifdown(8)
 
# Please note that this file is written to be used with dhcpcd
# For static IP, consult /etc/dhcpcd.conf and 'man dhcpcd.conf'
 
# Include files from /etc/network/interfaces.d:
source-directory /etc/network/interfaces.d

ようは固定IPの設定をしたければ /etc/dhcpcd.conf に書けということです。ファイルを直接除いても大体わかると思いますし、何かわからないことがあれば man dhcpcd.conf でマニュアルを確認できます。

私の場合はこんな感じで /etc/dhcpcd.conf に追記しました。

interface wlan0
static ip_address=192.168.0.31/24
static routers=192.168.0.1
static domain_name_servers=192.168.0.1

あとはRaspberry Piをリブートすれば再起動後には設定が変わっています。

参考


今回は以上です。 最後まで読んでいただき、ありがとうございます。

コメント

このブログの人気の投稿

LinuxでのnVidia GPUのオーバークロック・電力チューニング方法