lunes, noviembre 13, 2006

Switch Manual - Auto

El circuito encargado de implementar el switch entre control manual y automático debe ser complemtamente confiable ya que es el que nos permite retomar el control manual en caso de detectar un mal funcionamiento del controlador automático que estamos desarrollando.

Por este motivo el circuito debe ser totalmente independiente del procesador que implementa el control autónomo y debe ser comandado directamente por un canal del receptor que recibe la señal del trasmisor RC en tierra.

Para hacer el cambio se utilizará el canal 7 (ON-OFF), cuando el selector del Tx correspondiente a este canal está en OFF la señal PWM tiene el pulso en uno durante 1 msec y cuando está en ON el pulso dura 2 ms. La señal PWM tiene un período de 20 msec (frec. 50 Hz).

El circuito encargado del implementar el switch debe discriminar entre estos pulsos y generar una señal (cero o uno lógico) que comande la pata select de un multiplexor que recibe las señales que comandan los servos desde el receptor Rx por un lado y desde el controlador autónomo por otro lado. Cuando el pulso de la señal PWM dura 1 ms (OFF) la pata select del MUX debe valer cero y por tanto los servos son comandados por el Tx, cuando el pulso dura 2 ms (ON) la pata select debe estar a uno y los servos son comandados por el Control Autónomo.

En primera instancia se diseñó un circuito analógico que en función del ancho del pulso generaba la señal para la pata select. Este circuito en esencia tenía comparador de la señal con un voltaje de referencia intermedio y luego un filtro que cargaba un condensador. En función de la duración del pulso se lograba un cero o un uno en la salida. Este circuito depende fuertemente de este voltaje de referencia, que depende del estado de las baterías.

Se hizo el layout, se mandó a hacer la placa a ENEKA y nosotros realizamos el montaje de los componentes. El impreso no estaba correctamente ruteado, por tanto hubo que corregirlo, y luego con el tiempo la oxidación de la placa produjo que algunas pista se cortocircuitaran haciendo que el circuito no funcionara en forma correcta. La confiabilidad no era suficientemente buena y se tomó la decisión de cambiar la implementación del circuito.

Actualmente el circuito se basa en un PIC 16F628 de Microchip. Un loop infinito muestrea la señal PWM que sale del canal 7 del Rx, cuando se detecta el flaco de subida se inicia un Timer y cuando se detecta el flaco de bajada se para el Timer. Luego se compara el tiempo registrado por el Timer con el valor correpondiente a 1.5 msec. Si el tiempo es menor de 1.5 msec la salida del pic es cero y si es mayor la salida es uno. Esta señal comanda la pata select del MUX.
El código fuente del programa que se graba en el pic se desarrollo en asembler. Gracias Danilo por colaborar en el desarrollo del programa y por su grabadora de PICs.

Ayer se hizo el programa y hoy 13 nov 2006 se va a realizar la prueba.