Nous sommes le Dim 21 Jan 2018, 18:58


patopion - (petite base bipède humanoide)

Faites de votre bébé la star du web !!!
  • Auteur
  • Message
Hors ligne
Avatar de l’utilisateur

philopat

Membre asso caliban

  • Messages: 1720
  • Inscription: Mer 5 Nov 2008, 01:19
  • Localisation: Jonzac

patopion - (petite base bipède humanoide)

Message non luLun 15 Avr 2013, 23:18

bonjour à toutes et à tous !

je vous montre ce que j'ai commencé il y a une semaine, avec les quelques servos qui me restaient. ::-D:
il s'agit d'un tout petit bipède sur la base d'un humanoide que j'ai baptisé "Patopion" ::):
je pense que ça restera comme cela en gros, je veux dire juste les jambes quoi (enfin si ça veut bien marcher comme ça..)
-
voici les images de ce debut de projet :
Image

Image

l'idée, c'est de parvenir à faire marcher ce petit truc dès que possible sans ajouter de servos. (sauf si ça ne veut pas tenir debout! :lol: ) actuellement il n'y en a que 8 .
les chevilles sont assez raides grace aux ressorts.
je voudrais parvenir à lier le mouvement des pieds avec celui des hanches.. mais c'est pas encore fait :roll:

je compte l'équiper bientot d'une mini arduino, de capteurs de force (sous les pieds) , et d'un accelerometre 3 axes, pour voir. je compte acheter 2 batteries li-po comme celle qui est dans mon appareil photo. ça m'evitera l'achat d'un chargeur spécifique.
j'installerais certainement des compensateurs de poids (des élastiques) apres les premieres experimentations de la marche...
voilà. ce n'est que le debut là... :ygeek:
-

-
phil
ce qui voit , se voit dans les yeux de ceux qui nous regardent...
Hors ligne
Avatar de l’utilisateur

leon

Roboticien confirmé

  • Messages: 634
  • Inscription: Dim 19 Juil 2009, 07:57

Re: patopion - (petite base bipède humanoide)

Message non luMar 16 Avr 2013, 19:13

Ca m'a l'air intéressant! Le look est sympa en tout cas.

J'ai 2 questions pour toi:
1) quel type d'algorithmes est-ce que tu comptes implémenter? Du ZMP? Ou alors quelque chose de plus exotique?

2) C'est vrai que c'est assez inhabituel de ne pas avoir d'actionneur au niveau de la cheville. Comment est-ce que tu comptes t'en sortir? Pour amorter un pas vers l'avant à partir d'une position statique, par exemple, il faut normalement commencer par se pencher vers l'avant, et/ou avancer un pied par rapport à l'autre. Mais sans torse et sans cheville actionnée, comment comptes-tu faire?

Leon.
BOB4, mon drone hélicoptère autonome d'intérieur http://heli.bot.free.fr/
BOB3, mon robot autonome d'intérieur avec WiFi + FoxBoard Linux http://ze.bot.free.fr/
Hors ligne
Avatar de l’utilisateur

philopat

Membre asso caliban

  • Messages: 1720
  • Inscription: Mer 5 Nov 2008, 01:19
  • Localisation: Jonzac

Re: patopion - (petite base bipède humanoide)

Message non luMar 16 Avr 2013, 19:43

salut leon!

leon a écrit:Ca m'a l'air intéressant! Le look est sympa en tout cas.

merci ::):

leon a écrit:1) quel type d'algorithmes est-ce que tu comptes implémenter? Du ZMP? Ou alors quelque chose de plus exotique?

je vais improviser. j'ai constaté avec la programmation du quadrupede que ce n'est pas si compliqué que ça de s'adapter à des contraintes de marche meme qui paraissent au depart impossibles à solutionner .(je ne pensais pas pouvoir faire tourner le quadrupede , et pourtant j'y suis parvenu, meme dans un petit rayon)
la methode : j'essaye une idée, je filme , puis j'analyse les defauts à corriger grace à la video ... ;)
-


leon a écrit:2) C'est vrai que c'est assez inhabituel de ne pas avoir d'actionneur au niveau de la cheville. Comment est-ce que tu comptes t'en sortir? Pour amorter un pas vers l'avant à partir d'une position statique, par exemple, il faut normalement commencer par se pencher vers l'avant, et/ou avancer un pied par rapport à l'autre. Mais sans torse et sans cheville actionnée, comment comptes-tu faire?

ce qui me réconforte, c'est que certaines personnes handicapées s'en sortent assez bien sans action musculaire au niveau de la cheville.mais je vais bien voir.. peut etre je n'y parviendrais pas... :roll:
pour info, les chevilles sont des cardans avec un ressort qui tend le pied à revenir à une position presque horizontale.
cette elesticité du ressort permet le deplacement et la raideur le maintien sur 1 pied.
mais je compte essayer de lier ces mouvements du pied necessaires pour le maintien debout, aux mouvements des hanches qui donnent justement le but du déplacement. donc si je parviens à ça , je pense que ce sera bon.
par le biais soient de petits cables , soient de petites tringleries de pantographe. :ygeek:

-
phil
ce qui voit , se voit dans les yeux de ceux qui nous regardent...
Hors ligne
Avatar de l’utilisateur

philopat

Membre asso caliban

  • Messages: 1720
  • Inscription: Mer 5 Nov 2008, 01:19
  • Localisation: Jonzac

Re: patopion - (petite base bipède humanoide)

Message non luMer 17 Avr 2013, 01:48

hello, les amateurs de petits trucs à 2 pattes! :D

sans avoir encore préparé l'electronique embarquée, je viens de faire un premier test avec un petit montage exterieur au robot. le robot est connecté à une arduino uno ordinaire et à un bloc d'accus (6x 1v2) , ainsi qu'à un petit joystick pour le controle pendant le test.

voici une image montrant la configuration:
(cliquer sur l'image pour accèder à la taille originale)
Image

j'ai juste évalué son potentiel à tenir debout par lui-même , ainsi que la possibilité qu'il puisse lever les jambes...
pour cela , j'ai fait un test de déhanchage puis de maintien des jambes à l'horizontal...
et b'en.. ça marche! ::): ::):
voici la petite vidéo de ce 1er test :
(cliquer sur l'image pour accéder à la vidéo)
Image
(http://www.archive-host.com/link/9aa171 ... fd9174.mp4)

durant ce test il est assez alourdi par les cables qui le tirent vers l'arrière.
à l'aide du joystick branché sur la carte arduino, je prend le contrôle de l'inclinaison latérale (déhanchage latéral pour déporter le centre de gravité), et de l'inclinaison frontale en le penchant plus ou moins vers l'avant ou l'arrière (articulation genoux et articulation cuisse).
-
:ygeek:

phil
ce qui voit , se voit dans les yeux de ceux qui nous regardent...
Hors ligne
Avatar de l’utilisateur

Esprit

Membre asso caliban

  • Messages: 1641
  • Inscription: Jeu 11 Fév 2010, 11:14
  • Localisation: Ottignies

Re: patopion - (petite base bipède humanoide)

Message non luMer 17 Avr 2013, 05:40

Salut Philo !

C'est assez sympa ce que tu nous as fait là ! ;)
Le fait qu'il tienne debout, c'est déjà une bonne chose. J'aime bien les pieds avec l'articulation semi-rigide au niveau des "orteils". C'est la suite de ce que tu as fait sur Calbinouille, non ? (J'espère que tu ne lui as pas coupé les pieds !)

Bonne continuation, c'est un chouette petit projet. ::):

PS: J'aime beaucoup le gif animé, ça donne déjà une impression de mouvement.
Simon, membre fondateur de l'Association Caliban Belgique,
.·° Mon blog : Le Chipoteur de Brols .·°·. L' Association Caliban Belgique °·.
"L'impossible, nous ne l'atteignons pas, mais il nous sert de lanterne." (René Char)
Hors ligne
Avatar de l’utilisateur

philopat

Membre asso caliban

  • Messages: 1720
  • Inscription: Mer 5 Nov 2008, 01:19
  • Localisation: Jonzac

Re: patopion - (petite base bipède humanoide)

Message non luMer 17 Avr 2013, 17:28

salut Esprit!

merci.
Esprit a écrit:J'aime bien les pieds avec l'articulation semi-rigide au niveau des "orteils". C'est la suite de ce que tu as fait sur Calbinouille, non ? (J'espère que tu ne lui as pas coupé les pieds !)

oui oui c'est exactement le meme principe et les memes materiaux. mais ce sont bien entendu d'autes petits pieds spécialement conçus pour celui-ci... à chacun son pied! ::-D:

-

voici le deuxième test pour comprendre comment faire marcher ce petit bipède.
j'ai ajouté des élastiques au niveau des hanches et des genoux, après avoir grillé un servo... (faute à la tension assez forte que je leur mets, ils chauffent!...)
(cliquez sur l'image pour accéder à la taille originale)
Image

et bien sûr , la petite vidéo.... :D
(cliquez sur l'image pour accéder à la vidéo)
Image
(http://www.archive-host.com/link/a9a457 ... c179b3.mp4)

on voit un début de la balance dynamique qui va permettre à ce petit machin de faire bientôt quelques pas ;)

-
phil
ce qui voit , se voit dans les yeux de ceux qui nous regardent...
Hors ligne
Avatar de l’utilisateur

philopat

Membre asso caliban

  • Messages: 1720
  • Inscription: Mer 5 Nov 2008, 01:19
  • Localisation: Jonzac

Re: patopion - (petite base bipède humanoide)

Message non luSam 20 Avr 2013, 00:32

bonjour


jusqu'ici j'ai programmé ce petit robot comme mon précédent le quadrupède raminagrobis.
c'est à dire un programme très simple , fait facilement et rapidement "en live".
c'est à dire on ecrit le code "directos" sans reflexion globale, puis on ajuste le tir par petites retouches.
-
le bilan, c'est que autant c'est faisable pour un animal qui tient plus ou moins en equilibre par lui meme, de maniere assez repetitive, que cette fois-ci ça devient inadapté pour ce type de bipède qui doit rester en équilibre dynamique.
le probleme qui fait surface, c'est le principe du programme séquentiel et non multitaches.
pour maitriser l'equilibre dynamique, ça necessite visiblement de mettre en mouvement de maniere assez synchrone plusieurs moteurs qui rentrent en ligne de compte dans le meme mouvement.
donc je ne peux plus utiliser la methode simpliste de faire des suites imbriquées d'ordres de motorisation, car ils n'interviennent pas assez de maniere synchrone pour le maintient de l'équilibre! :peur:
la solution que j'envisage: construire un petit séquenceur multipiste (comme en musique) qui traduit le deroulement de la vie du robot en une séquence d'actions agissant sur tous les moteurs simultanément.
meme pour les moteurs qui restent à l'arret , ou à mouvement inversé. (donc 1,0 ou -1)
-
donc voilà où j'en suis actuellement...: dans cette etude de séquenceur. :col:
-

phil
ce qui voit , se voit dans les yeux de ceux qui nous regardent...
Hors ligne
Avatar de l’utilisateur

R1D1

Bricoleur confirmé

  • Messages: 64
  • Inscription: Mar 18 Déc 2012, 13:43
  • Localisation: Paris & Banlieue

Re: patopion - (petite base bipède humanoide)

Message non luSam 20 Avr 2013, 09:02

Si ton problème est la mise à jour des valeurs de commande des moteurs / servos de manière séquentielle, une solution peut être de mettre à jour directement les valeurs du port de l'Arduino. Du coup, chaque sortie de la carte change simultanément et envoie donc l'ordre "en parallèle" à chaque moteur.

Je n'ai pas testé cette méthode, donc ça ne résout peut-être pas ton problème, mais ça vaut le coup d'essayer. ;)
Lien vers la doc correspondante : http://www.arduino.cc/en/Reference/PortManipulation
Calculo sed Ergo Sum.
Hors ligne
Avatar de l’utilisateur

Thot

Membre asso caliban

  • Messages: 1139
  • Inscription: Lun 23 Fév 2009, 23:53
  • Localisation: Toulouse con

Re: patopion - (petite base bipède humanoide)

Message non luSam 20 Avr 2013, 13:43

Beau petit robot, j'aime beaucoup l'approche. C'est ça qui est dur avec la bipédie, c'est que ça tient pas debout tout seul facilement.
Je pense pas que ce soit la première chose à coder dans un robot dynamique. pour moi c'est d'abord le rattrapé de chute qui doit être codé. Si celui-ci est stable, on converge vers la station debout... ou couchée ::-D:

Sinon, t'as essayé de mettre un buste un peu lourd sur les jambes pour éviter qu'il dépende des pieds ? et en plus ça appuiera sur les pieds pour qu'il adhère au sol.
Projet Marionnettes électriques
"Il n'y a rien de plus étrange pour l'homme que son image." RUR - Karel Capek
Hors ligne
Avatar de l’utilisateur

philopat

Membre asso caliban

  • Messages: 1720
  • Inscription: Mer 5 Nov 2008, 01:19
  • Localisation: Jonzac

Re: patopion - (petite base bipède humanoide)

Message non luSam 20 Avr 2013, 16:56

salut R1D1 et Thot!

@R1D1
R1D1 a écrit:Si ton problème est la mise à jour des valeurs de commande des moteurs / servos de manière séquentielle, une solution peut être de mettre à jour directement les valeurs du port de l'Arduino. Du coup, chaque sortie de la carte change simultanément et envoie donc l'ordre "en parallèle" à chaque moteur.

Je n'ai pas testé cette méthode, donc ça ne résout peut-être pas ton problème, mais ça vaut le coup d'essayer.
Lien vers la doc correspondante : http://www.arduino.cc/en/Reference/PortManipulation

merci R1D1, pour le tuyau. j'ai regardé, en trouvant une doc en français:
http://www.playarduino.fr/2009/11/booster-le-temps-de-reponse-de-votre-arduino.html#p4
et visiblement c'est faisable quand tu utilises les sorties digitales directement.tandis que pour les exploiter en PWM, pour les servos, c'est certainement tres compliqué car pour générer une longueur d'impulsion maitrisée, il faut avoir la main sur les interruptions du processeur. chose que la bibliotheque arduino des servo fait. pour faire pareil, je n'ai pas encore trouvé comment faire.
sinon , je me demande si ce n'est pas mieux de soulager la carte arduino de ça en laissant une autre carte s'occuper du role du controle des servos en simultanée.
la carte arduino actuellement, controle simultanement les ordres de depart, mais pas les mouvements des servo! donc il faut attendre que le servo se mette en place avant de faire de reformuler un ordre de servo , sinon , ça stoppe le mouvement du servo. et c'est ça qui m'empeche d'avoir un bon controle dynamique du robot. c'est assez galere.
-
le probleme a déjà été identifié par d'autres qui ont créer des cartes et des logiciels séquenceurs comme la ssc32 de lynxmotion (mais là , ce n'est pas approprié)

-------

@Thot!
Thot a écrit:Beau petit robot, j'aime beaucoup l'approche

merci mec! c'est normal, puisque je te suis de loin, je reste toujours fasciné par ce que tu fais, et je commence à m'y mettre! ::-D:

Thot a écrit:C'est ça qui est dur avec la bipédie, c'est que ça tient pas debout tout seul facilement.
Je pense pas que ce soit la première chose à coder dans un robot dynamique. pour moi c'est d'abord le rattrapé de chute qui doit être codé. Si celui-ci est stable, on converge vers la station debout... ou couchée

merci pour le tuyau! je trouve l'idée pas mal du tout! :bravo:
je vais voir si je peux faire quelque chose du genre... euh.. et b'en pas encore! d'abord , je voulais le faire marcher sans capteurs! donc ... :roll:

Thot a écrit:Sinon, t'as essayé de mettre un buste un peu lourd sur les jambes pour éviter qu'il dépende des pieds ? et en plus ça appuiera sur les pieds pour qu'il adhère au sol.

comme les moteurs sont à la limite de la charge supportable, je m'efforcerais de faire leger, une fois tout embarqué.
mais ça n'empeche pas que avec de la longueur le moent dinertie peut etre important meme sans trop de masse.
mais l'idée, c'est de réussir à faire marcher un truc comme ça (juste les jambes). ça m'a bluffé de voir certains robots de labo fonctionner tres bien comme çà.j'essaye d'atteindre ce petit rêve ;)


-
phil
ce qui voit , se voit dans les yeux de ceux qui nous regardent...
Hors ligne
Avatar de l’utilisateur

leon

Roboticien confirmé

  • Messages: 634
  • Inscription: Dim 19 Juil 2009, 07:57

Re: patopion - (petite base bipède humanoide)

Message non luSam 20 Avr 2013, 18:03

philopat a écrit:salut R1D1 et Thot!
merci R1D1, pour le tuyau. j'ai regardé, en trouvant une doc en français:
http://www.playarduino.fr/2009/11/booster-le-temps-de-reponse-de-votre-arduino.html#p4
et visiblement c'est faisable quand tu utilises les sorties digitales directement.tandis que pour les exploiter en PWM, pour les servos, c'est certainement tres compliqué car pour générer une longueur d'impulsion maitrisée, il faut avoir la main sur les interruptions du processeur. chose que la bibliotheque arduino des servo fait. pour faire pareil, je n'ai pas encore trouvé comment faire.
sinon , je me demande si ce n'est pas mieux de soulager la carte arduino de ça en laissant une autre carte s'occuper du role du controle des servos en simultanée.
J'avoue que je ne comprends pas. Piloter plusieurs servos simultannément, c'est déjà ce que tu fais, non? Quel serait l'intérêt d'une carte supplémentaire?

J'ai regardé rapidement le code de ton quadrupède. Si tu veux obtenir des mouvements fluides et simultannés, il faut que tu recalcules très régulièrement les consignes de tous les servos en même temps. Par exemple, une tâche "bas niveau" qui tourne toutes les 20ms, et qui met à jour la consigne de chaque servo en fonction de sa position précédente (20ms avant), de la position cible, et de la vitesse de consigne. Après, tu fais une tâche de plus haut niveau qui calcule les consignes haut niveau (position cible, vitesse) de chaque servo, en fonction de l'action à effectuer.


Leon.
BOB4, mon drone hélicoptère autonome d'intérieur http://heli.bot.free.fr/
BOB3, mon robot autonome d'intérieur avec WiFi + FoxBoard Linux http://ze.bot.free.fr/
Hors ligne
Avatar de l’utilisateur

philopat

Membre asso caliban

  • Messages: 1720
  • Inscription: Mer 5 Nov 2008, 01:19
  • Localisation: Jonzac

Re: patopion - (petite base bipède humanoide)

Message non luSam 20 Avr 2013, 20:52

excuse moi, léon, je n'ai pas du etre forcément très clair dans l'exposé du problème. :heu:

apparemment , quand tu donnes des ordres à tes servos, dans ton programme via le logiciel arduino, tu mets les intructions à la suite les unes des autres. ça tourne suffisamment vite pour que tu puisses considérer que les ordres sont donnés en simultanée entre 2 rafraichissement de 20ms de ce que voit le servomoteur.
or, l'impulsion qui controle le deplacement du servo, a une certaine durée. comme on le sait tous, dans un signal PWM , c'est la durée de l'impulsion, 1,5ms+/-1ms qui determine la position angulaire du servo.
et justement, dans la carte arduino, la durée de l'impulsion est construite par une routine exécutée par le microcontroleur. de plus, j'ai bien l'impression que c'est aussi le microcontroleur qui maintient le signal pendant que le servo s'execute. et c'est surtout là que le bas blesse. (au lieu que tout ceci soit gérer par un circuit intégré spécialisé)

lorsque tu executes une commande de servo qui necessite un certain temps de deplacement du servo, si tu ne fais pas temporiser le microcontroleur avec une instruction "delay(nombre de millisecondes) ", le controleur passe à l'execution de l'instruction suivante en stoppant la generation du signal précédent. ce qui stoppe la progression du servo , avant qu'il ait atteint la position souhaitée.
ça fait ça meme pour des petits deplacements. :evil:
donc c'est l'anarchie dans le controle des servos. il faut quasiment mesurer le temps de deplacement du servo à vide et sous charge pour savoir comment gerer le truc avec une tempo (genre une petite fonction).
du coup , ça fout tout en l'air au sujet de la simultanéité des ordres de commandes de servos.
les temporisations necessaires, en s'intercalant, décalent les controles de position des servos les uns par rapport aux autres.
-
pour pallier un peu à ça, j'avais sur un autre petit robot, completement haché les déplacements, pour faire un petit pas chacun son tour. mais là, pour une marche dynamique , ça ne fonctionne pas, car il faut de la velocité de deplacement de servo, qui n'est pas compatible avec le hachage fin comme je le faisais.
-

toutefois, ce que j'envisage, c'est d'essayer quand meme dans un premier un séquenceur numérique, dans le programme, mais je n'y crois pas beaucoup.
c'est pourquoi je disais que le mieux c'est simplement de décharger cette histoire de durée d'impulsion, et de durée de génération du signal pendant le deplacement du servo: ça deviendrait le role d'une carte dédiée, qui a tout son temps pour faire ses boucles. (en fait il manque un tampon mémoire et un moulin qui continue a envoyer le signal de la mémoire au servo)
je pense qu' 1 seconde de séquence suffirait.
-
à moins que d'ici là, je ne trouve une autre idée plus simple (comme par exemple utiliser la bonne carte microcontroleur si j'en trouve une qui va bien ) ^^
-
si il y a une anomalie dans ce que j'exprime, c'est peut etre que je ne connais pas le truc qu'il faut savoir... :?
-
phil
ce qui voit , se voit dans les yeux de ceux qui nous regardent...
Hors ligne
Avatar de l’utilisateur

leon

Roboticien confirmé

  • Messages: 634
  • Inscription: Dim 19 Juil 2009, 07:57

Re: patopion - (petite base bipède humanoide)

Message non luSam 20 Avr 2013, 21:36

philopat a écrit:excuse moi, léon, je n'ai pas du etre forcément très clair dans l'exposé du problème. :heu:

apparemment , quand tu donnes des ordres à tes servos, dans ton programme via le logiciel arduino, tu mets les intructions à la suite les unes des autres. ça tourne suffisamment vite pour que tu puisses considérer que les ordres sont donnés en simultanée entre 2 rafraichissement de 20ms de ce que voit le servomoteur.
or, l'impulsion qui controle le deplacement du servo, a une certaine durée. comme on le sait tous, dans un signal PWM , c'est la durée de l'impulsion, 1,5ms+/-1ms qui determine la position angulaire du servo.
et justement, dans la carte arduino, la durée de l'impulsion est construite par une routine exécutée par le microcontroleur. de plus, j'ai bien l'impression que c'est aussi le microcontroleur qui maintient le signal pendant que le servo s'execute. et c'est surtout là que le bas blesse. (au lieu que tout ceci soit gérer par un circuit intégré spécialisé)
Jusqu'ici, je confirme, mais ça n'est pas un problème. Les tops des servos sont générés en "tâche de fond", même quand tu n'appelles plus aucune fonction servo dans ton code.

lorsque tu executes une commande de servo qui necessite un certain temps de deplacement du servo, si tu ne fais pas temporiser le microcontroleur avec une instruction "delay(nombre de millisecondes) ", le controleur passe à l'execution de l'instruction suivante en stoppant la generation du signal précédent. ce qui stoppe la progression du servo , avant qu'il ait atteint la position souhaitée.
Ca me parait vraiment étrange, ce que tu décris. Ca n'est pas normal. Est-ce que tu as testé, avec un oscillo, un analyseur logique, voire simplement un multimètre, pour voir ce qu'il se passe réellement, et pour être certain de ce que tu constates? Les tops de servos seraient arrêtés? Sans que tu aies appelé "servo1.detach()" ? Si oui, ça n'est pas normal du tout. Noralement, tant que tu n'as pas appelé servo.detach, l'arduino continue à envoyer des tops de servos, avec la dernière position de consigne, quelle que soit l'instruction qu'il y a derrière. Vérifie ça pour en être certain... Normalement, la plupart des servos deviennent "mou" quand on ne leur envoie plus de consigne (plus de top).

Après, il est normal que tu aies du mettre des tempo, pour laisser le temps aux servos de se déplacer, en fonction de leur vitesse, du couple qu'ils ont à vaincre, et du déplacement total demandé. Mais ça n'a rien à voir avec le problème d'arrêt du signal de servo que tu nous décris.

Encore une fois, il ne me semble pas judicieux d'acheter un autre module externe juste parce que tu n'arrives pas à programmer ce que tu veux. Tu utilises quoi comme arduino?

Leon.
BOB4, mon drone hélicoptère autonome d'intérieur http://heli.bot.free.fr/
BOB3, mon robot autonome d'intérieur avec WiFi + FoxBoard Linux http://ze.bot.free.fr/
Hors ligne
Avatar de l’utilisateur

philopat

Membre asso caliban

  • Messages: 1720
  • Inscription: Mer 5 Nov 2008, 01:19
  • Localisation: Jonzac

Re: patopion - (petite base bipède humanoide)

Message non luSam 20 Avr 2013, 22:38

leon a écrit:Jusqu'ici, je confirme, mais ça n'est pas un problème. Les tops des servos sont générés en "tâche de fond", même quand tu n'appelles plus aucune fonction servo dans ton code.

oui, tu as raison. je suis d'accord avec ça.
sauf que des que tu mets une autre instruction de servo apres une premiere, ça coupe le signal de la premiere , tu vois?




leon a écrit:Ca me parait vraiment étrange, ce que tu décris. Ca n'est pas normal. Est-ce que tu as testé, avec un oscillo, un analyseur logique, voire simplement un multimètre, pour voir ce qu'il se passe réellement, et pour être certain de ce que tu constates? Les tops de servos seraient arrêtés? Sans que tu aies appelé "servo1.detach()" ? Si oui, ça n'est pas normal du tout. Noralement, tant que tu n'as pas appelé servo.detach, l'arduino continue à envoyer des tops de servos, avec la dernière position de consigne, quelle que soit l'instruction qu'il y a derrière. Vérifie ça pour en être certain... Normalement, la plupart des servos deviennent "mou" quand on ne leur envoie plus de consigne (plus de top).

je ne sais pas encore quoi mesurer avec l'oscillo pour te montrer ça. j'ai un vieux oscillo sans mémoire.je ne peux pas conserver le changement de signal pour le visualiser.(à moins que tu aies une idée de test)
par contre ce que je pourrais faire, c'est un prog tres simple, et filmer ce que ça fait avec et sans tempo intercallée.
je pense que tu as raison aussi sur ce point, je me suis encore mal expliqué ou de maniere érronée. c'est qu'une 2eme instruction de servo stoppe l'instruction en cours... voilà en effet les servo ne sont pas mou et sont maintenu en position selon la variable. mais bizarrement une instruction de servo derriere une autre stoppe l'action du servo en cours (non terminée).
remarque que avec tes bonnes questions, j'y vois plus clair tout d'un coup ! :D

leon a écrit:Encore une fois, il ne me semble pas judicieux d'acheter un autre module externe juste parce que tu n'arrives pas à programmer ce que tu veux. Tu utilises quoi comme arduino?

ça me fait ça avec toutes mes arduinos duemilanova et uno rev2. je n'ai pas encore essayé avec les mini arduino.

-
phil
ce qui voit , se voit dans les yeux de ceux qui nous regardent...
Hors ligne
Avatar de l’utilisateur

philopat

Membre asso caliban

  • Messages: 1720
  • Inscription: Mer 5 Nov 2008, 01:19
  • Localisation: Jonzac

Re: patopion - (petite base bipède humanoide)

Message non luLun 22 Avr 2013, 05:11

hello!

je suis parvenu à une étape gratifiante! :D :D :D
Patopion a marché! il a fait ses premiers pas... ::):
(donc c'est possible...)

(cliquez sur l'image pour accéder à la vidéo)
Image
(patopion_premiers_pas_22avr2013_1366602159.mp4)


pour le moment il exécute un petit programme normal d'animation sans séquenceur et sans capteurs.

-
phil
ce qui voit , se voit dans les yeux de ceux qui nous regardent...
Suivante

Retourner vers Vos réalisations

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité

cron