霍爾傳感器應(yīng)用非常廣泛,本文以A3144開(kāi)關(guān)型霍爾傳感器為例,介紹霍爾效應(yīng)傳感器以及A3144與Arduino UNO的連接,通過(guò)紅色LED閃爍檢測(cè)其附近是否有磁場(chǎng)存在。項(xiàng)目BOM如下:
A3144霍爾傳感器 x1
Arduino UNO開(kāi)發(fā)板 x1
紅色LED x1
220歐姆電阻 x1
面包板 x1
跳線 若干
A3144霍爾傳感器
霍爾傳感器(Hall Effect Sensor)是根據(jù)霍爾效應(yīng)制作的一種磁場(chǎng)傳感器,每一側(cè)都可以檢測(cè)到一個(gè)特定的極點(diǎn),具有無(wú)觸點(diǎn),在開(kāi)關(guān)狀態(tài)時(shí)無(wú)火花,不產(chǎn)生干擾,使用壽命長(zhǎng),靈敏度高等特點(diǎn)。由于它適用于晶體管邏輯,因此可以輕松地與微控制器接口,應(yīng)用非常廣泛。

霍爾效應(yīng)傳感器有兩種主要類型,一種提供模擬輸出,另一種提供數(shù)字輸出。A3144霍爾傳感器是Aleg MicroSystems生產(chǎn)的寬溫?cái)?shù)字輸出傳感器,由電壓調(diào)整電路、反相電源保護(hù)電路、霍爾元件、溫度補(bǔ)償電路、微信號(hào)放大器、施密特觸發(fā)器和OC門(mén)輸出級(jí)構(gòu)成,通過(guò)使用上拉電路可以將其輸出接人CMOS邏輯電路。該芯片具有尺寸小、穩(wěn)定性好、靈敏度高等特點(diǎn):
- 汽車級(jí)或工業(yè)應(yīng)用極的穩(wěn)定性和溫度特性
- 4.5V至24V工作電壓,僅需穩(wěn)壓電源
- 集電極開(kāi)路25mA輸出,與數(shù)字邏輯兼容
- 電池反接保護(hù)
- 可以檢測(cè)市面上絕大多數(shù)的小型永磁體
- 體積小
- 耐物理壓力
- 工作溫度范圍可達(dá)-40℃~150℃。
連接A3144與Arduino
A3144有+5VCC、GND、Signal三個(gè)引腳,如果檢測(cè)到磁體輸出將變低電平,否則輸出將保持高電平。

?
A3144與Arduino UNO開(kāi)發(fā)板的連接非常簡(jiǎn)單,只要將其信號(hào)引腳與Arduino任意數(shù)字引腳連接,就可以讀取傳感器的狀態(tài)了。
本項(xiàng)目的代碼如下:
const int hallPin = 2 ; // initializing a pin for the sensor output
const int ledPin = 13 ; // initializing a pin for the led. Arduino has built in led attached to pin 13
// variables will change
int hallState = 0 ; // initializing a variable for storing the status of the hall sensor.
void setup ( ) {
pinMode ( ledPin , OUTPUT ) ; // This will initialize the LED pin as an output pin :
pinMode ( hallPin , INPUT ) ; // This will initialize the hall effect sensor pin as an input pin to the Arduino :
Serial.begin( 9600 ) ;
Serial.println ("HALL SESNOR WITH ARDUINO") ;
Serial.println ("Testing the analog hall sensor module:");
}
void loop ( ) {
hallState = digitalRead ( hallPin ) ; // reading from the sensor and storing the state of the hall effect sensor :
if ( hallState == LOW ) { // Checking whether the state of the module is high or low
Serial.println ("The state of the analog hall module is high");
digitalWrite ( ledPin , HIGH ) ; // turn on the LED if he state of the module is high
}
else {
digitalWrite ( ledPin , LOW ) ; // otherwise turn off the LED :
Serial.println ("The state of the analog hall module is low ") ;
}

?
將這些代碼上傳到Arduino IDE后,就可以讀取傳感器的狀態(tài)數(shù)據(jù)了。磁體靠近A3144霍爾傳感器,LED將點(diǎn)亮,離開(kāi)后將熄滅。也可將LED換成蜂鳴器,磁體靠近A3144霍爾傳感器,蜂鳴器將鳴響,離開(kāi)后將靜默。
審核編輯:湯梓紅
-
接口
+關(guān)注
關(guān)注
33文章
8932瀏覽量
153175 -
霍爾傳感器
+關(guān)注
關(guān)注
28文章
752瀏覽量
64094 -
Arduino
+關(guān)注
關(guān)注
188文章
6490瀏覽量
190058
發(fā)布評(píng)論請(qǐng)先 登錄
轉(zhuǎn):開(kāi)源基于Arduino的空氣檢測(cè)傳感器設(shè)計(jì)方案
友善UNO Dock適用NanoPi NEO/Arduino UNO
UNO Dock V2.0 for NanoPi NEO,arduino板,兼容arduino UNO板
arduino UNO采集多個(gè)姿態(tài)傳感器信息
怎樣使用霍爾效應(yīng)傳感器和Arduino控制繼電器
Arduino雨滴傳感器的使用示例代碼免費(fèi)下載

霍爾傳感器原理、典型應(yīng)用及與Arduino的接口

將Arduino uno與PIR運(yùn)動(dòng)傳感器連接

使用Arduino Uno和PIR傳感器的社交距離項(xiàng)目

帶有arduino uno的超聲波傳感器

與Arduino Uno接口超聲波傳感器開(kāi)源

Arduino Uno LED閃爍代碼

使用Arduino Uno制作溫度和濕度傳感器

使用霍爾傳感器和磁鐵的Arduino車速表

Arduino UNO和帶繼電器的振動(dòng)傳感器

評(píng)論