Điện tử

Thiết kế mạch đo dung lượng Pin lithium bằng Ardunio

Ngày nay các ứng dụng IoT và ô tô điện trên toàn thế giới đang thúc đẩy việc sử dụng pin Lithium-Ion / Lithium-Polymer / NiCd / NiMH , 18650 ngày càng tăng do ngày càng có nhiều thiết bị và ứng dụng sử dụng chúng, do khả năng lưu trữ năng lượng cao so với tỷ lệ kích thước . Tuy nhiên,  Việc này kéo theo rất nhiều Pin lithium kém chất lượng trên thị trường . Việc không kiểm tra chính xác dung lượng pin sẽ gây ra sai sót trong các dự án, đặc biệt là các dự án IoT trong đó các nhà thiết kế phải tính toán dung lượng của Pin chuẩn . Do đó, để tìm cách giảm thiểu rủi ro CDK sẽ Thiết kế mạch đo dung lượng Pin lithium bằng Ardunio chi tiết bên dưới.

Thiết kế mạch đo dung lượng Pin lithium bằng Ardunio
Thiết kế mạch đo dung lượng Pin lithium bằng Ardunio

Nguyên lý đo dung lượng pin lithium ?

Nếu bạn tạo ra một dòng điện không đổi từ pin trong một khoảng thời gian cụ thể, bạn sẽ có thể tính toán công suất ampe giờ thực của pin dựa trên lượng điện áp đã giảm trong thời gian đó. Để đạt được dòng tải không đổi, mạng điện trở với bộ khuếch đại thuật toán LM358 và MOSFET đã được sử dụng. Thiết kế sẽ có hai nút nhấn (+ và -) cho phép người dùng đặt dòng tải trước khi quá trình bắt đầu và nút nhấn thứ ba để đặt lại bo mạch khi đến lúc kiểm tra pin khác. Điện áp của pin được đưa vào một trong các chân tương tự trên Arduino Nano giúp giám sát sự sụt giảm điện áp dựa trên dòng điện đặt trước, tính toán dung lượng pin và hiển thị trên Màn hình LCD 16 × 2.

Nguyên lý đo dung lượng pin lithium ?
Nguyên lý đo dung lượng pin lithium ?

Mạch điều khiển tín hiệu đèn giao thông

Linh kiện mạch đo dung lượng Pin lithium bằng Ardunio

Để có thể Thiết kế mạch đo dung lượng Pin lithium bằng Ardunio chúng ta sẽ phải cần có những linh kiện bên dưới đây :

  • Arduino Nano
  • Màn hình LCD 16 x 2
  • LM358N
  • Điện trở – 4,7k (2), 47R (2), 1M, 10k, 3R
  • Tụ điện 100nF (6), 100uf-16V, 1000uF-16V
  • Công tắc Tact (3)
  • IRF3710
  • Dây điện
  • Giá pin

Sơ đồ mạch đo dung lượng Pin lithium bằng Ardunio

Trước khi đi vào lập trình chúng ta cần tìm hiểu qua phần cứng của mạch và dưới đây là Sơ đồ mạch đo dung lượng Pin lithium bằng Ardunio hãy theo dõi chi tiết các phần của mạch :

Sơ đồ mạch đo dung lượng Pin lithium bằng Ardunio
Sơ đồ mạch đo dung lượng Pin lithium bằng Ardunio

Bom mạch sẽ bào gồm những linh kiện đầy đủ bên dưới :

Bom mạch
Bom mạch

Phân tích sơ đồ mạch :

Khi chúng ta nhấn nút khởi động, pin thử nghiệm được kết nối song song với điện trở 4 ohm và được phóng điện qua nó. Điện áp được bộ vi điều khiển đọc cứ sau nửa giây nên thu được 7200 phép đo trong một giờ. Sử dụng định luật Ohm, bạn có thể tìm ra dòng điện được cung cấp cho tải. Sau đó, chỉ cần nhân 1 Per 7200 giờ với giá trị hiện tại và cộng các số kết quả cho đến khi pin xả xuống dưới 3V, sau đó màn hình hiển thị kết quả đo bằng mA mỗi giờ.

Đầu tiên chúng ta cần kết nối pin đã sạc đầy. Màn hình hiển thị điện áp hiện tại của pin. Ngay sau khi chúng tôi nhấn nút bắt đầu, quá trình kiểm tra pin sẽ bắt đầu. Thông tin sau được hiển thị trên màn hình:

  • Số lần đo đã thực hiện
  • Điện áp pin
  • Và năng lượng theo thời gian tính bằng miliamp mỗi giờ. Như chúng ta thấy hiệu điện thế đang giảm dần. Thử nghiệm kết thúc khi điện áp đạt 3 vôn và pin được coi là rỗng. Quá trình này có thể mất một khoảng thời gian tùy thuộc vào dung lượng của pin.

Khi điện áp pin giảm xuống 3 volt, quá trình đo hoàn thành và màn hình hiển thị dung lượng pin thực tế cũng như số lần đo đã thực hiện.

Cuối cùng, thiết bị được lắp đặt trong một hộp thích hợp và là một công cụ hữu ích khác trong phòng thí nghiệm điện tử.

Code Đo dung lượng pin bằng Arduino

Khi đã tìm hiểu xong nguyên lý cũng như sơ đồ Mạch đo dung lượng ắc quy hay Pin chúng ta sẽ đi đến tìm hiểu phần Code Arduino :

Code Đo dung lượng pin bằng Arduino
Code Đo dung lượng pin bằng Arduino
/*
A battery life cycle tester using an Lcd as output  
*/

// include the library code:
#include <LiquidCrystal.h>

// initialize the library with the numbers of the interface pins
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
const int buttonPin = 9; 
int sensorPin = A0;    // select the input pin for the Battery
int sensorValue = 0;  // variable to store the value coming from the sensor
const int relay= 10;
int buttonState = 0;
float mah = 0.0;
long timestart  ;

void setup() {
  // set up the LCD's number of columns and rows:
  lcd.begin(16, 2);
  // Print a message to the LCD.
  lcd.print("Batt life tester");
  pinMode(relay, OUTPUT);
pinMode(buttonPin, INPUT);
}

void loop() {
  // set the cursor to column 0, line 1
  // (note: line 1 is the second row, since counting begins with 0):
  digitalWrite(relay, 0 ); //set the LED-relay off
 
  while (buttonState == LOW ) {
  sensorValue = analogRead(sensorPin); // read the battery
  
  buttonState = digitalRead(buttonPin);

  lcd.setCursor(0, 1);
  lcd.print((sensorValue*4.98)/1023);
  lcd.print(" Volts");
  delay(500);
  } //end get ready loop 
  digitalWrite(relay, 1 ); //set the LED-relay on
  lcd.setCursor(0, 0);
  lcd.print("Testing              ");
  lcd.setCursor(0, 1);
  lcd.print("                         ");
  mah = 0.0;
  timestart = millis( );
  while ( ((sensorValue*4.98)/1023) > 3.00 ) {
     lcd.setCursor(0, 1);    
     lcd.print((sensorValue*4.98)/1023);
     lcd.print(" V ");
     sensorValue = analogRead(sensorPin); // read the battery
     mah = mah + (((sensorValue*4.98)/1023)/4 )/7.2;
     lcd.print(mah);
     lcd.print(" mAh ");
     delay ( 500 ) ;
     lcd.setCursor(8,0);
     lcd.print((millis( )- timestart)/1000); // time since test staarted
  } // end battery drain
    digitalWrite(relay, 0 ); //set the LED-relay off

  // final results
 
   lcd.setCursor(0, 0);
   lcd.print(mah);
   lcd.print(" mAH ");
   lcd.print((millis( )- timestart)/1000);
   lcd.print(" S ");
   buttonState = digitalRead(buttonPin);
  
}

Nếu bạn thấy khó hiểu có thể tham khảo Video bên dưới đây.

Video mạch đo dung lượng Pin lithium bằng Ardunio

CDK - CĐ Văn Hóa Nghệ Thuật Và Du Lịch Nha Trang

Trường Cao đẳng Văn hóa Nghệ thuật & Du lịch Nha Trang CDK chính thức được thành lập. Năm 2005, nhà trường được vinh dự đón nhận phần thưởng cao quý của Nhà nước : Huân chương Lao động Hạng Ba.

Related Articles

Trả lời

Email của bạn sẽ không được hiển thị công khai.

Back to top button