Sistema de enfriamiento para Leds con Termistor y pwm

surbyte:
Mas alla de tu resolución, qué prohibe poner dos termistores y dos controles?
Proteger los LEDs es mas importante que esperar a que se queme el que no esperas que lo haga!!

Yo no dudaría. Te sobran pines, te sobra capacidad de cálculo del arduino.
Porque no gastar algo mas y usar otro termistor?

En 6 if que no estan anidados (dentro de un while) siempre vuelves a hacer la conversión analogRead(termistor) para qué? lo mismo con digitalRead(relay)!

En su lugar, lo haces al comienzo, cargas su valor en una variable y es lo mismo.
Nada va a cambiar tan rápido a nivel termino en esos microsegundos de código y en algo que vigilas a lo largo de 1.5 minutos!!

Muchas gracias por el tiempo dedicado, la verdad es que soy un bruto programando, hago las cosas a prueba y error y si anda queda así, ademas de que soy nuevo en esto.

El problema de agregar otro termistor es que ya esta todo montado y no es de fácil acceso(no son solo Leds, hay temporizador, sensores,etc), por eso pensé hacerlo por código. El primer código funcionaba "bien", así que el tuyo (que esta mil veces mejor optimizado) también debería funcionar.

El problema con el primer código es que esperaba 1.5 minutos desde que el Led se encendía y comprobaba. Pero si el Led dejaba de funcionar mas adelante (habiendo pasado la comprobación) el flag queda en "true" hasta hasta que el relay cambie de estado y obviamente esta mal.

Por eso en el segundo código, los coolers se encienden siempre al 100% hasta que el termistor pase los 630 y ahí empieza a regular, de esta forma siempre van a estar encendidos y en caso de que deje funcionar el que posee el termistor, ambos coolers quedaran al 100%.

Gracias nuevamente, el código que modificaste me sirve mucho para aprender como hacer las cosas bien!