霍尔传感器的工作原理是 Edwin Hall 在 1869 年提出的霍尔效应。提出的声明说:“霍尔效应是在导体上产生电压差(霍尔电压),横向于导体中的电流以及垂直于电流的外加磁场。”
那么,什么是最简单的陈述形式才能更好地理解它呢?在本教程中,它将通过实际示例逐步解释。此处霍尔传感器将与 Atmega16 微控制器连接,当磁铁靠近霍尔传感器时,一个 LED 将用于显示效果。
什么是霍尔效应?
霍尔效应与磁场中的移动电荷有关。为了以实际的方式理解,将电池连接到导体,如下图(a)所示。电流 (i) 将开始通过导体从电池的正极流向负极。
电子 (e - ) 的流动方向与电流的方向相反,即从电池的负极端子通过导体到电池的正极端子。此时,当我们测量导体之间的电压时,如下图(b)所示,电压为零,即电位差为零。
现在带上磁铁并在导体之间产生磁场,如下图(c)。
在这种情况下,当测量导体两端的电压时,将会产生一些电压。这种产生的电压称为“霍尔电压”,这种现象称为“霍尔效应”。
所需组件
A3144 霍尔传感器 IC
Atmega16微控制器IC
16Mhz 晶体振荡器
两个 100nF 电容器
两个 22pF 电容器
按钮
跳线
面包板
USBASP v2.0
LED(任何颜色)
电路原理图
为霍尔传感器编程 Atmega16
这里 Atmega16 使用 USBASP 和 Atmel Studio7.0 进行编程。完整的程序在项目结束时给出, 只需使用 JTAG 编程器和 Atmel Studio 7.0 上传 Atmega16 中的程序,如上一教程所述。
对 Atmega16 进行编程将很容易,并且只使用两个 PORT 引脚。一个端口引脚将用于从霍尔传感器获取读数。其他 PORT 引脚将用于连接一个 LED。首先,在程序中包含所有必要的库。
定义霍尔传感器读数的输入引脚。
#define hallIn PA0
这里霍尔传感器连接在 Atmega16 的 PORTA0 上,它被初始化用于读取状态。
DDRA=0xFE;
PINA=0x01;
如果磁铁在传感器附近,则打开 LED 或关闭 LED。检测基于 PORT 引脚的状态变化。
if(bit_is_clear(PINA,hallIn)){
PORTA=0b00000010;
}
否则{
PORTA = 0b00000000;
}
霍尔传感器的应用
霍尔传感器广泛用于需要测量磁场强度或检测磁极的任何地方。除此之外,通常可以找到很多应用程序。下面列出了一些应用程序:
作为手机中的接近传感器
汽车中的换档机构
旋转霍尔效应传感器
检查管道和管道等材料
转速检测
全部0条评论
快来发表一下你的评论吧 !