RaspberryPi4で運用していたGPSシステムを古いノートPC試してみます。

Raspiでは電源の問題や、SSHでターミナルコマンドを送信するなど手間の問題があります。

古いノートPCにLinuxをインストールし サーバー&デスクトップ環境でGPS軌跡リアルタイムシステムを作ってみました。

ノートPCはCore i 5 第4世代、メモリは4G、SSDは128GB 液晶タッチパネル搭載

Linuxは Ubuntu系の Linux Mintをインストールしました。

OSのインストール:

Linux Mintのイメージファイルをダウンロードし、USBメモリに作成してPCにインストールします。

ログインすると、Windowsライクなデスクトップ(Cinamon)で 予想以上に快適に使用できます。

WiFiの設定を行いアプリ(パッケージ管理)をアップデート&インストールを行います。

サーバーのインストール: Apache2

sudo apt install -y apache2

1. `pip3 install -r requirements.txt` (Pythonパッケージのインストール)

※ WARNING: Running pip as the ‘root’ user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv

と警告がでます。この警告は無視してもインストールは続行されます。ただし、システムのPythonパッケージとの競合に注意してください。

現状維持(注意が必要)

既にrootでインストール済みの場合:

# インストール済みパッケージを確認

pip3 list

# システムパッケージとの競合をチェック

dpkg -l | grep python3

注意点:

  • システムアップデート時に問題が発生する可能性
  • 他のPythonアプリに影響する可能性
現在の状況確認

# インストール済みパッケージを確認

pip3 list | grep -E “(flask|websockets|gpsd)”

# システムパッケージとの重複を確認    dpkg -l | grep -E “python3-(flask|websockets)”

  • 警告を無視してもインストールは続行される
  • システムパッケージとの競合リスクあり
  • 可能であれば仮想環境の使用を推奨
  • 既にインストール済みなら、動作確認を優先

現在のインストールで問題が発生していなければ、そのまま使用しても問題ありません。問題が発生した場合は、仮想環境への移行を検討してください。

2. `python3 gps_tracker_v2.py` (サーバーの起動)

3. ブラウザで `http://localhost:5000` にアクセス

GPSDのインストール

GPSDと関連ツールをインストール

sudo apt install -y gpsd gpsd-clients python3-gps

# インストールされたバージョンを確認

gpsd –version

“`

#### 1.2 GPSデバイスの確認

“`bash

# USB接続のGPSデバイスを確認

ls -l /dev/ttyUSB*

動作確認ができたら、GPSDを自動起動するように設定します:

“`bash

# GPSDサービスを有効化

sudo systemctl enable gpsd

# GPSDサービスを起動

sudo systemctl start gpsd

# GPSDサービスのステータスを確認

sudo systemctl status gpsd

PCを持って(iphoneデザリングまたは モバイルWiFiを用意)ログを取りに行ってみましょう。

地図表示に遅延(約1分)がありました。 gps_worker()で取得したデータがWebSocketに即時送信されていないことです。gps_worker()で取得したデータをWebSocketクライアントにリアルタイムでブロードキャストするように修正します。 そして GPSDソケットを非ブロッキングにし、データ取得の応答性を改善します。

データ取得間隔を50msに短縮(GPS 10Hz対応)

ヘッダーを小さく、また コントローラーをアイコン化してみました。

また、OpenStreet Mapに対応し GoogleMap と切り替えが可能。 MAP API キーがなくても表示できます。

次回 リアルタイム表示が改善されているか 確認したいと思います。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です