Frambuesa pi

Monitor de temperatura Raspberry Pi

Monitor de temperatura Raspberry Pi
Raspberry Pi es una potente computadora de placa única (SBC). Se puede utilizar para realizar muchas tareas sofisticadas. Pero hacerlo aumentará la temperatura del procesador de los dispositivos Raspberry Pi. Que no es bueno. El rendimiento de la Raspberry Pi SBC se verá afectado por la temperatura. Esto también se conoce como estrangulamiento térmico.

Si la temperatura del procesador de tu Raspberry Pi está por encima de los 80 grados Celsius, verás un icono de termómetro en la esquina superior derecha de la pantalla. Oficialmente, la Fundación Raspberry Pi recomienda que la temperatura de su dispositivo Raspberry Pi sea inferior a 85 grados Celsius para que funcione correctamente. Ese es el limite maximo. Pero comenzaría a estrangularse a 82 grados Celsius.

En este artículo, le mostraré cómo controlar la temperatura de su Raspberry Pi. Usaré el sistema operativo Raspbian en mi dispositivo Raspberry Pi 3 Modelo B. Pero debería funcionar en cualquier Raspberry Pi SBC con el sistema operativo Raspbian instalado.

Medición de la temperatura de Raspberry Pi SBC:

Puede medir la temperatura central de su dispositivo Raspberry Pi con el siguiente comando:

$ vcgencmd measure_temp

La temperatura central actual es 48.3 grados Celsius como puede ver en la sección marcada de la captura de pantalla a continuación.

Como puede ver, cada vez que ejecuto el comando muestra un valor de temperatura diferente.

Analizando los datos de temperatura:

Los datos de temperatura que obtenemos del vcgencmd el comando es una cadena. No puedes realizar ningún cálculo sobre él. Podemos usar fácilmente la expresión regular para extraer solo los datos de temperatura y realizar cualquier tipo de cálculo sobre ellos.

Si desea utilizar los datos de temperatura en un script de shell Bash, puede extraer los datos de temperatura con garza comando de la siguiente manera:

$ vcgencmd measure_temp | egrep -o '[0-9] * \.[0-9] * '

Como puede ver, solo se imprimen los datos de temperatura. No hay nada antes ni después.

Puede usarlo en su script de shell (digamos print_temp.sh) como sigue:

$ nano print_temp.sh

Aquí, en la línea 3, configuro el temperatura variable a los datos de temperatura analizados que obtengo de la vcgencmd y grep mando.

En la línea 5, usé eco para imprimir el contenido del temperatura variable en la pantalla.

La línea 1 se usa para decirle a Linux que el script debe ejecutarse con / bin / bash por defecto.

Ahora, haga que el script sea ejecutable con el siguiente comando:

$ chmod + x print_temp.sh

Ahora, ejecute el script de la siguiente manera:

PS ./ print_temp.sh

Como puede ver, la salida deseada se imprime en la pantalla.

Escribir un script de monitoreo de temperatura de Raspberry Pi:

Ahora que podemos analizar los datos de temperatura que obtenemos del vcgencmd comando, podemos escribir fácilmente un script de monitoreo de temperatura para Raspberry Pi. El script de monitoreo de temperatura imprimirá la marca de tiempo actual y la temperatura central cada segundo en la pantalla de una manera bien formateada.

Primero, crea una nueva secuencia de comandos tempmon.sh con el siguiente comando:

$ touch tempmon.sh

Ahora, edite el tempmon.sh script con el siguiente comando:

$ nano tempmon.sh

Ahora, escriba las siguientes líneas de códigos y guarde el archivo con + X y luego presione y seguido por .

Aquí, en la línea 4, printf se utiliza para imprimir las cadenas TIMESTAMP y TEMP (degC) como columna de ancho fijo.

En la línea 5, usé printf de nuevo para imprimir una línea discontinua solo para que la salida sea más legible y atractiva.

