Table des matières:

Comment construire un Cubesat avec un Arduino et un accéléromètre. : 5 étapes
Comment construire un Cubesat avec un Arduino et un accéléromètre. : 5 étapes

Vidéo: Comment construire un Cubesat avec un Arduino et un accéléromètre. : 5 étapes

Vidéo: Comment construire un Cubesat avec un Arduino et un accéléromètre. : 5 étapes
Vidéo: Découvrir le projet UVSQ-SAT 2024, Novembre
Anonim
Comment construire un Cubesat avec un Arduino et un accéléromètre
Comment construire un Cubesat avec un Arduino et un accéléromètre

Nos noms sont Brock, Eddie et Drew. L'objectif principal de notre cours de physique est de voyager de la Terre à Mars tout en simulant l'orbite autour de Mars à l'aide d'un Cube Sat et en collectant des données. L'objectif de notre groupe pour ce projet est de collecter des données à l'aide d'un capteur accéléromètre qui sera attaché à notre Arduino à l'intérieur d'un Cube Sat qui orbitera "Mars" pour trouver la force gravitationnelle sur cette planète. Certaines contraintes possibles pour cette tâche spécifique seraient le code ne fonctionnant pas correctement, l'accéléromètre ne recueillant pas de données et la limite que le CubeSat peut peser. Bien qu'il y en ait beaucoup d'autres que toute personne puisse rencontrer, ce sont ceux auxquels notre groupe a été confronté. Une vidéo de notre projet final et de nos tests est disponible ici https://www.youtube.com/embed/u1_o38KSrEc -Eddie

Étape 1: Liste des matériaux

Liste des matériaux
Liste des matériaux
Liste des matériaux
Liste des matériaux
Liste des matériaux
Liste des matériaux

TOUS LES MATÉRIAUX ÉNUMÉRÉS SONT À L'INTÉRIEUR DE CUBESAT

1. Arduino et câble d'alimentation https://www.amazon.com/Elegoo-EL-CB-001-ATmega328…: arduino est conçu pour rendre l'électronique plus accessible aux artistes, designers, amateurs et à toute personne intéressée par la création d'objets ou d'environnements interactifs

: permet l'alimentation vers et depuis votre Arduino et votre ordinateur

2. Planche à pain

: une planche pour faire un modèle expérimental d'un circuit électrique

MATÉRIAUX ATTACHÉS À LA PLANCHE À PAIN

1. Accéléromètre Arduino

:un instrument pour mesurer l'accélération ou pour détecter et mesurer les vibrations

2. Module de carte SD Arduino

: il vous permet d'ajouter un stockage de masse et un enregistrement de données à votre projet

3. Fils Arduino

: transfère le code dans Arduino et la maquette

4. Lumière LED

: une LED est une petite lumière (elle signifie "diode électroluminescente") qui fonctionne avec relativement peu de puissance

-A dessiné

Étape 2: Outils nécessaires et pratiques de sécurité

OUTILS NÉCESSAIRES

1. Couteau exact

- nous avons utilisé un couteau exacto pour couper et tracer la forme de l'Arduino et de la planche à pain à travers la mousse de polystyrène, pour protéger l'Arduino et la planche à pain en cas d'accident

2. Pistolet à colle chaude

- nous avons utilisé un pistolet à colle chaude pour coller la mousse de polystyrène sur les côtés de notre Cubesat afin de garantir la sécurité de notre Arduino et de notre planche à pain

3. Styromousse

- nous avons utilisé des morceaux de polystyrène pour fixer l'Arduino et la planche à pain sur les côtés de notre Cubesat, également pour permettre un coussin si Cubesat tombe ou secoue

PRATIQUES DE SÉCURITÉ

1. la première pratique de sécurité que nous avons appliquée consistait à nous assurer de ne pas toucher l'imprimante 3D lors de l'impression du Cubesat. l'imprimante 3D deviendra très chaude et il est important de se rappeler de ne pas la toucher.

2. lors de l'utilisation du couteau exacto pour découper les morceaux de polystyrène, nous devions placer du carton en dessous pour nous assurer que les tables n'étaient pas endommagées. nous devions également porter des lunettes de protection lorsque nous utilisions le couteau au cas où quelque chose s'envolerait sur nos visages ou autour de notre espace de travail.

3. lorsque vous utilisez des outils qui nécessitent un travail difficile, assurez-vous de porter des lunettes de protection pour des raisons de sécurité.

4. une fois que vous avez attaché le Cubesat à l'orbiteur, assurez-vous d'avertir les personnes autour de l'orbiteur que vous testerez votre Cubesat et portez des lunettes de protection pour vous assurer que toutes les parties du corps et les personnes sont en sécurité.

-A dessiné

Étape 3: Comment:

Comment
Comment
Comment
Comment
Comment
Comment

Comment construire un CubeSat

1. pour commencer le processus de construction du CubeSat, vous devez rechercher des modèles du CubeSat au format 10x10x10 et disposer d'un fichier STL à portée de main.

2. lorsque vous avez trouvé un modèle qui fonctionnera en tenant une maquette et un Arduino en toute sécurité, vous devez télécharger les fichiers sur un lecteur flash afin de pouvoir accéder aux fichiers sur l'imprimante 3D.

3. une fois les bons fichiers téléchargés sur le lecteur flash, vous pouvez connecter le lecteur flash à l'ordinateur connecté à l'imprimante 3D.

4. lorsque vous imprimez, assurez-vous de sélectionner les bons fichiers et que tous les fils, codes et entrées sont correctement câblés entre l'ordinateur et l'imprimante 3D. cela garantira que le CubeSat est imprimé correctement et que tout se déroule comme prévu.

5. attribuez à chaque membre du groupe une heure désignée pour vérifier efficacement l'état de l'imprimante et de CubeSat afin de détecter tout problème que vous pourriez rencontrer. le fait de pouvoir demander à un membre de l'équipe de vérifier les progrès toutes les 2-3 heures environ fournira une assistance suffisante pour résoudre tous les problèmes et surveiller les progrès qui seront réalisés.

-Eddie

LE CODE:

#include #include #include #include

const int MPU=0x68; int16_t AcX, AcY, AcZ, Tmp, GyX, GyY, GyZ; pas double, roulis;

Données de fichier;

void setup(){

pinMode (10, SORTIE); //doit mettre la broche 10 en sortie même si elle n'est pas utilisée; //réglage de la broche 7 pour allumer la led SD.begin(4); //commence la carte SD avec CS défini sur la broche 4 Serial.begin (9600); Serial.println(F("Test BMP280")); Fil.begin(); Wire.beginTransmission(MPU); Wire.write(0x6B); Wire.write(0); Wire.endTransmission(true); Serial.begin(9600); } boucle vide(){ Wire.beginTransmission(MPU); Wire.write(0x3B); Wire.endTransmission(false); Wire.requestFrom(MPU, 14, true);

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

//Correction des données d'accélération AcXoff = -950; AcYoff = -300; AcZoff = 0;

//Correction de température toff = -1600;

//Correction gyroscopique GyXoff = 480; GyYoff = 170; GyZoff = 210;

//lire les données d'accélération AcX=(Wire.read()<<8|Wire.read()) + AcXoff; AcY=(Wire.read()<<8|Wire.read()) + AcYoff; AcZ=(Wire.read()<<8|Wire.read()) + AcYoff;

//lire les données de température temp=(Wire.read()<<8|Wire.read()) + toff; tx=temp; t = tx/340 + 36,53; tf = (t * 9/5) + 32;

//lire les données du gyroscope GyX=(Wire.read()<<8|Wire.read()) + GyXoff; GyY=(Wire.read()<<8|Wire.read()) + GyYoff; GyZ=(Wire.read()<<8|Wire.read()) + GyZoff;

Données = SD.open("Log.txt", FILE_WRITE); // ouvre le fichier appelé "Journal"

//get tangage/roulement getAngle(AcX, AcY, AcZ);

//envoyer les données sur le port série Serial.print("Angle: "); Serial.print("Pas = "); Serial.print(pas); Serial.print(" | Rouleau = "); Serial.println(roll);

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

Serial.print("Accéléromètre: "); Serial.print("X = "); Serial.print(AcX); Serial.print(" | Y = "); Serial.print(AcY); Serial.print(" | Z = "); Serial.println(AcZ);

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

Data.print(pas); Data.println(rouleau);

Data.print(tf); Data.println(t); Data.print(AcX); //écrit les données acel dans le fichier Data.print(", "); // imprime une virgule dans le fichier Data.print(AcY); Data.print(", "); Data.print(AcZ); Data.print(", "); Data.print(GyX); Data.print(", "); Data.print(GyY); Data.print(", "); Data.println(GyZ);

retard(1000); }

//convertir les données d'accélération en pitch/roll void getAngle(int Vx, int Vy, int Vz) { double x = Vx; double y = Vy; double z = Vz;

}

}

LE CODE (SUITE):

-c'est le code que nous avons utilisé pour collecter les données de l'accéléromètre et de la carte SD.

-Après avoir câblé notre Arduino et notre planche à pain pour qu'ils ressemblent à celui du schéma de fristing, nous avons branché la carte SD dans le module adaptateur de carte SD et avons continué à nous préparer pour nos tests finaux.

-nous avons eu des problèmes avec le code pendant longtemps, mais le code donné ci-dessus est le code final que nous avons utilisé et qui nous a fourni les données que nous avons utilisées pour notre présentation.

-ce code collecte les données de l'accéléromètre et transfère les informations sur la carte SD.

-la carte SD a été branchée sur le port USB et branchée sur l'ordinateur. à partir de là, les informations ont été enregistrées dans notre ordinateur.

-Brock

CABLAGE DE L'ARDUINO:

- lors du câblage de l'Arduino, nous avons eu du mal avec des fils ratés et des Arduinos ratés.

- nous avons dû corriger plusieurs fois le câblage de notre Arduino en raison d'un câblage incorrect.

- afin d'assurer un câblage et un codage corrects, assurez-vous que vos fils sont entièrement sécurisés et que votre code traite correctement.

SCHÉMA DE FRITZING:

- le diagramme fritzing était simple et facile à suivre avec

- nous avons rencontré des problèmes avec le diagramme lorsque le module de carte SD ne faisait pas partie du programme fritzing. à cause de cela, nous avons dû rechercher en ligne une pièce téléchargeable à inclure sur le schéma

- nous avions complété le schéma en incluant les pièces et programmes corrects dans le schéma

-A dessiné

Étape 4: Résultats/Leçons apprises

Notre graphique montre une nette augmentation de la température, probablement due au fait que le chauffage met du temps à atteindre la température maximale.

Pour ce projet, la physique que nous avons rencontrée était la force centripète gardant le CubeSat en orbite.

-Brock

Conseillé: