Hello tout le monde
Voilà j'ai depuis peu une carte Arduino UNO et j'aimerais dans un premier temps me construire un robot qui évite les obstacles.
Hier j'ai modifié deux servos pour qu'ils fonctionnent en rotation continue. Cependant j'ai remarqué qu'ils ne tournent pas tous les 2 à la même vitesse (j'ai suivi ce tuto
http://www.robotix.fr/tutoriel-1-53-modification-dun-servomoteur-en-moteur-a-courant-continu.html) le neutre est correctement configuré et je ne vois pas trop ce qui cloche :/
Voici le programme que j'ai écrit pour le moment (il y a juste un potard qui permet de choisir entre 4 vitesses dont l'arrêt et un BP pour l'inversion du sens de rotation). Attention je ne suis pas un pro en C :p
#include <Servo.h>
Servo moteurGauche, moteurDroit;
int neutreGauche = 75, neutreDroit = 164;
void setup()
{
moteurGauche.attach(9);
moteurDroit.attach(10);
pinMode(12, INPUT); //BP inversion
pinMode(7, OUTPUT); //LED sens 1
pinMode(8, OUTPUT); //LED sens 2
}
void loop()
{
int sens = digitalRead(12);
int vitesse = map(analogRead(A0),0,1023,0,3);
rotationMoteur(moteurGauche,neutreGauche,sens,vitesse);
rotationMoteur(moteurDroit,neutreDroit,sens,vitesse);
delay(50);
}
void rotationMoteur(Servo servo, int neutre, int sens, int vitesse)
{
int v[6] = {0,5,10,50};
if (sens) {
int out = neutre + v[vitesse];
servo.write(out);
digitalWrite(7, LOW);
digitalWrite(8, HIGH);
}
else {
int out = neutre - v[vitesse];
servo.write(out);
digitalWrite(7, HIGH);
digitalWrite(8, LOW);
}
}
Ensuite j'aimerais avoir votre avis concernant l'alimentation de mes servos. Pour le moment ils sont alimentés par la carte UNO mais je pense peut-être me faire un shield qui combinerait la gestion de l 'alimentation pour mes 2 servos (Je compte en rajouter plus tard pour éventuellement une pince ou gadget du genre) et une sorte de proto-shield. Reste à voir pour l'encombrement...
Voici à quoi ressemble mon "montage" pour le moment (qualité portable dsl) :

J'attends vos commentaires et critiques
