Измеритель магнитной индукции на датчике холла и stm32

Датчики Холла

Измеритель магнитной индукции на датчике Холла и stm32Датчик Холла — это датчик магнитного поля. Он был так назван из-за принципа своей работы — : если в магнитное поле поместить пластину с протекающим через неё током, то электроны в пластине будут отклоняться в направлении, перпендикулярном направлению тока.

В какую именно сторону будут отклоняться электроны, зависит от полярности магнитного поля:

  1. Электроны
  2. Пластина
  3. Магниты
  4. Магнитное поле
  5. Источник тока

Различная плотность электронов на сторонах пластины создаёт разность потенциалов, которую можно усилить и измерить, что датчики Холла и делают.

Датчики Холла (далее просто ДХ) бывают аналоговыми и цифровыми. Аналоговый преобразует индукцию магнитного поля в напряжение, знак и величина которого будут зависеть от полярности и силы поля.

Цифровой же выдаёт лишь факт наличия/отсутствия поля, и обычно имеет два порога: включения — когда значение индукции выше порога, датчик выдает логическую единицу; и выключения — когда значение ниже порога, датчик выдаёт логический ноль.

Наличие зоны нечувствительности между порогами называется и служит для исключения ложного срабатывания датчика на всяческие помехи — аналогично работает цифровая электроника с логическими уровнями напряжения. Цифровые ДХ делятся ещё на униполярные и биполярные: первые включаются магнитным полем определённой полярности и выключаются при снижении индукции поля; биполярные же включаются полем одной полярности, а выключаются полем противоположной полярности.

Аналоговый ДХ

Его размер — всего 4×3 мм, и он имеет три вывода:Как видно, питание датчику нужно биполярное — тогда на южный полюс магнита датчик будет реагировать положительным уровнем на выходе, на северный — отрицательным, а на отсутствие поля — нулевым.

Однако можно обойтись однополярным питанием — в этом случае уровень на выходе (Vo) в половину напряжения питания (Vdc/2) будет означать отсутствие магнитного поля, Vo > Vdc/2 — южный полюс, Vo < Vdc/2 — северный.

Характеристики при однополярном питании 5 В и температуре от -40 до 85 °C:

  • Потребляемый ток: от 6 до 10 мА
  • Выходной ток: от 1.0 до 1.5 мА
  • Выходное напряжение: от 1.0 до 1.75 мВ/Гс, в среднем 1.4 мВ/Гс (милливольт на )
  • Нулевая точка: от 2.25 до 2.75 В, в среднем 2.5 В
  • Магнитный диапазон: от ±650 Гс до ±1000Гс
  • Время отклика: 3 мс

Из этих данных следует, что при стандартном питании от Arduino (+5V, GND) при 25 °C датчик в отсутствие магнитного поля будет выдавать 2.5 В, а на поле силой 1000 Гс — 2.5 ± 1.4 В. Соответственно, если воспользоваться АЦП, разброс значений будет примерно в диапазоне от 280 до 800 со нулевой точкой в 512. Приступим к экспериментам. Подключаем вывод “+” к 5V Arduino, вывод “-” к GND, оставшийся — к Analog 0:Заливаем в Arduino следующий скетч:void setup() { Serial.begin(9600); } void loop() { Serial.println(analogRead(0)); delay(500); }Не спеша подносим магнит вплотную сначала одним полюсом, потом другим, глядя в Serial monitor:

Цифровой биполярный ДХ

Выглядит он точно так же, как и аналоговый, даже выводы расположены так же:Тут можно не бояться, биполярный он только в магнитном смысле, а питание ему можно подавать вполне себе обычное, однополярное. К слову, питание этот датчик принимает в довольно широком диапазоне — от 3.

8 до 24 В, а ток может отдавать до 100 мА, что позволяет непосредственно от него запитывать управляемые им устройства (например, реле). Чувствительность у него почти точь-в-точь как у аналогового SS49E: от -600 Гс до -1000 Гс (северный полюс магнита) и от 600 Гс до 1000 Гс.

Подключается он чуть посложнее, чем аналоговый: выход датчика Q нужно подтянуть к питанию резистором в 10 кОм, так как выход у него с открытым коллектором:А вот и суперсложное подключение, где выход Q подключен к цифровому пину 2:Зальём в Arduino ещё один крутой скетч:void setup() { Serial.

begin(9600); } void loop() { static uint8_t prev_state = LOW; uint8_t state = digitalRead(2); if (state != prev_state) { prev_state = state; Serial.

println(state == LOW ? “OFF” : “ON”); } }Теперь подносим магнит то одним полюсом, то другим и смотрим в Serial monitor:Обратите внимание — датчик не переключается, пока не поднесёшь магнит другим полюсом, а ещё он очень чувствительный и переключается магнитом, вытащенным из дохлого CD-ROM’а, на расстоянии около 2 см!

Применение

Датчики Холла используются в качестве бесконтактных выключателей, как замена герконам, для бесконтактных замеров тока в проводниках, управления моторами, чтения магнитных кодов, измерения уровня жидкости (магнитный поплавок) и т.д.

Ну а я, имея два цифровых биполярных ДХ, сделаю бесконтактный магнитный .

Принцип прост: на вращающийся диск лепим рядышком два магнита разными полюсами вверх (для униполярных ДХ хватит одного), а над ними размещаем цифровые ДХ и снимаем показания.

Можно использовать скетч из статьи про энкодеры, но смотреть на стрелочки скучно, ведь хочется ещё посчитать обороты, так что напишем новый:

#include LiquidCrystal lcd(13, 12, 11, 10, 9, 8); /* Пины, к которым подключен энкодер */ enum { ENC_PIN1 = 2, ENC_PIN2 = 3 }; enum { FORWARD = 1, BACKWARD = -1 }; /* Если что, revolutions здесь и далее – обороты, а не революции (: */ long revolutions = 0, revolutions_at_last_display = 0; int direction = FORWARD; uint8_t previous_code = 0; /* Реакция на событие поворота */ void turned(int new_direction) { if (new_direction != direction) { revolutions = 0; revolutions_at_last_display = 0; } else ++revolutions; direction = new_direction; } /* Объеденил чтение кода Грея с энкодера с его декодированием */ uint8_t readEncoder(uint8_t pin1, uint8_t pin2) { uint8_t gray_code = digitalRead(pin1) | (digitalRead(pin2) >= 1) result ^= gray_code; return result; } void setup() { pinMode(ENC_PIN1, INPUT); pinMode(ENC_PIN2, INPUT); lcd.begin(8, 2); } void loop() { /* Читаем значение с энкодера */ uint8_t code = readEncoder(ENC_PIN1, ENC_PIN2); /* Обрабатываем его */ if (code == 0) { if (previous_code == 3) turned(FORWARD); else if (previous_code == 1) turned(BACKWARD); } previous_code = code; /* Раз в секунду выводим накопленную информацию */ static unsigned long millis_at_last_display = 0; if (millis() – millis_at_last_display >= 1000) { /* Выводим на экран направление вращения */ lcd.clear(); lcd.print(direction == FORWARD ? “>> ” : “

Источник: http://robocraft.ru/blog/594.html

Датчик Холла

Есть такой интересный эффект — если через квадратную проводящую пластину гнать постоянный ток, а саму пластину пронизать магнитным полем, чтобы линии индукции проходили через ее сечение, то летящие по пластине электроны отклоняются силой Лоуренса.

