VNCでRaspberry Piにリモートデスクトップ接続 (Windows/Mac/Linux対応)

VNCを使って、PC (パソコン) からRaspberry Pi(ラズパイ)にリモート接続する手順、およびディスプレイなしでRaspberry Piを起動できるようにする方法について解説しています。PCからリモートでRaspberry Piを操作することができれば、運用の幅が広がって便利になります。

更新日 : 2024年3月2日

最新OS Bookwormについて

  • Raspberry Pi OS 64bit版が必要です32bit版では動作しません。(2023年10月30日現在) 64bit版が利用できない古いデバイスの場合は、1つ前のバージョンであるBullseye(Legacy版)を推奨します。64bit版/Legacy版のインストール方法はこちらの記事を参照してください。

リモート操作するメリット

Raspberry Piは、小型であり、ソフトやハードを追加することで様々な用途に利用できます。しかし、操作のためにディスプレイやキーボードを接続すると、利便性が損なわれてしまします。

PC(パソコン)からリモートでRaspberry Piを操作することができれば、ディスプレイなどをつなぐ必要もなく、運用の幅が広がって便利だと思いませんか?Raspberry Piには、リモート操作するためのVNC機能が用意されています。

VNCとは

VNCとはリモート操作するためのソフトウェアの一種です。まず、リモート操作される側 (Raspberry Pi)でVNCサーバーを実行しておきます。そこへ、ネットワークを介して操作する側 (PCやスマートフォン)のVNC Viewer (クライアント)を使って接続することで、リモート操作することができるのです。

VNCサーバー、Viewerの関係

コマンドだけでなくRaspberry Piのデスクトップ画面がそのままリモート操作できるようになるので、ターミナルなどでリモート接続する場合に比べて利便性が高い方法です。

Windows PCからRaspberry Piのデスクトップをリモート操作している様子

本記事では、Raspberry Piおよび、操作する側のPCなどが同じLANに接続されており、Raspberry Pi OSの使用を想定しています。




VNCサーバーの設定 (Raspberry Pi)

スタートメニューから、「設定 -> Raspberry Piの設定」をクリックします。

設定ツールが起動するので、上部タブから「インターフェイス」を選択し、VNCの項目を有効にして、「OK」をクリックします。

デスクトップ右上にVNCサーバーのアイコンが出現するので、クリックします。

旧OS Bullseyeの場合
新OS Bookwormの場合

以下の通り、Raspberry PiのIPアドレスが表示されます。後でVNC Viewerから接続する際に必要になるので、メモしておきましょう。

以上でVNCサーバー側(Raspberry Pi)の設定は完了です。

通常、IPアドレスは自動的に割り振られていますが(DHCP機能)、たまにIPが変わってしまって接続できなくなることがあります。そこで、IPアドレスを固定する方法を次に解説します。

IPアドレスを固定しなくてもリモート接続は可能です。固定しなくてよいという場合、「ディスプレイなしで起動できるようにする」へ進んで下さい。

Raspberry PiのIPアドレスを固定する

通常、IPアドレスは自動的に割り振られていますが(DHCP機能)、たまにIPが変わってしまって接続できなくなることがあります。ここでは、IPアドレスを固定する方法を解説します。

新OS Bookwormと旧OS Bullseyeで若干画面が異なるため、それぞれについて解説します。

新OS Bookwormの手順

デスクトップ右上のネットワークアイコンをクリックし、「Advanced Options」->「接続を編集する」の順にクリックします。

ネットワークを選択する画面が表示されます。有線LANの場合は有線接続、WiFiの場合は使用中のSSIDを選択し、下の歯車イアコンをクリックします。

下の画面の赤枠部分を上から順に入力していきます。

「IPv4設定」タブを選択し、Method「手動」を選択します。続けて「Add」を押して固定したいIPアドレスを入力します。ゲートウェイ、DNSサーバーは通常ルーターのIPアドレスを入力します。

IPアドレスはお使いのルーターの設定によって変わります。設定値がわからない場合はIPアドレスの固定を行わずに次に進むことをおすすめします。

自動で割り振られた値が「192.168.X.Y」だった場合、以下のように設定するとうまくいく可能性が高いです。

IPv4 Address: 192.168.X.Z (Zはネットワークで空いているアドレス)
ネットマスク: 255.255.255.0
ゲートウェイ、DNSサーバー: 192.168.X.1

