Как подключить датчик холла к компьютеру

Обновлено: 04.07.2024

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

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

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

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

Полная схема подключения двигателя в роли энкодера. Полная схема подключения двигателя в роли энкодера.

Питание датчиков Холла 5 вольт, но обязательно через резистор 1 ком! Ток не должен превышать пяти миллиампер. Сигналы с датчиков Холла подключены к операционному усилителю LM358 который в данном случае работает в режиме компаратора. Он и формирует логические сигналы на своих выходах, напряжением близким к напряжению питания, а это 5 вольт. Напряжения же с выходов датчиков Холла едва достигают 0,07 вольт. Ни один микроконтроллер на цифровых входах не воспримет такой сигнал, поэтому и применен операционный усилитель. Выходы микросхемы это выводы 1 и 7, в данном случае они подключены к светодиодам для визуализации процесса. В реальной схеме они будут подключаться к ногам микроконтроллера. На всякий случай упомяну, что микросхема создаёт подтяжку на минус питания, так что резистора подтяжки не потребуется.

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

Кусок схемы микросхемы драйвера двигателя BD7956FS. Кусок схемы микросхемы драйвера двигателя BD7956FS.

Обратите внимание как подключены датчики Холла. В моей схеме ровно такое же подключение.

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

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

ЛБП с энкодерами из двигателей. Слева регулировка напряжения, справа регулировка тока. ЛБП с энкодерами из двигателей. Слева регулировка напряжения, справа регулировка тока.

Сигналы с двигателей усиливаются четырехканальным операционным усилителем LM324, далее обрабатываются контроллерами Attiny13 которые формируют опорные напряжения. Далее опорные напряжения подаются на операционный усилитель LM358 который все согласует с понижающим преобразователем XL4016 .

По большому счету получается вечный энкодер за копейки. CD-ROM сейчас ничего не стоит, можно и даром найти, или на барахолке купить рублей за 100. Но в более новых сидюках использовали движки без датчиков Холла, так что желательно брать постарее.

И ещё, ближайший заводской аналог такого энкодера, стоит более 1000 росийских. Единственное, он оптический, а не магнитный.

Увидеть как это работает можно в этом видео.

На этом думаю всё, ссылочки на такие моторчики будут под видео на ютубе. Всем успехов! Пока!

Принцип действия датчиков Холла основан на так называемом "эффекте Холла", открытым Эдвином Холлом (Edwin Hall) в 1869 году. Этот эффект гласит: "эффект Холла основан на явлении возникновения поперечной разности потенциалов (называемой также холловским напряжением) при помещении проводника с постоянным током в магнитное поле".

Подключение датчика Холла к микроконтроллеру AVR ATmega16: внешний вид конструкции

В данной статье этот эффект будет разобран с практической точки зрения. Мы рассмотрим подключение датчика Холла к микроконтроллеру ATmega16 (семейство AVR) и будем использовать светодиод для демонстрации эффекта Холла когда будем подносить магнит к датчику Холла.

Что такое эффект Холла

Эффект Холла можно рассмотреть с точки зрения движения зарядов (заряженных частиц) в магнитном поле. Чтобы понять на практике как это происходит подсоединим батарею к проводнику как показано на рисунке ниже. Электрический ток (i) в этом случае начнет протекать по проводнику от положительного контакта батареи к ее отрицательному контакту.

Схема для пояснения эффекта Холла

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

При отсутствии магнитного поля напряжение на поперечных концах проводника равно 0

Теперь создадим магнитное поле над проводником как показано на следующем рисунке.

При наличии магнита на поперечных концах проводниках появляется напряжение Холла

И если в этот момент времени мы измерим напряжение на концах проводника (поперечных прохождению тока), то оно будет отлично от нуля. Это напряжение и называется "напряжением Холла", а само это явление называется "эффектом Холла".

Необходимые компоненты

  1. Микроконтроллер ATmega16 (купить на AliExpress).
  2. Программатор AVR-ISP (купить на AliExpress), USBASP (купить на AliExpress) или другой подобный.
  3. Кварцевый генератор 16 МГц (купить на AliExpress).
  4. Датчик Холла (купить на AliExpress).
  5. Конденсатор 100 нФ (2 шт.) (купить на AliExpress).
  6. Конденсатор 22 пФ (2 шт.) (купить на AliExpress).
  7. Источник питания с напряжением 5 Вольт.
  8. Кнопка.
  9. Светодиод (купить на AliExpress).
  10. Макетная плата.
  11. Соединительные провода.

