¿Nos ayudas a pagar el Hosting?

Compartir en facebook Compartir en twitter Compartir en linkedin

Controla la temperatura de tu Orange Pi

Publicado en Julio de 2018

Controla la temperatura de tu Orange PiEn esta guía vamos a explicar como controlar la temperatura de tu Orange Pi, haciendo que el ventilador se encienda automáticamente cuando el microprocesador llegue a una determinada temperatura. Al final de la guía encontrarás unos consejos para una refrigeración ultrasilenciosa. Todas las temperaturas están en grados Celsius. Empecemos.

Que necesitas:

Esta guía va a ser muy sencilla. Vamos a necesitar tener instalada la librería orangepi_PC_gpio_pyH3. Para instrucciones sobre como hacerlo, pulsa aquí.

El esquema de conexiones también es muy sencillo. He decidido usar un relé porque es la forma más rápida y económica, aunque necesitarás algo de espacio para colocar el relé. Debes hacer estas conexiones:

Conexiones para controlar la temperatura de tu Orange Pi

Para conectar al relé tendrás algo parecido a Vcc (+5v), GND (GND) e IN (Pin 7). A la salida, en este caso el conector verde, conecta el ventilador al circuito NC (Normaly Closed, o Normalmente Cerrado) para que en caso de fallo en la detección o fallo del programa, el ventilador esté activado, ya que así la Orange Pi no se sobrecalentará, siempre será mejor opción en caso de fallo. Ahora vamos a crear un archivo python para leer la temperatura del micro y, en caso de que sea mayor de 45°, activar el relé y que se arranque el ventilador. Esta medición se puede hacer cada minuto, por ejemplo. Juega con estos datos y adáptalos a tus necesidades. Creamos el fichero python:

sudo nano temperatura.py

y escribe dentro:

#!/usr/bin/env python
# -*- coding: iso-8859-15 -*-
# author    : "javier pérez santos para orangepiweb.es"
# credits   : "javier pérez santos, orangepiweb.es"
# copyright : "Copyright 2018, orangepiweb.es"
#
#   ___                             ____  ___        __   _
#  / _ \ _ __ __ _ _ __   __ _  ___|  _ \(_) \      / /__| |__   ___  ___
# | | | | '__/ _` | '_ \ / _` |/ _ \ |_) | |\ \ /\ / / _ \ '_ \ / _ \/ __|
# | |_| | | | (_| | | | | (_| |  __/  __/| | \ V  V /  __/ |_) |  __/\__ \
#  \___/|_|  \__,_|_| |_|\__, |\___|_|   |_|  \_/\_/ \___|_.__(_)___||___/
#                        |___/
#
# Control de temperatura del micro

import os
import sys
import subprocess
from time import sleep

from pyA20.gpio import gpio
from pyA20.gpio import port

ventilador = port.PA6
gpio.init()

gpio.setcfg(ventilador, gpio.OUTPUT)
temperaturamaxima = 45

while True:
        temp = int(os.popen('cat /sys/class/thermal/thermal_zone0/temp').read())
        temp = temp/1000
        if temp >= temperaturamaxima:
                gpio.output(ventilador,1)
        else:
                gpio.output(ventilador,0)
        sleep (60)

En las últimas versiones de Armbian, la temperatura se muestra con 5 cifras, así 40° se representan como 40000. Debemos ajustar la temperatura dividiendo por mil o estableciendo la variable tempreaturamaxima en 45000.

Puedes descargar el código de GitHub: https://github.com/javipsantos/OrangePi-temp

Cuando la temperatura supere los 45°, el pin 7 (PA6) se pondrá a 1 y el relé se activará arrancando el ventilador. Ahora sólo falta que lo incluyas en los programas que se ejecutan al arrancar tu Sistema Operativo y ya está. Sencillo ¿verdad?.

Unos consejos para evitar o reducir los ruidos con estos ventiladores. Por mi experiencia, los ventiladores de 5v funcionan perfectamente a 3.3v. Es posible que refrigeren quizás algo menos, pero es más que suficiente. Si necesitas más potencia, hay unos ventiladores de impresora 3D que dirigen el aire a través de una tobera y resultan más eficientes. Su tensión nominal es de 12v, pero pasa lo mismo, si los conectas a 5v, funcionarán perfectamente y reducirás el ruido. Si además le colocas al micro un disipador de calor reducirás algo más la temperatura. Pruébalo.

Espero que te haya sido de utilidad, no dudes en escribir un comentario si ves algún error o si puedo ayudarte.


Utiliza este espacio si quieres añadir algún comentario adicional o si tienes alguna duda.
No olvides añadir tu distribución y tu placa.

Todos los comentarios serán validados antes de su publicación.

Maxlinux2000

Muy buena guía. Me va a ser muy útil en un servidor web


Nombre*

Email* Nunca será publicado ni compartido

Comentario*



Copyright © 2024 desde 2016. Todos los derechos reservados | Diseño JaviPSantos

Solicitamos su permiso para obtener datos estadísticos de su navegación en esta web, en cumplimiento del Real Decreto-ley 13/2012. Si continúa navegando consideramos que acepta el uso de cookies.

OK | Más información