Giới thiệu module cảm biến dòng INA226
Module Cảm biến dòng INA226 I2C được sử dụng để đo dòng điện và điện áp DC của các thiết bị sử dụng công suất nhỏ với độ chính xác cao sai số chỉ 1%, cảm biến sử dụng giao tiếp I2C rất dễ kết nối và lập trình với Vi điều khiển, khả năng đo tối đa của cảm biến là 36VDC / 3.2A, thích hợp với các ứng dụng đo điện áp, dòng điện, công suất tiêu thụ của các thiết bị sử dụng điện áp DC.
INA226 có điện áp bù tối đa 10 microvolt (uV), sai số tăng tối đa 0,1% và chính xác hơn 10 lần so với các sản phẩm cạnh tranh đầu ngành. Thiết bị này là giải pháp chip đơn 16 bit hoàn chỉnh, cung cấp các phép đo dòng điện, điện áp và nguồn có thể lập trình đầy đủ cho giao diện I2C kỹ thuật số. INA226 mang lại lợi ích đáng kể cho các nhà thiết kế máy chủ, thiết bị viễn thông, máy tính, thiết bị quản lý nguồn và thiết bị kiểm tra yêu cầu đo công suất chính xác.
Chức năng các chân
- VCC : chân nguồn dương 5V
- GND: Chân cấp nguồn 0V
- DATA : Chân đọc dữ liệu cho chuẩn I2C .
- SCK : Chân tạo xung cho chuẩn I2C .
Lưu ý khi sử dụng cảm biến
- CHỈ sử dụng cảm biến trong môi trường nhiệt độ phòng hoặc thuần hơi nước
- Cảm biến có lớp bảo vệ nên có thể chôn xuống đất được.
- KHÔNG sử dụng trong môi trường nước trực tiếp
- KHÔNG dùng trong môi trường ăn mòn hoặc yếm khí lên men, ẩm mốc.
- Nếu cảm biến bị dơ có thể ngắt dây tín hiệu và nguồn và rửa cảm biến bằng nước tinh khiết, sau đó lau và để khô cảm biến là có thể sử dụng bình thường.
Thông số kỹ thuật module cảm biến dòng INA226
- Điện áp hoạt động : 2.7-5.5VDC
- Cảm biến điện áp: 0-36V
- Sử dụng : R010
- Độ lệch tối đa : 10uV
- Dòng tĩnh tối đa : 420uA
- Đơn giản hóa thiết kế không cần bộ ADC bên ngoài hoặc ghép kênh
- Khối lượng : 2.4g
- Kích thước : 21mm * 19mm
Các tính năng
- Giải pháp chip đơn với giao diện I2C hỗ trợ các phép đo dòng điện, điện áp và công suất, đơn giản hóa thiết kế bảng mạch và giải quyết các hạn chế về bố cục mà không cần bộ ghép kênh bên ngoài hoặc ADC chỉ đạt được độ chính xác cao hơn ở dòng điện thấp mà còn cho phép sử dụng điện trở shunt nhỏ hơn, do đó giảm tổn thất I*R
- Công nghệ lấy mẫu và thời gian chuyển đổi được lập trình độc lập. Không chỉ đơn giản hóa việc tùy chỉnh nhu cầu tốc độ của từng hệ thống mà còn giảm phần mềm và bộ nhớ yêu cầu
- Dòng tĩnh tối đa 420 uA và dòng tắt tối đa 2 uA hỗ trợ hoạt động hiệu quả, mặc dù INA226 tích hợp ADC và bộ ghép kênh nguồn, đồng thời tiêu thụ điện năng ít hơn 3,5% so với các giải pháp rời rạc cạnh tranh và điện áp chế độ chung 36 V (CMV) đảm bảo ít hoặc không có sự thay đổi trên toàn bộ phạm vi hoạt động, điện áp bù khác nhau, do đó đơn giản hóa việc phân tích lỗi.
Sơ đồ nguyên lý module cảm biến dòng INA226
Chương trình Test sản phẩm
Nguyên lý kết nối
Chương trình
Thư viện : INA226_WE.h
#include <Wire.h> #include <INA226_WE.h> #define I2C_ADDRESS 0x40 INA226_WE ina226 = INA226_WE(I2C_ADDRESS); void setup() { Serial.begin(9600); while (!Serial); // wait until serial comes up on Arduino Leonardo or MKR WiFi 1010 Wire.begin(); ina226.init(); /* Set Number of measurements for shunt and bus voltage which shall be averaged Mode * * Number of samples AVERAGE_1 1 (default) AVERAGE_4 4 AVERAGE_16 16 AVERAGE_64 64 AVERAGE_128 128 AVERAGE_256 256 AVERAGE_512 512 AVERAGE_1024 1024*/ //ina226.setAverage(AVERAGE_16); // choose mode and uncomment for change of default /* Set conversion time in microseconds One set of shunt and bus voltage conversion will take: number of samples to be averaged x conversion time x 2 Mode * * conversion time CONV_TIME_140 140 µs CONV_TIME_204 204 µs CONV_TIME_332 332 µs CONV_TIME_588 588 µs CONV_TIME_1100 1.1 ms (default) CONV_TIME_2116 2.116 ms CONV_TIME_4156 4.156 ms CONV_TIME_8244 8.244 ms */ //ina226.setConversionTime(CONV_TIME_1100); //choose conversion time and uncomment for change of default /* Set measure mode POWER_DOWN - INA226 switched off TRIGGERED - measurement on demand CONTINUOUS - continuous measurements (default)*/ //ina226.setMeasureMode(CONTINUOUS); // choose mode and uncomment for change of default /* Set Resistor and Current Range if resistor is 5.0 mOhm, current range is up to 10.0 A default is 100 mOhm and about 1.3 A*/ ina226.setResistorRange(0.1, 1.3); // choose resistor 0.1 Ohm and gain range up to 1.3A /* If the current values delivered by the INA226 differ by a constant factor from values obtained with calibrated equipment you can define a correction factor. Correction factor = current delivered from calibrated equipment / current delivered by INA226*/ ina226.setCorrectionFactor(0.93); Serial.println("INA226 Current Sensor Example Sketch - Continuous"); ina226.waitUntilConversionCompleted(); //if you comment this line the first data might be zero } void loop() { float shuntVoltage_mV = 0.0; float loadVoltage_V = 0.0; float busVoltage_V = 0.0; float current_mA = 0.0; float power_mW = 0.0; ina226.readAndClearFlags(); shuntVoltage_mV = ina226.getShuntVoltage_mV(); busVoltage_V = ina226.getBusVoltage_V(); current_mA = ina226.getCurrent_mA(); power_mW = ina226.getBusPower(); loadVoltage_V = busVoltage_V + (shuntVoltage_mV / 1000); Serial.print("Shunt Voltage [mV]: "); Serial.println(shuntVoltage_mV); Serial.print("Bus Voltage [V]: "); Serial.println(busVoltage_V); Serial.print("Load Voltage [V]: "); Serial.println(loadVoltage_V); Serial.print("Current[mA]: "); Serial.println(current_mA); Serial.print("Bus Power [mW]: "); Serial.println(power_mW); if (!ina226.overflow) { Serial.println("Values OK - no overflow"); } else { Serial.println("Overflow! Choose higher current range"); } Serial.println(); delay(3000); }
Liên hệ làm mạch
- Phone: 0967.551.477
- Zalo: 0967.551.477
- 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.