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

JavaStation (Πλήρως αυτόματη καφετιέρα IoT με αυτόματη επαναπλήρωση): 9 βήματα (με εικόνες)
JavaStation (Πλήρως αυτόματη καφετιέρα IoT με αυτόματη επαναπλήρωση): 9 βήματα (με εικόνες)

Βίντεο: JavaStation (Πλήρως αυτόματη καφετιέρα IoT με αυτόματη επαναπλήρωση): 9 βήματα (με εικόνες)

Βίντεο: JavaStation (Πλήρως αυτόματη καφετιέρα IoT με αυτόματη επαναπλήρωση): 9 βήματα (με εικόνες)
Βίντεο: Sun javastation "krups" booting Debian GNU/Linux 2024, Ιούλιος
Anonim
JavaStation (Πλήρως αυτόματη καφετιέρα IoT με αυτόματη επαναπλήρωση)
JavaStation (Πλήρως αυτόματη καφετιέρα IoT με αυτόματη επαναπλήρωση)
JavaStation (Πλήρως αυτόματη καφετιέρα IoT με αυτόματη επαναπλήρωση)
JavaStation (Πλήρως αυτόματη καφετιέρα IoT με αυτόματη επαναπλήρωση)
JavaStation (Πλήρως αυτόματη καφετιέρα IoT με αυτόματη επαναπλήρωση)
JavaStation (Πλήρως αυτόματη καφετιέρα IoT με αυτόματη επαναπλήρωση)

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

Βήμα 1: Εισαγωγή

Εισαγωγή
Εισαγωγή

Δεδομένου ότι αυτό ήταν το δεύτερο mod mod καφέ, έμαθα πολλά στη διαδικασία, ιδιαίτερα ότι όσο πιο πολύπλοκο μηχάνημα τροποποιείτε τόσο περισσότερα προβλήματα/σφάλματα θα αντιμετωπίσετε κατά τη διάρκεια της καθημερινής λειτουργίας. Το προηγούμενο μηχάνημα ήταν απλά μια παλιά καφετιέρα 1 διακόπτη με λειτουργία ρελέ.

Το Circolo (πλήρης αυτόματη έκδοση) είναι το κορυφαίο premium premium μηχάνημα της Dolce Gusto. Έπρεπε να αφιερώσω ώρες για να ψάξω για το κατάλληλο μηχάνημα γιατί όλα τα άλλα μηχανήματα αυτής της σειράς χρησιμοποιώντας τον πάνω μηχανικό μοχλό για εναλλαγή μεταξύ ροών κρύου και ζεστού νερού όπως φαίνεται στην εικόνα.

Βήμα 2: Επιλέξτε το σωστό μηχάνημα

Επιλέξτε το σωστό μηχάνημα
Επιλέξτε το σωστό μηχάνημα

Η βασική μου μηχανή δεν είναι απλώς πλήρως αυτόματη, αλλά έχει αξιοσημείωτα χαρακτηριστικά, όπως απενεργοποίηση αυτόματος μετά από 5 λεπτά και ανάμνηση μέχρι την τελευταία ποσότητα καφέ (κάτι που θα κάνει τα πράγματα πολύ πιο εύκολα αργότερα στη διαμόρφωση). Η βασική λειτουργία του μηχανήματος:

1, πατημένο το κουμπί λειτουργίας

2, Πατημένο το κουμπί κρύου νερού (θα διασκορπίσει αμέσως το νερό στο φλιτζάνι)

3, Πιέζεται το κουμπί ζεστού νερού (θα ζεσταθεί ο λέβητας ~ 20-60 δευτερόλεπτα και αρχίζει να απελευθερώνει ζεστό νερό στο φλιτζάνι) Η ενδεικτική λυχνία τροφοδοσίας θα αναβοσβήνει κόκκινη κατά την περίοδο αναμονής και θα γίνει πράσινη μόνιμα όταν ο λέβητας είναι έτοιμος.

Αυτό το μηχάνημα έχει επίσης τη δυνατότητα να εντοπίζει τα ακόλουθα σφάλματα:

Η δεξαμενή νερού είναι άδεια

Ο κάτοχος του κυπέλλου δεν είναι στη θέση του

Και στις δύο περιπτώσεις η λυχνία λειτουργίας τρεμοπαίζει μεταξύ κόκκινου/πράσινου.

Βήμα 3: Τροποποιήσεις υλικού

Τροποποιήσεις υλικού
Τροποποιήσεις υλικού

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

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

Ο πίνακας τροφοδοσίας δεν περιέχει τίποτα χρήσιμο, αλλά μπορεί να χρησιμοποιηθεί για να βγάλετε ένα σταθερό +5V (ένα άλλο μπράβο για αυτό το μηχάνημα) το οποίο μπορεί να συνδεθεί απευθείας με τον πείρο VIN του Arduino παρακάμπτοντας τον ρυθμιστή τάσης επί του σκάφους.

Λίστα γρήγορου υλικού (όχι πλήρες BOM, δεν περιλαμβάνει βασικά):

  1. Πλήρης αυτόματη έκδοση Dolce Gusto Circulo
  2. 5V 4 Channel Relay Module With optocoupler For PIC AVR DSP (Προτείνω να χρησιμοποιήσετε 4x SIP-1A05 Reed Switch Relay)
  3. Arduino Micro (προτείνω να χρησιμοποιήσετε το SparkFun Pro Micro ή νεότερο στο μέλλον)
  4. Φωτοτρανζίστορ 2PCS 4n35 FSC Optocouplers
  5. 1/2 "Ηλεκτρομαγνητική Βαλβίδα για Νερό αέρα N/C Κανονικά κλειστό DC 12V
  6. Αισθητήρας υπερήχων HC-SR04 Distance Measuring Transducer Sensor (αγοράστε μερικά πρόσθετα, θα δείτε αργότερα γιατί)
  7. 2τεμ. Ανίχνευση βροχής μονάδας αισθητήρα ανίχνευσης υγρασίας βροχής για Arduino
  8. 1 Xbee
  9. Εξαρτήματα σωλήνων για μπλοκ νερού (μπορεί να διαφέρουν ανάλογα με το σπίτι, καλύτερα να το αγοράσετε σε κατάστημα υλικού και να τα βάλετε όλα μαζί πριν αγοράσετε)

Βήμα 4: Κύριες συνδέσεις και πίνακας ελεγκτή

Κύριες συνδέσεις και πίνακας ελεγκτών
Κύριες συνδέσεις και πίνακας ελεγκτών
Κύριες συνδέσεις και πίνακας ελεγκτών
Κύριες συνδέσεις και πίνακας ελεγκτών
Κύριες συνδέσεις και πίνακας ελεγκτή
Κύριες συνδέσεις και πίνακας ελεγκτή

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

1, κουμπί Hot

2, Κρύο κουμπί

3, κόκκινο led

4, πράσινο led

5, Κύριο κουμπί ενεργοποίησης

6, Shared GND

Δυστυχώς, έχω χάσει τις σημειώσεις/εικόνες μου για το πού να τις κολλήσω στον πίνακα, αλλά όλες μπορούν εύκολα να εντοπιστούν με ένα πολύμετρο (απλώς χρησιμοποιήστε τη λειτουργία δοκιμής διόδου για να εντοπίσετε τα καλώδια πίσω). Η συγκόλληση δεν ήταν πολύ σκληρή, επιλέξτε σημεία με πόδια SMD και κολλήστε τα καλώδια εκεί.

Οι κόκκινες/πράσινες λυχνίες LED βρίσκονται και οι δύο η μία δίπλα στην άλλη στο διακόπτη τροφοδοσίας. Απαιτούνται για τον προσδιορισμό των καταστάσεων της μηχανής (ενεργοποιημένη, έτοιμη για παρασκευή καφέ (ο λέβητας θερμαίνεται), σφάλμα). Τα βγάζω κατευθείαν από την κεντρική πλακέτα, γιατί είναι δύσκολο να τα βάλω με το μικρό κύκλωμα γύρω από το διακόπτη τροφοδοσίας.

Χρησιμοποίησα οπτικά ζεύγη 4N35 για ασφαλή διασύνδεση με το Arduino και διάβασα τις καταστάσεις του LED. Η αρχική ιδέα ήταν να χρησιμοποιηθούν 5 από αυτά και να γίνουν και οι ενδείξεις και τα χειριστήρια αλλαγής (κάντε ένα εντελώς αθόρυβο κύκλωμα). Δυστυχώς, αυτό το τσιπ δεν μπορούσε να δημιουργήσει αρκετά χαμηλή αντίσταση για να μιμηθεί ένα πάτημα κουμπιού, οπότε αναγκάστηκα να χρησιμοποιήσω ρελέ. Χρησιμοποίησα τη γενική μονάδα ρελέ 4 καναλιών που είχα στο χέρι, αλλά αν έπρεπε να ξανακάνω αυτό το έργο θα χρησιμοποιούσα απλά μικρά ρελέ Reed (SIP-1A05 Reed Switch Relay με εσωτερικές διόδους flyback) τα οποία μπορούν να συνδεθούν απευθείας με την έξοδο του Arduino καρφίτσες (load 7mA φορτίο), ώστε όλα να μπορούν να τοποθετηθούν σε μια δομή σανίδας 2 επιπέδων.

Τα 5 μικρά καλώδια μπορούν εύκολα να γκρεμιστούν δίπλα στα καλώδια τροφοδοσίας κάτω από την πλακέτα τροφοδοσίας.

Για να χρησιμοποιήσω τον χώρο πιο αποτελεσματικά στο μηχάνημα αποφάσισα να χωρίσω τα ηλεκτρονικά σε 2 μεγάλα πάνελ:

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

Για τον πίνακα επικοινωνίας, δεν μπήκα στον κόπο να φτιάξω το PCB απλώς να χρησιμοποιήσω ένα κανονικό ψωμί επειδή δεν συμβαίνουν πολλά εκεί. Διαθέτει 6 συνδέσεις με τον κεντρικό πίνακα:

Vcc (5V), GND, Xbee (TX), Xbee (RX), Αισθητήρας νερού1 (Δεδομένα), Αισθητήρας νερού2 (Δεδομένα)

Βήμα 5: Έλεγχος ροής νερού και μηχανισμός αναπλήρωσης

Έλεγχος ροής νερού και μηχανισμός αναπλήρωσης
Έλεγχος ροής νερού και μηχανισμός αναπλήρωσης
Έλεγχος ροής νερού και μηχανισμός επαναπλήρωσης
Έλεγχος ροής νερού και μηχανισμός επαναπλήρωσης
Έλεγχος ροής νερού και μηχανισμός επαναπλήρωσης
Έλεγχος ροής νερού και μηχανισμός επαναπλήρωσης

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

Σημειώστε επίσης ότι η ηλεκτρομαγνητική βαλβίδα λειτουργεί από τροφοδοτικό 12V ό, τι κατάφερα να πιέσω στο κάτω μέρος της καφετιέρας δίπλα στην αντλία και τον πίνακα ρελέ. Για να μην σπαταλάτε ενέργεια, η πλακέτα ρελέ 4 καναλιών ενεργοποιεί το καλώδιο 230V απευθείας στον προσαρμογέα, ο οποίος στη συνέχεια θα ενεργοποιήσει την ηλεκτρομαγνητική βαλβίδα. Φυσικά, υπάρχουν μερικά δευτερόλεπτα καθυστέρησης απενεργοποίησης που πρέπει να υπολογίσετε για την κατάρρευση του μαγνητικού πεδίου τόσο στην ηλεκτρομαγνητική βαλβίδα + του προσαρμογέα στο τράβηγμα του βύσματος.

Χρησιμοποιώ μια τυπική υποδοχή 3,5 χιλιοστών για να συνδέσω το εξωτερικό μπλοκ νερού με ένα μακρύ καλώδιο 3 μέτρων και έναν σωλήνα PVC μικρής διαμέτρου που βγαίνει από το μπλοκ και πηγαίνει στην καφετιέρα.

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

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

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

Βήμα 6: Ανίχνευση πλημμύρας

Ανίχνευση πλημμύρας
Ανίχνευση πλημμύρας
Ανίχνευση πλημμύρας
Ανίχνευση πλημμύρας
Ανίχνευση πλημμύρας
Ανίχνευση πλημμύρας

Υπάρχουν 2 επιπλέον αισθητήρες νερού για προστασία:

  • Αισθητήρας1: στο πίσω μέρος της δεξαμενής για ανίχνευση υπερχείλισης από τη δεξαμενή
  • Αισθητήρας2: στο κάτω μέρος της καφετιέρας για ανίχνευση υπερχείλισης φλιτζανιών

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

Σε περίπτωση που αναρωτιέστε τι θα συνέβαινε εάν ο αισθητήρας υπερήχων πλημμύριζε (συνέβη μία φορά:))

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

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

Βήμα 7: Δοκιμή και τελική συναρμολόγηση

Δοκιμές και τελική συναρμολόγηση
Δοκιμές και τελική συναρμολόγηση
Δοκιμές και τελική συναρμολόγηση
Δοκιμές και τελική συναρμολόγηση
Δοκιμές και τελική συναρμολόγηση
Δοκιμές και τελική συναρμολόγηση

Το μηχάνημα βρίσκεται στην τελική του κατάσταση, κρύβοντας σχεδόν εντελώς τα ίχνη τυχόν παραβίασης και εάν οι 3 ενδεικτικές λυχνίες κατάστασης και η θύρα εντοπισμού σφαλμάτων USB δεν θα ήταν εκεί, δεν θα μπορούσατε να πείτε ότι οτιδήποτε άλλο συμβαίνει στο εσωτερικό, ενώ μπορεί να στεγάσει ακόμη και ένα Wifi συνδεδεμένο Σεισμός διακομιστή:)

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

Βήμα 8: Κωδικός ελέγχου καφέ

Κωδικός ελέγχου καφέ
Κωδικός ελέγχου καφέ

Βρείτε τον πλήρη πηγαίο κώδικα Arduino που επισυνάπτεται παρακάτω.

Σύντομη εξήγηση του κώδικα:

Ο κύριος βρόχος καλεί τη λειτουργία xcomm (), υπεύθυνη για την επεξεργασία της εντολής, την παρασκευή του καφέ, την ενεργοποίηση/απενεργοποίηση του μηχανήματος.

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

Οι εντολές μπορούν να σταλούν μέσω του Xbee ή μέσω της θύρας USB (το Debug πρέπει να είναι ενεργοποιημένο στην αρχή). Όταν έρχεται η επικοινωνία είτε από το πορτοκαλί led αναβοσβήνει για ένα δευτερόλεπτο για να εμφανιστεί η δραστηριότητα του δικτύου. Εφαρμόζονται οι ακόλουθες εντολές:

1, CMSTAT - στατιστικά ερωτήματος από το μηχάνημα

Το μηχάνημα αποθηκεύει στατιστικά στοιχεία για το πόσους ζεστούς/κρύους/χειροποίητους καφέδες φτιάχνονται και επίσης παίρνει το χρόνο λειτουργίας από το RTC, το οποίο δεν ξεχειλίζει μετά από 3 ημέρες, οπότε μπορεί να φτάσει και τα χρόνια: P

2, CMWSTART - αρχίζει να φτιάχνει καφέ και ζεστά ροφήματα με ζεστό νερό

3, CMCSTART - αρχίζει να φτιάχνει παγωμένο τσάι και κρύα ποτά με κρύο νερό

Οι θερμές και κρύες διαδικασίες ξεκινούν με την κλήση της λειτουργίας αναμονής () η οποία πραγματοποιεί περαιτέρω ελέγχους και ενεργοποιεί το πάτημα του κουμπιού λειτουργίας. Μετά από αυτό, το πρόγραμμα περιμένει το πράσινο φως (όταν ο λέβητας θερμαίνεται) και στη συνέχεια μιμείται το πάτημα του κουμπιού ζεστού/κρύου. Μετά από αυτό, περιμένει 50 δευτερόλεπτα (το οποίο είναι περισσότερο από αρκετό ακόμη και για το μεγαλύτερο φλιτζάνι του καφέ) και στη συνέχεια απενεργοποιεί το ρεύμα. Αυτό δεν θα ήταν καν απαραίτητο αφού αυτό το εξαιρετικό μηχάνημα θα απενεργοποιήθηκε αυτόματα 5 λεπτά μετά την παρασκευή του καφέ, αλλά γιατί να σπαταλήσετε ενέργεια; Παρεμπιπτόντως, η κατανάλωση ισχύος αναμονής του μηχανήματος ακόμη και μετά την τροποποίηση είναι μικρότερη από 2 Watt.

Αναπλήρωση νερού και ασφάλεια

Αυτό το μηχάνημα σχεδιάστηκε με γνώμονα την ασφάλεια, οπότε θα ήταν αδύνατο για έναν εισβολέα που αποκτά τον έλεγχο να πλημμυρίσει όλο το σπίτι με νερό. Μια βλάβη υλικού δεν θα έχει επίσης σοβαρές ζημιές. Δίπλα στους αισθητήρες υλικού υπάρχει προστασία ενσωματωμένη στον κώδικα για την αναπλήρωση. Ένας μετρητής που ενεργοποιεί τη ρουτίνα ISR εάν το μηχάνημα δεν ξαναγεμίσει σε x δευτερόλεπτα (αυτό για παράδειγμα θα μπορούσε να συμβεί εάν ο αισθητήρας υπερήχων δυσλειτουργούσε και έδινε 20% μετά από x δευτερόλεπτα μόλις ξεκινήσει η αναπλήρωση).

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

Σφάλματα

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

Έπρεπε να ξεκινήσω τον εντοπισμό σφαλμάτων της διπλής εντολής από το επίπεδο Android επειδή έχω εφαρμόσει την εκ νέου αποστολή στον κώδικα σε περίπτωση απώλειας πακέτων. Αποδείχθηκε ότι ούτε το Android, το λογισμικό ελέγχου C ούτε ο πυρήνας Linux στο raspi2 ήταν υπεύθυνοι για αυτό μάλλον το Xbee.

Μετά την έκδοση echo "CMCSTART">/dev/ttyACM0 στον κόμβο ελέγχου, βγαίνει δύο φορές στο άλλο άκρο. Κατέληξα στο συμπέρασμα ότι το φάσμα των 2.4Ghz στο σπίτι μου άρχισε να κορεστεί από τις πολλές ραδιοφωνικές συσκευές αυτής της περιοχής, γεγονός που προκάλεσε ένα Xbee να επικαλεστεί κάποιο είδος εκ νέου αποστολής στο στρώμα ραδιοφώνου και τα δεδομένα στάλθηκαν δύο φορές (όχι πάντα). Μόλις η πρώτη εντολή μπήκε στα μηχανήματα η λειτουργία xcomm () άρχισε να την επεξεργάζεται, ωστόσο μια δεύτερη μπήκε αμέσως μετά την οποία περίμενε στο buffer Xbees και όταν τελείωσε ο βρόχος άρχισε να επεξεργάζεται τη δεύτερη εντολή. Για να ξεπεράσω αυτό το πρόβλημα, έχω εισαγάγει 3 κατώφλια στον κώδικα, ώστε να είναι αδύνατο να φτιάξω περισσότερους από 1 καφέ σε 2 λεπτά. Επίσης, υπάρχει ένα όριο στο CMSTAT, αλλά για να μην παρεμβαίνει στον κωδικό ελέγχου C/Android, απλώς θα σβήσει τις απαντήσεις για 2 δευτερόλεπτα.

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

Βήμα 9: Σχεδιασμοί και τελικές σκέψεις

Μετά από πολλά προβλήματα από την επικοινωνία Xbee δεν θα συνιστούσα το Xbee για αυτό το έργο. Είτε χρησιμοποιήστε το τυπικό φθηνό ραδιόφωνο 433Mhz με VirtualWire και χαμηλό Bps για σταθερότητα είτε ενσωματώστε ένα Raspberry PI Zero με σύνδεση Wifi απευθείας στην καφετιέρα.

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

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

Ολοκλήρωσα την τεκμηρίωση του συστήματος αποθήκευσης νερού (WasserStation) και ενημέρωσα τον CoffeeControlCode στην πιο πρόσφατη έκδοση, η οποία περιλαμβάνει επίσης την αυτόματη αναπλήρωση. Εάν χρησιμοποιείτε το ίδιο μηχάνημα για την κατασκευή, το ξαναγέμισμα θα λειτουργήσει άψογα (χωρίς καμία αλλαγή στον κώδικα) αφού τα επίπεδα νερού βαθμονομήθηκαν σε δεξαμενή νερού του Circolo.

Συνιστάται: