Différences entre versions de « Senseur IR Signal »

De MCHobby - Wiki
Sauter à la navigation Sauter à la recherche
 
(8 versions intermédiaires par le même utilisateur non affichées)
Ligne 1 : Ligne 1 :
 
{{SenseurIR-Nav}}
 
{{SenseurIR-Nav}}
  
Now we know that the sensor works, we want to figure out whats being sent right? But before we do that let's first examine exactly how data is being sent from the IR remote (in your hand) to the IR receiving sensor (on the breadboard)
+
== Analyse du signal ==
  
For this example we will use the Sony power on/off IR code from a Sony TV remote. Its very simple and commonly documented!
+
Maintenant que nous savons comment fonctionne un senseur,<br />
 +
voulez-vous savoir ce qu'il faut lui envoyer pour qu'il fonctionne correctement?
  
Lets pretend we have a Sony remote, and we can look at exactly what light is being blasted out of the IR LED. We'll hookup a basic light sensor (like a basic photocell!) and listen in. We won't use a decoder like a PNA4602 (just yet) because we want to see the undecoded signal. What we see is the following:
+
Mais avant prenons un peu de temps pour examiner en détails <br />
 +
la façon dont une télécommande (celle dans votre main) envoi les <br />
 +
données vers un senseur infrarouge (enfiché sur le breadboard).
  
[[Fichier:IR-SIGNAL-1.jpg]]
+
Dans cette document nous avons utilisé le bouton ON/OFF d'une <br />
 +
télécommande pour téléviseur Sony . Il s'agit d'un cas très simple <br />
 +
et habituellement documenté.
  
Basically we see pulses or IR signal. the yellow 'blocks' are when the IR LED is transmitting and when there is only a line, the IR LED is off. (Note that the voltage being at 3VDC is just because of the way I hooked up the sensor, if I had swapped the pullup for a pulldown it would be at ground.)
+
Disons que nous avons une télécommande Sony, et que nous pouvons voir avec exactitude la lumière émise par la LED infrarouge. Raccordons un senseur lumière quelconque (comme une simple photo-résistance/Cds) et analysons le signal reçu. Nous n'allons pas encore utiliser un décodeur comme le PNA4602 parce que nous voulons avoir un aperçu du signal brute (non décodé).
  
The first 'block' is about 2.5ms long (see the cursors and the measurement on the side)
+
Et voici ce que l'on voit:
  
If you zoom into one of those blocks…
+
{{ADFImage|IR-SIGNAL-1.jpg|400px}}
  
  
[[Fichier:IR-SIGNAL-2.jpg]]
+
Nous constatons essentiellement des impulsions ou un signal infra-ouge. Les 'blocs' jaune indiquent des périodes de transmission de la LED IR tandis que les lignes jaunes indiquent des moment où la LED IR est inactive. (Note: la tension indiquée à 3VDC est correct, elle dépend de la façon dont nous avons raccordé le senseur, si nous avons remplacé la résistance pull-up par une résistance pull-down nous verrions la masse/GND).
  
You see that they're not really 'blocks' but actually very fast pulses!
+
Le premier 'bloc' semble faire 2.5ms de long (voir les curseurs et la valeur mesurée sur le côté)
  
If you zoom in all the way…
+
Voici ce que nous voyons si l'on zoom l'un des blocs…
  
[[Fichier:IR-SIGNAL-3.jpg]]
 
  
 +
{{ADFImage|IR-SIGNAL-2.jpg|400px}}
  
 +
Vous pouvez constater qu'il ne s'agit pas vraiment d'un 'bloc' mais d'un signal pulsé très très rapidement!
  
You can measure the frequency of the IR pulses. As you can tell by the cursors and the measurements on the side, the frequency is about 37.04KHz
+
Si nous continuons a zoomer…
  
OK so now we can understand how IR codes are sent. The IR transmitter LED is quickly pulsed (PWM - pulse width modulated) at a high frequency of 38KHz and then that PWM is likewise pulsed on and off much slower, at times that are about 1-3 ms long.
+
{{ADFImage|IR-SIGNAL-3.jpg|400px}}
  
Why not have the LED just on and off? Why have PWM 'carrier' pulsing? Many reasons!
+
Nous atteignons une échelle ou il est possible de mesurer la fréquence de l'impulsion IR.
  
One reason is that this lets the LED cool off. IR LEDs can take up to 1 Amp (1000 milliamps!) of current. Most LEDs only take 20mA or so. This means IR LEDs are designed for high-power blasting BUT they can only take it for a few microseconds. By PWM'ing it, you let the LED cool off half the time
+
Comme indiqué par la position des curseurs et la valeur affichée sur le côté, la fréquence de l'impulsion est d'approximativement 37.04KHz
  
Another reason is that the TV will only listen to certain frequencies of PWM. So a Sony remote at 37KHz wont be able to work with a JVC DVD player that only wants say 50KHz.
+
== Encodage (en résumé) ==
  
Finally, the most important reason is that by pulsing a carrier wave, you reduce the affects of ambient lighting. The TV only looks for changes in light levels that clock in around 37KHz. Just like its easier for us to tell differences between audio tones than to pin down the precsise pitch of a tone (well, for most people at least)
+
Maintenant nous pouvons comprendre comment le signal infrarouge est encodé.  
  
OK so now we know the carrier frequency. Its 37KHz. Next lets find the pulse widths!
+
La LED du transmetteur infrarouge est pulsée à haute fréquence (en utilisant le principe PWM - pulse width modulated), fréquence de 38KHz.  
  
Looking back at the first scope picture
+
Ensuite, ce signal PWM est lui-même pulsé (activé-désactivé-activé-...) plus lentement sur des périodes de temps de l'ordre de 1 à 3 ms de long.
  
[[Fichier:IR-SIGNAL-4.jpg]]
+
== Pourquoi utiliser une porteuse PWM ==
 +
La porteuse (''carrier'' en anglais) à 38 KHz est utilisé pour transporter le signal codé.
  
The first pulse is 2.5ms. We can use the cursors to measure the remaining pulses. I'll spare you the 12 images and let you know that the pulses are:
+
Mais pourquoi ne pas simplement allumé et éteindre la LED? Pourquoi utiliser cette porteuse à 38 KHz?
  
{|
+
Et bien, il y a plusieurs raisons à cela!
 +
 
 +
'''Une première raison est que cela permet à la LED de se refroidir'''. Une LED infrarouge peur consommé un courant allant jusqu'à 1 Amp (1000 milliamps!).
 +
 
 +
La plupart des LEDs consomment environ 20mA. Cela signifie que les Led infra-rouge sont conçues pour des émission à 'haute-puissance' mais qu'elles le font que pendant quelques micro-secondes. En utilisant un signal PWM, cela permet de laisser la LED se refroidir la moitié du temps.
 +
 
 +
'''Une seconde raison est que les télévision ne font détecter qu'une certaine fréquence''' (PWM). Pour une télécommande Sony à 37KHz ne fonctionnera pas avec un lecteur DVD JVC qui n'accepte qu'un signal à 50KHz.
 +
 
 +
'''Finalement, la raison la plus important pour utiliser une onde pulsée, c'est qu'elle diminue les effets de la lumière ambiante'''. La TV à seulement besoin de détecter des variation de niveau de lumière cadencée à environ 37KHz. Le principe est identique pour les humain, il est plus facile d'évaluer la différence entre deux tonalité que d'indiquer la fréquence exacte d'une tonalité entendue (du moins, pour la plupart des gens)
 +
 
 +
Maintenant que nous savons qu'il y a une fréquence porteuse et que cette dernière est de 37 Khz, essayons de déterminer la longueur des impulsions (la largeur des 'blocs' jaunes)
 +
 
 +
Reprenons notre première image...
 +
 
 +
{{ADFImage|IR-SIGNAL-4.jpg|400px}}
 +
 
 +
La premiere impulsion esr de 2.5ms. Nous pouvons utiliser les curseurs pour mesurer le restant des l'impulsions. Nous n'avons pas inclus les 12 images de mesures mais tableau ci-dessous reprend les différentes mesures:
 +
 
 +
{| class="wikitable" border="1"
 
| align="center" style="background:#f0f0f0;"|'''PWM ON'''
 
| align="center" style="background:#f0f0f0;"|'''PWM ON'''
 
| align="center" style="background:#f0f0f0;"|'''OFF'''
 
| align="center" style="background:#f0f0f0;"|'''OFF'''
Ligne 77 : Ligne 102 :
 
|}
 
|}
  
