Aller au contenu


Photo

Robot v1.1


  • Veuillez vous connecter pour répondre
1 réponse à ce sujet

#1 geek maxou

geek maxou

    Membre chevronné

  • Membres
  • PipPipPipPip
  • 663 messages
  • Gender:Male
  • Location:Pas-de-Calais 62
  • Interests:Monde UNIX, Développement Web, Jeux Vidéo & tout se qui touche à l'électronique

Posté 28 février 2013 - 07:14

Bonjour ou Bonsoir a tous :)
Me revoilà après avoir passez presque 1 an sur le site du zéro a me remplir la tête de code C et C++ :D

Le nom du projet ?
je n'en ai pas trouver donc on va l'appeler "Robot v1.1".

je vais réaliser les bases du robot avec se que je trouve chez moi...
- 3 servomoteur rotation 180° 3,3Kg/cm
- 2 servomoteur modifier en rotation continue 3,9Kg/cm
- 1 carte arduino uno
- fils électrique
- composant en tout genre
- je dois avoir 2 micro-rupteur pas loin
- et de l'envie ! :D
(je dois avoir oublier du matos...)

Et oui je n'ai pas encore de capteur IR ou US ... (trop chers si on achète pas sur internet...)

pour le moment j'ai rédiger un petit code permettant au robot de se déplacer un peu.



#define motorPin1a 3 // Marche avant du premier moteur
#define motorPin1b 4 // Marche arrière du premier moteur
#define speedPin1 9 // L293D enable pin pour le premier moteur
#define motorPin2a 5 // Marche avant du deuxième moteur
#define motorPin2b 6 // Marche arrière du deuxième moteur
#define speedPin2 10 // L293D enable pin pour le deuxième moteur

int Mspeed = 0;
unsigned long time;

void setup() {

// réglage des broches à output
pinMode(motorPin1a, OUTPUT);
pinMode(motorPin1b, OUTPUT);
pinMode(speedPin1, OUTPUT);
pinMode(motorPin2a, OUTPUT);
pinMode(motorPin2b, OUTPUT);
pinMode(speedPin2, OUTPUT);
}

void loop() {

Mspeed = 500; // 0 à 1023


// marche avant pendant 5 secondes

time = millis();

while((millis()-time) < 5000){
analogWrite(speedPin1, Mspeed);
digitalWrite(motorPin1a, LOW);
digitalWrite(motorPin1b, HIGH);

analogWrite(speedPin2, Mspeed);
digitalWrite(motorPin2a, LOW);
digitalWrite(motorPin2b, HIGH);
}


// on tourne sur place

time = millis();

while((millis()-time) < 2000){
analogWrite(speedPin1, Mspeed);
digitalWrite(motorPin1a, LOW);
digitalWrite(motorPin1b, HIGH);

analogWrite(speedPin2, Mspeed);
digitalWrite(motorPin2a, LOW);
digitalWrite(motorPin2b, LOW);
}


// marche arrière pendant 4 secondes

time = millis();

while((millis()-time) < 4000){
analogWrite(speedPin1, Mspeed);
digitalWrite(motorPin1a, HIGH);
digitalWrite(motorPin1b, LOW);

analogWrite(speedPin2, Mspeed);
digitalWrite(motorPin2a, HIGH);
digitalWrite(motorPin2b, LOW);
}

}

Cordialement geek maxou

A.R.M.I

Autonomous Robotics Mechanics Intelligent


#2 geek maxou

geek maxou

    Membre chevronné

  • Membres
  • PipPipPipPip
  • 663 messages
  • Gender:Male
  • Location:Pas-de-Calais 62
  • Interests:Monde UNIX, Développement Web, Jeux Vidéo & tout se qui touche à l'électronique

Posté 01 mars 2013 - 09:35

Étant donner que je ne veux pas me mettre dans le froid pour faire un chassis digne de se nom, je vais encore faire de la recup :D. Je vais utiliser l'Habillage d'un bloc d'alimentation qu'on trouve sur les PC fixe ^^
Une fois vidée sa pèse moins lourd...
Je dois encore voir pour la position des moteurs en fonctions de la place ou seront les composants.
Cdt geek maxou

A.R.M.I

Autonomous Robotics Mechanics Intelligent





0 utilisateur(s) li(sen)t ce sujet

0 members, 0 guests, 0 anonymous users