Làm thế nào Raspbian phát hiện dưới điện áp


16

Làm thế nào để Pi biết nó bị thiếu năng lượng và để hiển thị các tia sáng?

Như hầu hết chúng ta đều biết, nếu bạn sử dụng nguồn cung cấp năng lượng kém, bạn sẽ nhận được tia sét cho biết bạn đang bị thiếu năng lượng.

Tôi nhận thấy rằng khi tôi chạy Pi bằng pin, khoảng 15 phút trước khi Pi bắt đầu khởi động lại, tia sét bắt đầu xuất hiện và cuối cùng ở đó cho đến khi khởi động lại, điều này có ý nghĩa vì điện áp pin của tôi giảm xuống như cũ. thoát nước.

Điều này khiến tôi nghĩ rằng tôi có thể sử dụng điều này để tạo ra một chương trình tắt Pi khi nó phát hiện điện áp không đổi. Tôi biết trước khi điều này xảy ra sẽ còn tốt hơn nhưng tôi không quan tâm đến điều đó.

Có một lệnh cho điện áp như sudo vcgenmd measure_tempnhiệt độ để biết điện áp là gì? Nếu không làm thế nào để Pi biết khi nào nó bị thiếu năng lực?

EDIT : Đây không phải là một bản sao vì câu hỏi khác cho thấy bạn cần phần cứng bên ngoài. Tôi đang chỉ ra điều này là không cần thiết.


Câu trả lời:


4

Một số kiểu máy Pi có chip trên bo mạch phát hiện điện áp thấp. Điều này được sử dụng để lái đèn LED nguồn trên một số mô hình Pi.

Mô hình A +, B +, Pi2B

Đèn LED nguồn màu đỏ được kết nối với GPIO 35. Bạn có thể theo dõi GPIO để kiểm tra tình trạng dưới điện áp (dưới 4,65V).

Giám sát

Để theo dõi GPIO, bạn sẽ cần đọc giá trị của nó. Nếu giá trị bình thường (trạng thái năng lượng tốt) cao (1) thì điện áp thấp sẽ được chỉ định khi nó đọc thấp (0). GPIO sẽ trở lại trạng thái bình thường nếu tình trạng thiếu điện áp bị xóa. Do đó, bạn cần đọc GPIO thường xuyên để phát hiện các điều kiện thoáng qua.


Làm thế nào tôi có thể theo dõi mặc dù ... GPIO là một pin kỹ thuật số phải không?
NULL

@NULL chỉnh sửa câu trả lời.
gia

18

Nếu bạn muốn làm điều đó với tập lệnh shell, đây là một giải pháp hoạt động trên Pi 1, 2 & 3 (không được kiểm tra bằng 0). Với lệnh:

/opt/vc/bin/vcgencmd get_throttled

Nếu câu trả lời là:

throttled=0x0

Bạn tốt với điện áp được cung cấp và nhiệt độ SoC.

Các bit trên số trả về có nghĩa là:

0: under-voltage
1: arm frequency capped
2: currently throttled 
16: under-voltage has occurred
17: arm frequency capped has occurred
18: throttling has occurred

Tham khảo: Raspbian Jessie linux 4.4.9 Suy giảm hiệu năng nghiêm trọng .

Có một danh sách cập nhật hơn https://github.com/raspberrypi/documentation/blob/JamesH65-patch-vcgencmd-vcdbg-docs/raspbian/appluggest/vcgencmd.md

0: under-voltage
1: arm frequency capped
2: currently throttled
3: Soft Temp limit reached  3
16: under-voltage has occurred
17: arm frequency capped has occurred
18: throttling has occurred
19: Soft Temp limit has occurred

Điều này chỉ đúng nếu thiếu điện áp và quá nhiệt là đồng nghĩa hoặc có một số loại quan hệ đã biết để chúng ta có thể nói nếu điện áp quá thấp 0,5 V thì nhiệt độ lõi sẽ là ... nhưng đó không phải là trường hợp.
goldilocks

Tôi chỉ cung cấp một ví dụ. Giá trị được trả về chứa một số bit được đặt nếu: 1) cung cấp không cung cấp đầu vào an toàn (đó là những gì OP muốn); 2) Tần số ARM bị giảm do nhiệt độ cao; 3) Quá điện áp đã bị tắt do nhiệt độ rất cao. Các liên kết tôi cung cấp bỏ qua sự nghi ngờ.
zertyz

1
Vậy thì tại sao không viết nó ngay từ đầu? Dù sao, xin chào mừng - nhưng vui lòng đọc chính sách của chúng tôi về các câu trả lời không có liên kết . Điều này không hoàn toàn như vậy, mặc dù thông tin thực tế trong câu trả lời cũng không giải quyết được câu hỏi thực sự. Ý tưởng là một câu trả lời là hoàn chỉnh trong chính nó; những thứ như "đọc liên kết này" thuộc về ý kiến. Tôi nhận ra rằng bạn không có đủ danh tiếng để đăng bình luận về câu hỏi, nhưng sẽ rất tuyệt nếu bạn dành vài phút để cơ cấu lại điều này ...
goldilocks

... Lưu ý rằng chúng tôi không phải là một diễn đàn thảo luận, theo đó, phần chủ đề của bài viết được đặt hàng qua lại theo thời gian. Nếu bạn đang hỏi một câu hỏi và ai đó hỏi thêm thông tin, hãy chỉnh sửa nó thành câu hỏi , đừng để lại câu trả lời. Tương tự như vậy, nếu bạn có câu trả lời và ai đó yêu cầu làm rõ, bất cứ điều gì chưa rõ ràng trong câu trả lời nên được chỉnh sửa thành câu trả lời và không chỉ để lại trong dấu vết nhận xét.
goldilocks

1
Nó nên là câu trả lời được chấp nhận.
Feriman

1

Phần sau đây giải thích cách thức mạch điện của Pi hiện đại (với tiêu đề 40 pin) hoạt động Giới hạn công suất Raspberry Pi .

Tia sét được điều khiển bởi hạt nhân và AFAIK không có cách nào đơn giản để truy cập nó.

Trạng thái năng lượng có thể được phát hiện dễ dàng hơn. Điều này có sẵn trực tiếp thông qua hệ thống trong B + Pi2 /sys/class/leds/led1và có thể truy cập thông qua một chương trình trên Pi3 /raspberrypi//a/60275/8697

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.