Noticias:

¿Cansado de tu avatar? AQUI TIENES DONDE ELEGIR

Menú Principal

Dudas giroscopicas

Iniciado por Minipepito, 23 de Marzo de 2010, 10:01:51 AM

Tema anterior - Siguiente tema

0 Miembros y 1 Visitante están viendo este tema.

WiWaEdu

Me ha gustado hacer pruebas con el giroscopio... ahora solo me queda pensar para que artefacto se puede usar... ÔÔ

Cita de: Minipepito en 25 de Marzo de 2010, 17:26:12 PM
...mi sangre es de los montes de tu tierra, carlichi,  pues mi padre es oriundo de Alfarnate.

Pues yo voy cada fin de semana a Colmenar!! xD
||

Jetro

Sigo sin tener el sensor.

Ahora, antes de que sueltes otra de tus lindezas determinando lo que se puede y no se puede decir en este hilo, lee y presta atención.

He hecho lo que probablemente deberías haber hecho tú desde el principio: ponerme en contacto con HiTechic. El sensor devuelve un valor entre 0 y 1023 y lo que tú consideras 0 en realidad se corresponde con un valor de 600 ya que el bloque NXT-G está hecho para representar un valor 600 como 0. Si hicieras las pruebas con NXC te devolvería un valor de 615 en tu caso, que según HiTechnic "is well within the reasonable range" (por si en inglés te cuesta: bien dentro del rango razonable).

De hecho, si lees la página de Ralph Hempel que citas en tu último mensaje con cuidado, apreciarás que a él le sale un valor de 617 (para ser más exactos una media ponderada de 617.8 tras 20 lecturas seguidas), valor muy similar e incluso superior al que tienes tú. (Y en ningún momento menciona un valor de desviación de 2,25º)

Ahora que ya sabes que tu giroscopio funciona perfectamente (y que solo tienes que poner el valor 15 en la casilla Offset del bloque NXT-G como ya te dije en la primera contestación) a ver con qué aplicación para el sensor nos sorprendes ;)

Blastem

Osea que según el lenguaje que se use para programar el NXT se tiene una escala diferente para el rango.
Muy bueno saber que no están unificadas las escalas, siendo la misma pieza, por si algún día pudiera desarrollar lo poco que sé de C con el NXT.

Gracias por la investigación Jetro  ;)

Vaya, ahora me habeis picado, directo a la Wanted List  xD

Por cierto, una desviación de 17 respecto 2^10 está muy bien para ser "un juguete". Los sensores con los que he hecho algún robot (no NXT) el cuatrimestre pasado daban auténtica pena.  :_(
Blog - Colección - Wanted List --- Look down, look down, Don't look 'em in the eye, Look down, look down, You're here until you die

Minipepito

#18
Quiero pedirte disculpas, jetro, por la dureza con la que te he tratado, sobre todo si tenemos en cuenta el post al que sustituye esta disculpa.

Todos mis calculos han sido incorrectos desde el principio y armado con mi ignorancia he arremetido contra ti, quien sin el gioscopio en la mano ha sido el que mas dudas me ha resuelto y  hecho que tenga mejor conocimiento del sensor.

  Te pido de corazón que me perdones, con la promesa de que guardare la prepotencia  que hasta este momento me ha caracterizado, en un cajón muy profundo.

Jetro

Encantado de haberte podido ayudar. De paso también he aprendido un par de cosas sobre un sensor que hasta la fecha tenía poco tratado. Aún hay algunas cosas que me gustaría aprender al respecto así que si te parece bien podemos continuar el hilo (o abrir otro si lo prefieres) para acumular estos conocimientos adquiridos en el mismo lugar tanto para beneficio nuestro como para quien el día de mañana se encuentre con el mismo problema.

carlichi69

Buena contestación Jetro se nota tu experiencia en el trato de foreros.

Minipepito te has pasao aunque has sabido rectificar a tiempo.

Jetro si quieres a favor de la comunidad no me importaría prestarlo ya que como comentaba, el que tengo, lo tenia sin utilizar y gracias a vosotros he visto que no parece difícil trabajar con NXT.

Tengo mas ladrillos HiTechnic por lo que si necesitas más ya sabes solo da un silbido. o_o

Wiwaedu y yo estamos dispuesto a aprender con vuestra ayuda, yo más que él (lo necesito más, soy mas torpe con esto de las nuevas tecnologías y mi ingles es pésimo :-\) todo lo que este escrito en ingles me da un poco de alergia.

Bueno espero seguir aprendiendo gracias a vosotros.

De vez en cuando no viene mal un pequeño roce de opiniones.

Minipepito

Agradecido por tu perdon, jetro. Y Tambien disculparme con el resto de  foreros por mi actitud.

Me gustaría de momento continuar es este hilo, pues mi giroscopio es más chuleta que yo y ha decidido vacilarme, explico:

Anoche despues de mi rabieta hacia jetro, empece a repetir las pruebas como tantas veces al día, y tras usar este programa:http://www.megaupload.com/?d=FHX0LMPW tantas veces usado, incluso el mismo día, el giroscopio empieza a comportarse como el de carlichi, no se mueve al 1 hasta por lo menos 10 segundos deribando en un minuto no más de 4 grados. Tierra tragame. He repetido el test hasta que este mediodia agoté la bateria del nxt con identicos resultados. Cargado el ladrillo, y yo, con la barriga llena y una buena siesta en mi cuerpo,  retomo las pruebas y ...Tachann... ha vuelto la deriba de más de un grado por segundo, toma ya, con un par de narices. Cierto es, que si no hubiera empezado el giroscopio a presentar resultado faborables, no me habría replánteado mi postura, por lo que le agradezco al giroscopio que el también cambiara de actitud, aunque solo fuese por unas horas.

Creo haber disfrutado durante unas horas del correcto funcionamiento del sensor, y me ha gustado, jejeje, no sé porqué ha cambiado de pronto su comportamiento, ni si de pronto volvera a funcionar como anoche ¿le habrá afectado la carga?, estoy completamente perdido.

carlichi69

A ver si me entero?
Citarauthor=Jetro .

Re: Instrucciones de montaje para Mindstorms Next
« Respuesta #25 en: 11 de Octubre de 2009, 14:56:30 »

El acelerómetro mide cambio de velocidad:
- empieza a girar y lo detecta.
- sigues girando  la misma velocidad y NO lo detecta
- mide tres ejes

El giroscopio mide cambios de inclinación:
- empiezas a girar y lo detecta
- sigues girando a la misma velocidad y SI lo detecta
- mide un solo eje

velocidad e inclinación son pues conceptos 'opuestos'.
De alguna manera se podría decir que un giroscopio es como una brújula, pero se puede usar en un eje distinto que solo el horizontal

Leyendo en la pagina de HiTechnic dice que la posición idónea del giroscopio es en posición vertical.

¿Daría los mismos valores en posición horizontal, vertical o inclinada?

¿Detectaría movimientos en vertical? o para eso hay que utilizar un acelerómetro.


Blastem

Respondo con mis limitados conocimientos de Mecánica.  o_o

Citar¿Daría los mismos valores en posición horizontal, vertical o inclinada?
Teóricamente sí, en la práctica seguramente no por cuestiones de geometría y dinámica.

Citar
¿Detectaría movimientos en vertical? o para eso hay que utilizar un acelerómetro
En términos de mecánica Teórica tendrías que subir perfectamente vertical (mejor dicho, dentro del rango de error de medida) para que el giróscopo no lo detectase. Otra cosa es para la aplicación que lo uses.
Si pretendes detectar si algo sube (Se acelera verticalmente) efectivamente, el acelerómetro es mejor para ese movimiento :)

De todas maneras he de deciros que aunque suene mal este sensor es "un juguete", es decir, no podemos pedirle una precisión extrema a algo que está destinado al consumo infantil-juvenil y a bajo coste. Lo he podido comprobar en la carrera con los diferentes sensores que he utilizado para hacer robotitos y prácticas. Se tarda más en calibrar adecuadamente los sensores que en hacer un robot en sí. Alguno de los que nosotros hemos tenido llegaba a dar errores del 25%, pero programando según se calibraba obteníamos el resultado deseado. :)

Por cierto, en mi opinión los rangos de error que ponéis son más que aceptables para ser un sensor de 50€. Las medidas que das, minipepito son menores del 5%. Una maravilla en términos estadísticos.

Saludos!
Blog - Colección - Wanted List --- Look down, look down, Don't look 'em in the eye, Look down, look down, You're here until you die

Jetro

La diferencia en la deriva desde luego es más que curiosa.

Antes de seguir quiero exponer algunos datos que he ido recopilando. Las especificaciones del sensor indican que es capaz de medir +-360º/s. Esto significa que puede leerla tanto en positivo como en negativo por lo que el rango total de medición del sensores de al menos 720º. Digo al menos, porque cuando un fabricante asegura que su producto puede hacer X normalmente hay un pequeño margen para que esto se cumpla en el 100% de los casos. De hecho, el sensor puede (técnicamente) medir 1024º y cada unidad de valor que informa el sensor corresponde a 1º.

Al tratarse de un sensor sencillo, barato, un complemento a un juguete, las tolerancias son amplias, pero no por ello malas. Me explico: aunque los motores del NXT se pueden programar en pasos de 1º, es fácil comprobar como con el motor parado hay una holgura de aproximada 5º de tolerancia que permite mover el eje de salida sin que el sensor de rotación interno lo detecte. Sabiendo esto, es posible tomar medidas tanto en la programación como en la construcción de un robot para que esta holgura no tenga efectos negativos sobre el comportamiento de un robot.

Como se desprende de la información en la pagina de Ralph Hempel hay que tener en cuenta que el sensor no siempre dará exactamente la misma lectura aún cuando no se mueve y Gus Jansen me comenta que en sus experimentos con el sensor, el valor que reflejaba el sensor era un 25% superior al valor calculado en base a la velocidad del motor.

Por lo tanto parece que sea importante nunca usar una sola lectura sino una media ponderada (como en el ejemplo de programa que se encuentra en la pagina de HiTechnic) y que merece la pena hacer un calibrado automático al inicio de cualquier programa que use este sensor.

Dicho lo cual, releyendo tu primer mensaje, parece que tu duda inicial no era sobre la deriva sino sobre el valor (posiblemente demasiado alto) que en todo momento mostraba el sensor, y mencionas una lectura relativamente constante entre 14 y 16 (es decir, +-1). Ese valor por lo tanto no es un valor de deriva sino de posición de "0" algo desplazada de la esperada. ¿Seguimos hablando de lo mismo o se ha presentado un nuevo problema?

Jetro

Cita de: carlichi69 en 26 de Marzo de 2010, 21:31:06 PM
Leyendo en la pagina de HiTechnic dice que la posición idónea del giroscopio es en posición vertical.
Yo no encuentro esto en la página de HiTechnic...

WiWaEdu

Cita de: Jetro en 26 de Marzo de 2010, 21:57:34 PM
Yo no encuentro esto en la página de HiTechnic...

Jetro, lo pone por aqui: http://www.hitechnic.com/cgi-bin/commerce.cgi?preadd=action&key=NGY1044

Cita de: HitechnicThe axis of measurement is in the vertical plane with the gyro sensor positioned with the black end cap facing upwards is shown.
||

Jetro

Traducido significa: El eje de medición se encuentra en el plano vertical cuando el sensor se coloca con la tapa negra hacia arriba.
Eso no dice nada sobre en qué plano funciona mejor o pero, simplemente indica la orientación del plano de lectura. Si colocas el sensor sobre una mesa con los conectores para pins hacia arriba el plano de lectura será el horizontal.

WiWaEdu

La verdad es que probandolo funciona igual en todas las posiciones  :)
||

Minipepito

#29
Según las pruebas realizadas esta mañana, la máxima velocidad angular que marca mi giroscopio es +398 grados/segundo  -533 grados/segundo en el plano horizontal.

Aquí, una pequeña aplicación, http://www.megaupload.com/?d=KATU8RYV, que hace que unas orugas giren 90 grados en sentido positivo, pero si algo detiene el giro por completo antes de llegar a los 90 grados,  los motores se paran.

Cuando me quise enfrentar a mi segundo reto, un sistema de guiado que sustituyera a un Adder/Subtractor, me di cuenta de que el robot, desde el primer segundo, tendía a cabecear hacia la derecha,lo que inició las mediciones que me llevaron a comprobar que en reposo y usando el programilla que marca los grados que gira, si pasaban 10 segundos, 10 grados  que a mí me sumaba, y esto lo relacioné equivocadamente con la  deriva incial.  Pero el problema sigue ahí, pues a carlichi en 10 segundos le suma un grado.

Edit
Cambiado por un programa sin  Blocks.