Hướng dẫn sử dụng cảm biến dòng điện ACS712 với Arduino

I. Giới thiệu

Cảm biến dòng điện ACS712  là một IC cảm biến dòng tuyến tính dựa trên hiệu ứng Hall. ACS xuất ra 1 tín hiệu analog, Vout biến đổi tuyến tính theo sự thay đổi của dòng điện được lấy mẫu thứ cấp DC (hoặc AC), trong phạm vi đã cho. Tụ (Cf theo sơ đồ) được dùng với mục đích chống nhiễu và có giá trị tùy thuộc vào từng mục đích sử dụng.

II. Đặc điểm nổi bật

  • Thời gian tăng của đầu ra để đáp ứng với đầu vào là 5µs.
  • Điện trở dây dẫn trong là 1.2mΩ.
  • Nguồn vận hành đơn là 5V.
  • Độ nhạy đầu ra từ 63-190mV/A.
  • Điện áp ra cực kỳ ổn định.

III. Thông số kỹ thuật

Đường tín hiệu analog có độ nhiễu thấp
 
Thời gian chuyển đổi
5µs
Điện trở trong
1.2mΩ
Sử dụng nguồn điện
5V
Độ nhạy đầu ra
63 – 190 mV/A
Nhiệt độ hoạt động
-40 – 85 0C
Điện áp cách ly tối đa
2100V (RMS)
Độ nhạy đối với các loại module
 
  • ACS 712-05B (5Ampe):   180 – 190 mV/A
  • ACS 712-20A (20Ampe): 96 – 104 mV/A
  • ACS 712-30A (30Ampe): 64 – 68 mV/A

IV. Sơ đồ chân ACS712

V. Cách sử dụng module ACS712 5A

1. Đo dòng điện​​ DC​

Khi đo DC phải mắc tải nối tiếp Ip+ và Ip- đúng chiều, dòng điện đi từ Ip+ đến Ip- để Vout ra mức điện thế 2.5 - 5V tương ứng dòng 0 - 5A, nếu mắc ngược Vout sẽ ra điện thế 2.5V đến 0V tương ứng với 0A đến -5A.

Cấp nguồn 5v cho module khi chưa có dòng Ip (chưa có tải mắc nối tiếp với domino), thì Vout=2.5v. Khi dòng Ip( dòng của tải) bằng 5A thì Vout=5v, Vout sẽ tuyến tính với dòng Ip , trong khoản 2.5V đến 5V tương ứng với dòng 0 đến 5A.

Để kiểm tra dùng đồng hồ VOM thang đo DC đo Vout.

2. Đo dòng điện AC

Khi đo dòng điện AC, do dòng điện AC không có chiều nên không cần quan tâm chiều. 

Cấp nguồn 5v cho module khi chưa có dòng Ip (chưa có tải mắc nối tiếp với domino) , thì Vout=2.5v. khi có dòng xoay chiều Ip(dòng AC) do dòng xoay chiều độ lớn thay đổi liên tục theo hàm sin, nên điện thế Vout sẽ là điện thế xoay chiều hình sin có độ lớn tuyến tính với dòng điện AC , 0 đến 5V(thế xoay chiều xoay chiều) tương ứng với -5A đến 5A (dòng xoay chiều). 

Để kiểm tra dùng đồng hồ VOM thang đo AC đo Vout.

VI. Ưu điểm của ACS712

  • Đường tín hiệu analog có độ nhiễu thấp.
  • Thời gian tăng của đầu ra để đáp ứng với đầu vào là 5µs.
  • Điện trở dây dẫn trong là 1.2mΩ.
  • Nguồn :  5VDC.
  • Độ nhạy đầu ra từ 63-190mV/A.
  • Điện áp ra cực kỳ ổn định.
  • ACS 712 5A (x05B):
  • Ip: 5A đền -5A
  • Độ nhạy: 180 - 190 mV/A.

​Tài liệu tham khảo :

Datasheet ACS712

VII. Code đọc giá trị

int OutPin = A0; // Lưu chân ra của cảm biến
void setup() {
  //Đối với một chân analog bạn không cần pinMode
  Serial.begin(9600);//Mở cổng Serial ở mức 9600
}

void loop() {
  int value = analogRead(OutPin);     // Ta sẽ đọc giá trị hiệu điện thế của cảm biến
                                      // Giá trị được số hóa thành 1 số nguyên có giá trị
                                      // trong khoảng từ 0 đến 1023
  float volt = value / 5.0 * 20.0;  // Bây giờ ta chỉ cần tính ra giá trị dòng điện
                                      // Với mạch 30A ta sửa lại thành * 30.0
  Serial.println(volt);//Xuất ra serial Monitor. Nhấn Ctrl+Shift+M để xem                                     
  delay(10);
}

VIII. Kết luận

Chúc các bạn thành công. Đây là một bài chủ yếu về điện tử căn bản, nhưng khi đưa vào Arduino rất đơn giản, bạn có thấy thế không ? Rate node cho mình nhé!

lên
26 thành viên đã đánh giá bài viết này hữu ích.
Từ khóa: 
Các dự án được truyền cảm hứng

Select any filter and click on Apply to see results

Các bài viết cùng tác giả

Hướng dẫn điều khiển động cơ bước với thư viện Accel Stepper và driver điều khiển động cơ bước A4988 hoặc DRV8825

Mình thấy có nhiều bạn hỏi về stepper và cách điều khiển nó. Đồng thời thấy vấn đề điều khiển động cơ bước là một vấn đề kinh điển nhưng lại chưa có trên Cộng đồng. Ngoài ra, vì chức năng điểm cộng đồng khá hay và mình cũng muốn có quà nên hôm nay mình sẽ hướng dẫn rất kỹ với các bạn! Thư viện mình dùng là thư viện AccelStepper chứ không phải thư viện stepper mặc định của Arduino nên có thể điều khiển đồng thời nhiều stepper và kết hợp với các thư viện bất đồng bộ khác.

lên
54 thành viên đã đánh giá bài viết này hữu ích.

Intel Edison là gì? Cùng bắt đầu với tôi nào.

Mới có cơ hội được vọc Intel Edison từ chị gái nên hôm nay mình tranh thủ viết bài review về nó để các bạn cùng có cái nhìn chung về board Intel Edison này. Tiếc là mình đang không có máy ảnh + điện thoại trong tay nên sẽ dùng ảnh trên mạng để trình bày nhé. Mình sẽ hướng dẫn các bạn bắt đầu với mạch này từ những bước đơn giản đầu tiên. Hy vọng qua bài viết này, newbie sẽ có cái nhìn toàn diện hơn với Intel Edison.

lên
15 thành viên đã đánh giá bài viết này hữu ích.