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

Для этого проекта мы используем микроконтроллерную плату Arduino UNO и модуль линейного магнитного датчика Холла KY-024. Датчик поставляется с двумя встроенными светодиодами, один для индикации питания, а другой для индикации наличия магнитного поля.
Датчик Холла KY-024 используется для обнаружения магнитного поля, создаваемого магнитом.

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

Схема подключения при конфигурации с аналоговым выходом следующая:

Код программы для конфигурации с цифровым выходом следующий:
int val = 0 ;
void setup()
{
Serial.begin(9600);
pinMode(4,INPUT);
pinMode(9,OUTPUT);
pinMode(10,OUTPUT);
}
void loop()
{
val = digitalRead(4);
Serial.println(val);
delay(100);
if(val == 1 )
{
digitalWrite(9,HIGH);
tone(10, 300);
Serial.println(" Magnet IS Detected ");
}
else
{
digitalWrite(9,LOW);
noTone(10);
Serial.println(" Magnet IS not Detected ");
}
}
Код программы для конфигурации с аналоговым выходом следующий:
void setup()
{
Serial.begin(9600);
pinMode(9,OUTPUT);
pinMode(10,OUTPUT);
}
void loop()
{
int s1=analogRead(A0);
Serial.println(s1);
delay(500);
if( s1 < 480 )
{
digitalWrite(9,HIGH);
tone(10, 300);
Serial.println(" Magnet IS Detected ");
}
else
{
digitalWrite(9,LOW);
noTone(10);
Serial.println(" Magnet IS not Detected ");
}
}
Когда вы поместите магнит рядом с датчиком, раздастся звуковой сигнал и загорится светодиод. То есть, он обнаружит присутствие магнитного поля рядом с собой. Выходные данные также отображаются на экране последовательного монитора Arduino.



© digitrode.ru