Đo điện áp nguồn của Arduino bằng cách sử dụng Analog In


9

Tôi cung cấp năng lượng cho Arduino sử dụng pin 5v (3.7v cho mô-đun tăng cường) và tôi cần đo điện áp. Giả sử pin mang lại dòng điện cao , có an toàn khi đo điện áp qua Analog In không? Như trong này:

nhập mô tả hình ảnh ở đây

Lý do tôi hỏi là tôi không biết nhiều về kiến ​​trúc và giới hạn ADC của Arduino. Vì vậy, thông thường, tôi sẽ làm như vậy cho an toàn:

nhập mô tả hình ảnh ở đây

Các kết nối trong sơ đồ đầu tiên có an toàn cho ADC không? Cảm ơn trước!

Lưu ý: Một câu hỏi tương tự đã được hỏi ở đây: ( Giám sát việc sử dụng nguồn DC ), nhưng nó không trả lời câu hỏi về tải cao hiện tại trên pin.


1
Bạn lấy pin 5V ở đâu?

Trên thực tế, đó là pin 3.7v đi vào mạch điều chỉnh điện áp tăng cường. Tôi thực sự quan tâm đến việc tự đo pin 3.7v, nhưng vì lợi ích của nó, chỉ giả sử 5v của nó cho thấy Arduino đang hoạt động.
Ahmed Farid

Ah, nhưng nó có thể thay đổi mọi thứ. Có lẽ không phải vậy: arduino sẽ không quan tâm đến việc dòng pin được rút ra bao nhiêu, miễn là không phải tất cả dòng điện đi qua chân IO. Nhưng tôi không chắc, tôi không biết arduino.

Đúng. Tôi lo lắng về đầu vào hiện tại cho pin Analog In nếu tôi kết nối trực tiếp nó với pin.
Ahmed Farid

Câu trả lời:


6

Kiểm tra biểu dữ liệu cho dòng điện đầu vào trên chân I / O Nó phụ thuộc vào loại bộ điều khiển chính xác trên Arduino của bạn. Nó có thể được gọi là chân I / O rò rỉ đầu vào và sẽ ở gần 1μA .

Dưới đây là biểu dữ liệu ATmega điển hình được sử dụng trên Uno / Duemilanove / ... , bạn có thể tìm thấy tham số trên trang 304. Kiểm tra biểu dữ liệu cho bộ điều khiển cụ thể của bạn để biết chi tiết chính xác.

Nếu bạn sử dụng pin 3.7V và bộ chuyển đổi tăng cường để cung cấp 5V cho bộ điều khiển, bạn có thể kết nối pin trực tiếp với đầu vào tương tự của bộ điều khiển. Tuy nhiên, khi điện áp đầu ra của bộ chuyển đổi tăng giảm xuống dưới mức điện áp của pin (vì bất kỳ lý do gì) thì toàn bộ Arduino của bạn sẽ được cung cấp thông qua pin đầu vào tương tự và đó là điều bạn không muốn. Tất cả các chân đầu vào có bảo vệ chống quá áp cho phép hành vi này, nhưng điốt không được đánh giá cho dòng điện liên tục. Tóm lại: tốt nhất là bao gồm một điện trở nối tiếp giữa pin và pin đầu vào.

Nhưng bây giờ phép đo của bạn phụ thuộc vào độ chính xác của nguồn điện 5V. Tùy thuộc vào bộ điều khiển chính xác mà bạn có, có nhiều điện áp tham chiếu bên trong khác nhau, chính xác hơn nhiều so với điện áp nguồn. Nếu bạn thêm một điện trở phụ vào mặt đất (R2), bạn có thể sử dụng một tham chiếu như vậy để đo chính xác điện áp đầu vào. Đây được gọi là một bộ chia điện áp (điện trở). Với tỷ lệ nhất định, voltaga trên chân đầu vào sẽ là 1V khi điện áp pin là 3,7V:

Vmeasurement=R2×VBATTR1+R2

sơ đồ

mô phỏng mạch này - Sơ đồ được tạo bằng CircuitLab


1
Vì vậy, về bản chất, có thể kết nối trực tiếp với pin nhưng KHÔNG nên dùng nếu 5v thay đổi. Ngay cả khi 5v được quy định và không đổi?
Ahmed Farid

2
Nó sẽ an toàn nếu 5V không đổi, nhưng mọi thứ luôn luôn sai: vì vậy an toàn tốt hơn xin lỗi. Một hoặc hai điện trở rẻ hơn nhiều so với một vi điều khiển mới. Kỹ thuật không chỉ là làm cho mọi thứ hoạt động, mà còn là làm cho mọi thứ tiếp tục hoạt động theo yêu cầu.
jippie

Một câu hỏi khác nếu tôi có thể: Không phải là một điện trở đơn (1K) song song với pin đủ tốt để ngăn chặn đầu vào dòng điện cao? (Xem hình thứ hai của tôi)
Ahmed Farid

Không, nó không làm gì khác hơn là rút pin.
jippie

4

Một tùy chọn khác là sử dụng tham chiếu điện áp băng tần 1.1V bên trong của Arduino để xác định giá trị của VCC mà không sử dụng bất kỳ bộ phận bên ngoài bổ sung nào như chi tiết tại hai liên kết sau:

http://jeelabs.org/2012/05/04/measuring-vcc-via-the-bandgap/

http://arduino.cc/forum/index.php?topic=88935.0

Gotcha duy nhất là bạn cần xác định giá trị hiệu chuẩn so với băng thông 1.1V bên trong vì nó có thể tắt tới 10%.

Nhưng điều đó sẽ không yêu cầu thêm bộ phận nào, và sẽ cho phép atmega của bạn xác định điện áp của nguồn điện.


3
Đây là một bài viết khác thảo luận về cách làm điều này. Mã mà nó sử dụng hơi khác một chút: cung cấp của bạn.com / 2012 / Mạnh
ThomasW

@ThomasW tốt đẹp! Một bài viết tuyệt vời khác về việc sử dụng bandgap 1.1v.
Cánh Tang Wong
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.