Différences entre les versions de « Les entrées analogiques sur IPX800 V4 »
(78 versions intermédiaires par le même utilisateur non affichées) | |||
Ligne 4 : | Ligne 4 : | ||
PNG moins d'anomalies que JPG | PNG moins d'anomalies que JPG | ||
--> | --> | ||
<!-- | |||
https://www.mediawiki.org/wiki/Help:Contents/fr | |||
--> | |||
{{sommaire|niveau=3|flottant=left}} | |||
{{Infobox IPX800 | |||
| titre = ANALOGIQUES | |||
| image = AnalogiqueV4.png | |||
| famille = IPX800 V4 | |||
| date-create = 01/09/2017 | |||
| date-update = 15/08/2018 | |||
| auteur = fgtoul | |||
}} | |||
==Définition== | |||
Un capteur analogique est un dispositif permettant de mesurer une grandeur physique telle que | |||
* pression, humidité, luminosité, température, conductivité, | |||
* etc. | |||
A la sortie du capteur, nous obtenons une grandeur électrique, fonction de la grandeur physique mesurée. | |||
La sortie peut prendre une infinité de valeurs continues. | |||
Le signal des capteurs analogiques peut être du type : | |||
* sortie tension | |||
* sortie courant | |||
Ces capteurs peuvent être raccordés aux entrées analogiques de l'IPX800, moyennant quelques précautions. | |||
==Les Entrées analogiques de l’IPX800 V4== | ==Les Entrées analogiques de l’IPX800 V4== | ||
Ligne 12 : | Ligne 40 : | ||
(cas des capteurs TC-100 ; TC4012 ; SHT-X3 vendus par GCE) | (cas des capteurs TC-100 ; TC4012 ; SHT-X3 vendus par GCE) | ||
[[Fichier:IPXv4_1.PNG]] | [[Fichier:IPXv4_1.PNG|Exemple de connexion sur l'entrée analogique n°2]] | ||
Si des tensions supérieures à 3.3 V doivent être mesurées, alors il faudra utiliser un pont diviseur afin de ramener cette tension à 3.3v maximum. Si le capteur nécessite une alimentation plus élevée, ne pas lui raccorder le 3.3V. | Si des tensions supérieures à 3.3 V doivent être mesurées, alors il faudra utiliser un pont diviseur afin de ramener cette tension à 3.3v maximum. Si le capteur nécessite une alimentation plus élevée, ne pas lui raccorder le 3.3V. | ||
=== | ===Le Convertisseur Analogique vers Numérique (CAN en français, ADC en anglais) === | ||
Chaque entrée analogique de l’IPX constitue un CAN, capable de traduire une tension (de 0 à 3.3 V) en une grandeur numérique codée sur 16 bits (Résolution) pour la V4. | Chaque entrée analogique de l’IPX constitue un CAN, capable de traduire une tension (de 0 à 3.3 V) en une grandeur numérique codée sur 16 bits (Résolution) pour la V4. | ||
Chaque bit peut prendre 2 valeurs (0 ou 1). | Chaque bit peut prendre 2 valeurs (0 ou 1). | ||
Nous obtenons alors 2 | Nous obtenons alors 2<sup>16</sup> combinaisons différentes, soit 65536 valeurs possibles (de 0 à 65535 inclus). | ||
[[Fichier:IPXv4_3b.JPG]] | [[Fichier:IPXv4_3b.JPG|Tableau binaire sur 16 bits]] | ||
Pour une valeur analogique 0 V, l’IPX800 retourne une valeur numérique 0. | Pour une valeur analogique 0 V, l’IPX800 retourne une valeur numérique 0. | ||
Ligne 29 : | Ligne 57 : | ||
Pour une tension pleine échelle 3.3 V (le maximum) , l’IPX800 V4 retourne 65535. | Pour une tension pleine échelle 3.3 V (le maximum) , l’IPX800 V4 retourne 65535. | ||
Entre chaque point de mesure, il y a donc 3.3 | Entre chaque point de mesure, il y a donc 3.3 / 65535 = 0,000050354 V | ||
[[Fichier:IPXv4_4c.JPG]] | [[Fichier:IPXv4_4c.JPG|Liste des différentes valeurs numériques]] | ||
Donc, pour chaque grandeur analogique (tension de 0 à 3.3v), le convertisseur renvoie une valeur de 0 à 65535, représentant le multiple de 0,000050354 V le plus proche de la valeur mesurée. | Donc, pour chaque grandeur analogique (tension de 0 à 3.3v), le convertisseur renvoie une valeur de 0 à 65535, représentant le multiple de 0,000050354 V le plus proche de la valeur mesurée. | ||
Ligne 46 : | Ligne 74 : | ||
La tension appliquée à l’entrée analogique est donc de 0.03 V | La tension appliquée à l’entrée analogique est donc de 0.03 V | ||
=== | ===Application : un anémomètre analogique=== | ||
Soit un anémomètre avec les caractéristiques suivantes : | Soit un anémomètre avec les caractéristiques suivantes : | ||
Ligne 55 : | Ligne 83 : | ||
Nous n’utilisons donc pas la totalité de la plage possible de lectures de l’IPX qui peut aller jusqu’à 3.3v. | Nous n’utilisons donc pas la totalité de la plage possible de lectures de l’IPX qui peut aller jusqu’à 3.3v. | ||
- Pour une lecture de 2V, nous aurons donc une valeur numérique de 2 | - Pour une lecture de 2V, nous aurons donc une valeur numérique de 2 / 0,000050354 = 39719. | ||
39719 sera donc la valeur numérique maxi calculée par l’IPX pour 32.4 m/s | 39719 sera donc la valeur numérique maxi calculée par l’IPX pour 32.4 m/s | ||
- Pour une lecture de 0.4v nous aurons une valeur numérique de 0.4 | - Pour une lecture de 0.4v nous aurons une valeur numérique de 0.4 / 0,000050354 = 7944 | ||
7944 sera la valeur minimale calculée par l’IPX800. | 7944 sera la valeur minimale calculée par l’IPX800. | ||
Ligne 68 : | Ligne 96 : | ||
Voyons cela sur un graphique | Voyons cela sur un graphique | ||
[[Fichier:IPXv4_5b.JPG]] | [[Fichier:IPXv4_5b.JPG|Graphique]] | ||
Avec le graphique nous voyons que l’IPX peut faire correspondre 31775 valeurs proportionnelles à la tension de sortie de notre capteur. | Avec le graphique nous voyons que l’IPX peut faire correspondre 31775 valeurs proportionnelles à la tension de sortie de notre capteur. | ||
Ligne 74 : | Ligne 102 : | ||
Cela revient donc à dire que l’IPX peut faire correspondre 31775 valeurs proportionnelles à la vitesse du vent, dans la plage [0 ; 32.4] m/s | Cela revient donc à dire que l’IPX peut faire correspondre 31775 valeurs proportionnelles à la vitesse du vent, dans la plage [0 ; 32.4] m/s | ||
Chaque valeur numérique retournée est donc un multiple de 32,4 | Chaque valeur numérique retournée est donc un multiple de 32,4 / 31775=0,001019669 m/s | ||
De là, nous déduisons la formule (avec prise en compte de l’origine à 7944) | De là, nous déduisons la formule (avec prise en compte de l’origine à 7944) | ||
Ligne 84 : | Ligne 112 : | ||
Dans l’IPX800, nous écrirons la formule sous la forme | Dans l’IPX800, nous écrirons la formule sous la forme | ||
analogue vers valeur :<span style=Background-color:#C0C0C0> '''(x - 7944) * 0,001019669'''</span> | |||
Inversement | Inversement | ||
Ligne 90 : | Ligne 118 : | ||
Nous savons que | Nous savons que | ||
A = (D - 7944) * 0,001019669 <=> A | A = (D - 7944) * 0,001019669 <=> A / 0.001019669 = D - 7944 <=> D = (A / 0.001019669) + 7944 | ||
Dans l’IPX800, nous écrirons la formule sous la forme | Dans l’IPX800, nous écrirons la formule sous la forme | ||
valeur vers analogue : <span style=Background-color:#C0C0C0>'''(x / 0,001019669) + 7944'''</span> | |||
Pour vérifier la formule, prenons la valeur 39719 calculée ci-dessus, | Pour vérifier la formule, prenons la valeur 39719 calculée ci-dessus, | ||
Ligne 100 : | Ligne 128 : | ||
elle retourne bien (39719 - 7944) * 0,001019669 = 32.4 | elle retourne bien (39719 - 7944) * 0,001019669 = 32.4 | ||
=== | ===Mesurer une tension supérieure à 3.3 V=== | ||
==== | ====Principe==== | ||
La tension applicable sur une entrée analogique de l’IPX800 doit impérativement être inférieure à 3.3 V. | La tension applicable sur une entrée analogique de l’IPX800 doit impérativement être inférieure à 3.3 V. | ||
Ligne 110 : | Ligne 138 : | ||
Le but n’est pas ici d’expliquer le fonctionnement d’un diviseur de tension, mais de voir son application à l’IPX800. Nous savons que l’impédance interne de l’entrée analogique de l’IPX800 est de 4700 Ω | Le but n’est pas ici d’expliquer le fonctionnement d’un diviseur de tension, mais de voir son application à l’IPX800. Nous savons que l’impédance interne de l’entrée analogique de l’IPX800 est de 4700 Ω | ||
[[Fichier: | [[Fichier:IPXv4_6e.PNG|Schéma générique d'un pont diviseur sur IPX800 V4]] | ||
Aux bornes de l’entrée analogique, la tension Vs est telle que | Aux bornes de l’entrée analogique, la tension Vs est telle que | ||
'''Vs = (R1 | '''Vs = (R1 / (R1+R2)) * Ve''' | ||
Isolons le terme R2 : | Isolons le terme R2 : | ||
R2 = R1 * (Ve | R2 = R1 * (Ve / Vs) - R1 | ||
'''R2=4700 * (Ve | <span style=Background-color:#C0C0C0>'''R2=4700 * (Ve / Vs) - 4700'''</span> | ||
'''Nous utiliserons cette formule pour calculer notre résistance R2 en Ω''' | '''Nous utiliserons cette formule pour calculer notre résistance R2 en Ω''' | ||
[[Fichier:IPXv4_7b.JPG]] | ====Exemple d’un capteur analogique avec sortie 0 – 10v==== | ||
[[Fichier:IPXv4_7b.JPG|Capteur 0-10V générique à 3 fils]] | |||
''La résistance R1 est interne à l’IPX800. Elle est représentée ici pour la compréhension du schéma. Ne pas la câbler.'' | ''La résistance R1 est interne à l’IPX800. Elle est représentée ici pour la compréhension du schéma. Ne pas la câbler.'' | ||
''Adaptez les branchements en fonction des recommandations constructeur.'' | ''Adaptez les branchements en fonction des recommandations constructeur. | ||
Vérifiez la compatibilité de votre montage à l'aide d'un voltmètre avant de connecter le tout à l'IPX800.'' | |||
Vs = (R1 / (R1 + R2)) * Ve | |||
R2 = 4700 * (Ve / Vs) - 4700 | |||
Remplaçons par les valeurs numériques. | Remplaçons par les valeurs numériques. | ||
Nous ajouterons 10% de marge à notre tension d’entrée par mesure de sécurité (soit 11V au lieu de 10V) : | Nous ajouterons 10% de marge à notre tension d’entrée par mesure de sécurité (soit 11V au lieu de 10V) : | ||
R2 = 4700 * ((11 | R2 = 4700 * ((11 / 3.3) – 4700 | ||
R2 = 10966 Ω | R2 = 10966 Ω | ||
Ligne 145 : | Ligne 178 : | ||
Recalculons la tension max aux bornes de l’IPX | Recalculons la tension max aux bornes de l’IPX | ||
Vs = (R1 | Vs = (R1 / (R1 + R2)) * Ve | ||
Vs=(4.7 | Vs=(4.7 / (4.7 + 11)) * 10 <=> Vs=3.0 V | ||
Ligne 156 : | Ligne 189 : | ||
Ve = I * (R1 + R2) | Ve = I * (R1 + R2) | ||
<=> I = Ve | <=> I = Ve / (R1 + R2) | ||
<=> I = 10 | <=> I = 10 / (11000 + 4700) = 0.00063 A | ||
P = Ve * I <=> P = 10 * 0.00063 A <=> P = 0.007 W => Une résistance 1/4W suffira. | P = Ve * I <=> P = 10 * 0.00063 A <=> P = 0.007 W => Une résistance 1/4W suffira. | ||
=== | ====Exemple d’un capteur analogique avec sortie 0.5 – 4.5 V==== | ||
Le courant de sortie est fonction linéaire de la gamme de | |||
mesure. | [[Fichier:IPXv4-Capteur_0-5V.png|Capteur 0.5 - 4.5V générique à 3 fils]] | ||
Notre capteur ayant une sortie 0.5v - 4.5V, ajoutons 10% environ et faisons nos calculs avec 5V maximum. | |||
Cette marge de 10% peut être réduite en fonction de la précision du capteur sur la sortie. | |||
Vs = (R1 / (R1 + R2)) * Ve | |||
R2 = 4700 * (Ve / Vs) - 4700 | |||
Remplaçons par les valeurs numériques. | |||
R2 = 4700 * ((5 / 3.3) – 4700 | |||
R2 = 2421 Ω | |||
Il conviendra de prendre une résistance de 2.7 kΩ. (valeur standard supérieure la plus proche) | |||
Recalculons la tension max aux bornes de l’IPX | |||
Vs = (R1 / (R1 + R2)) * Ve | |||
Vs=(4.7 / (4.7 + 2.7)) * 4.5 <=> Vs=2.85 V | |||
Pour 4.5 V en sortie du capteur, l’IPX800 ne « verra » donc que 2.85 V aux bornes de son entrée analogique. | |||
Une résistance 1/4W suffira. | |||
=====Appliquons cela à un cas concret===== | |||
Prenons un capteur de pression avec une sortie 0.5 - 4.5 V avec une plage de mesure de 0 à 5 Psi (0 à 0.344 bar). | |||
Pour une lecture de 0 Psi, la sortie du capteur est de 0.5 V | |||
- Pour une lecture de 0.5V sur l'entrée de l'IPX, nous aurons donc une valeur numérique de 0.5 / 0.000050354 = 9929. | |||
9929 sera donc la valeur numérique mini calculée par l’IPX pour 0 Psi | |||
- Pour une lecture de 5 Psi, le capteur émettra 4.5 V sur sa sortie. | |||
Le pont diviseur ramènera alors cette tension à 2.85 V. | |||
Nous aurons une valeur numérique de 2.85 / 0.000050354 = 56599 | |||
56599 sera la valeur maximale calculée par l’IPX800. | |||
Nous avons donc 56599 - 9929 = 46670 valeurs numériques utilisables par l’IPX800 correspondant à une plage [0.5 V ; 4.5 V]. | |||
Cela revient donc à dire que l’IPX peut faire correspondre 46669 valeurs proportionnelles à la pression, dans la plage [0 ; 5] Psi | |||
Chaque valeur numérique retournée est donc un multiple de 5 / 46670= 0,000107135 Psi | |||
'''Nous obtenons alors la formule suivante (en Psi)''' | |||
analogue vers valeur : (x - 9929) * 0,000107135 | |||
valeur vers analogue : (x /0,000107135) + 9930 | |||
'''conversion en bar : ''' | |||
nous savons que 1 Psi correspond à 0.0689475728 bar | |||
analogue vers valeur : (x - 9929) * 0,000107135 * 0.0689475728 | |||
valeur vers analogue : (x / (0,000107135 * 0.0689475728)) + 9929 | |||
'''conversion en mètres (colonne d'eau)''' | |||
nous savons que 1 bar correspond à une colonne d'eau de 10 mètres | |||
analogue vers valeur : (x - 9929) * 0,000107135 * 0.0689475728 * 10 | |||
valeur vers analogue : (x / (0,000107135 * 0.0689475728 * 10)) + 9929 | |||
'''conversion en m<sup>3</sup> ou en litres''' | |||
Pour obtenir des m<sup>3</sup> (dans le cas d'une cuve ou d'un puits), il faudra multiplier la hauteur en mètres par la superficie de la cuve (en m<sup>2</sup>) | |||
Pour des litres, il faudra remultiplier par 1000 | |||
les formules n'ont pas été simplifiées pour une meilleure compréhension | |||
===Utilisation de capteurs analogiques avec sortie en courant=== | |||
Le courant de sortie est fonction linéaire de la gamme de mesure. | |||
Exemple : variation de 0 à 20 mA pour une mesure de 0 à 40°C. | Exemple : variation de 0 à 20 mA pour une mesure de 0 à 40°C. | ||
Ligne 181 : | Ligne 301 : | ||
Utilisation des capteurs 0-20 mA ou 4-20 mA | ====Utilisation des capteurs 0-20 mA ou 4-20 mA==== | ||
Pour utiliser ce type de capteur, il suffit d’ajouter une résistance de 165 Ω aux bornes de la sortie du capteur. | Pour utiliser ce type de capteur, il suffit d’ajouter une résistance de 165 Ω aux bornes de la sortie du capteur. | ||
Préférez des résistances avec tolérance 0.1% pour plus de précision dans les mesures. | |||
Avec la loi d’Ohm, nous prévoyons en effet que lorsque la sortie délivrera 20mA (son maximum), la tension aux bornes de la résistance sera | Avec la loi d’Ohm, nous prévoyons en effet que lorsque la sortie délivrera 20mA (son maximum), la tension aux bornes de la résistance sera | ||
Ligne 193 : | Ligne 315 : | ||
U = 3.3 V | U = 3.3 V | ||
Nous faisons mesurer cette tension par l’IPX. | Nous faisons mesurer cette tension par l’IPX. La formule sera calculée en fonction de cette dernière. | ||
''Attention : | ''Attention : | ||
Si le capteur est susceptible d’émettre un courant plus fort (22 mA dans certains cas), utilisez une résistance de 150 Ω | Si le capteur est susceptible d’émettre un courant plus fort (22 mA dans certains cas), utilisez une résistance de 150 Ω | ||
Il existe des capteurs à 3 ou 4 fils. Adaptez les branchements en fonction des recommandations constructeur. | Il existe des capteurs à 2, 3 ou 4 fils. Adaptez les branchements en fonction des recommandations constructeur. | ||
* Vérifiez la compatibilité de votre montage à l'aide d'un voltmètre avant de connecter le tout à l'IPX800. | |||
* Déterminez vos formules avec la valeur réelle de la résistance, mesurée à l'ohmmètre. | |||
'' | '' | ||
[[Fichier:IPXv4_9e.PNG|Capteur générique avec sortie en courant]] | |||
Exemple d’un capteur de | Ci-dessus le cas d'un Capteur Actif. Grâce à son alimentation propre, il génère un courant (ou une tension) proportionnel au phénomène mesuré. | ||
Il fonctionne comme un générateur. | |||
[[Fichier:V4analogique4-20mA.png]] | |||
Ci-dessus un capteur de pression alimenté en 9-32 Vcc | |||
[[Fichier:IPXv4_anemo5.PNG|Anémomètre 4-20mA à 2 fils]] | |||
Ci-dessus le cas d'un capteur passif. Souvent de type résistif, Il se contente de transformer le courant ou la tension qui le traverse en une grandeur proportionnelle au phénomène mesuré. | |||
====Exemple d’un capteur de Pression 0 à 10 bars en 4-20 mA==== | |||
Avec la loi d’Ohm, à 20 mA, nous savons que nous aurons 3.3V (le CAN traduira par 65535) | Avec la loi d’Ohm, à 20 mA, nous savons que nous aurons 3.3V (le CAN traduira par 65535) | ||
Ligne 210 : | Ligne 347 : | ||
De même, à 4 mA, nous aurons 0.66 V (le CAN traduira par 13107) | De même, à 4 mA, nous aurons 0.66 V (le CAN traduira par 13107) | ||
La plage de mesure [0 | La plage de mesure [0 ; 10] est donc répartie sur '''52428''' valeurs, soit un pas de '''0.00019073''' | ||
La formule de notre capteur sera donc | La formule de notre capteur sera donc | ||
analogue vers valeur : '''(x - 13107) * 0.0001907377737''' | |||
valeur vers analoguel: '''(x / 0.0001907377737) + 13107''' | |||
=== | ====Exemple d’un capteur de température 0 à 40°C en 4-20 mA==== | ||
Avec la loi d’Ohm, à 20 mA, nous savons que nous aurons 3.3V (le CAN traduira par 65535) | |||
De même, à 4 mA, nous aurons 0.66 V (le CAN traduira par 13107) | |||
La plage de mesure [0 ; 40°C] est donc répartie sur '''52428''' valeurs, soit un pas de '''0.0007629''' | |||
La formule de notre capteur sera donc | |||
analogue vers valeur : '''(x - 13107) * 0.0007629''' | |||
valeur vers analogue : '''(x / 0.0007629) + 13107''' | |||
==== Exemple d’un capteur de température -20 à 120°C en 4-20 mA ==== | |||
Dans notre exemple, nous utiliserons une résistance de 150 Ohms. | |||
Avec la loi d’Ohm, à 20 mA, nous savons que nous aurons 3.0V (le CAN traduira par 59578) | |||
De même, à 4 mA, nous aurons 0.60 V (le CAN traduira par 11915) | |||
La plage de mesure [-20 ; 120°C] est donc répartie sur '''47663''' valeurs, soit un pas de 140/47663='''0.00293729''' | |||
La formule de notre capteur sera donc | |||
analogue vers valeur : '''((x - 11915) * 0.00293729) - 20''' | |||
valeur vers analoguee: ('''(x + 20) / 0.00293729) + 11915''' | |||
===Pour mesurer la tension aux bornes d’une batterie=== | |||
Comme nous l’avons vu plus haut, pour mesurer une tension supérieure à 3.3V, il faut avoir recours à un pont diviseur de tension. | Comme nous l’avons vu plus haut, pour mesurer une tension supérieure à 3.3V, il faut avoir recours à un pont diviseur de tension. | ||
[[Fichier:IPXv4_9b.JPG]] | [[Fichier:IPXv4_9b.JPG|mesurer la tension aux bornes d'une batterie]] | ||
Rien de bien compliqué dans ce cas de figure, même si R1 n'est pas représentée ici, il s'agit bien d'un pont diviseur de tension. | Rien de bien compliqué dans ce cas de figure, même si R1 n'est pas représentée ici, il s'agit bien d'un pont diviseur de tension. | ||
'''Cas d'une charge entretenue :''' | |||
Vous devez faire attention à bien déterminer la valeur de la résistance en fonction de la tension de charge de la batterie. | |||
En effet, il n’est pas rare que des batteries pour automobile aient une tension grimpant jusqu’à 18 V. | En effet, il n’est pas rare que des batteries pour automobile aient une tension grimpant jusqu’à 18 V. | ||
Si nous ajoutons les 10% de marge, la résistance serait alors à calculer sur 20 V, et non sur 12 V | Si nous ajoutons les 10% de marge, la résistance serait alors à calculer sur 20 V, et non sur 12 V | ||
==Annexes== | |||
@Didierm a créé deux outils permettant de calculer les résistances nécessaires pour créer un pont diviseur de tension ou de courant. | |||
Je vous invite à consulter son tutoriel et de télécharger ses fichiers. | |||
https://forum.gce-electronics.com/t/fichier-dechelle-0-20ma-et-tension-pour-ipx/962?u=fgtoul |
Version actuelle datée du 31 mai 2023 à 16:07
| |||
---|---|---|---|
Nom | ANALOGIQUES | ||
Famille | IPX800 V4 | ||
Wiki créé le | 01/09/2017 | ||
Wiki mis à jour le | 15/08/2018 | ||
Auteur | fgtoul |
Définition
Un capteur analogique est un dispositif permettant de mesurer une grandeur physique telle que
- pression, humidité, luminosité, température, conductivité,
- etc.
A la sortie du capteur, nous obtenons une grandeur électrique, fonction de la grandeur physique mesurée.
La sortie peut prendre une infinité de valeurs continues. Le signal des capteurs analogiques peut être du type :
- sortie tension
- sortie courant
Ces capteurs peuvent être raccordés aux entrées analogiques de l'IPX800, moyennant quelques précautions.
Les Entrées analogiques de l’IPX800 V4
Les entrées analogiques de l’IPX800 permettent de mesurer des tensions, allant de 0V à 3.3V maximum. Il convient de connecter le capteur entre le GND et 3.3V. Le fil correspondant à la mesure sera connecté à l’entrée analogique
(cas des capteurs TC-100 ; TC4012 ; SHT-X3 vendus par GCE)
Si des tensions supérieures à 3.3 V doivent être mesurées, alors il faudra utiliser un pont diviseur afin de ramener cette tension à 3.3v maximum. Si le capteur nécessite une alimentation plus élevée, ne pas lui raccorder le 3.3V.
Le Convertisseur Analogique vers Numérique (CAN en français, ADC en anglais)
Chaque entrée analogique de l’IPX constitue un CAN, capable de traduire une tension (de 0 à 3.3 V) en une grandeur numérique codée sur 16 bits (Résolution) pour la V4.
Chaque bit peut prendre 2 valeurs (0 ou 1). Nous obtenons alors 216 combinaisons différentes, soit 65536 valeurs possibles (de 0 à 65535 inclus).
Pour une valeur analogique 0 V, l’IPX800 retourne une valeur numérique 0.
Pour une tension pleine échelle 3.3 V (le maximum) , l’IPX800 V4 retourne 65535.
Entre chaque point de mesure, il y a donc 3.3 / 65535 = 0,000050354 V
Donc, pour chaque grandeur analogique (tension de 0 à 3.3v), le convertisseur renvoie une valeur de 0 à 65535, représentant le multiple de 0,000050354 V le plus proche de la valeur mesurée.
Pour retrouver la valeur analogique mesurée, il suffit alors de calculer le produit entre la valeur numérique fournie par l’IPX et 0,000050354. Nous avons là une fonction « voltmètre ».
Exemple :
l’IPX800 V4 renvoie une valeur brute de 619.
619 * 0,000050354 = 0.031169126
La tension appliquée à l’entrée analogique est donc de 0.03 V
Application : un anémomètre analogique
Soit un anémomètre avec les caractéristiques suivantes :
Sortie : 0.4V à 2V La tension va varier de 0,4V (Vent à 0m/s) à 2V ( vent à 32,4m/s).
Nous n’utilisons donc pas la totalité de la plage possible de lectures de l’IPX qui peut aller jusqu’à 3.3v.
- Pour une lecture de 2V, nous aurons donc une valeur numérique de 2 / 0,000050354 = 39719.
39719 sera donc la valeur numérique maxi calculée par l’IPX pour 32.4 m/s
- Pour une lecture de 0.4v nous aurons une valeur numérique de 0.4 / 0,000050354 = 7944
7944 sera la valeur minimale calculée par l’IPX800.
Nous avons donc 39719 - 7944 = 31775 valeurs numériques utilisables par l’IPX800 correspondant à une plage [0.4 V ; 2 V].
Voyons cela sur un graphique
Avec le graphique nous voyons que l’IPX peut faire correspondre 31775 valeurs proportionnelles à la tension de sortie de notre capteur.
Cela revient donc à dire que l’IPX peut faire correspondre 31775 valeurs proportionnelles à la vitesse du vent, dans la plage [0 ; 32.4] m/s
Chaque valeur numérique retournée est donc un multiple de 32,4 / 31775=0,001019669 m/s
De là, nous déduisons la formule (avec prise en compte de l’origine à 7944)
Soit A la valeur analogique recherchée, et D la valeur renvoyée par l’IPX.
Nous avons déterminé que A = (D - 7944) * 0,001019669
Dans l’IPX800, nous écrirons la formule sous la forme
analogue vers valeur : (x - 7944) * 0,001019669
Inversement Soit A la valeur analogique recherchée, et D la valeur renvoyée par l’IPX. Nous savons que
A = (D - 7944) * 0,001019669 <=> A / 0.001019669 = D - 7944 <=> D = (A / 0.001019669) + 7944
Dans l’IPX800, nous écrirons la formule sous la forme
valeur vers analogue : (x / 0,001019669) + 7944
Pour vérifier la formule, prenons la valeur 39719 calculée ci-dessus,
elle retourne bien (39719 - 7944) * 0,001019669 = 32.4
Mesurer une tension supérieure à 3.3 V
Principe
La tension applicable sur une entrée analogique de l’IPX800 doit impérativement être inférieure à 3.3 V.
Au dessus, elle ne sera pas mesurée et vous risquez d’endommager l’IPX.
Si vous devez mesurer une tension plus grande, il faut utiliser un pont diviseur de tension.
Le but n’est pas ici d’expliquer le fonctionnement d’un diviseur de tension, mais de voir son application à l’IPX800. Nous savons que l’impédance interne de l’entrée analogique de l’IPX800 est de 4700 Ω
Aux bornes de l’entrée analogique, la tension Vs est telle que
Vs = (R1 / (R1+R2)) * Ve
Isolons le terme R2 :
R2 = R1 * (Ve / Vs) - R1
R2=4700 * (Ve / Vs) - 4700
Nous utiliserons cette formule pour calculer notre résistance R2 en Ω
Exemple d’un capteur analogique avec sortie 0 – 10v
La résistance R1 est interne à l’IPX800. Elle est représentée ici pour la compréhension du schéma. Ne pas la câbler. Adaptez les branchements en fonction des recommandations constructeur. Vérifiez la compatibilité de votre montage à l'aide d'un voltmètre avant de connecter le tout à l'IPX800.
Vs = (R1 / (R1 + R2)) * Ve
R2 = 4700 * (Ve / Vs) - 4700
Remplaçons par les valeurs numériques.
Nous ajouterons 10% de marge à notre tension d’entrée par mesure de sécurité (soit 11V au lieu de 10V) :
R2 = 4700 * ((11 / 3.3) – 4700
R2 = 10966 Ω
Il conviendra de prendre une résistance de 11 kΩ. (valeur standard supérieure la plus proche)
Recalculons la tension max aux bornes de l’IPX
Vs = (R1 / (R1 + R2)) * Ve
Vs=(4.7 / (4.7 + 11)) * 10 <=> Vs=3.0 V
Pour 10 V en sortie du capteur, l’IPX800 ne « verra » donc que 3.0 V aux bornes de son entrée analogique.
nous devons nous assurer que notre résistance peut supporter le courant qui circulera
Ve = I * (R1 + R2)
<=> I = Ve / (R1 + R2)
<=> I = 10 / (11000 + 4700) = 0.00063 A
P = Ve * I <=> P = 10 * 0.00063 A <=> P = 0.007 W => Une résistance 1/4W suffira.
Exemple d’un capteur analogique avec sortie 0.5 – 4.5 V
Notre capteur ayant une sortie 0.5v - 4.5V, ajoutons 10% environ et faisons nos calculs avec 5V maximum.
Cette marge de 10% peut être réduite en fonction de la précision du capteur sur la sortie.
Vs = (R1 / (R1 + R2)) * Ve
R2 = 4700 * (Ve / Vs) - 4700
Remplaçons par les valeurs numériques.
R2 = 4700 * ((5 / 3.3) – 4700
R2 = 2421 Ω
Il conviendra de prendre une résistance de 2.7 kΩ. (valeur standard supérieure la plus proche)
Recalculons la tension max aux bornes de l’IPX
Vs = (R1 / (R1 + R2)) * Ve
Vs=(4.7 / (4.7 + 2.7)) * 4.5 <=> Vs=2.85 V
Pour 4.5 V en sortie du capteur, l’IPX800 ne « verra » donc que 2.85 V aux bornes de son entrée analogique.
Une résistance 1/4W suffira.
Appliquons cela à un cas concret
Prenons un capteur de pression avec une sortie 0.5 - 4.5 V avec une plage de mesure de 0 à 5 Psi (0 à 0.344 bar).
Pour une lecture de 0 Psi, la sortie du capteur est de 0.5 V
- Pour une lecture de 0.5V sur l'entrée de l'IPX, nous aurons donc une valeur numérique de 0.5 / 0.000050354 = 9929.
9929 sera donc la valeur numérique mini calculée par l’IPX pour 0 Psi
- Pour une lecture de 5 Psi, le capteur émettra 4.5 V sur sa sortie.
Le pont diviseur ramènera alors cette tension à 2.85 V.
Nous aurons une valeur numérique de 2.85 / 0.000050354 = 56599
56599 sera la valeur maximale calculée par l’IPX800.
Nous avons donc 56599 - 9929 = 46670 valeurs numériques utilisables par l’IPX800 correspondant à une plage [0.5 V ; 4.5 V].
Cela revient donc à dire que l’IPX peut faire correspondre 46669 valeurs proportionnelles à la pression, dans la plage [0 ; 5] Psi
Chaque valeur numérique retournée est donc un multiple de 5 / 46670= 0,000107135 Psi
Nous obtenons alors la formule suivante (en Psi)
analogue vers valeur : (x - 9929) * 0,000107135
valeur vers analogue : (x /0,000107135) + 9930
conversion en bar :
nous savons que 1 Psi correspond à 0.0689475728 bar
analogue vers valeur : (x - 9929) * 0,000107135 * 0.0689475728
valeur vers analogue : (x / (0,000107135 * 0.0689475728)) + 9929
conversion en mètres (colonne d'eau)
nous savons que 1 bar correspond à une colonne d'eau de 10 mètres
analogue vers valeur : (x - 9929) * 0,000107135 * 0.0689475728 * 10
valeur vers analogue : (x / (0,000107135 * 0.0689475728 * 10)) + 9929
conversion en m3 ou en litres
Pour obtenir des m3 (dans le cas d'une cuve ou d'un puits), il faudra multiplier la hauteur en mètres par la superficie de la cuve (en m2)
Pour des litres, il faudra remultiplier par 1000
les formules n'ont pas été simplifiées pour une meilleure compréhension
Utilisation de capteurs analogiques avec sortie en courant
Le courant de sortie est fonction linéaire de la gamme de mesure.
Exemple : variation de 0 à 20 mA pour une mesure de 0 à 40°C.
Nous pouvons les rencontrer sous différents formats :
• 0-20 mA : fréquent • 4-20 mA : le plus répandu ; permet de détecter les ruptures de conducteur ou les défauts de mesure (si I < 4mA) • 0-10mA : rare • 0-16mA : rare
Les avantages de ces capteurs :
• Pas de perte de signal sur une longue distance. Le courant est constant sur toute la longueur de la boucle • Peu sensible aux interférences électromagnétiques
Utilisation des capteurs 0-20 mA ou 4-20 mA
Pour utiliser ce type de capteur, il suffit d’ajouter une résistance de 165 Ω aux bornes de la sortie du capteur.
Préférez des résistances avec tolérance 0.1% pour plus de précision dans les mesures.
Avec la loi d’Ohm, nous prévoyons en effet que lorsque la sortie délivrera 20mA (son maximum), la tension aux bornes de la résistance sera
U = R * I
U = 165 * 0.020
U = 3.3 V
Nous faisons mesurer cette tension par l’IPX. La formule sera calculée en fonction de cette dernière.
Attention : Si le capteur est susceptible d’émettre un courant plus fort (22 mA dans certains cas), utilisez une résistance de 150 Ω Il existe des capteurs à 2, 3 ou 4 fils. Adaptez les branchements en fonction des recommandations constructeur.
* Vérifiez la compatibilité de votre montage à l'aide d'un voltmètre avant de connecter le tout à l'IPX800. * Déterminez vos formules avec la valeur réelle de la résistance, mesurée à l'ohmmètre.
Ci-dessus le cas d'un Capteur Actif. Grâce à son alimentation propre, il génère un courant (ou une tension) proportionnel au phénomène mesuré.
Il fonctionne comme un générateur.
Ci-dessus un capteur de pression alimenté en 9-32 Vcc
Ci-dessus le cas d'un capteur passif. Souvent de type résistif, Il se contente de transformer le courant ou la tension qui le traverse en une grandeur proportionnelle au phénomène mesuré.
Exemple d’un capteur de Pression 0 à 10 bars en 4-20 mA
Avec la loi d’Ohm, à 20 mA, nous savons que nous aurons 3.3V (le CAN traduira par 65535)
De même, à 4 mA, nous aurons 0.66 V (le CAN traduira par 13107)
La plage de mesure [0 ; 10] est donc répartie sur 52428 valeurs, soit un pas de 0.00019073
La formule de notre capteur sera donc
analogue vers valeur : (x - 13107) * 0.0001907377737 valeur vers analoguel: (x / 0.0001907377737) + 13107
Exemple d’un capteur de température 0 à 40°C en 4-20 mA
Avec la loi d’Ohm, à 20 mA, nous savons que nous aurons 3.3V (le CAN traduira par 65535)
De même, à 4 mA, nous aurons 0.66 V (le CAN traduira par 13107)
La plage de mesure [0 ; 40°C] est donc répartie sur 52428 valeurs, soit un pas de 0.0007629
La formule de notre capteur sera donc
analogue vers valeur : (x - 13107) * 0.0007629 valeur vers analogue : (x / 0.0007629) + 13107
Exemple d’un capteur de température -20 à 120°C en 4-20 mA
Dans notre exemple, nous utiliserons une résistance de 150 Ohms.
Avec la loi d’Ohm, à 20 mA, nous savons que nous aurons 3.0V (le CAN traduira par 59578)
De même, à 4 mA, nous aurons 0.60 V (le CAN traduira par 11915)
La plage de mesure [-20 ; 120°C] est donc répartie sur 47663 valeurs, soit un pas de 140/47663=0.00293729
La formule de notre capteur sera donc
analogue vers valeur : ((x - 11915) * 0.00293729) - 20 valeur vers analoguee: ((x + 20) / 0.00293729) + 11915
Pour mesurer la tension aux bornes d’une batterie
Comme nous l’avons vu plus haut, pour mesurer une tension supérieure à 3.3V, il faut avoir recours à un pont diviseur de tension.
Rien de bien compliqué dans ce cas de figure, même si R1 n'est pas représentée ici, il s'agit bien d'un pont diviseur de tension.
Cas d'une charge entretenue :
Vous devez faire attention à bien déterminer la valeur de la résistance en fonction de la tension de charge de la batterie.
En effet, il n’est pas rare que des batteries pour automobile aient une tension grimpant jusqu’à 18 V.
Si nous ajoutons les 10% de marge, la résistance serait alors à calculer sur 20 V, et non sur 12 V
Annexes
@Didierm a créé deux outils permettant de calculer les résistances nécessaires pour créer un pont diviseur de tension ou de courant. Je vous invite à consulter son tutoriel et de télécharger ses fichiers. https://forum.gce-electronics.com/t/fichier-dechelle-0-20ma-et-tension-pour-ipx/962?u=fgtoul