DRO IC-NV : Conversion signal sinusoidal a signal carré

  • Auteur de la discussion vibram
  • Date de début
V

vibram

Compagnon
Bonjour,
Je viens de découvrir l'ADC: analog to digital converter ou convertisseur analogique à numérique qui est présent sur bon nombre de microcontroleurs
Je me demandais si on pouvait se servir de ce module pour les regles heidenhain avec un signal sinu vers les visu utilisant le signal TTL. ? grace a ca on pourrait se passer des boitiers EXE 602 par exemple?

Merci de votre aide
 
J

jpbbricole

Compagnon
Salut vibram

peut être un simple trigger de Schmitt genre cd4093 suffirait.

Cordialement
jpbbricole
 
V

vibram

Compagnon
en effet ce chip est vraiment pas mal :O

Mais j'aimerais bien étudier cela à travers l'ADC pour voir ce qu'il est possible et pas possible de faire
 
T

tronix

Compagnon
Avec un ADC sur un processeur, on peut faire un traitement plus efficace que ce qui serait fait avec un circuit simple. Il faut donc que le signal soit conditionné pour être dans la plage d'entrée de l'ADC, et on peut faire tout le reste en soft. Maintenant, pas certain que les bibliothèques Arduino le permettent facilement, elles ont trop souvent recours aux délais soft pour être efficace en traitement de signal.
 
V

vibram

Compagnon
je pensais plutot le faire avec un STM32 mais je voulais etre sur que cetait possible dans un premier temps comme je ne suis pas expert la dedans !
merci pour l'info :wink:
 
J

jpbbricole

Compagnon
Mais j'aimerais bien étudier cela à travers l'ADC pour voir ce qu'il est possible et pas possible de faire
Si la question était de transformer un signal sinusoïdal en signal carré, pour autant que les niveaux sont suffisants, un trigger de schmitt voir un simple transistor font parfaitement l'affaire. Utiliser l'ADC d'un microcontrolleur serait du luxe voir même une perte de temps, c'est pas fait pour ça.

Cordialement
jpbbricole
 
V

vibram

Compagnon
Si la question était de transformer un signal sinusoïdal en signal carré, pour autant que les niveaux sont suffisants, un trigger de schmitt voir un simple transistor font parfaitement l'affaire. Utiliser l'ADC d'un microcontrolleur serait du luxe voir même une perte de temps, c'est pas fait pour ça.

Cordialement
jpbbricole
Interessant, pourquoi est-il donc fait?
Je n'en sais pas beaucoup dessus mais le nom semble explicite pour dire que cela serait assez adapté. l'avantage du microcontrolleur étant de gerer les timers derrieres
 
J

jpbbricole

Compagnon
Interessant, pourquoi est-il donc fait?
Il est fait pour convertir de l'analogique en valeurs digitales (échantillonage).
Dans le cas de la conversion sinusoïde en carré il ferait parfaitement l'affaire, sauf que ton programme devrait, en permanence, mesurer l'entrée, estimer quand on est dans la plage du 1 logique, le signaler au reste du programme, continuer à mesurer l'entrée, estimer quand on est dans la plage du 0 logique et ainsi de suite.... et à quelle fréquence mesurer?. Un montage statique (trigger ou transistor) le fait plus simplement.

Cordialement
jpbbricole
 
T

tronix

Compagnon
C'est pas fait pour ça ? Ah bon ? Cela permet si on veut de faire du filtrage, des seuils réglables... Bien plus souple qu'avec un trigger externe figé au câblage.
 
T

tronix

Compagnon
Sur les périphériques de certains micro-contrôleurs, on peut utiliser du DMA, des comparateurs internes... Bref, des tas de choses qui font que le soft n'a pas forcément grand chose à faire. Mais à condition de ne pas programmer avec des délais et sans réfléchir.
 
J

jpbbricole

Compagnon
C'est pas fait pour ça ? Ah bon ?
Ce n'est pas exactement ce que je voulais dire. Oui c'est fait pour convertir de l'analogique en digital. Mais dans le cas de la question de @vibram , convertir la sinusoide issue de sa règle en carré, a mon avis, c'est se compliquer le vie. Tout dépend, bien sûre, du niveau du signal.

Cordialement
jpbbricole
 
Dernière édition:
T

tronix

Compagnon
Si on a déjà le processeur, et que l'on sait programmer les ADC, cela ne complique pas la vie, au contraire. Cela réduit la tripaille qu'il y a autour, avec plus de souplesse ensuite.
 
G

gaston48

Compagnon
Bonjour,
jpbbricole, en fait plus précisément, cela doit faire une interpolation, une sorte d' ADC série
l'onde sinus de la règle a un pas de 20 microns par exemple et il faut le convertir en 20 impulsions
de 1 microns. Dans les premières visu heindenhain, cela était fait avec quelques comparateurs discrets
 
V

vibram

Compagnon
Bonjour,
jpbbricole, en fait plus précisément, cela doit faire une interpolation, une sorte d' ADC série
l'onde sinus de la règle a un pas de 20 microns par exemple et il faut le convertir en 20 impulsions
de 1 microns. Dans les premières visu heindenhain, cela était fait avec quelques comparateurs discrets
Salut,
c'est exactement ce que je souhaitais faire, je pense que tu es deja passé par là :wink:
et tu conseilles de faire ca via un MCU ou plutot par le chip IC-NV?
 
T

tronix

Compagnon
Donc 50 sinusoïdes pour 1mm. Vitesse maximale ? Mais on devrait rester sur des fréquences raisonnables.
 
V

vibram

