21-03-2018, 12:55:09
Bonjour à tous.
Je viens de modifier mon système de refroidissement de la framboise. Le ventilo livré était trop fragile et devenait trop bruiyant après 6 mois d'utilisation. J'ai donc pris un plus costeau, toujours sous 5V. Le schémas électronique est simple. Un transistors NPN commandé par le GPIO 4 (via une résistance de 1kilohom connectée à la base). L'émetteur est sur la masse commune. Sur le collecteur est connecté au fil noir du ventilateur. Le fil rouge étant sur 5 volts ou 3,3 V du raspberry pi. Voilà pour l'électronique. Pour le programme j'ai remplacé celui en .sh que l'on trouve partout sur le net par un .py de ma fabrication. Ceci afin de résoudre un problème. En effet le ventilo a du mal à démarrer voir ne tourne pas. Le fait de passer par python est de pouvoir donner des accoups (pwm) pour amorcer le démarrage. Autre amélioration on refroidit de 6H00 à 22H00 entre 55°C et 43°C en faite moins. Le code est à placer dans un ficher avec les droit d'exécution : /usr/bin/fan.py et dans /etc/rc.local ajouter fan.py pour qu'il se lance au démarrage.
Attention la chose est expérimentale.Donnez moi des retours sur cette mixture.
Je viens de modifier mon système de refroidissement de la framboise. Le ventilo livré était trop fragile et devenait trop bruiyant après 6 mois d'utilisation. J'ai donc pris un plus costeau, toujours sous 5V. Le schémas électronique est simple. Un transistors NPN commandé par le GPIO 4 (via une résistance de 1kilohom connectée à la base). L'émetteur est sur la masse commune. Sur le collecteur est connecté au fil noir du ventilateur. Le fil rouge étant sur 5 volts ou 3,3 V du raspberry pi. Voilà pour l'électronique. Pour le programme j'ai remplacé celui en .sh que l'on trouve partout sur le net par un .py de ma fabrication. Ceci afin de résoudre un problème. En effet le ventilo a du mal à démarrer voir ne tourne pas. Le fait de passer par python est de pouvoir donner des accoups (pwm) pour amorcer le démarrage. Autre amélioration on refroidit de 6H00 à 22H00 entre 55°C et 43°C en faite moins. Le code est à placer dans un ficher avec les droit d'exécution : /usr/bin/fan.py et dans /etc/rc.local ajouter fan.py pour qu'il se lance au démarrage.
Attention la chose est expérimentale.Donnez moi des retours sur cette mixture.
Python
#!/usr/bin/env python
import os
import datetime
import RPi.GPIO as GPIO
#definition du port Gpio 4 en sortie frequence 10Hz rapport cyclique 70
GPIO.cleanup()
GPIO.setwarnings(False)
GPIO.setmode(GPIO.BCM)
GPIO.setup(4, GPIO.OUT)
p = GPIO.PWM(4, 10)
# Return CPU temperature as a character string
def getCPUtemperature():
res = os.popen("vcgencmd measure_temp").readline()
return res[5:7]
def main():
while 1==1:
d = datetime.datetime.today() #on lit date et heure
while d.hour >= 6 and d.hour <= 22: #si entre 6H00 et 22H00 on refroidi
T=int(getCPUtemperature()) #on lit la temperature
d = datetime.datetime.today()
if T > 55: #si T superieur a 55 on refroidi
while T > 35: #tant que T n a pas atteint 35
p.start(70) #des accouts pour obliger le moteur a tourner
T=int(getCPUtemperature())
else: #sinon T inferieur a 55
p.stop() # on ne fait rien
if __name__ == "__main__":
main()