Saltar al contenido
Cursos Ladetec

2021Prototipo

Control del disparo de encendido a partir del sensor del delco

En un encendido convencional el tiempo que la bobina pasa cargándose lo decide la geometría del sensor del distribuidor, y por eso es el equivocado casi siempre. Este controlador lo decide él, midiendo con un comparador cuándo la bobina está de verdad cargada. Llegó a funcionar en banco de pruebas; no llegó a un motor.

La idea es de Casanova, el mismo especialista en circuitos de automóvil con quien hice el controlador de electroventilador del Lada. Me la planteó en mayo de 2021 en tres hojas manuscritas: el diagrama de bloques, los cronogramas de las señales y la lista de lo que el equipo tenía que resolver. Yo puse el firmware y el banco de pruebas.

Hoja de papel escrita a lápiz: arriba un diagrama de bloques con entradas E1 y E2 y salida S, al lado la rampa de corriente de la bobina frente a la señal E2, en el medio varios cronogramas de pulsos superpuestos y abajo dos requisitos numerados escritos a mano
La hoja de Casanova del 17 de mayo de 2021, que es el proyecto entero antes de escribir una línea de código: el diagrama de bloques, la rampa de corriente de la bobina contra el comparador, los cronogramas de los tres tipos de delco y, abajo, los dos requisitos — subir el tiempo de carga y no dejar nunca la bobina sin cargar, aunque haya que atrasar la chispa.

El problema es este. En un delco, el ángulo durante el cual el sensor manda cargar la bobina es fijo, porque está tallado en la pieza. Un ángulo fijo repartido sobre un período que cambia con las revoluciones da un tiempo de carga que cambia con las revoluciones, y la bobina no funciona así: la bobina necesita siempre más o menos los mismos milisegundos. A ralentí le sobra tiempo y se calienta; a altas revoluciones no le alcanza y la chispa sale floja justo cuando más falta hace.

La solución es separar las dos cosas que el delco mezcla. Del sensor se toma solo el flanco, como referencia de cuándo tiene que saltar la chispa, y el tiempo de carga lo decide el microcontrolador por su cuenta. Pero decidirlo a ojo sería cambiar un número equivocado por otro, así que entra la segunda señal: un comparador sobre la corriente de la bobina avisa en el instante en que la bobina está realmente cargada. El controlador mide ese tiempo y ajusta el de la próxima chispa. Con la misma señal detecta la bobina en cortocircuito o puenteada, porque una bobina en corto «carga» en menos tiempo del que es físicamente posible.

Hay un segundo problema que sale de lo anterior. Si la carga empieza en el flanco del delco, a partir de cierta velocidad el período ya no da para completar los milisegundos que la bobina pide. La máquina de estados tiene por eso tres regímenes: por debajo de 500 revoluciones arranca la carga en el flanco; por encima deja de esperarlo y lo predice, calculando a partir del período medido el instante en que hay que empezar a cargar para que la chispa caiga donde debe.

Diagrama de máquina de estados con cuatro cajas redondeadas —ESPERANDO, CARGANDO, DESCARGANDO y CORTOCIRCUITO— unidas por flechas etiquetadas Trans1 a Trans4, cada una con su condición escrita al margen
La máquina de estados con las condiciones de cada transición al margen. En BAJA se arranca la carga con el flanco del delco; en MEDIA, con el instante estimado a partir del período medido, porque el flanco llegaría demasiado tarde.

No había motor para probarlo, así que hubo que fabricar uno de mentira. Un ESP32 con MicroPython hace de distribuidor y recorre una lista de regímenes —400, 550, 700, hasta 1400 y de vuelta a 400— para ver qué pasa al acelerar y al desacelerar. Un segundo STM32 hace de analizador lógico: muestrea cuatro líneas, guarda solo los cambios con su marca de tiempo en microsegundos y los manda por serie a un script de Python que dibuja las tres señales con los milisegundos entre flancos anotados debajo. Dos placas de tres dólares en lugar de un osciloscopio de cuatro canales.

Las capturas son el resultado del proyecto. Con el comparador simulado a 1,5, 2,2 y 2,9 milisegundos, el tiempo de carga converge a cada uno de ellos; por encima del tiempo inicial se queda donde está; a 800 microsegundos el controlador lo declara cortocircuito y corta. La realimentación hacía lo que tenía que hacer.

Cuatro bandas apiladas de un diagrama de tiempos con tres trazos: abajo uno azul de onda cuadrada cuyos períodos se van acortando de izquierda a derecha, en medio uno rojo con muescas estrechas hacia abajo y arriba uno verde con pulsos; bajo el eje, los milisegundos entre flancos
El barrido de velocidad completo, medido con el analizador lógico casero. Abajo la señal del delco (azul), que se acelera de izquierda a derecha; en medio el control de la bobina (rojo): sus muescas se mantienen en 3,5 ms aunque el período se encoja a la mitad. Eso es exactamente lo que el proyecto tenía que conseguir.
Diagrama de tiempos en cuatro bandas: al principio un pulso verde estrecho y una muesca roja, y a partir de ahí el trazo rojo se queda plano arriba durante toda la captura mientras el azul de abajo sigue conmutando
La protección, disparada. Con el comparador simulado a 800 µs —por debajo del mínimo físico— el controlador declara cortocircuito al primer ciclo y deja de disparar: el rojo se queda arriba para siempre mientras el delco, abajo, sigue girando.

Y ahí se quedó. No tengo constancia de que pasara del banco a un motor, y el repositorio lo dice en lugar de insinuar lo contrario. El bloqueo por voltaje de batería y el reconocimiento de los tres tipos de distribuidor, que estaban en la lista de Casanova, nunca se implementaron. Lo que sí está entero es lo que se midió, y está preservado tal cual.

Lo que no hace

  • No controla el avance del encendido. Decide cuánto carga la bobina y cuándo descarga respecto al flanco, no adelanta ni atrasa la chispa según la carga del motor.
  • El bloqueo por voltaje de batería y el reconocimiento de los tres tipos de distribuidor quedaron en la lista de requisitos, sin implementar.
  • No hay esquemático. El acondicionamiento de la entrada del delco y el comparador de corriente no están documentados.
  • Nunca se probó sobre un motor en marcha. Todo lo que hay medido es contra un generador de señal.

El código fuente publicado no es el que se midió. El fuente es de diciembre de 2021 y tiene la realimentación del comparador comentada; el binario y las capturas son de junio, cuando estaba activa. O sea que la versión más nueva es la menos capaz. El repositorio guarda las dos y el README explica línea por línea en qué se diferencian, junto con los defectos que tiene el código tal como quedó.

Código →