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

Αυτόματη κλήση αφύπνισης χιονιού: 6 βήματα (με εικόνες)
Αυτόματη κλήση αφύπνισης χιονιού: 6 βήματα (με εικόνες)

Βίντεο: Αυτόματη κλήση αφύπνισης χιονιού: 6 βήματα (με εικόνες)

Βίντεο: Αυτόματη κλήση αφύπνισης χιονιού: 6 βήματα (με εικόνες)
Βίντεο: 15 Μυστικά SETTINGS για το iPhone σου! 2024, Ιούλιος
Anonim
Αυτόματη κλήση αφύπνισης χιονιού
Αυτόματη κλήση αφύπνισης χιονιού
Αυτόματη κλήση αφύπνισης χιονιού
Αυτόματη κλήση αφύπνισης χιονιού

Η έξοδος από το σπίτι το πρωί μπορεί να είναι μια αναταραχή δραστηριότητας αφού λίγα εκατοστά από τα λευκά πράγματα καθιζάνουν τη νύχτα. Δεν θα ήταν ωραίο να ξυπνάτε λίγο νωρίτερα εκείνες τις μέρες για να απομακρύνετε το άγχος από το πρωί; Αυτό το έργο κάνει ακριβώς αυτό!

Αυτό το έργο χρησιμοποιεί Arduino, αισθητήρα απόστασης και IFTTT (ένας εύχρηστος ιστότοπος) για να αυτοματοποιήσει μια κλήση αφύπνισης στο τηλέφωνό σας εάν χιονίσει τη νύχτα. Μόλις είστε έτοιμοι, θα τοποθετήσετε τη συσκευή που δημιουργήσατε σε ένα υψηλό σημείο (για παράδειγμα σε ένα τρίποδο) και θα την στρέψετε προς τα κάτω στο έδαφος. Από εκεί θα μετρά συνεχώς την απόσταση μεταξύ του εαυτού και του εδάφους. Καθώς χιονίζει, το «έδαφος» κινείται προς τα πάνω, οπότε η απόσταση που μετρά μειώνεται. Εάν υπάρχει αρκετά μεγάλη διαφορά μεταξύ του απογεύματος και του πρωινού, η συσκευή θα σας ειδοποιήσει ότι χιόνισε!

Η σύνδεση των ηλεκτρονικών είναι απλή και θα σας δώσω τον κωδικό, οπότε πάμε αμέσως!

Προμήθειες

  1. Ένα μικροτσίπ συμβατό με Arduino με δυνατότητα Wifi. Για αυτό το έργο υποθέτω ότι θα χρησιμοποιήσετε τον πίνακα ανάπτυξης ESP8266 NodeMCU, τον οποίο προτείνω για πολλούς λόγους:

    • Έχει ενσωματωμένο Wifi.
    • Εκθέτει σχεδόν όλες τις καρφίτσες που μπορεί να θέλετε.
    • Παρέχει μια εύκολη διεπαφή USB για προγραμματισμό.
    • Χειρίζεται την επαναφορά του πίνακα κατά τη μεταφόρτωση κώδικα και εκθέτει τα κουμπιά επαναφοράς για εντοπισμό σφαλμάτων.
  2. Ένας αισθητήρας εύρους TF Mini Lidar.

    Σημειώστε ότι υπάρχουν φθηνότεροι αισθητήρες υπερήχων όπως ο HC-SR04, αλλά τα μαλακά σιφόνια χιονιού ακούγονται αρκετά ώστε να μην λειτουργούν για αυτό

  3. Μίνι σανίδα ψωμιού.
  4. Ένα τρίποδο ή οποιαδήποτε λύση για την τοποθέτηση του αισθητήρα λίγα πόδια πάνω από το χιόνι.
  5. Καλώδιο micro usb.
  6. Καλώδιο επέκτασης.
  7. Φορτιστής usb.
  8. Ένα πλαστικό δοχείο.

Σημείωση, τα αντικείμενα 5 και άνω μπορούν να αγοραστούν στο Dollar Tree αρκετά εύκολα.

Οι τιμές ποικίλλουν, αλλά μπόρεσα να κάνω αυτό το έργο για περίπου $ 50 (χωρίς να υπολογίζω το τρίποδο) ψωνίζοντας στο Dollar Tree για τα απλά μέρη. Το πιο ακριβό μέρος με διαφορά είναι ο αισθητήρας Lidar, ο οποίος σίγουρα μπορεί να επαναχρησιμοποιηθεί για άλλα έργα.

Βήμα 1: Ηλεκτρονικά (Υλικό)

Ηλεκτρονικά (Υλικό)
Ηλεκτρονικά (Υλικό)
Ηλεκτρονικά (Υλικό)
Ηλεκτρονικά (Υλικό)
Ηλεκτρονικά (Υλικό)
Ηλεκτρονικά (Υλικό)

Τα ηλεκτρονικά για αυτό το έργο θα πρέπει να συναρμολογηθούν αρκετά γρήγορα. Απλώς συνδέστε τον αισθητήρα TF Mini Lidar Distance Sensor στο τσιπ. Τα καλώδια πρέπει να συνδέονται όπως περιγράφεται σε αυτόν τον εξαιρετικό οδηγό SparkFun.

Ακολουθεί μια σύντομη περίληψη:

Αισθητήρας -> ESP8266

Πράσινο -> D2 (γνωστό και ως GPIO 4, το οποίο θα χρησιμοποιήσουμε ως RX)

Λευκό -> D1 (γνωστό και ως GPIO 5, το οποίο θα χρησιμοποιήσουμε ως TX μας)

Κόκκινο -> Vin

Μαύρο -> Gnd

Βήμα 2: Ηλεκτρονικά (Λογισμικό)

Ηλεκτρονικά (Λογισμικό)
Ηλεκτρονικά (Λογισμικό)

Η απόφαση να σας στείλουμε ένα ξυπνητήρι θα ληφθεί από το μικροτσίπ σας, οπότε πρέπει να το προγραμματίσουμε κατάλληλα! Για τον προγραμματισμό του τσιπ σας, θα χρησιμοποιήσουμε μια γλώσσα που ονομάζεται Arduino, την οποία μπορείτε να ανεβάσετε στο τσιπ σας χρησιμοποιώντας το Arduino IDE (λογισμικό που εκτελείται στον υπολογιστή σας).

1. Κατεβάστε το λογισμικό Arduino εδώ. Αυτός ο οδηγός θα αναφέρεται στα μενού Arduino Desktop IDE, οπότε προχωρήστε και κατεβάστε το εκτός αν είστε εξαιρετικά άνετοι με το Web IDE.

2. Ρυθμίστε το Arduino Desktop IDE για να λειτουργεί με το μικροτσίπ ESP8266. Οι οδηγίες για αυτό μπορούν να βρεθούν εδώ. Προχωρώντας, αυτός ο οδηγός υποθέτει ότι το LED σας αναβοσβήνει και γνωρίζετε πώς να ανεβάζετε ένα σενάριο στο ESP8266.

3. Κατεβάστε το σενάριο για μεταφόρτωση στο μικροτσίπ σας από τη διεύθυνση https://github.com/robertclaus/snowalert. Δεν χρειάζεται να επεξεργαστείτε το σενάριο. Όλα όσα χρειάζεστε για να διαμορφώσετε θα είναι διαμορφώσιμα αφού ανεβάσετε τον κώδικα.

4. Ανοίξτε το σενάριο στο Arduino και εγκαταστήστε τις βιβλιοθήκες που εξαρτάται στο σύστημά σας. Στο επάνω μέρος του IDE, κάντε κλικ στο: Σκίτσο -> Συμπερίληψη βιβλιοθηκών -> Διαχείριση βιβλιοθηκών

Στη συνέχεια, αναζητήστε και εγκαταστήστε αυτές τις βιβλιοθήκες:

  • WifiManager by tzapu (έκδοση 0.14.0)
  • ArduinoJson από τον Benoit Blanchon (έκδοση 6.14.1)
  • TFminiArduino by hideakitai (έκδοση 0.1.1)
  • NTPClient από τον Fabrice Weinberg (έκδοση 3.2.0)
  • ESP_DoubleResetDetector από τον Khoi Hoang (έκδοση 1.0.1)

5. Διαμορφώστε τον πίνακα σας για αυτό το έργο. Στο επάνω μέρος του IDE, κάντε κλικ στην επιλογή Εργαλεία και προσαρμόστε αυτές τις ρυθμίσεις:

  • Μέγεθος φλας - 4M (1M SPIFFS) - Αυτό διατηρεί χώρο για να αποθηκευτεί η διαμόρφωσή μας.
  • Διαγραφή Flash - Όλα τα περιεχόμενα - Αυτό διασφαλίζει ότι δεν υπάρχουν προηγούμενα δεδομένα στο τσιπ.

    Σημείωση, εάν χρειαστεί ποτέ να ενημερώσετε τον κώδικα, η ρύθμιση αυτού σε Sketch Only θα διατηρήσει τη διαμόρφωσή σας

6. Βεβαιωθείτε ότι το μικροτσίπ ESP είναι συνδεδεμένο στον υπολογιστή σας και έχει μια εκχωρημένη θύρα. Επιλέξτε τη σωστή θύρα στο IDE και ανεβάστε!

7. Ανοίξτε το Serial Monitor (Εργαλεία -> Serial Monitor) στο Arduino IDE. Στη συνέχεια, κάντε κλικ στο κουμπί Επαναφορά στο τσιπ σας. Επιβεβαιώστε ότι εμφανίζεται κείμενο που εμφανίζεται στη Σειριακή οθόνη

Βήμα 3: Διαμόρφωση IFTTT

Διαμόρφωση IFTTT
Διαμόρφωση IFTTT
Διαμόρφωση IFTTT
Διαμόρφωση IFTTT
Διαμόρφωση IFTTT
Διαμόρφωση IFTTT

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

Για παράδειγμα, αν το Arduino μας πει "Χιόνισε!" τότε το IFTTT θα πρέπει να καλέσει το κινητό μας τηλέφωνο με ένα ξυπνητήρι.

1. Θα χρειαστείτε έναν δωρεάν λογαριασμό IFTTT, τον οποίο μπορείτε να δημιουργήσετε στη διεύθυνση

2. Για να δημιουργήσετε το νέο Applet που χρησιμοποιεί αυτήν τη λογική, μεταβείτε στο Δημιουργία ή απλώς ακολουθήστε αυτόν τον σύνδεσμο:

3. Κάντε κλικ σε Αυτό -> Αναζήτηση και επιλέξτε Webhooks -> Εάν σας το ζητήσει, κάντε κλικ στην επιλογή Σύνδεση -> Εισαγάγετε την προειδοποίηση χιονιού στο πλαίσιο.

4. Κάντε κλικ στο That -> Search και επιλέξτε Τηλεφωνική κλήση (Μόνο στις ΗΠΑ) -> Εάν σας το ζητήσει, κάντε κλικ στο Connect -> Εάν λάβετε ένα αναδυόμενο παράθυρο, ακολουθήστε τις προτροπές -> Εισαγάγετε ένα μήνυμα σαν να χιόνισε χθες το βράδυ! ότι θα θέλατε να σας διαβάσει το τηλεφώνημα.

5. Κάντε κλικ στο Τέλος για να ενεργοποιήσετε τη μικροεφαρμογή σας.

6. Δοκιμάστε το Webhook σας μεταβαίνοντας στις ρυθμίσεις υπηρεσίας Webhooks στο IFTTT και εντοπίζοντας τη δοκιμαστική διεύθυνση URL που παρατίθεται εκεί. Μεταβείτε σε αυτό το URL και αντικαταστήστε το {event} με snow_alert. Στη συνέχεια, κάντε κλικ στην επιλογή Δοκιμή. Εάν όλα λειτουργούν, θα πρέπει να λάβετε ένα τηλεφώνημα!

7. Στη δοκιμαστική σελίδα, αποθηκεύστε τη διεύθυνση url προς το κάτω μέρος της σελίδας. Θα το χρειαστείτε σε μεταγενέστερο βήμα. Θα πρέπει να μοιάζει κάπως έτσι:

maker.ifttt.com/trigger/snow_alert/with/key/d-Y8rXge5kibp0dkdrCgxu

Για ζητήματα εντοπισμού σφαλμάτων, οι χρήστες μπορεί επίσης να θέλουν να καταγράφουν το ύψος του χιονιού με την πάροδο του χρόνου. Μπορούν να διαμορφώσουν μια ξεχωριστή μικροεφαρμογή IFTTT που δέχεται το webhook του snow_measurement και καταγράφεται στα Υπολογιστικά φύλλα Google. Για να το κάνετε αυτό, απλώς επαναλάβετε τα παραπάνω βήματα, αλλά αντικαταστήστε το snow_alert με snow_measurement στο παραπάνω βήμα Webhooks και αντικαταστήστε το βήμα τηλεφωνικής κλήσης με την υπηρεσία Φύλλα Google -> Προσθήκη σειράς σε υπολογιστικό φύλλο.

Βήμα 4: Διαμόρφωση SnowAlert

Διαμόρφωση SnowAlert
Διαμόρφωση SnowAlert

Σε αυτό το σημείο, το τελευταίο βήμα λογισμικού είναι η διαμόρφωση του κώδικα στο ESP σας για την αποστολή των μηνυμάτων στη νέα μικροεφαρμογή IFTTT.

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

Κατά τη σύνταξη αυτών των οδηγιών, θα κάνατε τα εξής.

Πολύ σημαντικό, όλες οι ώρες που διαμορφώνετε πρέπει να είναι στη ζώνη ώρας UTC και σε μορφή ώρας 24 ωρών (όχι ΠΜ/ΜΜ).

  1. Αποφασίστε τι ώρα θέλετε να λάβετε την κλήση το πρωί. Αυτή είναι η ώρα λήξης σας.
  2. Αποφασίστε τι ώρα θα αρχίσετε να μετράτε το προηγούμενο βράδυ. Αυτή είναι η ώρα έναρξής σας.
  3. Συνδέστε το ESP και ανοίξτε το Serial Monitor στο Arduino IDE όπως κάναμε προηγουμένως.
  4. Συνδεθείτε στο δίκτυο wifi SnowMeasure στον υπολογιστή σας. Θα πρέπει να δείτε κάποια δραστηριότητα στο Serial Monitor κατά τη σύνδεση.
  5. Θα πρέπει να κατευθυνθείτε σε μια σελίδα εγκατάστασης στο πρόγραμμα περιήγησής σας αυτόματα μετά από μερικά δευτερόλεπτα.
  6. Κάντε κλικ στην επιλογή Διαμόρφωση Wifi
  7. Εισαγάγετε τις ακόλουθες τιμές:

    1. SSID - Το δίκτυο wifi στο οποίο πρέπει να συνδεθεί το ESP για διαδίκτυο.
    2. Κωδικός πρόσβασης - Ο κωδικός πρόσβασης για σύνδεση σε αυτό το δίκτυο wifi.
    3. Startρα έναρξης - Η ώρα που θέλετε να μετρήσει το ύψος του χιονιού το βράδυ.
    4. Λεπτά έναρξης - Το στοιχείο λεπτού για την ώρα που θέλετε να μετρηθεί το βράδυ.
    5. Endρα λήξης - Η ώρα που θέλετε να μετρήσει το ύψος του χιονιού το πρωί (και πιθανώς να σας καλέσει)
    6. Τελικά λεπτά - Το λεπτό στοιχείο στην ώρα που θέλετε να μετρηθεί το πρωί.
    7. Το URL συναγερμού Webhook - Αυτό θα πρέπει να είναι το url που αποθηκεύσατε στο προηγούμενο βήμα που μοιάζει κάπως έτσι:
    8. Το URL μέτρησης Webhook - Αυτό θα πρέπει να είναι το ίδιο url με το παραπάνω, αλλά αντικαταστήστε το snow_alert με snow_measurement

Βήμα 5: Τοποθετήστε τον αισθητήρα

Τοποθετήστε τον αισθητήρα
Τοποθετήστε τον αισθητήρα
Τοποθετήστε τον αισθητήρα
Τοποθετήστε τον αισθητήρα
Τοποθετήστε τον αισθητήρα
Τοποθετήστε τον αισθητήρα

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

  • Βεβαιωθείτε ότι ο αισθητήρας σας είναι στραμμένος προς τα κάτω σε μικρή γωνία. Δεν θέλετε να κοιτάζει κατευθείαν προς τα κάτω, καθώς το κουτί σας θα ρίξει μια σκιά όπου το χιόνι δεν χτυπά το έδαφος.
  • Θα θέλετε τον αισθητήρα από το χιόνι περίπου 2-3 πόδια.
  • Το χιόνι λιώνει στο νερό, οπότε βεβαιωθείτε ότι η εγκατάστασή σας είναι λογικά αδιάβροχη.
  • Βεβαιωθείτε ότι έχετε δύναμη! Είτε ένα μακρύ καλώδιο usb, είτε ένα καλώδιο επέκτασης θα σας απομακρύνουν από μια οροφή για να φτάσετε σε ένα χρήσιμο σημείο. Σε κάθε περίπτωση, βεβαιωθείτε ότι είναι ασφαλές έξω.

Βήμα 6: Λάβετε την κλήση

Λάβετε την κλήση!
Λάβετε την κλήση!

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

Snow Challenge
Snow Challenge
Snow Challenge
Snow Challenge

Δρομέας στην πρόκληση του χιονιού

Συνιστάται: