- Đo điện áp di động riêng lẻ trong ngăn xếp pin nối tiếp
- Mạch vi sai để đo điện áp từng tế bào
- Sơ đồ mạch
- Thiết kế và chế tạo PCB bằng EDA dễ dàng
- Tính toán và đặt hàng mẫu trực tuyến
- Kiểm tra mạch giám sát điện áp
- Đo điện áp tế bào Lithium bằng Arduino
- Lập trình Arduino
- Màn hình điện áp di động riêng lẻ đang hoạt động
Quãng đường đi và hiệu suất của Xe điện phụ thuộc vào dung lượng và hiệu quả của Bộ pin. Hệ thống quản lý pin (BMS) có trách nhiệm duy trì pin ở trạng thái khỏe mạnh. BMS là một đơn vị tinh vi trong EV thực hiện nhiều hoạt động như giám sát các tế bào, cân bằng chúng và thậm chí bảo vệ chúng khỏi sự thay đổi nhiệt độ. Chúng tôi đã tìm hiểu đủ về nó trong bài viết Hệ thống quản lý pin này, vì vậy hãy kiểm tra chúng nếu bạn là người mới ở đây.
Để làm bất cứ điều gì, bước đầu tiên đối với BMS là biết trạng thái hiện tại của các ô trong bộ pin Lithium. Điều này được thực hiện bằng cách đo điện áp và dòng điện (đôi khi cả nhiệt độ) của các ô trong gói. Chỉ với hai giá trị này, BMS có thể tính toán SOC hoặc SOH và thực hiện cân bằng tế bào, v.v. Vì vậy, việc đo điện áp và dòng điện của tế bào là rất quan trọng đối với bất kỳ mạch BMS nào, có thể là nguồn điện đơn giản hoặc pin máy tính xách tay hoặc gói phức tạp như EV / Pin năng lượng mặt trời.
Trong bài viết này, chúng ta sẽ tìm hiểu cách chúng ta có thể đo điện áp từng tế bào của các tế bào được sử dụng trong bộ pin Lithium. Vì lợi ích của dự án này, chúng tôi sẽ sử dụng bốn tế bào lithium 18650 được kết nối nối tiếp để tạo thành một bộ pin và thiết kế một mạch đơn giản sử dụng op-amps để đo điện áp của từng tế bào và hiển thị nó trên màn hình LCD bằng Arduino.
Đo điện áp di động riêng lẻ trong ngăn xếp pin nối tiếp
Vấn đề với việc đo điện áp từng ô trong một bộ pin nối tiếp là điểm chuẩn vẫn giữ nguyên. Hình ảnh dưới đây minh họa tương tự
Để đơn giản, chúng ta hãy giả sử rằng tất cả bốn tế bào đều ở mức điện áp 4V như hình trên. Bây giờ nếu chúng ta sử dụng một bộ vi điều khiển như Arduino để đo điện áp của tế bào, chúng ta sẽ không gặp vấn đề gì khi đo điện áp của tế bào thứ nhất vì nó có đầu kia được kết nối với đất. Tuy nhiên, đối với các ô khác, chúng ta phải đo điện áp của ô đó cùng với các ô trước đó, ví dụ khi chúng tôi đo điện áp của ô thứ 4, chúng ta sẽ đo điện áp của cả bốn ô với nhau. Điều này là do không thể thay đổi điểm tham chiếu so với mặt đất.
Vì vậy, chúng tôi cần giới thiệu một số mạch bổ sung ở đây có thể giúp chúng tôi đo các điện áp riêng lẻ. Nói một cách thô thiển là sử dụng một bộ chia điện thế để lập bản đồ các mức điện áp và sau đó đo chúng, nhưng phương pháp này sẽ làm giảm độ phân giải của giá trị đọc xuống hơn 0,1V. Do đó, trong hướng dẫn này, chúng tôi sẽ sử dụng Mạch vi sai Op-Amp để đo sự khác biệt giữa các đầu cuối của mỗi tế bào để đo điện áp riêng lẻ.
Mạch vi sai để đo điện áp từng tế bào
Chúng ta đã biết một Op-Amp khi hoạt động như một bộ khuếch đại vi sai cho ra sự khác biệt giữa hai giá trị điện áp được cung cấp cho chân đảo ngược và không đảo của nó. Vì vậy, với mục đích đo điện áp 4 cell, chúng ta cần ba op-amps vi sai như hình dưới đây.
Lưu ý rằng hình ảnh này chỉ mang tính đại diện; mạch thực tế cần nhiều thành phần hơn và sẽ được thảo luận sau trong bài viết này. Các biện pháp O1 op-amp đầu tiên điện áp của 2 nd tế bào bằng cách tính toán sự khác biệt giữa 2 nd thiết bị đầu cuối di động và 1 st thiết bị đầu cuối di động có nghĩa là (8-4). Tương tự, Op-amp O2 và O3 biện pháp 3 thứ 4 thứ điện áp di động tương ứng. Chúng tôi chưa sử dụng op-amp cho ô thứ nhất vì nó có thể được đo trực tiếp.
Sơ đồ mạch
Dưới đây là sơ đồ mạch hoàn chỉnh để theo dõi điện áp Multicell trong Bộ pin Lithium. Mạch được thiết kế bằng EasyEDA và chúng tôi cũng sẽ sử dụng mạch tương tự để chế tạo PCB.
Như bạn có thể thấy, chúng tôi có hai op-amp điện áp cao của gói Quad Rail to Rail OPA4197 trong mạch của chúng tôi, cả hai đều được cung cấp bởi tổng điện áp gói. Một IC (U1) được sử dụng làm mạch đệm hay còn gọi là bộ theo điện áp trong khi IC còn lại (U2) được sử dụng để tạo thành mạch khuếch đại vi sai. Một mạch đệm được yêu cầu để ngăn bất kỳ ô nào được tải riêng lẻ, dòng điện không được tiêu thụ từ một ô mà chỉ tạo thành một gói tổng thể. Vì mạch đệm có trở kháng đầu vào rất cao nên chúng ta có thể sử dụng để đọc điện áp từ cell mà không cần lấy điện từ nó.
Tất cả bốn op-amps trong IC U1 được sử dụng để đệm điện áp của bốn ô tương ứng. Điện áp đầu vào từ các ô được gắn nhãn từ B1 + đến B4 + và điện áp đầu ra được đệm được gắn nhãn từ B1_Out đến B4_Out. Điện áp đệm này sau đó được gửi đến bộ khuếch đại khác nhau để đo điện áp từng ô như đã thảo luận ở trên. Giá trị của tất cả các điện trở được đặt thành 1K vì độ lợi của bộ khuếch đại vi sai được đặt thành thống nhất. Bạn có thể sử dụng bất kỳ giá trị điện trở nào nhưng tất cả chúng phải có cùng giá trị, ngoại trừ điện trở R13 và R14. Hai điện trở này tạo thành một vạch chia thế năng để đo điện áp gói của pin để chúng ta có thể so sánh nó với tổng các điện áp tế bào đo được.
Đường sắt sang đường sắt, Op-Amp điện áp cao
Mạch trên yêu cầu bạn sử dụng op-amp điện áp cao Rail to Rail như OPA4197 vì hai lý do. Cả hai IC Op-Amp đều hoạt động với điện áp gói tối đa là (4,3 * 4) 17,2V, do đó Op-amp phải có khả năng xử lý điện áp cao. Ngoài ra, vì chúng tôi đang sử dụng mạch đệm, đầu ra của bộ đệm phải bằng điện áp gói cho đầu cuối ô thứ 4, có nghĩa là điện áp đầu ra phải bằng điện áp hoạt động của op-amp, do đó chúng tôi cần sử dụng Rail để Op-amp đường sắt
Nếu bạn không thể tìm thấy một đường sắt để thanh ray op-amp, bạn có thể thay thế IC bằng LM324 đơn giản. IC này có thể xử lý điện áp cao nhưng không thể hoạt động như đường sắt thanh ray, vì vậy bạn phải sử dụng một điện trở kéo lên 10k trên chân đầu tiên của IC Op-Amp U1.
Thiết kế và chế tạo PCB bằng EDA dễ dàng
Bây giờ mạch của chúng tôi đã sẵn sàng, đã đến lúc chế tạo nó. Vì Op-Amp tôi đang sử dụng chỉ có sẵn trong gói SMD nên tôi đã phải chế tạo một PCB cho mạch của mình. Vì vậy, như mọi khi, chúng tôi đã sử dụng công cụ EDA trực tuyến có tên EasyEDA để chế tạo PCB của chúng tôi vì nó rất thuận tiện để sử dụng vì nó có một bộ sưu tập dấu chân tốt và nó là mã nguồn mở.
Sau khi thiết kế PCB, chúng tôi có thể đặt hàng các mẫu PCB bằng dịch vụ chế tạo PCB chi phí thấp của họ. Họ cũng cung cấp dịch vụ tìm nguồn cung ứng linh kiện, nơi họ có một lượng lớn linh kiện điện tử và người dùng có thể đặt hàng các thành phần theo yêu cầu của họ cùng với đơn đặt hàng PCB.
Trong khi thiết kế mạch và PCB của bạn, bạn cũng có thể công khai thiết kế mạch và PCB của mình để người dùng khác có thể sao chép hoặc chỉnh sửa chúng và có thể hưởng lợi từ công việc của bạn, chúng tôi cũng đã công khai toàn bộ bố cục Mạch và PCB cho mạch này, hãy kiểm tra liên kết dưới đây:
easyeda.com/CircuitDigest/Multicell-Voltage-measuring-for-BMS
Bạn có thể xem bất kỳ Layer nào (Top, Bottom, Topsilk, bottomsilk, v.v.) của PCB bằng cách chọn lớp tạo thành Cửa sổ 'Lớp'. Gần đây, họ cũng đã giới thiệu tùy chọn chế độ xem 3D để bạn cũng có thể xem PCB đo điện áp Multicell, về cách nó trông như thế nào sau khi chế tạo bằng cách sử dụng nút Chế độ xem 3D trong EasyEDA:
Tính toán và đặt hàng mẫu trực tuyến
Sau khi hoàn thành thiết kế mạch đo điện áp tế bào Lithium này, bạn có thể đặt mua PCB thông qua JLCPCB.com. Để đặt mua PCB từ JLCPCB, bạn cần có Tệp Gerber. Để tải xuống các tệp Gerber trên PCB của bạn, chỉ cần nhấp vào nút Tạo Tệp Chế tạo trên trang trình chỉnh sửa EasyEDA, sau đó tải xuống tệp Gerber từ đó hoặc bạn có thể nhấp vào Đặt hàng tại JLCPCB như được hiển thị trong hình ảnh bên dưới. Thao tác này sẽ chuyển hướng bạn đến JLCPCB.com, nơi bạn có thể chọn số lượng PCB bạn muốn đặt hàng, bao nhiêu lớp đồng bạn cần, độ dày PCB, trọng lượng đồng và thậm chí cả màu PCB, như ảnh chụp nhanh được hiển thị bên dưới:
Sau khi nhấp vào đặt hàng tại nút JLCPCB, nó sẽ đưa bạn đến trang web của JLCPCB, nơi bạn có thể đặt mua bất kỳ PCB màu nào với mức giá rất thấp là $ 2 cho tất cả các màu. Thời gian xây dựng của họ cũng rất ít, là 48 giờ với thời gian giao hàng của DHL trong 3-5 ngày, về cơ bản bạn sẽ nhận được PCB của mình trong vòng một tuần kể từ khi đặt hàng. Hơn nữa, họ cũng đang giảm giá 20 đô la phí vận chuyển cho đơn hàng đầu tiên của bạn.
Sau khi đặt hàng PCB, bạn có thể kiểm tra Tiến độ sản xuất PCB của mình với ngày và giờ. Bạn kiểm tra nó bằng cách vào trang Tài khoản và nhấp vào liên kết "Tiến độ sản xuất" bên dưới PCB như, hiển thị trong hình ảnh dưới đây.
Sau vài ngày đặt hàng PCB, tôi đã nhận được các mẫu PCB trong bao bì đẹp như trong hình dưới đây.
Sau khi chắc chắn rằng đường đi và dấu chân đã chính xác. Tôi đã tiến hành lắp ráp PCB, tôi sử dụng các tiêu đề cái để đặt Arduino Nano và LCD để sau này tôi có thể tháo chúng ra nếu cần cho các dự án khác. Bảng được hàn hoàn toàn trông như sau
Kiểm tra mạch giám sát điện áp
Sau khi hàn tất cả các thành phần, chỉ cần kết nối bộ pin với đầu nối H1 trên bo mạch. Tôi đã sử dụng cáp kết nối để đảm bảo rằng tôi không vô tình thay đổi kết nối trong tương lai. Hãy hết sức cẩn thận để không kết nối sai cách vì nó có thể dẫn đến đoản mạch và sẽ làm hỏng pin hoặc mạch điện vĩnh viễn. PCB của tôi với bộ pin mà tôi đã sử dụng để thử nghiệm được hiển thị bên dưới.
Bây giờ sử dụng đồng hồ vạn năng trên đầu cuối H2 để đo điện áp bán riêng lẻ. Thiết bị đầu cuối được đánh dấu bằng các con số để xác định điện áp tế bào đang được đo. Với đây, chúng ta có thể kết luận rằng mạch đang hoạt động. Nhưng để làm cho nó thú vị hơn, chúng ta hãy kết nối một màn hình LCD và sử dụng Arduino để đo các giá trị điện áp này và hiển thị nó trên màn hình LCD.
Đo điện áp tế bào Lithium bằng Arduino
Mạch để kết nối Arduino với PCB của chúng tôi được hiển thị bên dưới. Nó chỉ ra cách kết nối Arduino Nano với LCD.
Chân tiêu đề H2 trên PCB phải được kết nối với các chân tương tự của bảng Arduino như hình trên. Các chân tương tự A1 đến A4 được sử dụng để đo điện áp bốn ô tương ứng, trong khi chân A0 được kết nối với chân tiêu đề v 'của P1. Chân v 'này có thể được sử dụng để đo tổng điện áp của gói. Chúng tôi cũng đã kết nối chân thứ nhất của P1 với chân Vin của Arduino và chân thứ 3 của P1 với chân nối đất của Arduino để cấp nguồn cho Arduino bằng bộ Pin.
Chúng ta có thể viết một chương trình để đo tất cả các điện áp bốn cell và đóng gói điện áp của bộ pin và hiển thị nó trên màn hình LCD. Để làm cho nó thú vị hơn, tôi cũng đã thêm tất cả bốn điện áp tế bào và so sánh giá trị với điện áp gói đo được để kiểm tra xem chúng tôi thực sự đang đo điện áp gần đến mức nào.
Lập trình Arduino
Chương trình hoàn chỉnh có thể được tìm thấy ở cuối trang này. Chương trình khá đơn giản, chúng ta chỉ cần sử dụng chức năng đọc tương tự để đọc điện áp của cell bằng mô-đun ADC và hiển thị giá trị điện áp tính toán trên màn hình LCD bằng cách sử dụng thư viện LCD.
float Cell_1 = analogRead (A1) * (5.0 / 1023.0); // Đo điện áp ô thứ nhất lcd.print ("C1:"); lcd.print (Ô_1);
Trong đoạn mã trên, chúng tôi đã đo điện áp của ô 1 và nhân nó với 5/1023 để chuyển đổi giá trị ADC 0 đến 1023 thành 0 thực tế là 5V. Sau đó, chúng tôi hiển thị giá trị điện áp tính toán trên màn hình LCD. Tương tự, chúng tôi làm điều này cho tất cả bốn ô và tổng bộ pin. Chúng tôi cũng đã sử dụng tổng điện áp thay đổi để tổng hợp tất cả các điện áp của ô và hiển thị nó trên màn hình LCD như hình dưới đây.
float Total_Voltage = Cell_1 + Cell_2 + Cell_3 + Cell_4; // Thêm tất cả bốn giá trị điện áp đo được lcd.print ("Total:"); lcd.print (Tổng_Voltage);
Màn hình điện áp di động riêng lẻ đang hoạt động
Khi bạn đã sẵn sàng với mạch và mã, hãy tải mã lên bảng Arduino và kết nối nguồn điện với PCB. Màn hình LCD bây giờ sẽ hiển thị điện áp từng ô của tất cả bốn ô như hình dưới đây.
Như bạn có thể thấy điện áp hiển thị cho ô từ 1 đến 4 lần lượt là 3,78V, 3,78V, 3,82V và 3,84V. Vì vậy, Sau đó, tôi sử dụng đồng hồ vạn năng của mình để kiểm tra điện áp thực tế của các tế bào này, hóa ra có một chút khác biệt, sự khác biệt được lập bảng dưới đây.
Điện áp đo được |
Điện áp thực tế |
3,78V |
3,78V |
3,78V |
3,78V |
3,82V |
3,81V |
3,84V |
3,82V |
Như bạn có thể thấy, chúng tôi nhận được kết quả chính xác cho các ô một và hai nhưng có một sai số cao tới 200mV cho ô 3 và 4. Điều này rất có thể xảy ra với thiết kế của chúng tôi. Vì chúng tôi đang sử dụng mạch phân biệt op-amp, độ chính xác của điện áp đo được sẽ giảm xuống khi số lượng ô tăng lên.
Nhưng lỗi này là một lỗi cố định và có thể được sửa trong chương trình, bằng cách lấy các bài đọc mẫu và thêm một hệ số để sửa lỗi. Trên màn hình LCD tiếp theo, bạn cũng có thể thấy tổng của điện áp đo được và điện áp gói thực được đo thông qua bộ chia điện thế. Tương tự được hiển thị bên dưới.
Tổng của các điện áp đo được là 15,21V và điện áp thực đo qua chân A0 của Arduino là 15,22V. Vì vậy, sự khác biệt là 100mV không phải là xấu. Mặc dù loại mạch này có thể được sử dụng cho số lượng ít hơn như trong các ngân hàng điện hoặc pin máy tính xách tay. Xe điện BMS sử dụng loại IC đặc biệt như LTC2943 vì ngay cả sai số 100mV cũng không thể chấp nhận được. Tuy nhiên, chúng tôi đã học được cách làm điều đó cho mạch quy mô nhỏ, nơi giá cả là một hạn chế.
Hoạt động hoàn chỉnh của thiết lập có thể được tìm thấy tại video được liên kết bên dưới. Hy vọng bạn thích dự án và học được điều gì đó hữu ích từ nó. Nếu bạn có bất kỳ câu hỏi nào, hãy để lại chúng trong phần bình luận hoặc sử dụng diễn đàn để trả lời nhanh hơn.