Работа схемы

Схема устройства приведена на следующем рисунке.

Схема подключения датчика Холла к микроконтроллеру AVR ATmega16

Программирование микроконтроллера ATmega16 для взаимодействия с датчиком Холла

Программировать микроконтроллер ATmega16 мы будем с помощью программатора USBASP и программы Atmel Studio7.0. Полный текст программы приведен в конце данной статьи.

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

Определим входной контакт для чтения данных от датчика Холла.

Зададим необходимые параметры для этого вывода микроконтроллера ATmega16.

Если магнит находится рядом с датчиком Холла, то в зависимости от значения на выходе контакта PORTA0 включаем или выключаем светодиод.

Применения датчика Холла

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

  • бесконтактный датчик (приближения) в мобильных телефонах;
  • механизм переключения передач в самоходных транспортных средствах;
  • контроль (инспектирование) различных труб и трубопроводов;
  • контроль скорости вращения.

Исходный код программы на языке С (Си) с пояснениями

Программа для рассматриваемой схемы представлена следующим фрагментом кода на языке С (Си). Комментарии к коду программу поясняют принцип работы отдельных команд.

ИСПОЛЬЗОВАНИЕ ДАТЧИКА ХОЛЛА С ARDUINO

По виду они обычно выглядят как плата с 3 контактами: один контакт сигнал и другие 2 для питания датчика. Это существенно упрощает подключение модуля к любому микроконтроллеру или исполнительной схеме.

Схема принципиальная

ИСПОЛЬЗОВАНИЕ ДАТЧИКА ХОЛЛА С ARDUINO

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

LED можно подсоединить сразу в Arduino с положительной ногой в pin 13 Arduino и другой ногой в земляной штырь без резистора, потому что arduino имеет внутренний резистор прикрепленный к pin 13.

Требуемые компоненты для схемы

Для построения этого проекта требуются следующие компоненты.

  • Датчик холла
  • Arduino Uno
  • LED
  • Магнит
  • Провода

ИСПОЛЬЗОВАНИЕ ДАТЧИКА ХОЛЛА С ARDUINO

Теперь можем перейти к коду для этого проекта.

Код прошивки МК

В функции настройки void мы объявляем pinmode для контактов Arduino, к которому подключены светодиод и датчик Холла.

Далее идет функция void loop, задача здесь как если бы надо было использовать кнопку для управления светодиодом с Arduino между ними. Читаем выход датчика холла и храним в переменной с именем state.

Полный код для этого проекта показан далее:

int hallSensorPin = 2;
int ledPin = 13;
int state = 0;

void setup() pinMode(ledPin, OUTPUT);
pinMode(hallSensorPin, INPUT);
>

void loop()

state = digitalRead(hallSensorPin);

if (state == LOW) <
digitalWrite(ledPin, HIGH);
>
else digitalWrite(ledPin, LOW);
>
>

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

Электромагнитное устройство, именуемое датчиком Холла (далее ДХ), применяется во многих приборах и механизмах. Но наибольшее применение ему нашлось в автомобилестроении. Практически во всех моделях отечественного автопрома (ВАЗ 2106, 2107, 2108 и т.д.) бесконтактная система зажигания для бензинового двигателя управляется этим датчиком. Соответственно, при его выходе из строя возникают серьезные проблемы с работой двигателя. Чтобы не ошибиться при диагностике, необходимо понимать принцип работы датчика, знать его конструкцию и методы тестирования.

Кратко о принципе работы

В основу принципа действия датчика зажигания положен эффект Холла, получивший свое название в честь американского физика, открывшего это явление в 1879 году. Подав постоянное напряжение на края прямоугольной пластины (А и В на рис. 1) и поместив ее в магнитное поле, Эдвин Холл обнаружил разность потенциалов на двух других краях (С и D).

Демонстрация эффекта Холла

Рис .1. Демонстрация эффекта Холла

В соответствии с законами электродинамики, сила Лоренца воздействует на носители заряда, что и приводит к разности потенциалов. Величина напряжения Uхолла довольно мала, в пределах от 10 мкВ до 100 мВ, она зависит как от силы тока, так и напряженности электромагнитного поля.

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

Типы и сфера применения

Несмотря на разнообразие элементов, применяющих эффект Холла, условно их можно разделить на два вида:

Датчики тока, использующие эффект Холла, могут измерять как переменный, так и постоянный ток

  • Аналоговые, использующие принцип преобразования магнитной индукции в напряжение. То есть, полярность, и величина напряжения напрямую зависят от характеристик магнитного поля. На текущий момент этот тип приборов, в основном, применяется в измерительной технике (например, в качестве, датчиков тока, вибрации, угла поворота). Датчики тока, использующие эффект Холла, могут измерять как переменный, так и постоянный ток
  • Цифровые. В отличие от предыдущего типа датчик имеет всего два устойчивых положения, сигнализирующих о наличии или отсутствии магнитного поля. То есть, срабатывание происходит в том случае, когда интенсивность магнитного поля достигла определенной величины. Именно этот тип устройств применяется в автомобильной технике в качестве датчика скорости, фазы, положения распределительного, а также коленчатого вала и т.д.

Следует отметить, что цифровой тип включает в себя следующие подвиды:

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

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

Пример использования аналогового элемента

Рассмотрим в качестве примера конструкцию датчика тока ы основе работы которого используется эффект Холла.

Упрощенная схема датчика тока

Упрощенная схема датчика тока на основе эффекта Холла

Обозначения:

  • А – проводник.
  • В – незамкнутое магнитопроводное кольцо.
  • С – аналоговый датчик Холла.
  • D – усилитель сигнала.

Назначение ДХ в системе зажигания автомобиля

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

Принцип устройства СБЗ

Рис. 5. Принцип устройства СБЗ

Обозначения:

  • А – датчик.
  • B – магнит.
  • С – пластина из магнитопроводящего материала (количество выступов соответствует числу цилиндров).

Алгоритм работы такой схемы выгладит следующим образом:

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

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

Внешний вид датчика Холла для СБЗ ВАЗ 2110

Внешний вид датчика Холла для СБЗ ВАЗ 2110

Проявление неисправности и возможные причины

Нарушения в работе ДХ можно обнаружить по следующим косвенным признакам:

  • Происходит резкое увеличение потребления топлива. Это связано с тем, что впрыск топливно-воздушной смеси производится более одного раза за один цикл вращения коленвала.
  • Проявление нестабильной работы двигателя. Автомобиль может начать «дергаться», происходит резкое замедление. В некоторых случаях не удается развить скорость более 50-60 км.ч. Двигатель «глохнет» в процессе работы.
  • Иногда выход из строя датчика может привести к фиксации коробки передач, без возможности ее переключения (в некоторых моделях импортных авто). Для исправления ситуации требуется перезапуск мотора. При регулярных подобных случаях можно уверенно констатировать выход из строят ДП.
  • Нередко поломка может проявиться в виде исчезновения искры зажигания, что, соответственно, повлечет за собой невозможность запуска мотора.
  • В системе самодиагностики могут наблюдаться регулярные сбои, например, загореться индикатор проверки двигателя, когда он на холостом ходу, а при повышении оборотов лампочка гаснет.

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

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

Как проверить работоспособность датчика Холла?

Есть разные способы, позволяющие проверить исправность датчика СБЗ, кратко расскажем о них:

  1. Имитируем наличие ДХ. Это наиболее простой способ, позволяющий быстро провести проверку. Но его эффективности может идти речь только в том случае, если не формируется искра при наличии питания на основных узлах системы. Для тестирования следует выполнить следующие действия:
  • отключаем от трамблера трехпроводной штекер;
  • запускаем систему зажигания и одновременно с этим «коротим» проводом массу и сигнал с датчика (контакты 3 и 2, соответственно). При наличии искры на катушке зажигания, можно констатировать, что датчик СБЗ потерял работоспособность и ему необходима замена.

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

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

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

  1. Установка заведомо рабочего ДХ. Если в наличии имеется еще один однотипный датчик, или имеется возможность взять его на время, то данный вариант тоже имеет место на существование, особенно если первые два сделать затруднительно.

Ест еще один вариант проверки, по принципу напоминающий второй способ. Он может быть полезен, если под рукой нет измерительных приборов. Для тестирования понадобиться резистор номиналом 1,0 кОм, светодиод, например, из фонарика зажигалки и несколько проводков. Из всего этого набора собираем прибор в соответствии с рисунком 9.

Светоиндикаторный тестер для проверки ДХ

Рис. 9. Светоиндикаторный тестер для проверки ДХ

Читайте также: