スマートフォンでRaspberry Piカメラを操作するには

Raspberry Piカメラが なかまになりたそうに こちらをみている。
(見ているのではなく、目の前の怪しい人を写してるだけ)

カメラモジュールを接続したRaspbbery Pi(以下、Piカメラと呼称致します)を、スマートフォンで操作したいと思います。

スマートフォンでカメラの映像を確認しながら、写真の撮影・動画の録画・タイムラプスの撮影が可能です。

いつでもどこでも、Wi-Fiアクセスポイントが無い屋外でも、スマートフォンで操作できるように、Raspberry PiをWi-Fiアクセスポイント(親機)として設定するところがポイントです。

Raspberry Piの機種はWi-Fi内蔵のRaspberry Pi 3を使用します。RaspbianはStretch版の設定方法になります。


スマートフォンで操作できるようにRaspberry Piを設定

RPi-Cam-Web-Interfaceのインストール

Raspberry PiへRPi-Cam-Web-Interfaceをインストールすることで、Webブラウザによるカメラの操作が可能になります。

  1. こちらの記事を参考に、RaspbianとRPi-Cam-Web-Interfaceをインストールします。

ご自宅など、Wi-Fiアクセスポイント(親機)がある場所で、スマトフォンから操作したい場合は、以上で設定完了です。

ここから先は、アクセスポイントが無い場所でも操作できるように、Raspberry PiをWi-Fi親機にする設定になります。


Wi-Fiに固定IPアドレスを設定

次に、Wi-Fiの子機設定を停止して、固定IPアドレスを割り当てます。

  1. /etc/wpa_supplicant/wpa_supplicant.confを編集します。networkの設定があれば、ssid, psk, key_mgmtの各行に#をつけて無効化します。

  2. PiカメラをWi-Fi親機にする場合のIPアドレスを決めます。プライベートIPアドレスを利用します。例として、次の内容で設定します。
    • PiカメラのIPアドレス:172.20.0.1
    • サブネットマスク:24ビット(255.255.255.0)
  3. /etc/dhcpcd.confを編集します。

    次の1行を追加します。

  4. /etc/network/interfaces.d/iface-wlan0ファイルを作成します。


※17.12.30変更:Raspberry PiをWi-Fiアクセスポイントにするこちらの記事を参考に、固定IPアドレスの設定方法を変更しました。こちらのほうがhostapdの動作が安定するようです。

hostapdとisc-dhcp-serverインストール

Wi-Fiアクセスポイント化にhostapd、スマートフォンへのIPアドレス配布にisc-dhcp-serverを使用します。

  1. apt-getでインストールします。

hostapdの設定

こちらの記事を参考に設定しました。

  1. /etc/hostapd/hostapd.confを作成します。
    ssid, channel, wpa_passphraseを決めて入力します。


  2. /etc/default/hostapdを編集します。DAEMON_CONFを設定します。


isc-dhcp-serverの設定

  1. /etc/dhcp/dhcpd.confを編集します。domain-name,rangeは適宜変更して下さい。サブネットマスクが24ビットの場合、subnetはIPアドレスの4オクテット目を0にしたもの、IPbroadcast-addressは255にしたものになります。


  2. /etc/default/isc-dhcp-serverを編集します。INTERFACESv4を設定します。


isc-dhcp-serverの起動に失敗する対策

※17.12.30追記:wlan0の固定IPアドレス設定の方法を変えたため、以下の11~15番の設定は不要です。動作が不安定な場合の参考情報となります。


これで再起動すれば完成!・・・と思ったら、isc-dhcp-serverがうまく起動しません。

原因は、固定IPアドレスの割当を行うdhcpcdよりも先にisc-dhcp-serverが起動してしまい失敗しているようです。

systemdで依存関係を設定すれば良さそうですが、isc-dhcp-serverはinit.dで起動するために、依存関係を設定するのに手間がかかるようですが・・・・

こちらの記事を参考に、isc-dhcp-serverの起動に失敗した場合、自動再起動するようにsystemdの設定を行いました。

  1. Raspberry Piを再起動すると・・・isc-dhcp-serverの起動に失敗しているようです。再起動後、手動で起動するかどうか確認します。
  2. isc-dhcp-serverのsystemd設定ファイルを作成します。
  3. /etc/systemd/system/isc-dhcp-server.serviceファイルを編集します。[Service][Install]セクションに次の内容を追加・変更します。


  4. systemdの設定を反映し、isc-dhcp-serverのサービスを再登録します。

  5. 再起動後、isc-dhcp-serverがちゃんと起動している事を確認します。

動作確認

Piカメラを起動するとWi-Fiアクセスポイントとして動作します。

スマートフォンでPiカメラのSSIDに接続します。

スマートフォンにisc-dhcp-serverで設定したIPアドレスが割当られます。

WebブラウザからPiカメラにアクセスできます。IPアドレスを入力するか、Windows10やiPhoneの場合はホスト名.localでアクセスできるようです。


Wi-Fiを内蔵したRaspberry Pi 3の登場で、スマートフォンとRaspberry Pi 3を直接接続していろいろと操作できる時代になりました。

Raspberry Piとスマートフォンは、ともに電源ケーブルさえあれば動かし続けられます・・・複雑な配線から開放され、極めてシンプルになった印象です。

カメラ以外のデバイスをRaspberry Piに搭載して、スマートフォンで操作する場合にも、上記の設定は応用できそうです。

早速接続して、いろいろと遊んでみましょう!

スポンサーリンク

シェアする

  • このエントリーをはてなブックマークに追加

フォローする

スポンサーリンク