Hola @Bitwise Ar, muy bueno el canal y los videos, te cuento 2 cosas que encontre: 1- Con respecto al error de ENABLE_MPU_OVERFLOW_PROTECTION(), esto ya no es mas necesario y se puede comentar o borrar esa linea 2- Con respecto al MPU-6050: me puse a trabajar en un pryecto con este gyroscopo MPU, me encontre con un inconveniente de colgadas aleatorias leyendo el sensor, estuve 1 semana investigando el problema y logre encontrar una modificacion por un bug-report que le pusieron a la biblioteca Wire.h, desde hace un par de años le incorporaron una nueva funcion para establecer un timeout (en microsegundos) para evitar esperas ocupadas dentro del codigo de la biblioteca Wire, cosa que sucede por ej, con el modulo que tiene el MPU-6050 ya que este no cumple exactamente con la especificacion del standar i2c y si por ej, se produce una demora entre varios dispositivos en el mismo bus etc, por defecto la biblioteca wire tiene seteado un timeout no muy optimo, por eso es recomendable incorporar luego de iniciar Wire, poner este¡a linea: Wire.setWireTimeout(3000,true); // timeout en uSeg, y true para que reinicie el bus luego del timeout con esta modificacion mejora notablemente la tolerancia a glitches en el bus i2c, se debe ajustar el valor del timeout empiricamente en cada caso pero parece ser que 3 ms (3000 uSeg) son un promedio aceptable ademas de la funcion Wire.setWireTimeout() se incluyo un flag que se puede encuestar (Wire.getWireTimeoutFlag()). que indica si se produjo un reset del bus i2c por vencimiento del timeout configurado en setWireTimeout(). Toda esta informacion la encontre en un repositorio de gitHub que se puede encontrar googleando el siguiente texto: Document Wire timeout API on website #10803 espero esta informacion le sea util a la gente y no tengan que perder una semana de tiempo de desarrollo con esta biblioteca.
@@enzotestagrossa95 la verdad que no lo se, pero en mi caso no necesite usar el magnetometro asi que no te sabria decir, igualmente a mi me da ese mensaje y sin embargo el giroscopo funciona
Hola Bitwise Ar, Hola Juan Montenegro. Han notado que los valores de Yaw van incrementando conforme pasa el tiempo? Con el sensor estático. Aquí los valores iniciales: Yaw 0.0072, Pitch -0.0420, Roll 0.5246, Yaw 0.0071, Pitch -0.0350, Roll 0.4826, Yaw 0.0141, Pitch -0.0280, Roll 0.4476, Yaw 0.0210, Pitch -0.0141, Roll 0.4127, Yaw 0.0211, Pitch -0.0211, Roll 0.3777, Después de 30 minutos: Yaw -6.0887, Pitch -0.0056, Roll -0.1048, Yaw -6.0887, Pitch -0.0056, Roll -0.1048, Yaw -6.0887, Pitch -0.0056, Roll -0.1048, Yaw -6.0887, Pitch 0.0014, Roll -0.1051, Yaw -6.0887, Pitch 0.0014, Roll -0.1051, Yaw -6.0957, Pitch 0.0014, Roll -0.1051, Si no es molestia, tienen idea porque sucede esto? De antemano muchas gracias por su atención. Saludos
@Andrew Vasquez hola, recién veo el comentario, yo no note eso porque el proyecto que hice no utiliza el yaw, tendria que fijarme si sucede eso leyendo el valor que no uso
He visto tus videos desde hace varios meses, y simplemente son muy bien preparados, te tomas tu tiempo para documentarte sobre lo que vas a explicar, obviamente tienes muchos conocimientos pero lo que te sobra a montones es tu pedagogía para explicar y enseñar para que sea lo más claro y entendible...muchas gracias por hacer posible que todos veamos tu excelente contenido...Saludos.
Excelente video y gran aporte para los que iniciamos con el mundo de Arduino, muy agradecido por el tiempo que te tomas para compartir tus conocimientos..Saludos
Creo que de el tiempo que llevo viendo videos y tutoriales, jamás había visto tanta dedicación y con un nivel de explicación tan certero y preciso como todos los videos que has realizado. Te felicito 👏👏
Nuevamente brillante. Muy bien explicado, ejemplos sencillos y claros a prueba de novatos. Código más complicado de lo acostumbrado, pero muy bien explicado. Un saludo desde España.
No se que puedo decir que no hayan dicho otros sobre tus tutoriales. Sinceramente fantásticos. Tienes la capacidad de explicar las cosas de una forma clara, siguiendo un orden lógico, lo más breve posible pero suficiente para entenderlo incluso para personas como yo con 72 años. Me será muy útil para saber la posición de las antenas de un Rotor con dos motores (Azimut y elevación) para el seguimiento de Satélites de Radioaficionado. Si todo funciona mi próximo paso será automatizar el seguimiento mediante la información de posicionamiento que generan los programas que utilizamos. Gracias y sigue adelante con esto. Saludos
Genial, me alegro que encuentres el material de utilidad. Quizás el capítulo 48 también sea de tu interés: ua-cam.com/video/Q31mkKY1iM8/v-deo.html Saludos
Profesor Argentino, eres muy bueno, ya había visto videos de éste mismo sensor y me costó mucho para medio entender, ahora creo que ya entendí. Muchas gracias, saludos a todos desde la Ciudad de México.
Hola Bitwise, me gustaria comparir lo sig: Felificadades parece que el curso no termina aqui, pero me tomo 4 dias y considero que la informacion es muy completa, además domias muchas areas y sabes explicarlas muy bien. El curso es muy amigable y cada ejercicio que incluyes te abre el panorama o bien da a conocer que dispositivos existen y sus posibles usos. Para mi da como resultado mas confianza en el uso de mi nuevo arduino (usos, voltajes etc...), asegurar conexiones correctas, aprendizaje en el desarrollo del código. Agradezco tu esfuerzo y compartir las horas invertidas aprendiendo... No me despido ahora se que esto no termina aqui, es el primer curso al que hago muchos comentarios y todos los likes. Solo considero que es bueno saberlo pues si no hay dinero mínimolas gracias...
Hola amigo!!!!. Simplemente GENIAL!!! No entendía bien cual era la aplicación y sentido práctico de este módulo. me quedó clarísimo. Un abrazo y mis felicitaciones
El mejor tutorial del acelerometro y giroscopio de toda la internet! un caño q expliques como funciona y que significa cada parte del codigo, en especial las cosas nuevas.
Muchas gracias por este video, es verdad que cuando miras el codigo por primera vez parece muy complicado pero gracias a usted lo pude entender un poco mejor. Agradezco por este video y lo bien que explica de nuevo muchas gracias
Todos hablando de lo bien explicado que está todo el tema, a mí me pareció excelente tambien. Pero nadie mencionó lo espectacular que quedó el avioncito 😅😁
Dudo que respondas mi comentario, pero muchas gracias, Todavia tengo tiempo para presentar mi proyecto, pero me has traido una tranquilidad tremenda para poder seguir avanzando en este hermoso proyecto que tengo, enserio muchas gracias¡
wow me estoy llenado de informacion con todo tu contenido gracias a tus explicaciones tan claras y bien echas muchas gracias por tomarte el trabajo de explicar todo esto, me encanta siempre como explicas las cosas
@cyhbcn Si muy posible tengo que ver los archivos descargados , pero anule esa linea y funciona correcto ahora , tambien le cambie los baudioos a 115200 capas fue eso tambien
Muy bueno como es habitual. Reveo los videos constantemente. Estoy pensando hacer copias por si a UA-cam le pasa algo. En paralelo al tema, ahora tengo la necesidad de saber sobre el fecto Coriolis aplicado en este fenómeno. Gracias, muchas gracias!
Hola, con los offsets en cero queda la calibración del fabricante, lo ideal es tener una superficie perfectamente plana y que calcule los offsets desde dicha posición inicial. Saludos
@@BitwiseAr Perdona, en realidad me interesa saber si el MPU6050 me da el vector de gravedad. La función getGravity() para hacer justamente eso. Es cierto? No logro encontrar su documentación. Gracias nuevamente.
Muchas gracias por la información que compartes, se aprende mucho. Necesito tener conectado un acelerómetro, sensor de presión, sensor de temperatura, a uno de los pequeños modelos de Arduino, pero también debe ir conectado algún dispositivo de tiempo real con datalogguer, con el objetivo de almacenar los datos registrados, al igual que un módulo de transmisión inalámbrica de corta distancia. La importancia del módulo de transmisión inalámbrica es usar un celular para recibir dicha información y que los módulos se sincronicen entre sí, para obtener un punto cero y gráficamente pueda hacer comparativas entre las lecturas de cada módulo. Necesito saber que tanto desfase hay entre la información de los diferentes módulos. Te agradecería mucho saber que me sugiere para este proyecto.
Enhorabuena por el temazo, me ha encantado, funciona de maravilla si no fuera en los los +90º y -90º tiene una desviación y no logro corregirla. Saludos.
Hola tengo un problema, al momento de compilar el resultado me dice que hay algo con el sketch sobre el almacenamiento, y al llevarlo al monitor me dice que falla al tratar de buscar magnetometro
Hola, revisaría las conexiones del módulo con Arduino que se encuentren bien firmes y no falte ninguna, también si estas utilizando la última versión de la librería el desarrollador la ha modificado y ahora requiere la instalación de una adicional con el nombre Simple_Wire cuyo enlace se encuentra en el repositorio del desarrollador. Saludos
Hola, el desarrollador ha modificado la librería recientemente requiriendo instalar adicionalmente dicha librería que en su repositorio se encuentra en el siguiente enlace: github.com/ZHomeSlice/Simple_Wire Saludos
Increíble como siempre, veo tus videos desde hace tiempo y me has ayudado como no tienes idea, muchas gracias. Tengo entendido que el MPU6050 puede ser usado para realizar drones... Me encantaría verlo en acción, saludos.
Gracias por el comentario, efectivamente es usual este tipo de sensores para drones con un software adecuado para el control preciso de los motores, lamentablemente no tengo experiencia en el tema por el momento. Saludos
Bro Mira, tus videos son súper detallados ¿ok? Aparte de que estes muy bueno explicando no pares de hacer esto pues no ayudarás a un millón de personal pero si a 96 000 y sigue adelante con esos videos ¿ok?
Hola @**Start: Found MPU6050 or MPU9150 Found MPU at: 0x68 WhoAmI= 0x0 Reset Offsets Set Offsets me aparece este error, y ya intente colocar las librerías de forma correcta, incluso la linea "Wire.setWireTimeout()", a que se debe este error?
Excelente video, realmente te felicito y te lo agradezco. Solo quiero hacerte una pregunta. Como sabe arduino en que pines esta conectado el I2c?... Estos pines se pueden cambiar?... Muchas gracias.
Gracias por el comentario, recomiendo veas el capítulo 35 donde se hace una instroducción al bus I2C y se explica cuales pines usa y que justamente está pensado para conectar múltiples dispositivos sobre las mismas líneas de datos: ua-cam.com/video/kuLgPLrg-cY/v-deo.html Saludos
Buenas, disculpa me podrias ayudar, puse todo el codigo y lo cargue al arduino y al poner el monitor de serie pues pulgo una tecla para que siga el proceso y solo se queda calibrando y no pasa nada ya. No se si me puedas ayudar
Hola, muchas gracias por la información y el conocimiento que compartes. Te queria preguntar, ¿como podemos modificar el codigo si lo que queremos ver es la aceleración en cada dirección principal?. Muchas gracias por tu respuesta.
Hola, gracias por el comentario, recomiendo veas el código de ejemplo incluido en la librería, allí hay varias funciones para obtener distintos valores, muchas de ellas se encuentran comentadas, de manera que es cuestión de descomentar la función que por ejemplo devuelve los valores de aceleración. Saludos
@@BitwiseAr Muchas gracias por la respuesta, efectivamente he encontrado como obtener los datos de la aceleración. Nuevamente te agradezco por los videotutoriales, que gran aporte.
Hola muchas gracias por tus videos, son muy didacticos. Tengo una duda, si en el monitor se queda calibrando, significa que el codigo y las librerias ya estan bien pero el problema es de mi conexion? Eh probado con diferentes codigos y en casi todos me arroja que no detecta mi sensor. Tambien tengo otra duda, que pasa si necesito que dos dispositivos ocupen los puertos A4 y A5, puedo ocupar otro ó que podría hacer?
Hola, gracias por el comentario, todo indicaría que se trata de un problema de conexión, recordá revisar que las conexiones se encuentren firmes y sin falsos contactos. Los pines A4 y A5 son de uso para el bus I2C y no se puede cambiar, pero el propio bus permite la conexión de múltiples dispositivos sobre las mismas líneas de datos, recomiendo veas el capítulo 35 donde se explica brevemente el funcionamiento del bus I2C: ua-cam.com/video/kuLgPLrg-cY/v-deo.html Saludos
Buenisimo el video y el cual le doy las gracias. Solo una cosa cuando copio el codigo tanto el 1 como el 2 , me aparece el siguiente error de compilacion y no se porque . Nu encuentra otra libreria la mple_MPU6050.h:28:10: fatal error: Simple_Wire.h: No such file or directory #include "Simple_Wire.h" Sabrian decirme porque si yo no he incluido la libreria Simple_Wire.h
Hola, el desarrollador ha modificado la librería recientemente requiriendo instalar adicionalmente dicha librería que en su repositorio se encuentra en el siguiente enlace: github.com/ZHomeSlice/Simple_Wire Saludos
Hola, ese mensaje de error no implica un mal funcionamiento del módulo, solo que la librería busca si existe un magnétometro y si no lo encuentra lo menciona, el módulo MPU6050 no incluye un magnetómetro. Saludos
Hola estoy compilando el codigo del video y me sale un error en la linea "ENABLE_MPU_OVERFLOW_PROTECTION(); ". El error es el siguiente: "expected constructor, destructor, or type conversion before ';' token". Alguien me podria por favor decir como corregirlo? Gracias
Ya lo solucione. Para quienes tengan el mismo error, desafortunadamente alguno de los commits realizados a los repositorios depues de la fecha del video genera este error. Entonces he utilizado el commit del 7 de Marzo de 2021 para la librería I2cdev, y el commit del 2 de Marzo de 2021 para la librería Simple MPU6050. Y listo, error eliminado. Espero lo corrijan pronto.
Hola, gracias por el comentario, como se mencionó en otros comentarios el desarrollador de la librería aplicó cambios de forma posterior a la publicación del video y un video de YT una vez subido no se puede modificar su contenido. Saludos
Disculpen al momento de verificar el programa y subirlo me aparece que dentro de la libreria del MPU605 no se encuentra el archivo "Simple_Wire.h" pero seguí los pasos del video para instalarla
@@rodolfopalacioselias3736 ya pude resolverlo, en el enlace para descargar la librería en los comentarios alguien escribió la dirección para descargar la.libreria de simple_wire.h
Hola, el desarrollador ha modificado la librería recientemente requiriendo instalar adicionalmente dicha librería que en su repositorio se encuentra en el siguiente enlace: github.com/ZHomeSlice/Simple_Wire Saludos
Cordial saludo, como siempre "excelentes" tus vídeos, gracias.. tan amable como haría para para medir cuando un vehículo esta detenido y supera los 20 kmh ?
Hola, gracias por el comentario, lamentablemente existen problemas para la medición de la velocidad de forma confiable con sensores de este tipo, aqui hay una explicación de la deriva que se produce al poco tiempo del inicio de la medición: en.wikipedia.org/wiki/Inertial_navigation_system Saludos
Muy buen video amigo, llevo viendo parte del curso, de donde sacas o que libro recomiendas leer que tenga programación más avanzada como este video, saludos.
Gracias por el comentario, todos los recursos se encuentran en la web, es cuestiónd de dedicarle tiempo a investigar un poco, claro que hay libros pero realmente no he leído ninguno como para poder recomendar. Saludos
Felicidades por todo el trabajo que haces, es espectacular. Una duda, estoy intentando tener 2 IMU en un mismo circuito, el 1ero en la misma placa Nano RP2040 Connect (así aprovecho el microcontrolador y la comunicación) y el 2ndo con un MPU6050 conectado. Me aparece éste error cuando intento compilarlo "Compilation error: 'dtostrf' was not declared in this scope", situado en la línia 26-28 del código. ¿Puedes ayudarme con esto por favor?
Excelente tutorial, tengo una consulta, si quiero añadir otro dispositivo I2c, como la pantalla LCD con su modulo, segun tengo entendido los pines SCL y SDA los conecto igual al A5 y al A4 y le pongo su dirección correspondiente; ¿o hay algo más que debo hacer o tener en cuenta ? Saludos!!
Gracias por el comentario, efectivamente el bus I2C está pensando para conectar múltiples dispositivos sobre las mismas dos líneas de datos, podrás ver el capítulo 35 donde se hace una introducción al mismo: ua-cam.com/video/kuLgPLrg-cY/v-deo.html Saludos
Hola!! estoy haciendo el curso que subiste completo de arduino esta genial felicitaciones, la duda que tengo es que programa usas para simular los circuitos que haces(o directamente los simulas con los componentes)???yo uso "tinkercad"pero hay cosas que difieren, me podrias pasar que programa usas para simularlo con la PC???...Gracias Saludos!!!
Hola, ¡increíble video! Tengo un par de preguntas: si quiero conectar dos sensores al mismo arduino, ¿sigo el mismo tipo de conexión para ambos? Lo que pasa es que he leído que si conectas el pin de 5v al ADO del sensor, generará un cambio en la dirección de memoria pero el problema es que cuando hago esto y utilizo el scanner de i2c, solo me detecta un solo sensor. Y mi otra pregunta es si ¿hay manera de que, al momento de tener ambos sensores bien detectados, poder hacer que se desplieguen los valores leídos de ambos sensores de manera simultánea? ¡Muchas gracias por tu ayuda!
Hola, gracias por el comentario, si bien no he utilizado dos sensores del mismo tipo en simultáneo el procedimiento con AD0 es correcto, en programación deberás crear un segundo objeto con MPU6050_ADDRESS_HIGH y asi tratarlos de forma independiente. Saludos
Hola! Enhorabuena de nuevo por el vídeo. Son de gran ayuda sin duda!! Excelente!!! Estaba pensando en este sensor MPU6050 para hacer un proyecto para mi moto y así poder medir inclinación, fuerzas G, etc. ¿Sería válido este sensor? Por el tema de las inercias al ir en movimiento la moto, como dices "no tripulado...". En caso contrario, ¿cuál sería el ideal? Saludos y Felicidades!
Hola, gracias por el comentario, se puede usar perfectamente en vehículos en tierra y medir ángulos de inclinación y aceleración, obtener los datos es la parte simple, tomar una acción con una determinada lógica es otro tema particular de cada aplicación. Saludos
Buenas! Excelente tutorial, muchas gracias! Que función cumple el offset? Porque cuando está comentado el sensor funciona igual de bien que cuando no. En caso de ser necesario, podría hacerse una rutina de calibración inicial y guarde esos datos en la memoria interna?
Excelente información, tengo una duda, como hago para que los valores queden en cero, cada ves que yo lo requiera, ejemplo lo puse en una superficie plana y capturo esos nuevos valores, esta se movió a una nueva posición y genera unos valores, y quiero captar esos nuevos valores, llamo a la función que esta dentro de la librería, comienza a calibrar pero, se demora unos cuantos segundos en calibrar. existe algún método mas rápido, o solo es dejar pasar esos segundos en el código para que tome los valores que arroja el sensor
Hola, para saltear la calibración deberás obtener los OFFSETS de donde se encuentra ubicado en el momento y luego al cargarlos ya no es necesario pero si la referencia inicial cambia constantemente algún tipo de calibración requiere. Saludos
@@BitwiseAr Muchas gracias, si los valores cambian, opte por esperar dos segundos que es lo que le toma al modulo en calibración, y ejecuto el código si estos pasan un umbral, de 2.0 en los angulos yzx, gracias por responder, muy amable
Hola, buenas noches, tengo un problema al ejecutar el programa, pasa que el sensor lee los datos pero llega un punto en el que al estar haciendo las pruebas de inclinación, no sigue mostrando datos, revise las conexiones y modifique los offsets, si alguien me podría ayudar
Y si quisiera hacer algo similar con otra IMU de 9 grados de libertad (una sparkfun vieja), usando solo seis de esos nueve grados y con una tarjeta ftdi en lugar del Arduino, ¿qué debería hacer para que funcione?
Gracias por tus videos maestro! Tengo un problema. En el compilado me da un error con la funcion ENABLE_MPU_OVERFLOW_PROTECTION(); "expected constructor, destructor, or type conversion before ';' token" (comenta el IDE de Arduino al compilar) No se a que se debe. He mirado los ejemplos de la libreria Simple_MPU... y no hacen servir esta funcion... He reiniciado el IDE de Arduino, y nada. Al final Comentando esta linea, el compilador ha dado el OK. Y "funciona" pero no se si me acabara dando problemas el buffer.
Hola, lamentablemente unos meses luego de la publicación del video el desarrollador realizó alguna modificación de la librería que hace que genere un error, al momento no he podido recrear el proyecto por cuestiones de tiempo libre para identificar el problema y ver opciones alternativas. Saludos
ayuda por favor, me sale el error C:\Users\admin\Documents\Arduino\cap65_2\cap65_2.ino: In function 'void setup()': C:\Users\admin\Documents\Arduino\cap65_2\cap65_2.ino:75:30: warning: invalid conversion from 'void (*)(int16_t*, int16_t*, int32_t*, uint32_t*) {aka void (*)(int*, int*, long int*, long unsigned int*)}' to 'void (*)(int16_t*, int16_t*, int32_t*) {aka void (*)(int*, int*, long int*)}' [-fpermissive] mpu.on_FIFO(mostrar_valores); // llamado a funcion mostrar_valores si memoria FIFO tiene valores ^ In file included from C:\Users\admin\Documents\Arduino\cap65_2\cap65_2.ino:13:0: C:\Users\admin\Documents\Arduino\libraries\Simple_MPU6050/Simple_MPU6050.h:138:22: note: initializing argument 1 of 'Simple_MPU6050& Simple_MPU6050::on_FIFO(void (*)(int16_t*, int16_t*, int32_t*))' Simple_MPU6050 & on_FIFO(void (*CB)(int16_t *, int16_t *, int32_t *)); ^~~~~~~
Hola, deberás asegurarte que el código desde Github se encuentre bien copiado en el editor del IDE, ya que hay algunas líneas que son algo extensas. Saludos
Como siempre, muchas gracias por el tutorial. Y ahora una pregunta: Por qué el la linea ENABLE_MPU_OVERFLOW_PROTECTION(); sin haber tocado nada del programa, da el siguiente error: "expected contructor, destructor or type conversion before ';' token"
Hola, lamentablemente unos meses luego de la publicación del video el desarrollador realizó alguna modificación de la librería que hace que genere un error, al momento no he podido recrear el proyecto por cuestiones de tiempo libre para identificar el problema y ver opciones alternativas. Saludos
Hola @Bitwise Ar, muy bueno el canal y los videos, te cuento 2 cosas que encontre:
1- Con respecto al error de ENABLE_MPU_OVERFLOW_PROTECTION(), esto ya no es mas necesario y se puede comentar o borrar esa linea
2- Con respecto al MPU-6050: me puse a trabajar en un pryecto con este gyroscopo MPU, me encontre con un inconveniente de colgadas aleatorias leyendo el sensor, estuve 1 semana investigando el problema y logre encontrar una modificacion por un bug-report que le pusieron a la biblioteca Wire.h, desde hace un par de años le incorporaron una nueva funcion para establecer un timeout (en microsegundos) para evitar esperas ocupadas dentro del codigo de la biblioteca Wire, cosa que sucede por ej, con el modulo que tiene el MPU-6050 ya que este no cumple exactamente con la especificacion del standar i2c y si por ej, se produce una demora entre varios dispositivos en el mismo bus etc, por defecto la biblioteca wire tiene seteado un timeout no muy optimo, por eso es recomendable incorporar luego de iniciar Wire, poner este¡a linea:
Wire.setWireTimeout(3000,true); // timeout en uSeg, y true para que reinicie el bus luego del timeout
con esta modificacion mejora notablemente la tolerancia a glitches en el bus i2c, se debe ajustar el valor del timeout empiricamente en cada caso pero parece ser que 3 ms (3000 uSeg) son un promedio aceptable
ademas de la funcion Wire.setWireTimeout() se incluyo un flag que se puede encuestar (Wire.getWireTimeoutFlag()). que indica si se produjo un reset del bus i2c por vencimiento del timeout configurado en setWireTimeout().
Toda esta informacion la encontre en un repositorio de gitHub que se puede encontrar googleando el siguiente texto:
Document Wire timeout API on website #10803
espero esta informacion le sea util a la gente y no tengan que perder una semana de tiempo de desarrollo con esta biblioteca.
Hola, gracias por el comentario, seguramente será de utilidad, lo colocaré fijado.
Saludos
que tengo que hacer si me dice : Failed to Find Magnetometer
@@enzotestagrossa95 la verdad que no lo se, pero en mi caso no necesite usar el magnetometro asi que no te sabria decir, igualmente a mi me da ese mensaje y sin embargo el giroscopo funciona
Hola Bitwise Ar, Hola Juan Montenegro.
Han notado que los valores de Yaw van incrementando conforme pasa el tiempo? Con el sensor estático.
Aquí los valores iniciales:
Yaw 0.0072, Pitch -0.0420, Roll 0.5246,
Yaw 0.0071, Pitch -0.0350, Roll 0.4826,
Yaw 0.0141, Pitch -0.0280, Roll 0.4476,
Yaw 0.0210, Pitch -0.0141, Roll 0.4127,
Yaw 0.0211, Pitch -0.0211, Roll 0.3777,
Después de 30 minutos:
Yaw -6.0887, Pitch -0.0056, Roll -0.1048,
Yaw -6.0887, Pitch -0.0056, Roll -0.1048,
Yaw -6.0887, Pitch -0.0056, Roll -0.1048,
Yaw -6.0887, Pitch 0.0014, Roll -0.1051,
Yaw -6.0887, Pitch 0.0014, Roll -0.1051,
Yaw -6.0957, Pitch 0.0014, Roll -0.1051,
Si no es molestia, tienen idea porque sucede esto?
De antemano muchas gracias por su atención. Saludos
@Andrew Vasquez hola, recién veo el comentario, yo no note eso porque el proyecto que hice no utiliza el yaw, tendria que fijarme si sucede eso leyendo el valor que no uso
Nunca había visto tutoriales sobre Arduino tan amenos y fáciles de entender, muchas felicidades.
Gracias por el comentario y la visita.
Saludos
He visto tus videos desde hace varios meses, y simplemente son muy bien preparados, te tomas tu tiempo para documentarte sobre lo que vas a explicar, obviamente tienes muchos conocimientos pero lo que te sobra a montones es tu pedagogía para explicar y enseñar para que sea lo más claro y entendible...muchas gracias por hacer posible que todos veamos tu excelente contenido...Saludos.
Gracias por el comentario, me alegro que encuentres el material de utilidad.
Saludos
Excelente video y gran aporte para los que iniciamos con el mundo de Arduino, muy agradecido por el tiempo que te tomas para compartir tus conocimientos..Saludos
Creo que de el tiempo que llevo viendo videos y tutoriales, jamás había visto tanta dedicación y con un nivel de explicación tan certero y preciso como todos los videos que has realizado. Te felicito 👏👏
Gracias por el comentario.
Saludos
Nuevamente brillante. Muy bien explicado, ejemplos sencillos y claros a prueba de novatos. Código más complicado de lo acostumbrado, pero muy bien explicado. Un saludo desde España.
Saludos desde España también
No se que puedo decir que no hayan dicho otros sobre tus tutoriales.
Sinceramente fantásticos. Tienes la capacidad de explicar las cosas de una forma clara, siguiendo un orden lógico, lo más breve posible pero suficiente para entenderlo incluso para personas como yo con 72 años.
Me será muy útil para saber la posición de las antenas de un Rotor con dos motores (Azimut y elevación) para el seguimiento de Satélites de Radioaficionado.
Si todo funciona mi próximo paso será automatizar el seguimiento mediante la información de posicionamiento que generan los programas que utilizamos.
Gracias y sigue adelante con esto.
Saludos
Genial, me alegro que encuentres el material de utilidad. Quizás el capítulo 48 también sea de tu interés:
ua-cam.com/video/Q31mkKY1iM8/v-deo.html
Saludos
@@BitwiseAr Si gracias, me he dado cuenta que para el azimut es mejor incluir el magnetómetro.
Profesor Argentino, eres muy bueno, ya había visto videos de éste mismo sensor y me costó mucho para medio entender, ahora creo que ya entendí. Muchas gracias, saludos a todos desde la Ciudad de México.
Genial, gracias por el comentario y la visita.
Saludos
Hola Bitwise, me gustaria comparir lo sig:
Felificadades parece que el curso no termina aqui, pero me tomo 4 dias y considero que la informacion es muy completa, además domias muchas areas y sabes explicarlas muy bien.
El curso es muy amigable y cada ejercicio que incluyes te abre el panorama o bien da a conocer que dispositivos existen y sus posibles usos.
Para mi da como resultado mas confianza en el uso de mi nuevo arduino (usos, voltajes etc...), asegurar conexiones correctas, aprendizaje en el desarrollo del código.
Agradezco tu esfuerzo y compartir las horas invertidas aprendiendo...
No me despido ahora se que esto no termina aqui, es el primer curso al que hago muchos comentarios y todos los likes.
Solo considero que es bueno saberlo pues si no hay dinero mínimolas gracias...
Hola amigo!!!!. Simplemente GENIAL!!! No entendía bien cual era la aplicación y sentido práctico de este módulo. me quedó clarísimo. Un abrazo y mis felicitaciones
Genial, gracias por el comentario y la visita.
Saludos
que buen video pense que solo ibas a hacer como conectarlo pero brindaste toda la infromacion del funcionamiento todo un capo!
Gracias por el comentario y la visita. En cada capítulo se hace una explicación del principio de funcionamiento.
Saludos
El mejor tutorial del acelerometro y giroscopio de toda la internet! un caño q expliques como funciona y que significa cada parte del codigo, en especial las cosas nuevas.
Muchas gracias por este video, es verdad que cuando miras el codigo por primera vez parece muy complicado pero gracias a usted lo pude entender un poco mejor. Agradezco por este video y lo bien que explica
de nuevo muchas gracias
Genial, gracias por el comentario y la visita.
Saludos
Excelente video bro, actualmente estudio Ing. en sistemas pero me gusta mucho los temas de electrónica y robótica, suelo ver siempre tus videos.
Gracias por el comentario y la visita.
Un saludo
Todos tus videos son muy útiles, me ayudaron mucho en los proyectos que hice con Arduino. Muchas Gracias!!!
Genial, me alegro.
Saludos
Lo usé para un aero-pendulo. Funcionó bien. Tuve que agregar tambien la librería simple_wire.h. Gracias por compartir.
Me sucede lo mismo que ABEL, me sale el mismo error
Buena tarde, disculpa donde obtuviste la libreria tengo el mismo error
@@nareligarcia5393 la verdad no recuerdo bien. Si gustas dejar un correo te lo envío.
necesito ayuda con esto , me sale ese error del simple_wire
El mejor tutorial de arduino que he visto. Que atencion al detalle!
Gracias por el comentario, se aprecia.
Un saludo
Todos hablando de lo bien explicado que está todo el tema, a mí me pareció excelente tambien. Pero nadie mencionó lo espectacular que quedó el avioncito 😅😁
Se te estaba extrañando !!!!!
me encantan estos tutoriales.
el detalle del avion de papel es GENIAL porque se ilustra facilmente el funcionamiento.
Qué bien que volviste. Echaba de menos tus fantásticos vídeos y tu didáctica exquisita. Gracias
Gracias por el comentario y la visita. Nunca me fui, solo que me lleva bastante tiempo hacer cada capítulo.
Saludos
Muchas gracias, en general, por todos tus videos. Se nota que te los preparas haciéndonos a los demás fácil su entendimiento.
Excelente como siempre. Se extrañaban tus vídeos. Te felicito
Gracias por el comentario y la visita.
Saludos
Excwelente como siempre. Ya echabamos de menos estos videos.Felicitaciones
Gracias por el comentario y la visita.
Saludos
Hola , muy bueno, muchas gracias, gran profesor !
Hola, gracias por el amable comentario.
Saludos
Dudo que respondas mi comentario, pero muchas gracias, Todavia tengo tiempo para presentar mi proyecto, pero me has traido una tranquilidad tremenda para poder seguir avanzando en este hermoso proyecto que tengo, enserio muchas gracias¡
Genial, gracias por el comentario y la visita. Intento responder a todos los comentarios en la manera de lo posible.
Saludos
Sin desperdicios, muchas gracias por compartir. Saludos
Gracias por el comentario y la visita.
Saludos
Eres lo máximo, tus videos siempre son de una calidad A1
¡Impresionante! Muy completo y claro. Muchas gracias por este tutorial.
Gracias por el comentario.
Saludos
Muchas gracias por dedicar tu tiempo a crear tan buenos videos, considero que son de los mejores sobre arduino
wow me estoy llenado de informacion con todo tu contenido gracias a tus explicaciones tan claras y bien echas muchas gracias por tomarte el trabajo de explicar todo esto, me encanta siempre como explicas las cosas
Genial, gracias por el comentario y la visita.
Saludos
Muy bueno, seguí así. Saludos desde Argentina
Gracias por el comentario y la visita.
Saludos
El mejor curso de Arduino que puede existir.
El video exelente como siempre .
@cyhbcn Si muy posible tengo que ver los archivos descargados , pero anule esa linea y funciona correcto ahora , tambien le cambie los baudioos a 115200 capas fue eso tambien
¡Excelente video! Muy bien explicado. ¡Gracias!
Gracias por el comentario y la visita.
Saludos
Muy bueno como es habitual. Reveo los videos constantemente. Estoy pensando hacer copias por si a UA-cam le pasa algo. En paralelo al tema, ahora tengo la necesidad de saber sobre el fecto Coriolis aplicado en este fenómeno. Gracias, muchas gracias!
Muy buen tutorial, muchas gracias. Saludos.
Gracias por el comentario y la visita.
Saludos
Como siempre "excelentes" tus vídeos, gracias
Gracias por el comentario y la visita.
Saludos
excelente explicación, muchas gracias.
Gracias por el comentario y la visita.
Saludos
excelente aporte no pares amigo tus explicaciones son geniales
Gracias por el comentario y la visita.
Saludos
Eres el mejor! Saludos
Muy bueno.. como todos los tutoriales... ya lo probaremos en un aeromodelo rc... Saludos
Estos temas han sido muy bien explicados paso a paso, excelente
Qué bueno!!
Genial!!
Muchas gracias!!
Gracias por el comentario y la visita.
Saludos
parcero eres mi idolo!! saludo desde colombia 😎👏👏
Saludos
Muchísimas gracias por el tutorial tan bien explicado y las librerías y códigos 🥺 saludos
Muy buen video, sos un genio !!!ya estaba deseando estos video!!!
Gracias por el comentario y la visita.
Saludos
Excelente... incluye lo necesario para iniciar....
Gracias por la visita y el comentario.
Saludos
Muy didáctico, muchas gracias
Gracias por el comentario y la visita.
Saludos
Pregunta: si le pongo offset todos en 0 entonces me da ángulos respeto del eje de gravedad de la tierra? Es decir, valores absolutos?
Hola, con los offsets en cero queda la calibración del fabricante, lo ideal es tener una superficie perfectamente plana y que calcule los offsets desde dicha posición inicial.
Saludos
@@BitwiseAr Perdona, en realidad me interesa saber si el MPU6050 me da el vector de gravedad. La función getGravity() para hacer justamente eso. Es cierto? No logro encontrar su documentación. Gracias nuevamente.
Buen video me encanto la explicasion detallada :)
Genial, saludos
Súper interesante maestro.
Gracias por el comentario y la visita.
Saludos
esooooo... me alegra mucho recibir un capítulo nuevo
Que calidad! muy bueno!
Gran video como siempre todo claro y conciso.
Muchas gracias por tu tiempo y dedicacion, tus videos lo mejor de lo mejor 👏👏👏👏👏👏👏
Esta muy bien tu tutorial!
Gracias por el comentario y la visita.
Saludos
Espectaculares los tutoriales! Gracias
Muy Bueno, simplemente genial !!!!!!!!
Markitos el Uruguayo
excelente!!! gracias!
Gracias por la visita y el comentario.
Saludos
Muchas gracias por la información que compartes, se aprende mucho. Necesito tener conectado un acelerómetro, sensor de presión, sensor de temperatura, a uno de los pequeños modelos de Arduino, pero también debe ir conectado algún dispositivo de tiempo real con datalogguer, con el objetivo de almacenar los datos registrados, al igual que un módulo de transmisión inalámbrica de corta distancia. La importancia del módulo de transmisión inalámbrica es usar un celular para recibir dicha información y que los módulos se sincronicen entre sí, para obtener un punto cero y gráficamente pueda hacer comparativas entre las lecturas de cada módulo. Necesito saber que tanto desfase hay entre la información de los diferentes módulos. Te agradecería mucho saber que me sugiere para este proyecto.
Justo el que estaba esperando
Enhorabuena por el temazo, me ha encantado, funciona de maravilla si no fuera en los los +90º y -90º tiene una desviación y no logro corregirla.
Saludos.
Hola tengo un problema, al momento de compilar el resultado me dice que hay algo con el sketch sobre el almacenamiento, y al llevarlo al monitor me dice que falla al tratar de buscar magnetometro
Muy bien
¡ Muchas gracias !
Gracias por el comentario y la visita.
Saludos
Excellent thank you very much....
Hola al usarlo el monitor serie se queda en:
Calibrate Accel >************
No para de poner los asteriscos y no deja avanzar más allá
Hola, revisaría las conexiones del módulo con Arduino que se encuentren bien firmes y no falte ninguna, también si estas utilizando la última versión de la librería el desarrollador la ha modificado y ahora requiere la instalación de una adicional con el nombre Simple_Wire cuyo enlace se encuentra en el repositorio del desarrollador.
Saludos
Buenas tardes. Me sucede un error al correr el programa, y es que me dice que no encuentra la libreria "Simple_Wire.h" ayuda pls
Hola, el desarrollador ha modificado la librería recientemente requiriendo instalar adicionalmente dicha librería que en su repositorio se encuentra en el siguiente enlace:
github.com/ZHomeSlice/Simple_Wire
Saludos
Increíble como siempre, veo tus videos desde hace tiempo y me has ayudado como no tienes idea, muchas gracias.
Tengo entendido que el MPU6050 puede ser usado para realizar drones... Me encantaría verlo en acción, saludos.
Gracias por el comentario, efectivamente es usual este tipo de sensores para drones con un software adecuado para el control preciso de los motores, lamentablemente no tengo experiencia en el tema por el momento.
Saludos
Bro Mira, tus videos son súper detallados ¿ok? Aparte de que estes muy bueno explicando no pares de hacer esto pues no ayudarás a un millón de personal pero si a 96 000 y sigue adelante con esos videos ¿ok?
Gracias por el comentario y la visita.
Saludos
Hola @**Start:
Found MPU6050 or MPU9150
Found MPU at: 0x68
WhoAmI= 0x0
Reset Offsets
Set Offsets
me aparece este error, y ya intente colocar las librerías de forma correcta, incluso la linea "Wire.setWireTimeout()", a que se debe este error?
Hola, lamentablemente no sabría indicarte el motivo.
Saludos
Gracias
Gracias por el comentario y la visita.
Saludos
Que video tan fantástico! podemos hacer esto con un guante?
Hola, efectivamente existen proyectos de wearables con este tipo de sensor.
Saludos
Excelente video, realmente te felicito y te lo agradezco. Solo quiero hacerte una pregunta. Como sabe arduino en que pines esta conectado el I2c?... Estos pines se pueden cambiar?... Muchas gracias.
Gracias por el comentario, recomiendo veas el capítulo 35 donde se hace una instroducción al bus I2C y se explica cuales pines usa y que justamente está pensado para conectar múltiples dispositivos sobre las mismas líneas de datos:
ua-cam.com/video/kuLgPLrg-cY/v-deo.html
Saludos
Buenas, disculpa me podrias ayudar, puse todo el codigo y lo cargue al arduino y al poner el monitor de serie pues pulgo una tecla para que siga el proceso y solo se queda calibrando y no pasa nada ya. No se si me puedas ayudar
tengo el mismo problema, encontraste la solución?
Yo también tengo el mismo problema
Hola, muchas gracias por la información y el conocimiento que compartes. Te queria preguntar, ¿como podemos modificar el codigo si lo que queremos ver es la aceleración en cada dirección principal?. Muchas gracias por tu respuesta.
Hola, gracias por el comentario, recomiendo veas el código de ejemplo incluido en la librería, allí hay varias funciones para obtener distintos valores, muchas de ellas se encuentran comentadas, de manera que es cuestión de descomentar la función que por ejemplo devuelve los valores de aceleración.
Saludos
@@BitwiseAr Muchas gracias por la respuesta, efectivamente he encontrado como obtener los datos de la aceleración. Nuevamente te agradezco por los videotutoriales, que gran aporte.
Hola muchas gracias por tus videos, son muy didacticos. Tengo una duda, si en el monitor se queda calibrando, significa que el codigo y las librerias ya estan bien pero el problema es de mi conexion? Eh probado con diferentes codigos y en casi todos me arroja que no detecta mi sensor.
Tambien tengo otra duda, que pasa si necesito que dos dispositivos ocupen los puertos A4 y A5, puedo ocupar otro ó que podría hacer?
Hola, gracias por el comentario, todo indicaría que se trata de un problema de conexión, recordá revisar que las conexiones se encuentren firmes y sin falsos contactos.
Los pines A4 y A5 son de uso para el bus I2C y no se puede cambiar, pero el propio bus permite la conexión de múltiples dispositivos sobre las mismas líneas de datos, recomiendo veas el capítulo 35 donde se explica brevemente el funcionamiento del bus I2C:
ua-cam.com/video/kuLgPLrg-cY/v-deo.html
Saludos
Un excelente video, muy bien explidado y todo claro, Solo tengo un pequeña curiosidad ¿En qué programa haces tus diagramas?
Gracias por el comentario, el programa es el Fritzing.
Saludos
Sos un genio, gracias !
Buenisimo el video y el cual le doy las gracias. Solo una cosa cuando copio el codigo tanto el 1 como el 2 , me aparece el siguiente error de compilacion y no se porque . Nu encuentra otra libreria la mple_MPU6050.h:28:10: fatal error: Simple_Wire.h: No such file or directory
#include "Simple_Wire.h" Sabrian decirme porque si yo no he incluido la libreria Simple_Wire.h
Hola, el desarrollador ha modificado la librería recientemente requiriendo instalar adicionalmente dicha librería que en su repositorio se encuentra en el siguiente enlace:
github.com/ZHomeSlice/Simple_Wire
Saludos
31:16 Hola, saben porque cuando hago la calibración me da este error “failed to find magnetometer”
Hola, ese mensaje de error no implica un mal funcionamiento del módulo, solo que la librería busca si existe un magnétometro y si no lo encuentra lo menciona, el módulo MPU6050 no incluye un magnetómetro.
Saludos
@@BitwiseAr ah okey, muchas gracias.
Nice arduino project. I liked it
Hola estoy compilando el codigo del video y me sale un error en la linea "ENABLE_MPU_OVERFLOW_PROTECTION(); ". El error es el siguiente: "expected constructor, destructor, or type conversion before ';' token". Alguien me podria por favor decir como corregirlo? Gracias
Ya lo solucione. Para quienes tengan el mismo error, desafortunadamente alguno de los commits realizados a los repositorios depues de la fecha del video genera este error. Entonces he utilizado el commit del 7 de Marzo de 2021 para la librería I2cdev, y el commit del 2 de Marzo de 2021 para la librería Simple MPU6050. Y listo, error eliminado. Espero lo corrijan pronto.
Hola, gracias por el comentario, como se mencionó en otros comentarios el desarrollador de la librería aplicó cambios de forma posterior a la publicación del video y un video de YT una vez subido no se puede modificar su contenido.
Saludos
Disculpen al momento de verificar el programa y subirlo me aparece que dentro de la libreria del MPU605 no se encuentra el archivo "Simple_Wire.h" pero seguí los pasos del video para instalarla
tengo el mismo problema
@@rodolfopalacioselias3736 ya pude resolverlo, en el enlace para descargar la librería en los comentarios alguien escribió la dirección para descargar la.libreria de simple_wire.h
Hola, el desarrollador ha modificado la librería recientemente requiriendo instalar adicionalmente dicha librería que en su repositorio se encuentra en el siguiente enlace:
github.com/ZHomeSlice/Simple_Wire
Saludos
Te la mega mamaste
Gracias por el video
Saludos desde México
luego del "failed to find magnetometer" no me imprime nada mas, alguien sabra alguna posible solucion? por si algo, copie el codigo del github
Tengo el mismo problema, ¿encontraste una solución?
Cordial saludo, como siempre "excelentes" tus vídeos, gracias..
tan amable como haría para para medir cuando un vehículo esta detenido y supera los 20 kmh ?
Hola, gracias por el comentario, lamentablemente existen problemas para la medición de la velocidad de forma confiable con sensores de este tipo, aqui hay una explicación de la deriva que se produce al poco tiempo del inicio de la medición: en.wikipedia.org/wiki/Inertial_navigation_system
Saludos
Muy buen video amigo, llevo viendo parte del curso, de donde sacas o que libro recomiendas leer que tenga programación más avanzada como este video, saludos.
Gracias por el comentario, todos los recursos se encuentran en la web, es cuestiónd de dedicarle tiempo a investigar un poco, claro que hay libros pero realmente no he leído ninguno como para poder recomendar.
Saludos
Felicidades por todo el trabajo que haces, es espectacular. Una duda, estoy intentando tener 2 IMU en un mismo circuito, el 1ero en la misma placa Nano RP2040 Connect (así aprovecho el microcontrolador y la comunicación) y el 2ndo con un MPU6050 conectado. Me aparece éste error cuando intento compilarlo "Compilation error: 'dtostrf' was not declared in this scope", situado en la línia 26-28 del código. ¿Puedes ayudarme con esto por favor?
Excelente tutorial, tengo una consulta, si quiero añadir otro dispositivo I2c, como la pantalla LCD con su modulo, segun tengo entendido los pines SCL y SDA los conecto igual al A5 y al A4 y le pongo su dirección correspondiente; ¿o hay algo más que debo hacer o tener en cuenta ? Saludos!!
Gracias por el comentario, efectivamente el bus I2C está pensando para conectar múltiples dispositivos sobre las mismas dos líneas de datos, podrás ver el capítulo 35 donde se hace una introducción al mismo:
ua-cam.com/video/kuLgPLrg-cY/v-deo.html
Saludos
Hola!! estoy haciendo el curso que subiste completo de arduino esta genial felicitaciones, la duda que tengo es que programa usas para simular los circuitos que haces(o directamente los simulas con los componentes)???yo uso "tinkercad"pero hay cosas que difieren, me podrias pasar que programa usas para simularlo con la PC???...Gracias Saludos!!!
Hola, no utilizo simuladores, solo el Fritzing para los diagramas y presentar las conexiones de forma prolija.
Saludos
Hola, ¡increíble video!
Tengo un par de preguntas: si quiero conectar dos sensores al mismo arduino, ¿sigo el mismo tipo de conexión para ambos? Lo que pasa es que he leído que si conectas el pin de 5v al ADO del sensor, generará un cambio en la dirección de memoria pero el problema es que cuando hago esto y utilizo el scanner de i2c, solo me detecta un solo sensor. Y mi otra pregunta es si ¿hay manera de que, al momento de tener ambos sensores bien detectados, poder hacer que se desplieguen los valores leídos de ambos sensores de manera simultánea?
¡Muchas gracias por tu ayuda!
Hola, gracias por el comentario, si bien no he utilizado dos sensores del mismo tipo en simultáneo el procedimiento con AD0 es correcto, en programación deberás crear un segundo objeto con MPU6050_ADDRESS_HIGH y asi tratarlos de forma independiente.
Saludos
Hola! Enhorabuena de nuevo por el vídeo. Son de gran ayuda sin duda!! Excelente!!!
Estaba pensando en este sensor MPU6050 para hacer un proyecto para mi moto y así poder medir inclinación, fuerzas G, etc. ¿Sería válido este sensor? Por el tema de las inercias al ir en movimiento la moto, como dices "no tripulado...".
En caso contrario, ¿cuál sería el ideal?
Saludos y Felicidades!
Hola, gracias por el comentario, se puede usar perfectamente en vehículos en tierra y medir ángulos de inclinación y aceleración, obtener los datos es la parte simple, tomar una acción con una determinada lógica es otro tema particular de cada aplicación.
Saludos
@@BitwiseAr De acuerdo, muchas gracias. Esperando que lleguen los sensores para probarlos.. siguiendo tu tutorial.. Saludos!!
Gracias.
Gracias por el comentario y la visita.
Saludos
Buenas! Excelente tutorial, muchas gracias! Que función cumple el offset? Porque cuando está comentado el sensor funciona igual de bien que cuando no.
En caso de ser necesario, podría hacerse una rutina de calibración inicial y guarde esos datos en la memoria interna?
Hola, gracias por el comentario, se explica justamente el tema de los offsets y como establecerlos de manera manual.
Saludos
Excelente información, tengo una duda, como hago para que los valores queden en cero, cada ves que yo lo requiera, ejemplo lo puse en una superficie plana y capturo esos nuevos valores, esta se movió a una nueva posición y genera unos valores, y quiero captar esos nuevos valores, llamo a la función que esta dentro de la librería, comienza a calibrar pero, se demora unos cuantos segundos en calibrar. existe algún método mas rápido, o solo es dejar pasar esos segundos en el código para que tome los valores que arroja el sensor
Hola, para saltear la calibración deberás obtener los OFFSETS de donde se encuentra ubicado en el momento y luego al cargarlos ya no es necesario pero si la referencia inicial cambia constantemente algún tipo de calibración requiere.
Saludos
@@BitwiseAr Muchas gracias, si los valores cambian, opte por esperar dos segundos que es lo que le toma al modulo en calibración, y ejecuto el código si estos pasan un umbral, de 2.0 en los angulos yzx, gracias por responder, muy amable
Hola, buenas noches, tengo un problema al ejecutar el programa, pasa que el sensor lee los datos pero llega un punto en el que al estar haciendo las pruebas de inclinación, no sigue mostrando datos, revise las conexiones y modifique los offsets, si alguien me podría ayudar
Y si quisiera hacer algo similar con otra IMU de 9 grados de libertad (una sparkfun vieja), usando solo seis de esos nueve grados y con una tarjeta ftdi en lugar del Arduino, ¿qué debería hacer para que funcione?
Hola, lamentablemente no sabría indicarte como realizarlo, el ftdi sirve para convertir usb a uart y estos sensores usan I2C.
Saludos
Gracias por tus videos maestro!
Tengo un problema. En el compilado me da un error con la funcion
ENABLE_MPU_OVERFLOW_PROTECTION();
"expected constructor, destructor, or type conversion before ';' token" (comenta el IDE de Arduino al compilar)
No se a que se debe.
He mirado los ejemplos de la libreria Simple_MPU... y no hacen servir esta funcion...
He reiniciado el IDE de Arduino, y nada.
Al final Comentando esta linea, el compilador ha dado el OK. Y "funciona" pero no se si me acabara dando problemas el buffer.
Debo decir que tengo Linux no sé si influye en algo.
Hola, lamentablemente unos meses luego de la publicación del video el desarrollador realizó alguna modificación de la librería que hace que genere un error, al momento no he podido recrear el proyecto por cuestiones de tiempo libre para identificar el problema y ver opciones alternativas.
Saludos
ayuda por favor, me sale el error
C:\Users\admin\Documents\Arduino\cap65_2\cap65_2.ino: In function 'void setup()':
C:\Users\admin\Documents\Arduino\cap65_2\cap65_2.ino:75:30: warning: invalid conversion from 'void (*)(int16_t*, int16_t*, int32_t*, uint32_t*) {aka void (*)(int*, int*, long int*, long unsigned int*)}' to 'void (*)(int16_t*, int16_t*, int32_t*) {aka void (*)(int*, int*, long int*)}' [-fpermissive]
mpu.on_FIFO(mostrar_valores); // llamado a funcion mostrar_valores si memoria FIFO tiene valores
^
In file included from C:\Users\admin\Documents\Arduino\cap65_2\cap65_2.ino:13:0:
C:\Users\admin\Documents\Arduino\libraries\Simple_MPU6050/Simple_MPU6050.h:138:22: note: initializing argument 1 of 'Simple_MPU6050& Simple_MPU6050::on_FIFO(void (*)(int16_t*, int16_t*, int32_t*))'
Simple_MPU6050 & on_FIFO(void (*CB)(int16_t *, int16_t *, int32_t *));
^~~~~~~
Hola, deberás asegurarte que el código desde Github se encuentre bien copiado en el editor del IDE, ya que hay algunas líneas que son algo extensas.
Saludos
Hola, pudiste resolver el error?, saludos
Como siempre, muchas gracias por el tutorial.
Y ahora una pregunta:
Por qué el la linea ENABLE_MPU_OVERFLOW_PROTECTION();
sin haber tocado nada del programa, da el siguiente error:
"expected contructor, destructor or type conversion before ';' token"
Hola, lamentablemente unos meses luego de la publicación del video el desarrollador realizó alguna modificación de la librería que hace que genere un error, al momento no he podido recrear el proyecto por cuestiones de tiempo libre para identificar el problema y ver opciones alternativas.
Saludos
¡EXCELENTE! 👏🏻