.. _picrawler_skill: .. start_using_picrawler 21. PiCrawler mit OpenClaw steuern ==================================== **Was ist OpenClaw?** Stellen Sie es sich als eine erweiterte Version von ChatGPT vor. Während traditionelle Chatbots nur sprechen können (Text generieren), kann OpenClaw handeln. Es versteht Ihre Anweisungen in natürlicher Sprache und kann tatsächlich Operationen auf Ihrem Computer ausführen, wie Befehle ausführen, Dateien verwalten und verschiedene Werkzeuge aufrufen. Hier sind einige fantastische Anwendungsszenarien: * **Persönlicher Allround-Assistent:** Lassen Sie es Ihren Zeitplan verwalten, Erinnerungen einrichten und Aufgaben verfolgen. Sie müssen es nur in einer Chat-App (wie Telegram, WhatsApp) mitteilen, und es wird sich erinnern und ausführen. * **Automatisierungs-„Kleber":** Es kann als Bindeglied für Ihre verschiedenen Dienste fungieren. Sie können es beispielsweise eine Website auf Preisänderungen überwachen lassen. Sobald ein Preisnachlass erkannt wird, kann es automatisch einen n8n-Automatisierungsworkflow auslösen, um Ihnen eine E-Mail-Benachrichtigung zu senden. * **Dedizierter Entwicklungsassistent:** Lassen Sie es Server verwalten, Skripte ausführen und Protokolle überprüfen. Sie können einfach sagen: „Überprüfe die Systemauslastung für mich", und es kann sich per SSH in Ihren Server einwählen, den Befehl ausführen und die Ergebnisse zurückgeben. * **Hardware-„Spielkamerad":** Dies ist ein sehr interessanter Anwendungsfall. Sie können OpenClaw Hardware steuern lassen, die an einen Raspberry Pi angeschlossen ist. Ein Entwickler hat es beispielsweise verwendet, um einen Roboterstaubsauger mit einem mechanischen Arm zu steuern, oder es sogar Rennsimulatordaten analysieren und auf einem LED-Bildschirm anzeigen lassen. Das offizielle Raspberry Pi-Team hat es sogar verwendet, um eine automatische Fotokabine für eine Hochzeit zu bauen — nur durch Konversation, ohne eine einzige Codezeile zu schreiben! .. important:: Der Raspberry Pi Zero 2W hat nur 512 MB RAM, während OpenClaw mindestens 1 GB benötigt. Daher kann es nicht ordnungsgemäß ausgeführt werden. Ein Raspberry Pi 4/5 oder höher wird empfohlen. OpenClaw Schnellstart ------------------------------ Wenn Sie die Leistungsfähigkeit von OpenClaw so schnell wie möglich erleben möchten, verwenden Sie diese Methode. Sie installiert automatisch OpenClaw und startet einen interaktiven Einrichtungsassistenten. 1. Öffnen Sie das Terminal auf Ihrem Raspberry Pi und führen Sie den folgenden Befehl direkt aus. Dieser Befehl lädt das Installationsskript von der offiziellen Website herunter und führt es aus: .. code-block:: bash curl -fsSL https://openclaw.ai/install.sh | bash .. note:: Da neue Versionen schnell aktualisiert werden, ist es normal, wenn Ihre Installationsschritte leicht abweichen. 2. Das Skript lädt OpenClaw automatisch herunter und installiert es. .. image:: /img/openclaw/install_open_claw.png 3. Sie sehen dann eine Sicherheitsabfrage, ob Sie OpenClaw vertrauen. Sobald Sie sicher sind, dass es sicher und zuverlässig ist, navigieren Sie mit den Pfeiltasten zu „Yes" und drücken Sie Enter. .. image:: /img/openclaw/security_open_claw.png 4. Wählen Sie Quick Start und drücken Sie dann Enter. .. image:: /img/openclaw/quickstart_open_claw.png 5. Wählen Sie Ihr Modell und drücken Sie dann Enter. Hier verwenden wir OpenAI als Beispiel. .. image:: /img/openclaw/model_provider_open_claw.png 6. Wählen Sie OpenAI API Key. .. image:: /img/openclaw/api_key_open_claw.png 7. Fügen Sie nun den API-Schlüssel ein. .. image:: /img/openclaw/paste_api_key_open_claw.png .. |link_openai_platform| raw:: html OpenAI Platform 8. Gehen Sie zu |link_openai_platform| und melden Sie sich an. Klicken Sie auf der Seite **API keys** auf **Create new secret key**. .. image:: /img/openclaw/llm_openai_create.png 9. Füllen Sie die Details aus (Owner, Name, Project und Berechtigungen falls erforderlich) und klicken Sie dann auf **Create secret key**. .. image:: /img/openclaw/llm_openai_create_confirm.png 10. Kopieren Sie den Schlüssel sofort nach der Erstellung — Sie können ihn später nicht mehr einsehen. Wenn Sie ihn verlieren, müssen Sie einen neuen erstellen. .. image:: /img/openclaw/llm_openai_copy.png 11. Fügen Sie den Schlüssel in die OpenClaw-Konfiguration ein. .. image:: /img/openclaw/paste_api_key_enter_open_claw.png 12. Wählen Sie das Modell, das Sie verwenden möchten. In diesem Beispiel verwenden wir **Keep current**. .. image:: /img/openclaw/model_config_open_claw.png 13. Als nächstes folgt die Kanalauswahl. Kanäle beziehen sich auf die von OpenClaw unterstützten Kommunikationsdienste wie Telegram, WhatsApp, Discord und mehr. Verwenden Sie die Pfeiltaste nach unten, um die Option „Skip for now" auszuwählen, und drücken Sie dann Enter. .. image:: /img/openclaw/channel_open_claw.png 14. Als nächstes werden Sie aufgefordert, Skills sofort zu konfigurieren. Wählen Sie „Yes" und drücken Sie Enter. .. image:: /img/openclaw/config_skill_open_claw.png 15. Installieren Sie die benötigten Skills. Im folgenden Beispiel wählen wir die Option „Skip for now" (drücken Sie die Leertaste zum Auswählen) und drücken dann Enter. .. image:: /img/openclaw/install_skill_open_claw.png 16. Als nächstes folgen Hooks; wir werden „command-logger" und „session-memory" auswählen. .. image:: /img/openclaw/hooks2_open_claw.png 17. Die Installation ist nun abgeschlossen. Sie können OpenClaw starten, indem Sie „Hatch in TUI" auswählen und Enter drücken. .. image:: /img/openclaw/hatch_open_claw.png .. note:: Sie können OpenClaw starten, indem Sie den folgenden Befehl eingeben: .. code-block:: bash openclaw tui Und Sie können Strg+C zweimal drücken, um die TUI-Oberfläche zu verlassen. ------------------------------------------------------------------------ OpenClaw den PiCrawler bedienen lassen ---------------------------------------------- **Was ist PiCrawler Skill?** PiCrawler Skill ist eine Erweiterung für OpenClaw, mit der Sie Ihren SunFounder PiCrawler-Roboterspider durch natürliche Sprache steuern können. Anstatt Python-Skripte zu schreiben oder sich Koordinatenwerte zu merken, können Sie OpenClaw einfach sagen, was PiCrawler tun soll — wie „steh auf", „geh drei Schritte vorwärts" oder „prüfe, ob ein Hindernis vor mir ist" — und OpenClaw führt automatisch den entsprechenden Python-Code aus. Hier sind einige Dinge, die Sie mit PiCrawler Skill tun können: * **Grundbewegungen:** Vorwärts, rückwärts gehen, links/rechts drehen, Kleinstwinkel-Drehungen * **Posen:** Aufstehen, hinsetzen * **Ausdrucksstarke Aktionen:** Vorderbein winken, tanzen, Liegestütze machen, in verschiedene Richtungen schauen * **Sensoren:** Ultraschall-Abstandssensor auslesen, um Hindernisse zu erkennen * **Sound:** Soundeffekte und Musik über den Lautsprecher des Roboters abspielen * **Kamera & Bildverarbeitung:** Fotos aufnehmen, Gesichter erkennen, Farben verfolgen, QR-Codes und Gesten erkennen ---------------------------------------------------------------- Voraussetzungen ------------------------------ Bevor Sie PiCrawler Skill mit OpenClaw verwenden können, stellen Sie sicher, dass Sie Folgendes haben: 1. **PiCrawler** ordnungsgemäß montiert und mit Ihrem Raspberry Pi verbunden 2. **OpenClaw** installiert und ausgeführt 3. Die folgenden Python-Bibliotheken installiert: - ``picrawler`` - ``robot_hat`` - ``vilib`` Sie können die Installation überprüfen, indem Sie Folgendes ausführen: .. code-block:: bash python3 -c "import picrawler" Wenn dieser Befehl ohne Fehler ausgeführt wird, sind Sie bereit fortzufahren. ---------------------------------------------------------------- PiCrawler Skill installieren ------------------------------ Befolgen Sie diese Schritte, um den PiCrawler Skill für OpenClaw zu installieren: 1. **Kopieren Sie die PiCrawler-Skill-Dateien** in das OpenClaw-Skills-Verzeichnis: .. code-block:: bash cp -r ~/picrawler/picrawler-control ~/.openclaw/workspace/skills/ 2. **Überprüfen Sie die Installation**, indem Sie die Skill-Dateien prüfen: .. code-block:: bash ls ~/.openclaw/workspace/skills/picrawler-control/ Sie sollten ``SKILL.md``, ``install.sh``, ``scripts/`` und ``references/`` in der Ausgabe sehen. Die ``SKILL.md``-Datei des Skills enthält alle Anweisungen, die OpenClaw benötigt — Sicherheitsregeln, Codevorlagen für jede Fähigkeit und eine Zuordnung von Anfragen in natürlicher Sprache zu Python-Code. OpenClaw liest diese Datei und verwendet sie, um zu entscheiden, welcher Code auf Ihrem PiCrawler ausgeführt werden soll. ---------------------------------------------------------------- PiCrawler Skill über die CLI testen ---------------------------------------------- Bevor Sie den Skill mit OpenClaw verwenden, möchten Sie möglicherweise die Grundfunktionen direkt vom Terminal aus mit dem enthaltenen CLI-Tool testen. **Ultraschall-Abstand prüfen:** .. code-block:: bash python3 ~/.openclaw/workspace/skills/picrawler-control/scripts/pc.py sensor distance **PiCrawler hinsetzen:** .. code-block:: bash python3 ~/.openclaw/workspace/skills/picrawler-control/scripts/pc.py pose sit --speed 40 **PiCrawler aufstehen:** .. code-block:: bash python3 ~/.openclaw/workspace/skills/picrawler-control/scripts/pc.py pose stand --speed 40 **Vorwärts gehen:** .. code-block:: bash python3 ~/.openclaw/workspace/skills/picrawler-control/scripts/pc.py move forward --steps 2 --speed 60 **Links drehen:** .. code-block:: bash python3 ~/.openclaw/workspace/skills/picrawler-control/scripts/pc.py move "turn left" --steps 1 --speed 60 **Soundeffekt abspielen:** .. code-block:: bash python3 ~/.openclaw/workspace/skills/picrawler-control/scripts/pc.py sound play /home/pi/picrawler/examples/sounds/talk1.wav --volume 80 **Servo-Kalibrierung ausführen:** .. code-block:: bash python3 ~/.openclaw/workspace/skills/picrawler-control/scripts/pc.py calibrate ---------------------------------------------------------------- PiCrawler Skill in OpenClaw verwenden ---------------------------------------------------- Sobald Sie überprüft haben, dass PiCrawler Skill über die Befehlszeile funktioniert, können Sie es in OpenClaw verwenden. 1. **OpenClaw TUI starten**: .. code-block:: bash openclaw tui 2. **Befehle in natürlicher Sprache senden**, um PiCrawler zu steuern. Hier sind einige Beispiele: * „Stand up" * „Sit down" * „Walk forward three steps" * „Turn left" * „Do a dance" * „Do some push-ups" * „Wave your front leg" * „Look to the left" * „Check if there's something ahead" * „Take a photo" * „Detect faces / look at me" * „Find the color red" 3. **OpenClaw übersetzt** Ihre Anfrage automatisch in den entsprechenden Python-Code und führt ihn auf PiCrawler aus. Bei Bewegungsbefehlen stellt der Skill immer sicher, dass der Roboter zuerst aufsteht und sich nach Abschluss der Aktion wieder hinsetzt. ---------------------------------------------------------------- Verfügbare Aktionen und Befehle ------------------------------------------- Hier ist die vollständige Liste der von PiCrawler Skill unterstützten Fähigkeiten: Bewegungen (``pc.py move``) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ .. list-table:: :widths: 30 70 :header-rows: 1 * - Aktion - Beschreibung * - ``forward`` - Vorwärts gehen * - ``backward`` - Rückwärts gehen * - ``turn left`` - Auf der Stelle nach links drehen * - ``turn right`` - Auf der Stelle nach rechts drehen * - ``turn left angle`` - Kleine Winkeldrehung nach links * - ``turn right angle`` - Kleine Winkeldrehung nach rechts Posen (``pc.py pose``) ^^^^^^^^^^^^^^^^^^^^^^^ .. list-table:: :widths: 30 70 :header-rows: 1 * - Pose - Beschreibung * - ``stand`` - Aus sitzender Position aufstehen * - ``sit`` - Aus stehender Position hinsetzen Zusätzliche Aktionen (über natürliche Sprache / exec) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ .. list-table:: :widths: 30 70 :header-rows: 1 * - Aktion - Beschreibung * - ``dance`` - Eine Tanzbewegung ausführen * - ``push_up`` - Liegestützbewegungen machen * - ``wave`` - Ein Vorderbein winken * - ``look_left`` - Körper nach links drehen * - ``look_right`` - Körper nach rechts drehen * - ``look_up`` - Körper nach oben neigen * - ``look_down`` - Körper nach unten neigen Sensoren ^^^^^^^^ .. list-table:: :widths: 30 70 :header-rows: 1 * - Befehl - Beschreibung * - ``sensor distance`` - Ultraschall-Abstandssensor auslesen (gibt cm zurück) Sound (``pc.py sound``) ^^^^^^^^^^^^^^^^^^^^^^^^ .. list-table:: :widths: 30 70 :header-rows: 1 * - Befehl - Beschreibung * - ``sound play `` - Eine Soundeffekt-Datei abspielen * - ``sound music `` - Hintergrundmusik abspielen * - ``sound volume <0-100>`` - Lautsprecherlautstärke einstellen * - ``sound stop`` - Wiedergabe stoppen Kamera & Bildverarbeitung (über natürliche Sprache / exec) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ .. list-table:: :widths: 30 70 :header-rows: 1 * - Fähigkeit - Beschreibung * - Foto aufnehmen - Foto aufnehmen und unter ``~/Pictures/`` speichern * - Gesichtserkennung - Menschliche Gesichter erkennen und Position melden * - Farberkennung - Objekte nach Farbe lokalisieren (rot, blau, grün usw.) * - Gestenerkennung - Stein/Schere/Papier-Gesten erkennen * - Verkehrszeichenerkennung - Stopp/Links/Rechts/Vorwärts-Zeichen erkennen * - QR-Code-Scanning - QR-Code-Daten und -Position auslesen ---------------------------------------------------------------- Fehlerbehebung ------------------------------ OpenClaw-Probleme ^^^^^^^^^^^^^^^^^^^^^^^^ F: Während der Installation erhalte ich den Fehler ``Error: systemctl is-enabled unavailable: Command failed: systemctl --user is-enabled openclaw-gateway.service``. Was soll ich tun? Sie können dies vorerst ignorieren, aber Sie könnten in den nächsten Schritten auf Probleme stoßen. Bitte beziehen Sie sich dann einzeln darauf. F: Wenn ich ``openclaw tui`` ausführe, erhalte ich den Fehler ``-bash: openclaw: command not found``. Was soll ich tun? Führen Sie den folgenden Befehl aus: .. code-block:: bash echo 'export PATH="$HOME/.npm-global/bin:$PATH"' >> ~/.bashrc source ~/.bashrc Sie sollten nun die TUI-Oberfläche mit ``openclaw tui`` starten können. F: In ``openclaw tui`` erhalte ich ``not connected to gateway — message not sent`` oder die Meldung ``gateway disconnected: closed``. Dies liegt daran, dass Ihr OpenClaw Gateway-Dienst nicht gestartet ist. Öffnen Sie ein weiteres Terminal und führen Sie den folgenden Befehl aus, um das OpenClaw Gateway zu starten: .. code-block:: bash openclaw gateway Starten Sie dann ``openclaw tui`` neu, und Sie können es direkt verwenden. F: Ich möchte den OpenClaw Gateway-Dienst im Hintergrund laufen lassen / automatisch beim Booten starten. Wie mache ich das? Normalerweise sollte Ihr OpenClaw Gateway-Dienst automatisch beim Booten starten. Falls nicht, können Sie ihn mit dem folgenden Befehl manuell starten. 1. Erstellen Sie das Verzeichnis ``~/.config/systemd/user``: .. code-block:: bash mkdir -p ~/.config/systemd/user 2. Erstellen Sie die Datei ``openclaw-gateway.service``: .. code-block:: bash cat > ~/.config/systemd/user/openclaw-gateway.service << EOF [Unit] Description=OpenClaw Gateway After=network.target [Service] Type=simple ExecStart=$HOME/.npm-global/bin/openclaw gateway run Restart=on-failure RestartSec=10 Environment="PATH=$HOME/.npm-global/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin" Environment="NODE_ENV=production" [Install] WantedBy=default.target EOF 3. Laden Sie dann die systemd-Konfiguration neu: .. code-block:: bash systemctl --user daemon-reload 4. Starten Sie den Dienst: .. code-block:: bash systemctl --user start openclaw-gateway Zu diesem Zeitpunkt können Sie ``openclaw tui`` neu starten und direkt verwenden. 5. Aktivieren Sie den automatischen Start beim Booten: .. code-block:: bash systemctl --user enable openclaw-gateway F: Mein OpenClaw kann das System nicht bedienen, was soll ich tun? Ein neu installiertes OpenClaw hat standardmäßig möglicherweise keine Berechtigung, Ihr Raspberry Pi-System zu bedienen; es kann nur chatten. Wir müssen die Berechtigungen manuell konfigurieren. 1. Öffnen Sie die OpenClaw-Konfigurationsdatei: .. code-block:: bash nano ~/.openclaw/openclaw.json 2. Suchen Sie die Option ``tools`` und ändern Sie ``profile`` und ``exec`` wie gezeigt. .. code-block:: json "tools": { "profile": "coding", "exec": { "secrity": "full" } }, 3. Speichern und beenden. 4. Geben Sie den folgenden Befehl im Terminal ein, um das OpenClaw Gateway neu zu starten: .. code-block:: bash openclaw gateway restart Jetzt sollte OpenClaw Lese- und Schreibberechtigungen haben und Ihr Raspberry Pi-System bedienen können. PiCrawler-Probleme ^^^^^^^^^^^^^^^^^^^^^^^^ F: PiCrawler reagiert nicht auf Befehle. Was soll ich tun? Überprüfen Sie zuerst, ob PiCrawler ordnungsgemäß verbunden und eingeschaltet ist. Testen Sie dann die Grundfunktionen: .. code-block:: bash python3 ~/.openclaw/workspace/skills/picrawler-control/scripts/pc.py pose sit --speed 40 Wenn dies fehlschlägt, stellen Sie sicher, dass die erforderlichen Python-Bibliotheken installiert sind: .. code-block:: bash python3 -c "import picrawler; import robot_hat; import vilib" F: Der Test ``import picrawler`` schlägt fehl. Dies bedeutet, dass die PiCrawler-Python-Bibliothek nicht ordnungsgemäß installiert ist. Bitte lesen Sie die offizielle PiCrawler-Installationsanleitung, um die erforderlichen Bibliotheken zu installieren. Sie können auch das enthaltene Installationsskript ausführen: .. code-block:: bash bash ~/.openclaw/workspace/skills/picrawler-control/install.sh F: OpenClaw erkennt den PiCrawler Skill nicht. Erinnern Sie OpenClaw daran, die Skills zu synchronisieren, indem Sie in der TUI sagen: *„Please rsync my skills"* oder starten Sie das OpenClaw Gateway neu: .. code-block:: bash openclaw gateway restart F: PiCrawler-Bewegungen scheinen instabil oder ruckartig zu sein. Dies wird normalerweise durch das Ausführen von Aktionen mit zu hoher Geschwindigkeit verursacht oder ohne der vorherigen Aktion Zeit zum Abschließen zu geben. Der Skill erzwingt Sicherheitsregeln (aufstehen vor der Bewegung, hinsetzen nach der Bewegung) und empfiehlt Geschwindigkeitsbereiche. Versuchen Sie, den Geschwindigkeitsparameter zu reduzieren (z. B. ``--speed 40``) oder fügen Sie kurze Pausen zwischen aufeinanderfolgenden Befehlen hinzu. ---------------------------------------------------------------- .. end_using_picrawler