mcpField
R
raspberry-pi

raspberry-pi

github.com/alphaonedevクラウド・DevOps98 回インストール
リポジトリ

raspberry-pi について

AI エージェントが SSH 経由で Raspberry Pi を管理するスキルです。IoT、ハードウェア試作、エッジコンピューティング向けに、GPIO 操作やソフトウェア管理、システム監視を扱います。

主な機能

  1. 01SSH によるコマンド実行
  2. 02GPIO の設定と制御
  3. 03apt によるソフトウェアの導入と更新
  4. 04システムリソースとログの監視
  5. 05Python によるハードウェア自動化

活用シーン

  1. 01スマートホームのセンサーやアクチュエーターの設定
  2. 02軽量な IoT 監視サーバーの稼働
  3. 03Raspberry Pi での組み込みアプリのテスト

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/alphaonedev/openclaw-graph --skill raspberry-pi

インストール後、Claude Code で/raspberry-piを入力して読み込まれたか確認します。

詳細

raspberry-pi

目的

このスキルを使用すると、AI が Raspberry Pi デバイスと連携し、リモート管理、ハードウェアのプロトタイピング、エッジコンピューティングの運用などの IoT タスクを実行できます。

使用する場面

スマートホームへのセンサーの設置、データ処理用の軽量サーバーの稼働、小型の Linux ボードでの組み込みアプリケーションのテストなど、ハードウェアのセットアップを伴うシナリオでこのスキルを使用します。

主な機能

  • SSH 接続を確立し、Raspberry Pi 上でコマンドを実行します。
  • GPIO ピンなどのハードウェア設定を構成し、物理的な操作を行います。
  • apt を使用してソフトウェアのインストールや更新を管理します。
  • エッジコンピューティングのタスクに必要なシステムリソースやログを監視します。
  • 自動化のために、ピン制御用の RPi.GPIO などの Python ライブラリと連携します。

使用パターン

タスクを実行するには、まず $RASPI_HOST や $RASPI_SSH_KEY などの環境変数を使用して SSH 認証を行います。次に、コマンドを直接実行するか、スクリプトを呼び出します。繰り返し行うタスクでは、コマンドを Python 関数にまとめます。処理を進める前に、必ずデバイスの接続状態を確認してください。GPIO を使用する場合は、関連するライブラリをインポートし、ピンモードを明示的に設定します。

主なコマンド/API

  • SSH で接続:ssh pi@$RASPI_HOST -i $RASPI_SSH_KEY
  • 設定ツールにアクセス:sudo raspi-config(ストレージには、--expand-rootfs フラグを指定して「Boot Options」などのオプションを使用します)
  • Python で GPIO ピンを制御:
    import RPi.GPIO as GPIO
    GPIO.setmode(GPIO.BCM)
    GPIO.setup(17, GPIO.OUT)
    GPIO.output(17, GPIO.HIGH)
    
  • パッケージを更新してインストール:sudo apt update && sudo apt install -y package-name(例:ウェブサーバー用の apache2)
  • システムの状態を確認:CPU 温度を取得するには vcgencmd measure_temp、リソースの使用状況を確認するには top を使用します。
  • /boot/config.txt の設定形式:dtparam=i2c_arm=on のような行を追加して I2C を有効にし、その後再起動します。

統合に関する注意事項

他のシステムと統合する場合は、たとえば export RASPI_HOST=raspberrypi.local や export RASPI_SSH_KEY=/path/to/private.key のように、認証用の変数を環境に設定します。API のような操作には、スクリプト内で SSH ラッパーを使用します。ネットワークとの互換性を確認してください。ファイアウォールの内側にある場合は、SSH 用に 22 などのポートを転送します。IoT エコシステムでは、mosquitto をインストールし、/etc/mosquitto/mosquitto.conf に listener 1883 のような行を設定して、MQTT ブローカーと連携します。

エラー処理

SSH 接続に失敗した場合は、ping $RASPI_HOST で接続を確認し、キーの権限を確認します(例:chmod 600 $RASPI_SSH_KEY)。GPIO エラーが発生した場合は、pip install RPi.GPIO で RPi.GPIO がインストールされていることを確認し、コード内で GPIO.error などの例外を処理します:

try:
    GPIO.setup(17, GPIO.OUT)
except RuntimeError as e:
    print("Error: " + str(e) + " - Check user permissions")

apt の問題を解決するには、apt --fix-broken install を使用して依存関係を修復します。echo "$(date): Error message" >> error.log のように、必ずタイムスタンプ付きでエラーを記録してください。

使用例

  1. GPIO ピン 17 に LED を接続して点滅させる:まず ssh pi@$RASPI_HOST -i $RASPI_SSH_KEY で SSH 接続し、次に nano blink.py でスクリプトファイルを作成して、以下を追加します:

    import RPi.GPIO as GPIO
    import time
    GPIO.setmode(GPIO.BCM)
    GPIO.setup(17, GPIO.OUT)
    for _ in range(5):
        GPIO.output(17, True)
        time.sleep(1)
        GPIO.output(17, False)
        time.sleep(1)
    

    python blink.py を実行して、LED を点滅させます。

  2. IoT 監視用の基本的なウェブサーバーをデプロイする:デバイスに SSH 接続し、sudo apt update でパッケージを更新してから、sudo apt install -y apache2 で Apache をインストールします。次に、/var/www/html/index.html のデフォルトページを編集し、<h1>IoT Status: OK</h1> のようなコンテンツを追加します。ブラウザーで http://$RASPI_HOST にアクセスし、tail -f /var/log/apache2/access.log でログを監視します。

グラフの関係性

  • 関連するクラスター:iot
  • 関連するスキル:sensors(GPIO 連携用)、actuators(ハードウェア制御用)、edge-computing(リソース監視用)

コメント