- Robot Maker
- → Affichage d'un profil : Messages: VincentB
VincentB
Inscrit(e) (le) 09 déc. 2011Déconnecté Dernière activité févr. 16 2016 06:57





Statistiques de la communauté
- Groupe Membres
- Messages 50
- Visites sur le profil 6 851
- Titre Membre
- Âge 61 ans
- Date de naissance Novembre 13, 1963
-
Gender
Homme
-
Location
Beziers - France
-
Interests
Modélisme, planeurs anciens, internet, photo, video...
0
Neutral
Outils utilisateur
Amis
VincentB n'a pas encore ajouté d'ami.
Derniers visiteurs
Messages que j'ai postés
Dans le sujet : Animation pilote dans une maquette
29 janvier 2012 - 07:21
L'améliorer, oui en principe, je voulais intégrer la petite carte mp3 ou racheter un shield wave ou mp3 qui s'installerait plus facilement, sinon d'autres projets, oui mais ce sera en fin d'année, là il me faut déjà terminer ce planeur encore 4 mois de travail. Tu en avais acheté une de carte mp3? tu l'as faite marcher?
Dans le sujet : Animation pilote dans une maquette
29 janvier 2012 - 06:20
Bonjour,
Oui l'aide m'avait été donné par le forum Arduino, les petits mouvements de tête, aléatoire avec random et modulo pour atténuer les saccades, le code est sur ma page web, ainsi que la vidéo http://www.retroplane.net/mira3/page2.htm
Oui l'aide m'avait été donné par le forum Arduino, les petits mouvements de tête, aléatoire avec random et modulo pour atténuer les saccades, le code est sur ma page web, ainsi que la vidéo http://www.retroplane.net/mira3/page2.htm
Dans le sujet : Animation pilote dans une maquette
06 janvier 2012 - 09:41
Bon j'ai reessayé plein de fois je ne comprend pas pourquoi ça ne marche pas, je vous remet le code raccourci pour mieux voir et avec des commentaires de mes soucis
#include <Servo.h> Servo bras; Servo tete; Servo machoire; int bra = 0; int tet = 0; int mache = 0; int bouton = 2; void setup() { bras.attach(3); tete.attach(5); machoire.attach(6); Serial.begin(9600); pinMode(bouton, INPUT); } void loop() { if (digitalRead(bouton) == HIGH) { delay(2000); //pause 2s avant commencer animation { for(bra = 90; bra>=50; bra-=1) //le bras se lève for(tet = 90; tet < 110; tet += 1) //je voudrais que la tête bouge en même temps que le bras se lève, mais avec ce code la tete bouge en boucle rapidement et le bras monte hyper lentement pendant 30s, en fait les delay ne sont pas pris en compte et gènent et seulement apres le reste de l'animation se joue { tete.write(tet); delay(20); //ce sont ces delay qui genent l'anim, si je les enlève ça marcherait mais les servo s'actionnent trop rapidement bras.write(bra); delay(20); //ce sont ces delay qui genent l'anim, si je les enlève ça marcherait mais les servo s'actionnent trop rapidement } } delay(4000); //le bras reste levé 4s for(bra = 50; bra < 90; bra += 1) //le bras se baisse { bras.write(bra); delay(20); } delay(100); for(tet = 90; tet < 130; tet += 1) //la tête tourne a droite de 40° { tete.write(tet); delay(15); } for(tet = 130; tet>=50; tet-=1) //la tête tourne a gauche de 80° { tete.write(tet); delay(15); } delay(100); for(tet = 50; tet < 110; tet += 1) //la tête revient vers la droite, décalé du centre de 20° { tete.write(tet); delay(20); } delay(300); int compteur = 0; while (compteur < 6) //la machoire s'actionne 6 fois { for(mache = 90; mache < 120; mache += 1) { machoire.write(mache); delay(4); } for(mache = 120; mache>=90; mache-=1) { machoire.write(mache); delay(4); } compteur++; } } }
Dans le sujet : Animation pilote dans une maquette
06 janvier 2012 - 06:17
et c'est quoi? on ne met plus loop?des commandes directes
c'est ce que je pensais avoir fait, mais je n'y arrive pas, je suppose que ça vient des parentheses mal placées? mais ça fait 2 jours que j'essaye des centaines de fois sans y arriver, donc là je peux pas faire plus, tant pis je sens que je vais abandonnerSoit tu mets dans la boucle les commandes pour plusieurs servos.

Dans le sujet : Animation pilote dans une maquette
05 janvier 2012 - 05:17
Bonjour tout le monde,
après avoir fait mon animation, je me rend compte que pour le réalisme, il faudrait que j'ai des petits mouvements de tête en même temps que mon pilote parle, et mouvements de tête en même temps que le bras bouge. Pour l'instant la programmation était faite en sorte d'avoir chaque servo qui marche les uns après les autres
ça fait 2 jours que je m'arrache les cheveux pour trouver le bon code, mais impossible d'y arriver, je sens que je vais tout abandonner
je vous mets ci dessous le code que j'ai cru comprendre qu'il faille faire, mais en fait ça lance le servo tete en boucle et rien d'autre se passe, alors que je pensais que ça aurait fait bouger la tête en même temps que le bras. J'avais presque reussit un autre code, mais là les delay n'étaient pas pris en compte, je ne sais pourquoi, donc les servo partaient à toute vitesse
j'espère que vous aller pouvoir m'aider et me donner le bon code, par exemple tout au début, pour faire bouger la tête en même temps que le bras, merci, je craaaque, snifff
après avoir fait mon animation, je me rend compte que pour le réalisme, il faudrait que j'ai des petits mouvements de tête en même temps que mon pilote parle, et mouvements de tête en même temps que le bras bouge. Pour l'instant la programmation était faite en sorte d'avoir chaque servo qui marche les uns après les autres
ça fait 2 jours que je m'arrache les cheveux pour trouver le bon code, mais impossible d'y arriver, je sens que je vais tout abandonner

je vous mets ci dessous le code que j'ai cru comprendre qu'il faille faire, mais en fait ça lance le servo tete en boucle et rien d'autre se passe, alors que je pensais que ça aurait fait bouger la tête en même temps que le bras. J'avais presque reussit un autre code, mais là les delay n'étaient pas pris en compte, je ne sais pourquoi, donc les servo partaient à toute vitesse
j'espère que vous aller pouvoir m'aider et me donner le bon code, par exemple tout au début, pour faire bouger la tête en même temps que le bras, merci, je craaaque, snifff
#include <Servo.h> Servo bras; Servo tete; Servo machoire; int bra = 0; int tet = 0; int mache = 0; int bouton = 2; void setup() { bras.attach(3); tete.attach(5); machoire.attach(6); Serial.begin(9600); pinMode(bouton, INPUT); } void loop() { if (digitalRead(bouton) == HIGH) { delay(2000); //pause avant demarrage for(bra = 90; bra>=50; bra-=1) { bras.write(bra); delay(30); for(tet = 90; tet>=70; tet-=1) { tete.write(tet); delay(30); } } delay(4000); for(bra = 50; bra < 90; bra += 1) { bras.write(bra); delay(20); } delay(100); for(tet = 90; tet < 130; tet += 1) { tete.write(tet); delay(15); } for(tet = 130; tet>=50; tet-=1) { tete.write(tet); delay(15); } delay(100); for(tet = 50; tet < 110; tet += 1) { tete.write(tet); delay(20); } delay(300); int compteur = 0; while (compteur < 6) { for(mache = 90; mache < 120; mache += 1) { machoire.write(mache); delay(4); } for(mache = 120; mache>=90; mache-=1) { machoire.write(mache); delay(4); } compteur++; } { delay(500); int compteur = 0; while (compteur < 5) { for(mache = 90; mache < 120; mache += 1) { machoire.write(mache); delay(3); } for(mache = 120; mache>=90; mache-=1) { machoire.write(mache); delay(3); } compteur++; } { delay(500); int compteur = 0; while (compteur < 15) { for(mache = 90; mache < 120; mache += 1) { machoire.write(mache); delay(3); } for(mache = 120; mache>=90; mache-=1) { machoire.write(mache); delay(3); } compteur++; } { for(tet = 110; tet>=75; tet-=1) { tete.write(tet); delay(15); } for(tet = 75; tet < 100; tet += 1) { tete.write(tet); delay(15); } int compteur = 0; while (compteur < 18) { for(mache = 90; mache < 120; mache += 1) { machoire.write(mache); delay(3); } for(mache = 120; mache>=90; mache-=1) { machoire.write(mache); delay(3); } compteur++; } { delay(500); int compteur = 0; while (compteur < 8) { for(mache = 90; mache < 120; mache += 1) { machoire.write(mache); delay(3); } for(mache = 120; mache>=90; mache-=1) { machoire.write(mache); delay(3); } compteur++; } { delay(1200); int compteur = 0; while (compteur < 12) { for(mache = 90; mache < 120; mache += 1) { machoire.write(mache); delay(3); } for(mache = 120; mache>=90; mache-=1) { machoire.write(mache); delay(3); } compteur++; } { delay(1000); int compteur = 0; while (compteur < 10) { for(mache = 90; mache < 120; mache += 1) { machoire.write(mache); delay(3); } for(mache = 120; mache>=90; mache-=1) { machoire.write(mache); delay(3); } compteur++; } } } } } } } delay(2000); for(bra = 90; bra>=50; bra-=1) { bras.write(bra); delay(30); } delay(4000); for(bra = 50; bra < 90; bra += 1) { bras.write(bra); delay(20); } delay(1000); for(tet = 100; tet>=60; tet-=1) { tete.write(tet); delay(20); } for(tet = 60; tet < 90; tet += 1) { tete.write(tet); delay(20); } } }
- Robot Maker
- → Affichage d'un profil : Messages: VincentB
- Privacy Policy