universite d’antananarivo ecole superieur …
Post on 19-Jun-2022
66 Views
Preview:
TRANSCRIPT
UNIVERSITE D’ANTANANARIVO
ECOLE SUPERIEUR POLYTECHNIQUE
DEPARTEMENT ELECTRONIQUE
Mémoire en vue de l’obtention du diplôme de licence
Rédigé et présente par :
Andile Saïd Ibroihim
Kenfack Teufack Frank Pavel
Numéro d’ordre:
Soutenue le: 23/03/2017
THEME :
Etude et Réalisation d’un oscilloscope numérique
Année universitaire 2015-2016
UNIVERSITE D’ANTANANARIVO
ECOLE SUPERIEUR POLYTECHNIQUE
DEPARTEMENT ELECTRONIQUE
Mémoire en vue de l’obtention du diplôme de licence
THEME :
Etude et Réalisation d’un oscilloscope numérique
Rédigé et présente par :
Andile Said Ibroihim
Kenfack Teufack Frank Pavel
Devant les membres de jury composes par:
Monsieur HERINANTENAINA Edmond Fils………………………..Président
Monsieur ZOARITSIHOARANA Fitiavana Avo Tongalafatra…….Examinateur
Et du directeur de mémoire Monsieur RASTEFANO Elisée
Numéro d’ordre :
Soutenue le: 23/03/2017
Année universitaire 2015-2016
Réalisation oscilloscope numérique
Remerciements
La rédaction du mémoire présent est l’aboutissement d’un travail effectué sous la
direction, le contrôle et le soutient d’un certains nombres de personnes à qui nous ne saurons
manquer de témoigner notre profonde gratitude.
Nous tenons d’abord à remercier le corps enseignant du département électronique et
particulièrement le chef du département Mr ANDRIAMANANTSOA Guy Danielson pour
nous avoir encadrés durant notre parcours.
Ensuite nous remercions également Mr .RASTEFANO Elisée qui nous a encadrées
pendant la réalisation de ce projet et aussi à Mr HERINANTENAINA Edmond Fils président
du Jury et à Mr ZOARITSIHOARANA Fitiavana Avo Tongalafatra, qui a bien voulu
examiner ce mémoire.
Enfin nous n’allons pas oublier d’adresser notre gratitude à nos parents pour leur
soutien moral et financier durant tous nos études, nos différentes familles pour leurs soutiens
inconditionnels et tous nos amis et collègues qui nous ont toujours été fidèle et nous ont
apportés leur aide pour avoir des idées dans divers aspects du projet.
Réalisation oscilloscope numérique
RESUME
L’oscilloscope est un appareil de mesure indispensable dans tous les laboratoires.
Actuellement l’oscilloscope numérique remplace presque complètement l’oscilloscope
analogique. Pour cela on a pensé à la réalisation d’un oscilloscope numérique portatif.
L’oscilloscope réalisé dans ce projet est connectable au PC à l’aide du Bus universel en
série(USB). L’interface utilisateur, réalisé sous l’environnement java, contrôle la
communication entre la carte Arduino (dont le cœur est le microcontrôleur ATMega 328) et
l’ordinateur. Cette interface qui gère l’affichage de notre oscilloscope est réalisée grâce au
logiciel processing. La fréquence du signal acquit est limité par le temps de conversion du
microcontrôleur.
Mot clés: Oscilloscope, USB, carte Arduino, processing, Microcontrôleur.
ABSTRACT
The oscilloscope is an essential measurement apparatus in all labs. Nowadays the analogic
oscilloscope is almost replaced by the numeric oscilloscope. That’s why in this project we
have thought to carry out a Universal Serial Bus (USB) connectable handheld numeric
oscilloscope. The user interface is implemented in the java environment, controls the
communication between the Arduino card (he is based on the ATMega 328) and computer.
This interface who manages displays our oscilloscope is implemented by the software
processing. The frequency of the acquired signal is limited by the conversion time of the
microcontroller.
Keywords: Oscilloscope, USB, Arduino card, processing, Microcontroller.
Réalisation oscilloscope numérique
Sommaire
REMERCIEMENTS …………………………………………………………………………..I
RESUME ……………………………………………………………………………………...II
SOMMAIRE………………………………………………………………………………….III
LISTE DES FIGURES………………..……………………………………………………...VI
LISTE DES ABREVIATION………………………………………………………………..VII
INTRODUCTION GENERALE………………………………………………………………1
Chapitre I : L’oscilloscope………………………………………………………………………3
I.1 Introduction……………………………………………………………………………….....4
I.2 L’oscilloscope……………………………………………………………………………......4
I.3 Les différents types d’oscilloscope……………………………………………………….....6
I.3.1 L’oscilloscope analogique………………………………………………………………….6
a) Principe de fonctionnement b) Fonction de base
I.3.2 L’oscilloscope numérique…………………………………………………………………8
a) Principe de fonctionnement b) Fonction de base
I.4 Quelques définitions…………………………………………………………………….....10
Chapitre II : Outils nécessaire pour la réalisation d’un oscilloscope…………………………..13
II.1 L’Arduino………………………………………………………………………………….14
II.1.1 Introduction……………………………………………………………………………..14
II.1.2 Matériel………………………………………………………………………………......14
II.1.3 Schéma simplifie de la carte Arduino…………………………………………………...16
II.1.4 Microcontrôleur ATMEL ATMega328………………………………………………….16
II.2 Le microcontrôleur pic…………………………………………………………………......19
Réalisation oscilloscope numérique
II.2.1 Introduction……………………………………………………………………………...19
II.2.2 Caractéristiques des Pics…………………………………………………………………19
II.2.3 Classification des Pics de Microchip…………………………………………………….20
II.2.4 Identification d’un pic……………………………………………………………………20
II.2.5 Choix d’un pic…………………………………………………………………………...20
II.2.6. Exemple : Architecture du pic 16F84…………………………………………………..21
II.2.7 Brochage et fonction des pattes………………………………………………………....21
II.2.8 Architecture générale…………………………………………………………………....22
II.3 Bus universel en série……………………………………………………………………...23
II.3.1 Introduction………………………………………………………………………………23
II.3.2 Les différents bus de périphériques externes………………………………………….....24
II.3.3 Normes USB……………………………………………………………………………..25
a) USB 1 (fullou low speed) b) USB 2.0 (High speed) c) USB 3.0 (Super Speed)
II.3.4 Connectique……………………………………………………………………………...26
a) Description du Câble USB b) Composition du câble USB c) Connecteurs USB
II.3.5 Les descripteurs……………………………………………………………………….....28
a) Définition d’un descripteur
b) Rôle des descripteurs
II.3.6 différents mode de transfert des données………………………………………………..29
II.4 différents logiciel utilisé…………………………………………………………………...30
II.4.1 logiciel Arduino………………………………………………………………………….30
II.4.2 logiciel processing…………………………………………………………………….....32
II.4.3 Logiciel Proteus……………………………………………………………………….....33
Réalisation oscilloscope numérique
CHAPITRE III : REALISATION DU PROJET……………………………………………….34
III.1 Présentation du montage………………………………………………………………......35
III.1.1 Circuit d’entrée………………………………………………………………………….35
a) L’atténuateur BF
b) Circuits d’offset
III.2 Programmation de l ARDUINO………………………………………………………......37
III.3 Interface graphique……………………………………………………………………......41
III.4 Simulation sur Proteus………………………………………………………………….....44
CONCLUSION GENERALE…………………………………………………………………46
ANNEXE I: Datasheet Arduino ATMEGA328…………..……………………………………47
ANNEXE II: Datasheet pic16F84...……………………………………………………………49
ANNEXE III: Datasheet LM324………………………………………………………………50
ANNEXE IV: Proteus ISIS…………………………………………………………………….51
ANNEXE V: Descripteur USB………………………………………………………………...55
REFFERENCES……………………………………………………………………………….59
Réalisation oscilloscope numérique
Liste des figures
Figure I.1: Composantes X, Y et Z d’un signal……………………………………………….4
Figure I.2: panneau avant d’un oscilloscope analogique à droite et à gauche celui d’un
…………oscilloscope numérique……………………………………………………………..5
Figure I.3: schéma générale d’un oscilloscope analogique……………………………………7
Figure I.4: Le déclenchement stabilise d’un signal répétitif………………………………….7
Figure I.5: schéma général d’un l’oscilloscope numérique…………………………...………9
Figure II.1: modèle d’une carte Arduino « Uno »…………………………………………...15
Figure II.2: schéma d’une carte Arduino……………………………………………………16
Figure II.3: brochage du microcontrôleur ATMega328……………………………………..18
Figure II.4: brochage du Pic 16F84………………………………………………………….22
Figure II.5: structure interne du Pic 16F84………………………………………………….23
Figure II.6: logo norme USB 1………………………………………………………………26
Figure II.7: logo norme USB 2………………………………………………………………26
Figure II.8: logo norme USB 3………………………………………………………………26
Figure II.9: structure d’un câble USB……………………………………………………….27
Figure II.10: connecteurs USB………………………………………………………………28
Figure II.11: présentation logiciel Arduino………………………………………………….31
Figure II.12: présentation logiciel processing………….……………………………………33
Figure II.13: aperçu d’un schéma sur Proteus……………………………………………….33
Figure III.1: circuit d’entrée de l’oscilloscope………………………………………………36
Réalisation oscilloscope numérique
Figure III.2: éditeur des programmes en Arduino…………………………………………...37
Figure III.3:Communication Arduino – Processing…………………………………………40
Figure III.4: Affichage de la courbe sur processing…………………………………………43
Figure III.5: Simulation de l’oscilloscope sur Proteus ISIS…………………………………44
Réalisation oscilloscope numérique
Liste des abréviations
AC: Alternating Current.
CRT : Cathode Ray Tube
CAN : Convertisseur Analogique Numérique.
CMOS : Complementary Metal–Oxide–Semiconductor
DC: Direct Current.
FOSC : Frequency of the Oscillator
GND :Ground
ICSP : In-Circuit Serial Programming
IT : Interruption
PC : Personal Computer
PIC : Peripheral Interface Controller
PLL : Phase-locked loop
SIE : Serial Interface Engine
TOSC : Time of the Oscillator
USB : Universal Serial Bus
Réalisation oscilloscope numérique
Introduction générale
L’oscilloscope est un appareil de mesure électronique de représentation graphique sur
un écran d'une ou de plusieurs tensions variables en fonction du temps. Le traitement
analogique de ces tensions est compliqué et le traitement numérique utilisant les
convertisseurs analogique numérique est devenu l’alternative. Un convertisseur analogique-
numérique, est un montage électronique dont la fonction est de traduire une grandeur
analogique en une valeur numérique (codée sur plusieurs bits), proportionnelle au rapport
entre la grandeur analogique d'entrée et la valeur maximum du signal. Il existe plusieurs
techniques pour convertir un signal analogique en signal numérique. Le CAN est l’élément
principal de la chaine d’acquisition.
La chaîne d'acquisition de donnée est l'ensemble des éléments nécessaires à la
récupération des données (analogiques ou numériques) de leur transmission jusqu'au récepteur
et à l'utilisateur des données.
Pour faire communiquer un PC à une carte d’acquisition de données on utilise plusieurs
techniques : port parallèle, port série, port USB, etc.
Le bus USB est basé sur une architecture de type série. Il s'agit toutefois d'une interface
entrée-sortie beaucoup plus rapide que le port série standard. L'architecture qui a été retenue
pour ce type de port est en série pour deux raisons principales : l'architecture série permet
d'utiliser une cadence d'horloge beaucoup plus élevée qu'une interface parallèle, car celle-ci
ne supporte pas des fréquences trop élevées (dans une architecture à haut débit, les bits
circulant sur chaque fil arrivent avec des décalages, provoquant des erreurs) ; les câbles série
coûtent beaucoup moins cher que les câbles parallèles.
Classiquement, les microcontrôleurs communiquent avec les ordinateurs personnels par
le port série (RS232). Avec l’évolution de la technologie le port série (RS232) est voué à
disparaître car il est trop lent pour certaines applications.
À fin de réaliser ce projet et éclairer l'utilité de ce dispositif, nous nous sommes
interrogés sur certaines questions:
Qu’est-ce que l'oscilloscope? Les différents types? Quelles sont les avantages du bus USB?
Qu’est- ce qu'un ARDUINO.
Réalisation oscilloscope numérique
Le travail que nous avons réalisé se résume autour de trois chapitres :
Nous allons voir dans un premier temps le chapitre 1 où nous parlerons l’oscilloscope des
différents types ainsi que leur principe de fonctionnement.
Ensuite nous passerons au chapitre 2 dans lequel nous verrons les Outils et langages utilisée
pour la réalisation du projet.
Enfin pour terminer nous verrons le chapitre 3 qui concerne la réalisation du projet
proprement dit, autrement dit à la programmation de la carte Arduino, le montage associe et la
programmation du logiciel processing pour l’interface graphique.
Réalisation oscilloscope numérique
CHAPITRE I
L’OSCILLOSCOPE
Réalisation oscilloscope numérique
I.1 Introduction
Un oscilloscope est un instrument de mesure destiné à visualiser un signal électrique, le plus
souvent variable au cours du temps. Il est utilisé par de nombreux scientifiques afin de
visualiser soit des tensions électriques, soit diverses autres grandeurs physiques préalablement
transformées en tension au moyen d'un convertisseur adapté. On distingue généralement les
oscilloscopes analogiques qui utilisent directement un multiple de la tension d'entrée pour
produire la déviation du spot et les oscilloscopes numériques qui transforment préalablement
la tension d'entrée en nombre (bits), L'affichage est reconstruit après un moment. Il devient
alors une fonction annexe de l'appareil qui peut même en être dépourvu, la visualisation du
signal étant effectuée par un ordinateur extérieur relié à l'oscilloscope. [1]
I.2 L’oscilloscope
L’oscilloscope est un appareil fournissant une représentation graphique d’un signal
électrique. Dans la plupart des applications, ce graphique montre comment les signaux
évoluent en fonction du temps : l’axe vertical (Y) représente la tension (ou l’amplitude d’une
autre grandeur traduite en tension électrique) et l’axe horizontal (X) représente le temps.
L’intensité ou luminosité de l’écran est appelée quelquefois axe Z (fig I.1) . [2]
FigureI.1: Composantes X, Y et Z d’un signal. [2]
Réalisation oscilloscope numérique
La représentation graphique sur l’écran de l’oscilloscope fournit beaucoup d’informations au
sujet de ce signal, comme :
la détermination des paramètres temporels et des paramètres d’amplitude du signal
le calcul de la fréquence du signal
la visualisation des « variations » du signal électrique
la visualisation de la composante continue du signal (DC) et de sa composante
alternative(AC)
la mise en évidence du bruit dans le signal et de son évolution dans le temps.
Les Panneaux avant des oscilloscopes sont très similaires quel que soit le type d’instrument
Mais l’oscilloscope numérique dispose de fonctions supplémentaires pour l’acquisition et le
traitement de l’information (fig I.2). [3]
Figure I.2: panneau avant d’un oscilloscope analogique à droite et à gauche celui d’un oscilloscope numérique.
L’utilité d’un oscilloscope n’est pas limitée au monde de l’électronique. Un oscilloscope peut
mesurer tout genre de grandeurs physiques à condition qu’on puisse la convertir
préalablement en un signal électrique en utilisant le capteur adéquat.
Réalisation oscilloscope numérique
I.3 Les différents types d’oscilloscopes
Il existe deux types d’oscilloscopes : analogique et numérique. Un oscilloscope analogique
fonctionne par déflexion électrique d’un faisceau d’électrons en fonction de la tension
mesurée. La tension dévie le faisceau d’électrons de haut en bas proportionnellement et trace
une courbe sur l’écran qui donne une image instantanée du signal. Par contre un oscilloscope
numérique échantillonne le signal et utilise un convertisseur analogique-numérique (CAN)
pour convertir la tension à mesurer en une information numérique. Il utilise ensuite cette
information numérique pour reconstruire la courbe sur l’écran.
Pour beaucoup d’applications, l’un et l’autre type peuvent être utilises. Cependant, chaque
type possède des caractéristiques spécifiques plus ou moins adaptées aux signaux à mesurer.
L’oscilloscope analogique est souvent préfère à un oscilloscope numérique lorsqu’il est
important de visualiser des signaux variables très rapidement dans le temps. Les oscilloscopes
numériques capturent des événements uniques. Ils peuvent traiter les données numériques et
les transmettre à un ordinateur pour traitement. Ils peuvent également stocker les données
numériques en mémoire pour examen ultérieur ou permettre leur impression sur une
imprimante.
I.3.1 L’oscilloscope analogique
a) Principe de fonctionnement
Lorsqu’un oscilloscope est connecte à un circuit, la tension transite de la sonde à travers le
système vertical de l’oscilloscope. La figure I.4représente le bloc diagramme simple d’un
oscilloscope analogique. En fonction de l’échelle verticale (commande volts/division), un
atténuateur réduit la tension du signal ou un amplificateur augmente la tension du signal.
Ensuite le signal est appliqué directement aux plaques de déflexion verticales du tube à rayons
cathodiques.
La tension appliquée à ces plaques de déflexion provoque le déplacement du spot sur l’écran
(le faisceau électronique frappant le phosphore crée le spot lumineux sur l’écran). Une tension
Positive produit un déplacement vers le haut et une tension négative produit un déplacement
vers le bas (fig I.3).
Réalisation oscilloscope numérique
Le signal est transmis au système de déclenchement pour initier un « balayage Horizontal ».
Le déclenchement du système horizontal provoque le démarrage de la base de temps
horizontale qui déplace le spot au travers de l’écran de la gauche vers la droite dans un
intervalle de temps spécifique. Aux vitesses de balayage élevées, le point peut balayer l’écran
jusqu’à 500 000 fois chaque seconde. La répétition du balayage, liée à la persistance
rétinienne et à la déflexion verticale, permet la visualisation de la courbe sur l’écran. Le
déclenchement est nécessaire pour assurer la stabilité du signal répétitif. Il s’assure que le
balayage commence toujours au même point d’un signal répétitif et il en résulte donc une
image plus stable. Le déclenchement permet d’obtenir une image stable d’un signal, même si
sa fréquence de répétition n’est pas constante. [2] [3]
Figure I.3 : schéma générale d’un oscilloscope analogique.
Figure I.4 : Le déclenchement stabilise d’un signal répétitif
Réalisation oscilloscope numérique
b) Fonctions de base
En conclusion, avec un oscilloscope analogique, il est nécessaire d’ajuster trois fonctions de
base pour visualiser un signal :
1) La base de temps : qui permet d’ajuster le temps par division souvent notée(temps/div
ou sec/div) représente horizontalement à l’écran. Le contrôle de l’échelle horizontale sur
l’oscilloscope permet d’ajuster la base de temps.
2) L’atténuation (diminution) ou l’amplification (augmentation) du signal. Le contrôle
de l’échelle verticale permet d’ajuster le signal avant qu’il ne soit applique au système de
déflexion verticale.
3) Le déclenchement de l’oscilloscope ; ce contrôle permet de stabiliser un signal
répétitif, aussi bien qu’un signal unique.
La mise au point de l’intensité et du focus permet de créer sur l’écran un signal plus net.
I.3.2 L’oscilloscope numérique
a) Principe de fonctionnement
Quelques-unes des parties constituant l’oscilloscope numérique sont les mêmes que celles des
oscilloscopes analogiques, cependant les oscilloscopes numériques contiennent des systèmes
de traitement de données additionnels. Avec les systèmes additionnels, l’oscilloscope
numérique rassemble les données numériques pour représenter la courbe entière sur l’écran.
Quand un oscilloscope numérique est connecté à un circuit, le système vertical ajuste
l’amplitude du signal de la même façon que dans un oscilloscope analogique. Ensuite, le
convertisseur analogique-numérique (CAN) échantillonne le signal à des intervalles de temps
discrets et convertit la tension du signal à ces instants en valeurs numériques appelées
échantillons. L’horloge du système horizontal détermine l’instant pendant lequel
l’échantillonneur du CAN prélevé un échantillon. Le rythme auquel l’horloge déclenche
la numérisation est appelé fréquence d’échantillonnage et est exprimé en échantillons par
seconde.
Réalisation oscilloscope numérique
Les échantillons du CAN sont stockés dans la mémoire comme points de la courbe. Le
nombre de points nécessaires pour représenter une courbe complète est appelé la longueur
d’enregistrement. Le système de déclenchement détermine le début et l’arrêt de
l’enregistrement. L’écran permet la visualisation des points de la courbe représentant le signal
entrepose dans la mémoire. En fonction des capacités de l’oscilloscope, des traitements
additionnels sur les échantillons permettent d’accroitre la résolution de la visualisation à
l’écran. Le pré déclenchement peut être disponible, permettant de voir des événements
précédant le point de déclenchement (fig I.5). [2]
Figure I.5 : schéma général d’un l’oscilloscope numérique.
b) Fonctions de base
Avec un oscilloscope numérique, les réglages suivants sont à ajuster pour effectuer une
mesure :
1) la base de temps. Ce réglage permet de sélectionner la fenêtre de temps
représentée par la largeur de l’écran, Le contrôle de l’échelle horizontale sur
l’oscilloscope permet d’ajuster la base de temps.
Réalisation oscilloscope numérique
2) l’atténuation (diminution) ou amplification (augmentation) du signal. Le contrôle
de L’échelle verticale permet d’ajuster l’amplitude du signal avant de l’envoyer au
CAN.
3) le déclenchement de l’oscilloscope. Ce contrôle permet de stabiliser un signal
répétitif, de capturer un signal mono coup, et de fixer le pré-déclenchement.
4) le mode d’acquisition et le mode d’échantillonnage. Ces réglages dépendent de la
fréquence et de la complexité du signal qui doit être mesuré. Les réglages du
panneau avant permettent d’ajuster ces paramètres.
I.4 quelques définitions
a) Fréquence et période
Un signal répétitif a une fréquence. La fréquence est mesurée en hertz (Hz) et est égale au
nombre de fois que le signal se répète lui-même en une seconde (cycles par seconde).La
période est le temps nécessaire pour effectuer un cycle complet. Période et fréquence sont
inverses l’un de l’autre. [2]
b) Bande passante
La spécification de la bande passante indique la fréquence maximale à laquelle l’oscilloscope
mesure correctement un signal avec le minimum d’aberration. Par convention, la bande
passante indique la fréquence pour laquelle le signal affiché est réduit à 70,7 % de l’amplitude
crête-à-crête appliquée a l’entrée de l’oscilloscope (cette atténuation de 70,7 % est appelée la
atténuation à - 3 dB (basé sur une échelle logarithmique). [2]
c) Sensibilité verticale
La sensibilité verticale indique de combien l’amplificateur vertical peut amplifier un signal
faible. La sensibilité verticale s’exprime habituellement en millivolts (mV) par division. La
plus petite tension qu’un oscilloscope d’usage général peut détecter est typiquement d’environ
2 mV par division. Les facteurs d’atténuation sont généralement en séquence 1-2-5. Une
possibilité d’ajustage de la sensibilité continument variable existe sur les instruments. [2]
Réalisation oscilloscope numérique
d) Résolution verticale
La résolution verticale est limitée d’une part par l’épaisseur de la trace et d’autre part parla
sensibilité de l’amplificateur sur un oscilloscope analogique.
Exemple : pour une sensibilité de 1 mV/div, chaque division principale étant subdivisée en 5
petites divisions, l’utilisateur peut apprécier 1/2 division soit : 0,1 mV. Pour les oscilloscopes
numériques, la résolution est liée au nombre de bits du CAN.
Exemple : soit un CAN de 8 bits. La spécification s’exprime pour 8 bits sur la hauteur de
l’écran, soit 256 niveaux pleine échelle (10 divisions verticales), donc 25 niveaux par division
verticale. Pour 10 mV/div, la résolution est de : 10 mV/25 = 400 mV.[2]
e) Couplage
L’utilisateur a le choix de filtrer ou non le signal entrant. Il existe trois types de couplage
d’entrée : AC, DC, GND.
En AC (alternatif), la composante continue du signal, bloquée par une capacité, n’est
pas transmise.
En DC (continu), toutes les composantes du signal sont transmises.
En GND (masse), l’entrée est reliée a la masse de l’instrument pour servir de référence
aux mesures d’amplitude. [2]
f) Vitesse de balayage
Elle indique la vitesse à laquelle le spot se déplace en travers de l’écran pour les oscilloscopes
analogiques. Elle indique la fenêtre temporelle d’acquisition pour les oscilloscopes
numériques. La vitesse de balayage la plus rapide d’un oscilloscope est habituellement de 1
nanoseconde/div. [2]
g) Base de temps
Les oscilloscopes disposent en général de deux bases de temps : la principale (A) et la
retardée (B). Le but de cette technique est de permettre de sélectionner un détail dans le signal
visualise (a une vitesse A) pour ensuite le dilater sur tout l’écran a une vitesse B>A. La
fonctionnalité reste identique sur les oscilloscopes numériques, bien que le procédé employé
soit différent. La mémorisation du signal apporte en outre de nombreuses possibilités, telles
que pré et post déclenchement, retards en événement. [2]
Réalisation oscilloscope numérique
h) Fréquence d’échantillonnage
La fréquence d’échantillonnage sur les oscilloscopes numériques indique le nombre
d’échantillons par seconde que le CAN (et par conséquent l’oscilloscope) peut acquérir. Cette
fréquence est exprimée habituellement en méga échantillons par seconde (Me/s soit 106
échantillons par seconde). Plus elle est rapide, plus l’oscilloscope peut représenter
correctement les détails dans un signal haute fréquence. La fréquence d’échantillonnage
minimum peut être aussi primordiale pour regarder des signaux changeant lentement sur de
longues périodes de temps. Typiquement, la fréquence d’échantillonnage se modifie avec la
commande sec/div de la base de temps et est choisie de telle sorte qu’il y ait un nombre
constant de points pour une longueur d’enregistrement donnée. [2]
Réalisation oscilloscope numérique
CHAPITRE II :
Outils nécessaire pour la réalisation
d’un oscilloscope numérique
Réalisation oscilloscope numérique
II.1 L’ARDUINO
II.1.1 Introduction
Arduino est une plate-forme de prototypage d'objets interactifs à usage créatif constituée d'une
carte électronique et d'un environnement de programmation.
Sans tout connaître ni tout comprendre de l'électronique, cet environnement matériel et
logiciel permet à l'utilisateur de formuler ses projets par l'expérimentation directe avec l'aide
de nombreuses ressources disponibles en ligne.
Arduino permet d'étendre les capacités de relations humain/machine ou environnement/
machine. Arduino est un projet en source ouverte : la communauté importante d'utilisateurs et
de concepteurs permet à chacun de trouver les réponses à ses questions.
Le projet Arduino est issu d'une équipe d'enseignants et d'étudiants de l'école de Design
d'Interaction d'Ivrea 1 (Italie). L’objectif était d'arriver à un dispositif simple à utiliser, dont
les coûts seraient peu élevés, les codes et les plans « libres » (c'est-à-dire dont les sources sont
ouvertes et peuvent être modifiées, améliorées, distribuées par les utilisateurs eux-mêmes) et,
enfin, « multi-plates-formes » (indépendant du système d'exploitation utilisé).
L'environnement Arduino est particulièrement adapté à la production artistique ainsi qu'au
développement de conceptions qui peuvent trouver leurs réalisations dans la production
industrielle. [4]
Le nom Arduino trouve son origine dans le nom du bar dans lequel l’équipe avait l'habitude
de se retrouver. Arduino est aussi le nom d'un roi italien, personnage historique de la ville «
Arduin d’Ivrée », ou encore un prénom italien masculin qui signifie « l'ami fort ».
II.1.2 Matériel
La carte Arduino repose sur un circuit intégré (fig II.1 ) associée à des entrées et sorties qui permettent à l'utilisateur de brancher différents types d'éléments externes :
Côté entrées, des capteurs qui collectent des informations sur leur environnement comme la variation de température via une sonde thermique, le mouvement via un détecteur de présence ou un accéléromètre, le contact via un bouton-poussoir, etc.
Côté sorties, des actionneurs qui agissent sur le monde physique telle une petite
lampe qui produit de la lumière, un moteur qui actionne un bras articulé, etc.
Réalisation oscilloscope numérique
Comme le logiciel Arduino, le circuit électronique de cette plaquette est libre et ses plans sont
disponibles sur internet. On peut donc les étudier et créer des dérivés. Plusieurs constructeurs
proposent ainsi différents modèles de circuits électroniques programmables et utilisables avec
le logiciel Arduino. [1]
Il existe plusieurs variétés de cartes Arduino. La figure ci-dessous montre par exemple, la
version d’une carte Arduino : la « Uno », sortie en 2010.
Le modèle UNO est une carte électronique dont le cœur est un microcontrôleur ATMEL de
référence ATMega328. Le microcontrôleur ATMega328 est un microcontrôleur 8bits de la
famille AVR dont la programmation peut être réalisée en langage C.
L'intérêt principal des cartes ARDUINO est leur facilité de mise en œuvre. ARDUINO fournit
un environnement de développement s'appuyant sur des outils open-source. Le chargement du
programme dans la mémoire du microcontrôleur se fait de façon très simple par port USB. En
outre, des bibliothèques de fonctions "clé en main" sont également fournies pour l'exploitation
d'entrées-sorties courantes : gestion des E/S TOR, gestion des convertisseurs ADC, génération
de signaux PWM, exploitation du bus TWI/I 2 C, exploitation de servomoteurs ect. [4]
Figure II.1 : modèle d’une carte Arduino « Uno ». [4]
Réalisation oscilloscope numérique
II.1.3 Schéma simplifié de la carte Arduino UNO
Les signaux d'entrée-sortie du microcontrôleur sont reliés à des connecteurs selon le schéma de la figure II.2.
FIGURE II.2: schéma d’une carte Arduino. [4]
II.1.4 Microcontrôleur ATMEL ATMega328
Le microcontrôleur utilisé sur la carte Arduino UNO est un microcontrôleur ATMega328 (figII.3). C'est un microcontrôleur ATMEL de la famille AVR 8bits.
Les principales caractéristiques sont :
FLASH = mémoire programme de 32Ko
SRAM = données (volatiles) 2Ko
EEPROM = données (non volatiles) 1Ko
Digital I/O (entrées-sorties Tout Ou Rien) = 14
Réalisation oscilloscope numérique
3 ports PortB, PortC, PortD (soit 23 broches en tout I/O).
Timers/Counters : Timer0 et Timer2 (Comptage 8 bits), Timer1 (comptage 16bits).
Chaque timer peut être utilisé0 pour générer deux signaux PWM. (6 broches OCxA/OCxB).
Plusieurs broches multifonctions : certaines broches peuvent avoir plusieurs fonctions différentes
choisies par programmation.
PWM = 6 brochesOC0A(PD6), OC0B(PD5), 0C1A(PB1), OC1B(PB3), OC2A(PB3),
OC2B(PD3)
Analog to Digital Converter (résolution 10bits) = 6 entrées multiplexées ADC0(PC0) à
ADC5(PC5)
Gestion bus I2C (TWI TwoWire Interface) = le bus est exploité via les broches
SDA(PC5)/SCL(PC4).
Port série (USART) = émission/réception série via les broches TXD(PD1)/RXD(PD0)
Comparateur Analogique = broches AIN0(PD6) et AIN1 (PD7) peut déclencher interruption
WatchdogTimer programmable.
Gestion d'interruptions (24 sources possibles ) : en résumé
– Interruptions liées aux entrées INT0 (PD2) et INT1 (PD3)
– Interruptions sur changement d'état des broches PCINT0 à PCINT23
– Interruptions liées aux Timers 0, 1 et 2 (plusieurs causes configurables)
– Interruption liée au comparateur analogique
– Interruption de fin de conversion ADC
– Interruptions du port série USART
Réalisation oscilloscope numérique
– Interruption du bus TWI (I2C). [4]
Figure II.3 : brochage du microcontrôleur ATMega328. [4]
Choix de l Arduino pour notre projet
Pour mettre en pratique notre projet on a choisis ARDIUNO pour réaliser notre oscilloscope
numérique pour la simple raison qu’arduino est plus facile à manœuvrer. En vue des
performances qu’elles offrent, les cartes Arduino sont relativement peu couteuses, ce qui est
un critère majeur. Celle que nous utiliserons pour la suite du cours a un prix qui tourne aux
environs de 25 € TTC ce qui est un bon rapport qualité/prix.
C'est un bien grand mot, mais elle définit de façon assez concise l'esprit de l'Arduino. Elle
constitue en elle-même deux choses :
Le logiciel : gratuit et open source, développé en Java, dont la simplicité d'utilisation
relève du savoir cliquer sur la souris.
Le matériel : cartes électroniques dont les schémas sont en libre circulation sur
internet.
Réalisation oscilloscope numérique
NB: il est à préciser que nous pouvons également réaliser ce projet avec d autre module comme le microcontrôleur PIC. Nous détaillerons dans les paragraphes qui suivent de quoi il est question.
II.2 Le microcontrôleur (PIC)
II.2.1 Introduction
Les microcontrôleurs Pics sont des unités de traitement de l’information de type
microprocesseur à laquelle on a ajouté des périphériques internes permettant de réaliser des
montages sans nécessiter l’ajout des composants externes. Aujourd’hui implantés dans la
plupart des applications grand public ou professionnelles, il en existe plusieurs familles. Le
PIC (Peripheral Interface Controller) Est un composant encore très utilisé à l’heure actuelle,
c’est un compromis entre simplicité d’emploi, rapidité et prix de revient. Les PIC existent
dans plusieurs versions : [5]
les UVPROM qui sont effaçable par une source de rayonnements ultraviolets
les OTPROM programmable une seule fois
les EEPROM et flash EPROM qui sont effaçables électriquement.
II.2.2 Caractéristique d’un PIC
Le PIC est un microcontrôleur de chez Microchip. Ses caractéristiques principales sont :
Séparation des mémoires de programme et des données (architecture Harvard) :
On obtient ainsi une meilleure bande passante, des instructions et des données
pas forcément codées sur le même nombre de bits.
Communication avec l'extérieur seulement par des ports : il ne possède pas de bus
d'adresses, de bus de données et de bus de contrôle comme la plupart des
microprocesseurs.
Utilisation d'un jeu d'instructions réduit, d'où le nom de son architecture : RISC
(Reduced Instructions Set Construction). Les instructions sont ainsi codées sur un
nombre réduit de bits, ce qui accélère l'exécution (1 cycle machine par instruction sauf
Réalisation oscilloscope numérique
pour les sauts qui requirent 2 cycles). En revanche, leur nombre limité oblige à se
restreindre à des instructions basiques, contrairement aux systèmes d'architecture
CISC (Complex Instructions Set Construction) qui proposent plus d'instructions donc
codées sur plus de bits mais réalisant des traitements plus complexes. [5]
II.2.3 Classification des Pics de Microchip
Actuellement les modèles Microchip, sont classés en 3 grandes familles, comportant
chacune plusieurs références. Ces familles sont :
Base-line : les instructions sont codées sur 12 bits.
mid-line : les instructions sont codées sur 14 bits.
High-End : les instructions sont codées sur 16 bits.
II.2.4.Identification d’un Pic
Un PIC est identifié par un numéro de la forme suivant : xx(L)XXyy –zz:
xx : famille du composant, actuellement « 12, 14, 16, 17 et 18 ».
L : tolérance plus importante de la plage de tension.
XX : type de mémoire programme : type C( EPROM ou EEPROM CR) ,type
CR(PROM) et le type F (flash).
yy : constitue la référence du PIC.
zz : indiquant la fréquence d’horloge maximale que le PIC peut recevoir
(Vitesse maximum du quartz)
II.2.5 Le choix d’un PIC
Le choix d’un PIC est directement lié à l’application envisagée :
Il faut dans un premier temps déterminer le nombre d’entrées/sorties nécessaires
pour l’application. Ce nombre d’entrées/sorties nous donne une idée sur la
famille du PIC.
Il faut ensuite déterminer si l’application nécessite un convertisseur
Analogique/Numérique ce qui va orienter un peu plus vers le choix du PIC.
Réalisation oscilloscope numérique
La rapidité d’exécution est un élément important, il faut consulter les DATA-
BOOK pour vérifier la compatibilité entre la vitesse maximale du PIC choisi et la
vitesse max nécessaire au montage.
La taille de la RAM interne et la présence ou nom d’une EEPROM pour
mémoriser des données sont également importantes pour l’application souhaitée.
La longueur du programme de l’application détermine la taille de la mémoire
programme du PIC recherche [5]
II.2.6 Exemple : L’architecture du pic 16F84
Pour montrer l’exemple d’un microcontrôleur Pic, on a choisis le pic16F84 car il est
facilement manipulable. Il s'agit d'un microcontrôleur 8 bits à 18 pattes. Ses Principales
caractéristiques sont :
- jeu d’instruction (35 instructions)
- Instructions codées sur 14 bits, Données sur 8 bits
- 1 cycle machine par instruction, sauf pour les sauts (2 cycles machine)
- Vitesse maximum 10 MHz soit une instruction en 400 ns (1 cycle machine = 4 cycles
d'horloge)
- 4 sources d'interruption
- 1000 cycles d'effacement/écriture pour la mémoire flash, 10.000.000 pour la mémoire
de donnée EEPROM. [6]
II.2.7 Brochage et fonction des pattes
La figure II.4 représente le brochage du circuit. Les fonctions des pattes sont les
suivantes :
- VSS , VDD : Alimentation
- OSC1, 2 : Horloge
- RA0-4 : Port A
- RB0-7 : Port B
Réalisation oscilloscope numérique
- T0CKL : Entrée de comptage
- INT : Entrée d'interruption
- MCLR : Reset : 0V
Choix du mode programmation : 12V
Figure II.4: brochage du Pic 16F84
II.2.8 Architecture générale
La Figure II.5 suivante présente l'architecture générale du circui
éléments suivants :
- un système d'initialisation à la mise
- un système de génération d'horloge à partir
- une unité arithmétique et logique (ALU)
- une mémoire flash de programme de 1k "mots" de 14 b
- un compteur de programme (program counter) et une p
- un bus spécifique pour le programme (program bu
- un registre contenant le code de l'instruction à ex
- un bus spécifique pour les données (data bus)
Réalisation oscilloscope numérique
T0CKL : Entrée de comptage
INT : Entrée d'interruption
Choix du mode programmation : 12V - 14V exécution : 4.5V - 5.5V. [6]
brochage du Pic 16F84. [6]
Architecture générale
suivante présente l'architecture générale du circuit. Il est constitué des
un système d'initialisation à la mise sous tension (power-up timer, ect)
un système de génération d'horloge à partir du quartz externe (timing génération)
une unité arithmétique et logique (ALU)
une mémoire flash de programme de 1k "mots" de 14 bits
un compteur de programme (program counter) et une pile (stack)
un bus spécifique pour le programme (program bus)
un registre contenant le code de l'instruction à exécuter
un bus spécifique pour les données (data bus)
. [6]
t. Il est constitué des
du quartz externe (timing génération)
Réalisation oscilloscope numérique
- une mémoire RAM contenant
- les SFR
- 68 octets de données
- une mémoire EEPROM de 64 octets de données
- 2 ports d'entrées/sorties
- un compteur (timer)
- un chien de garde (watchdog)
Figure II.5: structure interne du Pic 16F84.
Réalisation oscilloscope numérique
une mémoire RAM contenant
une mémoire EEPROM de 64 octets de données
un chien de garde (watchdog)
structure interne du Pic 16F84. [6]
Réalisation oscilloscope numérique
II.3 Bus universel en série
II.3.1 Introduction
L'USB est un nouveau type de connectivité sur les machines informatiques, promu par les
principaux constructeurs informatiques et éditeurs de logiciels (Compaq, DEC, IBM,
Intel, Microsoft, NEC, Nortel). Il doit permettre le raccordement sur une prise unique
de plusieurs équipements divers (imprimante, téléphone, modem, fax, clavier, souris
scanners, écrans...). On désire ainsi éviter la multiplication actuelle des connecteurs sur
les PC. Ce BUS permet la transmission de données, de la voix et de l'image compressée.
Cette nouvelle technique se doit d'être rapide, bidirectionnelle, synchrone, de faible coût et l'attachement d'un nouveau périphérique doit être dynamique. De plus la télé alimentation des équipements est possible. [7]
II.3.2 Les différents bus de périphériques externes et ports d’E/S
Tout système informatique est constitué d’une carte mère. Sur ces cartes mères,
outre les composants principaux tels que le processeur, le BIOS, la RAM ou la mémoire
cache, il faut absolument que ceux-ci puissent communiquer entre eux. C’est le rôle des BUS.
Le bus de périphériques permet les échanges entre un système et les périphériques externes
par le biais de connecteurs (ports). Ces échanges peuvent prendre la forme d'une liaison par
câble avec connecteurs appropriés. Il existe aussi des liaisons sans câble (infrarouge,
protocole RC5)
Port parallèle (Centronics) : Conçu à l'origine pour liaisons en sortie vers une
imprimante, il est utilisé pour bien d’autres choses, aussi bien en sortie (usage
standard) qu'en entrée-sortie (les données d'entrée transitent via les lignes de contrôle).
Port Série (RS 232 et UART 8250-16550) : Utilisé pour
connecter une grande variété de périphériques (imprimante série, souris, appareils
industriels, etc). Il peut être configuré de différentes manières, tant en ce qui
concerne la rapidité des échanges, qu'en ce qui concerne le format des mots
transmis ou le contrôle de la parité. Ceci nécessite de la part de l'utilisateur une bonne
Réalisation oscilloscope numérique
connaissance des réglages de l'appareil connecté. Le Port RS 232 est destiné aux
liaisons entre 2 appareils. Ce n'est donc pas exactement un bus (bus sous-entend une
information distribuée à un port E/ S certain nombre d'hôtes).
USB 1.1 et 2.0 : Il est amené à remplacer toutes les différentes sortes de
connexions d'entrée-sortie sur les PC. On peut y connecter tous les périphériques
et en grand nombre (127) en utilisant un "hub". Il est même amené à transmettre
les signaux vidéo. Il possède un certain confort d'utilisation (branchement à chaud :
hot Plug & Play). Le système reconnaît le périphérique, adapte son mode de
transmission, lui attribue une adresse (énumération) et l'alimente si sa puissance
nécessaire est faible. La liaison repose essentiellement sur une paire différentielle
mode série (câble 4 fils). Deux vitesses permettent de concilier le nombre d'hôtes
et la rapidité de transfert pour les seuls périphériques qui en ont besoin (détection
comme lent ou rapide). L'USB 1.1 est limité (1.5 Mbits/s en lent, 12 Mbit/s en
rapide) tandis que l'USB 2 annonce un débit max de 480 Mbits/s. Simple
mécaniquement, il ne l'est pas du point de vue électronique et nécessite une
configuration précise. La communication se fait selon un protocole "token ring"
(principe de l'anneau à jeton) plus complexe. La tendance est fortement orienté réseau.
Pour la réalisation de notre projet nous allons utiliser le bus universel en série.
II.3.3 Normes USB
On va présenter les 3 normes USB utilisée depuis l’apparition de la norme USB 1, en 1995.
La différence entre ces dévires réside dans la vitesse qui augmente d’une norme à un autre,
tout en ajoutant d’autres fonctions comme la fonction Mass Storage. [8]
a) USB 1(Full ou Low speed)
La Norme USB 1 regroupe USB 1.0 et USB 1.1 (fig II.6) qui permettent d’obtenir le débit de
12 Mbits (c’est la plein vitesse ou Full speed) ou bien le débit de 1.5 Mbits (la basse vitesse
ou Low Speed). Pour identifier la vitesse, l’appareil relié au bus USB précise sa vitesse en
reliant le fil D+ à 3.3V à travers une résistance de 15K dans le cas de la pleine vitesse. Dans
le cas de la basse vitesse le fil D- a 3.3V à travers résistance 15K . [8]
Réalisation oscilloscope numérique
Figure II.6: logo norme USB 1
b) USB 2.0 (High Speed)
Le standard USB 2.0 (1999) permet de monter le débi
Speed) et peut ainsi contrer la célérité du bus Firewire d’
avantages (fig II.7). [9]
Figure II.7: logo norme USB 2
c) USB 3.0 (Super Speed)
Le standard USB 3.0 prouvantatteindre des vitesses
Figure II.8: logo norme USB 3
Réalisation oscilloscope numérique
logo norme USB 1. [9]
USB 2.0 (High Speed)
Le standard USB 2.0 (1999) permet de monter le débit à 480 Mbits/s (haute vitesse ou High
r la célérité du bus Firewire d’Apple qui possède bien d’au
logo norme USB 2. [9]
USB 3.0 (Super Speed)
Le standard USB 3.0 prouvantatteindre des vitesses de 4,8 Gbits/s 9 (fig II.8)
logo norme USB 3. [9]
t à 480 Mbits/s (haute vitesse ou High
qui possède bien d’autres
II.8).
Réalisation oscilloscope numérique
II.3.4 Connectique
a) Description du Câble USB
Le câblage USB est relativement simple, il a la même structure
transmission. Le câble transporte deux paires de fi
de données D+ et D- et une seconde paire qui peut être utilisé pour la
et Vusb. La première paire est non blindée pour les
claviers, souris fonctionnant à 1.5Mbits/s tan
une paire de fils torsadée blindée
b) Composition du câble USB
Comme le montre la figure II.9 , c
(Vusb = 5V et GND) et deux fils destinés au transfert de
entre deux PC est aussi possible par l’adjonction d
vigilance du PC maître et transforme le second PC e
blindage n'est pas obligatoire (ce qui assure une p
particulier pour une liaison souris).
Figure II.9
Réalisation oscilloscope numérique
Description du Câble USB
USB est relativement simple, il a la même structure quelle que soit la vitesse de
transmission. Le câble transporte deux paires de fils : La paire de signal destinée au transfert
et une seconde paire qui peut être utilisé pour la télé a
et Vusb. La première paire est non blindée pour les périphériques lents tels que les
claviers, souris fonctionnant à 1.5Mbits/s tandis que caméras, micro et autres ont recours à
une paire de fils torsadée blindée pour atteindre les 12Mbits/s. [9]
Composition du câble USB
omme le montre la figure II.9 , chaque connecteur dispose de deux fils d’alimentatio
= 5V et GND) et deux fils destinés au transfert de données (D+ et D
entre deux PC est aussi possible par l’adjonction d’une interface spéciale qui déjoue la
vigilance du PC maître et transforme le second PC en «esclave». En version Low Spe
blindage n'est pas obligatoire (ce qui assure une plus grande souplesse de manipulation en
liaison souris). [10]
Figure II.9: structure d’un câble USB
quelle que soit la vitesse de
ls : La paire de signal destinée au transfert
télé alimentation GND
périphériques lents tels que les
dis que caméras, micro et autres ont recours à
haque connecteur dispose de deux fils d’alimentation
données (D+ et D-).Une connexion
’une interface spéciale qui déjoue la
En version Low Speed le
lus grande souplesse de manipulation en
Réalisation oscilloscope numérique
Longueur maxi = 5 m (3m si 1.5Mbit/s).
Temps de propagation maxi = 30 ns (
Diamètre extérieur : 3,4..5,3 mm
Paire données : torsadée (6..8 cm) (non tors
(American Wire Gauge) mini, isolant polyéthylène, Z
dB/1000 pieds à 10MHz.
Paire alimentation : non
alim. = 5 V, 0.5A max.
5Ecran : nécessaire si 12Mbit/s ou plus (optionnel s
c) Connecteurs USB
Il existe deux séries de connecteurs pour le bus
Figure II.10: connecteurs USB
Connecteur série A est destiné au raccordement montant vers le « Hosest sortante sur le réceptacle femelle (châssis).courts). Tandis que le Connecteur série B
Réalisation oscilloscope numérique
Longueur maxi = 5 m (3m si 1.5Mbit/s).
Temps de propagation maxi = 30 ns (< 1/2 bit).
Diamètre extérieur : 3,4..5,3 mm - couleur = blanc.
Paire données : torsadée (6..8 cm) (non torsadée toléré si 1.5Mbit/s), 28 AWG
(American Wire Gauge) mini, isolant polyéthylène, Zc = 90 ±15%, att
torsadée possible, isolant PVC (Polyvinyle
Ecran : nécessaire si 12Mbit/s ou plus (optionnel si 1.5Mbit/s).
Connecteurs USB
Il existe deux séries de connecteurs pour le bus USB (fig II.10) :
connecteurs USB0. [10]
estiné au raccordement montant vers le « Hosest sortante sur le réceptacle femelle (châssis). 4 contacts à plat (D+ et D
Connecteur série B est destiné au raccordement descendant du « Host »
adée toléré si 1.5Mbit/s), 28 AWG
±15%, atténuation = 38
Polyvinylechloride ), pour
estiné au raccordement montant vers le « Host », l’alimentation 4 contacts à plat (D+ et D- au milieu et plus
estiné au raccordement descendant du « Host »
Réalisation oscilloscope numérique
sur les périphériques, lorsqu’il y a un connecteur entrant. L’alimentation est entrante sur le réceptacle. 4 contacts (+v et D- d'un côté, Gnd et D+ de l'autre).
II.3.5 Les descripteurs
a) Définition d’un descripteur
On peut définir les descripteurs comme étant des blocs d’informations pré formatés. Tous composants USB doit obligatoirement posséder les descripteurs standards. Tous les transferts d’informations durant cette phase d’énumération se font suivant le type Control. Il va de soi que tout composant USB doit pouvoir être capable de supporter ce type de transfert. Nous verrons par la suite que ce n’est pas le cas pour tous les autres types de transfert que nous définirons. [11]
b) Rôle des descripteurs
Il existe sur le marché de nombreux périphériques USB. Il a fallu, lors de la création de la
norme USB, trouver un dispositif pour reconnaître chaque composant USB. Cela était
indispensable puisque l’USB devait être un dispositif plug&Play. Lors du branchement
du périphérique, le « host » autrement dit plus communément le PC, doit reconnaître
tous les périphériques qui lui sont branché. Tout le processus d’énumération se fait
grâce aux descripteurs qui sont rassemblés dans un fichier texte (fichier assembleur par
exemple): en général, un fichier assembleur, qui est ensuite programmé dans le système USB.
Lorsque l’on connecte ou déconnecte un périphérique, celui-ci fournit à l’hôte toutes les
informations nécessaires à son identification, c’est à dire ces descripteurs. Ils sont très utiles
pour l’hôte puisqu’il peut, de ce fait, connaître les caractéristiques périphériques comme par
exemple la gestion … etc.
Généralement, dans la plupart des périphériques, toutes ces informations sont stockées
dans la ROM des composants, et lors de l’énumération, le périphérique envoi
simplement ce fichier pour se faire connaître. [11]
II.3.6 Différents mode de transfert des données
- Transfert en mode Contrôle : Ce mode de transfert est compatible avec le Low et Full Speed USB. Il est utilisé pour les opérations d’initialisations et de configurations. Il est éventuellement utilisable pour les transferts standards. Le
Réalisation oscilloscope numérique
mode contrôle est aussi utilisé pour tenter d’obtenir un débit Low Speed acceptable, ou pour utiliser le driver de classe HID (Human Interface Device) standard.
- Transfert en mode Interrupt : Ce mode de transfert est également compatible avec le Low et Full Speed USB. Il est destiné à des échanges limités et périodiques, il garantit la fréquence de scrutation ainsi que la reprise sur les erreurs. Il est utilisé pour des transferts à l’initiative du périphérique (asynchrones) et pour des transferts périodiques ou permanents comme les claviers.
- Transfert en mode Isochrone: Ce mode de transfert est uniquement compatible avec le Full USB. La bande passante est garantie (début, latence), par contre dans ce mode il n’y a pas de reprise sur erreur. Il est utilisé pour des transferts nécessitant un flux régulier de données comme par exemple les caméras ou les téléphones … La bande passante réclamée et non utilisée est perdue.
- Transfert en mode Bulk : Ce mode de transfert est uniquement compatible avec le Full USB. Ce mode est réservé pour les gros transferts de données (ex : imprimantes…) Le débit est variable et dépend de la disponibilité. Ce mode assure la reprise sur les erreurs. Les échanges isochrones sont les plus privilégiés dans le sens ou le host leur réserve une bande passante garantie. Celui-ci peut refuser l’accès au bus à un périphérique s’il juge que les ressources qu’il requiert ne sont pas disponibles. [8]
II.4 Différents logiciel utilisé
II.4.1 Logiciel ARDUINO
L'environnement de programmation Arduino (IDE en anglais) est une application écrite en
java libre inspirée du langage Processing et multiplateforme, servant d'éditeur de code et de
compilateur, et qui peut transférer le firmware et le programme au travers de la liaison série
(RS-232, Bluetooth ou USB selon le module). Il est également possible de se passer de
l'interface Arduino, de compiler et uploader les programmes via l'interface en ligne de
commande. L'environnement de programmation Arduino (IDE en anglais) est une application
écrite en Java inspirée du langage Processing 2. L'IDE permet d'écrire, de modifier un
programme et de le convertir en une série d'instructions compréhensibles pour la carte. Le
langage de programmation utilisé est le C++, compilé avec avr-g++ , et lié à la bibliothèque
de développement Arduino, permettant l'utilisation de la carte et de ses entrées/sorties. La
mise en place de ce langage standard rend aisé le développement de programmes sur les
plates-formes Arduino, à toute personne maîtrisant le C ou le C++. L’exécution d'un
Réalisation oscilloscope numérique
programme Arduino s'effectue de
exécutées les unes à la suite des
Un programme Arduino comporte trois parties
1. la partie déclaration des variables
2. la partie initialisation et configuration des entré
3. la partie principale qui s'exécute en boucle
Figure II.11: présentation logiciel Arduino.
Quelques outils fréquemment utilises
Lorsque l'Arduino est connecté à un ordinateur, il
applications, notamment :
Réalisation oscilloscope numérique
programme Arduino s'effectue de manière séquentielle, c'est-à-dire que les instructions sont
exécutées les unes à la suite des autres. [12]
Un programme Arduino comporte trois parties (fig II.11) :
la partie déclaration des variables (optionnelle)
la partie initialisation et configuration des entrées/sorties : la fonction
la partie principale qui s'exécute en boucle : la fonction loop ()
présentation logiciel Arduino. [12]
outils fréquemment utilises avec ardu
Lorsque l'Arduino est connecté à un ordinateur, il est capable de communiquer avec diverses
dire que les instructions sont
: la fonction setup ()
ino
est capable de communiquer avec diverses
Réalisation oscilloscope numérique
Processing : est un environnement de création fréquemment utilisé pour générer des
œuvres multimédias à partir d'un code informatique sur ordinateur.
Pure Data : (souvent abrégé Pd) est un logiciel de création multimédia interactive
couramment utilisé dans les domaines artistique, scientifique et pédagogique. Supercollider : est un environnement et un langage de programmation pour la
synthèse audio en temps réel et la composition algorithmique. Il est disponible pour
toutes les plates-formes et distribué sous licence GPL. S4A (Scratch For Arduino) : Scratch For Arduino (S4A) est une modification de
l'application Scratch qui permet de programmer simplement, facilement et
intuitivement des instructions à téléverser sur la carte Arduino. [12]
II.4.2 Logiciel Processing
Conçu par des artistes, pour des artistes, Processing est un environnement de création
fréquemment utilisé pour générer des œuvres multimédias à partir d'un code informatique sur
ordinateur. L'attrait de ce logiciel réside dans sa simplicité d'utilisation et dans la diversité de
ses applications : image, son, applications sur Internet et sur téléphones mobiles, conception
d'objets électroniques interactifs. Processing fédère une forte communauté d'utilisateurs
professionnels et amateurs : artistes, graphistes, vidéastes, typographes, architectes, web
designers et designers en général. Il est également utilisé par des enseignants en arts qui
souhaitent familiariser leurs étudiants avec les potentialités artistiques de la programmation,
les concepteurs du logiciel l'ayant pensé dès l'origine comme un outil d'apprentissage.
Il permettra de gérer l’affichage de notre oscilloscope numérique grâce à un programme qu’on
aura écrit, compiler et exécuter dans son éditeur de programme. Un exemple de code
Processing est utilisé dans notre projet « Oscilloscope ». La figure II.12 présente la fenêtre
de l’éditeur processing; nous remarquons qu’il a presque la même présentation que celui du
logiciel Arduino. [12]
Réalisation oscilloscope numérique
Figure II.12: présentation du
II.4.3 Logiciel Proteus
Le logiciel ISIS (Proteus) est un éditeur de schéma électronique qui intègre u
analogique, logique ou mixte. Toutes les opérations
bien la configuration des différentes sources que l
courbes. Il permet de faire l’étude pratique mais virtuelle
réalisation (fig II.13).
Figure II.13: aperçu de l’affichage du logiciel
Réalisation oscilloscope numérique
logiciel processing
Logiciel Proteus
est un éditeur de schéma électronique qui intègre u
analogique, logique ou mixte. Toutes les opérations se passent dans cet environnement aussi
bien la configuration des différentes sources que le placement de la sonde et
Il permet de faire l’étude pratique mais virtuelle des schémas électronique avant leur
aperçu de l’affichage du logiciel Proteus ISIS.
est un éditeur de schéma électronique qui intègre un simulateur
se passent dans cet environnement aussi
e placement de la sonde et le tracé des
des schémas électronique avant leur
Réalisation oscilloscope numérique
CHAPITRE III
REALISATION DU PROJET
Réalisation oscilloscope numérique
III.1 présentation du montage
Nous allons réaliser un oscilloscope multivoies qui permet de d afficher un ou plusieurs signaux sur l’écran.
Pour réaliser notre montage nous avons besoin de :
Matériels
- Une carte ARDUINO UNO
- 2 Amplificateur (LM 324)
- 5 résistances pour une seule entrée
- 2résistances variables (potentiomètre)
- Le connecteur USB (Arduino-pc)
- Fil de connexion pour relier notre oscilloscope au montage dont on veut connaitre les caractéristiques.
La liste de matériels cite n est utiliser que pour une seule entrée analogique sur l arduino, pour
n entrées il faudra prévoir n fois le matériels
Logiciel
- Logiciel de programmation en Arduino
- Logiciel processing qui permettra l’affichage de notre oscilloscope
- Plateforme de simulation électronique Isis (Proteus)
III.1.1 Circuit d’entrée
Il est compose de 2 parti : l atténuateur basse fréquence et le circuit d’offset de notre
oscilloscope.
a) L’atténuateur BF
Etant donné que notre carte ne peut supporter que des tensions allant de 0 à 5V nous devons
prévoir un circuit pour atténuer la tension à l’entrée au cas où celle-ci est très élevée.
C’est un potentiomètre que nous allons mettre en entrée qui va permettre de crée une chute
tension afin de diminuer l’amplitude de la tension.
Si nous avons plutôt un signal trop faible, nous pouvons utiliser un amplificateur pour
augmenter l’amplitude du signal à mesurer.
}
Réalisation oscilloscope numérique
b) Circuits d’offset de notre oscilloscope
Compte tenu du fait que notre carte Arduino ne peut supporter les tensions négatives le
circuit d’offset que nous avons réalisé a pour but de rendre la tension alternative en une
tension continue sinusoïdale. Elle représente la tension que nous devons afficher sur
l’oscilloscope et elle est comprise entre 0 et 5V (fig III.1).
Figure III.1: circuit d’entrée de l’oscilloscope.[15]
Réalisation oscilloscope numérique
III.2 Programmation de l ARDUINO
À l’ouverture de l’éditeur des programmes en Arduin
figure III.2
Figure III.2: éditeur des programmes en arduino
Le programme rédiger pour la programmation de notre
de mesurer une tension sur une des
connecté aupin « GND », qui correspond au 0 V. Le second sera conn
1 ou 2 en fonction du programme
circuit à mesurer.
// //////////////////// PRESENTATION DU
// --- Fonctionnalités utilisées ---
// Utilise la connexion série matérielle vers le PC
// Utilise / fonctionne avec une interface Processi
// Utilise la conversion analogique numérique 10 bits
// -------- Circuit à réaliser ---------
Réalisation oscilloscope numérique
Programmation de l ARDUINO
À l’ouverture de l’éditeur des programmes en Arduino nous avons la page d’accueil
éditeur des programmes en arduino. [12]
Le programme rédiger pour la programmation de notre arduino est assez simple
sur une des entrées analogiques de la carte Arduino.
« GND », qui correspond au 0 V. Le second sera connecté au pin Analogin 0
1 ou 2 en fonction du programme. Les extrémités libres vont servir à faire les contacts
// //////////////////// PRESENTATION DU PROGRAMME ////////////////////
---
// Utilise la connexion série matérielle vers le PC
// Utilise / fonctionne avec une interface Processing coté PC
on analogique numérique 10 bits
---------
page d’accueil de la
est assez simple car il s’agit
entrées analogiques de la carte Arduino. Un des fils sera
ecté au pin Analogin 0,
extrémités libres vont servir à faire les contacts avec le
Réalisation oscilloscope numérique
// 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
// /////////////////////////////// 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 ---
Constint Voie[6]={0,1,2,3,4,5}; //declaration constante de broche analogique
// --- Déclaration des variables globales ---
intmesure_brute=0;// Variable pour acquisition résultat brut de conversion analogique numérique
floatmesuref=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
voidsetup() { // 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 à 19200 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 -------
// ------- Initialisation des variables utilisées -------
// ------- Codes d'initialisation utile -------
} // fin de la fonction setup()
Réalisation oscilloscope numérique
/////////////////3. FONCTION LOOP = Boucle sans fin =
// la fonction loop() s'exécute sans fin en boucle tension
voidloop(){ // debut de la fonction loop()
// --- ici instructions à exécuter
//---- envoie sur le port série les 6 mesures sous la formCAN=:val0:val1:val2:val3:val4:val5:=finCAN
//--- les : sont utilisés comme séparateur par
Serial.print("CAN=:"); // chaine de début
for (int i=0; i<6; i++) { // défile les vois analogiques
// acquisition conversion analogique
mesure_brute=analogRead(Voie[i]);
// affiche valeur numerique entière ou à virgule au
Serial.print(mesure_brute);
Serial.print(":"); // séparateur entre les valeurs
} // fin for i
Serial.println("=finCAN"); // f
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 loo[13]
Après avoir compilé nous devonsséquence suivante l’indique.
Compiler le programme
S effectue en cliquant sur
Cliquer sur outil// type de carte ’’ Arduino/Genuin
Permet de choisir le type de la carte à utiliser. N
Réalisation oscilloscope numérique
FONCTION LOOP = Boucle sans fin = cœur du programme //////////////////
// la fonction loop() s'exécute sans fin en boucle aussi longtemps que l'Arduino est sous
// 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 Processingcté PC
nt("CAN=:"); // chaine de début
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
// séparateur entre les valeurs
Serial.println("=finCAN"); // fin de la chaine + saut de ligne
delay(100); // fixe une pause entre 2 mesures
court, plus la trace est rapide
le programme recommence au début de la fonction loo
Après avoir compilé nous devons télécharger ce programme dans la carte Arduino,
Compiler le programme :
iquant sur l’icône en haut du compilateur
Cliquer sur outil// type de carte ’’ Arduino/Genuinouno ’’
Permet de choisir le type de la carte à utiliser. Nous utiliserons l’Arduino/Genuinouno
du programme //////////////////
que l'Arduino est sous
le programme Processingcté PC
numerique (CAN) sur la voie analogique
le programme recommence au début de la fonction loop sans fin.
ce programme dans la carte Arduino, comme la
ous utiliserons l’Arduino/Genuinouno
Réalisation oscilloscope numérique
Cliquer sur outil// port
Permet de choisir le port qui sera utilisé
Puis cliquer sur téléverser
En ouvrant le moniteur sériel, on pourra voir apparaître les mesures succe
valeurs varient entre 0 et1023 quand la tension aux
seconde parti de notre programme permettra de gérer l’affic
fera à l’aide du logiciel ’’ PROCESSING ’’
’’frère ’’ de celui de l`Arduino.
III.3 Interface graphique
L’interface graphique est réaliser grâce
logiciel processing. Ce dernier doit communiquer av
afin de reconstruire le signal (fig
Figure III.3:Communication A
Réalisation oscilloscope numérique
Permet de choisir le port qui sera utilisé, le nôtre est le ’’ COM1 ’’
Puis cliquer sur téléverser
sériel, on pourra voir apparaître les mesures succe
valeurs varient entre 0 et1023 quand la tension aux pointes de touches varie entre 0 et 5 V.
parti de notre programme permettra de gérer l’affichage de notre oscilloscope et il se
fera à l’aide du logiciel ’’ PROCESSING ’’ que nous pourrons dire est comme un logiciel
frère ’’ de celui de l`Arduino.
III.3 Interface graphique
graphique est réaliser grâce à un programme saisie, compiler et exécuter dans le
logiciel processing. Ce dernier doit communiquer avec le programme installé
(fig III.3).
ommunication Arduino–Processing. [14]
sériel, on pourra voir apparaître les mesures successives défilées. Les
pointes de touches varie entre 0 et 5 V. La
hage de notre oscilloscope et il se
s dire est comme un logiciel
un programme saisie, compiler et exécuter dans le
installé dans l’Arduino
Réalisation oscilloscope numérique
/////////Programme processing////////////////
*/oscilloscope minimaliste avec un arduinorécupère les valeurs via une liaison série*/
importprocessing.serial.*;
// i]mportation de la librairie de communication serie
//variables
Serial maConnection; // Crée un objet de communication série
int tension=0; // variable ou sera stockée la valeur de la tension
//affichage
intfenetreTemps=12000; // temps pour parcourir la largeur de l'écran en millisecondes
int x=0;
int y=0;
voidsetup() {
size(650, 400); // taille de l'ecran
String NomDuPort = Serial.list()[0]; // récupère la première interface serie trouvée
println("connection a "+NomDuPort);
maConnection = new Serial(this, NomDuPort, 19200); // création de la connexion série
background(255); // fond d'écran blanc
smooth(); // lisser les dessins
strokeWeight(2); // largeur de trait
stroke(40); // couleur du trait gris
}
voiddraw() { //boucle de dessin principale
Réalisation oscilloscope numérique
//rien ne s'y passe, tout est géré dans la fonction serialEvent
}
voidserialEvent (Serial maConnection) { // si des données arrivent par la connexion série
String retour=maConnection.readStringUntil('\n'); // lit la donnée jusqu'à la fin de ligne
if (retour != null) { //si le retour n'est pas vide
retour = trim(retour); // enlever les espaces
tension = int(retour); // converti le texte en nombre entier
}
//détermination du X actuel
intoldx=x;
x=(millis()% fenetreTemps)*width/fenetreTemps;
if (oldx>x) {
//reprise au debut de l'écran
oldx=0;
background(255); //fond d'écran blanc
}
//determination de la valeur de Y
intoldy=y;
y=int(map(tension, 0, 1023, 380, 20)); // mise à l'échelle de la tension pour entrer dans l'écran
line(oldx, oldy, x, y); // dessine le trait
}// fin du programme. [14]
Pour exécuter le programme, il suffit de cliquer sur le bouton « Play ». Vérifiez auparavant
que le moniteur sériel du programme Arduino est bien fermé, sans quoi la communication
avec Processing ne voudra pas s'initialiser. En effet, la communication sérielle avec l'Arduino
Réalisation oscilloscope numérique
est exclusive, ce qui signifie qu'un seul programme à l
un port sériel avec l'Arduino. En fermant le moniteur
ainsi libre pour une autre application. Il es
différents(notamment avec les pin
avec différents logiciels. [14]
Le programme, en s'exécutant affic
et leur variation au cours du temps
Figure III.4 :Affichage de la courbe sur processing
III.4 Simulation sur Proteus
Maintenant voyons comment se comporte notre oscilloscope en temps
comment il fonctionne virtuellement.
comprendre son fonctionnement afin
conception (fig III.5).
TRIGGER :
Source sur voie A, c’est sur cette voie que
synchroniser mode sur AUTO
Réalisation oscilloscope numérique
exclusive, ce qui signifie qu'un seul programme à la fois peut ouvrir et communiquer sur
port sériel avec l'Arduino. En fermant le moniteur sériel, la connexion sérielle est fermée et
libre pour une autre application. Il est possible d'utiliser plusieurs ports sériels
différents(notamment avec les pins digitaux de l'Arduino) pour établir plusieurs connexions
Le programme, en s'exécutant affichera la fenêtre qui va permettre de voir l’allure d
ur variation au cours du temps (fig III.4).
Affichage de la courbe sur processing
Simulation sur Proteus
comment se comporte notre oscilloscope en temps
comment il fonctionne virtuellement. Cette simulation va nous permettre
comprendre son fonctionnement afin de mieux nous appliquer sur l’aspect pratique de la
Source sur voie A, c’est sur cette voie que l’oscilloscope essayera de tr
mode sur AUTO
a fois peut ouvrir et communiquer sur
sériel, la connexion sérielle est fermée et
t possible d'utiliser plusieurs ports sériels
de l'Arduino) pour établir plusieurs connexions
hera la fenêtre qui va permettre de voir l’allure des signaux
réel en regardant
Cette simulation va nous permettre de mieux
de mieux nous appliquer sur l’aspect pratique de la
l’oscilloscope essayera de trouver le signal à
Réalisation oscilloscope numérique
Détection de front montant
Déclanchement sur DC
Level sur 0
Horizontal :
20 uS par carreau
Position de début de synchronisation sur 200
Source de balayage horizontale interne (sur le triangle orange)
Channel A :
Régler la position de manière à placer le niveau 0 vers la haut.
Affichage sur DC
0,2V par carreaux
Figure III.5 : simulation de l’oscilloscope sur proteus ISIS
Réalisation oscilloscope numérique
Dans ce chapitre, nous avons mis en évidence le rôle des blocs d'oscilloscope que nous avons
réalisé, comme nous avons expliqué aussi le rôle de l'interface utilisateur sous
l’environnement C#.
Réalisation oscilloscope numérique
Conclusion générale
Pour réaliser l’oscilloscope numérique on a eu besoin de revoir les notions théoriques sur le
fonctionnement de l’oscilloscope analogique pour en tenir compte dans sa conception
numérique.
Pour la mise en œuvre de notre projet, on a eu connaissance de l’utilisation de l’arduino
mais aussi sur le microcontrôleur pic 16F. Toute fois notre choix s’est surtout focalise sur
l’arduino pour la mise en pratique de notre oscilloscope numérique pour la simple raison de
son libre accès mais aussi de sa performance
La maitrise du fonctionnement de la carte Arduino et de son microprocesseur ATMega
328 a dû être nécessaire afin de mieux adapter notre montage.
La vitesse de transmission des données entre le PC et l’arduino utilisée est de 15 Mbps.
Cette dernière ne peut être atteinte qu’avec le bus USB et plus précisément la norme USB Full
Speed. Ainsi l’idée d’utiliser le port série est à rejeter à cause des valeurs de la vitesse qui sont
permises.
Tout au long de chemin , on a eu connaissance de l’utilisation des certains logiciels
comme l’arduino ,le processing et proteus qui nous ont permis de bien perfectionner notre
oscilloscope numérique en fin qu’il puisse répondre au besoin demander
Au bout du compte, la réalisation de ce projet nous permit aussi de mieux assimilée les
notions sur l’électronique embarquée notamment avec la programmation des logiciels comme
Arduino, processing aux quel nous n’étions pas habituer ce qui nous permis de bien assimiler
et mettre en pratique certains notions informatiques vues en cours . Il nous a également
permis d’accroitre nos notions sur la simulation virtuelle grâce aux logiciels ISIS Proteus.
Avec ces propositions, on pense présenter un produit compétitif sur le marché des
oscilloscopes numériques.
Réalisation oscilloscope numérique
ANNEXE I: Datasheet Arduino ATMEGA328
Réalisation oscilloscope numérique
Réalisation oscilloscope numérique
ANNEXE II: Datasheet pic16F84
Réalisation oscilloscope numérique
ANNEXE III: Datasheet LM324
Réalisation oscilloscope numérique
ANNEXE IV: Proteus ISIS
Réalisation oscilloscope numérique
Réalisation oscilloscope numérique
Choisissez son orientation en activant les touches suivantes, en bas de l'écran à gauche:
Cliquez alors "gauche" dans la zone de travail où vous souhaitez le placer, puis sélectionnez-le (clic droit), il apparaît alors en surbrillance rouge, enfin éditez-le (clic gauche). Donnez une référence au composant placé, CI1:A, par exemple, CI1:B pour le suivant... Les propriétés de votre composants peuvent également apparaître sous forme de texte comme sur l'écran de droite ci-dessous.
REALISATION DES LIAISONS ENTRE COMPOSANTS:
Placez le curseur à l'extrémité de la borne concernée, une croix matérialise la possibilité de faire une liaison; cliquez alors "gauche" pour débuter la liaison, tracez-la en cliquant à chaque fois que vous voulez faire un angle, puis cliquez "gauche" de nouveau à l'endroit où elle se termine, c'est à dire lorsqu'une nouvelle croix matérialise la possibilité de terminer la liaison. On peut également cliquer une première fois "gauche" au point de départ, puis de nouveau au point d'arrivée, et laisser le logiciel chercher un tracé; mais cette solution oblige souvent à reprendre le tracé pour obtenir une solution satisfaisant le concepteur.
Réalisation oscilloscope numérique
Réalisation oscilloscope numérique
ANNEXE V: Descripteur USB
Réalisation oscilloscope numérique
Réalisation oscilloscope numérique
Réalisation oscilloscope numérique
Réalisation oscilloscope numérique
Références
[1]: http://fr.wikipedia.org/wiki/Oscilloscope, «Oscilloscope», 24 Février 2017.
[2]: Patrick LESNE, «Mesures à l’aide de l’oscilloscope», Edition T.I , 10 Décembre 1998.
[3]: Ian Hickman, «Digital Storage Oscilloscopes», 1st Edition, 9 Janvier 1997.
[4]:http://spiffie.org/know/arduino_328/use.shtml, 7 mars 2017.
[5]:http:// ProPic.html 7 mars 2017.
[6]:http://oumnad.123.fr/Microcontroleurs/PIC16F84.pdf, «Les microcontrôleurs PIC de
microchip», 7 mars 2017.
[7]: http://www.usb.org/ «USB.org», 8 Mars 2017.
[8]: http://www.beyondlogic.org/usbnutshell/usb1.shtml, «USB in a NutShell», 12 Mars 2017.
[9]: http://reseaumaroccom/files/Le%2520bus%2520USB.pdf, «Le bus USB»,12 Mars 2017.
[10]: http://www.commentcamarche.net/contents/773-usb, «USB», 13 Mars 2017.
[11]: http://www.microtel.fr.eu.org/Clubs/CAEN.MTL/Mac/Tout_sur_USB2.pdf, «Tout sur l’USB», 13 mars 2017.
Mai 2013. 13 mars 2017.
[12]:http://wiki/Generation_chapter_%20Programmer-Arduino%20_%20Arduino.html, 15 mars 2017
[13]:http: www.francoistessier.info/blog/2011/07/06/programmation-arduino-en-ligne-de-commande, 15 mars 2017.
[14]:www.Mon-Club-Elec.fr /MAIN Arduino Expert, 15 mars 2017.
[15] : Technique de l’électronique discrète, cours semestre 5 , département électronique ,ESPA ,2015-2016
THEME: ETUDE ET REALISATION D’UN OSCILOSCOPE NUMERIQUE
AUTEUR: Andile Said Ibroihim *
Kenfack Teufack Frank Pavel **
NOMBRE DE PAGE: 66
NOMBRE DE FIGURE: 24
RESUME
L’oscilloscope est un appareil de mesure indispensable dans tous les laboratoires
.Actuellement l’oscilloscope numérique remplace presque complètement l’oscilloscope
analogique. Pour cela on a pensé à la réalisation d’un oscilloscope numérique portatif
.L’oscilloscope réalisé dans ce projet est connectable au PC à l’aide du Bus universel en
série(USB). L’interface utilisateur, réalisé sous l’environnement java, contrôle la
communication entre la carte Arduino (dont le cœur est le microcontrôleur ATMega 328) et
l’ordinateur. Cette interface qui gère l’affichage de notre oscilloscope est réalisée grâce au
logiciel processing. La fréquence du signal acquit est limité par le temps de conversion du
microcontrôleur.
Mot clés: Oscilloscope, USB, carte Arduino, processing, Microcontrôleur.
Directeur de mémoire : Monsieur Rastefano Elisée
Contacts des auteurs : prince.ouze@gmail.com *
pavelknedved@yahoo.com **
top related