Vamos configurar o ventilador do nosso Raspberry Pi para ligar quando a temperatura elevar

Iremos configurar nosso ventilador para ligar e desligar quando a temperatura programada chegar. Adicionando um Resistor e um Transistor, nós podemos usar a porta GPIG21 para quando chegar aos 55 graus nosso ventilador irá ligar para resfriar o circuito, e quando chegar a 48 Graus, nosso ventilador irá desligar.

Você irá necessitar dos seguintes componentes:

  • Ventilador 5V;
  • Transistor NPN 2N2222
  • Resistência de 680 ou 340 Ohns (resistência pode variar dependendo da potência do seu ventilador e quantidade.)
  • Cabos para ligar no Raspberry Pi

Se você não tem certeza se como ficaria o circuito, então confira abaixo o diagrama de nossa instalação.

– – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –

Para criar nosso script, nós devemos criar nossa pasta, para isso, você terá que rodar o seguinte comando:

mkdir /home/pi/scripts/

Após isso entrar nesta pasta, usando o comando:

cd /home/pi/scripts/

Só então você poderá criar seu programa, que terá o nome fan.py:

nano fan.py

O comando a ser utilizado e o seguinte:

#!/usr/bin/python
import sys
import time
from gpiozero import LED # doc: https://gpiozero.readthedocs.io/

# define o GPIO a ser controlado pelo transistor na parte de gatilhofan = LED(21)

def cpu_temp():
with open(“/sys/class/thermal/thermal_zone0/temp”, ‘r’) as f:
return float(f.read())/1000


def main():
# close fan at begining
is_close = True
fan.off()
while True:
temp = cpu_temp()
if is_close:
if temp > 55.0: # temperatura para ligar fan
print time.ctime(), temp, ‘Fan ON’
fan.on()
is_close = False
else:
if temp < 48.0: # temperatura para desligar fan
print time.ctime(), temp, ‘Fan OFF’
fan.off()
is_close = True

time.sleep(2.0)
print time.ctime(), temp


if __name__ == ‘__main__’:
main()

Para verificar se o ventilador está funcionando, e necessário utilizar o comando:

python /home/pi/scripts/fan.py

– – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –

Agora vem a hora de ativar o serviço. Para fazer isso primeiro você vai ter que entrar como administrador.

sudo su

Após isso entre na pasta /etc/init.d, vai ser necessário utilizar o seguinte comando:

cd /etc/init.d

Por fim será necessário criar nosso serviço, então utilize o comando:

#!/bin/bash
# /etc/init.d/fan

### BEGIN INIT INFO

# Provides:fan
# Required-Start:$remote_fs $syslog
# Required-Stop:$remote_fs $syslog
# Default-Start:2 3 4 5
# Default-Stop:0 1 6
# Short-Description: fan
# Description: Fan controller auto start after boot
### END INIT INFO

case “$1” in
start)
echo “Starting Fan”
python /home/pi/scripts/fan.py &
;;
stop)
echo “Stopping Fan”
#killall ledblink.py
kill $(ps aux | grep -m 1 ‘python /home/pi/scripts/fan.py’ | awk ‘{ print $2 }’)
;;
*)
echo “Usage: service fan start|stop”
exit 1
;;
esac
exit 0

Para reiniciar todos os serviços, utilizar o comando:

chmod +x /etc/init.d/fan.service

Podemos começar o serviço com o comando:

sudo service fan start

para verificar se o serviço está rodando, utilizar o comando:

sudo service fan status

– – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –

Leave a Comment

Your email address will not be published. Required fields are marked *