최대 / 최소 작동 온도는 얼마입니까?


47

제목 에 따라 Pi가 안정적으로 작동하기 전에 Pi 의 최대 및 최소 작동 온도 등급은 얼마입니까? 사용중인 SD 카드에 따라 다를 수 있습니까?


1
while sleep 1;do tput sc;tput cup 0 $(($(tput cols)-2));cat /sys/class/thermal/thermal_zone0/temp;tput rc;done &콘솔의 오른쪽 상단에 CPU temp가 표시됩니다. 모니터링 용.
NVRM

2
@NVRM을 사용하면 watch /opt/vc/bin/vcgencmd measure_temp (2 초마다 새로운 측정 값을 출력 함) 일정한 온도 모니터링 방법보다 쉽고 깔끔한 방식으로 소리가납니다. 그러나 나는 틀렸다.
trejder

글쎄, 그것들은 상당히 비슷 cat합니다. 모든 리눅스 에서 접근 vcgencmd이 가능하지만 pi에만 적용됩니다.
NVRM

답변:


41

로부터 RPI 자주 묻는 질문 :

사용 가능한 온도 범위는 무엇입니까?

Raspberry Pi는 다양한 온도 범위에 적합한 상용 칩으로 제작됩니다. LAN9512는 0 ° C ~ 70 ° C의 제조업체에서 지정하는 반면 AP는 -40 ° C ~ 85 ° C의 제조업체에서 지정합니다. 보드가 해당 온도를 벗어나 작동 할 수도 있지만 보드 자체를 이러한 극한 조건에 맞출 수는 없습니다.


5
"AP"가 무엇인지, 즉 어떤 칩 / 컴포넌트를 아는 사람이 있습니까?
Darryl Hein

9
보드의 CPU 인 응용 프로세서 (Broadcom BCM2835)입니다.
bayindirh

3
그리고 그것은 장치에 전력이 공급 될 때 생성되는 열이 고려 될 수 있다고 추론합니다. IE : -40 ℃에서 시작하면 실패 할 수 있습니다. 그러나 작동 상태를 유지하면 구성 요소가 주변보다 따뜻해야합니다. 40. 환경이 고려되어야합니다. -40, 여기 왔어요. 캐나다에서 밖에 오줌을 주차하고 있습니다. :)
James T Snell

2
@Doc Funny 당신은 그 말을 언급해야합니다. ;) -20 ° C에서 몇 시간 동안 야외 (토퍼웨어, 공기 / 수밀, 단열은 안 됨)를 1 시간 동안 주차했으며 실제 내장 온도 (내장 센서에서)가 + 20 아래로 떨어지는 것을 보지 못했습니다. C.
goldilocks

1
LAN chip죽은 온도가보다 낮기 때문에 온도 를 감지하는 방법이 있습니까? 명령이 온도 만보고 할 수 Soc Chip있다고 생각 합니까? /opt/vc/bin/vcgencmd measure_tempSoc Chip
Shawn


9

Raspberry Pi 3에 대한 나의 경험 : SoC는 약 섭씨 80도에서 스로틀을 시작하며, 내 경험상 절대 섭씨 85 도보 다 더 따뜻해지지 않을 것입니다. 이것은 물론 핵심 온도입니다. 효율적인 열 교환을 위해서는 칩 외부의 온도가 훨씬 낮아야합니다.

SoC를 냉각되지 않은 상태로 두어 SoC를 파괴 할 수는 없지만 성능에 심각한 영향을 미칩니다. (전원 공급 장치 BTW와 동일). 실험실에서는 프레임 드롭과 비디오 처리 기능의 현저한 저하를 감지하기 시작했습니다. 1) 방열판없이 너무 뜨거워졌습니다. 2) 너무 긴 5V 공급 와이어로 인해 전압이 4.6V 아래로 떨어졌습니다.

극단적 인 시나리오의 경우 처리 능력이 먼저 감소하고 다른 문제는 훨씬 나중에 나타날 가능성이 큽니다. 이로 인해 소프트웨어 버그 ( "왜 갑자기 프로그램이 너무 느리게 실행됩니까?!?") 를 찾아 내려고 할 때 막대한 시간 낭비가 발생할 수 있습니다 . !

낮은 경계와 관련하여 모든 구성 요소를 확인해야합니다. 나는 최근에 -12C 추위에서 Raspi3을 부팅했으며 카메라가 작동하지 않았습니다 (처음 몇 주 만에 밤새 온도가 그렇게 낮지 않았습니다). 15 분 동안 기다린 후 재부팅하고 정상적으로 작동하기 시작했습니다.

