Магнітометри: принцип дії, компенсація помилок

Журнал РАДІОЛОЦМАН, вересень 2012

Михайло Російських

Розглядаються базові принципи теорії магнетизму, наводиться загальний опис датчика магнітного поля HMC5883L, описується методика усунення перешкод, які деформують вироблені датчиком результати вимірювань

Винайдене понад тисячу років тому таке просте, але в теж час геніальне пристрій, як компас і сьогодні є незамінною річчю в інвентарі будь капітана корабля або туриста. У наш час завдяки розвитку електроніки і технології мікроелектронних механічних систем з'явилися МЕМС-магнітометри, що надають функцію компаса в мікросхемном виконанні. Сьогодні їх повсюдно можна зустріти в споживчих електронних пристроях (смартфонах, планшетах), автомобілях, робототехніці і т.п. Найчастіше вони входять до складу складних навігаційних систем, а в поєднанні з акселерометром і / або гіроскопом є інерційну систему, здатну точно визначати місце розташування в тривимірному просторі.

Магнітометр являє собою пристрій для вимірювання інтенсивності однієї або декількох складових магнітного поля. Сьогодні ринок надає широкий вибір дво- і трехосевой електронних компасів в інтегральному виконанні. Для більш повного розуміння принципу дії такого компаса розглянемо основні положення теорії магнетизму і принципи визначення напрямку вектора магнітного поля Землі.

Магнітне поле Землі в кожній точці простору характеризується вектором напруженості Т, напрямок якого визначається трьома складовими по осях X, Y і Z в прямокутній системі координат (Малюнок 1). Також магнітне поле Землі можна описати горизонтальної складової напруженості Н, магнітним відміною D (кутом між Н і площиною географічного меридіана) і магнітним нахилом I (кутом між Т і площиною горизонту).

Основною характеристикою магнітного поля є магнітна індукція B, що представляє собою векторну величину. Напрямок вектора магнітної індукції збігається з напрямком сили, що діє на північний полюс магніту, розміщеного в дану точку магнітного поля. Величина B виражається одиницею виміру тесла (Тл або (Н / А · м)). Тесла є досить великою величиною магнітної індукції, тому для вимірювання слабких магнітних полів застосовують дрібну часткову одиницю - мікротесел (мкТл). Варто зауважити, що повний вектор магнітного поля Землі становить всього близько 50 мкТл. Але в документації на МЕМС-магнітометри зазвичай наводиться інша одиниця виміру, що характеризує магнітне поле - гаус (Гс). Гаусс є одиницю виміру магнітної індукції в системі СГС. При цьому справедливі наступні рівності:

1 Гс = 100 мкТл,

1 Тл = 104 Гс.

Магнітна індукція пов'язана з напруженістю магнітного поля співвідношенням:

(1)

тут
μ - магнітна проникність середовища,
μ0 - магнітна постійна.

Виходячи з (1), можна стверджувати, що B ~ H. В результаті, на практиці для визначення напрямку вектора магнітного поля Землі вимірюють дві його складові по осі X та Y (Малюнок 2), а потім обчислюють кут φ на підставі наступних формул :

(2)

(3)

Для більш детального розуміння принципу дії магнитометра розглянемо роботу датчика HMC5883L компанії Honeywell. Цей датчик (див. Малюнок 3) являє собою пристрій для вимірювання магнітного поля по осях X, Y і Z. Він є типовим представником сімейства магнітометрів загального призначення, що застосовуються в мобільних телефонах, планшетах, автомобільних навігаційних системах, персональних навігаційних пристроях і іншої споживчій електроніці . Такі датчики за принципом своєї дії, методу зв'язку з керуючим пристроєм і навіть по структурі регістрів не сильно відрізняються один від одного. Так, наприклад, HMC5883L по перерахованим характеристикам дуже схожий на магнітометр в складі інерціальнійсистеми LSM303 компанії STmicroelectronics .

HMC5883L може вимірювати магнітне поле в діапазоні від -8 до +8 Гаусса. Завдяки змінюваному коефіцієнту посилення (GN) чутливість датчика може варіюватися від 0.73 МГС / LSB (мілігаусс на молодший значущий розряд) до 4.35 МГС / LSB при зміні GN від 0 до 7, відповідно. Налагодження та зчитування даних відбувається по шині I2C. Усього є 12 восьмирозрядних регістрів. Два регістра настройки (Register A і Register B) дозволяють змінювати частоту видачі даних, режим виміру, кількість вибірок за час одного виміру і коефіцієнт посилення. За допомогою регістра режиму (Mode Register) можна вибрати режим функціонування датчика: або він буде вимірювати безперервно (Continuous-Measurement Mode), або проведе вимір один раз і перейде в режим очікування (Single-Measurement Mode). О шостій регістрів, розташованих за адресами з 0x03 по 0x08, поміщаються результати вимірювань. На одну вісь виділяється по два регістри (Output Register A і Output Register B), причому регістр A є старшим по відношенню до регістру B. Отримане значення представляється 12-розрядних числом. Регістр статусу (Status Register) має всього два біта - біт готовності (RDY) і біт «засувки» (LOCK). Біт готовності встановлюється після того, як дані будуть записані в усі шість вихідних регістрів. Для здійснення не програмне, а апаратного опитування, його функція дублюється виведенням DRDY. Біт «засувки» встановлюється, коли дані з одного або декількох (але не з усіх) вихідних регістрів були прочитані, або коли був лічений регістр режиму. Решта три регістра є ідентифікаційні регістри (Identification Registers), що дозволяють керуючому пристрою при необхідності визначити цей датчик.

Доступ до магнітометри здійснюється по шині I2C. Запис проводиться за адресою 0x3C, а читання - 0x3D. Для зручності зчитування даних є функція автоматичного инкремента адреси вихідних регістрів з подальшим переходом на адресу 0x03 (старший регістр осі X) по завершенні зчитування даних з усіх вихідних регістрів. Необхідно також відзначити, що вихідні регістри розташовані в «неправильному» порядку, тобто при послідовному зчитуванні спочатку будуть взяті дані осі X, потім осі Z, і в останню чергу осі Y. Це необхідно враховувати в програмі.

У найпростішому випадку для визначення напрямку щодо магнітного поля Землі за умови горизонтального розташування платформи необхідно вважати дані з вихідних регістрів осей X і Y, а потім обчислити арктангенс кута відповідно до формули (3). Але в реальності, особливо в разі застосування магнітометрів в складі складних пристроїв, де присутні додаткові магнітні поля, наприклад, всередині автомобілів, судів і т.п., на датчик діють перешкоди, які спотворюють його свідчення.

Існують два типи спотворень, що діють на компас. Перше називається спотворенням твердого заліза (Hard Iron Distortion). Воно за своєю природою є адитивним, тобто до початку измеряемому полю додається додаткове, створюване постійним магнітом (наприклад, динаміками звукових колонок). При незмінній орієнтації такого магніту щодо датчика, зміщення, що вноситься ним, буде також незмінно. До другого типу відносяться спотворення м'якого заліза (Soft Iron Distortion). Воно створюється сторонніми предметами, спотворюють вже наявне магнітне поле. Наприклад, предмети, виконані з пермаллоя, нікелю і т.п., не створюють свого магнітного поля, але змінюють форму поля, вимірюваного датчиком. Компенсація м'якого заліза дуже актуальна на кораблях, де намагнічені полем Землі частини судна при зміні його орієнтації відносно магнітного полюса перемагнічуються і знову вносять спотворення в процес вимірювання. Таким чином, компенсація м'якого заліза є більш складне завдання.

Спочатку розглянемо процес компенсації впливу твердого заліза. Слід врахувати, що тут і далі пропонується компенсація в двовимірному просторі. Компенсація в трьох вимірах, яка є обов'язковою для повітряних суден, вимагає використання комплексного математичного апарату, і в даному випадку не розглядається. Ознайомитися з таким методом ліквідації магнітних перешкод можна в [9]. На початку процедури усунення спотворень датчик розташовується горизонтально, і навколо вертикальної осі відбувається, як мінімум, один повний оборот. Далі виділяються точки, які мають максимальне і мінімальне значення по осях X і Y. Знайдені значення максимумів і мінімумів використовуються для усунення зміщення нуля:

(4)

Через знайдені коефіцієнти і спочатку отримані дані (xн, YН) можна виразити скориговані за методом компенсації твердого заліза величини по осях X і Y:

Через знайдені коефіцієнти і спочатку отримані дані (xн, YН) можна виразити скориговані за методом компенсації твердого заліза величини по осях X і Y:

(5)

На рисунку 4 відображені результати експерименту по проведенню компенсації такого виду. В ході експерименту поблизу датчика був розташований магніт. Нижній лівий графік чітко показує факт зміщення центру фігури з точки (0,0) через вноситься постійної складової. Після обчислень за формулами (4) і (5) центр був зміщений в точку початку, як видно на нижньому правому графіку.

В ході експерименту також було відтворено невеликий вплив спотворення м'якого заліза. За отриманим зображенню видно, що фігура являє собою не чітко сформовану окружність, а еліпс з деяким нахилом відносно координатних осей. Зміна магнітного поля такого виду якраз характерно для спотворення м'якого заліза, яке, як говорилося вище, не вносить додаткового магнітного поля, а впливає на форму вже наявного.

Для компенсації такого спотворення необхідно спочатку нормувати еліпс щодо осей координат, тобто зробити його поворот на певний кут. В ході цієї операції потрібно знайти велику (a) і малу (b) півосі еліпса (схематично представлено на рисунку 5). Застосовуючи формулу обчислення радіуса (6) для кожної точки еліпса, знаходять максимально віддалену точку від початку координат, відстань до якої дорівнюватиме довжині велика піввісь, і мінімально віддалену точку, яка є кінцем малої півосі.

(6)

Потім визначається кут нахилу φ щодо певної осі координат або малої півосі, або великий. Після знаходження цього кута стає можливим здійснити поворот еліпса таким чином, щоб його півосі збігалися з осями координат. Формула (7) визначає матрицю повороту, яка буде потрібно для проведення даної операції. Ця матриця множиться на вектор-стовпець ν, що є набором всіх значень XТЖ і YТЖ.

Ця матриця множиться на вектор-стовпець ν, що є набором всіх значень XТЖ і YТЖ

(7)

(7)

(8)

Повернений еліпс далі необхідно перетворити в коло з метою усунення спотворення м'якого заліза. Для цього використовується масштабний коефіцієнт, який визначається формулою (9), який необхідний для «стиснення» еліпса вздовж велика піввісь.

(9)

Кожне значення по осі, з якої збігається велика піввісь, повинна бути помножена на цей масштабний коефіцієнт для отримання бажаної окружності. Результат такої трансформації представленого на рисунку 4 еліпса можна бачити на рисунку 6.

Далі для того, щоб повернути значення складових напруженості магнітного поля в початкове положення, потрібно знову провести поворот отриманої фігури на той же кут, але вже в протилежному напрямку. При цьому знову використовуються формули (7) і (8) з єдиною відмінністю - кут φ береться з протилежним знаком.

На цьому процес усунення спотворень завершується. Але слід пам'ятати, що до компенсації спотворення м'якого заліза можна приступати лише після успішно проведеної операції по усуненню спотворення твердого заліза і за умови, що платформа залишається в горизонтальному положенні, або нахил контролюється за допомогою даних по осі Z або акселерометра. В результаті стає можливим отримати більш точне значення азимута. Оскільки при обертанні електронного компаса виникають ситуації ділення на нуль, доцільно користуватися наведеною нижче Таблиці 1.

Таблиця 1.Розрахунок азимута

X

Y

Азимут

0

<0

90

> 0

270

<0

будь-який

> 0

<0

> 0

В результаті, використовуючи магнітометри загального призначення, можна за малі гроші створити досить точний електронний компас. Наприклад, вартість датчика HMC5883L, задіяного для проведення описаних експериментів, становить приблизно 150-170 рублів, а варіант готового виробу SEN-10530 компанії SparkFun з необхідною обв'язкою і зручними контактами для пайки знаходиться в ціновому діапазоні 500-600 рублів (схема підключення знаходиться за посиланням [10]). Зв'язавши в єдину вимірювальну мережу такий магнітометр, акселерометр і гіроскоп, можна отримати повноцінну інерційну систему, що визначає своє місце розташування в просторі. А областей застосування, як електронного компаса, так і повноцінної інерціальнійсистеми в сучасному світі знайдеться предостатньо.

посилання

  1. Воронов В.В, Григор'єв М.М., Яловенко А.В. Магнітні компаси. Теорія, конструкція і Девіаційна роботи. - СПб .: «Елмор», 2004. - 192 с.
  2. 3-axis digital compass IC HMC5883L. Datasheet. Документація Honeywell.
  3. AN-203. Compass heading using magnetometers. Документація Honeywell.
  4. AN-215. Cross axis effect for AMR magnetic sensors. Документація Honeywell.
  5. Michael J. Caruso. Applications of Magnetic Sensors for Low Cost Compass Systems.
  6. Michael J. Caruso. Applications of Magnetoresistive Sensors in Navigation Systems.
  7. Bratland T., Hong W. Linear Position Sensing Using Magnetoresistive Sensors.
  8. Compensating for Tilt, Hard Iron and Soft Iron Effects. Документація MEMSense.
  9. AN4246. Calibrating an eCompass in the Presence of Hard and Soft-Iron Interference. Документація Freescale.
  10. HMC5883L_Breakout-v11

Разделы

» Ваз

» Двигатель

» Не заводится

» Неисправности

» Обзор

» Новости


Календарь

«    Август 2017    »
ПнВтСрЧтПтСбВс
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
 

Архив

О сайте

Затраты на выполнение норм токсичности автомобилей в США на период до 1974 г.-1975 г произошли существенные изменения. Прежде всего следует отметить изменение характера большинства работ по электромобилям: работы в подавляющем большинстве стали носить чисто утилитарный характер. Большинство созданных в начале 70х годов электромобилей поступили в опытную эксплуатацию. Выпуск электромобилей в размере нескольких десятков штук стал обычным не только для Англии, но и для США, ФРГ, Франции.

ПОПУЛЯРНОЕ

РЕКЛАМА

www.school4mama.ru © 2016. Запчасти для автомобилей Шкода