[PYTHON] Afficher la température du processeur toutes les 5 secondes sur Raspberry Pi 4

introduction

Le processeur devient assez chaud lors de l'utilisation de Raspberry Pi 4. Je voulais savoir à quel point le processeur serait chaud, j'ai donc créé un programme qui affiche la température du processeur toutes les 5 secondes en utilisant Python3.

environnement

OS : Ubuntu server20.04 + Xubuntu Desktop(gdm3)

programme

cpu_temperature.py


import time
import threading
import subprocess

def schedule(interval, func, wait = True):
    base_time = time.time()
    next_time = 0
    while True:
        t = threading.Thread(target = func)
        t.start()
        if wait:
            t.join()
        next_time = ((base_time - time.time()) % interval) or interval
        time.sleep(next_time)

def get_cpu_temperature():
    output = subprocess.check_output("cat /sys/class/thermal/thermal_zone0/temp", shell = True, encording = "UTF-8")
    return int(output) / 1000

def print_cpu_temperature():
    print(get_cpu_temperature())

if __name__ == "__main__":
    schedule(5, print_cpu_temperature)

Commentaire

fonction de planification

J'ai fait référence à l'article suivant. Exécuter le traitement en Python à intervalles réguliers Ceci est un pakuri de la fonction de planification introduite dans l'article. Vous pouvez spécifier le nombre de secondes que vous souhaitez exécuter avec intervalle et la fonction que vous souhaitez exécuter avec func. Pour plus de détails, veuillez consulter l'article à l'URL.

Fonction get_cpu_temperature

J'ai fait référence à l'article suivant. J'ai essayé d'obtenir la température du processeur de Raspberry Pi (Raspbian) sans utiliser cat Exécuter la commande depuis Python Il semble que la température du processeur puisse être obtenue en utilisant la méthode vcgencmd, mais cette fois j'ai décidé d'utiliser cat au lieu d'utiliser cette méthode. Si vous utilisez cat, il sera affiché à 1000 fois la valeur, il est donc difficile de comprendre si vous l'affichez tel quel.

Il existe différentes manières d'appeler des commandes Linux depuis Python3, mais cette fois, je voulais traiter la chaîne de caractères obtenue à l'aide de cat en Python, j'ai donc décidé d'utiliser la fonction check_output.

Obtenez la température du processeur en utilisant cat avec la fonction check_output. Puisque la valeur est multipliée par 1000 telle quelle, j'ai changé la chaîne de caractères en type int et l'ai divisée par 1000 pour la faire revenir. Si vous utilisez vcgencmd, vous pouvez le renvoyer tel quel.

fonction print_cpu_temperature

C'est une fonction qui imprime uniquement la valeur obtenue par la fonction get_cput_temperature. À l'origine, j'ai essayé de dessiner un graphique en utilisant la fonction de planification et la fonction get_cpu_temperature, mais avant cela, j'avais des problèmes si les deux fonctions ci-dessus ne fonctionnaient pas correctement, j'ai donc créé cette fonction.

si name == dans "main"

Cela signifie exécuter la fonction print_cpu_temperature toutes les 5 secondes. Si vous changez la partie 5 en 10, l'intervalle sera de 10 secondes.

Recommended Posts

Afficher la température du processeur toutes les 5 secondes sur Raspberry Pi 4
Accélérez l'apprentissage en profondeur avec le processeur Rasperry Pi 4
Détectez la température à l'aide de python sur Raspberry Pi 3!
pigpio sur Raspberry pi
Cython sur Raspberry Pi
Mesurer la température du processeur de Raspeye avec Python
Introduction de pyenv sur Raspberry Pi
Utilisez NeoPixel avec la tarte aux framboises
Installez OpenCV4 sur Raspberry Pi 3
Installez TensorFlow 1.15.0 sur Raspberry Pi
Utilisez python sur Raspberry Pi 3 pour détecter la "température (en utilisant un convertisseur A / N)"!
Test de la communication UART avec Raspberry Pi
MQTT sur Raspberry Pi et Mac
raspberry pi 4 centos7 installer sur docker
Installez ghoto2 sur Raspberry Pi (Remarque)
Essayez d'utiliser ArUco avec Raspberry Pi
Procédure d'installation d'OpenCV sur Raspberry Pi
Allumer / éteindre le Raspberry pi avec Arduino
Détecter l'état du commutateur avec Raspberry Pi 3
Installez OpenMedia Vault 5 sur Raspberry Pi 4
L Chika avec Raspberry Pi C #
Construisez wxPython sur Ubuntu 20.04 sur Raspberry Pi 4
Instrument de pesage utilisant Raspberry Pi et Hx711 (affichage GUI dans Tkinter)
Raspberry Pi --1 --Première fois (Connectez un capteur de température pour afficher la température)
Utilisez le capteur de température / humidité / pression BME280 de Python avec Raspberry Pi 2
Raspberry Pi "Lampe de notification Honwaka" Partie 2
Détectez la "luminosité" en utilisant python sur Raspberry Pi 3!
Raspberry Pi "Lampe de notification Honwaka" Partie 1
Activer la communication série UART + avec Raspberry Pi
Définir l'espace d'échange sur Ubuntu sur Raspberry Pi
Programmation normale avec la programmation Node-RED avec Raspberry Pi 3
Utiliser le capteur Grove avec Raspberry Pi
Installez la version 64 bits du système d'exploitation (bate) sur Raspberry Pi
Installez docker-compose sur le système d'exploitation Raspberry Pi 64 bits
Exécutez un servomoteur en utilisant python sur Raspberry Pi 3
Travailler avec des capteurs dans Mathematica sur Raspberry Pi
Construire un environnement OpenCV-Python sur Raspberry Pi B +
Multiplication matricielle sur GPU Raspberry Pi (partie 2)
Comment installer NumPy sur Raspeye
Travailler avec le GPS en Python pour Raspberry Pi 3
Utilisation du capteur de température numérique à 1 fil DS18B20 avec Raspberry Pi de Python
Contrôlez l'écran EL organique connecté I2C d'Akizuki à partir de Raspberry Pi
Pourquoi detectMultiScale () est lent sur Raspberry Pi B +
Détectez les interrupteurs à glissière à l'aide de python sur Raspberry Pi 3!
Construire un environnement Django sur Raspai (MySQL)
Essayez d'utiliser le code QR avec Raspberry Pi
Détectez les commutateurs magnétiques à l'aide de python sur Raspberry Pi 3!
Profitez du travail électronique avec GPIO de Raspberry Pi
Allumez / éteignez votre PC avec Raspberry Pi
Grove - Capteur de température et d'humidité (DHT11) avec Raspberry Pi
Obtenez des informations sur le processeur de Raspberry Pi avec Python
Rendre DHT11 disponible avec Raspeye + python (Remarque)
Démarrage de la compilation croisée pour Raspberry Pi Zero sur Ubuntu
Sonnez le buzzer en utilisant python sur Raspberry Pi 3!
Introduction de Ceph avec Kubernetes sur Raspberry Pi 4B (ARM64)
Obtenez la température et l'humidité avec DHT11 et Raspberry Pi
Connectez-vous à MySQL avec Python sur Raspberry Pi
Construire un environnement de développement Python sur Raspberry Pi