또한 보드 자체의 네트워킹 / USB 칩은 0C 이하로 평가되지 않는다고 생각합니다. 이러한 극단 값이 필요한 경우 간단히 문제를 제공하지 않고 -20 ~ 80C 범위의 컴퓨팅 모듈 3을 기다리는 것이 좋습니다. 칩 :)


7

OP의 질문에 정식으로 답변 된 것을 보았지만 여기에 2 센트의 경험이 있습니다.

기본 투명 플라스틱 팬이없는 인클로저 및 방열판을 사용하면 ARM AP가 약 50C (122F)에서 작동하며 Pi3이 제대로 작동합니다. 플라스틱 껍질의 상단을 벗으면 온도가 47-48로 떨어집니다.

따라서 결론은 인클로저가 이와 관련하여 측정 가능한 손상을 일으키지 않는다는 것입니다.

stdout에서 CPU 온도를 리턴하는 명령은 vcgencmd measure_temp입니다.


uhoh파이썬 프로그램에서 온도를 사용하려면 명령 os.popen('vgencmd measure_temp').read()이 온도 버전의 텍스트 버전을 반환 한다고 언급합니다 .

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

Popen을 사용하여 온도를 정수 변수로 가져 오는 방법은 다음과 같습니다.

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

위 코드는이 코드에서 가져온 것입니다.

온라인 / 오프라인 일 경우 웹 사이트를 핑 (Ping)하여 출력을 설정합니까?

이 게시물은 fping결과가 다음과 같이 나오더라도 몇 가지 다른 방법으로 사용하는 방법을 보여줍니다.stderr

또한 데이터를 활용하고 데이터가 들어 오면서 플롯되는 크래들-투-그레이브 (cradle-to-grave) 예제도 포함합니다. Python과 gnuplot을 보여줍니다. 여기서 전체 시스템 예제를 충분히 볼 수 없습니다.


1
단지 있는지 확인 :)로 시작하는 매우 높은 임시 직원과 환경에 좋은 공기의 움직임이
stevieb

훌륭한 지적입니다. 내 실내 온도는 24 ° C 미만인 75F이며 문은 외부로 열려있어 공기 흐름이 양호합니다.
SDsolar

1
이것은 매우 도움이됩니다! (당일 할당량이 만료되면 12 시간 이내에 투표권을 얻습니다). os.popen('vcgencmd measure_temp').read()파이썬에서도 온도 (텍스트)를 사용할 수있는 것으로 보입니다 . 처럼commands.getstatusoutput('vcgencmd measure_temp')[1]
uhoh

1
파이썬 명령어를위한 TNX. 사용 os.popen.read이와 같은 접근 방식 은 매우 유용 할 수 있습니다. 말할 것도없이 commands.getstatusoutput ... [1] 외부 명령과 함께 파이썬을 많이 사용하는 경향이 있지만 그 중 어느 것도 실행하지 않았습니다. 잘 했어. btw, 더 많은 질문에 대답하면 더 많은 포인트를 얻을 수 있으며 제한이 꽤 빨리 해제됩니다. 이 특정 SE는 많은 사람들이지만 데이터베이스에 대한 귀중한 기여를 확실히 인식합니다.
SDsolar

1
나는 오늘 투표를 최대로 끝냈다. 나는 몇 시간 동안 제로 투표로 도움이되는 게시물을 가로 지르는 몇 가지 항목을 찾았습니다. 나는 어떤 SE 사이트를 더 관대하게 만들고 다른 사이트를 그렇게 많이하지 않는지 알지 못했습니다.
uhoh

0

다음은 의문의 여지가 없지만 아이디어를 줄 수있는 일반적인 사용 사례입니다.

이것은 모든 종류의 입력, GPIO 센서, 인터넷 데이터에 적용 할 수 있습니다.

CPU 온도 초과 근무 시간을 그래프로 표시하는 방법은 무엇입니까?

gnuplot 설치

Gnuplot 은 터미널의 데이터를 그래프로 나타낼 수 있으며 X 서버가 필요 없으며 리소스를 거의 사용하지 않습니다.

가장 느린 라즈베리 파이 모델 1/0에서도 부드럽게 작동합니다.

sudo apt install gnuplot

gnuplot파일을 작성 하는 스크립트 예 :

temperature 초과 근무 데이터를 저장하는 스크립트.

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

이 스크립트에 실행 권한을 부여하십시오.

chmod +x temperature

다음에 다시 부팅 할 때까지 1s 루프에서 분리하여 실행하십시오.

nohup watch ./temperature &

나중에 데이터를 그래프로 표시하십시오.

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

여기에 이미지 설명을 입력하십시오

이것은 섭씨 * 1000의 온도와 시작부터 몇 초가 지나면 자체 스크립트 제품군으로 확장되는 기본 예입니다.

watch루프 를 죽이려면killall watch

행복한 해킹;)

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.