
Mon premier robot à deux roues
#102
Posté 24 juin 2012 - 08:21
oui mais je ne peux pas maintenant,je ne réussis pas a accéder au site du zéro,et vu ta réponses je doit en conclure que je n'est pas trouvé?ou pasPrends des cours de C, et tu verras tout de suite si tu as trouvé ou pas...
#104
Posté 24 juin 2012 - 08:55
Ca ne sert a rien de te lancer dans un projet de programmation tant que tu n'auras pas fait un minimum de cours pour comprendre comment ca marche. La robotique ce n'est pas du copier coller bete et méchant sans rien comprendre.
- julkien aime ceci
Malédiction du Créatif :
Plus vous avez d’idées et moins vous arrivez à les structurer.
#105
Posté 24 juin 2012 - 09:26
#include <Servo.h> #include <Ultrasonic.h> #define TRIGGER_PIN 12 #define ECHO_PIN 13 Ultrasonic ultrasonic(TRIGGER_PIN, ECHO_PIN); #define AVANT 1 #define ARRIERE 0 #define GAUCHE 2 #define DROITE 3 #define SERVOG 1 #define SERVOD 0 #define UPDDG 3 #define UPDDD 4 #define UPDDA 10 #define VMAX 5 Servo servog; Servo servod; int vLdr = 5; int getNeutral(int s) { if(s == SERVOG) return 86; else return 84; } void handleS(int s, int speed) { //Vitesse : // 0 -> 0; 1 -> 1; 2 -> 3; 3 -> 8; 4 -> 10; v => 5 -> 30 int tab[6] = {0,1,3,8,10,30}; int pos = getNeutral(s); int acc; if (speed < 0) acc = - tab[abs(speed)]; else acc = tab[speed]; if(s == SERVOG) servog.write(pos += acc); else servod.write(pos -= acc); } void move(int direction) { int m1 = 0, m2 = 0; switch(direction) { case DROITE: m1 = 1; m2 = -1; break; case GAUCHE: m1 = -1; m2 = 1; break; case AVANT: m1 = 1; m2 = 1; break; case ARRIERE: m1 = -1; m2 = -1; break; } handleS(SERVOG, m1*VMAX); handleS(SERVOD, m2*VMAX); } void setup() { pinMode(UPDDG, INPUT); pinMode(UPDDD, INPUT); pinMode(UPDDA, INPUT); Serial.begin(9600); servog.attach(10); servod.attach(9); move(AVANT); } void loop() { float cmMsec, inMsec; long microsec = ultrasonic.timing(); cmMsec = ultrasonic.convert(microsec, Ultrasonic::CM); inMsec = ultrasonic.convert(microsec, Ultrasonic::IN); Serial.print("MS: "); Serial.print(microsec); Serial.print(", CM: "); Serial.print(cmMsec); Serial.print(", IN: "); Serial.println(inMsec); delay(1000); if(microsec <= 360) { handleS(SERVOG, 0); handleS(SERVOD, VMAX); delay(1500); }else { handleS(SERVOG, VMAX); handleS(SERVOD, VMAX); } if(UPDDD==HIGH) { move(ARRIERE); delay(300); move(DROITE); delay(900); } else { handleS(SERVOG, VMAX); handleS(SERVOD, VMAX); } if(UPDDG==HIGH) { move(ARRIERE); delay(300); move(GAUCHE); delay(900); } else { handleS(SERVOG, VMAX); handleS(SERVOD, VMAX); } }
celui ci est-il bon?
pensez vous que je devrais crer un blog pour mon robot?
#106
Posté 24 juin 2012 - 09:51
a chaque fois que tu fais un code tu vas nous demander si c'est bon ?
Je te l'ai déjà dit fait toi un roby tu n'es pour le moment pas capable de faire autre chose!
- Black Templar aime ceci
#107
Posté 24 juin 2012 - 09:53
le roby est déja fait pour l'arduino je ne l'ait pas encore(la méga) et j'ai tellement bien rangé ma uno que je ne sais plus ou elle estMais tu as déjà l'arduino ?
a chaque fois que tu fais un code tu vas nous demander si c'est bon ?
Je te l'ai déjà dit fait toi un roby tu n'es pour le moment pas capable de faire autre chose!


#108
Posté 24 juin 2012 - 10:08
franchement Vu le premier robot que ta sorti ,le truc avec les tampon nettoyeur (moi perso j'appellerai sa de la me.... en barre) et t'en etais tellement fier et maintenant tu dis que t'a fais un Roby sans nous le montrer? Tu es le plus grand mythoman que j'ai vu dans le monde de la robotique
- julkien et Microrupteurman aiment ceci
#109
Posté 24 juin 2012 - 10:15
A force de mentir on (je) te croit plus
franchement Vu le premier robot que ta sorti ,le truc avec les tampon nettoyeur (moi perso j'appellerai sa de la me.... en barre) et t'en etais tellement fier et maintenant tu dis que t'a fais un Roby sans nous le montrer? Tu es le plus grand mythoman que j'ai vu dans le monde de la robotique
pour mon code je pense(et j'espere ) qu'il est bon,je recevrai le matos d'ici 2 a 3 semaines
cordialement(pour les autres)
rbot99
Modifié par rbot99, 24 juin 2012 - 10:28 .
- rbot99 aime ceci
#110
Posté 24 juin 2012 - 10:24
- Microrupteurman aime ceci
Page Facebook : https://www.facebook...appartelier2.0/
Page Twitter : https://twitter.com/2Appartelier (bateau seulement)
Boutique Robot-Maker : https://www.robot-ma...er-20/produits/
Besoin d'une impression 3D grand format ? Contactez moi !
#112
Posté 24 juin 2012 - 11:19
fonction de chaque ligne dans ton code.
Message modifier , sur la demande de Jbot , j'ai enlevé le code.
PS: Encore désolé Jbot.
#114
Posté 24 juin 2012 - 11:39
À aussi je demande a voir ton roby rbot99 , bien sûr avec des photos de ton roby , et non d'un roby pris sur le net , car on le serra , et avec son code, a et
a l'avenir évite de mentir , car ça commence a me prendre la téte tes histoires.
@Cordialemnt
je sore maintenant.
#115
Posté 25 juin 2012 - 12:36
#116
Posté 25 juin 2012 - 11:34
J'ai fait mes recherches grâce a son adresse IP son pseudo rbot99 et toute c'est adresse mail , et il son très concluent.
Je c'est toute la vérité sur lui , rbot99 vous avouera toute la vérité sur lui , si je vois qu'il ne dit rien , je le ferré a ça place.
Enfin, attendons que les droits d'écriture se remettent en place pour rbot99.
#117
Posté 25 juin 2012 - 12:22
c'est peut être excessif : il n'a finalement fait qu'un copier-coller d'une trentaine de lignes sur un bout de code bugué abandonné depuis 6 mois et il s'est fait mousser en soutenant quelques contre-vérités sans importance sur son expérience. C'est ni le premier ni le dernier à faire ce genre de trucs et il n'y a pas mort d'homme.Bon , j'ai parlé avec rbot99 sur skype , je lui et sorti les verres du nez.
J'ai fait mes recherches grâce a son adresse IP son pseudo rbot99 et toute c'est adresse mail , et il son très concluent.
Je c'est toute la vérité sur lui , rbot99 vous avouera toute la vérité sur lui , si je vois qu'il ne dit rien , je le ferré a ça place.
Enfin, attendons que les droits d'écriture se remettent en place pour rbot99.
#119
Posté 26 juin 2012 - 09:04
#include <Servo.h>//inclure bliblioteque pour les servo #include <Ultrasonic.h>//inclure la blibliotheque pour le capteur #define TRIGGER_PIN 12//definie la patte TRIGGER du capteur sur le pin 12 de mon arduino #define ECHO_PIN 13//définie la patte Echo du capteur sur le pin 13 de mon arduino Ultrasonic ultrasonic(TRIGGER_PIN, ECHO_PIN);//création d'un objet pour mon capteur #define AVANT 1 #define ARRIERE 0 #define GAUCHE 2 #define DROITE 3 #define SERVOG 1 #define SERVOD 0 //definie tout ce qui concerne les servo #define UPDDG 3 #define UPDDD 4 //definie les deux microrupteur sur les broche 3 et 4 #define VMAX 5 //definie la vitesse max Servo servog; Servo servod; //création de l'objet pour le servo droit et gauche int vLdr = 5; int getNeutral(int s)//valeurs des servo { if(s == SERVOG) return 86; else return 84; } void handleS(int s, int speed) { //Vitesse : // 0 -> 0; 1 -> 1; 2 -> 3; 3 -> 8; 4 -> 10; v => 5 -> 30 int tab[6] = {0,1,3,8,10,30}; int pos = getNeutral(s); int acc; if (speed < 0) acc = - tab[abs(speed)]; else acc = tab[speed]; if(s == SERVOG) servog.write(pos += acc); else servod.write(pos -= acc); } //fonction pour la vitesse des servo void move(int direction) { int m1 = 0, m2 = 0; switch(direction) { case DROITE: m1 = 1; m2 = -1; break; case GAUCHE: m1 = -1; m2 = 1; break; case AVANT: m1 = 1; m2 = 1; break; case ARRIERE: m1 = -1; m2 = -1; break; } handleS(SERVOG, m1*VMAX); handleS(SERVOD, m2*VMAX); } //fonction pour la direction des servo void setup() { pinMode(UPDDG, INPUT); pinMode(UPDDD, INPUT); Serial.begin(9600); servog.attach(10); servod.attach(9); move(AVANT); }//configuration de la carte et des composant void loop() { float cmMsec, inMsec; long microsec = ultrasonic.timing(); cmMsec = ultrasonic.convert(microsec, Ultrasonic::CM); inMsec = ultrasonic.convert(microsec, Ultrasonic::IN); Serial.print("MS: "); Serial.print(microsec); Serial.print(", CM: "); Serial.print(cmMsec); Serial.print(", IN: "); Serial.println(inMsec); delay(1000); //capteur ultraons if(microsec <= 360) { handleS(SERVOG, 0); handleS(SERVOD, VMAX); delay(1500); }else { handleS(SERVOG, VMAX); handleS(SERVOD, VMAX); } //si un objet es a moin de 20 cm alors tourne a droite sinon tout droit if(UPDDD==HIGH) { move(ARRIERE); delay(300); move(GAUCHE); delay(900); } else { handleS(SERVOG, VMAX); handleS(SERVOD, VMAX); } //si microrupteur droit enclenché alors on recule puis on tourne a gauche sinon tout droit if(UPDDG==HIGH) { move(ARRIERE); delay(300); move(DROITE); delay(900); } else { handleS(SERVOG, VMAX); handleS(SERVOD, VMAX); }//si microrupteur gauche enclanché alors on recule puis on tourne a droite } //FIN DU PROGRAMME R2ALIS2 LE 22 23 JUIN 2012 PAR ALEXANDRE
#120
Posté 26 juin 2012 - 09:39
tu dit si le microrupteur est enclenché tu tourne a droite ou tu vas tout droit, alors que dans ton code il est dit que tu recule puis tu tourne a gauche
et pareil a la fin tu dis que si l'autre microrupteur est enclenchée alors tu recule et tu tourne a droite alors que je n'ai pas vue de morceau de code qui fais cette fonction.
Est-ce Normal ?
maxou
A.R.M.I
Autonomous Robotics Mechanics Intelligent
Répondre à ce sujet

1 utilisateur(s) li(sen)t ce sujet
0 members, 1 guests, 0 anonymous users