En busca del driver perfecto.
Diseño del driver perfecto.
Partimos de la base mas o menos anterior:
4 modos:
Modo 1 100 % de Luz
Modo 2 85 % de Luz
Modo 3 35 % de Luz
Modo 4 5 % de Luz.
Estos valores (excepto el 100 %) son aproximados pues el duty cycle en apagado pierde algo mas de tiempo en la comprobación del DA y demas, pero vamos que no influye demasiado, lo unico es que es dificil conseguir mas de un 85 o 90% de luz en modo 2 pero bueno para eso esta el 100%. Por cierto la frecuencia del pwm la he decidido dejar en 1000 hz, total para este tipo de led no hace falta mas.
Este driver lo he basado en el 12F675 que lleva incorporado un conversor AD, así que monitorizo la tension de la bateria para modificar el comportamiento del driver en funcion de la carga de la bateria.
Como trabajo con un DA, pues puedo establecer los umbrales como me parezca bien, he puesto 2.
a 3 Voltios baja modo y a 2,6 para la linterna.
Un Ejemplo si estoy en modo 1 y la tensión de la bateria cae hasta 3 voltios pasa al modo 2 y así sucesivamente. Cuando llega al modo 1 entra en el modo RIP que he llamado en el cual la linterna parpadea aproximadamente 100 ms cada 4 o 5 segundos hasta los 2,6 voltios en los que se apaga.
Ha implementado un puerto debug en el driver de manera que conectandome por serie puedo saber el modo, tensión de la bateria en el arranque, en el cambio de modo, y cuando salta modo.
Ahora el esquema:

En el futuro, tengo intencion de hacer una revisión del firmware de manera que se puedan modificar los valores de los modos y los umbrales de tensión de la bateria por el puerto serie de debug que tengo implementado, si consigo reducir el firmware lo hare con el 12f675, pero lo veo bastante improbable pues con este firm casi ocupo 1k que es la memoria del pic, lo mas probable es que lo cambie por un 12f683 que tiene 2 k de memoria.
De momento lo tengo funcionando en una protoboard y funciona, quiero ver si soy capaz de meterlo en un 17 mm o así, con SMD, ya veremos pues se me da mejor programar que los pcbs.
Las preguntas... os parece bien los umbrales de bateria, modificariais alguno?? respecto a los modos, entiendo que cada uno tendra su opinion y dependera del led por eso quiero implementar que sea programable. Añadiriais algo, quitariais algo???. He pensado en poner un led para indicar media bateria por ejemplo.
Respecto al firmware, voy a pensarme si hacerlo publico pues al final lleva horas de trabajo y creo que puede ser una linea de negocio... si alguien quiere implementarlo y quiere un pic programado que me lo pida que se lo envio a coste.
Adelanto en una segunda versión quiero implementar un Boost-Converter controlado de manera que en toda la tensión de trabajo del driver tengamos la misma intensidad de suministro al led, y modifiquemos los modos con la conmutación de boost. el problema es que el 12f683 que si tiene PWM como mucho llega a 20 Khz, y necesito al menos 200 Khz para que funcione eficientemente para lo que me toca desempolvar el libro de ensamblador... ya veremos en que acaba la cosa, pues para conseguir un pwm un pWM de 200 khz con un una resolución de por ejemplo 10 niveles, pues necesito generar como 2 Mghz con el pic y no creo que pueda, por lo que tendre que esperar a que evolucionen los pics o intentar utilizar un pic con cristal lo que hara que aumente el tamaño, bueno ya veremos en que acaba la cosa......