22. Utiliser OpenClaw pour contrôler le PiCar-X
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 polyvalent : Laissez-le vous aider à gérer votre emploi du temps, définir des rappels et suivre vos tâches. Il vous suffit de le lui dire dans une application de messagerie (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 demander de surveiller un site web pour détecter les 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é : Demandez-lui de vous aider à gérer des serveurs, exécuter des scripts et vérifier les logs. Vous pouvez simplement dire : « Vérifie la charge du système pour moi », et il peut se connecter en SSH à votre serveur, exécuter la commande et renvoyer les résultats.
Compagnon matériel : C’est un cas d’utilisation très intéressant. Vous pouvez demander à OpenClaw de contrôler du matériel connecté à un Raspberry Pi. Par exemple, un développeur l’a utilisé pour contrôler un aspirateur robotique avec un bras mécanique, ou même pour analyser les données d’un 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, alors qu’OpenClaw nécessite un minimum de 1 Go. Il ne peut donc 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 et lancera automatiquement un assistant de configuration interactif.
Ouvrez le terminal de 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.
Le script téléchargera et installera automatiquement OpenClaw.
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.
Sélectionnez Quick Start, puis appuyez sur Entrée.
Sélectionnez votre modèle, puis appuyez sur Entrée. Nous utilisons OpenAI comme exemple ici.
Sélectionnez OpenAI API Key.
Collez la clé API maintenant.
Allez sur OpenAI Platform et connectez-vous. Sur la page API keys, cliquez sur Create new secret key.
Remplissez les détails (Owner, Name, Project et permissions si nécessaire), puis cliquez sur Create secret key.
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.
Collez la clé dans la configuration d’OpenClaw.
Sélectionnez le modèle que vous souhaitez utiliser. Dans cet exemple, nous allons utiliser Keep current.
Ensuite vient la sélection du canal. Les canaux font référence aux services de communication pris en charge par OpenClaw, tels que Telegram, WhatsApp, Discord, etc. Utilisez la flèche vers le bas pour sélectionner l’option « Skip for now », puis appuyez sur Entrée.
Ensuite, vous serez invité à configurer les compétences immédiatement. Sélectionnez « Yes » et appuyez sur Entrée.
Installez les compétences 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.
Ensuite viennent les Hooks ; nous allons cocher « command-logger » et « session-memory ».
L’installation est maintenant terminée. Vous pouvez démarrer OpenClaw en sélectionnant « Hatch in TUI » et en appuyant sur Entrée.
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 le PiCar-X avec OpenClaw
Qu’est-ce que la compétence PiCar-X ?
La compétence PiCar-X est une extension pour OpenClaw qui vous permet de contrôler votre voiture robot SunFounder PiCar-X en langage naturel. Au lieu d’écrire des scripts Python ou de mémoriser des angles de servo, vous pouvez simplement dire à OpenClaw ce que vous voulez que le PiCar-X fasse — comme « avance », « vérifie ce qu’il y a devant » ou « tourne à gauche » — et OpenClaw exécutera automatiquement le code Python approprié.
Voici quelques choses que vous pouvez faire avec la compétence PiCar-X :
Conduite : Avancer, reculer, tourner à gauche/droite avec le contrôle du servo de direction
Caméra orientable : Panoramique gauche/droite, inclinaison haut/bas via la caméra 2 axes
Capteurs : Lire la distance ultrasonique, les données du capteur de niveaux de gris pour le suivi de ligne et la détection de falaise
Son : Jouer des effets sonores et de la musique via le haut-parleur de la voiture
Vision par caméra : Prendre des photos, détecter des visages, suivre des couleurs, reconnaître des QR codes, des gestes et des panneaux de signalisation
Prérequis
Avant de pouvoir utiliser la compétence PiCar-X avec OpenClaw, assurez-vous d’avoir :
PiCar-X correctement assemblé et connecté à votre Raspberry Pi
OpenClaw installé et en cours d’exécution
Les bibliothèques Python suivantes installées :
picarxrobot_hatvilib
Vous pouvez vérifier l’installation en exécutant :
python3 -c "import picarx"
Si cette commande s’exécute sans erreur, vous êtes prêt à continuer.
Installer la compétence PiCar-X
Suivez ces étapes pour installer la compétence PiCar-X pour OpenClaw :
Copiez les fichiers de la compétence PiCar-X dans le répertoire des compétences d’OpenClaw :
cp -r ~/picar-x/picarx-control ~/.openclaw/workspace/skills/
Vérifiez l’installation en consultant les fichiers de la compétence :
ls ~/.openclaw/workspace/skills/picarx-control/Vous devriez voir
SKILL.md,install.sh,scripts/etreferences/dans la sortie.
Le fichier SKILL.md de la compétence contient toutes les instructions dont OpenClaw a besoin — règles de sécurité, modèles de code pour chaque capacité et une correspondance entre les demandes en langage naturel et le code Python. OpenClaw lit ce fichier et l’utilise pour décider quel code exécuter sur votre PiCar-X.
Tester la compétence PiCar-X depuis la CLI
Avant d’utiliser la compétence avec OpenClaw, vous pouvez tester les fonctionnalités de base directement depuis le terminal en utilisant l’outil CLI inclus.
Vérifier la distance ultrasonique :
python3 ~/.openclaw/workspace/skills/picarx-control/scripts/pc.py sensor distance
Avancer :
python3 ~/.openclaw/workspace/skills/picarx-control/scripts/pc.py move forward --speed 60
Reculer :
python3 ~/.openclaw/workspace/skills/picarx-control/scripts/pc.py move backward --speed 60
Tourner à gauche :
python3 ~/.openclaw/workspace/skills/picarx-control/scripts/pc.py turn left --angle 30
Tourner à droite :
python3 ~/.openclaw/workspace/skills/picarx-control/scripts/pc.py turn right --angle 30
Régler l’angle de panoramique de la caméra :
python3 ~/.openclaw/workspace/skills/picarx-control/scripts/pc.py cam pan --angle 30
Régler l’angle d’inclinaison de la caméra :
python3 ~/.openclaw/workspace/skills/picarx-control/scripts/pc.py cam tilt --angle 20
Jouer un effet sonore :
python3 ~/.openclaw/workspace/skills/picarx-control/scripts/pc.py sound play /path/to/sound.wav --volume 80
Lire les données du capteur de niveaux de gris (suivi de ligne) :
python3 ~/.openclaw/workspace/skills/picarx-control/scripts/pc.py sensor grayscale
Lancer l’étalonnage des servos :
python3 ~/.openclaw/workspace/skills/picarx-control/scripts/pc.py calibrate
Utiliser la compétence PiCar-X dans OpenClaw
Une fois que vous avez vérifié que la compétence PiCar-X fonctionne depuis la ligne de commande, vous pouvez commencer à l’utiliser dans OpenClaw.
Lancez OpenClaw TUI :
openclaw tuiEnvoyez des commandes en langage naturel pour contrôler le PiCar-X. Voici quelques exemples :
« Avance »
« Recule »
« Tourne à gauche »
« Tourne à droite »
« Vérifie s’il y a quelque chose devant »
« Regarde à gauche »
« Regarde en haut »
« Regarde en bas »
« Prends une photo »
« Détecte les visages »
« Trouve la couleur rouge »
« Suis la ligne »
« Vérifie s’il y a une falaise devant »
OpenClaw traduira automatiquement votre demande en code Python approprié et l’exécutera sur le PiCar-X.
Actions et commandes disponibles
Voici la liste complète des capacités prises en charge par la compétence PiCar-X :
Conduite (pc.py move)
Action |
Description |
|---|---|
|
Avancer |
|
Reculer |
Direction (pc.py turn)
Action |
Description |
|---|---|
|
Tourner à gauche en ajustant l’angle de direction |
|
Tourner à droite en ajustant l’angle de direction |
Caméra orientable (pc.py cam)
Capacité |
Description |
|---|---|
Panoramique |
Faire pivoter la caméra horizontalement (-90° à 90°) |
Inclinaison |
Incliner la caméra verticalement (-35° à 65°) |
Capteurs
Commande |
Description |
|---|---|
|
Lire le capteur de distance ultrasonique (retourne en cm) |
|
Lire les valeurs du module de niveaux de gris à 3 canaux (pour le suivi de ligne et la détection de falaise) |
Son (pc.py sound)
Commande |
Description |
|---|---|
|
Jouer un fichier d’effet sonore |
|
Jouer de la musique de fond |
|
Régler le volume du haut-parleur |
|
Arrêter la lecture |
Note
Les fichiers son peuvent être n’importe quel fichier audio au format .wav accessible sur votre Raspberry Pi. Vous pouvez également utiliser sound music pour lire des fichiers de musique de fond.
Caméra et vision (via langage naturel / exec)
Capacité |
Description |
|---|---|
Prendre une photo |
Capturer et enregistrer une photo dans |
Détection de visage |
Détecter les visages humains et indiquer leur position |
Détection de couleur |
Localiser des objets par couleur (rouge, bleu, vert, etc.) |
Reconnaissance de gestes |
Reconnaître les gestes pierre/feuille/ciseaux |
Détection de panneaux |
Reconnaître les panneaux stop/gauche/droite/tout droit |
Lecture de QR code |
Lire les données et la position des QR codes |
Suivi de ligne et détection de falaise
Capacité |
Description |
|---|---|
Suivi de ligne |
Suivre une ligne noire sur une surface claire en utilisant le capteur de niveaux de gris à 3 canaux |
Détection de falaise |
Détecter les bords/chutes en utilisant les seuils du capteur de niveaux de gris |
Dépannage
Problèmes avec OpenClaw
Pendant 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 lors des prochaines étapes. Veuillez vous y référer un par un à ce moment-là.
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.
Dans
openclaw tui, je rencontrenot connected to gateway — message not sentou le messagegateway disconnected: closed.Cela signifie 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 gatewayEnsuite, redémarrez
openclaw tui, et vous pourrez l’utiliser directement.
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 la commande suivante.
Créez le répertoire
~/.config/systemd/user:
mkdir -p ~/.config/systemd/user
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
Ensuite, rechargez la configuration systemd :
systemctl --user daemon-reload
Démarrez le service :
systemctl --user start openclaw-gateway
À ce stade, redémarrez
openclaw tui, et vous pourrez l’utiliser directement.Activez-le pour qu’il démarre au démarrage :
systemctl --user enable openclaw-gateway
Mon OpenClaw ne peut pas interagir avec le système, que dois-je faire ?
Un OpenClaw nouvellement installé peut ne pas avoir la permission d’interagir avec votre système Raspberry Pi par défaut ; il peut seulement discuter. Nous devons configurer manuellement les permissions.
Ouvrez le fichier de configuration d’OpenClaw :
nano ~/.openclaw/openclaw.jsonTrouvez l’option
toolset modifiezprofileetexeccomme indiqué.
"tools": { "profile": "coding", "exec": { "secrity": "full" } },
Enregistrez et quittez.
Entrez la commande suivante dans le terminal pour redémarrer l’OpenClaw Gateway :
openclaw gateway restart
Maintenant, OpenClaw devrait avoir les permissions de lecture et d’écriture et pouvoir interagir avec votre système Raspberry Pi.
Problèmes avec le PiCar-X
Le PiCar-X ne répond pas aux commandes. Que dois-je faire ?
Tout d’abord, vérifiez que le PiCar-X est correctement connecté et allumé. Ensuite, testez les fonctionnalités de base :
python3 ~/.openclaw/workspace/skills/picarx-control/scripts/pc.py sensor distance
Si cela échoue, assurez-vous que les bibliothèques Python requises sont installées :
python3 -c "import picarx; import robot_hat; import vilib"
Le test
import picarxéchoue.Cela signifie que la bibliothèque Python PiCar-X n’est pas correctement installée. Veuillez consulter le guide d’installation officiel du PiCar-X pour installer les bibliothèques nécessaires. Vous pouvez également exécuter le script d’installation inclus :
bash ~/.openclaw/workspace/skills/picarx-control/install.sh
OpenClaw ne reconnaît pas la compétence PiCar-X.
Rappelez à OpenClaw de synchroniser les compétences en disant dans le TUI : « Please rsync my skills » ou redémarrez l’OpenClaw Gateway :
openclaw gateway restart
Les mouvements du PiCar-X semblent saccadés ou la direction est décentrée.
Cela est généralement dû à des valeurs d’étalonnage des servos incorrectes. Exécutez le script d’étalonnage pour ajuster le servo de direction et la caméra orientable :
python3 ~/.openclaw/workspace/skills/picarx-control/scripts/pc.py calibrate
Vous pouvez également ajuster le paramètre de vitesse (par exemple, utilisez
--speed 40) pour un mouvement plus fluide, ou ajouter de courtes pauses entre les commandes consécutives.
Le suivi de ligne ou les niveaux de gris ne fonctionnent pas correctement.
Assurez-vous que le module de niveaux de gris est correctement étalonné pour votre surface. Vous pouvez définir les valeurs de référence de ligne à l’aide de la configuration. Consultez la documentation principale du PiCar-X pour les procédures d’étalonnage des niveaux de gris.