[Cursodrones] Control PID

Oscar Higuera oscar.higuera en gmail.com
Mie Mar 4 10:34:56 CET 2015


Hola jessi,

Como decia en otro mail lo primero que debes hacer en el metodo execute es
llamar al update para que se actualice la posicion del drone, pero no puede
a continuacion hacer un while donde meter todo el procesamiento del PID
porque entonces bloqueas el ciclo de ejecucion.

El metodo execute() se va a ejecutar continuamente y debe ser asi, por lo
que en ligar de usar un while es como si YA estuvieses dentro de un gran
bucle de ejecucion. Lo mejor es definirte una serie de estados como si de
un automata de estados finito se tratase, y en cada ejecucion compruebas en
que estado estas y ejecutas el codigo correspondiente.

En el caso de que te encuentres en medio de una navegacion el codigo de ese
estado solo debe recalcular el error, llamar al PID para actualizar la
salida y cambiar de estado en caso de que se cumplan las condiciones
(waypoint alcanzado).

Pero sea lo que sea que hagas no debes bloquear la ejecicion de execute ya
que ya cuenta con su propio planificador y lo ideal es que se actualice la
posicion del drone una sola vez por ciclo de ejecucion.

Queda claro?

Saludos,

Sent from my iPhone

On 4 Mar 2015, at 10:24, jessi fernandez martinez <jessi_3118 en hotmail.com>
wrote:

 Hola

Estoy intentando hacer el programa del control PID pero tengo un problema y
es que  si uso un while no se actualiza la posición de los drones. ¿Cómo
puedo solucionar esto?

Un saludo y gracias

_______________________________________________
Cursodrones mailing list
Cursodrones en gsyc.es
http://gsyc.es/cgi-bin/mailman/listinfo/cursodrones
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: http://gsyc.es/pipermail/cursodrones/attachments/20150304/b8fc6dd0/attachment-0001.htm 


More information about the Cursodrones mailing list