Nhiệt độ hoạt động tối đa / tối thiểu là gì?


47

Theo tiêu đề, xếp hạng nhiệt độ hoạt động tối đa và tối thiểu của Pi là bao nhiêu trước khi nó ngừng hoạt động đáng tin cậy? Điều này cũng có thể phụ thuộc vào thẻ SD được sử dụng?


1
while sleep 1;do tput sc;tput cup 0 $(($(tput cols)-2));cat /sys/class/thermal/thermal_zone0/temp;tput rc;done &sẽ hiển thị temp cpu ở góc trên bên phải của giao diện điều khiển. Để theo dõi.
NVRM

2
@NVRM sử dụng watch /opt/vc/bin/vcgencmd measure_temp (xuất ra số đo mới mỗi hai giây) nghe có vẻ dễ dàng / sạch hơn so với cách tiếp cận của bạn để theo dõi nhiệt độ không đổi. Nhưng, tôi có thể sai.
trejder

Vâng, những cái này khá giống nhau, catcách tiếp cận hoạt động trên tất cả linux, trong khi vcgencmdcụ thể là pi.
NVRM

Câu trả lời:


41

Từ Câu hỏi thường gặp về RPi :

Phạm vi nhiệt độ có thể sử dụng là gì?

Raspberry Pi được chế tạo từ các chip thương mại đủ tiêu chuẩn cho các phạm vi nhiệt độ khác nhau; LAN9512 được chỉ định bởi các nhà sản xuất có trình độ từ 0 ° C đến 70 ° C, trong khi AP có đủ tiêu chuẩn từ -40 ° C đến 85 ° C. Bạn cũng có thể thấy rằng bảng sẽ hoạt động bên ngoài những nhiệt độ đó, nhưng chúng tôi không đủ điều kiện để bản thân bảng theo những thái cực này.


5
Có ai biết "AP" là gì, tức là chip / thành phần nào không?
Darryl Hein

9
Đây là Bộ xử lý ứng dụng (Broadcom BCM2835), CPU của bo mạch.
bayindirh

3
Và lý do là khi thiết bị được cung cấp năng lượng, nhiệt sinh ra có thể là yếu tố .. IE: Khởi động ở nhiệt độ -40 độ C có thể không hoạt động, nhưng nếu thiết bị vẫn chạy, các thành phần sẽ ấm hơn môi trường xung quanh và do đó không ở - 40. Môi trường nên yếu tố. -40, tôi đến đây, tôi đang đậu một số Pis bên ngoài ở Canada. :)
James T Snell

2
@Doc Hài hước bạn nên nhắc đến mà. ;) Tôi đã đỗ xe ngoài trời (trong tupperwear, kín khí / nước, nhưng không cách nhiệt) ở -20 C trong vài giờ và không nhận thấy nhiệt độ lõi thực tế (từ cảm biến tích hợp) giảm xuống dưới + 20 C.
goldilocks

1
Có cách nào để phát hiện LAN chiptemp không, vì temp chết của nó thấp hơn nhiều Soc Chip, tôi tin rằng /opt/vc/bin/vcgencmd measure_templệnh chỉ có thể báo cáo Soc Chiptemp, đúng không?
Shawn


9

Trải nghiệm của tôi với Raspberry Pi 3: SoC sẽ bắt đầu giảm nhiệt ở khoảng 80 độ C, và theo kinh nghiệm của tôi, sẽ không bao giờ cho phép bản thân nóng hơn 85 độ C. Tất nhiên đây là nhiệt độ lõi - nhiệt độ bên ngoài chip sẽ phải thấp hơn nhiều để tạo điều kiện trao đổi nhiệt hiệu quả.

Trong khi bạn (có lẽ, đừng hiểu ý tôi) không thể phá hủy SoC bằng cách để nó không bị kiểm soát, hiệu suất sẽ bị ảnh hưởng nghiêm trọng. (Tương tự với nguồn cung cấp, BTW). Trong phòng thí nghiệm của chúng tôi, chúng tôi bắt đầu nhận thấy sự sụt giảm khung hình và suy giảm đáng kể khả năng xử lý video, chỉ để phát hiện ra rằng 1) nó quá nóng mà không có tản nhiệt 2) điện áp giảm xuống dưới 4,6V do dây cung cấp 5V quá dài.

Trong bất kỳ loại kịch bản cực đoan nào, rất có thể khả năng xử lý của bạn sẽ giảm trước, và các vấn đề khác sẽ xuất hiện nhiều sau đó, nếu có. Điều này có thể dẫn đến lãng phí thời gian rất lớn khi cố gắng săn lùng các lỗi phần mềm ("tại sao chương trình của tôi đột nhiên chạy quá chậm?!?"), Chỉ để phát hiện ra rằng dây quá mỏng hoặc tản nhiệt quá nhỏ, vì vậy hãy cẩn thận !

Về ranh giới thấp, bạn nên kiểm tra tất cả các thành phần. Gần đây tôi đã khởi động Raspi3 ở nhiệt độ -12C và máy ảnh không hoạt động (lần đầu tiên sau nhiều tuần, nhưng lần khác nhiệt độ qua đêm không quá thấp). Sau 15 phút chờ đợi, tôi khởi động lại nó và nó bắt đầu hoạt động bình thường.

Ngoài ra, tôi nghĩ rằng bản thân chip mạng / USB trên bo mạch không được xếp hạng dưới 0 C. Nếu bạn cần các cực trị như vậy, tôi khuyên bạn nên chờ Compute Module 3, sẽ có phạm vi -20 đến 80C, đơn giản là không cung cấp sự cố chip nào cả :)


7

Tôi thấy câu hỏi của OP đã được trả lời một cách có thẩm quyền, nhưng đây là kinh nghiệm trị giá 2 xu của tôi:

Với vỏ và quạt tản nhiệt bằng nhựa trong suốt cơ bản, ARM AP chạy ở nhiệt độ khoảng 50C (122F), và chiếc Pi3 của tôi hoạt động tốt. Khi tôi tháo phần trên của vỏ nhựa, nhiệt độ giảm xuống 47-48.

Vì vậy, kết luận của tôi là bao vây không gây ra bất kỳ tác hại có thể đo lường nào trong vấn đề này.

Lệnh trả về nhiệt độ CPU trong thiết bị xuất chuẩn là vcgencmd đo_temp


Tôi thấy trong các bình luận uhohđề cập rằng nếu bạn muốn sử dụng nhiệt độ trong chương trình Python, lệnh os.popen('vgencmd measure_temp').read()sẽ trả về phiên bản văn bản của số nhiệt độ.

-------------------------------------------------- ----

Đây là cách tôi sử dụng Popen để lấy nhiệt độ thành một biến số nguyên:

from subprocess import Popen, PIPE
.
.
.
cmd = 'vgencmd measure_temp'
p = Popen(cmd,stdout=PIPE, stderr=PIPE, shell=True)
stdout, stderr = p.communicate()

CPUtemp = int(stdout)
.
.
etc

Trên đây được lấy từ mã này:

Ping một trang web và bật đầu ra nếu trực tuyến / ngoại tuyến?

Bài đăng này cho thấy cách sử dụng fpingtheo một số cách khác nhau mặc dù kết quả đạt được nhưstderr

Cũng bao gồm một ví dụ từ nôi đến nghiêm trọng, sử dụng dữ liệu và vẽ đồ thị khi nó xuất hiện. Nó hiển thị Python và gnuplot. Chúng tôi không thấy đủ các ví dụ toàn hệ thống ở đây.


1
chỉ cần đảm bảo có sự chuyển động không khí tốt trong môi trường có nhiệt độ rất cao để bắt đầu :)
stevieb

Điểm tuyệt vời. Nhiệt độ phòng của tôi là 75F, chỉ dưới 24C và cửa mở ra bên ngoài nên có luồng không khí tốt.
SDsolar

1
Điều này rất hữu ích! (sẽ bỏ phiếu trong 12 giờ khi hết hạn ngạch của tôi trong ngày). Có vẻ như điều đó os.popen('vcgencmd measure_temp').read()cũng làm cho nhiệt độ (văn bản) có sẵn trong Python. cũng nhưcommands.getstatusoutput('vcgencmd measure_temp')[1]
uhoh

1
TNX cho các lệnh Python. Cách tiếp cận để sử dụng os.popen.readnhư thế có thể rất hữu ích. Chưa kể commands.getstatusoutput ... [1] tôi có xu hướng sử dụng Python với các lệnh bên ngoài rất nhiều nhưng đã không chạy trên một trong hai lệnh đó. Làm tốt. btw, bạn càng trả lời nhiều câu hỏi, bạn sẽ càng nhận được nhiều điểm và các hạn chế sẽ được gỡ bỏ khá nhanh. SE đặc biệt này là một đám đông khó khăn, nhưng họ chắc chắn nhận ra những đóng góp có giá trị cho cơ sở dữ liệu.
SDsolar

1
Tôi đã đạt tối đa số phiếu bầu ngày hôm nay; trong khi tôi đã dành vài giờ để tìm kiếm một số thứ tôi vẫn chạy qua (những gì tôi cảm thấy là) những bài viết hữu ích với số phiếu không. Tôi đã không tìm ra điều gì làm cho một số trang web SE hào phóng hơn và những trang khác không nhiều như vậy.
uhoh

0

Sau đây là một chút bên ngoài câu hỏi, nhưng một trường hợp sử dụng chung có thể đưa ra một số ý tưởng.

Điều này có thể được điều chỉnh cho bất kỳ loại đầu vào, cảm biến gpio, dữ liệu internet.

Làm thế nào để biểu đồ nhiệt độ CPU tăng ca?

Cài đặt gnuplot

Gnuplot có thể vẽ biểu đồ dữ liệu trong thiết bị đầu cuối, không yêu cầu bất kỳ máy chủ X nào và sử dụng rất ít nguồn tài nguyên.

Nó hoạt động trơn tru ngay cả trên mô hình 1/0 của raspberry chậm nhất.

sudo apt install gnuplot

Ví dụ tập lệnh để xây dựng một gnuplottập tin:

temperature kịch bản để lưu trữ dữ liệu ngoài giờ.

#!/bin/sh
echo $(date +%s ; cat /sys/class/thermal/thermal_zone0/temp) | tee >> temperature.plot

Trao quyền thực thi cho tập lệnh này:

chmod +x temperature

Tháo và chạy trong vòng 1 giây cho đến khi khởi động lại tiếp theo:

nohup watch ./temperature &

Sau đó, vẽ biểu đồ dữ liệu:

gnuplot -e "set terminal dumb $(tput cols) $(tput lines);plot 'temperature.plot' using 0:2 with lines"

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

Đây là một ví dụ về barebone, nhiệt độ tính bằng Celsius * 1000 và vài giây kể từ khi bắt đầu, sẽ được mở rộng trong bộ tập lệnh của riêng bạn.

Để giết watchvòng lặp,killall watch

Chúc mừng hack;)

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.