Ardunio使用霍尔磁力传感器

我买的37款传感器套件中有3个 霍尔元件,分别是线性霍尔传感器、霍尔磁力传感器,模拟霍尔传感器,它们的实物图分别如下图所示:
 

这三种传感器中,模拟霍尔和霍尔磁力传感器的S引脚输出的是模拟值,线性霍尔的A0引脚输出的是模拟值,D0引脚输出的是开关量。
采用下面的代码分别对这三种传感器的模拟值引脚输出进行监测。

const int buttonPin = A0;
int inputValue = 0;

void setup() {
pinMode(buttonPin, INPUT);
digitalWrite(buttonPin,LOW);
Serial.begin(9600);
}

void loop() {
inputValue = analogRead(buttonPin);
Serial.println(inputValue);
}

将输出值放到matlab中创建图形,图形分别如下:
模拟霍尔传感器的模拟引脚输出图形如下,这是用手拿着磁铁从远及近靠近传感器产生的模拟值图形,曲线最低处是磁铁与传感器距离最近时的输出。
  霍尔磁力传感器的模拟引脚输出图形如下,这是用手拿着磁铁多次从远及近靠近传感器产生的模拟值图形,曲线最低处是磁铁与传感器距离最近时的输出。
线性霍尔传感器的模拟引脚输出图形如下,这是用手拿着磁铁多次从远及近靠近传感器产生的模拟值图形,曲线最低处是磁铁与传感器距离最近时的输出。
  由于线性霍尔传感器和霍尔磁力传感器上自带有测试LED(线性霍尔传感器上带绿色LED,霍尔磁力传感器上带红色LED),当传感器接近磁铁时,测试LED灯会自动变亮,所以就没有写另外的测试程序了(如果要写的话,就是检测传感器模拟引脚值,当小于某一值时点亮LED灯)。只是做了一个简单的测试视频,视频如下:
PS:模拟霍尔传感器正面接触磁铁时,模拟引脚输出值最低(下左图),反面接触时最高(下右图),另外两类传感器与模拟霍尔传感器正好相反。
  
 

 

你可能感兴趣的:(Arduino)