Logo Mon Club Elec

Affichage du résultat de la mesure de 3 voies analogiques sous forme graphique dans une interface Processing.

L’affichage graphique des résultats de mesures analogiques est un outil précieux pour les scientifiques et les ingénieurs. Il permet de visualiser rapidement et facilement les données recueillies et de les analyser plus en profondeur. Avec l’utilisation de l’interface Processing, il est possible de créer des graphiques à partir de mesures analogiques à 3 voies. Cet article expliquera comment afficher ces mesures sous forme graphique dans une interface Processing.

Affichage du résultat de la mesure de 3 voies analogiques sous forme graphique dans une interface Processing.

Affichage du résultat de la mesure de 3 voies analogiques sous forme graphique dans une interface Processing.

(cliquer sur l’image pour agrandir)

1.  Présentation

  • On réalise une mesure analogique sur 3 voies
  • Le résultat est affiché sur le PC sous forme graphique dans une interface oscillo-multivoies.

Ce programme utilise les fonctionnalités suivantes :

  • Utilise la connexion série vers le PC
  • Utilise la conversion analogique numérique 10 bits

Ressources utiles associées à ce programme :

  • La librairie Serial – pour les communications séries entre la carte Arduino et l’ordinateur ou d’autres composants

2.  Matériel Nécessaire

2.1  L’espace de développement Arduino

  • … pour éditer, compiler le programme et programmer la carte Arduino.
Affichage du résultat de la mesure de 3 voies analogiques sous forme graphique dans une interface Processing.

2.2  Le matériel suivant pour réaliser le montage associé

  • une plaque d’essai pour montage sans soudures,
Affichage du résultat de la mesure de 3 voies analogiques sous forme graphique dans une interface Processing.
  • des straps,
Affichage du résultat de la mesure de 3 voies analogiques sous forme graphique dans une interface Processing.
  • 3 résistances variables linéaire de 10 KOhms,
Affichage du résultat de la mesure de 3 voies analogiques sous forme graphique dans une interface Processing. Affichage du résultat de la mesure de 3 voies analogiques sous forme graphique dans une interface Processing.
 Affichage du résultat de la mesure de 3 voies analogiques sous forme graphique dans une interface Processing.

3.  Instructions de montage

  • La connexion série vers le PC utilise les broches 0 et 1 (via le câble USB)
  • Broche 14 : La sortie d’une résistance variable connectée entre le 0V et le 5V
  • Broche 15 : La sortie d’une résistance variable connectée entre le 0V et le 5V
  • Broche 16 : La sortie d’une résistance variable connectée entre le 0V et le 5V

4.  Le schéma théorique du montage

Affichage du résultat de la mesure de 3 voies analogiques sous forme graphique dans une interface Processing.

Le schéma théorique du montage (cliquer pour agrandir)

5.  Le circuit du montage

Affichage du résultat de la mesure de 3 voies analogiques sous forme graphique dans une interface Processing.

Le schéma du montage à réaliser (cliquer pour agrandir)

6.  Explication du programme

  • Le programme réalise en boucle une mesure sur les 3 broches analogiques
  • Le résultat est envoyé sous forme d’une chaine de caractères vers l’interface processing.

7.  Mise en oeuvre du programme

7.1  Préparation du montage et programmation de la carte Arduino :

  • Commencer par réaliser le montage indiqué sur plaque d’expérimentation
  • Ensuite, programmer la carte Arduino avec ce programme (en bas de page) selon la procédure habituelle

7.2  Fonctionnement

  • Lancer l’interface Processing côté PC
  • Faire varier les résistances : le résultat s’affiche sous forme de 3 courbes.

8.  Le programme complet en langage Arduino

A copier/coller directement dans l’éditeur Arduino

// — Programme Arduino —
// Trame de code générée par le générateur de code Arduino
// du site www.mon-club-elec.fr

// Auteur du Programme : X. HINAULT – Tous droits réservés
// Programme écrit le : 27/8/2011.

// ——- Licence du code de ce programme —–
//  This program is free software: you can redistribute it and/or modify
//  it under the terms of the GNU General Public License as published by
//  the Free Software Foundation, either version 3 of the License,
//  or any later version.
//  This program is distributed in the hope that it will be useful,
//  but WITHOUT ANY WARRANTY; without even the implied warranty of
//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
//  GNU General Public License for more details.
//  You should have received a copy of the GNU General Public License
//  along with this program.  If not, see <http://www.gnu.org/licenses/>.

// ////////////////////  PRESENTATION DU PROGRAMME ////////////////////

// ——– Que fait ce programme ? ———
 /* * On réalise une mesure analogique sur 3 voies
* Le résultat est affiché sur le PC sous forme graphique dans une interface oscillo-multivoies */

// — Fonctionnalités utilisées —

// Utilise la connexion série matérielle vers le PC
// Utilise / fonctionne avec une interface Processing coté PC
// Utilise la conversion analogique numérique 10 bits

// ——– Circuit à réaliser ———

// La connexion série matérielle vers le PC utilise les broches 0 et 1 (via le câble USB)

// Broche 14 : La sortie d’une résistance variable connectée entre le 0V et le 5V
// Broche 15 : La sortie d’une résistance variable connectée entre le 0V et le 5V
// Broche 16 : La sortie d’une résistance variable connectée entre le 0V et le 5V

// /////////////////////////////// 1. Entête déclarative ///////////////////////
// A ce niveau sont déclarées les librairies incluses, les constantes, les variables, les objets utiles…

// — Déclaration des constantes —

// — Inclusion des librairies —

// — Déclaration des constantes utiles —

// — Déclaration des constantes des broches E/S numériques —

// — Déclaration des constantes des broches analogiques —

const int Voie[6]={0,1,2,3,4,5}; //declaration constante de broche analogique

// — Déclaration des variables globales —

int mesure_brute=0;// Variable pour acquisition résultat brut de conversion analogique numérique
float mesuref=0.0;// Variable pour calcul résultat décimal de conversion analogique numérique

// — Déclaration des objets utiles pour les fonctionnalités utilisées —

// ////////////////////////// 2. FONCTION SETUP = Code d’initialisation //////////////////////////
// La fonction setup() est exécutée en premier et 1 seule fois, au démarrage du programme

void setup()   { // debut de la fonction setup()

// — ici instructions à exécuter 1 seule fois au démarrage du programme —

// ——- Initialisation fonctionnalités utilisées ——-  

Serial.begin(115200); // initialise connexion série matérielle à 115200 bauds
// IMPORTANT : régler le terminal côté PC avec la même valeur de transmission

// ——- Broches en sorties numériques ——-  

// ——- Broches en entrées numériques ——-  

// ——- Activation si besoin du rappel au + (pullup) des broches en entrées numériques ——-  

// ——- Initialisation des variables utilisées ——-  

// ——- Codes d’initialisation utile ——-  

} // fin de la fonction setup()
// ********************************************************************************

////////////////////////////////// 3. FONCTION LOOP = Boucle sans fin = coeur du programme //////////////////
// la fonction loop() s’exécute sans fin en boucle aussi longtemps que l’Arduino est sous tension

void loop(){ // debut de la fonction loop()

// — ici instructions à exécuter par le programme principal —

//—- envoie sur le port série les 6 mesures sous la forme CAN=:val0:val1:val2:val3:val4:val5:=finCAN
//— les : sont utilisés comme séparateur par le programme Processing cté PC

Serial.print(« CAN=: »); // chaine de début

for (int i=0; i<6; i++) { // défile les vois analogiques

  // acquisition conversion analogique-numerique (CAN) sur la voie analogique
  mesure_brute=analogRead(Voie[i]);

  // affiche valeur numerique entière ou à virgule au format décimal
  Serial.print(mesure_brute);
  Serial.print(« : »); // séparateur entre les valeurs

} // fin for i

  Serial.println(« =finCAN »); // fin de la chaine + saut de ligne

  delay(100); // fixe une pause entre 2 mesures
  // plus le délai est court, plus la trace est rapide

} // fin de la fonction loop() – le programme recommence au début de la fonction loop sans fin

// ********************************************************************************

// ////////////////////////// FONCTIONS DE GESTION DES INTERRUPTIONS ////////////////////

// ////////////////////////// AUTRES FONCTIONS DU PROGRAMME ////////////////////

// ////////////////////////// Fin du programme ////////////////////
 

9.  Le programme Processing

On peut utiliser l’un des programmes suivants (en réglant le nombre de voies à 3 dans le code) :

Noter cet article

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Archive Mon Club Elec

Articles populaires

Newsletter

Inscrivez-vous maintenant et bénéficiez d'un soutien continu pour réaliser vos travaux électriques en toute sécurité.