А раз так, то с одного края электронов будет больше чем с другой. Возникает разность потенциалов, то есть напряжение. И чем больше ток и сильней поле, тем большая разность будет. Это и есть эффект Холла.

Дальше дело за малым — берем источник стабильного тока, чем стабильней тем лучше, ведь от стабильности зависит точность показаний. Прогоняем постоянный ток по пластине, ловим да усиливаем разность потенциалов до осязаемых величин. В результате получаем отличную вещь — датчик магнитного поля, он же датчик Холла.

Например такой:

Моделей существует целая прорва. В чистом виде, правда, встречается редко. Обычно элемент Холла с чем нибудь да совмещен.

Либо, как тут, с усилителем, либо с силовыми ключами, как в датчиках из компьютерных бесколлекторных вентиляторов — там он сразу же коммутирует обмотки, выполняя роль электронного коллектора.

Правда на некоторых старых моделях вентиляторов можно обнаружить и целые микросборки из «чистого» датчика, усилителя и силовых ключей, но вот уже лет 5 мне такие не попадались.

Делал я тут один частный заказик недавно, вот там и применил эти козявки.

Подключение проще простого — подал питание, снял сигнал. Питание по даташиту написано двуполярное, но ничего не мешает подать и однополярное. Просто в этом случае ноль сигнала у нас будет не 0В а Vcc/2. У меня на Pinboard напряжение в магистрали питания около 4.8 вольт, поэтому на выходе датчика 2.4 вольта в подвешенном состоянии.

Теперь берем и подносим к нашему датчику магнитик. В зависимости от полярности стороны магнита, напруга либо обвалится в ноль, либо подскочит до максимума. Ну и, в зависимости от расстояния, может принимать промежуточные значения, линейно завися от силы магнитного поля.

Это все интересно, но что с того? Куда это можно применить?
А применений датчику можно придумать вагон и маленькую тележку. Например, бесконтактные концевые выключатели.

Причем, в отличии от герконов, датчики эти почти вечные — там нет ни единой движущейся части.

А если совместить датчик с магнитом и подсунуть ему шестеренку, что будет замыкать через себя магнитный поток, то можно легко получить датчик скорости вращения.

Когда зубец будет ближе к датчику, то сопротивление магнитному потоку будет ниже, а значит и его сила будет больше. А на межзубцовых промежутках все наоборот.

В результате, на выходе датчика будут импульсы сходные с формой зубов шестерни, а уж посчитать их не составит труда.

Или, например, надо нам замерить БОООЛЬШОЙ постоянный ток. Скажем идущий к драйверу двигателя. С малыми токами все ясно и так — ставим шунт и снимаем с него падение напряжения. С большими токами финт прокатит плохо — шунт будет лишней нагрузкой, сжирающей мощность, греющейся.

Да и сделай его еще из подручных средств… А ведь можно сделать все куда проще. Заворачиваем провод в катушку, опоясываем магнитопроводом, а в разрез пихаем наш датчик.

Причем необязательно делать много витков — если ток большой, да датчик чувствительный, то и одного-двух витков хватит (кстати, есть и неплохие промышленные датчики постоянного тока — LEM делает).

Ну и вот такой практический примерчик — на базе датчика SS495A сварганил простейший цифровой тахометр 🙂 Сам датчик купил на Алиэспрессе

А схему собрал на своей демоплате:

Получилась такая вот конструкция:

Включил моторчик, магнитик завертелся, а на выходе датчика Холла пошла вот такая вот картина:

Вообще я сам удивился насколько четкие и резкие фронты. Я думал будет подобие синуса. Ан нет, магнит оказался мощный (ниодимовый из лазерной головки CD-ROM’a) и видимо он сразу же зашкаливает наш датчик.

Дальше, на базе ядра диспетчера, описанного в не так давно, набросал по быстрому программку (только функциональная часть):

HAL.c

1
2
3
4
5
6
7
8
9
10
11
12
13
inline void InitAll(void)
{
//InitUSART
UBRRL = LO(bauddivider);
UBRRH = HI(bauddivider);
UCSRA = 0;
UCSRB = 1

Источник: http://easyelectronics.ru/datchik-xolla.html

Датчики положения (индуктивный датчик, датчик Холла)

Для измерения скорости вращения и определения положения различных узлов двигателя используются датчики положения. К ним относятся: датчик положения коленчатого вала (ДПКВ), датчик положения распределительного вала (ДПРВ) или датчик фазы (ДФ), датчик скорости (ДС), датчики ABS.

Сигнал ДПКВ используется для определения частоты вращения КВ, а также его мгновенного положения. Т.к. частоты вращения распределительного и коленчатого валов соотносятся как 1:2, то только по сигналу ДПКВ невозможно однозначно определить находится ли поршень двигателя, движущийся к ВМТ, на такте сжатия или выпуска.

Фазный датчик на распределительном валу передает эту информацию в блок управления. В качестве примера приведен сигнал с авто ВАЗ.

Сигналы ДПКВ (синий) и ДПРВ (зеленый) К наиболее распространенным типам этих датчиков относятся: индуктивный (электромагнитный) датчик и датчик Холла.


Индуктивный датчик

Этот тип датчика наиболее распространен в качестве ДПКВ. Датчик монтируется поблизости от подвижного элемента, называемого маркерным диском. Этот элемент представляет собой стальной диск с зубьями, который жестко зафиксирован на коленчатом валу (может находиться как со стороны ременной передачи, так и непосредственно на маховике КВ).
Расположение ДПКВ
1. ДПКВ
2.

Маркерный диск
3. Разъем датчика Датчик состоит из обмотки с сердечником из постоянного магнита. Когда зуб проходит перед датчиком, это приводит к усилению магнитного потока, проходящего через обмотку. Напротив, увеличение зазора ослабляет этот поток. Происходит изменение магнитного поля, которое вызывает появление индукционного тока в обмотке.

Амплитуда напряжения переменного тока сильно возрастает по мере повышения частоты вращения маркерного диска (от нескольких мВ до значений более 100 В).
Конструкция индуктивного датчика
1. Обмотка
2. Метка на маркерном диске в виде пропущенных зубьев
3. Постоянный магнит Маркерный диск может иметь как пропуски зубьев, так и более широкие зубья.

Кол-во зубьев маркерного диска зависит от его назначения и модели авто. В качестве маркерного диска для КВ наиболее распространенным является диск с 60-ю зубьями, при этом два зуба пропущены. Зазор с пропущенными зубьями предназначен для отметки определенного положения коленчатого вала и служит как установочная метка для синхронизации блока управления.

На маркерных дисках системы ABS пропуск зубьев отсутствует, т.к. в данной системе положение колеса не принципиально, имеет значение только скорость вращения.
Пример сигнала индуктивного датчика ABS В варианте исполнения для ДПРВ, маркерный диск может иметь всего один зуб, т.к.

в данном случае нет необходимости измерять скорость вращения, нужно определить только положение РВ для определения фазы работы двигателя.Для дальнейшего анализа электронный блок производит преобразование аналогового сигнала в цифровой. Амплитуда напряжения сигнала пропорциональна скорости прохождения подвижной детали перед датчиком.

Читайте также:  Отладочная плата для устройств на мк atmega8/48/88/168/328

Напряжение также в значительной степени зависит от расстояния между вершинами зубьев и поверхностью датчика, как правило, зазор составляет 1±0,5 мм. Подсчитывая число импульсов в течение заданного промежутка времени, электронный блок может определить скорость вращения КВ.

Индуктивный датчик подключается к контроллеру экранированной парой проводов с заземлением экранирующей оплетки на кузов автомобиля.

Пример схемы подключения ДПКВ Для записи осциллограммы индуктивного датчика, необходимо подключиться измерительным щупом непосредственно к сигнальному выходу датчика либо к разъему со стороны ЭБУ.

Подключение мотор-тестера к ДПКВ (цветовая маркировка проводов указана в качестве примера)

Датчик Холла

В таких датчиках использован эффект Холла. Интегральная схема датчика Холла располагается между маркерным диском и постоянным магнитом. Когда зуб маркерного диска проходит у элемента датчика, то он изменяет величину магнитного поля, пронизывающего элемент Холла.

За счет этого возникает сигнал напряжения, который находится в милливольтновом диапазоне и не зависит от относительной скорости между датчиком и маркерным диском. Оценивающая электронная схема, встроенная в интегральную схему, вырабатывает сигнал в форме прямоугольных импульсов.
Датчик Холла 1. Постоянный магнит 2. Интегральная схема Холла. 3.

Маркерный диск 4. Разъем датчикаКак правило, датчик Холла имеет три вывода: питание +5В (+12В), «земля», сигнальный выход.
Пример схемы подключения ДПРВ Для записи осциллограммы датчика Холла, необходимо подключиться измерительным щупом непосредственно к сигнальному выходу датчика либо к разъему ЭБУ.

Подключение мотор-тестера к ДПРВ (цветовая маркировка проводов указана в качестве примера)
Для записи сигнала ДПКВ рекомендуется использовать 2ой аналоговый канал мотор-тестера, для сигнала ДПРВ – 3ий канал. При наличии нескольких ДПРВ, можно использовать любой свободный аналоговый канал.

Настройка аналогового канала для индуктивного датчика
Настройка аналогового канала для датчика Холла Дополнительные возможности ПО:

Автоподстройка линейки по любому «стандартному ДПКВ» (тема на форуме)

Одновременный анализ сигналов ДПКВ и ДПРВ позволяет проверить работу этих датчиков, а также правильность установки КВ и РВ (соответствие меток ГРМ).

автор: Евгений Куришко

Источник: http://www.mlab.org.ua/articles/sensors/99-sensors-inductive-holl.html

Работа с датчиками тока на эффекте Холла: ACS758

Всем привет!

Пожалуй, стоит представиться немного — я обычный инженер-схемотехник, который интересуется также программированием и некоторыми другими областями электроники: ЦОС, ПЛИС, радиосвязь и некоторые другие. В последнее время с головой погрузился в SDR-приемники.

Первую свою статью (надеюсь, не последнюю) я сначала хотел посвятить какой-то более серьезной теме, но для многих она станет лишь чтивом и не принесет пользы. Поэтому тема выбрана узкоспециализированная и исключительно прикладная.

Также хочу отметить, что, наверное, все статьи и вопросы в них будут рассматриваться больше со стороны схемотехника, а не программиста или кого-либо еще. Ну что же — поехали!

Не так давно у меня заказывали проектирование «Система мониторинга энергоснабжения жилого дома», заказчик занимается строительством загородных домов, так что кто-то из вас, возможно, даже уже видел мое устройство.

Данный девайс измерял токи потребления на каждой вводной фазе и напряжение, попутно пересылая данные по радиоканалу уже установленной системе «Умный дом» + умел вырубать пускатель на вводе в дом. Но разговор сегодня пойдет не о нем, а о его небольшой, но очень важной составляющей — датчике тока.

И как вы уже поняли из названия статьи, это будут «бесконтактные» датчики тока от компании Allegro — ACS758-100.
________________________________________________________________________________________________________________________

Даташит, на датчик о котором я буду рассказывать, можно посмотреть тут. Как несложно догадаться, цифра «100» в конце маркировки — это предельный ток, который датчик может измерить.

Скажу честно — есть у меня сомнения по этому поводу, мне кажется, выводы просто не выдержат 200А долговременно, хотя для измерения пускового тока вполне подойдет.

В моем устройстве датчик на 100А без проблем пропускает через себя постоянно не менее 35А + бывают пики потребления до 60А.

Рисунок 1 — Внешний вид датчика ACS758-100(50/200)

Перед тем, как перейду к основной части статьи, я предлагаю вам ознакомиться с двумя источниками. Если у вас есть базовые знания по электронике, то они будут избыточными и смело пропускайте этот абзац. Остальным же советую пробежаться для общего развития и понимания:

1) Эффект Холла. Явление и принцип работы
2) Современные датчики тока
________________________________________________________________________________________________________________________

Ну что же, начнем с самого важного, а именно с маркировки. Покупаю комплектующие в 90% случаев на www.digikey.com. В Россию компоненты приезжают через 5-6 дней, на сайте есть пожалуй все, также очень удобный параметрический поиск и документация. Так что полный список датчиков семейства можно посмотреть там по запросу “ACS758“. Датчики мои были куплены там же — ACS758LCB-100B.

Внутри даташита по маркировке все расписано, но я все равно обращу внимание на ключевой момент “100В“:

1) 100 — это предел измерения в амперах, то есть мой датчик умеет измерять до 100А;
2) “В” — вот на эту букву стоит обратить внимание особо, вместо нее может быть также буква “U“. Датчик с буквой B умеет измерять переменный ток, а соответственно и постоянный. Датчик с буквой U умеет измерять только постоянный ток.

Также в начале даташита есть отличная табличка на данную тему:

Рисунок 2 — Типы датчиков тока семейства ACS758

Еще в данной таблицы появился еще один важный параметр — зависимости выходного напряжения от тока. Прелесть данного типа датчиков в том, что у них выход напряжения, а не тока как у классических трансформаторов тока, что очень удобно. Например, выход датчика можно подсоединить напрямую ко входу АЦП микроконтроллера и снимать показания.

У моего датчика данное значение равно 20 мВ/А. Это означает, что при протекании тока 1А через выводы 4-5 датчика напряжение на его выходе увеличится на 20 мВ. Думаю логика ясна.

Следующий момент, какое же напряжение будет на выходе? Учитывая, что питание «человеческое», то есть однополярное, то при измерение переменного тока должна быть «точка отсчета». В данном датчике эта точка отсчета равна 1/2 питания (Vcc). Такое решение часто бывает и это удобно. При протекании тока в одну сторону на выходе будет “1/2 Vcc + I*0.

02V“, в другом полупериоде, когда ток протекает в обратную сторону напряжение на выходе будет уже “1/2 Vcc — I*0.02V“. На выходе мы получаем синусоиду, где «ноль» это 1/2Vcc. Если же мы измеряем постоянный ток, то на выходе у нас будет “1/2 Vcc + I*0.

02V“, потом при обработке данных на АЦП просто вычитаем постоянную составляющую 1/2 Vcc и работаем с истинными данными, то есть с остатком I*0.02V.

Теперь пришло время проверить на практике то, что я описал выше, а вернее вычитал в даташите. Чтобы поработать с датчиком и проверить его возможности, я соорудил вот такой «мини-стенд»:

Рисунок 3 — Площадка для тестирования датчика тока

Первым делом я решил подать на датчик питание и измерить его выход, чтобы убедиться в том, что за «ноль» у него принято 1/2 Vcc. Схему подключения можно взять в даташите, я же, желая лишь ознакомиться, не стал тратить время и лепить фильтрующий конденсатор по питанию + RC цепочку ФНЧ на выводе Vout. В реальном же устройстве без них никуда! Получил в итоге такую картинку:

Рисунок 4 — Результат измерения «нуля»

При подаче питания с моей платки STM32VL-Discovery я увидел вот такие результаты — 2.38В. Первый же вопрос, который возник: “Почему 2,38, а не описанные в даташите 2.5?” Вопрос отпал практически мгновенно — измерил я шину питания на отладке, а там 4.76-4.77В.

А дело все в том, что питание идет с USB, там уже 5В, после USB стоит линейный стабилизатор LM7805, а это явно не LDO с 40 мВ падением. Вот на нем это 250 мВ примерно и падают. Ну да ладно, это не критично, главное знать, что «ноль» это 2.38В.

Именно эту константу я буду вычитать при обработке данных с АЦП.

А теперь проведем первое измерение, пока лишь с помощью осциллографа. Измерять буду ток КЗ моего регулируемого блока питания, он равен 3.06А. Это и встроенный амперметр показывает и флюка такой же результат дала. Ну что же, подключаем выходы БП к ногам 4 и 5 датчика (на фото у меня витуха брошена) и смотрим, что получилось:

Рисунок 5 — Измерение тока короткого замыкания БП

Как мы видим, напряжение на Vout увеличилось с 2.38В до 2.44В. Если посмотреть на зависимость выше, то у нас должно было получиться 2.38В + 3.06А*0.02В/А, что соответствует значению 2.44В. Результат соответствует ожиданиям, при токе 3А мы получили прибавку к «нулю» равную 60 мВ. Вывод — датчик работает, можно уже работать с ним с помощью МК.

Теперь необходимо подключить датчик тока с одному из выводов АЦП на микроконтроллере STM32F100RBT6. Сам камушек очень посредственный, системная частота всего 24 МГц, но данная платка у меня пережила очень много и зарекомендовала себя. Владею ею уже, наверное, лет 5, ибо была получена нахаляву во времена, когда ST их раздавали направо и налево.

Сначала по привычке я хотел после датчика поставить ОУ с коэф. усиления «1», но, глянув на структурную схему, понял, что он внутри уже стоит.

Единственное стоит учесть, что при максимальном токе выходное питание будет равно питанию датчика Vcc, то есть около 5В, а STM умеет измерять от 0 до 3.3В, так что необходимо в таком случае поставить делитель напряжения резистивный, например, 1:1,5 или 1:2.

У меня же ток мизерный, поэтому пренебрегу пока этим моментом. Выглядит мое тестовое устройство примерно так:

Рисунок 6 — Собираем наш «амперметр»

Также для визуализации результатов прикрутил китайский дисплей на контроллере ILI9341, благо валялся под рукой, а руки до него никак не доходили. Чтобы написать для него полноценную библиотеку, убил пару часов и чашку кофе, благо даташит на удивление оказался информативным, что редкость для поделок сыновей Джеки Чана.

Теперь необходимо написать функцию для измерения Vout с помощью АЦП микроконтроллера. Рассказывать подробно не буду, по STM32 уже и так море информации и уроков. Так что просто смотрим:

uint16_t get_adc_value() { ADC_SoftwareStartConvCmd(ADC1, ENABLE); while(ADC_GetFlagStatus(ADC1, ADC_FLAG_EOC) == RESET); return ADC_GetConversionValue(ADC1); }

Далее, чтобы получить результаты измерения АЦП в исполняемом коде основного тела или прерывания, надо прописать следующее:

data_adc = get_adc_value();

Предварительно объявив переменную data_adc:

extern uint16_t data_adc;

В итоге мы получаем переменную data_adc, которая принимает значение от 0 до 4095, т.к. АЦП в STM32 идет 12 битный. Далее нам необходимо превратить полученный результат «в попугаях» в более привычный для нас вид, то есть в амперы. Поэтому необходимо для начала посчитать цену деления.

После стабилизатора на шине 3.3В у меня осциллограф показал 3.17В, не стал разбираться, с чем это связано. Поэтому, разделив 3.17В на 4095, мы получим значение 0.000774В — это и есть цена деления. То есть получив с АЦП результат, например, 2711 я просто домножу его на 0.000774В и получу 2.

09В.

В нашей же задачи напряжение лишь «посредник», его нам еще необходимо перевести в амперы. Для этого нам надо вычесть из результата 2.38В, а остаток поделить на 0.02 [В/А]. Получилась вот такая формула:

float I_out = ((((float)data_adc * presc)-2.38)/0.02);

Ну что же, пора залить прошивку в микроконтроллер и посмотреть результаты:

Рисунок 7 — Результаты измерения данных с датчика и их обработка

Измерил собственное потребление схемы как видно 230 мА. Измерив тоже самое поверенной флюкой, оказалось, что потребление 201 мА. Ну что же — точность в один знак после запятой это уже очень круто.

Объясню, почему… Диапазон измеряемого тока 0..100А, то есть точность до 1А это 1%, а точность до десятых ампера это уже 0,1%! И прошу заметить, это без каких либо схемотехнических решений.

Я даже поленился повесить фильтрующие кондеры по питанию.

Теперь необходимо замерить ток короткого замыкания (КЗ) моего источника питания. Выкручиваю ручку на максимум и получаю следующую картину:

Рисунок 8 — Измерения тока КЗ

Ну и собственно показания на самом источнике с его родным амперметром:

Рисунок 9 — Значение на шкале БП

На самом деле там показывало 3.09А, но пока я фотографировал, витуха нагрелась, и ее сопротивление выросло, а ток, соответственно, упал, но это не так страшно.

В заключение даже и не знаю, чего сказать. Надеюсь, моя статья хоть как-то поможет начинающим радиолюбителям в их нелегком пути. Возможно, кому-то понравится моя форма изложения материала, тогда могу продолжить периодически писать о работе с различными компонентами. Свои пожелания по тематике можно высказать в комментариях, я постараюсь учесть.

Ну и конечно же прилагаю исходники программки, глядишь, кому понадобится библиотека для работы с дисплеем или АЦП. Сам проект в Keil 5.

Источник: http://www.pvsm.ru/stm32/187748

Датчики магнитных полей

В продолжение обзоров по готовым модулям различных датчиков к Ардуино платформе, перейдём к датчикам магнитных полей.

Модуль датчика Холла KY-003

Данный модуль предназначен для обнаружения магнитного поля при помощи эффекта Холла. Этот эффект состоит в том, что в проводнике с постоянным током, помещенном в магнитное поле возникает поперечная разность потенциалов [1-3].

Габариты 28 х 15 мм, масса модуля 1,2 г. На плате имеется два крепежных отверстия диаметром 2 мм на расстоянии 10 мм друг от друга. Для подключения служит трехконтактный разъем. Центральный контакт – питание +5В, контакт «-» — общий, контакт «S» — информационный.

Когда индукция магнитного поля превышает заданное значение на информационном выходе модуля высокий логический уровень сменяется на низкий. На модуле имеется светодиод, который загорается при срабатывании датчика.

В качестве иллюстрации можно загрузить на плату Arduino UNO программу LED_with_button [4], и подключить вместо кнопки данный модуль.

Модуль срабатывает только на северный полюс магнита, порог срабатывания достаточно высокий, магнит нужно подносить вплотную. Потребляемый ток 6,3 мА в ждущем режиме и составляет 11 мА при срабатывании.

Из недостатков следует отметить, что довольно сложно найти взаимную конфигурацию магнита и датчика для надежного срабатывания.

Поскольку модуль реагирует на определенное пороговое значение магнитного поля, то самым очевидным применением такого датчика может быть использование этого датчика вместо геркона.

Хотя геркон это весьма надежный прибор, все же в его конструкции имеются подвижные механические контакты, в отличие от него датчик Холла никаких подвижных деталей не имеет.

К примеру, можно установить данный модуль на дверном косяке, на полотне двери напротив него установить магнит, получится датчик открывания двери для сигнализации или умного дома, аналогично можно организовать подсчет оборотов колеса, закрепив на нем магнит и поместив в непосредственной близости от него этот датчик.

Модуль на основе геркона KY-021

Датчик представляет собой нормально разомкнутый геркон с добавочным сопротивлением 10 кОм [5-6].

Габариты модуля 24 х 17 мм, масса 1,2 г. Для подключения служит трехконтактный разъем. Центральный контакт – питание +5В, контакт «-» — общий, контакт «S» — информационный.

Потребляемый ток равен нулю в ждущем режиме и составляет 0,5 мА при срабатывании.

Модуль подключается и испытывается абсолютно аналогично тактовой кнопке [4,7]. Геркон можно использовать в системах сигнализации, для подсчета числа оборотов и т.п. Способов использования герконов великое множество [8-9].

Модуль датчика Холла (линейный) KY-024

Модуль предназначен для измерения напряженности постоянного магнитного поля [10-11].

Габариты модуля 44 х 15 х 13 мм, масса 2,8 г., в плате модуля имеется крепежное отверстие диаметром 3 мм. Чувствительным элементом служит датчик Холла SS49E. Индикация подачи питания осуществляется светодиодом L1.

Датчик имеет четыре контакта. «A0» — аналоговый выход, напряжение на котором меняется в зависимости от индукции магнитного поля. Выводы питания «G» — общий провод, «+»– питание +5В.

На цифровом входе «D0» присутствует низкий логический уровень, если напряженность магнитного поля не превышает заданного порога, при срабатывании датчика низкий уровень меняется на высокий.

Порог срабатывания цифрового канала датчика можно менять многооборотным подстроечным резистором. При срабатывании датчика загорается светодиод L2.

Полезное:  Микроволновый датчик движения

Потребляемый ток 9 мА в ждущем режиме и 11 мА при срабатывании.

Модуль срабатывает только на северный полюс магнита. Максимальное расстояние срабатывания 6 мм.

Аналоговый канал позволяет организовать измерение количественных характеристик магнитного поля. Показания на аналоговом порте Arduino UNO меняются от 550 до 200 единиц в зависимости от расстояния до магнита (в память Arduino UNO была загружена программа AnalogInput2).

Модуль с герконом KY-025

Чувствительным элементом модуля является обычный геркон, работающий вместе с компаратором на микросхеме LM393YD, по заверениям продавцов [12-13] это позволяет уменьшить, ток, протекающий через контакты геркона, и тем самым увеличить его ресурс.

Габариты модуля 45 х 18 х 13 мм, масса 2,8 г., аналогично предыдущему случаю в плате модуля имеется крепежное отверстие диаметром 3 мм. Индикация питания осуществляется светодиодом L1.

При срабатывании геркона загорается светодиод L2. Потребляемый ток 3,7 мА в ждущем режиме и 5,8 мА при срабатывании.

Какой порог чувствительности должен регулироваться переменным резистором неясно, видимо данные модули с компаратором LM393YD являются стандартными и к ним припаивают различные датчики в зависимости от назначения конкретного модуля.

Разумеется, модуль срабатывает дискретно как кнопка, в чем можно убедиться с помощью программы LED_with_button [4]. На выводе «A0» постоянно присутствует напряжение питания +5В. Выводы питания «G» — общий провод, «+»– питание +5В.

На цифровом входе «D0» присутствует низкий логический уровень, при срабатывании геркона низкий уровень меняется на высокий.

Целесообразность данного модуля, по мнению автора, спорна, учитывая, что и в простейшем случае включения геркона типа модуля KY-021 сила тока, протекающая через контакты геркона, существенно меньше одного миллиампера.

Модуль датчика Холла KY-035

Данный модуль представляет собой микросхему SS49E, без каких либо дополнительных устройств [14]. Установка микросхемы на плате в данном случае может быть объяснена, только требованиями унификации при создании данного набора датчиков.

Габариты модуля 29 х 15 мм, масса 1,2 г. Для подключения служит трехконтактный разъем. Центральный контакт – питание +5В, контакт «-» — общий, контакт «S» — информационный.

Потребляемый модулем ток составляет около 6 мА и не зависит от состояния датчика.

При отсутствии внешнего магнитного поля на информационном выходе присутствует напряжение равное половине напряжения питания. Внешнее постоянное магнитное поле приводит к тому, что напряжение на информационном выходе начнет увеличиваться или уменьшатся в зависимости от полярности магнита. В этом легко убедиться, используя программу AnalogInput2

С помощью данного модуля можно организовать контроль расстояния до источника магнитного поля, подсчет числа оборотов и т.п. Микросхема чувствительна к магнитному полю с индукцией в диапазоне 600-1000 Гс [15].

Полезные ссылки

  1. https://ru.wikipedia.org/wiki/Эффект_Холла
  2. http://arduino-kit.ru/catalog/id/modul-datchika-holla
  3. http://www.14core.com/wiring-hall-effect-sensor-switch-magnet-detector-module/
  4. http://robocraft.ru/blog/arduino/57.html
  5. http://arduino-kit.ru/catalog/id/modul-na-osnove-gerkona
  6. http://www.zi-zi.

    ru/module/module-ky021

  7. https://2shemi.ru/mehanicheskie-datchiki-dlya-arduino/
  8. https://electrosam.ru/glavnaja/slabotochnye-seti/oborudovanie/gerkony/
  9. http://electrik.info/main/school/419-gerkony-sposoby-upravleniya.html
  10. http://arduino-kit.ru/catalog/id/modul-datchika-holla-_lineynyiy_
  11. http://www.zi-zi.

    ru/module/module-ky024

  12. http://arduino-kit.ru/catalog/id/modul-magnitnyiy-datchik-s-gerkonom
  13. http://www.zi-zi.ru/module/module-ky025
  14. http://arduino-kit.ru/catalog/id/modul-datchika-holla_
  15. https://ru.wikipedia.org/wiki/Гаусс_(единица_измерения)

Все файлы документации и программ находятся в общем архиве.

Обзор подготовил Denev.

25,00Загрузка…

НАЖМИТЕ ТУТ И ОТКРОЙТЕ КОММЕНТАРИИ

Источник: https://2shemi.ru/datchiki-magnitnyh-polej/

Индуктивный датчик – устройство, принцип работы, параметры и классификация

Различного типа датчики сегодня широко применяются в промышленности. Без них ни один технологический процесс не обходится. Существует несколько их видов, нас же в этой статье будет интересовать индуктивный датчик. Поэтому разберемся, для чего он необходим, где применяется, его устройство и принцип работы.

Бесконтактные индуктивные датчики

По сути, датчик данного типа – это прибор, принцип работы которого основан на изменениях индуктивности катушки и сердечника. Кстати, отсюда и само название.

Изменения индукции происходят из-за того, что в магнитное поле катушки проникает металлический предмет, изменяя его. А соответственно и изменяется схема подключения, в которой основную роль играет компаратор.

Он при изменении индукции подает сигнал на реле или конечный транзистор (выключатель), что приводит к отключению подачи электрического тока.

Поэтому основное предназначение данного прибора – это измерять перемещение части оборудования. И при превышении пределов проходимости отключать его. При этом у датчиков есть свои пределы перемещения, которые варьируются в диапазоне от 1 микрона до 20 миллиметров. Кстати, именно поэтому этот прибор называют и индуктивным датчиком положения.

Достоинства и недостатки

Начнем с достоинств:

  • Простота конструкции, достаточно высокая его надежность. Полное отсутствие скользящих контактов, которые быстро выходят из строя.
  • Можно использовать для подключения в электрические сети с промышленной частотой.
  • Высокая чувствительность.
  • Может выдерживать большую выходную мощность.

Устройство индуктивного датчика

Недостатки:

  • Напряжение и точность работы датчика взаимосвязаны, поэтому нестабильное напряжение в сети становится причиной разброса пределов реагирования.

Параметры индуктивного датчика

Один из параметров уже описывался выше – это диапазон срабатывания. Хотя, как утверждают специалисты, он не является важным, но именно по нему и делают выбор. Все дело в том, что в паспорте изделия указываются номинальные параметры напряжения при работе прибора в температурном режиме +20С.

Постоянное напряжение составляет 24 вольт, переменное – 230 вольт. Как вы понимаете, в таких условиях индукционный датчик обычно не работает, а если и работает, то редко.

При этом в качестве объекта, который будет изменять индуктивность катушки прибора, должна выступать стальная пластина, ее ширина должна быть равна трем диапазонам срабатывания и толщиною 1 мм.

Источник: http://OnlineElektrik.ru/eoborudovanie/datchyk/induktivnyj-datchik-ustrojstvo-princip-raboty-parametry-i-klassifikaciya.html

Цифровой измеритель магнитной индукции

Союз Советских

Социалнстических

Республик

ОПИСАНИЕ

ИЗОБРЕТЕНИЯ ри832504

1 ” т

К АВТОРСКОМУ СВИДЕТЕЛЬСТВУ (61} Дополнительное к ввт. свид-ву(22) Заявлено 120679 (21) 2790654/18-21 с присоединением заявки ¹ (51) М. Кл.з

G 01 R 33/06 (23) Приоритет

Государственный комитет

СССР по делам изобретений и открытий

Опубликовано 230581. Бюллетень М9 19

Дата опубликования описания 230581 (53) У4 621. 317.

° 44 {088.8) (72) Авторы изобретения

