Blog ENI : Toute la veille numérique !
Accès illimité 24h/24 à tous nos livres & vidéos ! 
Découvrez la Bibliothèque Numérique ENI. Cliquez ici
Accès illimité 24h/24 à tous nos livres & vidéos ! 
Découvrez la Bibliothèque Numérique ENI. Cliquez ici
  1. Livres et vidéos
  2. Arduino
  3. Projet 4
Extrait - Arduino S'exercer au prototypage électronique (10 projets créatifs à réaliser soi-même)
Extraits du livre
Arduino S'exercer au prototypage électronique (10 projets créatifs à réaliser soi-même)
1 avis
Revenir à la page d'achat du livre

Projet 4 - Oscilloscope minimal

Présentation

Images/06AR03.png

Ce projet consiste à réaliser un oscilloscope pour visualiser des tensions variables sur l’écran d’un ordinateur. Il permettra de comprendre l’utilisation d’une entrée analogique pour mesurer une tension et aussi d’appréhender l’utilisation de données provenant d’une Arduino, mises en forme par un programme dans un ordinateur. La réalisation finale constituera un outil réellement utile pour l’amateur d’électronique, afin de pouvoir analyser des signaux divers.

Ce sera aussi l’occasion de comprendre la méthode des mesures de tension par l’Arduino et la méthode utilisée par les sorties PWM pour produire une tension variable.

1. Principe de fonctionnement

Le dispositif est constitué d’une Arduino équipée de pointes de touche, branchée à un ordinateur. À l’aide des pointes de touche, l’utilisateur peut mesurer une tension fluctuante allant jusqu’à 5 V. Cette tension est mesurée par l’Arduino à travers une entrée analogique, puis elle est transmise à l’ordinateur via une communication série. Finalement, dans l’ordinateur, un logiciel spécifique développé à l’aide de l’outil libre Processing met en forme ces mesures pour les rendre visibles graphiquement...

Matériel et outillage

Le matériel nécessaire se résume au strict minimum et représente un budget d’environ 25 euros.

1. Matériel

  • Une Arduino UNO.

  • Une paire de pointes de touche (de simples fils peuvent faire l’affaire).

images/01AR01.png

Arduino UNO

Images/06AR01.png

Pointes de touche

2. Outillage

Pour réaliser ce projet, il sera nécessaire d’utiliser un ordinateur pour programmer l’Arduino et aussi pour visualiser les mesures.

Montage

Images/06AR04.png

Montage de l’oscilloscope

Le montage de l’oscilloscope est extrêmement simple. Il consiste simplement à relier les deux pointes de touche (ou simplement des fils) à l’Arduino, une à la masse (GND) et l’autre à l’entrée analogique 0.

1. Entrée analogique

L’Arduino Uno est pourvue de six entrées analogiques numérotées de 0 à 5. Celles-ci sont capables de mesurer une tension entre 0 et 5 V, et de renvoyer un nombre proportionnel entre 0 et 1 024, car il s’agit d’un convertisseur 10 bits. Cet organe important de l’Arduino convertit des valeurs analogiques (fluctuantes et continues, comme une température, une pression, une luminosité) en valeurs numériques (codées sous forme de suites de 0 et de 1) exploitables par les outils informatiques. Le convertisseur analogique/numérique (ADC ou Analog Digital Converter en anglais, CAN ou convertiseur analogique numérique en français) fait littéralement le lien entre le monde réel et le monde informatique, c’est pourquoi il est utile de bien comprendre comment il fonctionne.

L’ADC de la puce qui anime l’Arduino (c’est-à-dire la ATmega328P pour les Uno) utilise la méthode des approximations successives. Cette méthode s’apparente un peu à un jeu de devinette pour découvrir...

Programmation

La programmation de l’oscilloscope est aussi extrêmement simple : il suffit de lire l’entrée analogique et de transmettre la valeur à travers une communication série.

La mesure est récupérée sur l’ordinateur par un programme qui se charge de représenter graphiquement l’évolution de la tension dans le temps.

Images/06AR05.png

Principe de fonctionnement de l’oscilloscope

1. Mesures de l’entrée analogique par l’Arduino

Dans un premier temps, il s’agit de mesurer la valeur de l’entrée analogique 0 et de la transmettre via la communication série.

Fichier : _01_envoi_mesures


void setup() { 
  Serial.begin(9600); 
} 
 
void loop() { 
  int mesure = analogRead(0); 
  Serial.println(mesure); 
}
 

La routine d’initialisation ouvre une communication série à la vitesse de 9 600 bauds, puis dans la boucle principale loop(), une variable mesure est créée pour stocker le résultat de la lecture de l’entrée analogique 0 (analogRead(0)). Celle-ci est ensuite transmise via la communication série.

Une fois ce code téléchargé, ouvrez le moniteur série dans l’IDE Arduino (Outils - Moniteur série) pour avoir un retour des mesures de l’entrée analogique.

En laissant la pointe reliée à l’entrée analogique 0 en contact avec rien, vous pouvez voir que la tension fluctue beaucoup. Ceci met en évidence le concept de ”potentiel flottant” : un conducteur relié à rien ne présente pas nécessairement une tension nulle.

À noter que la valeur transmise n’est pas la tension, mais la valeur retournée par la fonction analogRead(0), fluctuant entre 0 et 1 024. Cette valeur est un nombre codé sur 10 bits représentant une fraction de 5 V : 1 024 vaut 5 V, mais par exemple...

Pour aller plus loin

1. Améliorations possibles

Cet oscilloscope est déjà fort utile, mais il peut être amélioré de plusieurs manières.

Rendre l’oscilloscope portable

En ajoutant un écran TFT et une pile à l’Arduino, il est possible d’obtenir un oscilloscope portable autonome, à même d’effectuer des mesures dans diverses conditions sans avoir besoin d’ordinateur.

Améliorer le programme de visualisation

Le programme de visualisation utilisé dans ce projet est assez simple, mais il n’offre pas toutes les fonctionnalités d’un véritable oscilloscope (enregistrement du signal, utilisation d’un déclencheur, analyse FFT du signal, etc.). Il est intéressant d’implémenter toutes ces fonctions, et aussi de mesurer plusieurs signaux en même temps.

Mesurer des tensions plus élevées

L’Arduino est incapable de mesurer des tensions de plus de 5 V. Ajoutez un pont diviseur de tension, voire plusieurs ponts reliés à un sélecteur multiposition pour mesurer des tensions plus élevées.

Le courant électrique est potentiellement mortel à partir de 30 mA. On considère que les tensions inférieures à 50 V ne permettent pas la diffusion d’un tel courant à travers la peau. Mais prenez vos précautions et manipulez...