So lets say you don't have a $1000 oscilloscope, how else can you read these signals? Well the IR decoder such as the PNA4602 does us one favor, it 'filters out' the 38KHz signal so that we only get the big chunks of signal in the milliscond range. This is much easier for a microcontroller to handle. Thats what we'll do in the next section!
+
Mais comment mesurer ce signal soit même si l'on ne dispose pas une oscilloscope à 700 Eur?  
 
 
  
{{ADF-Accord}}
+
Et bien, un senseur infrarouge (comme le PNA4602) nous fait déjà une belle faveur... il 'filtre le signal' à 38KHz et, par conséquent, nous recevons les larges portions de signal (celles en millisecondes). Ce type de signal est bien plus facile à traiter pour un microcontroleur. C'est ce que nous ferons dans les prochaines sections.
  
{{MCH-Accord}}
+
{{SenseurIR-TRAILER}}

Version actuelle datée du 25 août 2013 à 19:13

Analyse du signal

Maintenant que nous savons comment fonctionne un senseur,
voulez-vous savoir ce qu'il faut lui envoyer pour qu'il fonctionne correctement?

Mais avant prenons un peu de temps pour examiner en détails
la façon dont une télécommande (celle dans votre main) envoi les
données vers un senseur infrarouge (enfiché sur le breadboard).

Dans cette document nous avons utilisé le bouton ON/OFF d'une
télécommande pour téléviseur Sony . Il s'agit d'un cas très simple
et habituellement documenté.

Disons que nous avons une télécommande Sony, et que nous pouvons voir avec exactitude la lumière émise par la LED infrarouge. Raccordons un senseur lumière quelconque (comme une simple photo-résistance/Cds) et analysons le signal reçu. Nous n'allons pas encore utiliser un décodeur comme le PNA4602 parce que nous voulons avoir un aperçu du signal brute (non décodé).

Et voici ce que l'on voit:

IR-SIGNAL-1.jpg
Crédit: AdaFruit Industries www.adafruit.com


Nous constatons essentiellement des impulsions ou un signal infra-ouge. Les 'blocs' jaune indiquent des périodes de transmission de la LED IR tandis que les lignes jaunes indiquent des moment où la LED IR est inactive. (Note: la tension indiquée à 3VDC est correct, elle dépend de la façon dont nous avons raccordé le senseur, si nous avons remplacé la résistance pull-up par une résistance pull-down nous verrions la masse/GND).

Le premier 'bloc' semble faire 2.5ms de long (voir les curseurs et la valeur mesurée sur le côté)

Voici ce que nous voyons si l'on zoom l'un des blocs…


IR-SIGNAL-2.jpg
Crédit: AdaFruit Industries www.adafruit.com

Vous pouvez constater qu'il ne s'agit pas vraiment d'un 'bloc' mais d'un signal pulsé très très rapidement!

Si nous continuons a zoomer…

IR-SIGNAL-3.jpg
Crédit: AdaFruit Industries www.adafruit.com

Nous atteignons une échelle ou il est possible de mesurer la fréquence de l'impulsion IR.

Comme indiqué par la position des curseurs et la valeur affichée sur le côté, la fréquence de l'impulsion est d'approximativement 37.04KHz

Encodage (en résumé)

Maintenant nous pouvons comprendre comment le signal infrarouge est encodé.

La LED du transmetteur infrarouge est pulsée à haute fréquence (en utilisant le principe PWM - pulse width modulated), fréquence de 38KHz.

Ensuite, ce signal PWM est lui-même pulsé (activé-désactivé-activé-...) plus lentement sur des périodes de temps de l'ordre de 1 à 3 ms de long.

Pourquoi utiliser une porteuse PWM

La porteuse (carrier en anglais) à 38 KHz est utilisé pour transporter le signal codé.

Mais pourquoi ne pas simplement allumé et éteindre la LED? Pourquoi utiliser cette porteuse à 38 KHz?

Et bien, il y a plusieurs raisons à cela!

Une première raison est que cela permet à la LED de se refroidir. Une LED infrarouge peur consommé un courant allant jusqu'à 1 Amp (1000 milliamps!).

La plupart des LEDs consomment environ 20mA. Cela signifie que les Led infra-rouge sont conçues pour des émission à 'haute-puissance' mais qu'elles le font que pendant quelques micro-secondes. En utilisant un signal PWM, cela permet de laisser la LED se refroidir la moitié du temps.

Une seconde raison est que les télévision ne font détecter qu'une certaine fréquence (PWM). Pour une télécommande Sony à 37KHz ne fonctionnera pas avec un lecteur DVD JVC qui n'accepte qu'un signal à 50KHz.

Finalement, la raison la plus important pour utiliser une onde pulsée, c'est qu'elle diminue les effets de la lumière ambiante. La TV à seulement besoin de détecter des variation de niveau de lumière cadencée à environ 37KHz. Le principe est identique pour les humain, il est plus facile d'évaluer la différence entre deux tonalité que d'indiquer la fréquence exacte d'une tonalité entendue (du moins, pour la plupart des gens)

Maintenant que nous savons qu'il y a une fréquence porteuse et que cette dernière est de 37 Khz, essayons de déterminer la longueur des impulsions (la largeur des 'blocs' jaunes)

Reprenons notre première image...

IR-SIGNAL-4.jpg
Crédit: AdaFruit Industries www.adafruit.com

La premiere impulsion esr de 2.5ms. Nous pouvons utiliser les curseurs pour mesurer le restant des l'impulsions. Nous n'avons pas inclus les 12 images de mesures mais tableau ci-dessous reprend les différentes mesures:

PWM ON OFF
2.4 ms 0.6 ms
1.2 ms 0.6 ms
0.6 ms 0.6 ms
1.2 ms 0.6 ms
0.6 ms 0.6 ms
1.2 ms 0.6 ms
0.6 ms 0.6 ms
0.6 ms 0.6 ms
1.2 ms 0.6 ms
0.6 ms 0.6 ms
0.6 ms 0.6 ms
0.6 ms 0.6 ms
0.6 ms 270 ms

Mais comment mesurer ce signal soit même si l'on ne dispose pas une oscilloscope à 700 Eur?

Et bien, un senseur infrarouge (comme le PNA4602) nous fait déjà une belle faveur... il 'filtre le signal' à 38KHz et, par conséquent, nous recevons les larges portions de signal (celles en millisecondes). Ce type de signal est bien plus facile à traiter pour un microcontroleur. C'est ce que nous ferons dans les prochaines sections.


Source: IR Sensor

Crée par LadyAda pour AdaFruit Industries.

Traduit par Meurisse D. pour MCHobby

Traduit avec l'autorisation d'AdaFruit Industries - Translated with the permission from Adafruit Industries - www.adafruit.com

Toute référence, mention ou extrait de cette traduction doit être explicitement accompagné du texte suivant : «  Traduction par MCHobby (www.MCHobby.be) - Vente de kit et composants » avec un lien vers la source (donc cette page) et ce quelque soit le média utilisé.

L'utilisation commercial de la traduction (texte) et/ou réalisation, même partielle, pourrait être soumis à redevance. Dans tous les cas de figures, vous devez également obtenir l'accord du(des) détenteur initial des droits. Celui de MC Hobby s'arrêtant au travail de traduction proprement dit.