Quelle est la température maximale / minimale de fonctionnement?

47

Selon le titre, quelles sont les températures maximales et minimales de fonctionnement du Pi avant qu’il ne fonctionne de manière fiable? Cela pourrait-il également dépendre de la carte SD utilisée?

berry120
la source
1
while sleep 1;do tput sc;tput cup 0 $(($(tput cols)-2));cat /sys/class/thermal/thermal_zone0/temp;tput rc;done &affichera le temp du processeur dans le coin supérieur droit de la console. Pour le suivi.
NVRM
2
L' utilisation de @NVRM watch /opt/vc/bin/vcgencmd measure_temp(nouvelle mesure toutes les deux secondes) semble être une méthode plus simple et plus propre que votre approche de la surveillance constante de la température. Mais je peux me tromper.
trejder
Eh bien, ceux-ci sont assez similaires, l’ catapproche fonctionne sur tous les Linux, alors qu’il vcgencmdest spécifique au pi.
NVRM

Réponses:

41

De la FAQ RPi :

Quelle est la plage de température utilisable?

Le Raspberry Pi est construit à partir de puces commerciales qualifiées pour différentes plages de température; le LAN9512 est spécifié par les fabricants comme étant qualifié de 0 ° C à 70 ° C, tandis que le PA est qualifié de -40 ° C à 85 ° C. Vous constaterez peut-être que le conseil travaillera en dehors de ces températures, mais nous ne le qualifions pas lui-même pour ces extrêmes.

Jivings
la source
5
Est-ce que quelqu'un sait ce qu'est le "PA", c'est-à-dire quelle puce / composant?
Darryl Hein
9
C’est le processeur d’application (Broadcom BCM2835), processeur de la carte.
bayindirh
3
Et il va sans dire que lorsque l’appareil est alimenté, la chaleur produite peut en être une cause .. IE: Le démarrer à -40 ° C peut échouer, mais si elle est laissée en marche, les composants doivent être plus chaud que la température ambiante et donc pas à - 40 L'environnement devrait prendre en compte. -40, je viens, je gare des Pis à l'extérieur du Canada. :)
James T Snell
2
@ Doc drôle, vous devriez mentionner que hein. ;) J'en ai garé un à l'extérieur (à l'intérieur de tupperwear, étanche à l'air / à l'eau, mais pas d'isolation) à -20 ° C pendant quelques heures et je n'ai pas remarqué que la température centrale réelle (provenant du capteur intégré) était inférieure à + 20 C.
goldilocks
1
y at-il un moyen de détecter le LAN chiptemp, car son temp mort est beaucoup plus bas que Soc Chip, je crois que la /opt/vc/bin/vcgencmd measure_tempcommande ne peut que signaler le Soc Chiptemp, correct?
Shawn
9

Mon expérience avec Raspberry Pi 3: Le SoC commencera à ralentir à environ 80 degrés Celsius et, selon mon expérience, ne se permettra jamais d’être plus chaud que 85 degrés Celsius. Il s’agit bien entendu de la température centrale - la température à l’extérieur de la puce devra être beaucoup plus basse pour faciliter un échange thermique efficace.

Tandis que vous (probablement, ne me croyez pas sur parole) ne pouvez pas détruire le SoC en le laissant non refroidi, la performance en sera sérieusement affectée. (Même chose pour l’alimentation, BTW). Dans notre laboratoire, nous avons constaté des chutes de trames et une dégradation importante de la capacité de traitement vidéo. Nous avons seulement découvert que 1) il faisait trop chaud sans le dissipateur thermique 2) la tension est tombée en dessous de 4,6 V en raison de fils d'alimentation 5 V trop longs.

Dans tous les cas de figure extrêmes, il est fort probable que votre puissance de traitement diminuera d’abord et que d’autres problèmes apparaîtront beaucoup plus tard, voire jamais. Cela peut entraîner une perte de temps considérable lorsque vous essayez de chasser des bogues logiciels ("Pourquoi mon programme fonctionne-t-il si soudainement si lentement?!?"), Seulement pour découvrir que les fils sont trop minces ou que le dissipateur de chaleur est trop petit, alors méfiez-vous !

En ce qui concerne la limite inférieure, vous devriez vérifier tous les composants. J'ai récemment démarré Raspi3 à -12 ° C et l'appareil photo ne fonctionnait pas (première fois depuis des semaines, mais à d'autres moments, les températures nocturnes n'étaient pas aussi basses). Après 15 minutes d'attente, je l'ai redémarré et il a commencé à fonctionner normalement.

De plus, je pense que la puce réseau / USB de la carte elle-même n’est pas inférieure à 0 C. Si vous avez besoin de tels extrêmes, je suggère d’attendre Compute Module 3, qui aura une plage de -20 à 80 ° C, simplement en ne fournissant pas la problématique. puce du tout :)

xmp125a
la source
7

Je vois que la question du PO a été résolue avec autorité, mais voici mes 2 centimes d'expérience:

Avec le boîtier de base en plastique transparent dépourvu de ventilateur et les dissipateurs de chaleur, ARM AP tourne à environ 50 ° C et mon Pi3 fonctionne correctement. Lorsque j'enlève la partie supérieure de la coque en plastique, la température tombe à 47-48.

Donc, ma conclusion est que l'enceinte ne cause aucun préjudice mesurable à cet égard.

La commande pour renvoyer la température du processeur dans stdout est vcgencmd measure_temp


Je remarque dans les commentaires que uhohsi vous souhaitez utiliser la température dans un programme Python, la commande os.popen('vgencmd measure_temp').read()renverra la version textuelle du numéro de température.

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

Voici comment j'utilise Popen pour obtenir la température dans une variable entière:

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

Ce qui précède est tiré de ce code:

Envoyez un ping à un site Web et activez une sortie si elle est en ligne / hors ligne?

Cet article montre comment utiliser fpingde différentes manières, même si les résultats sont identiques.stderr

Inclut également un exemple du berceau au tombeau qui utilise les données et les parcelles qu’elles affichent au fur et à mesure de leur entrée. Il affiche Python et gnuplot. Nous ne voyons pas assez de ces exemples de système complet ici.

SDsolar
la source
1
assurez-vous simplement qu'il y a une bonne circulation d'air dans les environnements très
tempérés,
Excellent point. La température de ma pièce est de 24 ° C (75 ° F) et la porte est ouverte sur l’extérieur, ce qui permet une bonne circulation de l’air.
SDsolar
1
C'est très utile! (Je voterai dans 12 heures lorsque mon quota pour la journée expirera). Il semble que os.popen('vcgencmd measure_temp').read()la température (texte) soit également disponible dans Python. comme le faitcommands.getstatusoutput('vcgencmd measure_temp')[1]
Uhoh
1
TNX pour les commandes Python. Cette approche d'utilisation os.popenet .readcomme ça pourrait être très utile. Sans parler du fait que commands.getstatusoutput ... [1] j'ai tendance à utiliser beaucoup Python avec des commandes externes, mais je n'ai rencontré aucune de ces commandes. Bien joué. En fait, plus vous répondez à des questions, plus vous obtiendrez de points et les restrictions seront levées assez rapidement. Cette SE particulière est une foule difficile, mais elle reconnaît certainement des contributions précieuses à la base de données.
SDsolar
1
J'ai maximisé le nombre de votes aujourd'hui; pendant que je passais plusieurs heures à chercher des choses que je continuais à parcourir (ce que je sentais être) des messages utiles avec zéro vote. Je n'ai pas compris ce qui rend certains sites SE plus généreux et d'autres moins.
Uhoh
0

Ce qui suit est un peu en dehors de la question, mais un cas d'utilisation générale qui pourrait donner quelques idées.

Cela peut être adapté à tout type d’entrées, capteurs gpio, données Internet.

Comment représenter graphiquement la température du processeur en heures supplémentaires?

Installer gnuplot

Gnuplot peut tracer des données dans le terminal, ne nécessite aucun serveur X et utilise très peu de ressources.

Il fonctionne même sur le modèle 1 / zéro du pi framboise le plus lent.

sudo apt install gnuplot

Exemple de script pour construire un gnuplotfichier:

temperature script pour stocker les données supplémentaires.

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

Donner les droits d'exécution à ce script:

chmod +x temperature

Détachez et exécutez en boucle 1s jusqu'au prochain redémarrage:

nohup watch ./temperature &

Plus tard, tracez un graphique des données:

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

entrez la description de l'image ici

Ceci est un exemple à nu, la température en Celsius * 1000, et quelques secondes depuis le début, à étendre dans votre propre suite de scripts.

Pour tuer la watchboucle,killall watch

Bonne piratage;)

NVRM
la source