IPv6は使わない場合は無効化しておいたほうが無難です。「IPv6設定」タブを選択後、Method「無効」を選択します。

最後に下の「保存」をクリックします。

旧OS Bullseyeの手順

デスクトップ右上のネットワークアイコンを右クリックします。ここでは無線LANで接続している状態ですが、有線でも同じです。

「Wireless & Wired Network Settings」をクリックします。

設定画面が表示されるので、interfaceの右の選択ボックスをクリックして、インターフェースを選択します。有線LANの場合は「eth0」、無線LANの場合は「wlan0」を選択します。

「Automatically configure empty options」のチェックを外し、IPアドレスを手動で入力します。IPv6を使わない場合は「Disable IPv6」をチェックします。編集が終わったら、「適用」、「閉じる」をクリックします。

IPアドレスはお使いのルーターの設定によって変わります。設定値がわからない場合はIPアドレスの固定を行わずに次に進むことをおすすめします。

自動で割り振られた値が「192.168.X.Y」だった場合、以下のように設定するとうまくいく可能性が高いです。

IPv4 Address: 192.168.X.Z (Zはネットワークで空いているアドレス)
Router, DNS Servers, DNS Search: 192.168.X.1

変更を反映させる(Bookworm/Bullseye共通の手順)

IPアドレスの変更を反映させるため、デスクトップ右上のネットワークアイコンをクリックし、「Turn OFF Wi-Fi」で一度無効化します。

その後、再度ネットワークアイコンから「Turn On Wi-Fi」で接続し直します。

有線の場合は有線接続をOFF/ONして下さい。

一度ネットワークをOFF

ネットワークをON

デスクトップ右上のVNCサーバーのアイコンをクリックして設定画面を確認しておきます。IPアドレスが変更した値になっていればOKです。

ブラウザーなどで、インターネットに接続できるかも念の為確認しておくとよいでしょう。

以上でIPアドレスの固定は完了です。

ディスプレイなしで起動できるようにする

Raspberry PiはHDMIケーブルからディスプレイの解像度を取得してデスクトップ画面に反映させています。そのため、ディスプレイなしで起動すると、リモートからデスクトップ画面を表示できなかったり、画面が小さくなる問題が起きます。

ここでは、デスクトップ画面の解像度を指定することで、ディスプレイなしで起動してもリモートからデスクトップ画面を表示できるように設定します。

スタートメニューから、「設定 -> Raspberry Piの設定」をクリックします。

設定ツールが起動するので、上部タブから「ディスプレイ」を選択し、ヘッドレス解像度の選択ボックスをクリックします。

希望の解像度を選択した後、「OK」をクリックして設定を反映させます。

以上で、ディスプレイなしで起動する設定は完了です。「VNC Viewerのインストール」のお使いのOSの項目へ進んで下さい。

VNC Viewerのインストール (Windows)

接続元のPC(パソコン)にVNC Viewer(クライアント)ソフトをインストールします。今回はReal VNCのソフトを使用します。

ダウンロードページからWindows用の「EXE x86/x64」を選択し、「Download VNC Viewer」をクリックします。

ダウンロードしたexeファイルをダブルクリックすると、インストーラーが起動するので、質問に答えていきます。

現時点で日本語版はないので、Englishのまま「OK」をクリックします。

「Next」をクリックします。

規約に問題なければ、「I accept the terms in the License Agreement」をチェックして「Next」をクリックします。

「Next」をクリックします。

「Install」をクリックします。

少し待つと、終了画面が表示されるので、「Finish」をクリックしてインストール完了です。スタートメニューから起動できるようになります。

次は「VNC Viewerでリモート接続」に進んで下さい。




VNC Viewerのインストール (Mac)

接続元のPC(パソコン)にVNC Viewer(クライアント)ソフトをインストールします。今回はReal VNCのソフトを使用します。

ダウンロードページから「Download VNC Viewer」をクリックします。

ダウンロードしたdmgファイルをダブルクリックすると、インストール画面になりますので、VNC ViewerのappアイコンをApplicationsにドラッグ&ドロップしてインストール完了です。Launchpadから起動できるようになります。

次は「VNC Viewerでリモート接続」に進んで下さい。

VNC Viewerのインストール (Linux)

接続元のPC(パソコン)にVNC Viewer(クライアント)ソフトをインストールします。今回はReal VNCのソフトを使用します。ここでの手順はUbuntu18.04に対応しています。

ダウンロードページからUbuntu用のdebパッケージ「DEB x64」を選択し、「Download VNC Viewer」をクリックします。32bit版や、debパッケージ以外のLinuxを使っている場合は、適切なものを選択して下さい。

ダウンロードしたdebファイルと同じディレクトリでターミナルを開き、以下のコマンドでインストールします。debファイル名は実際にダウンロードしたファイル名に合わせてください。バージョン番号などが変わる可能性があります。

sudo apt install ./VNC-Viewer-6.20.529-Linux-x64.deb

debパッケージのインストールが完了すると、アプリ一覧から起動できるようになります。

次は「VNC Viewerでリモート接続」に進んで下さい。

VNC Viewerでリモート接続

いよいよVNC ViewerでRaspberry Piへリモート接続します。VNC Viewerの使い方は基本的にどのOSでも共通です。

初回起動時は以下のような画面が表示されます。使用統計データを送りたくない場合は「Send anonymous usage data 〜」のチェックを外します。「GOT IT」をクリックして画面を閉じます。

メニューの「File -> New connection」をクリックします。

詳細設定画面が表示されます。VNC ServerにRaspberry PiのIPアドレスを入力します。Nameに表示名を入力します。Nameは、わかりやすければ何でも構いません。

他の設定はデフォルトで問題ないので「OK」をクリックします。

メイン画面にRaspberry Piが接続先として登録されました。実際に接続を開始するには、アイコンをダブルクリックします。

初めて接続するデバイスに関しては警告がでるので、「Continue」をクリックします。

Raspberry Piのユーザー名とパスワードを入力します。ユーザー名はデフォルトから変更していなければ「pi」となってるはずです。

入力したら「OK」をクリックします。

以下のようにウィンドウ内にRaspberry Piのデスクトップが表示されれば成功です!PCのマウスやキーボードを使って、Raspberry Piを操作することができるので、試してみて下さい。

画面が小さい場合はウィンドウサイズを大きくすると良いでしょう。

Raspberry Piを表示しているウィンドウの中央上部にマウスカーソルを移動させると、メニューが表示されます。

一番左の最大化アイコンをクリックすると、全画面表示になりますので、Raspberry Piの作業に集中する場合は便利です。

スマートフォンから操作

スマートフォンから操作したい場合はRealVNC Viewerアプリをインストールすることで可能です。接続時の設定に関しては上記のパソコン用のものを参照してください。




まとめ

VNCを使って、PC (パソコン) からRaspberry Piにリモート接続する手順、およびディスプレイなしでRaspberry Piを起動できるようにする方法について解説しました。PCからリモートでRaspberry Piを操作することができれば、運用の幅が広がって便利になります。

次のステップとして、SSHを使ってPCとRaspberry Piでファイル共有する記事を用意しています。

SSHでRaspberry Piとファイル共有&リモート操作 (Windows/Mac/Ubuntu対応)

Windows/Mac/UbuntuなどのPCからSSHでRaspberry Pi(ラズパイ)に接続し、ファイル共有やコマンドによるリモート操作する方法を解説しています。離れた場所にあるRaspberry Piとファイルを簡単にやり取りできるので、活用の幅が広がります。Raspberry Piのログファイルをダウンロードしたり、PCの音楽や動画をRaspberry Piへアップロードすることもできます。

TSL2572センサーとラズパイで明るさ(照度)を測定する

Indoor Corgiのセンサー制御ソフトウェア「cgsensor」を利用して、TSL2572センサーで明るさを測定する方法を解説します。コマンドラインツールを使って1行もコードを書かずに測定ができるほか、Pythonパッケージを使えばご自身のプログラムから簡単にセンサーを制御できます。

RPZ-PIRS (Raspberry Pi用 人感/明るさセンサー/赤外線 拡張基板)

Raspberry Pi(ラズパイ)に人感、明るさセンサー、赤外線送受信機能を搭載できる拡張基板です。人感センサーで人や動物を検知してカメラで撮影したり、赤外線で照明をONするような使い方が可能です。周囲の明るさをモニターできる他、外付温湿度/気圧センサー(別売り)を接続することで、温度、湿度、気圧の測定機能を追加できます。7色表示可能なRGB LEDにステータスを表示したり、スイッチを押すことで特定の動作をさせることができます。