Smartfonlarda maqnitometr — bu nədir, növləri və iş prinsipi

Müəllif: IT Sectr Dərc olunub: 2026-03-22 Oxuma vaxtı: 10 dəq

Maqnitometr — Yerin maqnit sahəsinin gərginliyini ölçərək istiqamətləri müəyyən edən sensor. Mobil cihazlarda rəqəmsal kompas kimi işləyir, düzgün kalibrləmə ilə 1–2 dərəcəyə qədər dəqiqlik təmin edir. Bosch Sensortec Application Note, 2024-ə görə, müasir MEMS-maqnitometrlər cəmi 0.5–2 mA enerji sərf edir və 1.5×1.5×0.7 mm ölçülü korpusa yerləşir.

Əsas məqamlar

  • Maqnitometr — Hall sensoru, ±1300 µT diapazonu ilə üç ox üzrə maqnit sahəsini ölçür.
  • Rəqəmsal kompas maqnitometr əsasında kalibrləmə tələb edir — onsuz xəta 30–40 dərəcəyə çatır.
  • Android API məlumatları mikrote斯拉 (µT) ilə əldə etmək üçün Sensor.TYPE_MAGNETIC_FIELD istifadə edir.
  • Sensor Fusion dəqiq oriyentasiya üçün maqnitometri giroskop və akselerometr ilə birləşdirir.
  • Hard Iron və Soft Iron — korpus metalı və smartfon dinamiklərinin yaratdığı maqnit təhrif növləri.

Smartfonda maqnitometr nədir

Maqnitometr mobil cihazda Hall effektinə əsaslanan üçoxlu maqnit sahəsi sensorudur. O, maqnit induksiya vektorunun X, Y və Z oxları üzrə proyeksiyalarını ölçür. Akselerometr ilə birlikdə maqnitometr azimutu — şimal istiqaməti ilə telefon oxu arasındakı bucağı təyin etməyə imkan verir.

Mobil cihazlarda maqnitometr növləri

Müasir smartfonlarda anizotrop maqniteresistiv effektə (AMR) və Hall effektinə əsaslanan MEMS-maqnitometrlər istifadə olunur. AMR-sensorlar (Asahi Kasei Microdevices-in AKM seriyası) 0.15 µT/LSB həssaslıq və ±1200 µT diapazon təmin edir — bu, Yer sahəsini (25–65 µT) ölçmək üçün kifayətdir.

ParametrDəyər
TexnologiyaAMR / Hall effekti
Diapazon±1200 — ±1300 µT
Enerji sərfiyyatı0.5–2 mA
Ölçü1.5×1.5×0.7 mm
Həssaslıq0.15 µT/LSB

Maqnitometr smartfon üçün niyə vacibdir

Rəqəmsal kompas olmadan naviqasiya tətbiqləri hərəkət istiqamətini təyin edə bilməz. Google Maps xəritənin istifadəçinin baxış istiqamətinə nisbətən oriyentasiyasını göstərmək üçün maqnitometrdən istifadə edir. Sensor sıradan çıxdıqda, tətbiq xəritədə yalnız yeri göstərir, mavi istiqamət oxu olmur.

Hall sensoru necə işləyir

Hall effekti — maqnit sahəsinin təsiri altında keçirici lövhənin kənarlarında potensial fərqinin yaranması fiziki hadisəsi. MEMS-maqnitometrlərdə müqaviməti xarici maqnit sahəsinin təsiri altında dəyişən permalloydan (NiFe) nazik təbəqəli strukturlar istifadə olunur (AMR-effekti).

AMR-sensorun strukturu

Üç kanalın (X, Y, Z) hər biri dörd maqniteresistordan ibarətdir, Wheatstone körpüsünə qoşulmuşdur. Maqnit sahəsi rezistorların müqavimətini 2–3% dəyişir, bu da diferensial gücləndirici tərəfindən gərginliyə çevrilir. Daxili 16-bitlik ADC siqnalı 100 Hz-ə qədər tezlikdə rəqəmləşdirir.

Z oxu üzrə ölçmə

Sahənin şaquli komponentini ölçmək üçün inteqrasiya edilmiş maqnit axını konsentratoru (IMC — Integrated Magnetic Concentrator) istifadə olunur. Bu, üfüqi sahəni şaquli müstəviyə yönləndirən NiFe nazik təbəqəli strukturdur və tək AMR körpüsünə hər üç oxu ölçməyə imkan verir.

Maqnitometr giroskopdan nə ilə fərqlənir

Maqnitometr Yerin maqnit sahəsinə nisbətən oriyentasiyanı təyin edir (mütləq istinad), giroskop isə yalnız bucaq dəyişikliyini ölçür (nisbi məlumatlar). Giroskop qısa intervallarda dəqiq məlumat verir, lakin drift xətasını toplayır. Maqnitometr drift etmir, lakin maqnit müdaxilələrinə məruz qalır.

Maqnitometr ilə Sensor Fusion

Android üç sensorun məlumatlarını SensorManager.getRotationMatrix vasitəsilə birləşdirir. Maqnitometr uzun intervallarda giroskopun driftini korreksiya etmək üçün istifadə olunur. Maqnitometr olmadan giroskop 5 dəqiqə ərzində 10–20 dərəcə xəta toplayır. Google ARCore (2024) məlumatlarına görə, fusion alqoritmi maqnitometr olduqda 1–3 dərəcə dəqiqliyə çatır.

kotlin
val accelerometerReading = FloatArray(3)
val magnetometerReading = FloatArray(3)
val rotationMatrix = FloatArray(9)
val orientationAngles = FloatArray(3)

SensorManager.getRotationMatrix(
    rotationMatrix, null,
    accelerometerReading,
    magnetometerReading
)
SensorManager.getOrientation(
    rotationMatrix, orientationAngles
)
// orientationAngles[0] — radyanla azimut

Maqnit təhrifləri: Hard Iron və Soft Iron

Hard Iron — telefon daxilindəki ferromaqnit materialların yaratdığı sabit maqnit sahəsi: dinamik maqnitləri, vibrasiya mühərriki, korpusun metal çərçivəsi. Hard Iron təhrifi hər ox üzrə sabit yerdəyişmə (bias) kimi özünü göstərir. Soft Iron — sahə xətlərinin formasını təhrif edən maqnitkeçirici materiallar səbəbindən sahə istiqamətinin dəyişməsi.

Kalibrləmə alqoritmi

Maqnitometrin standart kalibrləmə proseduru telefonu səkkiz rəqəmi ilə fırlatmaqdır (figure-8 pattern). Proses zamanı sensor üçölçülü fəzada nöqtələri qeyd edir. Təhrifsiz nöqtələr 25–65 µT radiuslu sferada yerləşir. Hard Iron sferanın mərkəzini dəyişir, Soft Iron onu ellipsoidə çevirir. Kalibrləmə alqoritmi yerdəyişmə və miqyaslama parametrlərini hesablayır.

kotlin
data class CalibrationParams(
    val biasX: Float,
    val biasY: Float,
    val biasZ: Float,
    val scaleX: Float,
    val scaleY: Float,
    val scaleZ: Float
)

fun applySoftIronCorrection(
    raw: FloatArray, p: CalibrationParams
): FloatArray {
    return floatArrayOf(
        (raw[0] - p.biasX) * p.scaleX,
        (raw[1] - p.biasY) * p.scaleY,
        (raw[2] - p.biasZ) * p.scaleZ
    )
}

Təhriflərin proqram korreksiyası

Tərtibatçı cihazın hərəkəti zamanı məlumat toplayaraq öz maqnitometr kalibrləməsini həyata keçirə bilər. Ellipsoid uyğunlaşdırma (ellipsoid fitting) alqoritmi sferadan kənarlaşmaların kvadratları cəmini minimuma endirərək Hard Iron və Soft Iron parametrlərini tapır. Apache Commons Math kitabxanası bu tapşırıq üçün qeyri-xətti ən kiçik kvadratlar metodunun (Levenberg-Marquardt) tətbiqini təqdim edir — proqram kalibrləməsindən sonra dəqiqlik 0.5 dərəcəyə çatır.

Müdaxilələrin aradan qaldırılması üçün tövsiyələr

Hard Iron-ı minimuma endirmək üçün istehsalçılar maqnitometri telefonun yuxarı hissəsində, dinamik və vibrasiya mühərrikindən uzaqda yerləşdirirlər. Apple mühəndisləri iPhone 16 Pro Max-də (2024) maqnitometrin permalloy folqa ilə ekranlaşdırılmasını tətbiq edərək dinamikin təsirini 4 dəfə azaldıblar. Samsung Galaxy S24 Ultra-da real vaxtda dinamikdə cərəyanı ölçən və induksiya olunmuş sahəni çıxan əlavə kompensasiya dövrəsi istifadə olunur. Maqnit bərkidicili qutular (məsələn, avtomobil tutacaqlarında) güclü təhriflər yaradır — istifadədən sonra maqnitometr təkrar kalibrləməyə qədər səhv istiqamət göstərə bilər.

Android-də maqnitometrə proqram girişi

Android iki sensor təqdim edir: TYPE_MAGNETIC_FIELD (µT ilə kalibrlənmiş məlumatlar) və TYPE_MAGNETIC_FIELD_UNCALIBRATED (təhrif qiymətləndirməsi ilə xam məlumatlar). Naviqasiya tətbiqləri üçün kalibrlənmiş sensordan istifadə tövsiyə olunur — sistem son səkkiz rəqəmi hərəkəti əsasında daxili kalibrləməni avtomatik tətbiq edir.

Qeydiyyat və emal

SENSOR_DELAY_NORMAL gecikməsi (200 ms) kompas üçün kifayətdir, SENSOR_DELAY_FASTEST (0 ms) — yalnız xüsusi tədqiqat tətbiqləri üçün. Dəyərlər alındıqdan sonra onları getRotationMatrix + getOrientation vasitəsilə azimuta çevirmək olar. Sensorun dəqiqliyini event.accuracy vasitəsilə yoxlamaq vacibdir — SENSOR_STATUS_UNRELIABLE dəyəri kalibrləmə ehtiyacını bildirir.

kotlin
override fun onSensorChanged(event: SensorEvent) {
    if (event.sensor.type == Sensor.TYPE_MAGNETIC_FIELD) {
        val accuracy = event.accuracy
        if (accuracy == SensorManager.SENSOR_STATUS_UNRELIABLE) {
            showCalibrationHint()
            return
        }
        System.arraycopy(event.values, 0,
            magnetometerReading, 0, 3)
    }
}

Maqnitometrin mobil tətbiqlərdə istifadəsi

Maqnitometr yalnız kompas üçün istifadə olunmur. AR tətbiqləri, o cümlədən Pokemon GO, kameranın real dünyaya nisbətən oriyentasiyasını təyin etmək üçün maqnitometrdən istifadə edir. Maqnitometr olmadıqda ARCore Screen Axis rejiminə keçir — oriyentasiya yalnız giroskopla təyin olunur ki, bu da dəqiqliyi azaldır.

  • Naviqasiya — Google Maps, Yandex.Maps, MAPS.ME-də hərəkət azimutunun təyini. Kompasın dəqiqliyi marşrutun keyfiyyətinə birbaşa təsir edir.
  • Metalların aşkarlanması — metal əşyaların axtarışı üçün tətbiqlər maqnit sahəsi anomaliyalarını aşkar etmək üçün maqnitometrdən istifadə edir.
  • Geofizika və təhsil — təhsil layihələri üçün maqnit sahəsinin ölçülməsi. Sensor məktəblərdə Yerin maqnit sahəsini öyrənməyə imkan verir.
  • VR və 360-video — VR dəbilqələrində başın oriyentasiyası giroskopun driftini kompensasiya etmək üçün maqnitometrlə korreksiya olunur.

Avtomobil naviqasiyasında maqnitometr

Android Auto əsaslı avtomobil naviqasiya sistemlərində maqnitometr tunellərdə və sıx şəhər tikintisində GPS siqnalı itkisi zamanı hərəkət istiqamətini təyin etmək üçün istifadə olunur. Avtomobil təkərlərindən odometriya məlumatları (OBD-II vasitəsilə əldə edilən) ilə birlikdə maqnitometr GPS olmadan 5 dəqiqəyə qədər naviqasiyanı 10–20 metr dəqiqliklə davam etdirməyə imkan verir. Google Maps Engineering Blog (2024) məlumatlarına görə, hibrid alqoritm şəhər kanyonlarında marşrut itkisi faizini 40% azaldır.

Naviqasiya tətbiqlərində maqnitometr

Naviqasiya tətbiqləri hərəkət azimutunu — şimal istiqaməti ilə istifadəçinin cari kursu arasındakı bucağı təyin etmək üçün maqnitometrdən istifadə edir. Google Maps-də maqnitometr məlumatları GPS treki və hərəkət tarixçəsi ilə birləşdirilərək mavi istiqamət oxu göstərilir. GPS siqnalı itdikdə (tunellərdə, yeraltı keçidlərdə) maqnitometr oriyentasiya haqqında yeganə məlumat mənbəyi olaraq qalır.

Maqnitometrlərin gələcəyi

İnteqrasiya edilmiş ASIC ilə yeni nəsil 3-oxlu maqnitometrlər (Bosch-dən BMM350, 2024) cəmi 0.35 mA enerji sərf edir və 200 Hz-ə qədər tezliyi dəstəkləyir. Mobil cihazlar üçün kvant maqnitometrlərinin və almazda NV mərkəzlərinin inkişafı hələ laboratoriya eksperimentləri mərhələsindən çıxmayıb. 2028-ci ilə qədər mobil maqnitometrlərin dəqiqliyinin 0.01 µT-ə çatacağı gözlənilir.

Tez-tez verilən suallar

Telefonda maqnitometri necə kalibrləmək olar?

Telefonla havada səkkiz rəqəmi çəkin — bu rəqəmsal kompası kalibrləmək üçün standart hərəkətdir. Kompas hələ də səhv göstərirsə, qutunu yoxlayın: maqnit bərkidicilər və metal elementlər güclü Hard Iron təhrifləri yaradır.

Niyə telefondakı kompas səhv göstərir?

Əsas səbəblər: telefonun dinamiklərindən və vibrasiya mühərrikindən maqnit müdaxilələri, qutu dəyişikliyindən sonra kalibrləmənin olmaması, yaxınlıqdakı metal əşyaların təsiri. Dəmir-beton konstruksiyalı otaqlarda maqnit sahəsi xüsusilə güclü təhrif olunur.

Telefonu metal aşkarlayıcı kimi istifadə etmək olarmı?

Bəli, metal aşkarlayan tətbiqlər maqnit sahəsi anomaliyalarını aşkar etmək üçün daxili maqnitometrdən istifadə edir. Lakin aşkarlama dərinliyi 10–20 sm-dən çox deyil və cihaz metal növlərini fərqləndirmir — bu daha çox təhsil alətidir.

TYPE_MAGNETIC_FIELD və TYPE_MAGNETIC_FIELD_UNCALIBRATED arasında nə fərq var?

TYPE_MAGNETIC_FIELD sistem tərəfindən tətbiq edilmiş kalibrləmədən sonra məlumatları qaytarır. TYPE_MAGNETIC_FIELD_UNCALIBRATED xam dəyərləri üstəgəl yerdəyişmə (bias) qiymətləndirməsini verir, tərtibatçıya öz kalibrləməsini tətbiq etməyə imkan yaradır.

Maqnitometr məlumatlarından azimutu necə əldə etmək olar?

Akselerometr və maqnitometr məlumatları ilə SensorManager.getRotationMatrix istifadə edin, sonra getOrientation — massivin ilk elementi (azimut) radyanlarla olacaq. Kompası göstərmək üçün dərəcəyə çevirin: Math.toDegrees(azimuth).

Xülasə

  • Maqnitometr — mobil cihazlarda rəqəmsal kompas kimi işləyən üçoxlu maqnit sahəsi sensoru.
  • AMR texnologiyası Hall effektinə əsaslanaraq Yer sahəsini 0.15 µT/LSB dəqiqliklə ölçməyə imkan verir.
  • Hard Iron və Soft Iron — səkkiz rəqəmi hərəkəti ilə kalibrləmə tələb edən telefon komponentlərinin yaratdığı maqnit təhrifləri.
  • Android API µT ilə məlumatlarla TYPE_MAGNETIC_FIELD və TYPE_MAGNETIC_FIELD_UNCALIBRATED təqdim edir.
  • Sensor Fusion dəqiq (1–3 dərəcə) oriyentasiya üçün maqnitometri giroskop və akselerometr ilə birləşdirir.
  • Tətbiqlər naviqasiya, AR tətbiqləri, metal aşkarlayıcılar və VR-də giroskop driftinin korreksiyasını əhatə edir.
  • Müasir sensorlar 200 Hz tezlikdə 0.35 mA-dan enerji sərf edir və 1.5×1.5 mm ölçüdədir.

Açar təslim mobil tətbiq hazırlayacağıq

IT Sectr 2017-ci ildən startaplar və bizneslər üçün iOS və Android tətbiqləri yaradır. Sizə məsləhət verəcəyik və ən yaxşı həlli təklif edəcəyik.

Layihəni müzakirə et

Həm də oxuyun