Go Down

Topic: Encodeur en quadrature + sn74hc74n (Read 3923 times) previous topic - next topic

Jesis

#30
Mar 04, 2012, 06:41 pm Last Edit: Mar 06, 2012, 02:22 am by Jesis Reason: 1
Quote
alors la sortie Q de la bascule doit être à 1 lorsque tu fais tourner le moteur dans le sens des aiguille d'une montre
et   la sortie Q de la bascule doit être à 0 lorsque le moteur tourne dans le sens inverse des aiguilles d'une montre

Oui, c'est ca, mais ca marche que dans un sens, j'ai que des 1 dans un sens et des 1 et 0 dans l'autre.
Merci

fdufnews

Je ne peux que répéter ce que j'ai dit précédemment. Il y a soit une erreur de câblage soit une panne de l'encodeur (ou de la bascule).

Jesis

J'ai essayé avec une autre bascule.... resultat identique....
pfff....
1clr --> +5v
1pre -->+5v
D -->  codeur A +pull up  -->arduino comptage (interupt)
clk --> codeur B + pull up
Gnd --> gnd
Q ou /Q --> arduino sens

....

Jean-François

Tu n'as pas une photo de ton montage ou un schéma à nous montrer....
MacBook intel core 2 duo  os X snow Leopard 10.6<br/> eMac PPc G4  os X Leopard 10.5<br/>powerbook G4 os X Leopard 10.5
imac PPC G3 os X Pa

Jesis

C'est du deja vu :  http://imageshack.us/photo/my-images/59/dfdw.png/
avec des pull up sur ck et d
ensuite, j'ai fait ce qui est ecrit la http://fribotte.free.fr/bdtech/detectsens/detectsens.html
a savoir : "Nous positionnerons par défaut /CLR et /PR au niveau haut, le canal A est branché sur l'entrée CK, et le signal B de l'encodeur est envoyé sur la patte D"


Jesis

#35
Mar 04, 2012, 08:34 pm Last Edit: Mar 04, 2012, 08:38 pm by Jesis Reason: 1
J'ai vu d'autre montage (en anglais) peu comprehensible qui n'utilise pas les memes broches...

ICI : http://www.microsofttranslator.com/bv.aspx?from=&to=fr&a=http%3A%2F%2Fprofmason.com%2F%3Fp%3D775

Jesis

#36
Mar 06, 2012, 12:28 am Last Edit: Mar 06, 2012, 12:31 am by Jesis Reason: 1
Bonjour,
J'ai continué mes recherche est suis tombé sur ça : http://sitelec.org/cours/abati/captvit.htm
Ca m'a enormement aider sur la partie ''comment ca marche'' :smiley-mr-green:

Pour essayé, cet fois ci j'ai pris mon 2e moteur et ces codeurs, est quand le lit les codeur.... Regardé :



Le codeur A renvoie 0101010101111111101010101 et le B 111111111%j1111
j'ai du mal a saisir...

Jesis

Je suis trop content ...

Ca y est j'ai reussi (sans bascule) donc je met mon code :

Code: [Select]

volatile long compteur ;
volatile int Sens;
volatile boolean update = false;
void setup()
{
 
pinMode (2,INPUT);
pinMode (3,INPUT);

Serial.begin (115200);

attachInterrupt (0, detection_sens, RISING);

}

void loop ()
{

if (update)
{  Serial.print(Sens,BIN);
  Serial.print("       ");
  Serial.println(compteur, DEC);
update = false;}}

void detection_sens ()
{

 
int C_a =digitalRead (2);
int C_b =digitalRead (3);

if ( C_b ==1)
  { Sens =1; //
  compteur++; }
else if ( C_b==0)
  { Sens=0;
  compteur--; }
  update = true ;
}
 


J'ai verifié, j'ai bien 360 incremantation par revolution de l'axe !
Miracle !
Donc, j'ai trouvé le beug, si j'essai avec la bascule maintenant ca devrai maché !

fdufnews

Quote
Miracle !
Donc, j'ai trouvé le bug,

Et c'était quoi !!
Que les autres puissent profiter de l'information.

Jesis

Dans attachInterrput, le mode... et aussi mon code !

Jesis

Une petite video pour finir :

http://www.youtube.com/watch?v=T-MOnEu7Grc


Donc je me suis servit des codeur pour affiché sur le lcd la distance parcouru. Bientot, il faudra que je passe a l'asservissement en vitesse.

Snootlab

Bonjour,

intéressant tout ça, mais tu utilises deux arduinos ?
genre un pour le comptage interruption + lcd et un pour moteur et capteur (d'ailleurs tu utilises quoi comme capteur, ultrasons ? un seul ?)
ou un seul arduino pour le tout ?

Nous présenterai tu ton robot plus précisément ?

schéma, code, photos ?

Lionel
- Distributeur officiel Arduino - France

Jesis

#42
Mar 06, 2012, 07:55 pm Last Edit: Mar 06, 2012, 08:08 pm by Jesis Reason: 1
Bonjour,

Pour les tests avec les codeur, oui, j'utilisais 2 arduino, une qui est sur le robot (mega) qui fait tourné les moteurs et etc... et l'autre pour gerer les codeur. Maintenant tout est sur la mega.
Il y a 3 capteur dessus : un US (urm37) sur l'etage, pour la detection des obstacle dans un chant large, et sur la base du chassis, deux capteur ir (sharp) monter sur servo (actuellement deconecté) a 45° par rapport a l'axe longitudinale du robot.
Le lcd m'affiche la temperature du regulateur de tension 5v(refroidit par un micro ventilateur), ainsi que la distance parcouru+ la vitesse, qui est ajustable via un potentiometre.
Il dispose d'un hp qui fait un decompte lors de la mise sous tension de l'ensemble, qui est affiché en meme temps sur le lcd.
Je n'ai aucun shemas, apart ceux des alims.





Go Up