Le AH49E est un petit dispositif à effet Hall linéaire, polyvalent, qui est entraîné par le champ magnétique d'un aimant permanent ou d'un électroaimant. La tension de sortie est fixée par la tension d'alimentation et varie proportionnellement à l'intensité du champ magnétique. Le circuit intégré se caractérise par un faible bruit de sortie, ce qui élimine la nécessité d'un filtrage externe. Il est doté de résistances de précision pour une stabilité et une précision accrues de la température. La plage de température de fonctionnement de ces capteurs Hall linéaires est de -40°C à +85°C, ce qui convient aux applications commerciales, résidentielles et industrielles.

Le capteur émet un signal de tension analogique indiquant l'intensité du champ magnétique.

Données techniques

Chipset AH49E
La sortie à faible bruit élimine pratiquement tout besoin de filtrage.
Réagit aux Gauss positifs et négatifs (le Gauss est l'unité dans laquelle la force magnétique est mesurée).
Plage de mesure De -40°C à 85°C
Consommation de courant 3,5mA à 5V

Affectation des broches

Exemple de code Arduino

Affectation des broches Arduino

Arduino Capteur
Pin A5 Signal
5V +V
Masse GND

Le programme mesure la valeur de la tension actuelle au niveau du capteur, calcule la valeur de la résistance actuelle du capteur à partir de celle-ci et de la résistance en série connue, et transmet les résultats à la sortie série.

int sensorPin = A5; // Déclaration de la broche d'entrée
 
// Sortie série à 9600 bauds
void setup()
{
    Serial.begin(9600);
}
 
// Le programme mesure la valeur de tension au niveau du capteur, <br />//calcule la résistance à partir de cette valeur et de la résistance <br />//série connue et renvoie les résultats à la sortie série.
 
void loop()
{      
        // Mesure de la tension du capteur...
    int rawValue = analogRead(sensorPin);
        float voltage = rawValue * (5.0/1023) * 1000;
         
        float resistance = 10000 * ( voltage / ( 5000.0 - voltage) );
         
    // ... et envoi vers le port série
    Serial.print("Tension:");   Serial.print(voltage); Serial.print("mV");
    Serial.print(", Résistance:"); Serial.print(resistance); Serial.println("Ohm");
    Serial.println("---------------------------------------");
 
    delay(500);
}

Télécharger l'exemple de programme

KY035-Arduino.zip

Exemple de code Raspberry Pi

Affectation des broches Raspberry Pi

Raspberry Pi Capteur
KY-053 A0 Signal
3,3V [Pin 1] +V
Masse [Pin 6] GND
Capteur KY-053
Signal A0
+V 3,3V [Pin 1]
GND Masse [Pin 6]
Raspberry Pi KY-053
GPIO 3 [Pin 5] SCL
Gpio 2 [Pin 3] SDA

Capteur analogique, il faut donc respecter les points suivants.

Contrairement à l'Arduino, le Raspberry Pi n'a pas d'entrées analogiques ou il n'y a pas d'ADC (convertisseur analogique numérique) intégré dans la puce du Raspberry Pi. Cela limite le Raspberry Pi, si vous voulez utiliser des capteurs, où les valeurs de sortie ne sont pas numériques [valeur de tension dépassée -> valeur numérique ON | valeur de tension sous-cotée -> valeur numérique OFF | exemple : bouton enfoncé [ON] bouton relâché [OFF]], mais il doit s'agir d'une valeur variable continue (exemple : potentiomètre -> autre position = autre valeur de tension).

Pour éviter ce problème, notre kit de capteur X40 a le KY-053, un module avec ADC précis de 16 bits, que vous pouvez utiliser sur le Raspberry pour l'étendre avec 4 entrées analogiques. Il est connecté au Raspberry Pi via I2C, prend en charge la mesure analogique et transmet la valeur numérique au Raspberry Pi.

Ainsi, nous recommandons de connecter le module KY-053 avec ledit ADC entre les capteurs analogiques de cet ensemble. Pour plus d'informations, veuillez consulter la page d'information sur le convertisseur analogique-numérique KY-053.

Le programme utilise les bibliothèques Python ADS1x15 et I2C correspondantes d'Adafruit pour piloter l'ADC ADS1115. Ceux-ci ont été publiés au lien suivant https://github.com/adafruit/Adafruit_CircuitPython_ADS1x15 sous la licence MIT. Les bibliothèques requises ne sont pas incluses dans le paquet de téléchargement ci-dessous.

Le programme utilise l'ADC ADS1115 pour mesurer la valeur de la tension actuelle au niveau de l'ADC, calcule la résistance actuelle de la CTN à partir de celle-ci, calcule la température en utilisant les valeurs déterminées à l'avance pour ce capteur et les transmet à la console.

Veuillez noter que vous devez activer I2C sur votre Raspberry Pi avant d'utiliser cet exemple.

#!/usr/bin/python
# coding=utf-8

import time
import board
import busio
import adafruit_ads1x15.ads1115 as ADS
from adafruit_ads1x15.analog_in import AnalogIn

# Create the I2C bus
i2c = busio.I2C(board.SCL, board.SDA)

# Create the ADC object using the I2C bus
ads = ADS.ADS1115(i2c)
voltageMax = 3.3
# Create single-ended input on channels
chan0 = AnalogIn(ads, ADS.P0)
chan1 = AnalogIn(ads, ADS.P1)
chan2 = AnalogIn(ads, ADS.P2)
chan3 = AnalogIn(ads, ADS.P3)



while True:
    resistance = chan0.voltage / (voltageMax - chan0.voltage) * 10000

    print("Valeur de la tension: ",'%.2f' % chan0.voltage,"V, Résistance: ",'%.2f' % resistance, "Ω")
    print("---------------------------------------------------")
    time.sleep(1)

Exemple de téléchargement de programme

KY035-RPi.zip

Pour commencer avec la commande :

sudo python3 KY035-RPi.py

Exemple de code Micro:Bit

Affectation des broches Micro:Bit :

Micro:Bit Capteur
Pin 1 Signal
3V +V
Masse GND

Ceci est un exemple MakeCode pour Micro:Bit qui fait essentiellement la même chose que les exemples pour les deux autres variantes. Cependant, cet exemple est plus proche de celui du Raspberry Pi que de celui de l'Arduino.

Téléchargement d'un exemple de programme

microbit-KY-035.zip