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

Μετεωρολογικός σταθμός χειρός: 4 βήματα
Μετεωρολογικός σταθμός χειρός: 4 βήματα

Βίντεο: Μετεωρολογικός σταθμός χειρός: 4 βήματα

Βίντεο: Μετεωρολογικός σταθμός χειρός: 4 βήματα
Βίντεο: Τα πρώτα βήματα της νομισματοκοπίας 1ο μέρος 2024, Νοέμβριος
Anonim
Φορητός μετεωρολογικός σταθμός
Φορητός μετεωρολογικός σταθμός
Φορητός Μετεωρολογικός Σταθμός
Φορητός Μετεωρολογικός Σταθμός
Φορητός Μετεωρολογικός Σταθμός
Φορητός Μετεωρολογικός Σταθμός

Σε αυτό το Instructable θα χρησιμοποιήσουμε ένα Arduino, μια oled οθόνη και έναν συνδυασμό περιβαλλοντικών αισθητήρων SparkFun με αισθητήρες CCS811 και BME280 για να κατασκευάσουμε μια φορητή συσκευή που μετρά τη θερμοκρασία, την υγρασία, τα επίπεδα TVOC, τη βαρομετρική πίεση και τα επίπεδα διοξειδίου του άνθρακα. Μπορείτε να χρησιμοποιήσετε οποιοδήποτε Arduino με τον παρεχόμενο κωδικό, αλλά χρησιμοποιώ ένα SparkFun Qwiic pro micro. Εάν είστε αρχάριος, σας προτείνω να χρησιμοποιήσετε τα ίδια μέρη που χρησιμοποιώ, για να διατηρήσετε τα πράγματα απλά. Επέλεξα τη μικροσυσκευή SparkFun Qwiic pro για το μικρό της μέγεθος και την υποδοχή Qwiic, διευκολύνοντας τη σύνδεση των εξαρτημάτων σας. Εάν χρησιμοποιείτε διαφορετικό πίνακα, φροντίστε να αγοράσετε ένα καπέλο, φατ ή ασπίδα Qwiic που ταιριάζει στον πίνακα σας.

Προμήθειες:

  • SparkFun Environmental Combo Breakout -
  • SparkFun Micro OLED Breakout -
  • SparkFun Qwiic Pro Micro -
  • Καλώδιο Qwiic, 50mm -
  • Κουτί έργου, μέγεθος στα εξαρτήματά σας, χρησιμοποιώ περίπου 3 x 2 x 1 -
  • Προαιρετικά: Εάν χρησιμοποιείτε το Qwiic Pro Micro, μπορεί να χρειαστείτε ένα καλώδιο usb-c (αν δεν το έχετε ήδη) για τροφοδοσία και προγραμματισμό
  • Οθόνη παραθύρου, περίπου 1,5 x 1,5 ίντσες
  • Βίδες (δείτε την εικόνα παραπάνω)

Εργαλεία:

  • Κολλήματα θερμής κόλλας και πιστόλι θερμής κόλλας
  • Ψαλίδι
  • Λεπίδα ξυραφιού ή μαχαίρι x-acto, ικανό να κόψει το κουτί του έργου σας

Βήμα 1: Σημειώστε και κόψτε τρύπες και τοποθετήστε την στην οθόνη παραθύρου

Σημειώστε και κόψτε τρύπες και τοποθετήστε την στην οθόνη παραθύρου
Σημειώστε και κόψτε τρύπες και τοποθετήστε την στην οθόνη παραθύρου
Σημειώστε και κόψτε τρύπες και τοποθετήστε την στην οθόνη παραθύρου
Σημειώστε και κόψτε τρύπες και τοποθετήστε την στην οθόνη παραθύρου
Σημειώστε και κόψτε τρύπες και τοποθετήστε την στην οθόνη παραθύρου
Σημειώστε και κόψτε τρύπες και τοποθετήστε την στην οθόνη παραθύρου

Θα σημειώσουμε και θα κόψουμε τρύπες για τον ελαιοποιημένο, περιβαλλοντικό αισθητήρα και υποδοχή USB-C για προγραμματισμό και τροφοδοσία.

  1. Ευθυγραμμίστε τα εξαρτήματά σας εκεί που τα θέλετε και σημειώστε τις οπές βιδών.
  2. Σημειώστε τετράγωνα, για το oled, ένα τετράγωνο στο μέγεθος της οθόνης και για τον περιβαλλοντικό αισθητήρα, ένα τετράγωνο λίγο μεγαλύτερο από τους 2 αισθητήρες (δείτε τις εικόνες παραπάνω).
  3. Σημειώστε το χώρο για τη σύνδεση USB-C. Ο πίνακας Qwiic Pro Micro μου είχε κολλήσει ήδη κεφαλίδες, οπότε έβαλα ένα κομμάτι αφρού και το σημάδεψα. Εάν το δικό σας δεν το κάνει, απλώστε το στο κάτω μέρος της θήκης για να σημειώσετε την τρύπα.
  4. Τρυπήστε τις επισημασμένες τρύπες και κόψτε την υποδοχή USB-C. Οι τρύπες πρέπει να είναι αρκετά μεγάλες ώστε να αφήνουν τις βίδες να περάσουν.
  5. Κόψτε ένα τετράγωνο οθόνης παραθύρου λίγο μεγαλύτερο από την τρύπα για τον αισθητήρα. Κόψτε χώρο στην οθόνη του παραθύρου για την τρύπα της βίδας και τη βάση στήριξης (δείτε τις εικόνες παραπάνω).
  6. Κολλήστε ζεστά την οθόνη στη θέση της.

Βήμα 2: Mount Oled και Sensor

Mount Oled and Sensor
Mount Oled and Sensor
Mount Oled and Sensor
Mount Oled and Sensor
Mount Oled and Sensor
Mount Oled and Sensor

Τοποθετήστε τον λαδωμένο και περιβαλλοντικό αισθητήρα στη θήκη. Οι μεγαλύτερες βίδες μπαίνουν στις τρύπες που ανοίξατε και οι μικρότερες βίδες στις θέσεις στη γωνία του καπακιού της θήκης. Χρησιμοποιήστε τις ροδέλες για αποστάτες. Για τις μεγαλύτερες βίδες, δείτε το παραπάνω διάγραμμα για διευκρίνιση. Mayσως χρειαστεί να χρησιμοποιήσετε περισσότερες από μία ροδέλες για απόσταση.

Βήμα 3: Τοποθετήστε το Arduino και συνδέστε τα εξαρτήματα

Mount Arduino και Connect Components
Mount Arduino και Connect Components
Mount Arduino και Connect Components
Mount Arduino και Connect Components
Mount Arduino και Connect Components
Mount Arduino και Connect Components
  1. Ο πίνακας Qwiic Pro Micro μου είχε κολλήσει ήδη κεφαλίδες, οπότε έβαλα ένα κομμάτι αφρού και το κόλλησα. Εάν η δική σας δεν έχει κεφαλίδες, κολλήστε την στο κάτω μέρος της θήκης. Βεβαιωθείτε ότι υπάρχει αρκετός χώρος για τη σύνδεση του καλωδίου Qwiic.
  2. Συνδέστε τα εξαρτήματα με τους συνδετήρες Qwiic. Ούτε η σειρά ούτε η πλευρά που συνδέει το Qwiic δεν έχει σημασία. Δείτε τις παραπάνω εικόνες για διευκρινίσεις.
  3. Τώρα μπορείτε να κουμπώσετε μαζί το κουτί του έργου σας. Βεβαιωθείτε ότι τα καλώδια Qwiic είναι καλά συνδεδεμένα και δεν τσιμπάνε.

Βήμα 4: Κωδικός

Για να θέσετε σε λειτουργία το Qwiic pro micro board, ακολουθήστε αυτό το σεμινάριο.

Μόλις γίνει αυτό, ο κώδικας είναι παρακάτω μπορείτε να τον βρείτε στο GitHub εδώ.

#include #include #include #include #define PIN_RESET 9 #define DC_JUMPER 1 #define CCS811_ADDR 0x5B // Default I2C AddressMicroOLED oled (PIN_RESET, DC_JUMPER); CCS811 myCCS811 ? Wire.begin (); oled.begin (); // Αρχικοποιήστε το OLED oled.clear (ALL); // Διαγράψτε την εσωτερική μνήμη της οθόνης oled.display (); // Εμφάνιση του περιεχομένου του buffer (splashscreen) oled.clear (PAGE); // Διαγράψτε το buffer. randomSeed (analogRead (A0) + analogRead (A1)); // Αρχικοποίηση BME280 // Για I2C, ενεργοποιήστε τα ακόλουθα και απενεργοποιήστε την ενότητα SPI myBME280.settings.commInterface = I2C_MODE; myBME280.settings. I2CAddress = 0x77; myBME280.settings.runMode = 3; // Κανονική λειτουργία myBME280.settings.tStandby = 0; myBME280.settings.filter = 4; myBME280.settings.tempOverSample = 5; myBME280.settings.pressOverSample = 5; myBME280.settings.humidOverSample = 5; CCS811Core:: CCS811_Status_e returnCode = myCCS811.beginWithStatus (); // Η κλήση.begin () προκαλεί καθυστέρηση φόρτωσης των ρυθμίσεων (10). // Βεβαιωθείτε ότι ο αισθητήρας είχε αρκετό χρόνο για να ενεργοποιηθεί. Το BME280 απαιτεί 2ms για εκκίνηση. byte id = myBME280.begin (); // Επιστρέφει το αναγνωριστικό 0x60 σε περίπτωση επιτυχούς καθυστέρησης (10000). } void print_data () {oled.setFontType (0); oled.setCursor (0, 0); oled.print ("TMP"); oled.setCursor (25, 0); oled.print (στρογγυλό (myBME280.readTempF ())); oled.setCursor (0, 10); oled.print ("HUM"); oled.setCursor (25, 10); oled.print (στρογγυλό (myBME280.readFloatHumidity ())); oled.setCursor (0, 20); oled.print ("VOC"); oled.setCursor (25, 20); oled.print (στρογγυλό (myCCS811.getTVOC ())); oled.setCursor (0, 30); oled.print ("BAR"); oled.setCursor (25, 30); oled.print (στρογγυλό (myBME280.readFloatPressure ())); oled.setCursor (0, 40); oled.print ("CO2"); oled.setCursor (25, 40); oled.print (στρογγυλό (myCCS811.getCO2 ())); oled.display (); } void loop () {delay (2000); // Ελέγξτε εάν υπάρχουν διαθέσιμα δεδομένα εάν (myCCS811.dataAvailable ()) {// Η κλήση αυτής της λειτουργίας ενημερώνει τις καθολικές μεταβλητές tVOC και eCO2 myCCS811.readAlgorithmResults (); // printData ανακτά τις τιμές των tVOC και eCO2 float BMEtempC = myBME280.readTempC (); float BMEhumid = myBME280.readFloatHumidity (); // Αυτό στέλνει τα δεδομένα θερμοκρασίας στο CCS811 myCCS811.setEnvironmentalData (BMEhumid, BMEtempC). } print_data (); καθυστέρηση (2000). }

Επικολλήστε τον κωδικό στο Arduino IDE και μεταγλωττίστε τον. Η οθόνη πρέπει να εμφανίζει το λογότυπο SparkFun για λίγα δευτερόλεπτα και, στη συνέχεια, να αρχίζει να εμφανίζει τις συνθήκες ζωντανής μετάδοσης. Οι συνθήκες ενημερώνονται περίπου κάθε 2 δευτερόλεπτα. Ευχαριστώ για την ανάγνωση.

Έχετε μια ερώτηση;

Αφήστε ένα σχόλιο ή στείλτε μου email εδώ

Συνιστάται: