# Crear un piloto automático para avión de aeromodelismo.



## yoelmicro (Sep 25, 2008)

Hola a todos en el foro.

Tengo un amigo que vuela aviones de aeromodelismo y ha roto unos cuantos, entonces me pidió que le ayudara con este piloto automático, y me puse manos a buscar en la red pero no he encontrado nada al respecto. Solo fotos nada más, entonces decidí realizar uno.

El sensor de posición que pensé en usar es un Joystick de los que tienen los mandos de las consolas de juegos pero sin rebote y acoplado a él un péndulo para poder saber el ángulo de los ejes verticales y horizontales con respecto a la normal (Gravedad), un comparador por eje y por ultimo un micro controlador.

Si alguien conoce de algún sitio de interés para poder tomar ideas o algún circuito se los agradecería, pues no conozco mucho de este tema y me gustaría incursionar en él.

Desde ya gracias


----------



## Chico3001 (Sep 25, 2008)

Es mas simple que uses un acelerometro o giroscopio electronico para detectar ese tipo de cosas... son mucho mas rapidos, precisos y no se traban por que no son accionados mecanicamente, pero requerira el uso de un microcontrolador para hacer los calculos


----------



## yoelmicro (Oct 2, 2008)

Hola a todos en el foro.

Bueno Chico3001 te diré que por aquí no puedo encontrar nada parecido y me puse manos a la obra para construir algo práctico y sencillo.

Bueno he aquí el hardware que diseñe para controlar dos ejes en 3D.
El sensor es un Joystick de los que venden para reparar los de (PS2), pero hay que quitarles el muelle que tienen dentro para poderlo acoplar a un péndulo en su propio eje, después es necesario encapsularlo por el problema del aire. (En mi caso.)

Utilice un doble comparador + un uC del tipo 16F84 por su coste, con este uC puedo implementar todos los controles del avión, dado que en el nibble bajo del mismo ingreso los controles que vienen procedente del receptor en el avión y los transfiero al nibble alto mientras no esté en funcionamiento el piloto automático, también implemente la función de aterrizaje forzoso en caso de que se perdiera el link con el trasmisor.
Por el momento estoy mejorando el firmware del mismo, pues como dije anteriormente me baso en la práctica de mi amigo y todavía se le ocurren ideas. Cuando termine el mismo podre publicar dicho firmware.

Pero se me ocurre por si alguien quiere les dejo este pedazo de subrutina de( PWM) que a la salida en los registros RERRH y RERRV tienen el valor de conversión del (AD) implementado en el uC , los cuales se encuentran en el rango de 1-254 con una variación de tención del orden de los 0,02Volt por numero del registro.
La frecuencia de trabajo del la misma es de aproximadamente 2,56KHz pues el periodo de trabajo es de 782Tosc internos para un cristal de 8MHz.


```
PWM_H	MOVLW	1
	MOVWF	TON
	MOVLW	255
	MOVWF	TOFF
	;****************
LPH_0	BSF	PORTA,PPWM	;PIN(RA3)
	MOVF	TON,W
	MOVWF	CONT
LPH_1	DECFSZ	CONT,F
	GOTO	LPH_1
	BCF	PORTA,PPWM
	;****************
	MOVF	TOFF,W
	MOVWF	CONT
LPH_2	DECFSZ	CONT,F
	GOTO	LPH_2
	;****************
	BTFSC	PORTA,EJEH	;PIN(RA2)
	GOTO	EXITH
	INCF	TON,F
	DECF	TOFF,F
	MOVLW	255
	BCF	STATUS,Z
	XORWF	TON,W
	BTFSS	STATUS,Z
	GOTO	LPH_0
	GOTO	PWM_H
EXITH	MOVF	TON,W
	MOVWF	RERRH
	RETURN
;***********************************************

PWM_V	MOVLW	1
	MOVWF	TON
	MOVLW	255
	MOVWF	TOFF
	;****************
LPV_0	BSF	PORTA,PPWM	;PIN(RA3)
	MOVF	TON,W
	MOVWF	CONT
LPV_1	DECFSZ	CONT,F
	GOTO	LPV_1
	BCF	PORTA,PPWM
	;****************
	MOVF	TOFF,W
	MOVWF	CONT
LPV_2	DECFSZ	CONT,F
	GOTO	LPV_2
	;****************
	BTFSC	PORTA,EJEV	;PIN(RA1)
	GOTO	EXITV
	INCF	TON,F
	DECF	TOFF,F
	MOVLW	255
	BCF	STATUS,Z
	XORWF	TON,W
	BTFSS	STATUS,Z
	GOTO	LPV_0
	GOTO	PWM_V
EXITV	MOVF	TON,W
	MOVWF	RERRV
	RETURN
;***********************************************
```

Espero que los interesados me ayuden a realizarlo. Cualquier sugerencia es bienvenida.

Desde ya gracias.


----------



## Subway87 (Oct 5, 2008)

échale un ojo a esto:
http://paparazzi.enac.fr/wiki/index.php/Main_Page


----------



## Eduardo ringler (Dic 4, 2008)

Amigo el sistema de pendulo te jugara una mala pasada cuando el modelo realice un giro ya que la fuerza centrifuga indicara una condicion erronea y el modelo entrara en spin con direccion al suelo 

Hay unos pilotos automaticos que trabajan con 4 sensores de luz ...adelante ,atraz y ambos lados ...detectan los cambios de luz del horizonte ....detalle ..no se puede volar al amanecer noi al anochecer

Lo otro es el Giroscopo


----------

