KY-024 Capteur à effet Hall
Ces commutateurs à effet Hall sont des circuits intégrés monolithiques dotés de spécifications magnétiques plus strictes.
- Arduino
- Raspberry Pi
- Raspberry Pi Pico
- Micro:Bit
Ce module contient un commutateur à effet Hall qui détecte et réagit aux champs magnétiques. Au repos, lorsqu'il n'y a pas de champ magnétique externe, la tension de sortie est généralement égale à la moitié de la tension d'alimentation. Lorsqu'un pôle magnétique sud s'approche du côté marqué du capteur, la tension de sortie augmente. Un pôle magnétique nord, en revanche, abaisse la tension de sortie. Ces fluctuations sont symétriques et permettent des mesures de seuil précises.
Le capteur émet un signal numérique élevé dès qu'une valeur seuil prédéfinie est dépassée. Cette valeur seuil est réglée à l'aide d'un potentiomètre rotatif et comparée à la valeur mesurée du capteur par le comparateur LM393 intégré. Si la valeur réglée est dépassée, le capteur émet un signal logique élevé.
La sortie numérique indique si un champ magnétique a été détecté, tandis que la sortie analogique fournit la valeur directement mesurée par le capteur. Deux LED indiquent l'état de fonctionnement : La LED1 indique que le capteur est alimenté en tension, et la LED2 s'allume lorsqu'un champ magnétique a été détecté.
Ce module est idéal pour les applications nécessitant la détection et la mesure de champs magnétiques, telles que les capteurs de vitesse, les capteurs de position ou les systèmes de sécurité. Grâce au chipset AH49E et au comparateur LM393, il offre une solution fiable et précise pour la détection de champs magnétiques. Le capteur fonctionne avec une tension d'alimentation de 5V et offre une précision de 9 à 12 bits.
Note de l'utilisateur
Ce capteur convient parfaitement à la mesure de valeurs seuils. Cela signifie que le capteur émet un signal numérique élevé dès qu'une valeur seuil fixée par l'utilisateur sur le potentiomètre rotatif est dépassée. Il convient de noter ici que le signal numérique est une comparaison entre la valeur réglée sur le potentiomètre rotatif et la valeur mesurée sur le capteur, qui sont ensuite comparées par le comparateur LM393 installé sur la carte. La valeur réglée sur le potentiomètre rotatif est la valeur seuil, qui est utilisée pour définir un signal logique haut.
Sortie numérique: Si un champ magnétique est détecté, un signal est émis ici.
Sortie analogique: Valeur de mesure directe de l'unité de détection
LED1: Indique que le capteur est alimenté en tension
LED2: Indique qu'un champ magnétique a été détecté
Données techniques | |
---|---|
Chipset | AH49E, LM393 |
Type de capteur | Transistor/commutateur à effet Hall |
Précision | 9 à 12 Bit |
Plage de fonctionnement | 5V (en fonction des composants) |
Fonctionnement du capteur
Ce capteur comporte deux composants fonctionnels sur son circuit imprimé : L'unité de capteur avant, qui mesure physiquement l'environnement et le transmet sous forme de signal analogique à la seconde unité, le comparateur. Le comparateur compare la valeur mesurée par le capteur avec la valeur réglée sur le potentiomètre rotatif et émet un signal logique élevé sur la broche numérique et la LED L1 si la valeur réglée sur le potentiomètre rotatif est dépassée.
Veuillez noter. Veuillez noter. Le signal est inversé. Si une valeur élevée est mesurée, cela se traduit par une valeur de tension plus faible à la sortie analogique.
Le potentiomètre rotatif peut être réglé comme suit :
Ce capteur ne donne pas de valeurs absolues (par exemple, la température exactement mesurée en °C ou l'intensité du champ magnétique en mT), mais il s'agit d'une mesure relative : une valeur limite est définie par rapport à la situation environnementale normale donnée et un signal est donné qui peut être traité ultérieurement si cette valeur limite est dépassée ou si une autre condition que le cas normal s'est produite.
Ce comportement est idéal pour la surveillance de la température (KY-028), les capteurs de proximité (KY-024, KY-025, KY-036), des moniteurs d'alarme (KY-037, KY-038) ou des codeurs (KY-026).
Affectation des broches
Arduino | Capteur |
---|---|
5V | +V |
GND | GND |
Pin 3 | Signal numérique |
Pin A0 | Signal analogique |
Exemple de code
Le programme lit la valeur de la tension actuelle, qui peut être mesurée sur la sortie analogique, et la sort sur l'interface série. En outre, l'état de la broche numérique est également indiqué dans la console, ce qui signifie que la valeur est passée sous la valeur limite ou non.
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 ".
// Déclaration et initialisation des broches d'entrée
int analog_input = A0; // Sortie analogique du capteur
int digital_input = 3; // Sortie numérique du capteur
void setup () {
pinMode(analog_input, INPUT);
pinMode(digital_input, INPUT);
Serial.begin(9600); // Sortie série à 9600 bps
Serial.println("KY-024 Détection de champs magnétiques");
}
// Le programme lit les valeurs actuelles des broches d'entrée
// et les affiche sur la sortie sérielle
void loop () {
float analog_value;
int digital_value;
//Les valeurs actuelles sont lues, converties en valeur de tension...
analog_value = analogRead(analog_input) * (5.0 / 1023.0);
digital_value = digitalRead(digital_input);
//... et émis à cet endroit
Serial.print("Valeur de tension analogique: ");
Serial.print(analog_value, 4);
Serial.print(" V, \t Valeur limite: ");
if (digital_value == 1) {
Serial.println("atteint");
}
else {
Serial.println("pas encore atteint");
}
Serial.println("----------------------------------------------------------------");
delay(1000);
}
Ce module contient un commutateur à effet Hall qui détecte et réagit aux champs magnétiques. Au repos, lorsqu'il n'y a pas de champ magnétique externe, la tension de sortie est généralement égale à la moitié de la tension d'alimentation. Lorsqu'un pôle magnétique sud s'approche du côté marqué du capteur, la tension de sortie augmente. Un pôle magnétique nord, en revanche, abaisse la tension de sortie. Ces fluctuations sont symétriques et permettent des mesures de seuil précises.
Le capteur émet un signal numérique élevé dès qu'une valeur seuil prédéfinie est dépassée. Cette valeur seuil est réglée à l'aide d'un potentiomètre rotatif et comparée à la valeur mesurée du capteur par le comparateur LM393 intégré. Si la valeur réglée est dépassée, le capteur émet un signal logique élevé.
La sortie numérique indique si un champ magnétique a été détecté, tandis que la sortie analogique fournit la valeur directement mesurée par le capteur. Deux LED indiquent l'état de fonctionnement : La LED1 indique que le capteur est alimenté en tension, et la LED2 s'allume lorsqu'un champ magnétique a été détecté.
Ce module est idéal pour les applications nécessitant la détection et la mesure de champs magnétiques, telles que les capteurs de vitesse, les capteurs de position ou les systèmes de sécurité. Grâce au chipset AH49E et au comparateur LM393, il offre une solution fiable et précise pour la détection de champs magnétiques. Le capteur fonctionne avec une tension d'alimentation de 5V et offre une précision de 9 à 12 bits.
Note de l'utilisateur
Ce capteur convient parfaitement à la mesure de valeurs seuils. Cela signifie que le capteur émet un signal numérique élevé dès qu'une valeur seuil fixée par l'utilisateur sur le potentiomètre rotatif est dépassée. Il convient de noter ici que le signal numérique est une comparaison entre la valeur réglée sur le potentiomètre rotatif et la valeur mesurée sur le capteur, qui sont ensuite comparées par le comparateur LM393 installé sur la carte. La valeur réglée sur le potentiomètre rotatif est la valeur seuil, qui est utilisée pour définir un signal logique haut.
Sortie numérique: Si un champ magnétique est détecté, un signal est émis ici.
Sortie analogique: Valeur de mesure directe de l'unité de détection
LED1: Indique que le capteur est alimenté en tension
LED2: Indique qu'un champ magnétique a été détecté
Données techniques | |
---|---|
Chipset | AH49E, LM393 |
Type de capteur | Transistor/commutateur à effet Hall |
Précision | 9 à 12 Bit |
Plage de fonctionnement | 5V (en fonction des composants) |
Fonctionnement du capteur
Ce capteur comporte deux composants fonctionnels sur son circuit imprimé : L'unité de capteur avant, qui mesure physiquement l'environnement et le transmet sous forme de signal analogique à la seconde unité, le comparateur. Le comparateur compare la valeur mesurée par le capteur avec la valeur réglée sur le potentiomètre rotatif et émet un signal logique élevé sur la broche numérique et la LED L1 si la valeur réglée sur le potentiomètre rotatif est dépassée.
Veuillez noter. Veuillez noter. Le signal est inversé. Si une valeur élevée est mesurée, cela se traduit par une valeur de tension plus faible à la sortie analogique.
Le potentiomètre rotatif peut être réglé comme suit :
Ce capteur ne donne pas de valeurs absolues (par exemple, la température exactement mesurée en °C ou l'intensité du champ magnétique en mT), mais il s'agit d'une mesure relative : une valeur limite est définie par rapport à la situation environnementale normale donnée et un signal est donné qui peut être traité ultérieurement si cette valeur limite est dépassée ou si une autre condition que le cas normal s'est produite.
Ce comportement est idéal pour la surveillance de la température (KY-028), les capteurs de proximité (KY-024, KY-025, KY-036), des moniteurs d'alarme (KY-037, KY-038) ou des codeurs (KY-026).
Affectation des broches
Raspberry Pi | Capteur |
---|---|
GPIO 24 [Pin 18] | Signal numérique |
3,3 V [Pin 1] | +V |
GND [Pin 6] | GND |
- | Signal analogique |
Capteur | KY-053 |
---|---|
Signal analogique | A0 |
Signal numérique | - |
+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.
#!/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
import gpiozero
# Créer le bus I2C
i2c = busio.I2C(board.SCL, board.SDA)
# Création de l'objet ADC via le bus I2C
ads = ADS.ADS1115(i2c)
# Créer une entrée Single-Ended sur les canaux
chan0 = AnalogIn(ads, ADS.P0)
chan1 = AnalogIn(ads, ADS.P1)
chan2 = AnalogIn(ads, ADS.P2)
chan3 = AnalogIn(ads, ADS.P3)
delayTime = 1
Digital_PIN = 24
input = gpiozero.DigitalInputDevice(Digital_PIN, pull_up=None, active_state=True)
while True:
analog = '%.2f' % chan0.voltage
# Sortie sur la console
if input.is_active == False:
print ("Valeur de tension analogique:", analog,"V, ","Valeur limite : pas encore atteinte")
else:
print ("Valeur de tension analogique:", analog, "V, ", "Valeur limite : atteinte")
print ("---------------------------------------")
time.sleep(delayTime)
Ce module contient un commutateur à effet Hall qui détecte et réagit aux champs magnétiques. Au repos, lorsqu'il n'y a pas de champ magnétique externe, la tension de sortie est généralement égale à la moitié de la tension d'alimentation. Lorsqu'un pôle magnétique sud s'approche du côté marqué du capteur, la tension de sortie augmente. Un pôle magnétique nord, en revanche, abaisse la tension de sortie. Ces fluctuations sont symétriques et permettent des mesures de seuil précises.
Le capteur émet un signal numérique élevé dès qu'une valeur seuil prédéfinie est dépassée. Cette valeur seuil est réglée à l'aide d'un potentiomètre rotatif et comparée à la valeur mesurée du capteur par le comparateur LM393 intégré. Si la valeur réglée est dépassée, le capteur émet un signal logique élevé.
La sortie numérique indique si un champ magnétique a été détecté, tandis que la sortie analogique fournit la valeur directement mesurée par le capteur. Deux LED indiquent l'état de fonctionnement : La LED1 indique que le capteur est alimenté en tension, et la LED2 s'allume lorsqu'un champ magnétique a été détecté.
Ce module est idéal pour les applications nécessitant la détection et la mesure de champs magnétiques, telles que les capteurs de vitesse, les capteurs de position ou les systèmes de sécurité. Grâce au chipset AH49E et au comparateur LM393, il offre une solution fiable et précise pour la détection de champs magnétiques. Le capteur fonctionne avec une tension d'alimentation de 5V et offre une précision de 9 à 12 bits.
Note de l'utilisateur
Ce capteur convient parfaitement à la mesure de valeurs seuils. Cela signifie que le capteur émet un signal numérique élevé dès qu'une valeur seuil fixée par l'utilisateur sur le potentiomètre rotatif est dépassée. Il convient de noter ici que le signal numérique est une comparaison entre la valeur réglée sur le potentiomètre rotatif et la valeur mesurée sur le capteur, qui sont ensuite comparées par le comparateur LM393 installé sur la carte. La valeur réglée sur le potentiomètre rotatif est la valeur seuil, qui est utilisée pour définir un signal logique haut.
Sortie numérique: Si un champ magnétique est détecté, un signal est émis ici.
Sortie analogique: Valeur de mesure directe de l'unité de détection
LED1: Indique que le capteur est alimenté en tension
LED2: Indique qu'un champ magnétique a été détecté
Données techniques | |
---|---|
Chipset | AH49E, LM393 |
Type de capteur | Transistor/commutateur à effet Hall |
Précision | 9 à 12 Bit |
Plage de fonctionnement | 5V (en fonction des composants) |
Fonctionnement du capteur
Ce capteur comporte deux composants fonctionnels sur son circuit imprimé : L'unité de capteur avant, qui mesure physiquement l'environnement et le transmet sous forme de signal analogique à la seconde unité, le comparateur. Le comparateur compare la valeur mesurée par le capteur avec la valeur réglée sur le potentiomètre rotatif et émet un signal logique élevé sur la broche numérique et la LED L1 si la valeur réglée sur le potentiomètre rotatif est dépassée.
Veuillez noter. Veuillez noter. Le signal est inversé. Si une valeur élevée est mesurée, cela se traduit par une valeur de tension plus faible à la sortie analogique.
Le potentiomètre rotatif peut être réglé comme suit :
Ce capteur ne donne pas de valeurs absolues (par exemple, la température exactement mesurée en °C ou l'intensité du champ magnétique en mT), mais il s'agit d'une mesure relative : une valeur limite est définie par rapport à la situation environnementale normale donnée et un signal est donné qui peut être traité ultérieurement si cette valeur limite est dépassée ou si une autre condition que le cas normal s'est produite.
Ce comportement est idéal pour la surveillance de la température (KY-028), les capteurs de proximité (KY-024, KY-025, KY-036), des moniteurs d'alarme (KY-037, KY-038) ou des codeurs (KY-026).
Affectation des broches
Micro:Bit | Capteur |
---|---|
Pin 1 | Signal numérique |
3,3 V | +V |
GND | GND |
- | Signal analogique |
Capteur | KY-053 |
---|---|
Signal analogique | A0 |
Signal numérique | - |
+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.
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.
pins.setPull(DigitalPin.P1, PinPullMode.PullUp)
ADS1115.setMode(mode.Multi)
ADS1115.setRate(rate.Rate5)
ADS1115.setGain(gain.One)
ADS1115.initADS1115(userInI2C.Gnd)
basic.forever(function () {
serial.writeString("Analog Value: ")
serial.writeLine("" + (ADS1115.raw_to_v(ADS1115.read(0))))
if (pins.digitalReadPin(DigitalPin.P1) == 1) {
serial.writeLine("Magnetic field detected!")
} else {
serial.writeLine("No magnetic field detected")
}
serial.writeLine("_____________________________________")
basic.pause(1000)
})
Téléchargement d'un exemple de programme
Ce module contient un commutateur à effet Hall qui détecte et réagit aux champs magnétiques. Au repos, lorsqu'il n'y a pas de champ magnétique externe, la tension de sortie est généralement égale à la moitié de la tension d'alimentation. Lorsqu'un pôle magnétique sud s'approche du côté marqué du capteur, la tension de sortie augmente. Un pôle magnétique nord, en revanche, abaisse la tension de sortie. Ces fluctuations sont symétriques et permettent des mesures de seuil précises.
Le capteur émet un signal numérique élevé dès qu'une valeur seuil prédéfinie est dépassée. Cette valeur seuil est réglée à l'aide d'un potentiomètre rotatif et comparée à la valeur mesurée du capteur par le comparateur LM393 intégré. Si la valeur réglée est dépassée, le capteur émet un signal logique élevé.
La sortie numérique indique si un champ magnétique a été détecté, tandis que la sortie analogique fournit la valeur directement mesurée par le capteur. Deux LED indiquent l'état de fonctionnement : La LED1 indique que le capteur est alimenté en tension, et la LED2 s'allume lorsqu'un champ magnétique a été détecté.
Ce module est idéal pour les applications nécessitant la détection et la mesure de champs magnétiques, telles que les capteurs de vitesse, les capteurs de position ou les systèmes de sécurité. Grâce au chipset AH49E et au comparateur LM393, il offre une solution fiable et précise pour la détection de champs magnétiques. Le capteur fonctionne avec une tension d'alimentation de 5V et offre une précision de 9 à 12 bits.
Note de l'utilisateur
Ce capteur convient parfaitement à la mesure de valeurs seuils. Cela signifie que le capteur émet un signal numérique élevé dès qu'une valeur seuil fixée par l'utilisateur sur le potentiomètre rotatif est dépassée. Il convient de noter ici que le signal numérique est une comparaison entre la valeur réglée sur le potentiomètre rotatif et la valeur mesurée sur le capteur, qui sont ensuite comparées par le comparateur LM393 installé sur la carte. La valeur réglée sur le potentiomètre rotatif est la valeur seuil, qui est utilisée pour définir un signal logique haut.
Sortie numérique: Si un champ magnétique est détecté, un signal est émis ici.
Sortie analogique: Valeur de mesure directe de l'unité de détection
LED1: Indique que le capteur est alimenté en tension
LED2: Indique qu'un champ magnétique a été détecté
Données techniques | |
---|---|
Chipset | AH49E, LM393 |
Type de capteur | Transistor/commutateur à effet Hall |
Précision | 9 à 12 Bit |
Plage de fonctionnement | 5V (en fonction des composants) |
Fonctionnement du capteur
Ce capteur comporte deux composants fonctionnels sur son circuit imprimé : L'unité de capteur avant, qui mesure physiquement l'environnement et le transmet sous forme de signal analogique à la seconde unité, le comparateur. Le comparateur compare la valeur mesurée par le capteur avec la valeur réglée sur le potentiomètre rotatif et émet un signal logique élevé sur la broche numérique et la LED L1 si la valeur réglée sur le potentiomètre rotatif est dépassée.
Veuillez noter. Veuillez noter. Le signal est inversé. Si une valeur élevée est mesurée, cela se traduit par une valeur de tension plus faible à la sortie analogique.
Le potentiomètre rotatif peut être réglé comme suit :
Ce capteur ne donne pas de valeurs absolues (par exemple, la température exactement mesurée en °C ou l'intensité du champ magnétique en mT), mais il s'agit d'une mesure relative : une valeur limite est définie par rapport à la situation environnementale normale donnée et un signal est donné qui peut être traité ultérieurement si cette valeur limite est dépassée ou si une autre condition que le cas normal s'est produite.
Ce comportement est idéal pour la surveillance de la température (KY-028), les capteurs de proximité (KY-024, KY-025, KY-036), des moniteurs d'alarme (KY-037, KY-038) ou des codeurs (KY-026).
Affectation des broches
Raspberry Pi Pico | Capteur |
---|---|
GPIO26 (A0) | Analoges Signal |
GND | GND |
3 V | +V |
GPIO18 | Digitales 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 lit la valeur de la tension actuelle, qui peut être calculée en lisant la sortie analogique, et la sort sur l'interface série. En outre, l'état de la broche numérique est également indiqué dans la console. Cela indique si la valeur limite a été dépassée.
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.
# Chargement des bibliothèques
from machine import Pin, ADC
from time import sleep
# Initialisation de ADC0
adc = ADC(0)
# Initialisation de GPIO18 comme entrée
digital = Pin(18,Pin.IN, Pin.PULL_UP)
print("KY-024 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
Volt = round(raw_value* 3.3 / 65536, 2)
digital_value = digital.value()
# Sortie sérielle de la valeur analogique et de la tension calculée
print("Valeur de tension analogique: " + str(Volt) + " V\t Valeur limite: ", end="")
# Demande si la valeur numérique a changé avec sortie sérielle
if digital_value == 1:
print("atteint")
else:
print("non atteint")
print("----------------------------------------")
sleep(2)