Πίνακας περιεχομένων:

Πώς να χτίσετε ένα κύβος με ένα Arduino και επιταχυνσιόμετρο .: 5 βήματα
Πώς να χτίσετε ένα κύβος με ένα Arduino και επιταχυνσιόμετρο .: 5 βήματα

Βίντεο: Πώς να χτίσετε ένα κύβος με ένα Arduino και επιταχυνσιόμετρο .: 5 βήματα

Βίντεο: Πώς να χτίσετε ένα κύβος με ένα Arduino και επιταχυνσιόμετρο .: 5 βήματα
Βίντεο: Κύβος - Arduino 2024, Ιούλιος
Anonim
Πώς να χτίσετε ένα κύβο με ένα Arduino και ένα επιταχυνσιόμετρο
Πώς να χτίσετε ένα κύβο με ένα Arduino και ένα επιταχυνσιόμετρο

Τα ονόματά μας είναι Brock, Eddie και Drew. Ο κύριος στόχος για την τάξη μας Φυσικής είναι να ταξιδέψουμε από τη Γη στον Άρη, ενώ προσομοιώνουμε την τροχιά γύρω από τον Άρη χρησιμοποιώντας ένα Cube Sat και συλλέγοντας δεδομένα. Ο στόχος των ομάδων μας για αυτό το έργο είναι να συλλέξουμε δεδομένα χρησιμοποιώντας έναν αισθητήρα επιταχυνσιόμετρου που θα προσαρτηθεί στο Arduino μας μέσα σε ένα Cube Sat, ο οποίος θα περιστρέφεται γύρω από τον Άρη για να βρει τη βαρυτική δύναμη σε αυτόν τον πλανήτη. Μερικοί πιθανοί περιορισμοί για αυτήν τη συγκεκριμένη εργασία είναι ο κωδικός να μην λειτουργεί σωστά, το επιταχυνσιόμετρο να μην συλλέγει δεδομένα και το όριο που μπορεί να ζυγίσει το CubeSat. Αν και υπάρχουν πολλοί άλλοι που θα μπορούσε να συναντήσει οποιοδήποτε άτομο, αυτά ήταν αυτά που αντιμετώπισε η ομάδα μας. Ένα βίντεο από το τελικό έργο και τις δοκιμές μας μπορείτε να βρείτε εδώ https://www.youtube.com/embed/u1_o38KSrEc -Eddie

Βήμα 1: Λίστα υλικών

Λίστα υλικών
Λίστα υλικών
Λίστα υλικών
Λίστα υλικών
Λίστα υλικών
Λίστα υλικών

ΟΛΑ ΤΑ ΥΛΙΚΑ ΠΟΥ ΕΙΝΑΙ ΑΝΑΛΟΓΑΜΕΝΑ ΠΑΝΟΥΝ ΣΤΟ CUBESAT

1. Καλώδιο Arduino & Power

: επιτρέψτε την τροφοδοσία από και προς το Arduino και τον υπολογιστή σας

2. Breadboard

: σανίδα για την κατασκευή πειραματικού μοντέλου ηλεκτρικού κυκλώματος

ΥΛΙΚΑ ΠΟΥ ΕΠΙΣΤΡΕΦΟΝΤΑΙ ΣΤΟ ΠΛΑΙΣΙΟ

1. Επιταχυνσιόμετρο Arduino

: όργανο μέτρησης επιτάχυνσης ή ανίχνευσης και μέτρησης κραδασμών

2. Ενότητα κάρτας Arduino SD

: σας επιτρέπει να προσθέσετε μαζική αποθήκευση και καταγραφή δεδομένων στο έργο σας

3. Arduino Wires

: μεταφέρει τον κωδικό σε όλο το Arduino και το breadboard

4. Φωτιστικό LED

: ένα LED είναι ένα μικρό φως (σημαίνει "δίοδος εκπομπής φωτός") που λειτουργεί με σχετικά μικρή ισχύ

-Ντριου

Βήμα 2: Απαιτούμενα εργαλεία και πρακτικές ασφάλειας

ΕΡΓΑΛΕΙΑ ΑΠΑΡΑΙΤΗΤΑ

1. Μαχαίρι Exacto

- χρησιμοποιήσαμε ένα μαχαίρι ακριβείας για να κόψουμε και να εντοπίσουμε το σχήμα του Arduino και του Breadboard μέσω του φελιζόλ, για να προστατέψουμε το Arduino και το Breadboard εάν υπάρχουν ατυχήματα

2. Hot Glue Gun

- χρησιμοποιήσαμε πιστόλι θερμής κόλλας για να κολλήσουμε το φελιζόλ στις πλευρές του Cubesat για να διασφαλίσουμε ότι το Arduino και το Breadboard είναι ασφαλή

3. Φελιζόλ

- χρησιμοποιήσαμε κομμάτια φελιζόλ για να στερεώσουμε το Arduino και το breadboard στα πλάγια του Cubesat μας, επίσης για να επιτρέψουμε ένα μαξιλάρι αν το Cubesat πέσει ή ανακινηθεί γύρω

ΠΡΑΚΤΙΚΕΣ ΑΣΦΑΛΕΙΑΣ

1. Η πρώτη πρακτική ασφάλειας που εφαρμόσαμε ήταν να βεβαιωθούμε ότι δεν αγγίξαμε τον τρισδιάστατο εκτυπωτή όταν εκτύπωνε το Cubesat. ο τρισδιάστατος εκτυπωτής θα ζεσταθεί πολύ και είναι σημαντικό να θυμάστε να μην τον αγγίζετε.

2. όταν χρησιμοποιούσαμε το μαχαίρι ακριβείας για να κόψουμε τα κομμάτια φελιζόλ, έπρεπε να τοποθετήσουμε χαρτόνι από κάτω για να διασφαλίσουμε ότι τα τραπέζια δεν έχουν υποστεί ζημιά. έπρεπε επίσης να φοράμε προστατευτικά γυαλιά όταν χρησιμοποιούσαμε το περίβλημα του μαχαιριού οτιδήποτε πετούσε στα πρόσωπά μας ή γύρω από το χώρο εργασίας μας.

3. όταν χρησιμοποιείτε εργαλεία που απαιτούν σκληρή εργασία, φροντίστε να φοράτε γυαλιά για λόγους ασφαλείας.

4. Μόλις συνδέσετε το Cubesat στο τροχιακό, φροντίστε να προειδοποιήσετε τους ανθρώπους γύρω από το τροχιακό ότι θα δοκιμάσετε το Cubesat και θα φορέσετε γυαλιά για να διασφαλίσετε ότι όλα τα μέρη του σώματος και οι άνθρωποι είναι ασφαλείς.

-Ντριου

Βήμα 3: Πώς να:

Πως να
Πως να
Πως να
Πως να
Πως να
Πως να

Πώς να φτιάξετε ένα CubeSat

1. Για να ξεκινήσετε τη διαδικασία δημιουργίας του CubeSat, πρέπει να αναζητήσετε μοντέλα του CubeSat που είναι 10x10x10 και διαθέτουν ένα αρχείο STL.

2. όταν έχετε βρει ένα μοντέλο που θα λειτουργεί για να κρατάτε με ασφάλεια ένα breadboard και ένα Arduino, πρέπει να κατεβάσετε τα αρχεία σε μια μονάδα flash, ώστε να έχετε πρόσβαση στα αρχεία στον τρισδιάστατο εκτυπωτή.

3. μετά τη λήψη των σωστών αρχείων στη μονάδα flash, μπορείτε να συνδέσετε τη μονάδα flash στον υπολογιστή που είναι συνδεδεμένος στον τρισδιάστατο εκτυπωτή.

4. όταν εκτυπώνετε, βεβαιωθείτε ότι έχετε επιλέξει τα σωστά αρχεία και ότι όλα τα καλώδια, οι κωδικοί και οι είσοδοι είναι σωστά συνδεδεμένα μεταξύ του υπολογιστή και του 3D εκτυπωτή. Αυτό θα διασφαλίσει ότι το CubeSat εκτυπώνεται σωστά και όλα θα πάνε σύμφωνα με το σχέδιο.

5. Αναθέστε σε κάθε μέλος της ομάδας έναν καθορισμένο χρόνο για να ελέγξετε αποτελεσματικά τον εκτυπωτή και την πρόοδο του CubeSat για να αντιμετωπίσετε τυχόν προβλήματα που μπορεί να αντιμετωπίσετε. το να είναι σε θέση ένα μέλος της ομάδας να ελέγχει την πρόοδο κάθε 2-3 ώρες, θα παρέχει αρκετή βοήθεια για να διορθώσει τυχόν προβλήματα και να παρακολουθήσει την πρόοδο που θα σημειωθεί.

-Εντι

Ο ΚΩΔΙΚΑΣ:

#Include #include #include #include

const int MPU = 0x68; int16_t AcX, AcY, AcZ, Tmp, GyX, GyY, GyZ; διπλό βήμα, ρολό?

Δεδομένα αρχείου?

void setup () {

pinMode (10, OUTPUT); // πρέπει να ρυθμίσετε την ακίδα 10 στην έξοδο, ακόμη και αν δεν χρησιμοποιείται. // ρύθμιση του πείρου 7 για να ανάψει το led SD.begin (4); // ξεκινά κάρτα sd με CS που έχει οριστεί στην καρφίτσα 4 Serial.begin (9600). Serial.println (F ("δοκιμή 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, true)?

int AcXoff, AcYoff, AcZoff, GyXoff, GyYoff, GyZoff; int temp, toff; διπλό t, tx, tf;

// Διόρθωση δεδομένων επιτάχυνσης AcXoff = -950; AcYoff = -300; AcZoff = 0;

// Διόρθωση θερμοκρασίας toff = -1600;

// Gyro διόρθωση GyXoff = 480; GyYoff = 170; GyZoff = 210;

// διαβάστε τα δεδομένα accel AcX = (Wire.read () << 8 | Wire.read ()) + AcXoff; AcY = (Wire.read () << 8 | Wire.read ()) + AcYoff; AcZ = (Wire.read () << 8 | Wire.read ()) + AcYoff;

// διαβάστε τα δεδομένα θερμοκρασίας temp = (Wire.read () << 8 | Wire.read ()) + toff; tx = temp; t = tx/340 + 36.53; tf = (t * 9/5) + 32;

// διαβάστε gyro data GyX = (Wire.read () << 8 | Wire.read ()) + GyXoff; GyY = (Wire.read () << 8 | Wire.read ()) + GyYoff; GyZ = (Wire.read () << 8 | Wire.read ()) + GyZoff;

Δεδομένα = SD.open ("Log.txt", FILE_WRITE); // ανοίγει το αρχείο που ονομάζεται "Log"

// get pitch/roll getAngle (AcX, AcY, AcZ);

// αποστολή των δεδομένων από τη σειριακή θύρα Serial.print ("Angle:"); Serial.print ("Pitch ="); Serial.print (βήμα); Serial.print ("| Roll ="); Serial.println (ρολό);

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

Serial.print ("Επιταχυνσιόμετρο:"); Serial.print ("X ="); Serial.print (AcX); Serial.print ("| Y ="); Serial.print (AcY); Serial.print ("| Z ="); Serial.println (AcZ);

Serial.print ("Γυροσκόπιο:"); Serial.print ("X ="); Serial.print (GyX); Serial.print ("| Y ="); Serial.print (GyY); Serial.print ("| Z ="); Serial.println (GyZ); Serial.println ("");

Data.print (βήμα); Data.println (roll);

Data.print (tf); Data.println (t); Data.print (AcX); // γράφει δεδομένα acel στο αρχείο Data.print (","). // εκτυπώνει κόμμα στο αρχείο Data.print (AcY); Data.print (","); Data.print (AcZ); Data.print (","); Data.print (GyX); Data.print (","); Data.print (GyY); Data.print (","); Data.println (GyZ);

καθυστέρηση (1000)? }

// μετατροπή των δεδομένων accel σε pitch/roll void getAngle (int Vx, int Vy, int Vz) {double x = Vx; διπλό y = Vy; διπλό z = Vz;

}

}

Ο ΚΩΔΙΚΟΣ (ΣΥΝΕΧ.):

-αυτός είναι ο κώδικας που χρησιμοποιήσαμε για τη συλλογή δεδομένων από το επιταχυνσιόμετρο και την κάρτα SD.

-μετά την καλωδίωση του Arduino και του Breadboard για να μοιάζει με αυτό στο διάγραμμα φριζάρισμα, συνδέσαμε την κάρτα SD στη μονάδα προσαρμογέα κάρτας SD και συνεχίσαμε να ετοιμαζόμαστε για την τελική δοκιμή.

-είχαμε προβλήματα με τον κώδικα για μεγάλο χρονικό διάστημα, αλλά ο κωδικός που δόθηκε παραπάνω είναι ο τελικός κώδικας που χρησιμοποιήσαμε και μας έδωσε τα δεδομένα που χρησιμοποιήσαμε για την παρουσίασή μας.

-αυτός ο κώδικας συλλέγει τα δεδομένα από το επιταχυνσιόμετρο και μεταφέρει τις πληροφορίες στην κάρτα SD.

-η κάρτα SD συνδέθηκε στο USB και συνδέθηκε στον υπολογιστή. από εκεί οι πληροφορίες μπήκαν στον υπολογιστή μας.

-Μπροκ

ΚΑΛΩΔΙΩΣΗ ΤΟΥ ARDUINO:

- κατά την καλωδίωση του Arduino, παλέψαμε με καλώδια dud και dud Arduinos.

- έπρεπε να διορθώσουμε την καλωδίωση του Arduino μας πολλές φορές λόγω λανθασμένης καλωδίωσης.

- για να διασφαλίσετε τη σωστή καλωδίωση και κωδικοποίηση, βεβαιωθείτε ότι τα καλώδια σας είναι ασφαλισμένα πλήρως και η σωστή διαδικασία κώδικα.

ΔΙΑΓΡΑΜΜΑ ΦΡΑΣΙΣΜΟΥ:

- το διάγραμμα ψεκασμού ήταν απλό και εύκολο να το ακολουθήσετε

- αντιμετωπίσαμε προβλήματα με το διάγραμμα όταν η μονάδα κάρτας SD δεν ήταν μέρος του προγράμματος ψύξης. Εξαιτίας αυτού, έπρεπε να αναζητήσουμε στο διαδίκτυο ένα μέρος που μπορείτε να κατεβάσετε για να συμπεριληφθεί στο διάγραμμα

- ολοκληρώσαμε το διάγραμμα συμπεριλαμβάνοντας τα σωστά μέρη και προγράμματα στο διάγραμμα

-Ντριου

Βήμα 4: Αποτελέσματα/Μαθήματα

Το γράφημα μας δείχνει μια σαφή αύξηση της θερμοκρασίας, πιθανώς λόγω του ότι ο θερμαντήρας χρειάζεται χρόνο για να φτάσει στη μέγιστη θερμοκρασία.

Για αυτό το έργο, η φυσική που αντιμετωπίσαμε ήταν η κεντρομόλος δύναμη που κρατούσε το CubeSat σε τροχιά.

-Μπροκ

Συνιστάται: