ACS712:電流傳感器模塊

ACS712芯片

模塊 ACS712是一種經濟的解決方案,能夠測量電流 在您的DIY電路中。 作為製造商,您可能需要跟踪電路中的電流。 在這種情況下,您將喜歡我介紹給您的該組件。 傳感器將檢測電流量,並提供與汲取的電流成比例的電壓輸出。 另外,由於它已經集成到模塊中,因此它很容易連接,它具有連接選項卡以及使用它所需的所有功能,而無需添加太多額外的組件。

正如您所看到的,即使您在電路中具有不同的強度,該設備的應用也很多,因為您可以選擇 不同版本的ACS712 存在。 例如,ACS712-05A,ACS712-20A,ACS712-30A等分別適用於5A,20A和30A的電流範圍。

霍爾效應

霍爾效應

維基百科

El 霍爾效應使ACS712發揮作用。 有了它,您就可以測量磁場和電流。 當電流流過霍爾傳感器,並且接近垂直流向傳感器的磁場時,它將產生與磁場強度和電流的乘積成比例的輸出電壓。 因此,在知道磁場的情況下,可以測量導體或線圈中的電流值。

霍爾效應應用 它們很多,從金屬探測器,電流測量,磁場測量到非接觸信號發射器,金屬厚度測量等。

ACS712功能

acs712模塊

El ACS712模塊非常簡單基於霍爾效應,它具有非常簡單的引腳排列。 一方面,您會看到三個引腳;另一方面,您會看到一個連接選項卡,其中包含用於測量線路電流強度的兩條線。 這三個引腳是連接電源的地方。 如上圖所示,從左到右,您有Vcc,在中間測量它的輸出以及最右邊的GND。

根據型號,您可以測量一個或另一個以安培為單位的電流強度, 三個版本 基本ACS712:

  • ACS712ELCTR-05B-T:達到最大耐受強度的-5和5A。 靈敏度為185mV / A。
  • ACS712ELCTR-20A-T:在這種情況下,其範圍為-20至20A,靈敏度為100mV /A。
  • ACS712ELCTR-30A-T:增加到-30至30A的範圍,靈敏度為66mV /A。

一旦知道了這一點,就必須牢記在出口處會為您提供電壓或 如果施加的電流為2.5A,則為0v電壓。 從那裡開始,取決於它是負還是正,它將從該電壓上升或下降。 通過在縱坐標和橫坐標上放置電壓和電流,可以在圖形上繪製一條直線,斜率的斜率是這些模塊中每個模塊的靈敏度。

因此,如果我們知道它是2.5伏,則可以應用公式V = SI + 2.5。 其中S是等於靈敏度的斜率。 解決這個問題作為強度的函數,可以說是 I = V-2.5 /靈敏度。 也就是說,電壓減去2.5並除以靈敏度。 您必須考慮到這一點,以便在以後對Arduino微控制器進行編程時對其進行校準。

引腳排列,數據表以及購買地點

您與Arduino的連接, 由於引腳排列,它非常簡單,只需連接電路板的GND引腳 Arduino UNO 帶有ACS712模塊的GND,帶有模塊Vcc的Arduino的5v引腳和帶有Arduino輸入之一(例如A0)的中央(輸出)。 這樣一來,在沒有連接電路的情況下,電路就已經完整了,該電路可以在綠色選項卡上提供您要測量的強度。

請記住,您可以從其他品牌獲得它,我建議您 查看您的數據表 以了解有關此特定ACS712模塊可能具有的特殊特性的更多信息,儘管它們通常在所有製造商中都非常相似。如果您想查看示例,這裡有一個 Allegro數據表.

還說什麼 你可以買 在任何專業商店或許多大型在線賣家(如亞馬遜)中,價格從2歐元到11歐元(取決於型號),例如:

Arduino的應用示例

測試探針

開始使用此元素的最簡單,最推薦的示例是 將ACS712連接到您的Arduino開發板 然後為Arduino IDE生成一個簡單的代碼以進行電流測量。 從不再工作的萬用表安裝一些探頭,測試線,或者 找不到產品。,您將有一個易於使用的電流表,可以用一些小電路觸碰尖端,並確定其工作強度。 如果您不想購買或擁有探頭,則可以使用兩條絕緣性能良好且可以抵抗想要測量的強度的電纜。

請採取適當的預防措施,如果在高強度下工作,請使用絕緣元件,否則如果遭受電擊,可能會造成嚴重損壞。 始終謹慎工作...查看模塊的特性,不要超過準備的強度值或會損壞的強度值,也不要超過所選探頭或電纜的最大強度能行得通。

El 您的Arduino IDE草圖的代碼 就這麼簡單:

//Ejemplo de código para medir intensidades para un ACS712 de 5A
float Sensibilidad=0.185; //Sensibilidad en Voltios/Amperio para sensor de 5A a 185mV/A

void setup() {
  
  Serial.begin(9600);
}

void loop() {
  
  float voltajeSensor= analogRead(A0)*(5.0 / 1023.0); //Para la lectura del sensor   
  float I=(voltajeSensor-2.5)/Sensibilidad; //Fórmula para obtener la corriente o intensidad medida con las puntas conectadas al módulo ACS712
  Serial.print("La intensidad en Amperios es de: ");
  Serial.println(I,3); 
  delay(200);     
}

注意事項

記得 如果已將ACS712模塊的輸出連接到其他輸入,則必須將A0更改為適當的引腳。 如果您將模塊用於20A或30A,則必須將靈敏度常數的聲明值修改為100或66,這也是相同的。

您也可以 修改公式 因此,從測量返回的數據以安培為單位,例如mA(如果它更適合您的項目實用程序)。 您還可以修改延遲,以便根據需要控制測量,使延遲更連續或更長時間進行。 您甚至可以在代碼中應用過濾器進行測量,校準等。

需要考慮的更多事情是,如果您可以知道電壓和電流,則可以 生成公式 在用於計算其他參數的草圖代碼中,例如根據歐姆定律的電阻,您還可以在知道這些參數的情況下確定以瓦特(w)為單位的功率,等等。 您已經知道極限就是您的想像力……以及您所使用技術的極限。

你知道,如果你想 了解有關如何對Arduino進行編程的更多信息, 你有一個 PDF入門手冊 並可以在這裡免費下載。


成為第一個發表評論

發表您的評論

您的電子郵件地址將不會被發表。 必填字段標有 *

*

*

  1. 負責數據:MiguelÁngelGatón
  2. 數據用途:控制垃圾郵件,註釋管理。
  3. 合法性:您的同意
  4. 數據通訊:除非有法律義務,否則不會將數據傳達給第三方。
  5. 數據存儲:Occentus Networks(EU)託管的數據庫
  6. 權利:您可以隨時限制,恢復和刪除您的信息。