Compagnon
Donc 50 sinusoïdes pour 1mm. Vitesse maximale ? Mais on devrait rester sur des fréquences raisonnables.
à 100mm/sec on est seulement a 5Khz je crois donc on a encore de la marge par rapport à ce que peut faire un STM32 meme basique.
En revanche je me demande s'il est possible de découper ce pas de 20 microns au fur et à mesure, car 20 pas de 1 microns, OK mais si c'est seulement lorsque la sinusoide est arrive au point 0, cela n'est pas d'une grande aide je pense. A voir
 
G

gaston48

Compagnon
Il y a quelques papiers sur le net, dont un que j'avais commencer à mettre en oeuvre et je suis
tombé sur IC-Hauss . Quelques composants passifs autour, plus éventuellement un driver MC3487
pour des sorties en différentiel et ça fonctionne parfaitement.
Attention, on a des sorties en quadrature, donc déjà une division naturelle par 4. Reste donc à diviser par 5
préalablement, ce que font la majorité des boitiers EXE d'occas car les règles sont à 20 microns et
les CNC d'époque à 1 microns.
 

Fichiers joints

  • methode interpolation C017.pdf
    363.7 KB · Affichages: 129
V

vibram

Compagnon
OK merci je vais plancher dessus. Dans mon cas cela m'interesse de ne rien mettre en plus du MCU. je vais etudier et essayer de mettre en oeuvre ce ADC
 
V

vibram

Compagnon
Bon j'ai commandé un module IC-NV, pas la peine de réinventer la roue surtout lorsque je n'en suis pas capable
En revanche j'ai du mal a comprendre le fonctionnement des MC3487, et leur but?
Car le module IC-NV sort un signal en quadrature cela n'est*-il pas suffisant?
j'ai commencé a lire la data sheet mais elle ne m'aide pas plus que ca ;(
 
G

gaston48

Compagnon
Bon j'ai commandé un module IC-NV
Ouuuuuuuh le fainéant :wink:

C'est pour sortir en mode différentiel (RS-485) , comme la majorité des codeurs +A -A +B -B + Ind - Ind GND +5 V
Tu t’immunises des parasites (élimination du mode commun) tout le long du câble
Puis tu rentres sur le même genre de circuit qui décode les paires différentielles.
 
V

vibram

Compagnon
Aahhhhhh OK je vois.donc il passe de A et B a A+/A- et B+/B-
Je pense essayer sans dans un premier temps et j'aviserai ensuite.
Ma résolution de 2018 étant de lire les data sheets, je me suis rendu compte que la figure 15 page 13 du IC-NV donne le schéma pour decoder le signal heidenhain 11uApp, déjà un bon début.
Bon je vais tenter de trouver quelqu'un pour me souder le Cms car je ne suis pas équipé et à presque 10euros le chip j'ai pas envie de les jeter par la fenêtre :)
 
G

gaston48

Compagnon
Tu as trouvé des petits circuits imprimés adaptateur de format ?
 
V

vibram

Compagnon
Oui c'est bon ! J'ai tout pris "au prix fort" comme ça faisait partie de la commande du IC-NV
Au moins je ne vais pas l'attendre 1 mois
Est ce qu'il te reste tes schémas quelques part ?
J'ai lu la data sheets mais j'ai des doutes sur le. Réglages de la résolution entre autre
 
V

vres

Compagnon
Bonjour
Pour arriver au micron il faut simplement multiplier par 5 (quadrature)
 
V

vibram

Compagnon
Suite: j'ai recu les chip et réussi à trouver un gentil membre du PTL (hacklab a geneve) pour me les souder
J'ai tout cablé et pour le moment j'ai uniquement un incrément des valeurs, quelle que soit le mouvement.
J'ai cablé selon le schema fig 15 pour sinus et cosinus, et fig22 pour le reste avec R5 = 47K
Je n'ai pas encore mis de condo d'ou les eventuels problemes.

Ce que je ne comprends pas:
upload_2018-3-11_16-58-44.png


Il y a un symbole de terre (GND) à gauche, mais celui de droite?

Je vais revoir mes basiques sur le 0v, GND etc car je ne suis pas sur d'etre bon sur ce point en ce qui concerne mon cablage
 
G

gaston48

Compagnon
Hello,
Non figure 22 sans les potars d'équilibrage, il faut que tu câbles les 4 entrées pour la quadrature

Et pour division par 1/5, SF1 open et SF0 open. avec 23 Ko de RCLK

Il y a un symbole de terre (GND) à gauche, mais celui de droite?
masse analogique et masse digitale reliés en un point au niveau du condo
de découplage
 
Dernière édition:
V

vibram

Compagnon
Hello,
Non figure 22 sans les potars d'équilibrage, il faut que tu câbles les 4 entrées pour la quadrature

J'ai cablé les 4 entrées selon la figure 15 qui pour moi est un apercu du reglage à effectuer pour le signal 11uApp donc à faire pour NSIN/PSIN mais aussi pour PCOS/NCOS, non? cela sans potar d'equilibrage.

Et pour division par 1/5, SF1 open et SF0 open. avec 23 Ko de RCLK
On est d'accord que open c'est libre, low -> 0v et high ->5v?

masse analogique et masse digitale reliés en un point au niveau du condo
de découplage
OK
j'ai vu sur internet qu'on pouvait les relier toutes ensembles. Sachant que j'ai une alim en 5v et que toutes les masses vont à la masse de cette alim
 
G

gaston48

Compagnon
Oui, en fait tu as raison pour la figure 15 regarde si par le fait de débiter sur les R de charge de
25 Ko , tu as bien une tension dans les clous, car ensuite tu as un réglage de gain (page 7/19)
par SG1 et SG0.
Sinon, oui, low au GND, high au + 5 et open: en l'air.
pour les masse, tu fais un bus analogique et un bus digital et tu relis les 2 bus au découplage.
 
Haut