A.A. Певко, M.Ì. Таран, (б; Г. Чигщлттт — и–Ю;-T игирин

r. .. :г : !,. в. !! :,, !

t ” !.!!! (71) Заявитель (54) ЦИФРОВОЙ ИЗМЕРИТЕЛЬ МАГНИТНОЙ

ИНДУКЦИИ

Изобретение относится к области магнитных измерений и может быть использовано для прецизионного измерения в широком диапазоне индукции пос- 5 тоянных магнитных полей.

Известен измеритель магнитной индукции, который состоит из датчика

Холла, источника переменного тока для питания датчика Холла, дополнительной катушки, в поле которой находится. датчик Холла.

, источника постоянного тока для питания обмотки дополнительной катушки, преобразователя напряжение-код, реверсивного счетчика, делительного устройства, устройства управления и цифрового отсчетного устройства, в котором преобразователь напряжение-код включен между датчиком Холла, реверсивным счетчиком и делительным устройством, второй вход которого подсоединен к выходу реверсивного счетчика, а выход — к цифровому отсчетно- 5 му устройству, устройство управления соединено с преобразователем напряжение-код, делительным устройством, реверсивным счетчиком, источником постоянного тока и цифровым отсчетным устройством (Q . цикл измерения в известном устройстве состоит из двух тактов. В первом такте на датчик Холла одновременно воздействует два постоянных магнитных поля: измеряемое В„ и дополнительное В „от создаваемое дополнительной катушкой, в поле которой находится датчик Холла. По обмотке дополнительной катушки протекает ток от источника постоянного тока. Выходной сигнал датчика Холла, пропорциональный сумме ведичин магнитных индукций (Вц, +Вл, ), поступает на преобразователь напряжение-код, откуда в виде последовательности импульсов выдается на реверсивный счетчик, считающий в прямом направлении. Во втором такте на датчик Холла действует только измеряемое магнитное поле.

Выходной сигнал датчика,пропорциональный измеряемой магнитной индукции, поступает на преобразователь напряжение-код, откуда в виде последовательности импульсов выдается на реверсивный счетчик, считающий в обратном направлении.

Недостатки устройства — зависимость результатов измерения от направления измеряемого магнитного поля и. недостоверность результатов измере

832504 ния при несовпадающих по направлению измеряемом и дополнительном- магнитных полях, а также при превышении индукции дополнительного магнитного поля индукции измеряемого магнитного поля Вдщ,> Влз

Цель изобретения — повышение точ,ности измерения.

Поставленная цель достигается тем, что в цифровой измеритель магнитной индукции, содержащий последовательно соединенные источник переменного тока, датчик Холла, управляемый делитель, преобразователь напряжение-код, реверсивный счетчик, делительный блок и цифровое отсчетное устройство, последовательно соединен- 15 ные переключатель и источник постоянного тока, дополнительную катушку

I подключенный к выходу и входу датчика Холла фазовый элемент, через триггер полярности, подключенный ко вто- Д{) рому входу управляемого делителя, при этом вторые входы преобразователя напряжение-код, реверсивного счетчика, цифрового отсчетного устройства, делительного блока и вход переключателя связаны с блоком управления, а второй выход преобразователя напряжение-код подсоединен к третьему входу делительного блока, дополнительно вводятся блок установления синфазности и автоматический переключатель, включенный между дополнительной катушкой и источником постоянного тока, а блок установления синфазности включен между выходами фазового элемента, выходом блока управления и третьим входом автоматического переключателя.

На фиг.1 представлена блок-схема цифрового измерителя магнитной индукции, на фиг.2 — временные диar-. 49 раглглы работы устройства.

Цифровой измеритель магнитной . и дукции состоит (фиг, 1) из датчик;- Холла 1, источника 2 переменнотог,а, источника 3 постоянного тс ка, дополнительной катуитки 4, уп 388.t19eì0ò0 делителя 5! фазового эз.e>: нт. б, т иг.

-ера 7 полярности, преобразователя напряжение-код 8, реверсивного счетчика 9, делитель- 5О ного блока 10, цифрового отсчетного ус тройства 11, блока 12 управления п:.

реключателя 13, блока 14 установления синфазности и автоматического переключателя 15..

Устройство работает следующим образом.

Фазовый элеглент,б в зависимости от направления измеряемого магнитного поля В устанавливает триггер бО полярности 7 в определенное состояние. Например, при положительном направлении B . .управляющий сигнал фазового элемента б поступает на еди-. ничный вход триггера 7. 65

Триггер 7 полярности выдает его в состояние, соответствующее положительному направлению магнитного поля. При отрицательном направлении магнитного поля управляющий сигнал фазового элемента б поступает на нулевой вход триггера 7 полярности.

https://www.youtube.com/watch?v=ewwQsNa3dsM

Триггер 7 полярности устанавливает управляемый делитель 5 в состояние соответствующее отрицательному направлению магнитного поля. Если при отрицательном направлении магнитного поля чувствительность датчи-.

ка Холла 1 больше, чем при положительном направлении, то коэффициент передачи управляемого делителя 5 при отрицательном направлении меньше единицы при условии, что при положительном направлении он принят. за единицу.

При обратном соотношении коэффициент передачи при отрицательном направлении магнитного поля больше единицы.

Цикл измерения устройства состоит из двух тактов °

В первом такте на датчик Холла

1 действует измеряемое магнитное поле В„ „„ Выходной сигнап датчика

Холла 1 через управляемый делитель

5 поступает на преобразователь напряжение-код 8, откуда в виде последовательности импульсов поступает на реверсивный счетчик 9, который в первом такте работает на вычитание, Реверсивный счетчик 9-фиксирует отрицательный код Бг,, пропорциональный измеряемой магнитной индукции.

Код Б выходного регистра преобразователя напряжение-код 8 поступает на один из входов делительного блока 10.

Кроме того, в первом такте измерения блока 14 установления синфазности по состоянию фазового элемента б определяет направление измеряемого магнитного поля B„> .

В зависимости от направления этого поля В„ блока 14 установления синфазностй устанавливает в одно из двух положений. При положительном направлении Ви, ток от источника 3 постоянного тока протекающий по дополнительной катушке 4, имеет одно направление.

При отрицательном направлении В„ „„ ток от источника 3 изменяет свое направление. Поэтому, поле создаваемое дополнительной катушкой

4, всегда совпадает по направлению с измеряемым постоянным магнитным полем В .,„ .

Во втором такте на датчик Холла

1 действуют, два постоянных магнитных поля: измеряемое Вд и дополнительное .В* п, создаваемое дополнительной катушкой 4, в поле ксторой находится датчик Холла 1 ° По обмотке дополнительной катушки 4 протекает ток от источника 3 постоян832504 ного тока,.который включается переключателем 13, на который поступает управляющий сигнал от блока 12 управления ° Выходной сигнал датчика

Холла 1, пропорциональный сумме ве-, личин (В„ „ +В „), поступает íà преобразователь напряжение-код 8, откуда в виде последовательности импульсов поступает на реверсивный-счетчик 9, считающий в прямом направлении. В результате после второго такта реверсивный счетчик 9 фиксирует число импульсов Б рропорциональное дополнительному магнитному полю В щ,.

После двух тактов измерения на второй вход делительного блока 10 поступает код И с реверсивного счетчика 9, После поступления. управляющего сигнала с блока 12 управления делительный блок 10 совершает операцию деления числа И на число N, и Ьизтл

Результат деления, равный И = В оп не зависит от удельной чувствительности датчика Холла к индукции, его тока питания, коэффициента передачи схемы и направления измеряемого магнитного поля В„ Если значение индукции дополнительного магнитного поля принять за единицу измеряемой магнитной индукции, то результат деления пропорционален измеряемой магнитной индукции.

Использование блока установки син фазности и автоматического переключателя выгодно отличает предлагаемый цифровой измеритель магнитной индукции от известных устройств, так как . позволяет повысить точность и достоверность результатов измерения.

Применение предлагаемого измерителя позволяет полностью автоматизировать процесс измерения и значительно повысить производительность труда при снятии топографии магнитного поля устройств сложной конфигурации, когда в процессе измерения изменяется направление магнитного поля, действующего на датчик Холла.

Формула изобретения . Цифровой измеритель магнитной.

индукции, содержащий последовательно соединенные источник переменного тока, датчик Холла, управляемый дели10 тель, преобразователь напряжениекод, реверсивный счетчик, делительный блок и цифровое отсчетное устройство, последовательно соединенные переключатель и источник постоянного тока, дополнительную катушку, подключенный к выходу и входу датчика Холла фазовый элемент, через триггер полярности,подключенный чо . второму входу управляемого делите-, ля, при этом вторые входы преобразователя напряжение-код, реверсивного счетчика, цифрового отсчетного устройства, делительного блока и ,вход. переключателя связаны с блоком управления, а второй выход преобразователя напряжение-код подсоединен к третьему входу делительного блока> отличающийся тем, что, с целью повышения точности измерения, в него дополнительно вводятся блок установления синфачности и автоматический переключатель,, включенный между дополнительной катушкой и источником постоянного тока, а блок установления синфазности включен между выходами фазового элемента, выходом блока управления и третьим входом автоматического переключателя.

Источники информации, принятые во внимание ри экспертизе

1, Авторское свидетельство СССР

Р 347704, кл. G 01 R 33/06 1972 °

    

Источник: http://www.FindPatent.ru/patent/83/832504.html

Использование датчика тока ACS712. Часть 1 – Теория

Измерение и контроль протекающего тока являются принципиальным требованием для широкого круга приложений, включая схемы защиты от перегрузки по току, зарядные устройства, импульсные источники питания, программируемые источники тока и пр.

Один из простейших методов измерения тока –использование резистора с малым сопротивлением, – шунта между нагрузкой и общим проводом, падение напряжения на котором пропорционально протекающему току.

Несмотря на то, что данный метод очень прост в реализации, точность измерений оставляет желать лучшего, т.к. сопротивление шунта зависит от температуры, которая не является постоянной.

Кроме того, такой метод не позволяет организовать гальваническую развязку между нагрузкой и измерителем тока, что очень важно в приложениях, где нагрузка питается высоким напряжением.

Рисунок 1. Модуль датчика тока ACS712.

Основные недостатки измерения тока с помощью резистивного шунта:

  • нагрузка не имеет прямой связи с «землей»;
  • нелинейность измерений, обусловленная температурным дрейфом сопротивления резистора;
  • отсутствие гальванической развязки между нагрузкой и схемой измерения.

В статье мы рассмотрим экономичный и прецизионный интегральный датчик тока Allegro ACS712, принцип его работы, основанный на эффекте Холла, характеристики и способ подключения к микроконтроллеру для измерения постоянного тока. Статья разделена на две части: первая посвящена устройству и характеристикам датчика, вторая – интерфейсу с микроконтроллером и работе с датчиком.

Датчик тока ACS712 основан на принципе, открытом в 1879 году Эдвином Холлом (Edwin Hall), и названным его именем.

Эффект Холла состоит в следующем: если проводник с током помещен в магнитное поле, то на его краях возникает ЭДС, направленная перпендикулярно, как к направлению тока, так и к направлению магнитного поля. Эффект иллюстрируется Рисунком 2.

Через тонкую пластину полупроводникового материала, называемую элементом Холла, протекает ток I. При наличии магнитного поля на движущиеся носители заряда (электроны) действует сила Лоренца, искривляющая траекторию движения электронов, что приводит к перераспределению объемных зарядов в элементе Холла.

Вследствие этого на краях пластины, параллельных направлению протекания тока, возникает ЭДС, называемая ЭДС Холла. Эта ЭДС пропорциональна векторному произведению индукции B на плотность тока I и имеет типовое значение порядка нескольких микровольт.

Рисунок 2. Эффект Холла.

Микросхема ACS712 выпускается в миниатюрном 8-выводном корпусе SOIC для поверхностного монтажа (Рисунок 3). Она состоит из прецизионного линейного датчика Холла с малым напряжением смещения и медного проводника, проходящего у поверхности чипа и выполняющего роль сигнального пути для тока (Рисунок 4).

Протекающий через этот проводник ток, создает магнитное поле, воспринимаемое встроенным в кристалл элементом Холла. Сила магнитного поля линейно зависит от проходящего тока.

Встроенный формирователь сигнала фильтрует создаваемое чувствительным элементом напряжение и усиливает его до уровня, который может быть измерен с помощью АЦП микроконтроллера.

Рисунок 3. Микросхема ACS712 в корпусе SOIC.
Рисунок 4. Внутренняя конструкция датчика тока ACS712. Виден U-образный медный проводник проходящий вокруг элемента Холла.

На Рисунке 5 показано расположение выводов ACS712 и типовая схема его включения. Выводы 1, 2 и 3,4 образуют проводящий путь для измеряемого тока с внутренним сопротивлением порядка 1.2 мОм, что определяет очень малые потери мощности.

Его толщина выбрана такой, чтобы прибор выдерживал силу тока в пять раз превышающую максимально допустимое значение. Контакты силового проводника электрически изолированы от выводов датчика (выводы 5 – 8). Расчетная прочность изоляции составляет 2.

1 кВ с.к.з.

Рисунок 5. Расположение выводов интегрального датчика ACS712 и типовая схема включения.

В низкочастотных приложениях часто требуется включить на выходе устройства простой RC фильтр, чтобы улучшить отношение сигнал-шум. ACS712 содержит внутренний резистор RF, соединяющий выход встроенного усилителя сигнала со входом выходной буферной схемы (см. Рисунок 6).

Один из выводов резистора доступен на выводе 6 микросхемы, к которому подключается внешний конденсатор CF.

Следует отметить, что использование конденсатора фильтра приводит к увеличению времени нарастания выходного сигнала датчика и, следовательно, ограничивает полосу пропускания входного сигнала.

Максимальная полоса пропускания составляет 80 кГц при емкости фильтрующего конденсатора равной нулю. С ростом емкости CF полоса пропускания уменьшается. Для снижения уровеня шума при номинальных условиях рекомендуется устанавливать конденсатор CF емкостью 1 нФ.

Рисунок 6. Функциональная схема датчика тока ACS712.

Чувствительность и выходное напряжение ACS712

Выходное напряжение датчика пропорционально току, протекающему через проводящий путь (от выводов 1 и 2 к выводам 3 и 4). Выпускается три варианта токового датчика для разных диапазонов измерения:

  • ±5 А (ACS712-05B),
  • ±20 А (ACS712-20B),
  • ±30 А (ACS712-30A)

Соответствующие уровни чувствительности составляют 185 мВ/А, 100 мА/В и 66 мВ/A. При нулевом токе, протекающем через датчик, выходное напряжение равно половине напряжения питания (Vcc/2). Необходимо заметить, что выходное напряжение при нулевом токе и чувствительность ACS712 пропорциональны напряжению питания. Это особенно полезно при использовании датчика совместно с АЦП.

Точность любого АЦП зависит от стабильности источника опорного напряжения. В большинстве схем на микроконтроллерах в качестве опорного используется напряжение питания.

Поэтому при нестабильном напряжении питания измерения не могут быть точными.

Однако если опорным напряжением АЦП сделать напряжение питания датчика ACS712, его выходное напряжение будет компенсировать любые ошибки аналого-цифрового преобразования, обусловленные флуктуациями опорного напряжения.

Рассмотрим эту ситуацию на конкретном примере. Допустим, что для опорного напряжения АЦП и питания датчика ACS712 используется общий источник Vcc = 5.0 В. При нулевом токе через датчик его выходное напряжение составит Vcc/2 = 2.5 В.

Если АЦП 10-разрядный (0…1023), то преобразованному выходному напряжению датчика будет соответствовать число 512. Теперь предположим, что вследствие дрейфа напряжение источника питания установилось на уровне 4.5 В. Соответственно, на выходе датчика будет 4.5 В/2 = 2.

25 В, но результатом преобразования, все равно, будет число 512, так как опорное напряжение АЦП тоже снизилось до 4.5 В. Точно также, и чувствительность датчика снизится в 4.5/5 = 0.9 раз, составив 166.5 мВ/А вместо 185 мВ/А.

Как видите, любые колебания опорного напряжения не будут источником ошибок при аналого-цифровом преобразовании выходного напряжения датчика ACS712.

На Рисунке 7 представлены номинальные передаточные характеристики датчика ACS712-05B при напряжении питания 5.0 В. Дрейф выходного напряжения в рабочем диапазоне температур минимален благодаря инновационной технологии стабилизации.

Рисунок 7. Зависимость выходного напряжения ACS712-05B от измеряемого тока при напряжении питания 5.0 В и различных рабочих температурах.

Часть 2 – Подключение датчика к микроконтроллеру и работа с ним

Для комментирования материалов с сайта и получения полного доступа к нашему форуму Вам необходимо зарегистрироваться.
Фрагменты обсуждения: Полный вариант обсуждения »
  • В статье вы говорите о возможном 5-ти кратном превышении максимального тока через ACS712. И это через корпус SO8? Возьмем модификацию на 30А, умножим на 5 получим 150А. К примеру ограничение максимального тока у транзисторов IFRP3205 ТО247 обусловлено сечением выводов и составляет 100А на корпус(и это при скважности 50%), а сечение выводов корпуса ТО247 больше пары выводов SO8? А ACS712 измеряет постоянный ток где скважность по сути 100%. Если я не прав то где подвох?
  • Подвох в том, что превышение рабочего тока – аварийный режим. Макс.импульс не должен быть более 100А 0.1с. Но медь выдержит импульс Ip*5 (т.е. до 150А без разрушения, на 30А-версии), который должна пресечь защита схемы.
  • Один существенный недостаток датчика тока – это нулевое значение тока в точке половины питания. Если использовать процессор на 5В опорного, то тогда на нулевую точку не влияет изменение напряжения питания (напряжение питания датчика тоже должно быть от того же источника). Если Vref процессора на 3,3В то точность значительно уменьшается в зависимости от изменения напряжения питания.
  • Как то я пропустил 20А через два кд212. Они не сгорели, но от перегрева отпаялись и выпали из платы. Из оргстекла на столе еле их выковырял – вплавились. Блок былсамодельный, 213-х не было а испытать хотелось. УУшёл блок в защиту по чрезмерному открытию ключа. Здесь, боюсь всё просто сплавится.
  • Все мы когда то ошибались. Но сейчас поумнели и не будем датчики тока таким образом испытывать, а сначала почитаем манул. 🙂

При перепечатке материалов с сайта прямая ссылка на РадиоЛоцман обязательна.

Приглашаем авторов статей и переводов к публикации материалов на страницах сайта.

Источник: https://www.rlocman.ru/shem/schematics.html?di=113339

Ссылка на основную публикацию
Adblock
detector