Relier un potention a un circuit

a marqué ce sujet comme résolu.

bonjour

je souhaite relier un potentiomètre a mon circuit de manière a commander le sens et la vitesse d'un moteur DC. Jai mit a votre disposition quelque photos de mon circuit . Composant : carte arduino uno , Motor Schild , moteur DC, potentiomètre poile 9v )

Image utilisateur

Image utilisateur

Image utilisateur

Image utilisateur

Edit Arius : correction des liens pour les images

+0 -0

salut Je reprend , voila mon problème est simple je ne sais pas où placer les branches de mon potentiomètre (sur mon Schild Motor ) . Et je voulait savoir si mon montage est bon . J'ai crée un blog où j'ai exposé les photos de mon circuit et mon programme : http://martin-370.skyrock.com/ (Le but de mon expérience est de contrôler un moteur dc avec un potentiomètres )

merci pour vos réponses

+0 -0

Ce n'est pas la peine de faire un blog ^^ il y a plein de fonctionnalitées tip-top sur zds pour ça. Tu peux citer mon message pour voir comment j'ai fait :

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
const int enable = 3; //la PWM
const int in1 = 2; //les broches de signal
const int in2 = 4;
const int potar = 0; //la broche pour régler la vitesse

void setup()
{
pinMode(enable, OUTPUT);
pinMode(in1, OUTPUT);
pinMode(in2, OUTPUT);
Serial.begin(115200);

//on démarre moteur en avant et en roue libre
analogWrite(enable, 0);
digitalWrite(in1, LOW);
digitalWrite(in2, HIGH);
}

void loop()
{
int vitesse = analogRead(potar);

//dans le sens positif
if(vitesse > 512)
{
//on décale l'origine de 512
vitesse -= 512;
//le moteur va dans un sens
digitalWrite(in1, LOW);
digitalWrite(in2, HIGH);
Serial.print("+");
}
else //dans l'autre sens
{
//de même on décale pour que la vitesse augmente en s'éloignant de 512
vitesse = 512-vitesse;
//le moteur va dans l'autre sens
digitalWrite(in1, HIGH);
digitalWrite(in2, LOW);
Serial.print("-");
}

//pour rester dans l'intervalle [0;255] (sinon on est dans [0;512])
vitesse /= 2;
//envoie la vitesse
analogWrite(enable, vitesse);

//et l'affiche
Serial.println(vitesse);
delay(50);
}

Tu peux aussi afficher des images. cf. ici .

Concernant ton problème, si j'ai bien compris, c'est que tu ne sais pas comment brancher ton potar. Tout d'abord il faut que tu comprennes bien comment un potar fonctionne : c'est en quelque sorte un pont diviseur de tension variable. Généralement la broche du milieu correspond à la "sortie" du potar, c'est ici que l'arduino va lire la valeur. Il faut donc la relier à la broche A0, en accord avec ton programme. Ensuite il te suffit de brancher les deux autres broches respectivement au +5V de l'arduino et au GND. Si tu possèdes un multimètre je te conseilles de mesurer la résistance entre chaque borne du potar et de le tourner pour voir comment évolue la résistance.

C'est surtout une question de cohérence du site, en mettant tes images sur le forum tu t'assures que ceux qui lirons un jour ce thread en ayant le même problème que toi puisse le comprendre.

Peux-tu être plus précis quand tu dis que cela ne marche pas ? peux-tu faire un schéma (pas une photo) de ton montage ? As-tu essayé de faire afficher ce qu'il se passe en lisant la valeur du potar ?

Voici un exemple de code pour afficher la valeur du potar (non testé) :

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
const uint8_t potar = 0;

int val = 0;

void setup() {
  Serial.begin(9600);
  Serial.println("Voici ce que je lis:");

  val = analogRead(potar);
  Serial.println(val, DEC);

}

void loop() {
  int actuel = analogRead(potar);
  if (actuel != val)
  {
    val = actuel;
    Serial.println(val, DEC);
  }
}

Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte