Bonjour à tous,
J'ai presque peur de poser une question ici après mes deux pauvres expériences mais là après plusieurs heures de recherche et n'ayant pas trouvé la réponse je voulais vous demander votre avis.
Je sais qu'un oscilloscope est un appareil complexe et indispensable si on veut aller plus loin que nos schémas mais je me demandais ce qui limitait la possibilité d'en faire un DIY.
Nos cartes Arduino nous limitent-elles dans les temps de réactions des phénomènes électriques de nos circuits?
Un exemple: si on veut mesurer un courant de 0 à 50A ou une tension de 0 à 100V au dixième en temps réel et afficher leurs courbes de variation sur l'écran de notre ordinateur, est-ce réaliste?
Les capteurs que l'on trouve dans le céleste Empire ne peuvent suffire à obtenir des valeurs précises?
Ces questions sont d'ordre général, un oui ou un non me suffiront.
Merci à vous.
@+
BB
Le convertisseur / analogique numérique de l'Arduino mesure une tension externe comprise entre 0 et 5V (Vref), il faudra limiter la tension externe mesurée dans cette plage (pont diviseur).
On peut mesurer une intensité I à partir de U=RI avec une résistance de précision.
Le convertisseur CAN est limité en résolution (10 bits codent pour 1024 niveaux), et la stabilité de Vref limitera la précision de la mesure.
Donc à l'utilisateur de voir si cela lui suffit. (100V sur 1000 niveaux = résolution 0.1 V).
Un affichage sur écran (PC monitor) au fur et à mesure façon oscilloscope est simple à réaliser.
L'acquisition de mesures n'est pas "en temps réel" mais périodique, un bon oscilloscope atteint des fréquences très élevées (MHz) bien au delà d'un Arduino, tout dépend de la fréquence de variation du signal qu'on veut mesurer.
On peut suivre plusieurs canaux en parallèle, mais au détriment de la fréquence de conversion, le processeur ne fait qu'une seule tâche à la fois.
Merci Christian,
Oui je sais pour les 5V. Bien pour l'intensité avec une résistance de précision.
Donc en gros impossible de faire l'équivalent d'un oscilloscope évolué avec des kits séparés.
Mon intention première était d'appliquer ça à une mesure de temps de charge et décharge d'un condensateur dans une électrode d'électro-érosion, donc la tête d'érosion entre en contact avec la pièce à percer, il se produit un arc, ...
Sinon à part l'Arduino as-tu une idée comment le faire DIY?
Ce n'est pas que je ne veuille pas acheter un bon oscilloscope mais pouvoir faire soi-même un bidule apprend tellement et surtout permet de savoir ce qui ne va pas ou qu'on peut améliorer.
Merci.
@+
Il est tout à fait possible de réaliser un oscilloscope avec un Arduino. Tout dépend des performances que vous en attendez. J'en ai réalisé un, vous pouvez vous en inspirer. Grosso-modo, avec un Arduino cadencé à 16 MHz, on peut échantillonner jusqu'à une centaine de kHz, ce qui rend possible l'exploitation de signaux jusqu'à un dizaine de kHz. La résolution est de 8 bits (1/256ème).
Cordialement.
Pierre
On en trouve pour 29$ sur Crowd Supply
A small, portable, USB-connected electronics lab-on-a-board that includes an oscilloscope, waveform generator, power supply,
logic analyzer, and multimeter.
All documentation (software, manual) for the EspoTek Labrador is available here: https://drive.google.com/drive/u/1/folders/0B7U0ulRLHf8cRVBkeFc2SHpUOGs.
The documentation will be updated soon (along with a video tutorial) and the software is currently stable.
C'est tout juste bon pour voir un signal à 1kHz
Au 1/3 du prix achète plutôt un analyseur logique clone de Saleae qui te rendra bien plus de services.
On peut rêver mais la physique elle ne rêve pas :
Théorie de l’échantillonnage :
il faut échantillonner au double de la plus haute fréquence à analyser.
Pour la fréquence la plus haute admissible il n'y a que 2 points disponibles pour toute la période du signal.
Si des fréquences supérieures à la 1/2 fréquence échantillonnage sont présentes les mesures seront faussées --> il faut filtrer.
Théorie de Fourier:
Un signal carré de fréquence fondamentale F contient une infinité d'harmoniques.
En pratique on peut se limiter à l'harmonique 10. C'est à dire que pour voir un signal carré à 1kHz il faut une bande de mesure jusqu'à 10 kHz, sinon tout ce que l'on peut voir c'est une sinusoïde.
Représentation graphique :
Il faut au minimum 50 points à l'écran pour la courbe commence à être visuellement exploitable.
En partant d'une fréquence d'échantillonnage de 100 kHz on se retrouve vite à une limite exploitable de quelques kHz.
Ça c'est pour des oscilloscopes bas de gamme. Les oscillo évolués, en présence de signal périodique, ont des mémoires d'accumulation et des algorithmes qui permettent d'avoir une visualisation correcte jusqu'à la 1/2 fréquence d'échantillonnage.
Par contre, en mode mono coup, ils ne sont pas plus performants que les modèles de bas de gamme.
Nota : Il faut un ADC ultra rapide et donc avec pas plus de 8 bits de résolution.
Un oscillo n'est pas un appareil de mesure de précision.
Je persiste et signe : investissez pour moins de 10€ dans un analyseur logique qui en plus d'indiquer un état haut ou bas vous décodera les protocoles de communication (Série, I2C, SPI, etc....).
Bonjour Benobo, j'ai un projet similaire et j'ai trouvé un exemple assez simple et très peut coûteux que je voudrais te partager pour te donner une idée. Évidemment je suis amateur en mode apprentissage donc pour commencer c'est pas mal.
http://www.instructables.com/id/Make-a-Digital-Oscilloscope-Via-Arduino-1/
Sinon je pense que le top serait d'utiliser un microcontrôleur STM32 + écran TFT 2.4, 2.8.. j'ai vu des exemples assez impressionnant, il y à aussi des oscillo. vendu en set dans les 13/15 eur (tout prêt avec module sauf le microcontrôleur) mais le mode DIY est moin chère.
Je te souhaite de trouver ton bonheur grâce aux expérimentés comme (☆Chpr☆ - ☆68tjs☆ - ☆Christian _R☆) qui te guideront, perso de passage et amateur c'est tout ce que je connais, bonne continuation et n'oublie pas de partager la fin de ton aventure pour nous a+
Est-ce que les STM32 acceptent le mode ADC 8bit ? Par défaut ils sont en mode 12 bits.
Je n'ai pas encore cherché dans la datasheet, et puis des STM32 il existe plus de 20 modèles.
Dîtes vous bien que l'utilisation d'un ADC sur 10,12 bits ou plus, est une erreur, elle se fait au détriment de la fréquence d'échantillonage qui est le paramètre principal.
Je n'ai plus d'information depuis que je suis en retraite mais une société comme Tektronix, leader mondial des oscillos, utilisait des ADC 8 bits et pour voir une courbe à l'écran c'est largement suffisant, idem pour les mesures.
68tjs:
Représentation graphique :
Il faut au minimum 50 points à l'écran pour la courbe commence à être visuellement exploitable.
En partant d'une fréquence d'échantillonnage de 100 kHz on se retrouve vite à une limite exploitable de quelques kHz.Ça c'est pour des oscilloscopes bas de gamme.
....................Nota : Il faut un ADC ultra rapide et donc avec pas plus de 8 bits de résolution.
..............
Bonjour,
Je souscris complètement.....
Serge .D
+1
8 bits reste la résolution d'une grande majorité d'oscilloscopes numériques du marché
Les efforts portent sur des paramètres bien plus importants à l'usage : fréquence d'échantillonage, bande passante, fonctionnalités de déclenchement, pronfondeur de la mémoire, traitement des données, ergonomie, interface PC.....