統合天体観測システム①システムセットアップ編

Raspberry Piと、INDIを活用した統合天体観測システムを紹介していきます。

※改造については、あくまでご自身の責任にてお願いいたします。本内容は参考情報としてご覧ください。


1. 統合天体観測システム

本システムは、屋外で天体観測を楽しむための統合天体観測システムです。カードサイズの小型コンピュータRaspberry Pi 5 を中核に、観測機器の制御と運用を行います。

Raspberry Pi 5は司令塔として機能し、INDI (Instrument Neutral Distributed Interface) の通信プロトコルを用いて、赤道儀(ここではOnStep)を制御します。INDIは多様な機器に対応しており、柔軟な拡張性を備えています。
さらに、KStars/EKOS といった高機能なプラネタリウム・観測制御ソフトと連携することで、自動導入や高度な観測支援が可能です。

また、Windows PCからVNC接続を介してRaspberry Pi 5のデスクトップを操作できるため、車内など離れた場所から無線で望遠鏡を制御するができます。

このページでは、Raspberry Pi 5のセットアップから、ネットワーク設定までを紹介していきます。


2. システム構成

2.1 ハードウェア構成

フィールドでの煩雑な準備作業を最小限にし、スムーズな運用できることを優先し、システムを構成しています。
Raspberry Pi 5 を Wi-Fi アクセスポイントとして構成し、そのネットワークに Windows PC と OnStep の SWS をクライアントとして接続します。
さらに、Raspberry Pi 5 と OnStep は USB で接続され、INDI を介して通信・制御を行います。


自宅では Raspberry Pi 5 をインターネットに接続することが多いため、観測システムにはローカル Wi-Fi、ホームネットワークには有線 LAN を割り当てます。LAN ケーブルを挿すだけでインターネットに接続でき、同時に観測用の Wi-Fi ネットワークも維持できるので、準備やデータ転送をスムーズに行えます。

ハード ウェアRaspberry PI 5 (8G)
OSRaspberry Pi OS (64-bit) Trixie
リリース日時 25-11-24

以下に、ネットワーク環境の一覧を示します。あくまでも一例なので、必要に応じて修正してください。

🌌フィールド運用時🏠自宅運用時
RPi 5wifi アクセスポイント名FieldAPFieldAP
wifi IPアドレス192.168.50.1
(アクセスポイント)
192.168.50.1
(アクセスポイント)
インターネット接続切断イーサネット(有線 LAN)経由
Onstep SWSwifi接続先FieldAPFieldAP
wifi IPアドレス192.168.50.20192.168.50.20
Windows PCWifi 接続先FieldAPFieldAP
Wifi IPアドレス192.168.50.100192.168.50.100
インターネット接続USBデザリング経由 などイーサネット(有線 LAN)経由 など

2.2 ソフトウェア構成

以下は使用するソフトウェアの一覧です。すべてオープンソースで、無料で利用できます。

INDI
デバイス制御・通信プロトコル望遠鏡・カメラ・フォーカサー・フィルターホイールなど、さまざまな天体観測機器を制御するためのオープンソースの通信プロトコルです。INDIはLinuxベースで動作し、Raspberry Piのような軽量なコンピュータでも快適に運用可能です。
KStarsプラネタリウムソフトLinux・Windows・macOSで動作するフリーの高機能なプラネタリウムソフトで、リアルタイムの星図表示や天体情報の検索、望遠鏡の自動導入などが可能です。
Ekos観測自動化・機器制御モジュールKStarsに組み込まれている、観測自動化・機器制御モジュールです。INDIを通じて望遠鏡・カメラ・フォーカサー・オートガイダーなどの観測機器を制御することができます。

3. Raspberry Pi OSのインストール

note: 2023年10月以降、Raspberry Pi OS はDebian 11(Bullseye)ベースから Debian 12(Bookworm)ベースへと移行しました。 この変更により、ネットワーク関連の挙動や初期設定が大きく変化しています。

用意するものは、Windows PC、Raspberry Pi 5、micro SDカード、インターネットに接続可能な有線LAN、Raspberry Pi 5に対応した電源ケーブルを用意します。

まず、Raspberry Pi5にOSをインストールします。Windows PCで、Raspberry Pi Imagerを使用して、SDカードにインストールを進めていきます。
OSは、Raspberry OS(64-bit)のBookwormをえを選択します。

アプリの流れに沿って、設定を行って行きますが、ここでの注意点は、WiFi使用の仕様にチェックを入れず、設定を行わないことです。これはのちにRasppberry Piをアクセスポイントモードを行う際に、設定が競合しないためです。


4. VNC設定

SDカードに書き込みが終わったらRaspberry Pi にSDカードを挿入し起動します。最初はモニター、キーボード、マウスをRaspberry Piに接続し、設定を行います。最初に行うのはVNC(リモートデスクトップ)の環境を整えるところから始めます。

4.1 ウインドウズシステムの変更

Terminalを起動し、以下のコマンドを実行し、raspi-configを起動します。

Raspberry Pi 5では新しいウインドウシステムの「Wayland」が使われていますが、VNC(リモートデスクトップ)との相性に一部問題があります。そのため、安定したリモート操作を行うために、従来のX11(X Windows System)方式に切り替えます。

 → 6 Advanced Options
 → A7 Wayland
 → W1 X11


設定後、再起動します。

4.2 VNCの有効化

再起動後に、再び、Raspi-configを起動し、VNCを有効化します。

 3 Interface Options
 → I3 VNC


これにより、画面右上に VNC のアイコンが表示され、VNC が有効になったことを確認できます。アイコンをクリックすると、Raspberry Pi の IP アドレスを確認できます。 その後は、Windows PC から Real VNC Viewer を利用して、リモートデスクトップ経由で Raspberry Pi を操作できます。なお、Real VNC Viewer は Microsoft Store からインストール可能です。

※現段階では、有線LAN経由の接続になりますが、のちに、WiFi経由の接続に設定します。


5. Raspberry Pi のアクセスポイント化

Raspberry PiをWiFiアクセスポイント(AP)に設定します。このことで、Raspberry Piがホストとなり、赤道儀のコントローラであるOnstepや、WindowsPCがクライアントとしてアクセスが可能になります。

Windows PCより、WiFiのアクセスポイントとして、選択できるようになっているはずです。


6. Windows PCの設定

Windows PCをWi-Fi経由でVNC接続できるように設定します。

6.1 固定IP化

Raspberry Pi 5でDHCPが失敗するのを防ぎ、安定した接続を確保するために、Windows PCのWi-Fiアダプタに固定IPを割り当てます。

 IPアドレス: 192.168.50.100
 ゲートウェイ: 192.168.50.1

6.2 ルーティングルールの設定

Windows PCは有線LANとWi-Fiの両方に接続するため、どっちの回線を使って通信するかを自動で選択します。これを安定して動作するように、ルーティングルールを明示させます。

1. Windowsの検索窓に「コマンドプロンプト」または「PowerShell」と入力します。
2. 表示されたアプリを右クリックし、「管理者として実行」を選択します。
3. 以下のコマンドを入力してインターフェイス一覧を確認します。

4. 表示された一覧から、Wi-Fiアダプタ(例: Intel(R) Wi-Fi 6 AX201 160MHz)に対応するインターフェイス番号(例: 17)を控えます。
5. Raspberry Pi 5 (192.168.50.1) 宛ての通信を確実にWi-Fiアダプタ経由にするため、以下のルールを追加します。

※ IF 17 の部分は、ご自身の環境に合わせてインターフェイス番号を置き換えてください。

これにより、Windows PCはインターネット接続とローカルWi-Fiネットワーク接続を安定して併用できます。設定完了後、Windows PCを Raspberry Pi 5 (FieldAP) に接続し、Real VNCでRaspberry.PiのWi-FiのIPアドレスを指定して接続してください。


7. Samba(共有フォルダ)の設定

Samba(サンバ)は、Raspberry PiとWindowsパソコンのあいだで「ファイルのやりとり」ができるようにするためのソフトです。これを使えば、ネットワーク経由でファイルを簡単に共有できるようになります。

7.1 Sambaのインストール

まず、以下のコマンドで、sambaをインストールします。

7.2 設定ファイルのバックアップと編集

Sambaの設定ファイル /etc/samba/smb.conf を編集する前に、念のためバックアップを取っておきます。

7.3 ゲストアクセスの無効化

この設定は、認証に失敗したときに「ゲスト」としてアクセスを許可するかどうかを決めるものです。今回はセキュリティのため、コメントアウトし、無効にしておきます。

7.4 [homes]セクションの無効化

Sambaには [homes] というセクションがあり、ログインしたユーザー名と同じ名前の共有フォルダを自動で作成する機能があります。今回は不要なので、以下のようにすべての行をコメントアウトして無効にします。

7.5 共有フォルダの設定を追加

以下のコードは、Sambaの設定ファイルの一番下に追加してください。

この例では、ユーザー のホームディレクトリ内にある Public フォルダを、Windowsからアクセスできる共有フォルダとして設定しています。

  • path の部分には、共有したいフォルダのパスを指定します。ここでは /home/Public を使っていますが、必要に応じて変更しても構いません。
  • <username>の部分は、実際にRaspberry Piで使っているユーザー名に置き換えてください。
  • [PiShare] の部分は、Windowsから見えるフォルダ名になります。たとえば、Windowsのエクスプローラーで /raspberrypi/PiShare のように表示されます。好きな名前に変更してもOKです。

以下のを実行し、アクセス時のパスワードを設定します。

7.6 Sambaユーザーのパスワード設定

共有フォルダにアクセスするためのパスワードを設定します。以下のコマンドで、Samba用のユーザーを追加します。

※<username>の部分は、実際にRaspberry Piで使っているユーザー名に置き換えてください。

7.7 Sambaの再起動

設定後に、以下のコマンドで、sambaを再起動します。これで、Raspberry Pi側の設定は完了です。

Windowsパソコンから \192.168.xx.xx\PiShare にアクセスすれば、共有フォルダに接続できるようになります。


8. Raspberry Pi 5のファイヤウォールの設定

セキュリティのために、UFW (ファイヤウォール) をインストールをします。この設定により、有線LANからのVNC接続はできなくなり、ローカルWiFi経由のみVNC接続が可能になります。

ファイヤウォールを設定し、特定のポートのみアクセスを許可します。必要に応じて、許可するポートを変更する必要があります。

コマンドルールの意図
(From)
許可する「扉」(Port)システムでの役割
sudo ufw default deny incomingすべて拒否 (デフォルト)すべてのポートこれ以降、許可設定がない限り、外部からの通信をすべて遮断します。これがセキュリティの土台となります。
sudo ufw default allow outgoingすべて許可 (デフォルト)すべてのポートPi 5自身が開始する通信(例:アップデートのためのインターネットアクセス、OnStepへのINDIデータの送信など)は、外部へ自由に送信できるようにします。
sudo ufw allow from 192.168.50.0/24 to any port 22 proto tcp観測ネットワーク内 (192.168.50.x)SSH (22番)観測専用のAPに接続している機器(操作端末など)からのみ、Pi 5へのコマンドライン操作(メンテナンス)を許可します。
sudo ufw allow from 192.168.50.0/24 to any port 5900 proto tcp観測ネットワーク内 (192.168.50.x)VNC (5900番)観測専用のAPに接続している機器からのみ、Pi 5のデスクトップ画面の遠隔操作(KStars/Ekosの操作)を許可します。
sudo ufw allow from 192.168.50.0/24 to any app Samba観測ネットワーク内 (192.168.50.x)Samba観測専用のAPに接続している機器からのみ、Sambaのアクセスを許可します。
コマンド意味
sudo ufw enableufwの有効
sudo ufw disableufwの無効化
sudo ufw statusufwのステータスの表示

9. Smart Web Server

Onstepを、Raspberry PiのAPにクライアントとして自動的に接続するように、ソースコードの変更を行います。OnStepのSWS(Wemos)のソースファイルを変更し、書き込みます。この変更により、OnstepはRPi 5のアクセスポイントに自動的に接続するようになります。

📄ExtentedConfig.h

10. INDI / Kstarsのインストール

INID Kstar / Ekos のインストールは、こちらで公開されているバッチファイルを使用するのが容易です。以下のシェルスクリプトを実行します。

※インストールには、1時間程度必要です。

git clone https://gitea.nouspiro.space/nou/astro-soft-build.git

フォルダを移動し、シェルスクリプト(install-dependencies.sh)を実行し、依存ファイルをインストールします。

安定版と、最新版の二つをビルドすることができますが、安定版のシェルスクリプト(build-soft-stable.sh)を実行します。

これで、画面左上のラズベリーアイコン→Education→Kstarsで、Kstarsが起動できるようになります。


10. Windows PCのWiFiへの自動接続(オプション)

Windowsでは、イーサネット接続が有効な場合、起動時に自動的にWi-Fiへ接続されないことがあります。そこで、バッチファイルとタスクスケジューラを利用し、起動時に自動的にWi-Fiへ接続する方法を紹介します。

10.1 バッチファイルの作成

メモ帳を開き、以下の内容をコピー&ペーストします。ファイルを「ConnectWiFi.bat」などの名前にして保存します。保存時に「ファイルの種類」を すべてのファイル に変更し、拡張子が .bat になるようにしてください

10.2 タスクスケジューラの設定

PC起動時にバッチファイルを自動実行するには、タスクスケジューラを利用するのが確実です。スタートアップフォルダに入れる方法よりも安定し、管理者権限や遅延(例: 30秒)を設定できます。

1. Windowsの検索窓に「コマンドプロンプト」または「PowerShell」と入力し、実行します
2. 以下のコマンドを実行し、タスクスケジューラを起動します。

3. タスクの作成

右側メニューの「タスクの作成…」をクリックします。

 📌 全般タブの設定
  名前:Auto_WiFi_Connect など、任意の名前を入力します。

  セキュリティオプション:
   「ユーザーがログオンしているときのみ実行する」を選択します。
   「最上位の特権で実行する」にチェックを入れます。

 📌 トリガータブの設定
  「新規…」ボタンをクリックします。
  タスクの開始:プルダウンから「ログオン時」を選択します。
  遅延時間を指定する:30秒間を選択します。
  (これはバッチファイル内の timeout /t 30 と重複しますが、念のため設定します。)

 📌 操作タブの設定
  「新規…」ボタンをクリックします。
  操作:「プログラムの開始」を選択します。

  プログラム/スクリプト:9.1で作成した「ConnectWiFi.bat」の完全なパス
  (例: C:\Users\YourName\Documents\ConnectWiFi.bat)を入力します。

 📌 条件タブの設定
  コンピュータをAC電源に使用している場合のみタスクを開始するのチェックを外します。

「OK」をクリックしてタスクを保存します。

✅PC起動から約30秒後に、Wi-Fi接続コマンドが実行されます。これにより、有線LAN接続が有効な状態でもWi-Fiが自動的に有効化され、指定したSSIDへ接続されます。


トップに戻る