ImageImageImageImage
Hazte Socio (El Foro siempre Gratis)
Paga con Tarjetas+ Info www.arde.cc/socios

Proyecto: Controlador de posición

Muestranos tus proyectos y pidenos la ayuda que necesites

Moderator: Junta Directiva

Post Reply
Ranganok
Usuario Desarrollador
Usuario Desarrollador
Posts: 3874
Joined: Mon Nov 07, 2005 3:10 pm
Location: Barbaros del Valle
Contact:

Re: Proyecto: Controlador de posición

Post by Ranganok » Tue Oct 23, 2012 10:33 am

A ver, me estoy refiriendo a ejes locales, no globales (imagen adjunta).

Como bien decís la guiñada habría que corregirla con el giroscopio y el magnetrómetro. Pero hay un problema: si ese eje (local) esta en su sitio (apuntando al centro de la tierra) no necesito corregirlo ya que no me afecta a la estabilidad (puedo corregirlo con la integración de los datos del gyro ya que no tengo magnetrómetro), sin embargo si ese eje (local) está inclinado respecto a la tierra un giro de giñada me afectaría a los otros dos ejes por loque tengo que corregir ese eje (local) y devolverlo a su posición, lo cual se encarga el accelerómetro (aunque con un pequeño lag).

Pongo la imagen aquí abajo para que quede más claro.
Image

Que conste que estamos hablando de giros pequeños en los ejes (+-30º máx). y de una alta tasa de refresco (100Hz en medidas y cálculos y una tau de aprox 0.5s)
sistemasorp wrote:Ya que estamos hablando de eso. Me gustaría saber si con un acelerómetro de 3 ejes y un magnetómetro también de 3 ejes serviría para detectar movimientos de alabeo (roll), cabeceo (pitch) y guiñada (yaw).

Hace tiempo me compré este módulo: http://www.pololu.com/catalog/product/1250" onclick="window.open(this.href);return false; pero no he encontrado información por internet de cómo sacar la información completa de posición en 360º, sólo de cómo hacer que la brújula esté compensada. ¿Serviría el DCM del que hablais? ¿es DCM lo mismo que los cuaterniones?, ¿Quizá con filtros de Kalman?
Sí, con el accelerómetro sólo se puede hacer, sin embargo tiene un pequeño lag (filtro paso bajo) que puede desestabilizar el sistema (hay que elegir o más ruido en las medidas o más lag).

Hay un tipo que lo hace sólo con un accelerómetro y un DCM (una matriz de rotación): https://sites.google.com/site/mikuadricoptero/" onclick="window.open(this.href);return false;

DCM != cuaterniones != filtros de Kalman
sistemasorp wrote:Como todo esto me pilla de nuevas, ¿hay alguna página para dummies que lo explique bien?
No, que yo haya encontrado (al menos en castellano), por eso estoy documentando el proyecto y colgandolo en el blog.

S2

Ranganok Schahzaman
Attachments
EjesMovimientoENU.png
(25.5 KiB) Downloaded 719 times
skiras.blogspot.com

"En igualdad de condiciones la explicación más sencilla es la cierta"

User avatar
TycooN
Posts: 5
Joined: Mon Jul 31, 2006 10:01 pm
Location: Zaragoza

Re: Proyecto: Controlador de posición

Post by TycooN » Tue Oct 23, 2012 10:47 am

(puedo corregirlo con la integración de los datos del gyro ya que no tengo magnetrómetro)
Ciertamente es así. Siempre que tengas en cuenta que de este modo, el cuadri no se quedará clavado en un rumbo concreto, sino que irá guiñando poco a poco, por efecto de la deriva y tendrás que corregirlo con el mando. Si estás cómodo con eso, no tendrás mayor problema.
Un experto es alguien temeroso de aprender algo nuevo, pues dejaría de serlo

User avatar
Ave_Fenix
Usuario Avanzado
Usuario Avanzado
Posts: 205
Joined: Thu Jan 22, 2009 8:29 pm

Re: Proyecto: Controlador de posición

Post by Ave_Fenix » Tue Oct 23, 2012 10:55 am

sistemasorp wrote:
Como todo esto me pilla de nuevas, ¿hay alguna página para dummies que lo explique bien?

Gracias.
Sí, https://sites.google.com/site/kuadricoptero/" onclick="window.open(this.href);return false; como hay puesto TycooN

Ahí explica el DCM paso a paso.

Ranganok
Usuario Desarrollador
Usuario Desarrollador
Posts: 3874
Joined: Mon Nov 07, 2005 3:10 pm
Location: Barbaros del Valle
Contact:

Re: Proyecto: Controlador de posición

Post by Ranganok » Tue Oct 23, 2012 10:58 am

TycooN wrote:Ciertamente es así. Siempre que tengas en cuenta que de este modo, el cuadri no se quedará clavado en un rumbo concreto, sino que irá guiñando poco a poco, por efecto de la deriva y tendrás que corregirlo con el mando. Si estás cómodo con eso, no tendrás mayor problema.
Sí, lo tengo en cuenta. Sólo es con fin de comparar este método con el DCM y los quaterniones.

S2

Ranganok Schahzaman
skiras.blogspot.com

"En igualdad de condiciones la explicación más sencilla es la cierta"

Ranganok
Usuario Desarrollador
Usuario Desarrollador
Posts: 3874
Joined: Mon Nov 07, 2005 3:10 pm
Location: Barbaros del Valle
Contact:

Re: Proyecto: Controlador de posición

Post by Ranganok » Thu Oct 25, 2012 3:33 pm

He añadido un post con las dudas que surgieron:

http://skiras.blogspot.com.es/2012/10/4 ... es-ii.html" onclick="window.open(this.href);return false;

S2

Ranganok Schahzaman
skiras.blogspot.com

"En igualdad de condiciones la explicación más sencilla es la cierta"

User avatar
beamspot
Usuario Desarrollador
Usuario Desarrollador
Posts: 1132
Joined: Thu Oct 11, 2007 8:56 pm
Nombre: Guillem

Re: Proyecto: Controlador de posición

Post by beamspot » Fri Oct 26, 2012 4:02 pm

¿Seríais tan amables de decirme dónde puedo buscar más información sobre DCM? La wikipedia no me devuelve nada, y mi capado IE no me permite acceder a los links de mikuadricoptero... Y me muero de curiosidad por aprender algo más sobre el tema.
Beamspot.

Ranganok
Usuario Desarrollador
Usuario Desarrollador
Posts: 3874
Joined: Mon Nov 07, 2005 3:10 pm
Location: Barbaros del Valle
Contact:

Re: Proyecto: Controlador de posición

Post by Ranganok » Sat Oct 27, 2012 12:40 pm

Si no te dan miedo las mates :D , en este artículo está bastante bien explicado:

http://www.starlino.com/dcm_tutorial.html" onclick="window.open(this.href);return false;

S2

Ranganok Schahzaman
skiras.blogspot.com

"En igualdad de condiciones la explicación más sencilla es la cierta"

User avatar
beamspot
Usuario Desarrollador
Usuario Desarrollador
Posts: 1132
Joined: Thu Oct 11, 2007 8:56 pm
Nombre: Guillem

Re: Proyecto: Controlador de posición

Post by beamspot » Sat Oct 27, 2012 7:01 pm

Lo he leído en diagonal, para evitar mi habitual pánico a cualquier forma numérica que no tenga que ver con el salario... :P

Así, a bote pronto, me parecen 'simples' matrices de rotación y transformación de coordenadas entre una plataforma inercial de referencia y el elemento móvil en el cual están ubicados los sensors (plataforma no inercial). Tal y como ya se insinúa en el artículo, esto es en realidad una simplificación de un filtro de Kalman, ya en el espacio tridimensional, donde se utilizan técnicas de mezcla de sensores similares a las utilizadas en filtros complementarios.

Es decir, esto está por debajo de un filtro de Kalman, de hecho, está implícitamente metido dentro de los filtros de Kalman, pero es más sencillo que uno de estos filtros. Habitualmente, la 'pelea' de los que utilizan Kalman suele estar precisamente en la simplificación del mismo, y la realidad es que en muchos casos, una vez realizada dicha simplificación, lo que suele quedar es algo parecido al DCM, con un sistema de corrección de los datos adquiridos a partir de estadísticas.

Los filtros complementarios realizan una función similar, donde las estadísticas en forma matricial son sustituidas por cálculos y variables del dominio frecuencial, con lo cual se convierten en una particularización más de Kalman, bajo ciertos supuestos (que generalmente son correctos) como la linealidad, la constancia (g y el campo magnético suelen ser constantes), y la fiabilidad de los datos en ciertos dominios frecuenciales (gyros y accels a altas frecuencias, GPS y magnetómetros a bajas frecuencias, si bien el GPS no es tan preciso, y en cualquier caso, lo es a muuuuuy baja frecuencia).

La ventaja que ofrece Kalman es básicamente la menor desviación estadística posible (aka, precisión), junto con el hecho (que hasta cierto punto también se puede obtener de DCM) de que se puede controlar y obtener el valor de consigna deseado con antelación. Es decir, Kalman lleva la palabra 'control' incluía de manera indirecta en sus genes, cosa que en el DCM se debe hacer aparte, aunque sea factible.

Determinar de manera empírica los valores y vectores de estado de Kalman suele ser algo realmente árduo, en comparación con DCM. Y generalmente es el cuello de botella. Pero por si alguien quiere saber más, el Harrier (aquí conocido como Matador), vuela gracias a Kalman. Y Kalman es el apellido de un ingeniero alemán, Rudolph Kalman, del equipo de Werner Von Braun, que con dicho 'invento' dio granes avances a un tal 'Proyecto Apolo', como para llevar a algunos pasajeros un poco lejos.

Si el DCM da miedo a algunos, Kalman directamente los mata del susto. Se nota que estamos cerca de Halloween. :o)
Beamspot.

User avatar
TycooN
Posts: 5
Joined: Mon Jul 31, 2006 10:01 pm
Location: Zaragoza

Re: Proyecto: Controlador de posición

Post by TycooN » Tue Oct 30, 2012 1:11 pm

Lo he leído en diagonal, para evitar mi habitual pánico a cualquier forma numérica que no tenga que ver con el salario
Cualquiera lo diría a juzgar por el post... jajaja

Los tipos de DIYdrones por ejemplo, usan DCM por ser barato computacionalmente y muy correcto en la práctica. Kalman es más caro, y teniendo en cuenta las limitaciones de un micro a bordo de un cuadricoptero, en la práctica puede no ser lo mejor. Eso sí, si tienes un pepinaco de micro y se quiere ser purista y usar Kalman, al ser un sistema no lineal, hay que utilizar el Kalman extendido.

Del Kalman no puedo aportar mucho más, no he mirado más que para ver que según que micro tengas, no merece la pena, para al final obtener unos resultados iguales en la práctica. Al final yo creo que importa más que hagas una buena sintonización de los PID que las diferencias entre estos filtros.
Un experto es alguien temeroso de aprender algo nuevo, pues dejaría de serlo

User avatar
beamspot
Usuario Desarrollador
Usuario Desarrollador
Posts: 1132
Joined: Thu Oct 11, 2007 8:56 pm
Nombre: Guillem

Re: Proyecto: Controlador de posición

Post by beamspot » Wed Oct 31, 2012 9:31 am

En habiendo hecho algo de Kalman, y haberme leído bastante en su momento sobre este tema (tenía problemas de insomnio, je, je), confirmo tu teoría. Las mates correspondientes, especialmente cuando se usa un Kalman extendido (que no es más que una linealización puntual de la función), son una auténtica paranoia a no ser que uno tenga potencia de cálculo sobrada. Y de momento, no suele ser el caso.

Es más, en muchos artículos precisamente hablan de que el DCM, los filtros complementarios y otros sistemas parecidos generalmente son casos puntuales de Kalman donde la simplificación sobre el filtro de Kalman bajo determinadas condiciones acaba por dar estos elementos, a los cuales se puede llegar por otros caminos. Y habitualmente, suele ser más sencillo, fácil de comprender, fácil de ajustar, y lógico. Total, generalmente el resultado es prácticamente el mismo. Sólo ciertas salvedades requieren Kalman, incluyendo los puristas, la navegación precisa con múltiples sensores, cohetes de buenas prestaciones, etc. Lo que sí me gustaría probar, es un Kalman en una tableta o smartphone, aprovechando los sensores internos. Me imagino hacer un cohete algo grande, meter dentro un iPhone 5 y aprovechar además la cámara interna, para luego recuperar las imágenes. Si se la pega, tampoco perderíamos tanto :twisted: , aunque eso de que la manzanita se quede con el código fuente y los copyrights me pondría bastante mosca. :evil:

O sea, 100% con TycooN.
Beamspot.

Post Reply

Who is online

Users browsing this forum: No registered users and 1 guest