KY-035 Capteur magnétique analogique
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.
- Arduino
- Raspberry Pi
- Raspberry Pi Pico
- Micro:Bit
Le module de capteur magnétique BIHOR utilise le capteur à effet Hall AH49E, qui peut détecter les champs magnétiques. En l'absence de champ magnétique, le capteur émet une tension qui est environ la moitié de la tension d'alimentation.
Si un pôle sud d'un aimant s'approche du côté marqué du capteur, la tension de sortie augmente. Si un pôle nord s'approche, la tension diminue. Ces changements sont réguliers et permettent une détection précise de la direction de l'aimant.
Ce module est idéal pour détecter et mesurer les champs magnétiques, ce qui est utile dans des applications telles que les capteurs de vitesse, les capteurs de position ou divers systèmes de contrôle et de surveillance. Il offre un moyen simple de réagir aux champs magnétiques et peut être utilisé dans de nombreuses applications.
Données techniques | |
---|---|
Chipset | AH49E |
Particularités |
|
Plage de mesure | De -40°C à 85°C |
Consommation de courant | 3,5mA à 5V |
Domaine fonctionnel | 3,3 V - 5 V |
Affectation des broches
Arduino | Capteur |
---|---|
Pin A5 | Signal |
5V | +V |
GND | GND |
Exemple de code
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.
Pour charger l'exemple de code suivant sur votre Arduino, nous vous recommandons d'utiliser l'IDE Arduino. Dans l'IDE, vous pouvez choisir le port et la carte qui conviennent à votre appareil.
Copiez le code ci-dessous dans votre IDE. Pour télécharger le code sur votre Arduino, il vous suffit de cliquer sur le bouton " Upload ".
int sensorPin = A5; // La broche d'entrée est déclarée ici
void setup() {
// Sortie sérielle en 9600 bauds
Serial.begin(9600);
Serial.println("KY-035 Détection de champs magnétiques");
}
// Le programme mesure la valeur de tension actuelle sur le capteur,
// calcule à partir de celle-ci et de la résistance série connue la valeur actuelle
// valeur de résistance du capteur et affiche les résultats sur la sortie sérielle
void loop() {
// La valeur de tension actuelle est mesurée...
int rawValue = analogRead(sensorPin);
float voltage = rawValue * (5.0/1023) * 1000;
float resitance = 10000 * (voltage / (5000.0 - voltage));
// ... et ici sur l'interface sérielle
Serial.print("Valeur de la tension: ");
Serial.print(voltage);
Serial.print(" mV, \t Valeur de résistance: ");
Serial.print(resitance);
Serial.println(" Ohm");
Serial.println("---------------------------------------");
delay(1000);
}
Le module de capteur magnétique BIHOR utilise le capteur à effet Hall AH49E, qui peut détecter les champs magnétiques. En l'absence de champ magnétique, le capteur émet une tension qui est environ la moitié de la tension d'alimentation.
Si un pôle sud d'un aimant s'approche du côté marqué du capteur, la tension de sortie augmente. Si un pôle nord s'approche, la tension diminue. Ces changements sont réguliers et permettent une détection précise de la direction de l'aimant.
Ce module est idéal pour détecter et mesurer les champs magnétiques, ce qui est utile dans des applications telles que les capteurs de vitesse, les capteurs de position ou divers systèmes de contrôle et de surveillance. Il offre un moyen simple de réagir aux champs magnétiques et peut être utilisé dans de nombreuses applications.
Données techniques | |
---|---|
Chipset | AH49E |
Particularités |
|
Plage de mesure | De -40°C à 85°C |
Consommation de courant | 3,5mA à 5V |
Domaine fonctionnel | 3,3 V - 5 V |
Affectation des broches
Raspberry Pi | Capteur |
---|---|
3,3 V [Pin 1] | +V |
GND [Pin 6] | GND |
- | Signal |
Capteur | KY-053 |
---|---|
Signal | A0 |
+V | - |
GND | - |
Raspberry Pi | KY-053 |
---|---|
GPIO 3 [Pin 5] | SCL |
GPIO 2 [Pin 3] | SDA |
3,3 V [Pin 1] | VDD |
GND [Pin 6] | GND |
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.
Exemple de code
Attention! L'utilisation de ce module, en combinaison avec le convertisseur analogique-numérique KY-053, nécessite la mise en place d'un environnement virtuel. Vous trouverez toutes les informations nécessaires à cet effet ici.
import time
import board
import busio
import adafruit_ads1x15.ads1115 as ADS
from adafruit_ads1x15.analog_in import AnalogIn
# Créer le bus I2C
i2c = busio.I2C(board.SCL, board.SDA)
# Créer l'objet ADC en utilisant le bus I2C
ads = ADS.ADS1115(i2c)
voltageMax = 3.3
# Création d'une entrée asymétrique sur les canaux
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, "Ohm")
print("---------------------------------------------------")
time.sleep(1)
Le module de capteur magnétique BIHOR utilise le capteur à effet Hall AH49E, qui peut détecter les champs magnétiques. En l'absence de champ magnétique, le capteur émet une tension qui est environ la moitié de la tension d'alimentation.
Si un pôle sud d'un aimant s'approche du côté marqué du capteur, la tension de sortie augmente. Si un pôle nord s'approche, la tension diminue. Ces changements sont réguliers et permettent une détection précise de la direction de l'aimant.
Ce module est idéal pour détecter et mesurer les champs magnétiques, ce qui est utile dans des applications telles que les capteurs de vitesse, les capteurs de position ou divers systèmes de contrôle et de surveillance. Il offre un moyen simple de réagir aux champs magnétiques et peut être utilisé dans de nombreuses applications.
Données techniques | |
---|---|
Chipset | AH49E |
Particularités |
|
Plage de mesure | De -40°C à 85°C |
Consommation de courant | 3,5mA à 5V |
Domaine fonctionnel | 3,3 V - 5 V |
Affectation des broches
Micro:Bit | Capteur |
---|---|
3,3 V | +V |
GND | GND |
- | Signal |
Capteur | KY-053 |
---|---|
Signal | A0 |
+V | - |
GND | - |
Micro:Bit | KY-053 |
---|---|
Pin 19 | SCL |
Pin 20 | SDA |
3,3 V | VDD |
GND | GND |
Capteur analogique, il faut donc respecter les points suivants: Le Micro:Bit dispose d'entrées analogiques ou d'un ADC (convertisseur analogique-numérique) intégré dans la puce du Micro:Bit. Cependant, ceux-ci ne sont limités qu'à 10 bits et n'offrent donc qu'une précision assez faible pour les mesures analogiques.
Pour éviter ce problème, notre kit de capteur X40 contient le KY-053, un module avec un ADC de 16 bits, que vous pouvez utiliser sur le Micro:Bit pour l'étendre de 4 entrées analogiques. Celui-ci est connecté au Micro:Bit via I2C, prend en charge la mesure analogique et transfère la valeur numériquement au Micro:Bit.
Par conséquent, nous recommandons de connecter le module KY-053 avec le CAN mentionné entre les capteurs analogiques de ce jeu. Plus d'informations peuvent être trouvées sur la page d'information du convertisseur analogique numérique Convertisseur analogique numérique KY-053.
Exemple de code
Le programme utilise la bibliothèque correspondante de notre part pour contrôler l'ADC ADS1115. Ceci a été publié sous le lien suivant pxt-ads1115 sous la licence MIT.
ADS1115.setMode(mode.Multi)
ADS1115.setRate(rate.Rate5)
ADS1115.setGain(gain.One)
ADS1115.initADS1115(userInI2C.Gnd)
basic.forever(function () {
serial.writeLine("" + (ADS1115.read(0)))
if (ADS1115.read(0) > 13500) {
serial.writeLine("Threshold value reached ")
} else {
serial.writeLine("Threshold value not yet reached")
}
serial.writeLine("_____________________________________")
basic.pause(1000)
})
Téléchargement d'un exemple de programme
Le module de capteur magnétique BIHOR utilise le capteur à effet Hall AH49E, qui peut détecter les champs magnétiques. En l'absence de champ magnétique, le capteur émet une tension qui est environ la moitié de la tension d'alimentation.
Si un pôle sud d'un aimant s'approche du côté marqué du capteur, la tension de sortie augmente. Si un pôle nord s'approche, la tension diminue. Ces changements sont réguliers et permettent une détection précise de la direction de l'aimant.
Ce module est idéal pour détecter et mesurer les champs magnétiques, ce qui est utile dans des applications telles que les capteurs de vitesse, les capteurs de position ou divers systèmes de contrôle et de surveillance. Il offre un moyen simple de réagir aux champs magnétiques et peut être utilisé dans de nombreuses applications.
Données techniques | |
---|---|
Chipset | AH49E |
Particularités |
|
Plage de mesure | De -40°C à 85°C |
Consommation de courant | 3,5mA à 5V |
Domaine fonctionnel | 3,3 V - 5 V |
Affectation des broches
Raspberry Pi Pico | Capteur |
---|---|
GND | GND |
3 V | +V |
GPIO26 (A0) | Signal |
On peut aussi utiliser un ADC comme le KY-053. Cet ADC a une résolution plus élevée que l'ADC interne de l'Raspberry Pi Pico, ce qui permet d'évaluer le capteur avec plus de précision.
Exemple de code
Le programme calcule 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, puis émet un texte sur la sortie série dans certaines conditions.
Pour charger l'exemple de code suivant sur votre Pico, nous vous recommandons d'utiliser l'IDE Thonny. Il vous suffit de commencer par sélectionner Run > Configure interpreter ... > Interpreter > Which kind of interpreter should Thonny use for running your code? > MicroPython (Raspberry Pi Pico).
Copiez maintenant le code ci-dessous dans votre IDE et cliquez sur Run.
# Charger des bibliothèques
from machine import ADC
from time import sleep
# Initialisation de l'ADC
adc = ADC(0)
print("KY-035 Détection de champs magnétiques")
# Boucle infinie pour lire l'ADC
while True:
raw_value = adc.read_u16()
# Conversion de la valeur analogique en tension
voltage = raw_value * 3.3 / 65536
# Sortie sérielle de la valeur analogique et de la tension calculée
print("Valeur analogique:", str(raw_value), "\t Valeur de tension analogique:", str(round(voltage, 2)), "V")
sleep(2)