
Control del ventilador RPi3 (RPM según temperatura)
-
- Pi Alpha
- Mensajes: 37
- Registrado: 08 Dic 2016, 07:22
- Agradecido: 0
- Agradecimiento recibido: 0
Haber si me podéis tirar un cable.
Llevo dos días como un tonto leyendo y repasando el hilo y no me acaba de chutar el invento.
Lo tengo todo montado en la placa de ensayo y funcionar funciona,pero no soy capaz de hacer que se ejecute al encender o reiniciar.Lo tengo que lanzar manualmente con ``bash fancontrol.sh´´.En crontab tengo lo siguiente:
@reboot /home/pi/fancontrol.sh > /dev/null 2>&1
Y la ruta del script es /home/pi, con permisos rwxr-xr-x (0755) por lo que creo que esta bien.
Si alguien me arroja un poco de luz se lo agradecería.
Llevo dos días como un tonto leyendo y repasando el hilo y no me acaba de chutar el invento.
Lo tengo todo montado en la placa de ensayo y funcionar funciona,pero no soy capaz de hacer que se ejecute al encender o reiniciar.Lo tengo que lanzar manualmente con ``bash fancontrol.sh´´.En crontab tengo lo siguiente:
@reboot /home/pi/fancontrol.sh > /dev/null 2>&1
Y la ruta del script es /home/pi, con permisos rwxr-xr-x (0755) por lo que creo que esta bien.
Si alguien me arroja un poco de luz se lo agradecería.
-
- Pi Alpha
- Mensajes: 37
- Registrado: 08 Dic 2016, 07:22
- Agradecido: 0
- Agradecimiento recibido: 0
Vale, al final lo he conseguido haciendo algo parecido a lo que decía Aerz en la primera pagina del hilo.
Lo resumo por si a alguien mas le pasa:
1º- borramos la linea de cron con:
crontab -e
vamos donde pone: @reboot /ruta/delscript/nombre_script.sh> /dev/null 2>&1 y lo borramos.
Guardamos con Ctrl - x.
2º Movemos el script donde lo tengamos a la carpeta /etc/init.d/ con el comando:
sudo mv / ruta/delscript /nombre_script.sh /etc/init.d/
3º Le damos permiso de ejecución con el comando:
sudo chmod +x /etc/init.d/nombre_script.sh
4º Luego, actualizamos el rc.d con el comando:
sudo update-rc.d nombre_script.sh defaults
PD: Si lo queremos desinstalar, ejecutamos:
sudo update-rc.d -f nombre_script.sh remove
rm /etc/init.d/nombre_script.sh
Cambia nombre_script.sh por el nombre de tu script.
Eso es todo ,gracias a todos por vuestro trabajo y espero que esto le sirva a alguien mas de ayuda.
Un saludo .
Lo resumo por si a alguien mas le pasa:
1º- borramos la linea de cron con:
crontab -e
vamos donde pone: @reboot /ruta/delscript/nombre_script.sh> /dev/null 2>&1 y lo borramos.
Guardamos con Ctrl - x.
2º Movemos el script donde lo tengamos a la carpeta /etc/init.d/ con el comando:
sudo mv / ruta/delscript /nombre_script.sh /etc/init.d/
3º Le damos permiso de ejecución con el comando:
sudo chmod +x /etc/init.d/nombre_script.sh
4º Luego, actualizamos el rc.d con el comando:
sudo update-rc.d nombre_script.sh defaults
PD: Si lo queremos desinstalar, ejecutamos:
sudo update-rc.d -f nombre_script.sh remove
rm /etc/init.d/nombre_script.sh
Cambia nombre_script.sh por el nombre de tu script.
Eso es todo ,gracias a todos por vuestro trabajo y espero que esto le sirva a alguien mas de ayuda.
Un saludo .
- Space
- Pi Alpha
- Mensajes: 16
- Registrado: 02 Mar 2017, 21:25
- Agradecido: 2 veces
- Agradecimiento recibido: 0
Hola, he montado el ventilador de la RPi3 y funciona todo bien, lo único que no consigo es que se pare el ventilador cuando la temperatura es baja.
He puesto la variable MIN_FAN=256 a 0, dejándola así: MIN_FAN=0 y en el log aparece el ventilador al 0%
04-03-17 | 19:02:19 | temp: 39'C | fan: 0% | pause: 15s
pero el ventilador sigue girando, a baja velocidad pero sigue girando.
Alguien que lo tenga funcionando me podría decir si se para el ventilador poniéndolo asi.
Un saludo.
He puesto la variable MIN_FAN=256 a 0, dejándola así: MIN_FAN=0 y en el log aparece el ventilador al 0%
04-03-17 | 19:02:19 | temp: 39'C | fan: 0% | pause: 15s
pero el ventilador sigue girando, a baja velocidad pero sigue girando.
Alguien que lo tenga funcionando me podría decir si se para el ventilador poniéndolo asi.
Un saludo.
- Dawn
- Pi Master
- Mensajes: 360
- Registrado: 16 Dic 2016, 10:33
- Agradecido: 0
- Agradecimiento recibido: 0
¿Has probado ha encender la RP sin iniciar el script? Si se pone en marcha el ventilador sin que el script funcione el problema es que tienes el cableado más puesto y el ventilador directo a corriente.Space escribió:Hola, he montado el ventilador de la RPi3 y funciona todo bien, lo único que no consigo es que se pare el ventilador cuando la temperatura es baja.
He puesto la variable MIN_FAN=256 a 0, dejándola así: MIN_FAN=0 y en el log aparece el ventilador al 0%
04-03-17 | 19:02:19 | temp: 39'C | fan: 0% | pause: 15s
pero el ventilador sigue girando, a baja velocidad pero sigue girando.
Alguien que lo tenga funcionando me podría decir si se para el ventilador poniéndolo asi.
Un saludo.
-
- Pi Alpha
- Mensajes: 37
- Registrado: 08 Dic 2016, 07:22
- Agradecido: 0
- Agradecimiento recibido: 0
Como dice Dawn revisa el cableado tanto en el GPIO como en las conexiones del transistor.Independientemente del script el ventilador se tiene que parar.Es mas, si esta bien conexionado y no funciona el script, el ventilador no funciona.Dawn escribió:¿Has probado ha encender la RP sin iniciar el script? Si se pone en marcha el ventilador sin que el script funcione el problema es que tienes el cableado más puesto y el ventilador directo a corriente.Space escribió:Hola, he montado el ventilador de la RPi3 y funciona todo bien, lo único que no consigo es que se pare el ventilador cuando la temperatura es baja.
He puesto la variable MIN_FAN=256 a 0, dejándola así: MIN_FAN=0 y en el log aparece el ventilador al 0%
04-03-17 | 19:02:19 | temp: 39'C | fan: 0% | pause: 15s
pero el ventilador sigue girando, a baja velocidad pero sigue girando.
Alguien que lo tenga funcionando me podría decir si se para el ventilador poniéndolo asi.
Un saludo.
Otra cosa, la linea de " MIN_FAN=256" la he modificado a " MIN_FAN=563" por debajo de eso el ventilador no me gira.Es un ventilador de 0.16 A, tengo encargado uno de 0.20 A haber que tal.(este foro me va costar el divorcio).
Aprovecho para poner unas fotos de como evoluciona mi pequeño gracias a este hilo y a otros de esta genial comunidad. Próximo proyecto led RGB de actividad y después portarlo todo a la caja de un router Thoson ono ,que tengo guardada.
- Space
- Pi Alpha
- Mensajes: 16
- Registrado: 02 Mar 2017, 21:25
- Agradecido: 2 veces
- Agradecimiento recibido: 0
Gracias por la respuesta, el problema creo que viene del transistor ya que utlilizé otro diferente al que se menciona en este hilo, concretamente le monté un CBC369 que vi por otra página.
Mañana a ver si compro el 2N3904 que pone en el primer post y lo monto.
Un saludo
Mañana a ver si compro el 2N3904 que pone en el primer post y lo monto.
Un saludo
-
- Pi Alpha
- Mensajes: 37
- Registrado: 08 Dic 2016, 07:22
- Agradecido: 0
- Agradecimiento recibido: 0
Ese es un transistor PNP no un NPN como se especifica en el tuto.Tendrias que montarlo en el positvo(Que no sé si se puede) y cambiar en el GPiO la señal de salida a entrada o viceversa. Que alguien me corrija si me equivoco, tengo la electrónica oxidada desde hace unos veinte años.
-
- Pi Alpha
- Mensajes: 37
- Registrado: 08 Dic 2016, 07:22
- Agradecido: 0
- Agradecimiento recibido: 0
Vale me auto corrijo. Es un NPN solo que los pines van en distinto orden. El que se muestra aquí van :emisor(E),Base(B)y colector (C) y el que tienes tu van:base(B),colector (C) y emisor (E).Ahora aplicando el orden correcto de vería funcionar. Prueba y nos cuentas.
- Space
- Pi Alpha
- Mensajes: 16
- Registrado: 02 Mar 2017, 21:25
- Agradecido: 2 veces
- Agradecimiento recibido: 0
Llevo toda la tarde de pruebas y no hay manera de que funcione, por hoy lo dejo aunque ya no se que hacerle.
Hoy compre el 2N3904 (menos mal que compre 2, por que el primero lo soldé y con termoretráctiles :alterado ),

Nada, no funciona
Mañana lo intentaré de nuevo.
Un saludo
Hoy compre el 2N3904 (menos mal que compre 2, por que el primero lo soldé y con termoretráctiles :alterado ),

Nada, no funciona
Gracias butarda66, tambien he probado el CBC369 conexionándolo como dices pero tampoco funciona.butarda66 escribió:Vale me auto corrijo. Es un NPN solo que los pines van en distinto orden. El que se muestra aquí van :emisor(E),Base(B)y colector (C) y el que tienes tu van:base(B),colector (C) y emisor (E).Ahora aplicando el orden correcto de vería funcionar. Prueba y nos cuentas.
Mañana lo intentaré de nuevo.
Un saludo
- Dawn
- Pi Master
- Mensajes: 360
- Registrado: 16 Dic 2016, 10:33
- Agradecido: 0
- Agradecimiento recibido: 0
Descarta cosas:Space escribió:No funciona, hice todas las pruebas posibles y no va, incluso lo monté en una RPi2 y tampoco funciona.
Será porque el ventilador es de 0.15A?
- Has probado el ventilador directo a 5v para comprobar que funcione?
- Has comprobado que la entrada y la salida del transistor está correctamente? no lo habrás intercambiado?
- Te da voltaje el pin 12? Te funciona el script? coge un voltimetro y verifica que el 12 te da tensión con el script en marcha.
- Space
- Pi Alpha
- Mensajes: 16
- Registrado: 02 Mar 2017, 21:25
- Agradecido: 2 veces
- Agradecimiento recibido: 0
Todas las pruebas están OK, el problema es el ventilador y los 0.15A, como le pasa a butarda66 con su ventilador de 0.16A que no gira por debajo de MIN_FAN=563, yo lo tengo que poner a MIN_FAN=1024 y entonces funciona, está claro que el ventilador ha de ser de 0.20A como pone el primer post, ya he encargado uno, cuando lo reciba ya contaré para ver como va.Dawn escribió:Descarta cosas:Space escribió:No funciona, hice todas las pruebas posibles y no va, incluso lo monté en una RPi2 y tampoco funciona.
Será porque el ventilador es de 0.15A?
- Has probado el ventilador directo a 5v para comprobar que funcione?
- Has comprobado que la entrada y la salida del transistor está correctamente? no lo habrás intercambiado?
- Te da voltaje el pin 12? Te funciona el script? coge un voltimetro y verifica que el 12 te da tensión con el script en marcha.
Un saludo
-
- Pi Alpha
- Mensajes: 37
- Registrado: 08 Dic 2016, 07:22
- Agradecido: 0
- Agradecimiento recibido: 0
Perdona por el retraso en responder. si estas utilizando el transistor que pusiste mas arriba(CBC369), mirando tu foto y suponiendo que vemos la parte plana del transistor de frente las conexiones son las siguientes:Space escribió:Llevo toda la tarde de pruebas y no hay manera de que funcione, por hoy lo dejo aunque ya no se que hacerle.
Hoy compre el 2N3904 (menos mal que compre 2, por que el primero lo soldé y con termoretráctiles :alterado ),
Nada, no funcionaGracias butarda66, tambien he probado el CBC369 conexionándolo como dices pero tampoco funciona.butarda66 escribió:Vale me auto corrijo. Es un NPN solo que los pines van en distinto orden. El que se muestra aquí van :emisor(E),Base(B)y colector (C) y el que tienes tu van:base(B),colector (C) y emisor (E).Ahora aplicando el orden correcto de vería funcionar. Prueba y nos cuentas.
Mañana lo intentaré de nuevo.
Un saludo
la primera patilla(la de la izquierda del todo)va al pin 12 de la placa . La segunda patilla (la del medio) va a masa en la placa. Y la tercera patilla( a la derecha del todo)va al negativo del ventilador.
Un saludo.
- Space
- Pi Alpha
- Mensajes: 16
- Registrado: 02 Mar 2017, 21:25
- Agradecido: 2 veces
- Agradecimiento recibido: 0
El que se ve en la imagen es el 2N3904, estoy a la espera del ventilador de 0.20A que creo es la causa del problema.butarda66 escribió:Perdona por el retraso en responder. si estas utilizando el transistor que pusiste mas arriba(CBC369), mirando tu foto y suponiendo que vemos la parte plana del transistor de frente las conexiones son las siguientes:
la primera patilla(la de la izquierda del todo)va al pin 12 de la placa . La segunda patilla (la del medio) va a masa en la placa. Y la tercera patilla( a la derecha del todo)va al negativo del ventilador.
Un saludo.
Un saludo
-
- Pi Alpha
- Mensajes: 37
- Registrado: 08 Dic 2016, 07:22
- Agradecido: 0
- Agradecimiento recibido: 0
El que se ve en la imagen es el 2N3904, estoy a la espera del ventilador de 0.20A que creo es la causa del problema.
Un saludo[/quote]
Si todavía no gira bien, edita la linea :
MIN_FAN=563
Por:
MIN_FAN=675
Eso establece la velocidad del ventilador mínimo como si estuviera conectado al pin de 3,3v. Hay debería girar bien, después ir bajando el valor poco a poco, asta que vuelva a dar problemas para establecer el MIN_FAN al que puede funcionar tu ventilador.
Un saludo[/quote]
Si todavía no gira bien, edita la linea :
MIN_FAN=563
Por:
MIN_FAN=675
Eso establece la velocidad del ventilador mínimo como si estuviera conectado al pin de 3,3v. Hay debería girar bien, después ir bajando el valor poco a poco, asta que vuelva a dar problemas para establecer el MIN_FAN al que puede funcionar tu ventilador.
- Dawn
- Pi Master
- Mensajes: 360
- Registrado: 16 Dic 2016, 10:33
- Agradecido: 0
- Agradecimiento recibido: 0
Bueno, os traigo una actualización del script que controla la velocidad del ventilador. La gran novedad es que genera un fichero resumen log por cada sesión de funcionamiento de la máquina. Así podréis ver y comparar de un rápido vistazo como se ha comportado en cuanto a temperaturas vuestra raspberry. Aquí os dejo una muestra del log:
Hora de inicio del sistema: 16:54:59 Rangos de temperatura de la CPU en % por tiempo < 40º ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓ 52% 40º-50º ▓▓▓▓▓▓▓▓▓▓▓▓▓ 26% 50º-60º ▓▓▓ 7% 60º-70º ▓▓▓▓▓▓ 13% > 70º 0% Velocidad media del ventilador: 49% Temperatura mínima alcanzada: 32ºC Temperatura máxima alcanzada: 64ºC Última lectura: 20:49:16 | temp: 41ºC | ventilador: 39% | pausa: 5sY a continuación os dejo el código. Tened en cuenta que he sido muy agresivo con los parámetros del ventilador, ya que la tengo la rp overclokeada. Velocidad mínima del 25%, variable entre 35º y 55º, a partir de 55º el ventilador va al 100%.