Détection front montant pour codeur incrémental
Répondre à la discussion
Affichage des résultats 1 à 22 sur 22

Détection front montant pour codeur incrémental



  1. #1
    thomp32

    Question Détection front montant pour codeur incrémental


    ------

    Bonjour à tous,

    Dans le cadre d'un petit projet perso, j'aurai besoin de "transformer" le signal d'un codeur incrémental. Voici un petit aperçu des signaux qu'il génère:

    Nom : 2_2008-11-16_155853.jpg
Affichages : 620
Taille : 20,1 Ko

    Comme vous pouvez le voir, le codeur envoie deux signaux déphasés l'un de l'autre de 90°.

    Le circuit sur lequel je doit le connecter n'adopte pas tout à fait le même principe de détection: Il possède deux voies, mais les impulsions sont envoyées sur la première voie lors de l'avancement, et sur la seconde, lorsqu'on recule. Sur ces deux voies est connecté un système de compteur/décompteur.

    Il me faudrait donc parvenir à faire un petit circuit électronique qui récupère les 2 signaux du codeur, et envoie l'un d'entre eux su une de ses deux voies de sorties en fonction que l'on soit dans un sens ou dans l'autre.
    Pour connaitre le sens, j'ai pas de problème, j'effectue l'opération suivante:
    - voie B ET font montant voie A => avance
    - voie A ET front montant voie B => recule.

    Mais ma question est donc la suivante: quel circuit intégré me permettrait de détecter le front montant sur chaque voie et envoyer une petite impulsion (environ 0.6 ms) en sortie? Comme vous vous en doutez il doit donc être capable d'accepter des signaux de l'ordre d' 1kHz.

    J'avais peut-etre pensé au 4528 ou 4538, quelqu'un pourrait-il me confirmer ce choix, voire me conseiller mieux si ça existe...


    Merci d'avance pour vos réponses

    Thomas

    -----

  2. #2
    vincent66

    Re : Détection front montant pour codeur incrémental

    Bonsoir,
    Je crois que vous pouvez utiliser des bascules D, 74HC74...
    Sur l'une vous branchez A à D et B à ck\, sur l'autre B à D et A à CK\, vous aurez alors deux sorties Q exploitables pour commander vos deux monostables...
    Leonardo était ingénieur "sans papier", et moi diplômé juste...technicien...

  3. #3
    Qristoff
    Animateur Électronique

    Re : Détection front montant pour codeur incrémental

    Citation Envoyé par vincent66 Voir le message
    Bonsoir,
    Je crois que vous pouvez utiliser des bascules D, 74HC74...
    Sur l'une vous branchez A à D et B à ck\, sur l'autre B à D et A à CK\, vous aurez alors deux sorties Q exploitables pour commander vos deux monostables...
    tout à fait et j'irais plus loin, en reliant les sorties Qa et Qb des bascules à deux portes ET (74HC08), tu auras ton signal d'entrée recopié sur l'une ou l'autre des sorties suivant le sens de rotation.
    Nom : codeur incrément.JPG
