Índice:

Como construir um Cubesat com um Arduino e acelerômetro .: 5 etapas
Como construir um Cubesat com um Arduino e acelerômetro .: 5 etapas

Vídeo: Como construir um Cubesat com um Arduino e acelerômetro .: 5 etapas

Vídeo: Como construir um Cubesat com um Arduino e acelerômetro .: 5 etapas
Vídeo: Building a CubeSat for less than $1000 -- Part 1 -- It should be possible 2024, Novembro
Anonim
Como construir um Cubesat com um Arduino e um acelerômetro
Como construir um Cubesat com um Arduino e um acelerômetro

Nossos nomes são Brock, Eddie e Drew. O objetivo principal de nossa aula de física é viajar da Terra a Marte enquanto simula a órbita ao redor de Marte usando um Cube Sat e coleta dados. O objetivo do nosso grupo para este projeto é coletar dados usando um sensor acelerômetro que será conectado ao nosso Arduino dentro de um Cube Sat que orbitará "Marte" para encontrar a força gravitacional naquele planeta. Algumas possíveis restrições para esta tarefa específica seriam o código não funcionar da maneira correta, o acelerômetro não coletar dados e o limite que o CubeSat pode pesar. Embora haja muitos outros que qualquer pessoa poderia encontrar, esses foram os que nosso grupo enfrentou. Um vídeo do nosso projeto final e teste pode ser encontrado aqui https://www.youtube.com/embed/u1_o38KSrEc -Eddie

Etapa 1: Lista de Materiais

Lista de Materiais
Lista de Materiais
Lista de Materiais
Lista de Materiais
Lista de Materiais
Lista de Materiais

TODOS OS MATERIAIS LISTADOS VÃO DENTRO DO CUBESAT

1. Arduino e cabo de alimentação https://www.amazon.com/Elegoo-EL-CB-001-ATmega328…: o arduino foi projetado para tornar a eletrônica mais acessível a artistas, designers, amadores e qualquer pessoa interessada em criar objetos ou ambientes interativos

: permitir energia de e para seu Arduino e computador

2. Breadboard

: uma placa para fazer um modelo experimental de um circuito elétrico

MATERIAIS ANEXADOS AO PÃO

1. Acelerômetro Arduino

: um instrumento para medir a aceleração ou para detectar e medir vibrações

2. Módulo de cartão Arduino SD

: permite que você adicione armazenamento em massa e registro de dados ao seu projeto

3. Arduino Wires

: transfere o código em todo o Arduino e placa de ensaio

4. Luz LED

: um LED é uma pequena luz (significa "diodo emissor de luz") que funciona com relativamente pouca energia

-Desenhou

Etapa 2: Ferramentas necessárias e práticas de segurança

FERRAMENTAS NECESSÁRIAS

1. Faca Exacto

- usamos uma faca exata para cortar e traçar a forma do Arduino e do breadboard por meio de isopor, para proteger o Arduino e o breadboard em caso de acidentes

2. Pistola de cola quente

- usamos uma pistola de cola quente para colar o isopor nas laterais do nosso Cubesat para garantir que o nosso Arduino e a placa de ensaio estejam seguros

3. Isopor

- usamos pedaços de isopor para prender o Arduino e a placa de ensaio nas laterais do nosso Cubesat, também para permitir uma almofada se o Cubesat cair ou for sacudido

PRÁTICAS DE SEGURANÇA

1. a primeira prática de segurança que aplicamos foi garantir que não tocássemos na impressora 3D durante a impressão do Cubesat. a impressora 3D ficará muito quente e é importante lembrar de não tocá-la.

2. ao usar a faca de exacto para cortar os pedaços de isopor, tínhamos que colocar papelão por baixo para garantir que as mesas não fossem danificadas. também tínhamos de usar óculos de proteção ao usar a faca, caso algo voasse em nossos rostos ou em torno de nosso espaço de trabalho.

3. ao usar qualquer ferramenta que requeira trabalho duro, certifique-se de usar óculos de proteção para fins de segurança.

4. depois de conectar o Cubesat ao orbitador, certifique-se de avisar as pessoas ao redor do orbital que você testará o Cubesat e usará óculos de proteção para garantir que todas as partes do corpo e as pessoas estejam seguras.

-Desenhou

Etapa 3: Como:

Como
Como
Como
Como
Como
Como

Como construir um CubeSat

1. para iniciar o processo de construção do CubeSat, você precisa pesquisar modelos do CubeSat que são 10x10x10 e ter um arquivo STL à mão.

2. quando você encontrar um modelo que funcione para segurar uma placa de ensaio e um Arduino com segurança, você precisa baixar os arquivos em uma unidade flash para poder acessar os arquivos na impressora 3D.

3. após o download dos arquivos corretos na unidade flash, você pode conectar a unidade flash ao computador que está conectado à impressora 3D.

4. quando estiver imprimindo, certifique-se de selecionar os arquivos corretos e todos os fios, códigos e entradas estão conectados corretamente entre o computador e a impressora 3D. isso garantirá que o CubeSat seja impresso corretamente e que tudo corra conforme o planejado.

5. atribua a cada membro do grupo um horário designado para verificar com eficiência a impressora e o progresso do CubeSat para detectar quaisquer problemas que você possa encontrar. ser capaz de fazer um membro da equipe verificar o progresso a cada 2-3 horas fornecerá assistência suficiente para corrigir quaisquer problemas e observar o progresso que será feito.

-Eddie

O CÓDIGO:

#include #include #include #include

const int MPU = 0x68; int16_t AcX, AcY, AcZ, Tmp, GyX, GyY, GyZ; passo duplo, rolo;

Dados do arquivo;

void setup () {

pinMode (10, SAÍDA); // deve definir o pino 10 para saída, mesmo se não for usado; // configurando o pino 7 para acender o led SD.begin (4); // começa o cartão SD com CS definido como pino 4 Serial.begin (9600); Serial.println (F ("teste BMP280")); Wire.begin (); Wire.beginTransmission (MPU); Wire.write (0x6B); Wire.write (0); Wire.endTransmission (true); Serial.begin (9600); } void loop () {Wire.beginTransmission (MPU); Wire.write (0x3B); Wire.endTransmission (false); Wire.requestFrom (MPU, 14, verdadeiro);

int AcXoff, AcYoff, AcZoff, GyXoff, GyYoff, GyZoff; temp int, toff; duplo t, tx, tf;

// Correção de dados de aceleração AcXoff = -950; AcYoff = -300; AcZoff = 0;

// Correção de temperatura toff = -1600;

// Correção de giroscópio GyXoff = 480; GyYoff = 170; GyZoff = 210;

// lê dados de aceleração AcX = (Wire.read () << 8 | Wire.read ()) + AcXoff; AcY = (Wire.read () << 8 | Wire.read ()) + AcYoff; AcZ = (Wire.read () << 8 | Wire.read ()) + AcYoff;

// lê dados de temperatura temp = (Wire.read () << 8 | Wire.read ()) + toff; tx = temp; t = tx / 340 + 36,53; tf = (t * 9/5) + 32;

// lê os dados do giroscópio GyX = (Wire.read () << 8 | Wire.read ()) + GyXoff; GyY = (Wire.read () << 8 | Wire.read ()) + GyYoff; GyZ = (Wire.read () << 8 | Wire.read ()) + GyZoff;

Dados = SD.open ("Log.txt", FILE_WRITE); // abre um arquivo chamado "Log"

// obtém pitch / roll getAngle (AcX, AcY, AcZ);

// envia os dados pela porta serial Serial.print ("Angle:"); Serial.print ("Pitch ="); Serial.print (pitch); Serial.print ("| Roll ="); Serial.println (rolo);

Serial.print ("Temp:"); Serial.print ("Temp (F) ="); Serial.print (tf); Serial.print ("| Temp (C) ="); Serial.println (t);

Serial.print ("Acelerômetro:"); Serial.print ("X ="); Serial.print (AcX); Serial.print ("| Y ="); Serial.print (AcY); Serial.print ("| Z ="); Serial.println (AcZ);

Serial.print ("Giroscópio:"); Serial.print ("X ="); Serial.print (GyX); Serial.print ("| Y ="); Serial.print (GyY); Serial.print ("| Z ="); Serial.println (GyZ); Serial.println ("");

Data.print (pitch); Data.println (rolo);

Data.print (tf); Data.println (t); Data.print (AcX); // escreve dados acel no arquivo Data.print (","); // imprime vírgula no arquivo Data.print (AcY); Data.print (","); Data.print (AcZ); Data.print (","); Data.print (GyX); Data.print (","); Data.print (GyY); Data.print (","); Data.println (GyZ);

atraso (1000); }

// converte os dados de aceleração para pitch / roll void getAngle (int Vx, int Vy, int Vz) {double x = Vx; duplo y = Vy; duplo z = Vz;

}

}

O CÓDIGO (CONT.):

-este é o código que usamos para coletar dados do acelerômetro e do cartão SD.

- depois de conectar nosso Arduino e breadboard para que se pareçam com o do diagrama de frizting, conectamos o cartão SD ao módulo adaptador de cartão SD e continuamos nos preparando para o teste final.

- tivemos problemas com o código por muito tempo, mas o código fornecido acima é o código final que usamos e que nos deu os dados que usamos para nossa apresentação.

-este código coleta os dados do acelerômetro e transfere as informações para o cartão SD.

- o cartão SD foi conectado ao USB e conectado ao computador. a partir daí, a informação foi colocada em nosso computador.

-Brock

LIGANDO O ARDUINO:

- ao conectar o Arduino, lutamos com fios e Arduinos ineficazes.

- tivemos que corrigir a fiação de nosso Arduino várias vezes devido à fiação incorreta.

- para garantir a fiação e a codificação corretas, certifique-se de que seus fios estejam totalmente protegidos e de que seu código seja processado corretamente.

DIAGRAMA DE FRITZING:

- o diagrama fritzing era direto e fácil de seguir junto com

- enfrentamos problemas com o diagrama quando o Módulo de cartão SD não fazia parte do programa fritzing. por causa disso, tivemos que pesquisar online por uma parte para download para incluir no diagrama

- completamos o diagrama incluindo as peças e programas corretos no diagrama

-Desenhou

Etapa 4: Resultados / Lições Aprendidas

Nosso gráfico mostra um claro aumento na temperatura, provavelmente devido ao aquecedor demorar para atingir a temperatura máxima.

Para este projeto, a física que encontramos foi a força centrípeta mantendo a órbita CubeSat.

-Brock

Recomendado: