Guide ultime de configuration du SDK Python pour robots bipèdes Unitree
Introduction
Le SDK Python Unitree permet de interfacer avec les robots bipèdes de la marque Unitree. Cette bibliothèque offre des fonctionnalités complètes pour récupérer l'état du robot, contrôler les mouvements, et accéder aux données des capteurs. Ce guide vous accompagnera pas à pas dans la configuration de l'environnement de développement.
Prérequis et installation des dépendances
Configuration requise
Le SDK unitree_sdk2_python nécessite Python 3.8 ou une version ultérieure. Les dépendances principales sont les suivantes :
- cyclonedds version 0.10.2
- numpy
- opencv-python
Procédure d'installation
Commencez par cloner le dépôt et installer les dépendances :
git clone https://gitcode.com/gh_mirrors/un/unitree_sdk2_python.git
cd unitree_sdk2_python
pip3 install -e .
Résolution des problèmes courants
Si l'erreur Could not locate cyclonedds apparaît, vous devez compiler et installer cyclonedds préaalblement :
cd ~
git clone https://github.com/eclipse-cyclonedds/cyclonedds -b releases/0.10.x
cd cyclonedds && mkdir build install && cd build
cmake .. -DCMAKE_INSTALL_PREFIX=../install
cmake --build . --target install
_CONFIGUREZ ansuite les variables d'environnement :
export CYCLONEDDS_HOME="~/cyclonedds/install"
pip3 install -e .
Modèles de robots compatibles
Le SDKUnitree prend en charge plusieurs modèles de robots, chacun disposant d'exemples de code spécifiques :
- Famille Go2 : Located in example/go2/
- Famille B2 : Located in example/b2/
- Famille G1 : Located in example/g1/
- Famille H1 : Located in example/h1/
Architecture des modules principaux
Les fonctionnalités principales sont organisées dans le répertoire unitree_sdk2py/ :
- Contrôle du mouvement : unitree_sdk2py/go2/sport/
- Surveillance d'état : unitree_sdk2py/go2/robot_state/
- Traitement vidéo : unitree_sdk2py/go2/video/
- Interaction vocale : unitree_sdk2py/g1/audio/
Exemples pratiques
Test de communication DDS
Pour vérifier le bon fonctionnement de la communication, exécutez d'abord l'éditeur :
python3 ./exemples/communication/editeur.py
Dans un terminal séparé, lancez l'abonné :
python3 ./exemples/communication/abonne.py
Contrôle avancé des mouvements
Pour piloter un robot Go2, utilisez l'exemple suivant :
python3 ./exemples/go2/controle_mouvement/interface_sport.py
Utilisation de la caméra
Pour capturer le flux vidéo de la caméra frontale avec OpenCV :
python3 ./exemples/go2/camera_avant/capture_video.py eth0
Important : Remplacez eth0 par le nom réel de votre interface réseau连接到机器人。
Analyse de l'architecture du projet
Catégorisation des exemples
Le projet propose plusieurs catégories d'exemples selon le niveau de contrôle :
- Contrôle bas niveau : Pilotage direct des moteurs
- Contrôle haut niveau : Modes de mouvement prédéfinis
- Applications capteurs : Caméra, audio, évitement d'obstacles
Définitions des types de messages
Tous les types de messages pour la communication sont définis dans le répertoire idl/ :
- unitree_go : Utilisé pour les robots Go2/B2/H1/B2w/Go2w
- unitree_hg : Utilisé pour les robots G1/H1-2
Recommandations et bonnes pratiques
- Configuration réseau : Vérifiez que la connexion réseau avec le robot est correctement établie
- Sécurité : Assurez-vous que le robot est dans une position sécurisée avant d'exécuter des commandes de mouvement
- Progression graduelle : Commencez par les fonctionnalités simples avant de passser aux contrôles complexes
Ce guide vous permettra de configurer efficacement le SDK Python pour vos développements avec les robots bipèdes Unitree.