CubeBot est un quadrupède ouvert publié par Vladimir Robotics sur Tnkr : un cube imprimé de 125 x 105 mm, douze micro-servos MG92B, trois articulations par patte, une Raspberry Pi 5 qui calcule la cinématique en Python et une Raspberry Pi Pico 2 qui ne fait rien d'autre que tenir les impulsions des servos. Il n'y a pas de carte servo toute faite — le projet vous en fait souder une sur plaque à pastilles — ni de fichier STEP. Le projet n'affiche aucun budget ; acheté dans ce catalogue, le montage tombe vers 450 € sans l'AI HAT et 550 € avec. Les six phases ci-dessous suivent l'ordre de montage amont, et la liste de pièces sous chacune est reconstruite à partir du stock réel à chaque affichage. Lisez la dernière phase avant de commander : le projet ne publie aucun firmware pour le Pico, et c'est la seule chose qui sépare un robot fini d'un robot qui bouge.
Pièces et décisions reprises de vladimir.robotics / CubeBot tnkr.ai/vladimirroboticss-workspace/cubebot · aucune licence déclarée
Les fichiers du projet amont, redistribués tels quels. Les volumes et les encombrements ci-dessous sont mesurés sur les maillages, pas recopiés : ils disent ce qui tient sur votre plateau avant que vous ne lanciez l'impression.
Les quatre maillages du corps, un exemplaire de chacun. La cage centrale porte les quatre servos de hanche, la Raspberry Pi 5 et les saignées de passage de fils ; le fond reçoit le BMS, les quatre accus et les deux abaisseurs ; le couvercle et le capot de caméra ferment l'ensemble. Rien ici ne demande plus de 130 mm de plateau. Attention : les STL amont sont exportés en MÈTRES. Un trancheur qui suppose des millimètres vous montrera une pièce de 0,1 mm. Réglez l'unité d'import sur le mètre, ou appliquez une échelle 1000.
Les cinq maillages d'une patte : le tibia, la liaison de hanche et les trois pièces que le guide d'impression appelle Servo Casing 1, 2 et 3. Un exemplaire de chaque fait 38,4 cm³, donc les quatre pattes totalisent 153,5 cm³. Les trois carters partagent la même empreinte de 70 x 15,5 mm et le montage amont les nomme Leg middle, Cover for middle part et Cover for middle part bottom sans dire lequel est lequel ; l'épaisseur le dit, puisque seul Servo Casing 1 fait 22 mm de haut et peut avaler un servo. Présentez à sec avant de visser.
Un maillage, 1,5 cm³, à imprimer quatre fois en filament souple. C'est la seule pièce molle du robot et la seule chose entre douze petits servos et un sol dur. L'étape amont tient en une ligne — insérer les pattes dans les pieds TPU — mais la matière n'est pas facultative : imprimés en PLA, ces pieds deviennent quatre plots qui transmettent chaque réception directement dans les trains d'engrenages.
Licence des fichiers : aucune déclarée en amont, tous droits réservés · Page de publication du projet
Pas d'imprimante, ou un plateau trop petit ?
Press3D Paris imprime en FDM jusqu'à 255 x 255 x 255 mm, ce qui couvre la plus grande pièce de cette liste. Le prix et la date s'affichent au dépôt du fichier, en STL ou 3MF jusqu'à 150 Mo, et le retrait à l'atelier parisien se fait sous 48 h. Comptez la pièce plutôt que le kilo : sur un robot de plusieurs centaines de pièces, l'impression à façon revient bien plus cher que la bobine, elle a du sens pour les pièces qui ne rentrent pas chez vous.
Déposer les fichiers sur press3dparis.comC'est un projet de soudure avec une imprimante à côté, pas l'inverse. Chacun des quatre sous-ensembles électriques se fabrique à la main : la distribution de masse et de VCC dans le fond de caisse, le faisceau du BMS, les deux abaisseurs dont on coupe la fiche de sortie, et la carte servo elle-même, soit deux morceaux de plaque à pastilles, un Pico et une quarantaine de points de soudure. Rien n'arrive sur connecteur. L'impression, à l'inverse, ne demande pas grand-chose : la plus grande pièce fait 125 x 105 mm, donc n'importe quel plateau de 150 mm passe tout le robot, et la seule vraie exigence est du filament souple pour les pieds. Achetez le multimètre même si vous croyez pouvoir vous en passer : le contrôle prévu par le projet pour valider l'étage de puissance est de vérifier que deux LED s'allument, ce qui ne dit à peu près rien de la polarité sur le rail servo.
La plus grande pièce est la cage centrale, à 125 x 105 mm : la taille du plateau ne décide rien ici, n'importe quelle machine de 150 mm passe tout le robot. Ce qui compte, c'est une imprimante capable d'avaler du filament souple, puisque les quatre pieds sont en TPU, et une première couche que l'on peut ralentir à 20 % pour les carters de patte à parois fines.
Montage
Quatre sous-ensembles se soudent à la main : les huit connecteurs de puissance dans le fond de caisse, le faisceau du BMS, les deux abaisseurs, et la carte servo avec sa quarantaine de points au pas de 2,54 mm. Rien de tout cela n'est du pas fin, mais la prise USB-C du module 5 V et les pastilles crénelées du Pico punissent toutes deux une panne trop chaude.
Montage
Le contrôle de recette prévu par le projet pour l'étage de puissance est de voir deux LED s'allumer en rouge. Cela confirme que les modules sont alimentés ; cela ne dit rien de la tension réelle du rail 6 V, ni du 5,1 V de l'autre, ni du sens des accus. Mesurez chaque sortie avant de brancher quoi que ce soit en aval : un abaisseur resté sur 12 V emporte la Pi avec lui.
Montage
Quarante-six vis tiennent ce robot, et quarante-deux sont en M2 : trente-deux M2x8, dix M2x10, quatre M2x15 et quatre M3x10. Une tête M2 s'arrondit sous un tournevis d'une taille de trop, et la moitié d'entre elles entrent dans du plastique imprimé qui ne donne pas de seconde chance. Un jeu magnétique se rembourse la première fois qu'une vis tombe dans le fond de caisse fermé.
Montage
Dix maillages distincts, imprimés en 28 exemplaires : quatre pour le corps, cinq par patte fois quatre, et quatre pieds en TPU. Mesure faite sur les fichiers en haut de cette page, cela fait 379,5 cm³ de volume solide, près de 470 g de filament : une bobine de PLA imprime le robot deux fois et laisse de quoi refaire les pièces de patte. Le guide d'impression amont donne deux réglages, et tous deux concernent l'état de surface, pas la solidité : première couche à 20 % de la vitesse sur les pièces à parois fines, et lissage (ironing) sur toutes les pièces. Le lissage vaut le coup ici parce que les trois carters de patte serrent un servo entre eux, et qu'un bourrelet de première couche est exactement ce qui fait asseoir un servo avec un demi-degré de travers — que la calibration devra ensuite rattraper sur douze voies. La seule pièce qui ne doit pas sortir en PLA est le pied.
Vingt-quatre des vingt-huit pièces sont en PLA : 220,0 cm³ pour le corps et 153,5 cm³ pour les quatre pattes, soit 373,5 cm³, près de 460 g. Une bobine d'un kilo couvre le robot deux fois. Achetez en conséquence plutôt qu'au besoin exact, car les carters de patte sont les pièces que l'on réimprime : ce sont elles qui décident si un servo est d'équerre, et le premier jeu l'est rarement.
Montage
Six centimètres cubes de filament souple pour les quatre pieds — une erreur d'arrondi sur une bobine, et le choix de matière le plus lourd de conséquences du montage. Douze MG92B à trains d'engrenages n'ont aucune suspension ; les pieds en tiennent lieu. Un 95A shore est le compromis habituel entre l'accroche sur un sol lisse et assez de tenue pour garder sa forme sous le poids du robot.
Montage
La Raspberry Pi 5 fait tourner tout le robot en Python : la cinématique inverse à deux segments par patte, la matrice de rotation du corps, les tables de démarche et la boucle d'équilibre qui lit la centrale inertielle. Ce qu'elle ne fait pas, c'est générer les impulsions des servos, et c'est volontaire : un Raspberry Pi OS sans noyau temps réel qui bat douze voies en logiciel produit un tremblement visible. Le Pico 2 vit donc sous la frontière et n'a qu'un travail : recevoir des lignes de texte sur le port série à 230 400 bauds, de la forme voie;angle avec les angles au dixième de degré, et tenir les impulsions. La centrale inertielle ne passe pas par lui : la WT901 est lue directement par la Pi en I²C à l'adresse 0x50, et c'est à cela que sert l'embase femelle à quatre broches de la carte servo. L'AI HAT est la pièce sur laquelle il faut trancher avant de commander. La page amont décrit le robot comme une Pi 5 avec un AI HAT et la branche main embarque 250 Mo de modèles Hailo compilés, mais l'AI HAT n'apparaît nulle part dans la nomenclature. Si vous voulez seulement que le robot marche, clonez la branche main-no-ai et passez votre chemin.
L'hôte, fixé aux vis M2,5 dans la cage centrale dès la deuxième étape du montage. Le projet dit clairement qu'une Raspberry Pi 4 ne fera pas tourner ce code tel quel, l'architecture GPIO étant différente, tout en notant que la liaison série avec le Pico, elle, fonctionnerait : une Pi 4 est donc un portage, pas un remplacement. 4 Go suffisent pour marcher ; prenez 8 Go si vous comptez faire tourner les modèles Hailo, ce à quoi sert la branche main.
Montage
La page d'accueil amont décrit CubeBot comme une Pi 5 avec un AI HAT, et la branche main embarque des modèles Hailo compilés pour la détection YOLO, les points de main et la profondeur monoculaire. La page d'architecture précise que le projet a été construit sur le HAT de première génération, c'est-à-dire le Hailo-8L. Mais la nomenclature ne le liste pas, donc son prix n'est pas dans les chiffres du projet. Le choix est binaire et vaut d'être fait avant de commander : avec, on clone main ; sans, on clone main-no-ai et on économise à la fois l'argent et 250 Mo de modèles.
Montage


Une caméra sur le port CSI, derrière son capot imprimé en face avant. Le dépôt livre settings/camera_test.py, qui diffuse vers un serveur local et reste le moyen le plus rapide de vérifier que la nappe est dans le bon sens avant de poser le capot. Le capot fait 35 mm de côté : un Module 3 y entre, une caméra HQ non.
Montage


Absente de la nomenclature amont, et nécessaire quand même. Dimensionnez selon la branche : la branche sans IA tient en une poignée de fichiers Python et 16 Go y sont généreux, tandis que la branche main tire 250 Mo de modèles Hailo par-dessus une installation de HailoRT, ce qui met le plancher raisonnable à 32 Go. Prenez une carte A1 ou A2 : la différence se voit au temps de démarrage et à la pause de chargement des tables de démarche, pas sur le débit annoncé.
Montage
Pour tout ce qui se passe avant que le pack existe : installer le système, activer le port série, programmer le Pico, lancer le script de mise à zéro. Une Pi 5 réclame 5,1 V sous 5 A pour s'autoriser son budget périphérique complet, et une alimentation sous-dimensionnée se manifeste par une Pi qui redémarre à l'instant où douze servos bougent. Gardez-la sur l'établi ensuite : toute séance logicielle est plus simple sur le secteur que sur le pack.
Montage
Quatre accus 18650 en série donnent 14,8 V nominaux, 16,8 V chargés, derrière un BMS 4S qui les équilibre et les protège. L'interrupteur ne coupe que le VCC. En aval, deux abaisseurs sont branchés en parallèle, pas en série, et ils sont réglés à des tensions différentes : l'un à 5 V pour la Raspberry Pi, l'autre à 6 V pour les servos, parce qu'un MG92B est sensiblement plus vif en 6 V qu'en 5 V et que la Pi n'y survivrait pas. Le module 5 V est le cas particulier : le projet vous fait couper sa fiche de sortie pour souder à la place une prise USB-C mâle, polarité respectée, afin d'alimenter la Pi par son entrée normale. Deux choses méritent ici plus d'attention que l'instruction amont ne leur en donne. La première est l'ordre des opérations : les accus entrent en dernier, une fois les connecteurs soudés et le BMS dans son support, et le contrôle consiste à voir les deux abaisseurs s'allumer en rouge quand on bascule l'interrupteur. La seconde est écrite en gras chez le projet et justifie ce schéma : la masse de l'alimentation doit être soudée à celle du Pico. Sans référence commune, les impulsions servo ne veulent rien dire, et douze pattes partent au hasard.
Quatre accus en série, tenus dans le fond de caisse par des connecteurs soudés plutôt que par un coupleur du commerce — le projet imprime un support de BMS et utilise un jeu de quatre connecteurs mâles et quatre femelles. La liste ci-dessous mélange les cellules nues avec les coupleurs, modules de protection et chargeurs que la même requête remonte ; ce montage n'utilise rien de tout cela, les accus se logent dans un berceau imprimé et reçoivent directement leurs connecteurs. Achetez-les appariées : quatre cellules de même marque, même lot et même état de charge, car un pack 4S s'équilibre sur sa plus mauvaise. Des cellules non protégées sont ce qu'il faut ici, puisque c'est le travail du BMS.
Montage
La carte de protection et d'équilibrage des quatre cellules, posée dans son support imprimé au fond de la caisse. Le projet est net à son sujet : un câblage erroné peut endommager le BMS par la suite, voire provoquer un court-circuit. Dimensionnez-le sur le rail servo, pas sur la Pi : douze MG92B qui bloquent ensemble tirent bien plus que leur consommation au repos, et une limite de décharge choisie sur la moyenne se déclenche en pleine foulée. L'essentiel de ce que ce catalogue range sous cette rubrique est de la protection 3S pour packs 18650 ; c'est une carte 4S avec fils d'équilibrage qu'il faut chercher.
Montage


Le projet spécifie deux Henge UBEC 6 A, l'un réglé à 5 V pour la Raspberry Pi et l'autre à 6 V pour les servos, tous deux alimentés depuis la sortie de l'interrupteur et tous deux à la masse du BMS. Deux choses décident du choix : une tension de sortie réellement sélectionnable, puisque c'est le réglage 6 V qui rend le MG92B vif, et un courant continu qui tient quand douze servos chargent ensemble. Six ampères ne sont pas généreux ici, c'est le chiffre de travail. Le module 5 V est celui que l'on modifie : on lui coupe sa fiche de sortie pour souder à la place une prise USB-C mâle.
Montage


Un interrupteur qui ne coupe que le VCC, et une embase 3,5 x 1,3 mm pour la charge, tous deux montés à travers le fond de caisse et câblés selon le schéma amont. Gardez en tête ce que l'interrupteur ne fait pas : il ne sépare pas le pack du BMS, donc le robot n'est jamais totalement mort tant que les accus sont dedans. C'est normal pour cette topologie, et c'est une raison de retirer une cellule plutôt que de se fier à l'interrupteur quand on rentre ressouder quelque chose.
Montage
Le projet demande un demi-mètre de rouge et autant de noir en 0,5 mm² ou 0,75 mm², plus du jaune AWG24 pour le signal. L'isolant silicone vaut ici la différence pour une raison propre à ce montage : les huit connecteurs de puissance et les deux abaisseurs sont tassés dans une coque dont le couvercle vient ensuite se visser dessus, et un isolant PVC passé près d'un fer se fend quand on le plie dans un espace aussi contraint.
Montage
Il n'y a pas de carte à acheter. Le projet vous fait découper deux morceaux de plaque à pastilles en 30 x 40 mm, souder sur chacun six groupes de trois broches rouge, noir et jaune, ajouter une embase femelle à quatre broches pour la centrale inertielle, relier les deux demi-cartes à un Pico 2 et relier le Pico à une embase GPIO 40 broches qui se clipse sur la Pi. C'est tout le contrôleur de servos : une quarantaine de points de soudure, aucun composant. La page amont porte cinq photographies des états intermédiaires et un schéma de câblage, et il vaut mieux les ouvrir côte à côte avant de commencer, parce que la place de chaque demi-carte sous le couvercle décide de la longueur des fils de servo. Programmez le Pico avant de le souder, pas après : bouton maintenu, câble USB, on dépose le firmware, et seulement ensuite on le fixe. Ce qui amène la chose à savoir avant de commander quoi que ce soit. Le firmware que l'instruction appelle servo_controller n'est pas dans le dépôt, sur aucune des deux branches, et il n'est pas non plus dans la liste de fichiers du projet. Tout ce qui est au-dessus de la liaison série est publié ; les vingt lignes en dessous qui transforment voie;angle en train d'impulsions ne le sont pas. Prévoyez de les écrire, ce qui sur un RP2350 est une après-midi, ou demandez le fichier à l'auteur.
Une plaque de prototypage de 60 x 40 mm, coupée en deux moitiés de 30 x 40 mm, une par groupe de six servos. Vérifiez une chose sur ce que la liste remonte : il faut une plaque à pastilles métallisées, à souder, et non une platine d'essai sans soudure. Les deux se rangent au même endroit et se nomment presque pareil, et une seule survit à un robot qui marche. Coupez avant de souder, car rayer une plaque déjà peuplée est le meilleur moyen d'arracher une pastille.
Montage
Six groupes de trois broches par demi-carte, en rouge, noir et jaune, pour qu'un fil de servo ne puisse entrer que dans un sens. Le code couleur est tout le dispositif de sécurité de cette carte : rien d'autre n'empêche de brancher un servo à l'envers, et un MG92B à l'envers est un MG92B mort. Ajoutez une embase femelle à quatre broches de l'autre côté d'une des moitiés, pour la centrale inertielle.
Montage


Une embase femelle 2x20 au pas de 2,54 mm, soudée au câblage du Pico et enfichée sur le connecteur GPIO de la Pi. Elle porte trois choses et pas une de plus : la liaison série vers le Pico, la paire I²C vers la centrale inertielle, et la masse. Tout le reste de ces quarante broches ne sert pas, ce qu'il vaut mieux savoir avant de partir en chasse d'une panne : la majorité du connecteur est du poids mort par conception.
Montage
Le RP2350 qui tient les douze trains d'impulsions, programmé avant d'être soudé : bouton maintenu, câble USB, on dépose le firmware. Et la réserve qui décide si ce montage aboutit. Le fichier que l'instruction amont appelle servo_controller n'est pas publié — ni sur l'une ou l'autre branche du dépôt, ni dans la liste de fichiers du projet. Ce que le Pico doit faire est pourtant entièrement spécifié par le code d'en face : lire des lignes voie;angle sur la liaison série à 230 400 bauds, angle au dixième de degré, et piloter douze voies PWM. Le refaire sur un RP2350 est une après-midi en MicroPython ou avec le SDK Pico, mais c'est un travail dont la nomenclature ne prévient pas.
Montage


Le projet utilise une WitMotion WT901, lue par la Pi en I²C à l'adresse 0x50 par l'embase à quatre broches de la carte servo — et non par le Pico. Le pilote de devices/wt901.py y lit le roulis, le tangage, le lacet, la température et les trois axes du magnétomètre dans des registres uniques, et test_stabilisation.py les injecte directement dans la matrice de rotation du corps pour garder la plateforme à plat. Aucune boutique indexée ici ne tient WitMotion : les pièces ci-dessous sont les équivalents que ce catalogue possède, et chacune demandera de réécrire la carte de registres de devices/wt901.py pour le composant réellement acheté, soit une trentaine de lignes.
Montage
C'est la phase où l'ordre des opérations fait toute la difficulté. Douze servos doivent être amenés à 90 degrés AVANT que leurs palonniers n'entrent dans les pièces imprimées, parce qu'un palonnier ne s'indexe que par pas de quelques degrés et qu'un servo monté de travers ne se rattrape qu'en démontant la patte. Donc : on assemble les quatre corps de cuisse avec leurs huit servos en passant les fils par les trous, on branche les douze sur la carte, on alimente le rail servo, on démarre la Pi, on lance settings/servo_zero.py, et seulement ensuite on pose les palonniers. Les servos du bas entrent à 90 degrés, palonnier recoupé et vissé avec la visserie du kit servo ; les servos de patte suivent, maintenus en position par la carte pendant qu'on aligne la face supérieure du tibia sur la cuisse. Les pieds en dernier, puis le couvercle inférieur. Deux avertissements viennent du projet, un troisième du code. Le projet donne comme causes de pattes qui bougent mal les mauvais numéros de broches et le zéro non fait avant assemblage, et propose delta_a, delta_b et delta_c comme correction par patte une fois monté. Le code en ajoute une : servo_zero.py est livré avec la plupart de ses boucles en commentaire, et la seule boucle active parcourt le groupe B en appliquant les corrections du groupe C. Lisez-le avant de le lancer, pas après.
Trois par patte : rotation de hanche, tangage de cuisse, genou. Le projet nomme le TowerPro MG92B et dit clairement que le MG90 n'est pas recommandé — les deux partagent un boîtier, donc les pièces imprimées acceptent l'un comme l'autre, et seuls le train d'engrenages et le couple changent. La distinction n'est pas cosmétique sur un robot dont toute la masse pend à douze d'entre eux à chaque pas. Ce qu'il faut vérifier face au MG92B en cas de substitution : engrenages métalliques, environ 3 kg·cm sous 6 V, et le boîtier standard de 22,8 x 12 x 22,5 mm, puisque les trois carters de patte sont dessinés autour exactement de cette boîte. Comptez aussi la visserie de palonnier, un palonnier par servo étant recoupé et vissé dans une pièce imprimée.
Montage
Quarante-six vis, et les tailles ne sont pas interchangeables : trente-deux M2x8 pour les servos et les carters, dix M2x10, quatre M2x15 pour les capots de carter, quatre M3x10 pour fermer les deux moitiés de caisse, plus du M2,5 pour la Raspberry Pi. Toutes se taraudent dans du plastique imprimé. Rien ici ne demande d'écrou ni d'insert, ce qui veut dire aussi que rien ne pardonne d'être vissé deux fois dans le même trou : le second passage l'arrache.
Montage
Les pièces sont sélectionnées par le moteur de recherche sur le prix, le stock et les caractéristiques, jamais sur la commission d'affiliation. Robotitem ne teste pas ces produits.