Índice:
- Etapa 1: Informações gerais sobre o módulo Compass
- Etapa 2: componentes necessários
- Etapa 3: interface do módulo de bússola GY-511 com o Arduino
- Etapa 4: Calibração do Módulo de Bússola GY-511
- Etapa 5: Circuito
- Etapa 6: Código
- Etapa 7: fazendo uma bússola digital
- Etapa 8: Circuito
- Etapa 9: Código
- Etapa 10: o que vem a seguir?
Vídeo: Como usar o módulo GY511 com Arduino [Faça uma bússola digital]: 11 etapas
2024 Autor: John Day | [email protected]. Última modificação: 2024-01-30 11:37
Visão geral
Em alguns projetos de eletrônicos, precisamos saber a localização geográfica a qualquer momento e fazer uma operação específica de acordo. Neste tutorial, você aprenderá a usar o módulo de bússola LSM303DLHC GY-511 com Arduino para fazer uma bússola digital. Primeiro, você aprenderá sobre este módulo e como ele funciona, e então verá como fazer a interface do módulo LSM303DLHC GY-511 com o Arduino.
O que você aprenderá
- Qual é o módulo da bússola?
- Módulo Compass e interface Arduino.
- Faça uma bússola digital com o módulo GY-511 e Arduino.
Etapa 1: Informações gerais sobre o módulo Compass
O módulo GY-511 inclui um acelerômetro de 3 eixos e um magnetômetro de 3 eixos. Este sensor pode medir a aceleração linear em escalas completas de ± 2 g / ± 4 g / ± 8 g / ± 16 ge campos magnéticos em escalas completas de ± 1,3 / ± 1,9 / ± 2,5 / ± 4,0 / ± 4,7 / ± 5,6 / ± 8,1 Gauss.
Quando este módulo é colocado em um campo magnético, de acordo com a lei de Lorentz, uma corrente de excitação induz em sua bobina microscópica. O módulo de bússola converte essa corrente em tensão diferencial para cada direção de coordenada. Usando essas tensões, você pode calcular o campo magnético em cada direção e obter a posição geográfica.
Gorjeta
QMC5883L é outro módulo de bússola comumente usado. Este módulo, que tem uma estrutura e aplicação semelhantes ao módulo LMS303, tem um desempenho ligeiramente diferente. Portanto, se você estiver fazendo os projetos, tome cuidado com o tipo de módulo. Se o seu módulo for QMC5882L, use a biblioteca e os códigos apropriados que também estão incluídos no tutorial.
Etapa 2: componentes necessários
Componentes de hardware
Arduino UNO R3 * 1
GY-511 Acelerômetro de 3 eixos + magnetômetro * 1
TowerPro Servo Motor SG-90 * 1
Módulo 1602 LCD * 1
Jumpers * 1
Aplicativos de software
IDE Arduino
Etapa 3: interface do módulo de bússola GY-511 com o Arduino
O módulo de bússola GY-511 tem 8 pinos, mas você precisa de apenas 4 deles para fazer a interface com o Arduino. Este módulo se comunica com o Arduino usando o protocolo I2C, então conecte os pinos SDA (saída I2C) e SCK (entrada do relógio I2C) do módulo aos pinos I2C na placa Arduino.
ObservaçãoComo você pode ver, usamos o módulo GY-511 neste projeto. Mas você pode usar esta instrução para configurar outros módulos de bússola LMS303.
Etapa 4: Calibração do Módulo de Bússola GY-511
Para navegar, primeiro você precisa calibrar o módulo, o que significa definir a faixa de medição de 0 a 360 graus. Para fazer isso, conecte o módulo ao Arduino conforme mostrado abaixo e carregue o código a seguir em sua placa. Depois de executar o código, você pode ver os valores mínimo e máximo da faixa de medição para os eixos X, Y e Z na janela do monitor serial. Você precisará desses números na próxima parte, então anote-os.
Etapa 5: Circuito
Etapa 6: Código
Neste código, você precisa da biblioteca Wire.h para comunicação I2C e da biblioteca LMS303.h para o módulo de bússola. Você pode baixar essas bibliotecas nos links a seguir.
Biblioteca LMS303.h
Biblioteca Wire.h
ObservaçãoSe você estiver usando QMC5883, precisará da seguinte biblioteca:
MechaQMC5883L.h
Aqui, explicamos o código do LMS303, mas você também pode baixar os códigos do módulo QMC.
Vamos ver algumas das novas funções:
compass.enableDefault ();
Inicialização do módulo
compass.read ();
Lendo os valores de saída do módulo de bússola
running_min.z = min (running_min.z, compass.m.z); running_max.x = max (running_max.x, compass.m.x);
Determinar os valores mínimo e máximo da faixa de medição, comparando os valores medidos.
Etapa 7: fazendo uma bússola digital
Depois de calibrar o módulo, vamos construir uma bússola conectando um servo motor ao módulo. Para que o servo-indicador sempre nos mostre a direção norte, como a seta vermelha na bússola. Para fazer isso, primeiro o módulo de bússola calcula a direção geográfica primeiro e a envia para o Arduino e, em seguida, aplicando um coeficiente apropriado, você calculará o ângulo que o servo motor deve girar para que seu indicador aponte para o norte magnético. Eventualmente, aplicamos esse ângulo ao servo motor.
Etapa 8: Circuito
Etapa 9: Código
Para esta parte, você também precisa da biblioteca Servo.h, que é instalada no software Arduino por padrão.
Vamos ver algumas das novas funções:
Servo Servo1;
Inicialização do módulo
compass.read ();
Apresentando o objeto servo motor
Servo1.attach (servoPin); compass.init (); compass.enableDefault ();
Inicialização do módulo de bússola e servo motor
O argumento Servo1.attach () é o número do pino conectado ao servo motor.
compass.m_min = (LSM303:: vector) {- 32767, -32767, -32767}; compass.m_max = (LSM303:: vetor) {+ 32767, +32767, +32767};
Usando essas linhas você define os valores mínimo e máximo para medir a faixa obtida na parte anterior.
float header = compass.heading ((LSM303:: vector) {0, 0, 1});
A função header () retorna o ângulo entre o eixo das coordenadas e um eixo fixo. Você pode definir o eixo fixo com um vetor no argumento da função. Por exemplo, aqui, ao definir o (LSM303:: vetor) {0, 0, 1}, o eixo Z é considerado um eixo constante.
Servo1.write (cabeçalho);
A função Servo1.write () aplica o valor lido pelo módulo da bússola ao servo motor.
ObservaçãoNote que o servo motor pode ter um campo magnético, então é melhor colocar o servo motor a uma distância adequada do módulo da bússola, para que não faça com que o módulo da bússola se desvie.
Recomendado:
Como usar um telefone Android como uma webcam com Skype: 5 etapas
Como usar um telefone Android como uma webcam com Skype: Há um velho ditado que diz que uma imagem vale mais que mil palavras … e há um novo ditado que diz que um vídeo vale um milhão. Isso pode parecer um exagero, mas há uma grande diferença entre falar com alguém em uma chamada e falar com
Inglês / Português: S4A Como Instalar E Usar / S4A Como instalar e usar: 7 etapas
Inglês / Português: S4A Como Instalar E Usar / S4A Como instalar e usar: O S4A (ou Scratch para Arduino) é um sistema que baseado no Scratch que permite interagir diretamente com um Arduino. É uma forma muito did á tica de usar programa ç ã o e verificar em tempo real a intera ç & atild
Módulo RF 433MHZ - Faça receptor e transmissor de módulo RF 433MHZ sem qualquer microcontrolador: 5 etapas
Módulo RF 433MHZ | Faça receptor e transmissor de módulo RF 433MHZ sem qualquer microcontrolador: gostaria de enviar dados sem fio? facilmente e sem a necessidade de microcontrolador? Vamos lá, neste instrutível vou mostrar meu transmissor e receptor rf básico pronto para ser usado! Neste instrutível você pode enviar e receber dados usando muito ver
Como usar o terminal Mac e como usar as funções principais: 4 etapas
Como usar o Terminal Mac e como usar as funções principais: Mostraremos como abrir o Terminal MAC. Também mostraremos alguns recursos do Terminal, como ifconfig, alteração de diretórios, acesso a arquivos e arp. Ifconfig permitirá que você verifique seu endereço IP e seu anúncio MAC
Como usar sua filmadora como uma webcam: 4 etapas
Como usar sua filmadora como uma webcam: Se você é como eu, tem muitos amigos que se mudaram de casa e estão morando a milhares de quilômetros de distância, ou tem amigos com os quais foi para a universidade que estão todos morando em lugares diferentes. Eu pessoalmente odeio telefones e ins