Carte commande 26 servos 5 leds pour humanoide
Date d'initialisation : Octobre 2005
État actuel : Terminé
Sommaire
![]()
Description générale
L'objectif de cette carte est de pouvoir piloter jusqu'à 26 servos et 5 leds par l'intermédiaire du port série d'un PC pour contrôler un robot humanoïde.
Elle utilise un pic 18F452 à 10MHz et tire parti de toutes ses 33 IO. Les servos sont contrôlés sur 30 positions différentes.
Le pic génère en continu les signaux pour les servos et les led. Il se met en interruption à l'arrivée d'octets sur le port série à 57600bauds. Il suffit d'envoyer 0xFF en signal de start, puis l'adresse du servo/led (ex: 0x00 pour le premier servo) puis la commande entre 0 et 30 (ex: 0x10). Après chaque transfert d'octet, le pic répond par le caractère ASCII \"o\". S'il y a eu une erreur, il envoie "e" et il faut reprendre un nouveau bit de start 0xFF.
Par précaution, on préfèrera n'envoyer de commande au pic que pendant le laps de temps ou il ne génère pas de signal aux servos (ce qui laisse 10ms toutes les 20ms). Le pic signal qu'il est prêt à recevoir des instructions en envoyant "a" et annonce la fin en envoyant "b".
Bien sûr, ceci n'est qu'un code de test fait assez rapidement et qui répond à des besoins particuliers. Si vous avez d'autres besoins, libre à vous de le modifier :)
Remarque : une nouvelle carte de contrôle de servomoteurs, basée sur un meilleur concept et aux performances bien supérieures, est disponible ici : carte de gestion de 12 servomoteurs
Photos
La carte est intégrée dans (et protégée par) une cage métallique qui a un air de sac à dos.
Schéma et Circuit Imprimé
Code source
Commentaires des visiteurs
Par Jean-Marc le 19/12/2005
Salut,
Pour info, mais peut être le sais tu déjà, tu peux utiliser la commande export sous eagle pour exporter une image du schéma ou du circuit.
Par Pierre-Luc le 26/12/2005
Hé ! impressionnant. Dis donc, tu as aussi construit toute la mécanique de ce robot ? As-tu trouvé une aubaine pour les servomoteurs, car au prix normal... ?
Bon travail.
Par robokido le 24/01/2006
felicitation la meca c'est du grand art!!!
C'est vraiment impressionnant.
Mais quels etaient tes moyens d'usinage?
Par Danysurf le 20/02/2006
Juste pour info, totof a fait cette carte pour un robot vendu sur robotpolis.com je crois.
Quelqu'un d'autre s'est occupé de la méca. Mais ça reste du beau boulot ;)
Par Totofweb le 25/02/2006
Non en réalité Dany ce n'est pas exactement ça. Ceci est une carte prototype pour qu'un ami se crédibilise face à des banquiers pour ensuite monter un projet commercial de robots qui ensuite seront vendus notamment sur robotpolis (mais pas seulement) et seront plus élaborés.
Par lolo1 le 27/03/2006
Serait il possible de voir une video de l'humanoide?
En tout, tres belle bete
Par Totofweb le 31/03/2006
Comme je l'ai dit, il s'agit d'un proto très basique d'un projet commercial (encore en développement mais nettement plus avancé à ce jour). Je ne peux donc pas en divulguer davantage tant que ce projet ne sera pas en commercialisation.
Par Chm le 28/03/2007
Salut,
bon boulot! Quel logiciel utilises-tu pour la modélisation 3D du circuit?
Par Totofweb le 28/03/2007
Chm> J'utilise le plugin Eagle \"Eagle 3D\" qui est un script ULP qu'il faut appeler depuis le Board Editor d'Eagle. Tu peux le trouver ici : www.matwei.de/doku.php?id=en:eagle3d:eagle3d
Par loic le 16/04/2007
bonjour ! je suis étudiant et je dois réaliser un projet dans lequel je dois construire une table qui doit pourvoir pivoter en 3D et etre controlée par deux joueurs sur des PC [comme un terrain de foot mais sans les joueurs..]le but étant de creer un jeu avec une balle sur la table et deux buts de chaque coté de ta table...
pouvez vous m'aider ? me conseiller ?
je ne devrait pas utiliser plus de 6 moteurs pour eviter de trop complexifer l'électronique!
Merci d'avance...
Par socratos le 05/07/2007
Bonjour, je suis entrain de réaliser un projet, je suis nouveau dans le monde des PIC, j'ai choisis le PIC 16F84, mais j'ai du mal à écrire le programme en assembleur sur MPLAB, je vous décris le projet:
je dois contoler par un PC le déclenchement de deux caméras, et ces deux flashs avec un retard de déclenchement entre les deux caméras que je peux définir par l'interface PC, le declenchement est de l'ordre de 5 msec, le controle aussi de deux axes motorisés, chaque axe déplace une caméra.
Merci d'avance pour votre aide.
Par Totofweb le 06/07/2007
Socratos> Votre commentaire n'a aucun rapport avec le projet présenté ici. Si vous recherchez une assistance pour un projet électronique personnel, je vous conseille de vous tourner vers des forums spécialisés, comme par exemple celui de Planète-Sciences (www.planete-sciences.org/forums/ rubrique "Robotique/Robotics"). Vous bénéficierez alors de l'aide de toute une communauté de passionnés d'électronique francophones (dont je fais partie).
Par Filipaillou le 22/07/2007
Salut, je souhaite commander des servomoteurs(seulement 2:)) avec un pic qui recoit les commandes par liaison série. Etant donné que je travaille moi aussi sous CSS, ton code m'inspire beaucoup cependant il y a quelques détails au niveau du timing que je ne comprends pas trop : pourquoi insère tu un délais de 45µs dans tes boucles de génération d'impulsions( pk cette valeur??)
Merçi
Par Totofweb le 22/07/2007
Filipaillou> Pour piloter seulement deux servomoteurs, ce genre de code n'est pas du tout adapté. Je te conseille plutôt une génération des signaux par interruption sur timer comme je l'ai fait pour le robot Servobot (voir dans le menu de gauche du site).
Par filipaillou le 22/07/2007
Merçi pour ta réponse, en fait j'ai repondu moi même à mes questions au sujet de ton code source. Je crois avoir tout compris même si ça n'étais pas évident. De mon côté je travaille avec un 16F648 à 4mhz et liaison série 9600bds, j'ai bien compris qu'il fallait recalculer tous les paramètres liés au temps d'éxecution chose que j'ai faite et qui a l'air de fonctionner. Il est vrai que j'aurai pu utiliser les interruptions mais avec mon quartz de 4 mhz c un peu limite j'ai déjà expérimenté et ça ne fonctionne pas bien sous CCS c'est pourquoi je vais utiliser des tempos simples. En tout cas merçi pour ta réponse.
Par thot le 29/11/2007
bonjour,
je me demandais si on pouvait contrôler le pic à l'aide d'un recpeteur FM (type modelisme 9voies) pour piloter ce Robot, le pic servant à "organiser" les mouvements des differents organes.
merci du tuyau.
Par Totofweb le 29/11/2007
Thot> Il est en principe possible pour un microcontrôleur d'interpréter les données sortant d'un récepteur de modélisme, il suffit pour cela d'avoir une petite fonction interne utilisant des interruptions pour en analyser le signal. Une fois que tu as ce signal d'entrée, tu en fais ce que tu veux et tu en déduis une commande pour ton robot (quel qu'il soit) en appelant les séquences de marche que tu auras préalablement définies. Mais ne t'imagines pas que le fait de contrôler le robot par une télécommande court-circuitera une grande partie de la difficulté de contrôle, loin de là.
Par aek le 07/04/2008
comment exporte un schema electrique exemple micro emetteur espion du site internet vers le logiciel eagle pour realise le circuit imprime
Par A.L.L.S le 16/04/2008
bonjour
je débute dans la robotique et j'aurais besoin de quelques conseils (en rapport avec cette Carte commande)
* Est-il possible de commander les servomoteurs comme ceux d'un véhicule télécommandé ?
*Si possible, à partir de quel logiciel peut-on contrôler les 26 servomoteurs ?
Par Totofweb le 16/04/2008
ALLS> Les servomoteurs dont il est question sont les mêmes que ceux utilisés en modélisme (ils sont d'ailleurs achetés dans des magasins de modélisme). C'est à vous de créer votre logiciel de contrôle, c'est le mieux pour avoir un logiciel bien adapté à vos besoins.
Par sangoku le 17/04/2008
Salut,
Je débute aussi, j'aurais voulu savoir si c'est possible d'avoir la liste des composant utilisé pour cette carte . Merci et bravo pour le taf.
Par ElectroCorp le 29/04/2008
Bonjour, Peut on programmer directement le pic via cette carte?
Par Totofweb le 29/04/2008
Pour programmer un PIC, il faut un programmateur. Si vous avez un programmateur, vous pouvez mettre en place un bootloader et par la suite vous passer de votre programmateur et utiliser seulement la liaison série de cette carte, mais il faut tout de même passer la toute première fois par un programmateur classique.
Par sandra le 01/05/2008
salut je suis algerienne prof je cherche un sujets simple a réaliser en se qui connsernne l automatisation pour des stagaires si vous vouler maides et j espere que sa sera un sujets que vous aves déja exploiter je vien de finnires avec mes stageres la realisation d une carte de variateur de vitesse pour mini persseuce et une carte de" regulation de vitesse pour petie moteur mais mantenant je vous qu il réalise une carte qui contien un moteur pas apas alor chére Mr monsieur j attend votre aide au plus vites possible merci
Par zakaria le 21/06/2008
je suis lebanise je trouve que vous faites un beau projet et j\\\'aime etre comme vous.quel type de moteur vous choisis?
Par A.Bradley le 14/07/2008
command programmer un moteur pas a pas par un automate
Par #6 le 20/08/2009
J'envisage la construction de ce genre de bête. Compte-tenu de la date du post initial, pouvez-vous en dire plus sur l'avancement (photos) ? les problèmes rencontrés (mouvements, nombre de servos, poids...) ?
la puissance des servos (F-3003 il me semble) ? -merci-
Laisser un commentaire
Merci de ne poster ici que des questions ou commentaires concernant réellement le projet présenté sur cette page. Si vous recherchez de l'aide pour réaliser vos propres projets, merci de vous tourner vers des forums appropriés tel que celui de Planète-Sciences (où je suis très présent).