Affichages : 910
Taille : 13,8 Ko
    Tout existe, il suffit de le trouver...!

  4. #4
    thomp32

    Re : Détection front montant pour codeur incrémental

    Un énorme merci à vous deux!!

    En effet, pour la porte ET, je savais que j'allais l'employer de cette manière, mais c'est sur la bascule D que je ne savais pas trop comment faire...

    Mais une petite question persiste... (et oui, il faut bien... )
    Quelle sera la durée de l'impulsion de sortie? (en QA ou QB, sur le schéma de Qristoff)?

    Encore merci à vous

  5. A voir en vidéo sur Futura
  6. #5
    vincent66

    Re : Détection front montant pour codeur incrémental

    Ben à ton avis..?
    Trace un oscillogramme des signaux A,B,QA et QB et tu auras la réponse...
    Tu verras alors que pour des durées d'impulsion constantes il faudra bien des monostables...
    Leonardo était ingénieur "sans papier", et moi diplômé juste...technicien...

  7. #6
    Qristoff
    Animateur Électronique

    Re : Détection front montant pour codeur incrémental

    Quelle sera la durée de l'impulsion de sortie? (en QA ou QB, sur le schéma de Qristoff)?
    celle d'entrée qui vient de A ou de B selon le sens. Il faut la réduire ou bien ton appareil fonctionne sur les fronts ?
    Tout existe, il suffit de le trouver...!

  8. #7
    thomp32

    Re : Détection front montant pour codeur incrémental

    En fait, mon appareil doit recevoir exactement les mêmes signaux que A et B (en terme de durée). Et cette valeur peut varier (en fonction de la vitesse de rotation du moteur) de 0.5 ms à 1 sec.
    Le système gère-t-il donc ce fonctionnement? (désolé pour cette question peut-être bête, mais je ne suis pas trop calé en monostables...)

    Merci

  9. #8
    Qristoff
    Animateur Électronique

    Re : Détection front montant pour codeur incrémental

    il n'y a plus de monostable.. oublie et teste cette solution !
    Tout existe, il suffit de le trouver...!

  10. #9
    annjy

    Re : Détection front montant pour codeur incrémental

    Citation Envoyé par thomp32 Voir le message
    En fait, mon appareil doit recevoir exactement les mêmes signaux que A et B (en terme de durée). Et cette valeur peut varier (en fonction de la vitesse de rotation du moteur) de 0.5 ms à 1 sec.
    Le système gère-t-il donc ce fonctionnement? (désolé pour cette question peut-être bête, mais je ne suis pas trop calé en monostables...)

    Merci
    Bsr,

    là, il faut revoir les bases de la logique câblée (portes diverses, bascules.....)
    et accessoirement savoir ce qu'est un monostable........

    bon courage,
    JY

  11. #10
    DAUDET78

    Re : Détection front montant pour codeur incrémental

    Dans la pratique, un codeur incrémental ne donne pas de beaux signaux A et B comme indiqué sur la question en #1. En effet, il peux changer de sens à tout moment ..... voir http://forums.futura-sciences.com/pr...cremental.html
    Trois solutions :
    - Utiliser un circuit spécifique (genre HCTL20xx ou autres)
    - utiliser un µC ..... avec le bon soft !
    _ Utiliser un µC avec hard interne de décodeur (rare, mais ça existe)
    PS : si les constructeurs ont développés des circuits spécifiques ..... c'est qu'on ne peut pas faire le décodage avec deux bascules et un peu de logique sans perdre des impulsions Up/Down !
    J'aime pas le Grec

  12. #11
    extremgear

    Re : Détection front montant pour codeur incrémental

    Citation Envoyé par DAUDET78 Voir le message
    Dans la pratique, un codeur incrémental ne donne pas de beaux signaux A et B comme indiqué sur la question en #1. En effet, il peux changer de sens à tout moment ..... voir http://forums.futura-sciences.com/pr...cremental.html
    Trois solutions :
    - Utiliser un circuit spécifique (genre HCTL20xx ou autres)
    - utiliser un µC ..... avec le bon soft !
    _ Utiliser un µC avec hard interne de décodeur (rare, mais ça existe)
    PS : si les constructeurs ont développés des circuits spécifiques ..... c'est qu'on ne peut pas faire le décodage avec deux bascules et un peu de logique sans perdre des impulsions Up/Down !
    de plus avec les circuits et microcontroleur (avec hardware intégré) existant , est ce que ça vaut le coup de s'em... à faire autrement ?
    Même en soft ça reste assez facile à gérer .

  13. #12
    Qristoff
    Animateur Électronique

    Re : Détection front montant pour codeur incrémental

    Citation Envoyé par DAUDET78 Voir le message
    Dans la pratique, un codeur incrémental ne donne pas de beaux signaux A et B comme indiqué sur la question en #1. En effet, il peux changer de sens à tout moment ..... voir http://forums.futura-sciences.com/pr...cremental.html
    Trois solutions :
    - Utiliser un circuit spécifique (genre HCTL20xx ou autres)
    - utiliser un µC ..... avec le bon soft !
    _ Utiliser un µC avec hard interne de décodeur (rare, mais ça existe)
    PS : si les constructeurs ont développés des circuits spécifiques ..... c'est qu'on ne peut pas faire le décodage avec deux bascules et un peu de logique sans perdre des impulsions Up/Down !
    Hors sujet...
    regarde bien le cahier des charges
    Le circuit sur lequel je doit le connecter n'adopte pas tout à fait le même principe de détection: Il possède deux voies, mais les impulsions sont envoyées sur la première voie lors de l'avancement, et sur la seconde, lorsqu'on recule. Sur ces deux voies est connecté un système de compteur/décompteur.
    Tout existe, il suffit de le trouver...!

  14. #13
    DAUDET78

    Re : Détection front montant pour codeur incrémental

    Citation Envoyé par Qristoff Voir le message
    Hors sujet...
    Pas du tout !
    Il faut transformer des signaux en quadrature en deux clock UP et DOWN . Il faut donc discriminer le sens de rotation ..... et pas avec deux flipflops
    J'aime pas le Grec

  15. #14
    Qristoff
    Animateur Électronique

    Re : Détection front montant pour codeur incrémental

    Il faut transformer des signaux en quadrature en deux clock UP et DOWN . Il faut donc discriminer le sens de rotation
    c'est bien ce qui est fait ici ! je ne comprends pas ta remarque ? certes, il n'y a pas de double resynchronisation de filtrage mais le principe est là !
    Tout existe, il suffit de le trouver...!

  16. #15
    DAUDET78

    Re : Détection front montant pour codeur incrémental

    Citation Envoyé par Qristoff Voir le message
    c'est bien ce qui est fait ici !
    Le circuit avec un double flipflop perd des impulsions de comptage en cas de double transitions sur les fronts de A ou B . Ce qui est le cas quand on a une hésitation du codeur autour d'une position.
    Evidemment, si c'est acceptable (cas d'un bouton en quadrature pour faire un réglage d'un volume sonore, pas de problème). Par contre, c'est inacceptable quand on cherche à faire un comptage précis.
    Citation Envoyé par thomp32
    Sur ces deux voies est connecté un système de compteur/décompteur.
    On ne connait pas la nature de ces compteurs , ni le but
    Citation Envoyé par thomp32
    quel circuit intégré me permettrait de détecter le front montant sur chaque voie et envoyer une petite impulsion (environ 0.6 ms) en sortie?
    Aucun compteur électronique ne demande une impulsion calibrée de 0,6ms de comptage (ou alors, c'est un compteur mécanique ?)

    Bref, la question est floue de chez floue ......... Sans autres précisions, je reste sur mes positions !
    J'aime pas le Grec

  17. #16
    thomp32

    Re : Détection front montant pour codeur incrémental

    Alors, pour vous éclairer un peu...

    Je dispose d'un codeur incrémental avec les deux voies A et B, ainsi qu'un top 0, mais qui n'a aucune importance ici.
    Je dois connecter ce codeur sur les deux entrées rapides d'un automate Zelio (Schneider elec, pour ne pas faire de pub...).
    Le problème de cet automate réside dans son système de calcul de la position: Pour déterminer la position de mon moteur, je suis obligé d'utiliser un "Compteur rapide" (limité tout de même à 1kHz... :/ ). Ce compteur possède deux entrées: une entrée "Clock" sur laquelle j'envoie les impulsions du codeur. La seconde entrée indique de sens: si 1 -> comptage; si 0 -> décomptage. Enfin, je dispose d'une sortie numérique qui me donne la valeur courante du compteur.

    Mon but est donc de créer un circuit qui parvienne a déterminer le sens de rotation du codeur. Que ce soit avec un circuit intégré "classique" ou un uC (PIC de préférence). Mais je pense qu'il est inutile d'utiliser un uC pour application aussi basique...


    Merci à vous

    Thomas

  18. #17
    DAUDET78

    Re : Détection front montant pour codeur incrémental

    C'est du n'importe quoi ...
    Citation Envoyé par thomp32 Voir le message
    Il possède deux voies, mais les impulsions sont envoyées sur la première voie lors de l'avancement, et sur la seconde, lorsqu'on recule. Sur ces deux voies est connecté un système de compteur/décompteur.
    en contradiction avec :
    Citation Envoyé par thomp32 Voir le message
    Ce compteur possède deux entrées: une entrée "Clock" sur laquelle j'envoie les impulsions du codeur. La seconde entrée indique de sens: si 1 -> comptage; si 0 -> décomptage.
    Les automates programmables ont souvent une entrée en quadrature ..... Cherche un peu le module qui va bien !
    J'aime pas le Grec

  19. #18
    thomp32

    Re : Détection front montant pour codeur incrémental

    Je sais, mais la première solution me paraissait plus simple, c'est pour ca que je suis pas rentré dans les détails, je me serai débrouillé pour la suite, le reste, c'est rien à faire...

    LE gros problème de cet automate c'est qu'il est TRES simpliste.... Et ne possède aucun module permettant de faire cela... Il possède juste deux entrées pour le comptage "rapide" (1kHz), et c'est tout... Même avec des modules d'extensions, il n'y a rien de plus performant. (sauf un module de communication RS232, mais qui est hors budget... C'est pourquoi je souhaiterai m'en tenir à cette solution...

    Merci (et désolé pour le TROLL... )

  20. #19
    DAUDET78

    Re : Détection front montant pour codeur incrémental

    Citation Envoyé par thomp32 Voir le message
    LE gros problème de cet automate c'est qu'il est TRES simpliste....
    Donc tu utilises mon lien #10 et tu programmes un p'tit µC ou un PAL (pour faire la machine d'état) pour faire l'interface
    J'aime pas le Grec

  21. #20
    Qristoff
    Animateur Électronique

    Re : Détection front montant pour codeur incrémental

    Citation Envoyé par DAUDET78 Voir le message
    C'est du n'importe quoi ...en contradiction avec :Les automates programmables ont souvent une entrée en quadrature ..... Cherche un peu le module qui va bien !
    Je sais plus quoi dire...c'est effarant!
    Tout existe, il suffit de le trouver...!

  22. #21
    DAUDET78

    Re : Détection front montant pour codeur incrémental

    Citation Envoyé par Qristoff Voir le message
    Je sais plus quoi dire...c'est effarant!
    Quel est le problème ?
    Un API a un module d'entrée en quadrature. C'est basique !
    Maintenant , si on veut utiliser un Zelio ....... c'est un choix bas de gamme et on ne peut pas faire de la CNC avec !
    PS : on sait que c'est un Zelio depuis la réponse 16 ......
    Dernière modification par DAUDET78 ; 06/04/2014 à 18h48.
    J'aime pas le Grec

  23. #22
    Qristoff
    Animateur Électronique

    Re : Détection front montant pour codeur incrémental

    Citation Envoyé par DAUDET78 Voir le message
    Quel est le problème ?
    Un API a un module d'entrée en quadrature. C'est basique !
    Maintenant , si on veut utiliser un Zelio ....... c'est un choix bas de gamme et on ne peut pas faire de la CNC avec !
    PS : on sait que c'est un Zelio depuis la réponse 16 ......
    C'est pas pour toi, Daudet que je dis ça. C'est en rapport au premier cahier des charges qui est en complète contradiction avec le besoin du #16...
    Tout existe, il suffit de le trouver...!

Discussions similaires

  1. rend les bascule fonction en front montant ou en front descendant
    Par girardbabtist dans le forum Électronique
    Réponses: 6
    Dernier message: 08/12/2013, 21h25
  2. [Simulink] Activation de code sur détection de front montant ?
    Par invitee293cdb8 dans le forum Programmation et langages, Algorithmique
    Réponses: 2
    Dernier message: 18/12/2012, 21h16
  3. Problémes de détection du front montant et descendant
    Par ragedBOYS dans le forum Électronique
    Réponses: 4
    Dernier message: 17/12/2012, 15h09
  4. Détection de front montant
    Par invite73838812 dans le forum Programmation et langages, Algorithmique
    Réponses: 21
    Dernier message: 04/01/2012, 15h55
  5. détection de front montant sous Quartus
    Par mokermann dans le forum Électronique
    Réponses: 7
    Dernier message: 23/07/2008, 21h07
Découvrez nos comparatifs produits sur l'informatique et les technologies.