Como medir a massa da Terra usando o Arduino
Componentes e suprimentos
| × | 1 | ||||
| × | 1 | ||||
| × | 4 | ||||
| × | 2 | ||||
| × | 4 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 |
Aplicativos e serviços online
|
Sobre este projeto
Introdução
Um belo dia, eu estava me pesando em uma balança. De repente, um pensamento me veio à mente:'Qual seria a massa da Terra?' Deixe isso de lado 'Como podemos medir isso?' Não existe tal balança de pesagem em que a Terra possa ser colocada. Deve haver alguma forma indireta de medir a massa da Terra. Aqui, apresento a implementação de um desses métodos indiretos para medir a massa da Terra.
Etapa 1:o método indireto
No início do século XIX, os cientistas usaram a segunda lei de Newton e a lei da gravitação universal de Newton para medir a massa da Terra. Essas equações são F =ma e F =(GmM) / (r ^ 2) respectivamente (m =massa do objeto, a =aceleração, G =Constante Gravitacional, M =massa da Terra, r =Raio da Terra) . Se substituirmos g, ou seja, aceleração devido à gravidade para o termo de aceleração 'a', e combinarmos essas duas equações, obteremos.
mg =GmM / r ^ 2
Esta equação pode ser resolvida para M, ou seja, massa da terra.
M =(gr ^ 2) / G.
Assumiremos que sabemos o valor de G e r. Encontraremos g, ou seja, a aceleração da gravidade usando um pequeno experimento, envolvendo Arduino e alguns sensores. Finalmente, colocaremos todas as coisas juntas para encontrar o valor de M.
veja a imagem em anexo para expressões matemáticas adequadas.
Vamos começar com o experimento.
Etapa 2:Visão geral do experimento
(tenha paciência para um pouco de matemática aqui, o Arduino entrará em ação em breve)
Para determinar a aceleração devido à gravidade, precisamos saber algo chamado 'queda livre', é um movimento no qual um corpo / objeto se move para baixo em direção à terra, apenas sob a força da gravidade. Bem, existem poucos termos científicos que caracterizam essa queda livre. Eles são velocidade inicial, velocidade final, distância percorrida, tempo de vôo e aceleração.
- Velocidade inicial - velocidade do corpo em queda livre no início da queda livre ou início do experimento.
- Velocidade final - velocidade do corpo em queda livre no final da queda livre do final do experimento.
- Distância percorrida - distância percorrida pelo corpo em queda livre durante a queda livre.
- Tempo de voo - tempo gasto para cobrir a distância percorrida em queda livre.
- Aceleração - a taxa de variação da velocidade observada pelo corpo em queda livre. É igual à aceleração da gravidade.
Agora, há uma das equações de Newton que diz -
Distância percorrida =(velocidade inicial * tempo de vôo) + (aceleração * (tempo de vôo) ^ 2) / 2
Existem 4 variáveis na equação acima, incluindo uma de nosso interesse, ou seja, 'aceleração', dessas 4 variáveis, se soubermos 3, podemos calcular a 4ª variável desconhecida restante.
Podemos consertar 2 deles
- Distância percorrida =1 metro (deixaremos nosso objeto cair de 1 metro de altura)
- velocidade inicial =0 m / s (começaremos nosso experimento do repouso)
Ficamos com 2 variáveis desconhecidas, é aqui que o Arduino entra em ação e nos ajuda a encontrar o tempo de vôo. Para determinar com precisão a hora do voo, precisamos de dois carimbos de hora 1. início do voo e 2. fim do voo.
Faremos circuitos personalizados para determinar essas duas marcas de tempo na etapa 4, descrevo o circuito para encontrar a marca de tempo para o início do vôo e na etapa 5, fim do vôo.
Com a ajuda do Arduino e alguns sensores, calcularemos o tempo de vôo, deixando apenas uma incógnita na equação acima, ou seja, a aceleração devido à gravidade (bingoooo !!!).
Vamos colocar nossos valores de variáveis fixas na equação mencionada acima, para simplificar ainda mais a equação.
1 =(g * (tempo de voo) ^ 2) / 2
Assim,
g =2 / (tempo de voo) ^ 2
Os detalhes do experimento virão na etapa 7.
Em caso de dúvida consulte a imagem anexa.
Etapa 3:coisas de que precisamos
Aqui está a lista de coisas que precisaremos para fazer um experimento para medir a aceleração devido à gravidade.
- Qualquer placa Arduino, de preferência uno / duomilanove (sem motivo específico, apenas porque usei esta placa para este experimento)
- Cabo USB para conectar o Arduino ao PC
- resistores de 560 Ohm (4 em quantidade), resistores de 100 Ohm (2 em quantidade)
- sensor piezoelétrico (4 em quantidade)
- Um par de IR Tx (IR LED) e Rx (fotodiodo)
- Um potenciômetro
- Um opamp (como UA741C)
- Uma violação
- Três fios de 1,2 metros de comprimento
- PCB de uso geral pequeno de 5 cm x 5 cm para montagem de circuitos IR
- fita
- Folha de papelão
Em caso de dúvidas consulte as Imagens em anexo.
Etapa 4:Esquema 1:O circuito IR
Este circuito será usado para marcar a hora do início da queda livre para um objeto usado para medir 'g'. Aqui estão os pontos importantes sobre a imagem esquemática fritzing anexada.
- O LED IR é usado em polarização direta, que atua apenas como LED normal nesta aplicação, ou seja, iluminando o fotodiodo do receptor IR.
- O fotodiodo é usado em polarização reversa.
- A saída da junção do cátodo e do resistor é conectada a um dos terminais de entrada do opamp.
- Outro terminal de entrada do opamp está conectado ao potenciômetro que determina a tensão limite.
- A saída do opamp vai para a placa Arduino.
Consulte o vídeo (tempo =5m 16s) em caso de dúvida.
Etapa 5:Esquema 2:o circuito piezoelétrico
Este circuito será usado para marcar o tempo final da queda livre para um objeto usado para medir 'g'. Aqui estão os pontos importantes sobre a imagem esquemática fritzing anexada.
- 4 sensores piezoelétricos são conectados conforme mostrado no esquema.
- 4 resistores de 560 Ohms são conectados em paralelo com os sensores piezoelétricos para reduzir o pico de tensão gerado pelo sensor piezoelétrico quando um objeto em queda livre atinge sua superfície.
- O terminal negativo dos sensores piezoelétricos está conectado ao aterramento do circuito.
- O terminal positivo do sensor piezoelétrico está conectado aos pinos de entrada analógica.
Em caso de dúvida, consulte o vídeo em anexo (tempo =9m 2 seg).
Etapa 6:juntando as coisas
Siga estas instruções para colocar as coisas juntas.
- Use papelão para fazer uma estrutura semelhante a um telhado e cole-o na parede a cerca de 1,1 metros.
- Conecte o módulo IR voltado para baixo no teto de papelão.
- Conecte a saída do opamp ao pino nº 4 do Arduino usando um dos fios de 1,2 m de comprimento.
- Conecte o Vcc e o GND do arduino ao módulo IR usando o restante dos fios de 1,2 m de comprimento.
- Certifique-se de que os fios estejam firmemente presos à parede, o módulo IR ao teto de papelão, o módulo piezoelétrico ao solo logo abaixo do módulo IR.
Em caso de dúvida, observe a imagem anexa, ela está devidamente sinalizada para facilitar o entendimento da montagem.
Etapa 7:detalhes do experimento
Com todas as coisas no lugar (exceto o código do Arduino, discutido na etapa 8), vamos seguir o procedimento deste experimento.
- Cole uma pequena projeção fina em cima do objeto usado para a queda livre, conforme mostrado na imagem numerada como 1.
- Antes de deixarmos nosso objeto em queda livre, segure-o apenas na marca de 1 metro, de forma que a projeção no topo obstrua a luz do infravermelho para o fotodíodo. Conforme mostrado na imagem numerada como 2.
- deixe o objeto sem transmitir qualquer força para deixá-lo cair livre na zona de aterrissagem piezoelétrica.
- À medida que cai, não há obstrução no caminho de IR TX e RX, dando-nos o sinal sobre o objeto acabado de sair em termos de tempo de início da queda livre.
- Conforme o objeto toca a zona de pouso, os sensores piezoelétricos geram um pico de tensão controlado notificando a chegada do objeto no tempo de término da queda livre.
- Se subtrairmos o tempo de término do tempo de início, obteremos o tempo de vôo que usaremos para calcular a aceleração devido à gravidade, conforme discutimos na etapa 2.
Etapa 8:Código Arduino
Estou anexando o código do Arduino para este experimento. O código é muito simples. Em caso de dúvida consulte o vídeo onde explico detalhadamente o código (tempo no vídeo =13 minutos 35 segundos).
Etapa 9:vamos fazer a experiência
As coisas a seguir devem ser tomadas com cuidado antes de fazer este experimento.
- O limite do sensor piezoelétrico deve ser definido corretamente no código do Arduino.
- Coloque o painel piezoelétrico logo abaixo do módulo IR.
- Certifique-se de deixar cair o objeto de 1 metro sem transmitir qualquer força externa.
Aqui estou eu fazendo este experimento no tempo de 17 minutos no vídeo em anexo. Iremos calcular a massa da terra usando os resultados, ou seja, o tempo de vôo obtido neste experimento.
Etapa 10:Resultados e massa da Terra
Depois de repetir este experimento por 3 vezes, obtive os seguintes resultados em termos de tempo de voo.
- 443 ms
- 443 ms
- 464 ms
Vamos pegar a média.
Tempo médio de voo =450 ms
Se substituirmos este valor na equação para obter a aceleração da gravidade, obtemos a aceleração em torno de 9,8755 m / s2. Conforme visto na imagem em anexo.
Finalmente substituindo este valor de 'g' para obter a massa da terra, obtemos que é em torno de 6,0066 x 1024 Kg, como você pode ver na imagem em anexo.
A massa real da Terra de acordo com o google é de 5,972 x 1024 kg. Acho que chegamos perto.
Obrigado pelo seu tempo, Em caso de dúvidas encaminhe o vídeo ou coloque nos comentários que ficarei feliz em ajudar.
Código
- código Arduino
Código do Arduino Arduino
código arduino simplesconst int sensorPin1 =A0; const int sensorPin2 =A1; const int sensorPin3 =A2; const int sensorPin4 =A3; const int photoPin =4; const int ledPin =13; const int threshold =110; char stringToPrint [100]; int startTime, endTime; int val1, val2, val3, val4; void setup () {Serial.begin (115200); // coloque seu código de configuração aqui, para ser executado uma vez:pinMode (ledPin, OUTPUT); pinMode (sensorPin1, INPUT); pinMode (sensorPin2, INPUT); pinMode (sensorPin3, INPUT); pinMode (sensorPin4, INPUT); pinMode (photoPin, INPUT);} void loop () {// coloque seu código principal aqui, para executar repetidamente:int start =digitalRead (photoPin); startTime =milis (); if (start ==HIGH) digitalWrite (ledPin, HIGH); while (start ==LOW) {digitalWrite (ledPin, LOW); val1 =analogRead (sensorPin1); val2 =analogRead (sensorPin2); val3 =analogRead (sensorPin3); val4 =analogRead (sensorPin4); // sprintf (stringToPrint, "% d,% d,% d,% d", val1, val2, val3, val4); //Serial.println(stringToPrint); if ((val1> =limite) || (val2> =limite) || (val3> =limite) || (val4> =limite)) {endTime =millis (); sprintf (stringToPrint, "% d ms", endTime - startTime); Serial.println (stringToPrint); digitalWrite (ledPin, HIGH); atraso (1000); digitalWrite (ledPin, LOW); início =ALTO; }}}
Esquemas
fritzing esquemático para IR circuitary imagem de hardware esquema fritzing imagem de hardwareProcesso de manufatura
- Como medir a qualidade do ar em OpenSensors
- Luzes de dimerização com PWM usando o botão de ação
- Máquina de LEVITAÇÃO ULTRASÔNICA Usando ARDUINO
- Medição de frequência e ciclo de trabalho usando Arduino
- Encontre-me
- Sonar usando arduino e exibição no IDE de processamento
- Contador de carros usando Arduino + Processing + PHP
- Usando o sensor de pulso vestível MAX30100 com Arduino
- Usando o Sensor de Umidade do Solo YL-39 + YL-69 com Arduino
- Como medir a maturidade digital da minha empresa?