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


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.