En la línea 7-13, ejecuté un bucle infinito para imprimir los datos de temperatura cada segundo.

En la línea 9, guardé los datos de temperatura analizados en el temperatura variable.

En la línea 10, guardé los datos de la marca de tiempo que obtuve del fecha comando en el marca de tiempo variable.

En la línea 11, imprimí la fecha y la hora en formato de marca de tiempo y los datos de temperatura en formato de columna de ancho fijo.

En la línea 12, utilicé el comando sleep 1 para mantener la ejecución del script durante un segundo. Luego, el bucle continuará.

Ahora, haz el guión tempmon.sh ejecutable con el siguiente comando:

$ chmod + x tempmon.sh

Finalmente, ejecute el script tempmon.sh con el siguiente comando:

PS ./ tempmon.sh

Como puede ver, el script del monitor de temperatura funciona perfectamente. Imprime los datos de temperatura cada segundo.

Como puede ver, a medida que aumentaba la carga del sistema, la temperatura aumentaba ligeramente.

Si desea detener el script de monitoreo de temperatura, presione + C. El monitoreo de temperatura ya no se está ejecutando, como puede ver en la captura de pantalla a continuación.

Ahora que el script de monitoreo de temperatura está funcionando, copiemos a / usr / bin directorio. De esa manera, puede ejecutarlo como cualquier otro comando de Linux.

Para copiar el guion tempmon.sh hacia / usr / bin directorio, ejecute el siguiente comando:

$ sudo cp tempmon.sh / usr / bin / tempmon

Como puede ver, puedo ejecutar el script de monitoreo de temperatura del mismo modo que ejecuto los comandos estándar de Linux.

Modificando tempmon para imprimir datos de temperatura en grados Fahrenheit:

Puede convertir fácilmente los datos de temperatura de Celsius a Fahrenheit.

La fórmula ampliamente conocida para calcular las temperaturas en Fahrenheit de Celsius es,

F = (9/5) * C + 32
O
F = 1.8 * C + 32

Pero el problema es que bash shell no tiene las funciones necesarias para realizar cálculos de punto flotante. Entonces, debes confiar en algunos otros programas como antes de Cristo.

antes de Cristo no está instalado en Raspbian de forma predeterminada. Pero puedes instalarlo fácilmente con el siguiente comando:

$ sudo apt install bc

antes de Cristo debe ser instalado.

Ahora, debe modificar el script de monitoreo de temperatura y hacer los cálculos necesarios para convertir la temperatura a Fahrenheit de Celsius con antes de Cristo.

Edite el tempmon.sh script con el siguiente comando:

$ nano tempmon.sh

Ahora, realice las modificaciones como se marca en la captura de pantalla a continuación.

Aquí, en la línea 4, imprimí TEMPERATURA (F) en vez de TEMPERATURA (grados C).

En la línea 9, cambié la variable de temperatura a tempC.

En la línea 10, agregué el resultado de la conversión de Celsius a Fahrenheit a una variable tempF.

Finalmente, imprimí el valor de tempF variable en lugar de temperatura en la línea 12.

Ahora, ejecute el script de la siguiente manera:

PS ./ tempmon

Como puede ver, la temperatura está impresa en unidades Fahrenheit.

Así es como se controla la temperatura en Raspberry Pi. Gracias por leer este artículo.

Las mejores aplicaciones de mapeo de gamepad para Linux
Si te gusta jugar juegos en Linux con un gamepad en lugar de un sistema de entrada de teclado y mouse típico, hay algunas aplicaciones útiles para ti....
Herramientas útiles para jugadores de Linux
Si le gusta jugar juegos en Linux, es probable que haya utilizado aplicaciones y utilidades como Wine, Lutris y OBS Studio para mejorar la experiencia...
Juegos HD remasterizados para Linux que nunca tuvieron un lanzamiento de Linux antes
Muchos desarrolladores y editores de juegos están creando una remasterización HD de juegos antiguos para extender la vida útil de la franquicia, por f...