21. Contrôler PiCrawler avec OpenClaw

Qu’est-ce qu’OpenClaw ?

Considérez-le comme une version améliorée de ChatGPT. Alors que les chatbots traditionnels ne peuvent que parler (générer du texte), OpenClaw peut agir. Il comprend vos instructions en langage naturel et peut effectuer des opérations sur votre ordinateur, comme exécuter des commandes, gérer des fichiers et appeler divers outils.

Voici quelques scénarios d’application fantastiques :

  • Assistant personnel tout-en-un : Laissez-le gérer votre agenda, définir des rappels et suivre vos tâches. Il vous suffit de le lui dire dans une application de chat (comme Telegram, WhatsApp), et il s’en souviendra et exécutera.

  • « Colle » d’automatisation : Il peut servir de liant pour vos différents services. Par exemple, vous pouvez lui faire surveiller un site web pour détecter des changements de prix. Dès qu’une baisse de prix est détectée, il peut automatiquement déclencher un workflow d’automatisation n8n pour vous envoyer une notification par e-mail.

  • Assistant de développement dédié : Faites-lui gérer des serveurs, exécuter des scripts et vérifier les journaux. Vous pouvez simplement dire : « Vérifie la charge système pour moi », et il peut se connecter en SSH à votre serveur, exécuter la commande et renvoyer les résultats.

  • « Compagnon de jeu » matériel : C’est un cas d’utilisation très intéressant. Vous pouvez faire contrôler par OpenClaw du matériel connecté à un Raspberry Pi. Par exemple, un développeur l’a utilisé pour contrôler un aspirateur robot avec un bras mécanique, ou même pour analyser des données de simulateur de course et les afficher sur un écran LED. L’équipe officielle de Raspberry Pi l’a même utilisé pour construire un photomaton automatique pour un mariage, simplement par conversation, sans écrire une seule ligne de code !

Important

Le Raspberry Pi Zero 2W ne dispose que de 512 Mo de RAM, tandis qu’OpenClaw nécessite un minimum de 1 Go. Par conséquent, il ne peut pas fonctionner correctement. Un Raspberry Pi 4/5 ou supérieur est recommandé.

Démarrage rapide d’OpenClaw

Si vous souhaitez découvrir la puissance d’OpenClaw le plus rapidement possible, utilisez cette méthode. Elle installera automatiquement OpenClaw et lancera un assistant de configuration interactif.

  1. Ouvrez le terminal sur votre Raspberry Pi et exécutez directement la commande suivante. Cette commande télécharge le script d’installation depuis le site officiel et l’exécute :

    curl -fsSL https://openclaw.ai/install.sh | bash
    

    Note

    Comme les nouvelles versions sont mises à jour rapidement, il est normal que vos étapes d’installation diffèrent légèrement.

  2. Le script téléchargera et installera automatiquement OpenClaw.

    _images/install_open_claw.png
  3. Vous verrez ensuite une invite de sécurité vous demandant si vous faites confiance à OpenClaw. Une fois que vous êtes sûr qu’il est sûr et fiable, utilisez les touches fléchées pour naviguer vers « Yes » et appuyez sur Entrée.

    _images/security_open_claw.png
  4. Sélectionnez Quick Start, puis appuyez sur Entrée.

    _images/quickstart_open_claw.png
  5. Sélectionnez votre modèle, puis appuyez sur Entrée. Nous utilisons ici OpenAI comme exemple.

    _images/model_provider_open_claw.png
  6. Sélectionnez OpenAI API Key.

    _images/api_key_open_claw.png
  7. Collez maintenant la clé API.

    _images/paste_api_key_open_claw.png
  1. Allez sur Plateforme OpenAI et connectez-vous. Sur la page API keys, cliquez sur Create new secret key.

    _images/llm_openai_create1.png
  2. Remplissez les détails (Owner, Name, Project et permissions si nécessaire), puis cliquez sur Create secret key.

    _images/llm_openai_create_confirm1.png
  3. Une fois la clé créée, copiez-la immédiatement — vous ne pourrez plus la revoir. Si vous la perdez, vous devrez en générer une nouvelle.

    _images/llm_openai_copy1.png
  4. Collez la clé dans la configuration OpenClaw.

    _images/paste_api_key_enter_open_claw.png
  5. Sélectionnez le modèle que vous souhaitez utiliser. Dans cet exemple, nous utiliserons Keep current.

    _images/model_config_open_claw.png
  6. Ensuite vient la sélection des canaux. Les canaux font référence aux services de communication pris en charge par OpenClaw, tels que Telegram, WhatsApp, Discord et plus encore. Utilisez la flèche vers le bas pour sélectionner l’option « Skip for now », puis appuyez sur Entrée.

    _images/channel_open_claw.png
  7. Ensuite, vous serez invité à configurer les skills immédiatement. Sélectionnez « Yes » et appuyez sur Entrée.

    _images/config_skill_open_claw.png
  8. Installez les skills dont vous avez besoin. Dans l’exemple suivant, nous sélectionnons l’option « Skip for now » (appuyez sur la barre d’espace pour sélectionner), puis appuyez sur Entrée.

    _images/install_skill_open_claw.png
  9. Ensuite viennent les Hooks ; nous sélectionnerons « command-logger » et « session-memory ».

    _images/hooks2_open_claw.png
  10. L’installation est maintenant terminée. Vous pouvez démarrer OpenClaw en sélectionnant « Hatch in TUI » et en appuyant sur Entrée.

_images/hatch_open_claw.png

Note

Vous pouvez démarrer OpenClaw en entrant la commande suivante :

openclaw tui

Et vous pouvez appuyer deux fois sur Ctrl+C pour quitter l’interface TUI.


Faire fonctionner PiCrawler avec OpenClaw

Qu’est-ce que PiCrawler Skill ?

PiCrawler Skill est une extension pour OpenClaw qui vous permet de contrôler votre robot araignée SunFounder PiCrawler en langage naturel. Au lieu d’écrire des scripts Python ou de mémoriser des valeurs de coordonnées, vous pouvez simplement dire à OpenClaw ce que vous voulez que PiCrawler fasse — comme « lève-toi », « avance de trois pas » ou « vérifie s’il y a un obstacle devant » — et OpenClaw exécutera automatiquement le code Python approprié.

Voici quelques choses que vous pouvez faire avec PiCrawler Skill :

  • Mouvements de base : Avancer, reculer, tourner à gauche/droite, virages à petit angle

  • Postures : Se lever, s’asseoir

  • Actions expressives : Saluer de la patte avant, danser, faire des pompes, regarder dans différentes directions

  • Capteurs : Lire le capteur de distance à ultrasons pour détecter les obstacles

  • Son : Jouer des effets sonores et de la musique via le haut-parleur du robot

  • Vision par caméra : Prendre des photos, détecter des visages, suivre des couleurs, reconnaître des codes QR et des gestes


Prérequis

Avant de pouvoir utiliser PiCrawler Skill avec OpenClaw, assurez-vous d’avoir :

  1. PiCrawler correctement assemblé et connecté à votre Raspberry Pi

  2. OpenClaw installé et en cours d’exécution

  3. Les bibliothèques Python suivantes installées :

    • picrawler

    • robot_hat

    • vilib

Vous pouvez vérifier l’installation en exécutant :

python3 -c "import picrawler"

Si cette commande s’exécute sans erreur, vous êtes prêt à continuer.


Installer PiCrawler Skill

Suivez ces étapes pour installer le PiCrawler Skill pour OpenClaw :

  1. Copiez les fichiers du skill PiCrawler dans le répertoire des skills d’OpenClaw :

    cp -r ~/picrawler/picrawler-control ~/.openclaw/workspace/skills/
    
  2. Vérifiez l’installation en consultant les fichiers du skill :

    ls ~/.openclaw/workspace/skills/picrawler-control/
    

    Vous devriez voir SKILL.md, install.sh, scripts/ et references/ dans la sortie.

Le fichier SKILL.md du skill contient toutes les instructions dont OpenClaw a besoin — règles de sécurité, modèles de code pour chaque capacité et un mappage des requêtes en langage naturel vers le code Python. OpenClaw lit ce fichier et l’utilise pour décider quel code exécuter sur votre PiCrawler.


Tester PiCrawler Skill depuis la CLI

Avant d’utiliser le skill avec OpenClaw, vous pouvez tester les fonctionnalités de base directement depuis le terminal à l’aide de l’outil CLI inclus.

Vérifier la distance ultrasonique :

python3 ~/.openclaw/workspace/skills/picrawler-control/scripts/pc.py sensor distance

Faire asseoir PiCrawler :

python3 ~/.openclaw/workspace/skills/picrawler-control/scripts/pc.py pose sit --speed 40

Faire lever PiCrawler :

python3 ~/.openclaw/workspace/skills/picrawler-control/scripts/pc.py pose stand --speed 40

Avancer :

python3 ~/.openclaw/workspace/skills/picrawler-control/scripts/pc.py move forward --steps 2 --speed 60

Tourner à gauche :

python3 ~/.openclaw/workspace/skills/picrawler-control/scripts/pc.py move "turn left" --steps 1 --speed 60

Jouer un effet sonore :

python3 ~/.openclaw/workspace/skills/picrawler-control/scripts/pc.py sound play /home/pi/picrawler/examples/sounds/talk1.wav --volume 80

Lancer la calibration des servos :

python3 ~/.openclaw/workspace/skills/picrawler-control/scripts/pc.py calibrate

Utiliser PiCrawler Skill dans OpenClaw

Une fois que vous avez vérifié que PiCrawler Skill fonctionne depuis la ligne de commande, vous pouvez commencer à l’utiliser dans OpenClaw.

  1. Lancer OpenClaw TUI :

    openclaw tui
    
  2. Envoyez des commandes en langage naturel pour contrôler PiCrawler. Voici quelques exemples :

    • « 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 traduira automatiquement votre demande en code Python approprié et l’exécutera sur PiCrawler. Pour les commandes de mouvement, le skill s’assure toujours que le robot se lève d’abord et s’assoit après avoir terminé l’action.


Actions et commandes disponibles

Voici la liste complète des capacités prises en charge par PiCrawler Skill :

Mouvements (pc.py move)

Action

Description

forward

Avancer

backward

Reculer

turn left

Pivoter à gauche sur place

turn right

Pivoter à droite sur place

turn left angle

Virage à petit angle à gauche

turn right angle

Virage à petit angle à droite

Postures (pc.py pose)

Posture

Description

stand

Se lever de la position assise

sit

S’asseoir de la position debout

Actions supplémentaires (via langage naturel / exec)

Action

Description

dance

Exécuter un mouvement de danse

push_up

Faire des pompes

wave

Saluer de la patte avant

look_left

Tourner le corps pour regarder à gauche

look_right

Tourner le corps pour regarder à droite

look_up

Incliner le corps pour regarder en haut

look_down

Incliner le corps pour regarder en bas

Capteurs

Commande

Description

sensor distance

Lire le capteur de distance à ultrasons (retourne en cm)

Son (pc.py sound)

Commande

Description

sound play <fichier>

Jouer un fichier d’effet sonore

sound music <fichier>

Jouer de la musique de fond

sound volume <0-100>

Régler le volume du haut-parleur

sound stop

Arrêter la lecture

Caméra et vision (via langage naturel / exec)

Capacité

Description

Prendre une photo

Capturer et sauvegarder une photo dans ~/Pictures/

Détection de visages

Détecter les visages humains et signaler leur position

Détection de couleurs

Localiser des objets par couleur (rouge, bleu, vert, etc.)

Reconnaissance de gestes

Reconnaître les gestes pierre/papier/ciseaux

Détection de panneaux

Reconnaître les panneaux stop/gauche/droite/avant

Lecture de codes QR

Lire les données et la position des codes QR


Dépannage

Problèmes OpenClaw

Q : Lors de l’installation, j’obtiens l’erreur Error: systemctl is-enabled unavailable: Command failed: systemctl --user is-enabled openclaw-gateway.service. Que dois-je faire ?

Vous pouvez ignorer cela pour le moment, mais vous pourriez rencontrer des problèmes dans les étapes suivantes. Veuillez vous y référer une par une à ce moment-là.

Q : Lorsque j’exécute openclaw tui, j’obtiens l’erreur -bash: openclaw: command not found. Que dois-je faire ?

Exécutez la commande suivante :

echo 'export PATH="$HOME/.npm-global/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc

Vous devriez maintenant pouvoir démarrer l’interface TUI avec openclaw tui.

Q : Dans openclaw tui, je rencontre not connected to gateway message not sent ou le message gateway disconnected: closed.

Cela est dû au fait que votre service OpenClaw Gateway n’est pas démarré. Ouvrez un autre terminal et exécutez la commande suivante pour démarrer l’OpenClaw Gateway :

openclaw gateway

Redémarrez ensuite openclaw tui et vous pourrez l’utiliser directement.

Q : Je souhaite configurer le service OpenClaw Gateway pour qu’il s’exécute en arrière-plan / démarre automatiquement au démarrage. Comment faire ?

Normalement, votre service OpenClaw Gateway devrait démarrer automatiquement au démarrage. Si ce n’est pas le cas, vous pouvez le démarrer manuellement avec les commandes suivantes.

  1. Créez le répertoire ~/.config/systemd/user :

mkdir -p ~/.config/systemd/user
  1. Créez le fichier openclaw-gateway.service :

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
  1. Ensuite, rechargez la configuration systemd :

systemctl --user daemon-reload
  1. Démarrez le service :

systemctl --user start openclaw-gateway

À ce stade, redémarrez openclaw tui et vous pourrez l’utiliser directement.

  1. Activez-le pour qu’il démarre au démarrage :

systemctl --user enable openclaw-gateway

Q : Mon OpenClaw ne peut pas piloter le système, que dois-je faire ?

Un OpenClaw nouvellement installé peut ne pas avoir l’autorisation d’opérer votre système Raspberry Pi par défaut ; il ne peut que discuter. Nous devons configurer manuellement les autorisations.

  1. Ouvrez le fichier de configuration OpenClaw :

nano ~/.openclaw/openclaw.json
  1. Trouvez l’option tools et modifiez profile et exec comme indiqué.

"tools": {
    "profile": "coding",
    "exec": {
        "secrity": "full"
    }
},
  1. Sauvegardez et quittez.

  2. Entrez la commande suivante dans le terminal pour redémarrer l’OpenClaw Gateway :

openclaw gateway restart

Maintenant, OpenClaw devrait avoir les autorisations de lecture et d’écriture et pouvoir piloter votre système Raspberry Pi.

Problèmes PiCrawler

Q : PiCrawler ne répond pas aux commandes. Que dois-je faire ?

Tout d’abord, vérifiez que PiCrawler est correctement connecté et allumé. Testez ensuite les fonctionnalités de base :

python3 ~/.openclaw/workspace/skills/picrawler-control/scripts/pc.py pose sit --speed 40

Si cela échoue, assurez-vous que les bibliothèques Python requises sont installées :

python3 -c "import picrawler; import robot_hat; import vilib"

Q : Le test import picrawler échoue.

Cela signifie que la bibliothèque Python PiCrawler n’est pas correctement installée. Veuillez consulter le guide d’installation officiel de PiCrawler pour installer les bibliothèques nécessaires. Vous pouvez également exécuter le script d’installation inclus :

bash ~/.openclaw/workspace/skills/picrawler-control/install.sh

Q : OpenClaw ne reconnaît pas le skill PiCrawler.

Rappelez à OpenClaw de synchroniser les skills en disant dans le TUI : « Please rsync my skills » ou redémarrez l’OpenClaw Gateway :

openclaw gateway restart

Q : Les mouvements de PiCrawler semblent instables ou saccadés.

Cela est généralement dû à l’exécution d’actions à une vitesse trop élevée ou sans laisser l’action précédente se terminer. Le skill applique des règles de sécurité (se lever avant de bouger, s’asseoir après le mouvement) et recommande des plages de vitesse. Essayez de réduire le paramètre de vitesse (par exemple, --speed 40) ou ajoutez de courtes pauses entre les commandes consécutives.