Arduino - Usando o módulo giroscópio/acelerômetro
ฝัง
- เผยแพร่เมื่อ 27 มี.ค. 2021
- Neste vídeo demonstro de uma forma prática o uso do módulo MPU6050, um sensor giroscópio e acelerômetro. Ele também conta com um sensor de temperatura.
Os valores lidos do sensor são exibidos no monitor e plotter serial.
Link para download do código:
bitabittecnologia.com.br/2022...
Instagram: / bitabittecnologia - วิทยาศาสตร์และเทคโนโลยี
Parabéns! Muito didático!
Obrigado!!
Parabéns pela narração do vídeo. Excelente!
Obrigado!!!
Boa, muito útil. Testei aqui e funcionou. Obrigado pelo tutorial
Que bom que deu certo!!!
vídeo bem simples e direto. gostei muito
Obrigado!!
Excelente aula! Parabéns!!!
Obrigado!!!
se é monstro!!
Valeu!!!!
ótima explicação e código! parabens
Obrigado!!
PARABENZAÇOOOO MUITO BOM,
Obrigado!
Alguém me tira uma dúvida, por favor, estou desenvolvendo um sistema de direcionamento para um foguete, para mantê-lo sempre na vertical, caso ele tenha alguma alteração de inclinação independente do eixo X ou Y, o arduíno recebe a alteração e corrige a inclinação, alterando a posição do motor de acordo com o valor recebido, minha dúvida, para manter a inclinação de um foguete sempre na vertical seria o acelerômetro ou giroscópio?
Top
Muito obrigado!!
Parabéns !!! Ensina fazer um ginbal 3 eixos com essas belezura
Obrigado!!!!
Boa idéia. Valeu!!!!
@@BitaBit um inscrito na expectativa rsrs
Muito bom! Pelo q percebo ele não tem mta precisão/estabilidade, então não poderia utilizá-lo para drones, correto?
Obrigado!!! Estava até pesando em fazer algum tipo de estabilizador, mas teria que verificar se vai ficar preciso, me parece que dá pra usar, mas não tenho certeza absoluta.
Excelente vídeo! Vai me ajudar muito em um projeto que estou planejando desenvolver. Você saberia me dizer qual a frequência de aquisição do acelerômetro? Eu busquei informações auqi na internet, mas não encontrei.
Obrigado!!! Agora em relação a frequência de aquisição não sei informar.
@@BitaBit Sem problemas! Vou dar mais um procurada por aqui. Muito obrigado por responder!
Boa tarde. Eu tenho o Arduíno Uno. Obrigado.
Blz!!!
Vídeo excelente, parabéns!! Você saberia me informar se eu consigo ter acesso as informações de acelerômetro, giroscópio e temperatura simultaneamente com apenas um sensor? E se seria possível adicionar no pino de sensor auxiliar um Magnetrometro? Muito obrigado!!
Obrigado!!!
Respondendo as perguntas, sim é possível obter os dados simultaneamente. No vídeo fiz separado para entender melhor.
É possível utilizar o magnetômetro, pois ele também utiliza o protocolo I2C.
@@BitaBit Muito obrigado, to pensando em desenvolver um drone usando arduino e esses modulos, e se gostar da ideia acho que daria uma ótima serie de videos!
Sim. Seria muito interessante. Boa sorte no projeto.
@@BitaBit muito obrigado!!
Show de video ..consigo usar ele com um modulo RF para transmitir os dados para o arduino via RF...?
Obrigado. Estou com um módulo RF, mas não tive a oportunidade de usar ainda. Creio que é possível sim.
Parabéns pelo vídeo, muito bom. Qual unidade de medida/escala estão sendo captados os dados do giroscópio e acelerômetro
Olá, obrigado!!!
Infelizmente não sei informar qual a medida.
Graus eu acho. -90° e 90° para X, -90° e 90° para Y e -90° e 90° para Z, somando tudo isso resulta em 360°, que é uma volta completa em uma circunferência. Espero ter ajudado :) .
Muito bom e explicativo!! Camarada, sabe dizer como posso calibrar o magnetometro gy-85, semelhante ao utilizado no video? Seria via código ou devo utilizar algum programa?
Estou com o seguinte problema, para um sensor de movimento, ele está detectando o movimento porém está centralizando automaticamente, não mantém a posição..
Olá, obrigado!!
Mas isso em um movimento constante ou movimenta e para?
@@BitaBit Seria em um "movimento e parada", por exemplo, é para um sensor de movimento, os eixos x e y (vertical e diagonal) estão funcionando corretamente, porém o eixo z (horizontal) está com este problema que mencionei.. você movimenta o sensor e a saída (os dados de movimento) acompanha o movimento, se eu paro o sensor em uma posição, a resposta dele é centralizada automaticamente, não se mantém na posição de parada..
busquei em varios artigos e videos e vi que é um problema de calibragem do magnetometro, porém não sei uma forma de fazer essa calibragem.. desde já agradeço por responder
Entedi. Eu pessoalmente nunca calibrar. Mas já ouvi falar sobre calibrar neste link:forum.arduino.cc/t/arduino-nano-v3-0-gy-85-reading-combining-outputting/160447/3
@@BitaBit obg bro, vou dar uma estuda sobre!
Faltou testar o eixo z. Vou testar para usar como sensor de cabeça em jogos de cockpit.
Exato. Faltou
olá, caso eu queira utilizar apenas o giroscópio ainda vou ter que armazenas os outros valores ?
não entendo muito do método i2c
desde já agradeço.
Olá.
Tente fazer o seguinte:
No código, onde tem a seguinte linha Wire.write(0x3B); substitua por Wire.write(0x43);
Depois basta ler os valores do giroscópio.
Meu nobre parabens mais quando olho para os lados o mesmo volta para o centro sozinho. vc tem alguma ideia do que pode esta acontecendo.
Olá, obrigado. Se este comportamento for para o giroscópio é normal. Pois ele mede a aceleração, os valores vão se alterar somente enquanto está em movimento.
Por favor. Me informa o modelo ou a especificação do acelerômetro. Obrigado.
Olá, o modelo é o MPU-6050
Cara, vi que no UNO tem portas específicas pra SCL e SDA. Funcionam corretamente?
Olá, sim funciona.
amigo por favor me ajuda quero fazer um tricoptero que estabilize mas atravez de um potenciometro ele acelere os tres eixo aomesmo tempo fazendo o tricopeetero subir!
Entedi. Mas o que você já tem pronto?
olá, tudo bem? Tenho uma dúvida, posso utilizar um giroscópio de celular no arduino, com a mesma configuração?
Tudo bem!!
Se for o mesmo protocolo da pra utilizar da mesma forma, mesmos pinos. O que pode acontecer é os dados virem de forma diferente
Será que dá certo para um projeto de monociclo elétrico?
Sim, nunca fiz mas já vi projetos
Como receber dados de dois ou mais acelerômetros no mesmo arruíno? É possível?
Olá. Nunca tentei usar dois ao mesmo tempo. Mas tente fazer o seguinte:
Conecte os dois da mesma forma, Adicionando uma conexão em ambos os AD0.
Deixando um AD0 em nível lógico alto e outro em nível lógico baixo. Isso permite que ambos os sensores sejam conectados no mesmo bus I2C.
O que esta com o AD0 em nível lógico baixo provavelmente estará com o endereço 0x68, e o que esta em nível lógico alto estará com o endereço 0x69.
Agora use estes endereços e tente fazer o seguinte na função setup:
//SENSOR 1
Wire.begin();
Wire.beginTransmission(0x68);
Wire.write(0x6B);
Wire.write(0);
Wire.endTransmission(true);
//SENSOR 2
Wire.begin();
Wire.beginTransmission(0x69);
Wire.write(0x6B);
Wire.write(0);
Wire.endTransmission(true);
E na função loop:
//SENSOR 1
Wire.beginTransmission(0x68);
Wire.write(0x3B); // starting with register 0x3B (ACCEL_XOUT_H)
Wire.endTransmission(false);
Wire.requestFrom(0x68, 14, true);
acelX1 = Wire.read()
sera que teria como colocar um desse atras do monitor pra ele girar a tela automaticamente quando gira a tela do monitor?
Olá. É possível. Teria que ter uma interface para obter os dados e depois setar a orientação no dispositivo
Conteúdo muito bom!!! Gostaria de saber se vc pode me ajudar na programação do dos módulos MPU6050 com o MCP2515? Como posso usar eles dois juntos. Obrigado!
Olá, muito obrigado!!! Ainda não utilizei o MCP2515
@@BitaBit Bom, eu peguei um sketch em um site na Net onde se usa os dois juntos mas, como não tenho experiência nem conhecimento no arduino, nem sei como resolver um problema q tá aparecendo! Esses módulos irei usar na multimídia do meu carro, ele tem os inclinômetros aí, p ativá-los tem esse sketch c toda parte de ligação dos módulos mas, tá dando um erro na compilação.
Entedi, se me passar a sketch posso dar uma olhada.
@@BitaBit Opa, posso fazer isso sim, porém, precisamos de outro meio de comunicação né? Vc tem Instagram?
Não possuo, qualquer coisa pode mandar para o e-mail: ajuda@bitabittecnologia.com.br
como é feito o codigo de programação em cima desse projeto?
O código é feito utilizando a IDE do Arduino.
Olá. gostei muito do seu vídeo, mas eu fiz igual o seu circuito e usei o seu código e os valores de x, y e z dos sensores sempre ficam em -1. Saberia dizer o pq?
Oi. Obrigado. Se as conexões estão corretas então tente verificar se há algum mau contato.
Ana, vc conseguiu resolver esse problema? Minhas conexoes estao corretas e o codigo eh o mesmo, mas todos os eixos dao -1.
@@carolinegomes9030 Oi, consegui resolver sim. O problema era de mau contato mesmo, talvez vc tenha que conectar os fios de uma maneira diferente
@@anapaulamerencia58 outra dúvida.. você ligou diretamente no 5V ou no 3,3V?
@@carolinegomes9030 no 5V⁰
Amigo, como faço para entrar em contato contigo? Abraço
Boa noite. Pode entrar em contato pelo e-mail rodrigosanntos@live.com
Que bruxaria é essa? kkkk brincadeira, parabéns pelo vídeo.
Kkkkkk. Valeu
tem como usar 2 MPU6050 em 1 Arduino Leonardo?
Boa tarde. Nunca tentei usar dois ao mesmo tempo. Mas tente fazer o seguinte:
Conecte os dois da mesma forma, Adicionando uma conexão em ambos os AD0.
Deixando um AD0 em nível lógico alto e outro em nível lógico baixo. Isso permite que ambos os sensores sejam conectados no mesmo bus I2C.
O que esta com o AD0 em nível lógico baixo provavelmente estará com o endereço 0x68, e o que esta em nível lógico alto estará com o endereço 0x69.
Agora use estes endereços e tente fazer o seguinte na função setup:
//SENSOR 1
Wire.begin();
Wire.beginTransmission(0x68);
Wire.write(0x6B);
Wire.write(0);
Wire.endTransmission(true);
//SENSOR 2
Wire.begin();
Wire.beginTransmission(0x69);
Wire.write(0x6B);
Wire.write(0);
Wire.endTransmission(true);
E na função loop:
//SENSOR 1
Wire.beginTransmission(0x68);
Wire.write(0x3B); // starting with register 0x3B (ACCEL_XOUT_H)
Wire.endTransmission(false);
Wire.requestFrom(0x68, 14, true);
acelX1 = Wire.read()
Como eu converto pra m/s^2
Olá. Infelizmente não sei informar
eu abro o codico aonde?
Olá, depois de baixar acessando pelo link na descrição do video, extraia e abra pela ide do Arduino.
eu tenho um desse e testei esse codigo e nao funcionou a leitura
Boa noite. Verifique no monitor serial ao invés do plotter, e veja o retorno dos dados, se está retornando errado ou não está retornando nada.
Mas como o chip sabe que a pessoa está girando o aparelho ? Eu não consigo entender isso porque não existe nada mecânico na placa isso ? Eu me questiono como o chip consegue fazer a medição de um valor que envolve mudança de um ângulo.
Todo sensor é baseado em algum tipo de resistência, ou seja, algo que em uma determinada situação pode variar a corrente elétrica. Essa situação, pode ser mudança de temperatura, mudança de luminosidade etc. No caso do giroscópio/acelerômetro é o movimento. Internamente ele contém componentes minúsculos que se movem.
@@BitaBit A alguns anos eu me fiz a mesma pergunta para o temômetro digital, aqueles branquinhos de farmácia, pensei "peraí, como é que o circuito reconhece a temperatura ? Porque isso é um dado analógico (escala continua, podendo assumir n valores), não é um sistema discreto.
Realmente, é interessante como funciona.
Usa strain gauge. Dá uma pesquisada, é simples.
Amigo, Boa tarde! Meu nome é Fabricio e estou procurando alguém para me ajudar a entender o funcionamento de uma luminária de LED pois tenho interesse em passar a fabricar um modelo similar.. Estou buscando alguém para me ajudar.. você teria interesse ? Se tiver interesse podemos conversar e ver um valor para te remunerar como consultoria.
Bom dia Fabricio. No momento está meio complicado. Pois não tenho muito tempo. É que estudo e trabalho. Boa sorte com o projeto.
Da pra fazer um balanceador dinâmico igual esse? th-cam.com/video/k9paiNV3rNo/w-d-xo.html
Vi, o vídeo mas não entendi muito bem
Boa tarde, sabe se da pra usar o acelerômetro externo ao pc? Obrigado.
Boa tarde. Sim da pra usar, mostrei no vídeo só um exemplo, usei o PC somente para exibir os valores.