🧪 De nouveaux tutoriels arrivent — du bras robotique au capteur
Aller au contenu

09 Dépannage ​

Les commandes série s'envoient via un assistant/moniteur série : tapez-les dans la zone d'envoi et appuyez sur Entrée (activez « send newline » dans UartAssist) ; les outils série / le téléchargement UartAssist pour Windows sont sur page 03, section 3.3.

9.1 Symptômes courants ​

SymptômeCause probableCorrectif
waiting for IMU startup 5000 ms... puis IMU not readyDémarrage lent de l'IMU, câblage défectueux, mauvaise adresseAttendez 5–10 s ; vérifiez 3V3, SDA=GPIO6 / SCL=GPIO7, adresse 0x23
Répétition de IMU lost -> bus reset + re-initFils I²C longs ou desserrésRaccourcissez les fils, réinsérez les connecteurs
Échec du flashage avec could not open port / Access is deniedPort série occupé par le moniteur/assistant sérieFermez d'abord hw_monitor.py ou le moniteur série
Le robot ne démarre pas après avoir été poséCorps pas immobile, ou une main le toucheRelâchez et gardez immobile ≥0.5 s ; surveillez getup start
Agitation immédiate / mauvaise directionSeuil de chute déclenché en plein roulis, mauvaise classificationPosez et relâchez proprement ; réessayez
L'exécution s'arrête et affiche executor timeout après 14 sLa référence ne s'est pas terminéeRepli normal ; nouvelle tentative automatique après 1.5 s ; conservez le journal
Événements executor re-plan occasionnelsRepli normal après un appui roll_neg ratéVérifiez si cela se termine par done
Le servomoteur bourdonne / chauffeBlocage ou cible contraignanteEnvoyez x ou coupez l'alimentation ; vérifiez les limites et le dégagement mécanique
Le bras heurte le corps pendant l'auto-redressementMouvement d'épaule trop grandVérifiez Q_SHOULDER_MAX et le dégagement ; conservez la hauteur de base d'environ 68 mm
up ne correspond pas à la pose réelle (inclinaison persistante de 5°+ en position couchée)Offsets de zéro de l'accéléromètre non calibrésPlacez le robot de niveau et envoyez c (voir page 06, 6.2)
Le bras ne repose pas au centre visuel après la rétractionZéro dérivé (ré-indexé/ré-assemblé sans refaire la mise à zéro)Refaites la mise à zéro avec l'outil de la page 05 et intégrez-la
Le servomoteur bourdonne/claque après un redressementAuto-excitation transitoire du servomoteur analogique après un mouvement ample/des blocages (la sortie est constante)Se dissipe seul ; ajoutez des rondelles amortisseuses en caoutchouc ou utilisez un servomoteur numérique ; pincer le bras le fait taire instantanément
Page d'état / provisionnement inaccessibleProxy du navigateur non contourné, ou point d'accès désactivéAjoutez 192.168.4.1 aux exceptions du proxy ; envoyez w pour activer le WiFi

9.2 Commandes de sécurité ​

SituationCommande
Arrêt immédiat du mouvements (maintenir la dernière cible) ou x (détacher le PWM, libérer le couple)
Récupération après xr réinitialise le PWM et centre
Une articulation va dans le mauvais sensinversion de signe v (épaule) / b (coude)

9.3 Capturer une panne ​

Conservez la partie correspondante de logs/hw_monitor.log. Les lignes clés sont :

text
<time> getup start pose=... up=(x,y,z)
<time> executor pose=... ph=... tick=... tgt=... up=... q=... sw=...
<time> executor re-plan A -> B up=(x,y,z)
<time> standing -> executor done | executor timeout

← Retour au sommaire du tutoriel