Sparkfun
Magnetisme Sensorer detekterer magnetfelter, fra simple Hall-effekt-sensorer der reagerer på en neodym-magnet til præcise 3-akse magnetometre der kan måle Jordens magnetfelt og fungere som digitale kompasser. De bruges i dør- og vindues-alarmer, motor-tachometre, tællere på roterende aksler, kompasser til drones og robotter samt sikkerhedssystemer. Udvalget rummer Hall-sensorer (US1881 latching, AH1815 non-latching, linear ±1200 GS), digital Hall, reed-switches, magnetisk kontakt, IP67 magnetisk switch, BMM150 magnetometer og CMPS12 tilt-kompenseret kompas.
Sparkfun
SparkFun Produkt
Sparkfun
DFRobot
DFRobot
DFRobot
DFRobot
DFRobot
DFRobot
DFRobot
Magnet-sensorer reagerer på magnetfelter. Det kan være en kraftig neodym-magnet 1 cm væk eller Jordens egen meget svagere magnetfelt der bruges til navigation. Der findes flere fundamentalt forskellige teknologier:
| Hall-effekt | Reed-switch | |
|---|---|---|
| Type | Halvleder | Mekanisk |
| Strømforbrug | Konstant (lavt) | Nul i stand-by |
| Hastighed | Op til MHz | Op til 1-2 kHz |
| Levetid | Praktisk uendelig | 10-100 millioner cyklusser |
| Bouncing | Nej | Ja (debounce nødvendigt) |
| Følsomhed | Høj, justerbar | Fast (afhænger af reed) |
| Pris | Lav | Lav |
| Bedst til | Hjul-encoder, hurtige tællere | Dør-/vindue-alarm, batteri-projekter |
Magnetfelt-styrke måles i Gauss (GS) eller Tesla (T):
| Kilde | Felt-styrke |
|---|---|
| Jordens magnetfelt | 0,25-0,65 GS |
| Køleskabs-magnet | 50-200 GS |
| Lille neodym-magnet | 1.000-2.000 GS |
| Stærk neodym-magnet (N52) | 4.000-6.000 GS |
| MRI-scanner | 15.000-30.000 GS |
1 Tesla = 10.000 Gauss. Den lineære Hall-sensor i udvalget måler ±1200 GS — perfekt til at karakterisere almindelige neodym-magneter, men kan ikke måle Jordens svage felt. Til Jordens felt og kompas-funktioner skal du bruge BMM150 eller CMPS12.
En af de mest forvirrende ting ved Hall-sensorer er forskellen mellem latching og non-latching:
De fleste digitale Hall-sensorer har 3 ben: VCC, GND, OUT. Tilkobl OUT til en digital input-pin med INPUT_PULLUP:
const int hallPin = 2;
volatile int pulseCount = 0;
void countPulse() {
pulseCount++;
}
void setup() {
pinMode(hallPin, INPUT_PULLUP);
attachInterrupt(digitalPinToInterrupt(hallPin), countPulse, FALLING);
Serial.begin(9600);
}
void loop() {
Serial.print("Omdrejninger: ");
Serial.println(pulseCount);
delay(1000);
}
Til lineær sensor: brug analogRead() i stedet — værdier omkring midten = ingen felt, højere/lavere = nord/syd-felt afhængig af sensor-orientering.
Magnetometre der bruges som kompas skal kalibreres for at fjerne jern- og elektronik-artefakter:
Dør- og vindues-alarmer, indbrudsalarmer med magnet-kontakt, hjul-omdrejnings-tællere på cykler, motor-tachometre og rotation-encoders, brushless DC-motor (BLDC) kommutering, niveau-måling i tanke med flydemagnet, kompasser til drones, robotter, marine-projekter og navigation, magnetfelt-måling i undervisning og forskning, automatiske garageåbnere, sikkerheds-skabe og kasse-låse, magneticisk lukke-detektion på industri-låger, knapper og kontakter uden mekanisk kontakt (lukker via magnet), berøringsfri tasteborde til medical og industri.
Til IMU og 9-DOF orientering med accelerometer/gyro, se Rotations Sensorer. Til metal-detektion uden behov for magnet, se Induktiv Sensorer. Til kapacitive sensorer (alle materialer, inklusiv ikke-metal), se Kapacitive Sensorer. Til strøm-sensorer der bruger Hall-effekt indirekte, se Strøm og Spændings Sensorer. Til mikrocontrollere, se Arduino og ESP32 Boards. Tilbage til Sensorer oversigt.