Giới thiệu cảm biến ACS712 20A đo dòng điện DC/AC
Cảm biến dòng điện ACS712 20A (Hall Effect Current Sensor) dựa trên hiệu ứng Hall để đo dòng điện AC/DC, cảm biến có kích thước nhỏ gọn, dễ kết nối, giá trị trả ra là điện áp Analog tuyến tính theo cường độ dòng điện cần đo nên rất dễ kết nối và lập trình với Vi điều khiển, thích hợp với các ứng dụng cần đo dòng AC/DC với độ chính xác cao.
Cảm biến được trả về tín hiệu Analog nên dễ thuận tiện cho giao tiếp với Vi điều khiển.
Chức năng các chân
- VCC: chân nguồn dương 5VDC.
- OUT: Chân nhận tín hiệu Analog.
- GND: Chân cấp nguồn 0V
Cách sử dụng
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, khi dòng điện đi từ Ip+ đến Ip- Vout sẽ ra mức điện áp tương ứng 2.5~5VDC tương ứng dòng 0~Max, nếu mắc ngược Vout sẽ ra điện thế 2.5~0VDC tương ứng với 0~(-Max).
Khi cấp nguồn 5VDC cho module khi chưa có dòng Ip (chưa có tải mắc nối tiếp) thì Vout = 2.5VDC, khi dòng Ip( dòng của tải) bằng Max thì Vout=5DC, Vout sẽ tuyến tính với dòng Ip trong khoản 2.5~5VDC tương ứng với dòng 0~Max, để kiểm tra có thể 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, khi cấp nguồn 5DC 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.5VDC, 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ẽ có độ lớn tuyến tính với dòng điện AC từ 0~5VDC tương ứng với (-Max)~Max (dòng xoay chiều), để kiểm tra dùng đồng hồ VOM thang đo AC đo Vout.
Thông số kỹ thuật module cảm biến ACS712 20A đo dòng điện
- Điện áp hoạt động : 5V
- Dòng điện : Nhỏ
- Công suất : Nhỏ
- Chuẩn truyền : Analog (A0)
- Nhiệt độ hoạt động : -40°C – 85°C
- Dãy hoạt động : 0 – 20A
- Dãy độ phân giải : 96mV/A – 104mV/A
- Số chân : 3
- Thời gian chuyển đổi : 5µs
- Điện trở trong : 1.2mΩ
- Loại : Module
- Kiểu chân : TTL
- Kích thước : 32mm*14mm
Chương trình Test sản phẩm
Nguyên lý kết nối
Chương trình
void setup() { Serial.begin(9600); //Start Serial Monitor to display current read value on Serial monitor } void loop() { unsigned int x=0; float AcsValue=0.0,Samples=0.0,AvgAcs=0.0,AcsValueF=0.0; for (int x = 0; x < 150; x++){ //Get 150 samples AcsValue = analogRead(A0); //Read current sensor values Samples = Samples + AcsValue; //Add samples together delay (3); // let ADC settle before next sample 3ms } AvgAcs=Samples/150.0;//Taking Average of Samples //((AvgAcs * (5.0 / 1024.0)) is converitng the read voltage in 0-5 volts //2.5 is offset(I assumed that arduino is working on 5v so the viout at no current comes out to be 2.5, which is the out offset. If your arduino is working on different voltage than //you must change the offset according to the input voltage) //(96mV - 104mV) is rise in output voltage when 20A current flows at input AcsValueF = (2.5 - (AvgAcs * (5.0 / 1024.0))); AcsValueF = AcsValueF*1000/100; Serial.print(AcsValueF);//Print the read current on Serial monitor delay(50); }
Liên hệ làm mạch
- Phone: 0967.551.477
- Zalo: 0967.551.477
- Email: dientunhattung@gmail.com
- Chi tiết : Nhận làm mạch và hướng dẫn đồ án sinh viên
Tham khảo chương trình mẫu và thông tin linh kiện chi tiết tại:
Reviews
There are no reviews yet.