Open Duck Mini v2 : des pièces aux premiers pas

Trois contrôles avant le premier test du groupe motopropulsé

Pour Open Duck Mini v2 standard à b23317a. Utilisez ces cartes avec le manuel original. Les photos et CAD ci-dessous sont les références de l’auteur original ; ce site n'a pas assemblé le robot.

1. ID de servo et alignement du klaxon

Préparez : Un servo non assemblé, son adaptateur d'alimentation et de bus, ainsi que les instructions configure_motors correspondantes. La configuration écrit un identifiant et déplace le servo à zéro.

Photographie d'alignement du pavillon de servo · Antoine Pirrone · Open Duck Mini v2 · Apache 2.0 · référence originale
Photographie d'alignement du pavillon de servo · Antoine Pirrone · Open Duck Mini v2 · Apache 2.0 · référence originale ↗

Vérifiez dans l'ordre

  1. Configurez un servo à la fois, en gardant les pièces mobiles dégagées ; Montez le klaxon après le déplacement en position zéro.
  2. Étiquetez la jambe gauche 20-24, la jambe droite 10-14, le cou 30 et la tête 31-33. Conservez le mappage original des noms communs.
  3. Enregistrez l’ID, l’alignement du klaxon et tout décalage d’étalonnage ultérieur avant de fermer l’assemblage.

Prêt à continuer lorsque : Chacune des 14 articulations a un identifiant enregistré et le klaxon correspond à la référence de l'auteur.

Si la vérification échoue : Ne copiez pas les commandes zéro/limite du HD1910. Revérifiez le servo sélectionné et la procédure de configuration d'origine.

Copier la liste de contrôle
1. ID de servo et alignement du klaxon
1. Servo IDs and horn alignment
Prepare: One unassembled servo, its power and bus adapter, and the matching configure_motors instructions. Configuration writes an ID and moves the servo to zero.
□ Configure one servo at a time, keeping moving parts clear; fit the horn after the zero-position move.
□ Label left leg 20–24, right leg 10–14, neck 30 and head 31–33. Keep the original joint-name mapping.
□ Record the ID, horn alignment and any later calibration offset before closing the assembly.
Ready to continue when: Each of the 14 joints has one recorded ID and the horn matches the author’s reference.
If the check fails: Do not copy HD1910 zero/limit commands. Recheck the selected servo and original configuration procedure.

2. Assemblage des pieds gauche et droit

Préparez : Pièces de jambes imprimées, servos étiquetés et dessins d'assemblage originaux des pieds aux hanches.

Référence CAO de l'assemblage des pattes · Antoine Pirrone · Open Duck Mini v2 · Apache 2.0 · référence originale
Référence CAO de l'assemblage des pattes · Antoine Pirrone · Open Duck Mini v2 · Apache 2.0 · référence originale ↗

Vérifiez dans l'ordre

  1. Construisez les deux pieds de la même manière ; placez le côté pilote du moteur comme indiqué à côté de foot_top.
  2. Utilisez les bons left_roll_to_pitch et right_roll_to_pitch au niveau des hanches ; gardez les identifiants de servo gauche/droite attachés à la jambe correspondante.
  3. Vérifiez l'orientation du pas des hanches, le cheminement des câbles et le dégagement avant de fixer les pieds au tronc.

Prêt à continuer lorsque : Les deux pieds correspondent à la CAO originale, les étiquettes sont lisibles et aucun câble n'est pincé.

Si le contrôle échoue : Revenir au plan d'assemblage concerné. N'utilisez pas d'image en miroir comme référence d'identification ou d'orientation.

Copier la liste de contrôle
2. Ensemble de pieds gauche et droit
2. Left and right leg assembly
Prepare: Printed leg parts, labelled servos and the original feet-to-hips assembly drawings.
□ Build both feet the same way; place the motor driver side as shown beside foot_top.
□ Use the correct left_roll_to_pitch and right_roll_to_pitch at the hips; keep left/right servo IDs attached to the corresponding leg.
□ Check the hip-pitch orientation, cable routing and clearance before fastening the legs to the trunk.
Ready to continue when: The two legs match the original CAD, labels are readable and no cable is pinched.
If the check fails: Return to the relevant assembly drawing. Do not use a mirrored picture as an ID or orientation reference.

3. Câblage d'alimentation, de bus et d'IMU

Préparez : Une batterie déconnectée, les schémas de câblage originaux aperçu/détail et la configuration du Runtime.

Schéma de câblage alimentation et module · Antoine Pirrone · Open Duck Mini v2 · Apache 2.0 · référence originale
Schéma de câblage alimentation et module · Antoine Pirrone · Open Duck Mini v2 · Apache 2.0 · référence originale ↗

Vérifiez dans l'ordre

  1. Tracez la batterie, le BMS et l'alimentation du servo par rapport au schéma, en vérifiant la polarité et les numéros de broches des connecteurs.
  2. Alimentez le Pi via le chemin 5 V régulé séparé. Ne connectez jamais la tension de la batterie directement à la broche Pi 5 V.
  3. Comparez le montage de l'IMU et l'orientation du temps d'exécution, et confirmez comment l'alimentation peut être déconnectée avant de commencer l'étalonnage.

Prêt à continuer lorsque : Le câblage déconnecté a été vérifié par rapport aux schémas d'origine et à la configuration correspondante.

Si la vérification échoue : Maintenir l'alimentation coupée jusqu'à ce que la discordance soit comprise. Ne contournez pas la protection de la batterie pour diagnostiquer un redémarrage.

Copier la liste de contrôle
3. Câblage d'alimentation, de bus et IMU
3. Power, bus and IMU wiring
Prepare: A disconnected battery, the original overview/detail wiring diagrams and the Runtime configuration.
□ Trace battery, BMS and servo power against the diagram, checking polarity and connector pin numbers.
□ Supply the Pi through the separate regulated 5 V path. Never connect battery voltage directly to the Pi 5 V pin.
□ Compare the IMU mounting and runtime orientation, and confirm how power can be disconnected before starting calibration.
Ready to continue when: The disconnected wiring has been checked against both original diagrams and the matching configuration.
If the check fails: Keep power disconnected until the mismatch is understood. Do not bypass battery protection to diagnose a restart.

Poursuivre les étapes d'assemblage et d'étalonnage d'origine ↗

Liste d'impression complète : 36 fichiers, 51 pièces

Le guide original spécifie du PLA à 15 % de remplissage ; seul foot_bottom_tpu.stl utilise le TPU à 40 %. La hauteur des couches, le nombre de murs, les supports, l'orientation et les températures ne sont pas entièrement spécifiés. Effectuez un essai d'ajustement d'un pied et d'un joint structurel avant d'imprimer le lot. Les liens de fichiers ci-dessous ouvrent les originaux épinglés.

Liste d'impression complète : 36 fichiers, 51 pièces
Fichier STL d'origineQuantitéMatériau / remplissage
foot_top.stl2PLA / 15%
foot_side.stl2PLA / 15%
foot_bottom_pla.stl2PLA / 15%
foot_bottom_tpu.stl2TPU / 40 %
knee_to_ankle_left_sheet.stl4PLA / 15%
knee_to_ankle_right_sheet.stl4PLA / 15%
leg_spacer.stl4PLA / 15%
left_roll_to_pitch.stl1PLA / 15%
right_roll_to_pitch.stl1PLA / 15%
roll_motor_bottom.stl2PLA / 15%
roll_motor_top.stl2PLA / 15%
trunk_bottom.stl1PLA / 15%
trunk_top.stl1PLA / 15%
neck_left_sheet.stl1PLA / 15%
neck_right_sheet.stl1PLA / 15%
head_pitch_to_yaw.stl1PLA / 15%
head_yaw_to_roll.stl1PLA / 15%
head_roll_mount.stl1PLA / 15%
head.stl1PLA / 15%
head_bot_sheet.stl1PLA / 15%
left_antenna_holder.stl1PLA / 15%
right_antenna_holder.stl1PLA / 15%
left_cache.stl1PLA / 15%
right_cache.stl1PLA / 15%
body_front.stl1PLA / 15%
body_middle_bottom.stl1PLA / 15%
body_middle_top.stl1PLA / 15%
body_back.stl1PLA / 15%
battery_pack_lid.stl1PLA / 15%
bulb.stl1PLA / 15%
flash_light_module.stl1PLA / 15%
flash_reflector_interface.stl1PLA / 15%
left_eye.stl1PLA / 15%
right_eye.stl1PLA / 15%
speaker_interface.stl1PLA / 15%
speaker_stand.stl1PLA / 15%
S'applique à Open Duck Mini v2. Ce parcours de lecture indépendant relie les documents du projet original. Il ne certifie pas une construction terminée par ce site. Utilisez les photographies et les schémas liés lors de l'assemblage ; ils contiennent des détails qu’un aperçu textuel ne peut pas remplacer.

1. Corrigez la conception et préparez le budget.

Ouvrez le hub de projet original ↗ et la nomenclature originale ↗. Enregistrez une copie datée avant de faire vos achats. Le guide Tnkr lié à l'auteur ↗ présente également les composants et les quantités : son tableau révisé répertorie 14 servos Feetech 7,4 V STS3215, un Raspberry Pi Zero 2 W et une IMU BNO055. Il s'agit d'un inventaire de départ, pas de la liste complète des courses.

Évaluez la variante exacte, la quantité livrée, l'expédition, les pièces imprimées, les outils et les remplacements dans votre propre emplacement. L’objectif historique du projet inférieur à 400 $ n’est pas un devis de paiement actuel. Ne traitez pas deux listes avec un nom de servo similaire comme équivalentes.

Point de contrôle : chaque pièce a une source, une variante et une quantité ; chaque substitution a une note de compatibilité non résolue jusqu'à ce qu'elle soit vérifiée.

2. Imprimez et inspectez les pièces.

Le guide d'impression original ↗ spécifie du PLA à 15 % de remplissage, sauf foot_bottom_tpu.stl, qui utilise du TPU à 40 %. Il répertorie les quantités pour chaque fichier. Suivez ces comptes : plusieurs pièces de jambe nécessitent quatre copies et les parties gauche/droite en miroir sont distinctes.

Enregistrez les paramètres de votre imprimante, de votre matériel et de votre trancheuse. Inspectez un échantillon de joint et insérez l’ajustement avant de répéter un lot entier. Enregistrez les résultats dans votre journal de construction afin qu'une réimpression ultérieure utilise la même référence.

Point de contrôle : la liste d'impression est prise en compte et vous pouvez identifier chaque paire en miroir. Téléchargez les fichiers de fabrication à partir de cette conception, plutôt que les maillages de simulation MicroDuck.

3. Donnez à chaque servo son identité avant l'assemblage.

Installez le runtime v2 sur votre ordinateur ou Raspberry Pi en utilisant les instructions de configuration du runtime ↗ avant cette étape ; le guide moteur permet l'une ou l'autre machine. La procédure originale configure un moteur à la fois et le déplace vers une position de référence avant le montage du klaxon. Suivez le guide de configuration du moteur ↗ et inspectez le script de configuration réelle ↗. Il écrit les paramètres et commande le mouvement ; ce n'est pas une commande de découverte passive.

ID de servo de référence pour Open Duck Mini v2 uniquement
CommuneGaucheÀ droite
Lacet de la hanche2010
Roulement des hanches2111
Pas de hanche2212
Genou2313
Cheville2414

La hauteur du cou est 30 ; Le tangage de la tête, le lacet et le roulis sont 31, 32 et 33. Étiquetez les moteurs configurés avant de les insérer dans la structure.

Inspecter les options de configuration du référentiel d'exécution installé
python scripts/configure_motor.py --help

Le script révisé réside dans scripts/ et accepte --port et --id. Son port par défaut est /dev/ttyACM0 ; utilisez l’appareil réellement connecté. Dans un outil fabricant, confirmez les unités de position avant de saisir une valeur : l'angle zéro d'une bibliothèque n'est pas nécessairement le zéro brut du codeur.

Par exemple, avec uniquement le servo de lacet de hanche gauche non assemblé connecté et libre de se déplacer, ce qui suit attribue l'ID 20. Remplacez le port par votre appareil ; configurez les moteurs restants individuellement à l’aide du tableau.

Configurer un servo non assemblé — commande le mouvement
python scripts/configure_motor.py --port /dev/ttyACM0 --id 20

Point de contrôle : chaque moteur a une étiquette unique et la position de référence prévue. Terminez cette étape avant de verrouiller l’orientation du klaxon.

4. Assemblez la structure avec le guide illustré.

Parcourez les photographies originales d'assemblage ↗ : tronc, pieds, tibias, cuisses, hanches, cou, tête et corps. Suivez les étapes d’acheminement des câbles avant de fermer un joint. Le guide demande un peu de frein-filet sur les vis de moteur métal sur métal, avec une instruction distincte de ne pas l'utiliser sur des vis en plastique.

Le document examiné laisse toujours le total exact des vis M3, une photo de la carte servo et quelques instructions de fonction d'expression inachevées. Consultez le guide d'assemblage interactif ↗ pour des vues supplémentaires ; résolvez toute question d’ajustement ou de montage restante avant de continuer.

Point de contrôle : les pièces sont placées dans l'orientation indiquée et les joints mobiles laissent de la place pour les câbles. Enregistrez les photos avant de fermer la coque.

5. Vérifiez le câblage et l'orientation du capteur.

Utilisez le schéma électronique et les tableaux de broches dans la même révision d'assemblage ↗. Ils distinguent les numéros de broches physiques des numéros GPIO BCM. Tracez chaque connexion par rapport à la bonne colonne. La note de l'IMU explique également qu'une photo plus ancienne montre un montage à l'envers.

Avant de connecter l'alimentation, confirmez la polarité, l'alimentation spécifiée pour chaque carte et l'isolation des conducteurs exposés. L’assemblage de batteries nécessite des compétences en électronique appropriées ; utilisez les instructions d'origine de la batterie et les spécifications des composants, et non une hypothèse générique de couleur à trois fils.

Point de contrôle : enregistrez la révision du schéma, l'orientation de votre IMU et toute modification de câblage. Une photographie de la construction de quelqu’un d’autre ne confirme pas vos connexions.

6. Préparez le Raspberry Pi en utilisant une seule route d'installation.

Disponibilité de l'image : les instructions de l'image ↗ décrivent une configuration prédéfinie pour le matériel de référence Raspberry Pi Zero 2 W. Cependant, notre vérification des versions publiques ↗ a trouvé une version source V2-Classic sans fichier image joint. Nous n'avons pas pu vérifier le téléchargement de l'image annoncée, utilisez donc la méthode manuelle ci-dessous. Si une image devient disponible, vérifiez sa correspondance matérielle, configurez vos propres informations d'identification et terminez l'étalonnage.

Itinéraire manuel : suivez le runtime README ↗ pour Raspberry Pi OS Lite 64 bits, les interfaces, l'appairage des contrôleurs et son environnement Python. Utilisez une extraction distincte pour la révision d'exécution révisée :

Créer une copie locale de la révision examinée du runtime Open Duck Mini
git clone https://github.com/apirrone/Open_Duck_Mini_Runtime Open_Duck_Mini_Runtime-reviewed
cd Open_Duck_Mini_Runtime-reviewed
git checkout --detach 376de65435c93486347cd601a31aa96951799896

Terminez ensuite l’installation des dépendances dans l’environnement décrit par ce README. Enregistrez une version d'image ou une révision de source dans le journal afin que le débogage futur démarre à partir de la même configuration.

7. Calibrez ce robot et testez ses entrées.

Utilisez les instructions d'exécution pour créer ~/duck_config.json, vérifier l'IMU et mesurer les décalages articulaires. L'exemple de configuration ↗ sépare l'orientation IMU, les décalages articulaires et les fonctionnalités d'expression facultatives. Remplissez-les à partir de votre build ; les valeurs de décalage d’un autre fabricant ne constituent pas votre étalonnage.

Le script de contrôle moteur ↗ active le couple et propose des tests de mouvement. Soutenez le robot avec un jeu de joint avant de l'utiliser et lisez chaque invite. Arrêtez-vous en cas d'échec de la réponse motrice au lieu de traiter le reste du test comme une réussite.

Utilisez la liste de contrôle pré-politique originale ↗ pour vérifier les positions et les décalages des articulations, l'orientation de l'IMU et les commutateurs au pied. Gardez les contrôles optionnels des yeux, des antennes, des haut-parleurs et de la caméra séparés. Confirmez que la manette de jeu répond avant d'essayer de marcher.

Point de contrôle : enregistrez votre configuration et enregistrez la réponse observée de chaque entrée. Une installation réussie ne suffit pas à franchir cette étape.

8. Essayez la politique de premier passage correspondante.

La section de première marche d'exécution ↗ relie BEST_WALK_ONNX_2.onnx pour ce robot. Conservez sa source avec votre version d'exécution. Passez en revue le script de marche et les contrôles ↗ avant de le lancer dans une zone de test claire et prise en charge.

Pour ce runtime, le bouton A de la manette de jeu active la pause de la politique. La pause ne signifie pas que l'alimentation du moteur est déconnectée : le script allume le matériel avant sa boucle de contrôle. Gardez l’interrupteur d’alimentation physique accessible. L'exemple de configuration définit également par défaut start_paused sur false ; choisissez l’état de démarrage souhaité avant de l’exécuter.

Après les vérifications ci-dessus, activez l'environnement d'exécution installé, entrez dans son répertoire scripts/ et utilisez le formulaire de commande d'origine ci-dessous. Remplacez le chemin du modèle par le fichier que vous avez téléchargé pour ce robot.

Lancement uniquement après calibrage et vérification des entrées
python v2_rl_walk_mujoco.py --onnx_model_path /absolute/path/BEST_WALK_ONNX_2.onnx

Commencez par une brève observation, arrêtez-vous, inspectez le robot et enregistrez ce qui s'est passé. Utilisez uniquement le format de stratégie et la combinaison matérielle documentés pour ce runtime. Un fichier MicroDuck ONNX n’est pas une politique Open Duck Mini d’insertion.

L’entraînement à une nouvelle démarche vient plus tard. Les notes de simulation du projet ↗ expliquent le modèle du robot, l'identification de l'actionneur, l'Open Duck Playground et l'itinéraire de mouvement de référence ; ce document est lui-même marqué comme inachevé.

Gardez un registre que vous pouvez reprendre.

Journal de fabrication Open Duck Mini
Robot : Open Duck Mini v2
Révision du dépôt matériel : b23317a485b3cec7d8417f352478778b3475173c
Révision du runtime ou version de l’image :
Date de la nomenclature / coût local livré :
Révision des pièces imprimées / matériau / réglages du trancheur :
Modèle de servo et étiquettes d’identifiants :
Révision du schéma de câblage / modifications :
Orientation de l’IMU / résultat d’étalonnage :
Sauvegarde des décalages articulaires dans :
Vérifications des capteurs de pied et de la manette :
Fichier de politique / source / hash :
Conditions du premier essai et résultat observé :
Problème non résolu / prochaine vérification :

Schémas de câblage originaux

Schéma original de l’alimentation et du câblage des modules Open Duck Mini v2
Diagrammes originaux d'Open Duck Mini v2 · Dépôt d'Antoine Pirrone · Apache 2.0. Le Pi utilise un régulateur 5 V séparé ; ne connectez pas le rail de batterie directement à la broche Pi 5 V.

Ouvrez le schéma de câblage détaillé en pleine résolution ↗