Πίνακας περιεχομένων:
- Βήμα 1: Ρύθμιση των τηλεφώνων σας για την αποστολή της θέσης τους στο Pi σας (Μέρος I MQTT Broker)
- Βήμα 2: Ρύθμιση των τηλεφώνων σας για την αποστολή της θέσης τους στο Pi σας (Μέρος II Owntracks)
- Βήμα 3: Ρύθμιση του Raspberry Pi
- Βήμα 4: Εγκατάσταση του Κόμβου Κόκκινου (λήψη των μηνυμάτων από τον διακομιστή MQTT στο σενάριο Python σας)
- Βήμα 5: Πραγματικά μετακίνηση Servos με Python στο Pi
- Βήμα 6: Ολοκλήρωση του Λογισμικού - Τηλέφωνα σε Servos
- Βήμα 7: Χτίζοντας το φυσικό ρολόι - Μέρος Ι - το Servos & Axle
- Βήμα 8: Τα χέρια του ρολογιού
- Βήμα 9: Ολοκληρώστε
- Βήμα 10: Πράγματα που έμαθα και θα έκανα καλύτερα/διαφορετικά αν έπρεπε να το κάνω ξανά
- Βήμα 11: Πιθανές μελλοντικές επεκτάσεις…;
Βίντεο: Ρολόι τοποθεσίας 'Weasley' με 4 χέρια: 11 βήματα (με εικόνες)
2024 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2024-01-30 08:31
Έτσι, με ένα Raspberry Pi που ξεκινούσε για λίγο, ήθελα να βρω ένα ωραίο έργο που θα μου επέτρεπε να το αξιοποιήσω καλύτερα. Συνάντησα αυτό το υπέροχο Instructable Build Your Owl Weasley Location Clock από τον ppeters0502 και σκέφτηκα ότι θα ήταν καλό να το δοκιμάσω.
Το ρολόι αποτελείται ουσιαστικά από ένα Raspberry Pi το οποίο ελέγχει τα servos για να γυρίσει τους δείκτες του ρολογιού. Όπως και στο σπίτι της οικογένειας Γουέσλι στα βιβλία/ταινίες του Χάρι Πότερ, κάθε μέλος της οικογένειας έχει το δικό του χέρι. Κάθε χέρι δείχνει την τρέχουσα τοποθεσία του συγκεκριμένου μέλους της οικογένειας. Το ρολόι το επιτυγχάνει λαμβάνοντας μηνύματα από τα κινητά τηλέφωνα της οικογένειας κάθε φορά που εισέρχονται ή εξέρχονται από μια προκαθορισμένη ακτίνα.
Οι κύριες διαφορές με το προηγούμενο Instructable ήταν ότι έπρεπε να έχω 4 χέρια, όχι 2 (αλλιώς οι κόρες μου θα είχαν διαμαρτυρηθεί) και αποφάσισα να φτιάξω και εγώ το πλαίσιο, όχι να χρησιμοποιήσω ένα παλιό ρολόι. Αυτό συνέβη επειδή ανησυχούσα ότι ο χώρος θα ήταν πρόβλημα σε μια υπάρχουσα θήκη ρολογιού, με την ανάγκη να χωρέσει σε 4 σερβο κ.λπ.
Χρειάστηκε πολύ περισσότερος χρόνος από ό, τι περίμενα, αν και κυρίως εκεί που συνάντησα βίαια προβλήματα που με προβλημάτισαν και τα οποία δεν φάνηκε να καλύπτονται από την αρχική ανάρτηση. Τίποτα ενάντια στο αρχικό Instructable, το οποίο ήταν γενικά υπέροχο, αλλά είχαν περάσει κάποια χρόνια και οι εκδόσεις των πραγμάτων άλλαξαν … κλπ. Επίσης, το να βρίσκεστε στο Ηνωμένο Βασίλειο σήμαινε ότι ορισμένα από τα Imperial/Metric στοιχεία προκαλούσαν περισσότερες προκλήσεις από ό, τι περίμενα.
Επίσης, ενώ είμαι εντάξει στην κωδικοποίηση, η φυσική κατασκευή του ρολογιού σίγουρα με τέντωσε και απαιτούσε κάποια επιπλέον εργαλεία, τα οποία επίσης με επιβράδυναν κάπως.
Στο τέλος θα συμπεριλάβω μια ενότητα με θέμα "Πράγματα που θα έκανα διαφορετικά/καλύτερα αν το ξαναέκανα …"
Προμήθειες:
Ένα από τα πράγματα που με εντυπωσίασαν ήταν ότι τα ακριβά εξαρτήματα είχαν να κάνουν με τους δείκτες του ρολογιού. Τα 4 χέρια είναι σίγουρα πολύ πιο ακριβά από τα 2. Αποφάσισα να βάλω κάποιες δαπάνες για να έχετε κάποια ιδέα. Είναι η πρώτη φορά που τα προσθέτω όλα και αγνοώντας τα εργαλεία, νομίζω ότι ξόδεψα περίπου 200 λίρες. Συν κάποια πράγματα που δεν χρησιμοποίησα (και δεν τα έχω συμπεριλάβει παρακάτω) συν το Pi, συν το τροφοδοτικό και τα δύο που είχα ήδη.
Pi κλπ
- Raspberry Pi - δεν μπορώ να θυμηθώ πόσο κόστισε αρχικά, αλλά ήταν ένα μοντέλο 2Β. Νομίζω ότι αν δεν το έχετε ήδη, τότε πιθανότατα θα το είχε ακόμη και ένα Pi Zero. Είχα προσθέσει wifi dongle και κάρτα SD με Raspbian. Και είχα έναν παλιό φορτιστή τηλεφώνου Android ξαπλωμένο.
- Adafruit Servohat για το Pi - 16 λίρες
- Τροφοδοσία για το Servohat - Αυτό πραγματικά προσπάθησα να το βρω καθώς όλοι οι ιστότοποι μόλις έδειξαν τον ιστότοπο του adafruit, ο οποίος τότε προφανώς προτείνει ένα τροφοδοτικό στις ΗΠΑ. Τότε συνειδητοποίησα ότι είχα μια παλιά τροφοδοσία μεταβλητής τάσης με εναλλάξιμες άκρες, οπότε το χρησιμοποίησα. Αλλά το αμερικανικό κοστίζει $ 8, οπότε αυτό είναι το γήπεδο.
- Θήκη για το Pi, ώστε να μπορέσω στη συνέχεια να το προσαρτήσω στο πλαίσιο του ρολογιού. 5 £
Servo και γρανάζια
Εδώ παραθέτω την τιμή και για τα 4, οπότε διαιρέστε αν θέλετε λιγότερα χέρια (προσθέτοντας το είναι ~ 40 ER P για το χέρι = £ 160: -ο
- 4 x Servos-Χρησιμοποίησα αυτά που προτείνει ο ppeters0502-βρέθηκαν στο ebay για 15 £ το καθένα = 60--έψαξα για το ακόλουθο κείμενο "GWS-Digital-Servo-Sail-Winch-S125-1T-2BB-360-degree «αλλά μερικές φορές δεν ήταν διαθέσιμα
- 4 x σωλήνες από ορείχαλκο που τοποθετήθηκαν ακριβώς το ένα μέσα στο άλλο - ~ £ 3 το καθένα. Πήρα 1 το καθένα από 1/4 ", 7/32", 3/16 ", 5/32" = £ 11
- 4 x σφιγκτήρες που σφίγγουν πάνω στους σωλήνες ορείχαλκου για να σας επιτρέψουν να συνδέσετε γρανάζια. £ £ 7 το καθένα = £ 28. Τα πήρα από την ActiveRobots που κάνουν τακτικές παραγγελίες από την Servocity στις ΗΠΑ, επιτρέποντάς σας να αποφύγετε τη διεθνή αποστολή. Μπορούν επίσης να πάρουν οτιδήποτε άλλο μπορείτε να βρείτε στον κύριο ιστότοπο του Servocity στις ΗΠΑ. Αυτό ήταν πολύ βολικό για τα επόμενα 2 αντικείμενα
- 4 x γρανάζια ακετυλ 0.770 "για τοποθέτηση στους κόμβους σύσφιξης. Each £ 6 το καθένα = £ 24
- 4 x ακετυλικά γρανάζια ακετυλίου τοποθετημένα σε σπάγγο για τοποθέτηση στα σερβίτσια. 50 £ 6,50 το καθένα = 26
- 1 x συσκευασία εξαγωνικών παξιμαδιών σε προσαρτημένα γρανάζια σε παξιμάδια σύσφιξης = 2,60
- Εξάγωνο κλειδί 1 x 7/64 "(κλειδί allen) επειδή οτιδήποτε προέρχεται από τις ΗΠΑ είναι αυτοκρατορικό, οπότε τα εκατοντάδες κλειδιά allen που έχω ήδη είναι άχρηστα = £ 1
Για τη φυσική κατασκευή
Εδώ χρησιμοποίησα ως επί το πλείστον αποσπάσματα για πράγματα που είχα ψέματα
- 2 x τετράγωνα κόντρα πλακέ για την πλάκα «προσώπου» και «πλάτης»
- Στη συνέχεια έκοψα κυλίνδρους 4x10 εκατοστών από μια παλιά κάγκελα που είχα, για να συνδέσω την πλάτη με το πρόσωπο
- Μερικά μπλοκ για την τοποθέτηση των servos στη σωστή μετατόπιση - απλά αποκόμματα από μαλακό ξύλο που έκοψα σε μέγεθος.
- Διάφορες βίδες. από πολύ μικρό (για να στερεώσετε την θήκη Pi στο πλαίσιο) έως το μεσαίο (για να συνδέσετε το πλαίσιο μαζί)
- Φύλλο 0,75 mm από μαλακό χάλυβα περίπου 50cm x 20cm (για να κόψετε τα χέρια από). Αυτό ήταν το μόνο που αγόρασα 9 λίρες από τη Wickes
Εργαλεία
Κάποια πράγματα είχα και κάποια δανείστηκα ή αγόρασα
- Συγκολλητικό σίδερο + ηλεκτρική συγκόλληση - για τη σύνδεση των συνδέσμων στο Adafruit Hat & Pi.
- Παζλ - για να κόψετε το τραχύ σχήμα των χεριών
- Τρυπάνι. απλά ένα κανονικό ασύρματο τρυπάνι 18V
- Τρυπάνια - Λάβετε υπόψη ότι θα χρειαστείτε αυτοκρατορικά τρυπάνια για να κάνετε τρύπες που ταιριάζουν με τους ορειχάλκινους σωλήνες. Κατάφερα να δανειστώ μερικά.
- πριόνι - για κοπή ορείχαλκου. Μην κάνετε αυτό που έκανα και ξοδέψτε 3 £ για τον κόπτη σωλήνων, λειτουργεί με πίεση και σημαίνει ότι το εσωτερικό των σωλήνων γίνεται λίγο μικρότερο. έτσι ο σωλήνας επόμενου μεγέθους προς τα κάτω δεν ταιριάζει στη συνέχεια
- Μύλος πάγκου - δεν είχα ένα από αυτά, αλλά ένας φίλος το έκανε και έκανε το σχήμα των χεριών ΠΟΛΥ ευκολότερο. Μέχρι τότε χρησιμοποιούσα απλά αρχεία. Δεν θα αγόραζα ένα μόνο για αυτό το έργο, αλλά για τα μεταλλικά χέρια ήταν υπέροχο.
- Αγόρασα διάφορα διάφορα διαμαντένια αρχεία (πολύ μικρά). χρήσιμο για τα χέρια και τους σωλήνες περίπου £ 15
- τραχύ και λείο γυαλόχαρτο
- μερικοί μικροί σφιγκτήρες συγκρατούν τα πράγματα στη θέση τους κατά τη διάτρηση.
- κακία για τον ίδιο λόγο.
Βήμα 1: Ρύθμιση των τηλεφώνων σας για την αποστολή της θέσης τους στο Pi σας (Μέρος I MQTT Broker)
Αυτό το κομμάτι περιγράφεται πολύ καλά από τον ppeters0502 στο εξαιρετικό του Weasley Clock Instructable. Παραδόξως, αν και ίσως αντικατοπτρίζει διαφορετικές δεξιότητες, ξεκίνησε με την κατασκευή και μετά πέρασε στο λογισμικό, το έκανα αντίστροφα. Έτσι, ξεκίνησα με το τηλέφωνο … μείνετε, όχι δεν το έκανα, ξεκίνησα με τον μεσίτη MQTT, που είναι το Βήμα 6 στο Instructable. Θα παραλείψω όλα τα κομμάτια που κάνει πολύ καλά και θα ρίξω μερικά κομμάτια που θα μπορούσα να προσθέσω. Πήγα στη διαδρομή CloudMQTT που ανέφερε.
ΑΛΛΑ αυτό που έγραφα, έλεγξα το σύνδεσμο προς τα σχέδια και διαπίστωσα ότι δεν υπάρχει πλέον δωρεάν πρόγραμμα! Το απέσυραν, για κάτι που φαίνεται λογικό. δηλ. ότι οι άνθρωποι θα δημιουργούσαν μια δωρεάν παρουσία και στη συνέχεια δεν θα την χρησιμοποιούσαν ποτέ. Δεν το παρατήρησα γιατί οι τρέχουσες παρουσίες μπορούν να συνεχιστούν. Οπότε δεν θα αλλάξω. Αλλά κάνει τις οδηγίες λίγο περιττές. Φαίνεται ότι υπάρχουν 3 επιλογές.
- Πληρώστε τα 5 $ το μήνα για το Cloud MQTT (αλλά αυτό ακούγεται ακριβό για το ρολόι σε συνεχή βάση).
- Πηγαίνετε στο Mosquitto on Pi διαδρομή όπως περιγράφεται στο πρώτο Instructable. Δεν μπορώ να το σχολιάσω, αλλά θα μπορούσε να είναι μια καλή επιλογή.
- Απλώς google "δωρεάν MQTT cloud broker" και φαίνεται ότι υπάρχουν και κάποιοι άλλοι.
Έτσι, με την υπόθεση ότι έχετε έναν μεσίτη MQTT που λειτουργεί, αν είναι κάτι σαν το CloudMQTT, τότε θα εμφανίζονται ένας διακομιστής, ένας χρήστης, ένας κωδικός πρόσβασης και μια θύρα. Θα χρειαστείτε όλα αυτά για τη ρύθμιση των τηλεφώνων σας για να στείλετε στον μεσίτη τις τοποθεσίες/τις κινήσεις σας.
Βήμα 2: Ρύθμιση των τηλεφώνων σας για την αποστολή της θέσης τους στο Pi σας (Μέρος II Owntracks)
Αυτό καλύπτεται επίσης πολύ καλά στο αρχικό Instructable, στα Βήματα 7 (Android), 8 (iOS) & 9 (ρύθμιση περιοχών).
Είχα μόνο συσκευές iOS, οπότε δεν δοκίμασα το βήμα 7.
Τι θα προσθέσω σε αυτές τις οδηγίες;
- Στη ρύθμιση υπάρχουν επίσης τα πεδία TrackerID και DeviceID. Αυτά πρέπει να έχετε για να μπορείτε να σας αναγνωρίσετε μέσα στην οικογένειά σας. Π.χ. Τα είχα ως R και RPhone αντίστοιχα. Αυτό σημαίνει ότι μπορείτε να περάσετε στο ρολόι το οποίο Servo και επομένως ποιο χέρι να γυρίσετε.
- Οι περιοχές είναι το όνομα για τις τοποθεσίες που θέλετε να παρακολουθείτε.
- Κάθε περιοχή ορίζεται από ένα όνομα, ένα γεωγραφικό πλάτος, ένα γεωγραφικό μήκος και μια ακτίνα.
-
Επειδή ήθελα να έχω αρκετές τοποθεσίες ως μία ενότητα στο ρολόι μου, χρησιμοποίησα μια σύμβαση ονομασίας, η οποία αποδείχθηκε πολύ χρήσιμη. Άλλες μέθοδοι είναι δυνατές, αλλά αυτό λειτούργησε για μένα.
- Για παράδειγμα, για το τμήμα ΟΙΚΟΓΕΝΕΙΑ του ρολογιού ήθελα να έχω τους γονείς και τα αδέλφια μου και τους γονείς και τα αδέλφια της γυναίκας μου. Ως εκ τούτου, είχα τοποθεσίες όπως "Family Tom", "Family Dick", Family Harry "&" Family ParentsR ". Αυτό σήμαινε ότι το επόμενο στάδιο θα μπορούσε να ξέρει τι να περάσει στο ρολόι.
- Λάβετε υπόψη ότι οι άνθρωποι μπορούν να έχουν διαφορετικές τοποθεσίες. Αλλά εφόσον είναι συνεπείς με τη σύμβαση ονοματοδοσίας, τότε είναι εντάξει. Π.χ. η δουλειά μου θα ήταν διαφορετική από την περιοχή εργασίας της συζύγου μου και θα ονομαζόταν διαφορετικά. αλλά όσο ξεκινούν και οι δύο "Δουλειά" τότε όλα είναι καλά.
- Θέλετε η λειτουργία να έχει οριστεί σε "Σημαντικό" στην οθόνη των Χαρτών. Αυτό σημαίνει ότι (κυρίως) λαμβάνετε μηνύματα μόνο όταν εισέρχεστε ή εξέρχεστε από περιοχές. Αυτή φαίνεται να είναι η ενημερωμένη έκδοση της σημείωσης με την ένδειξη ΣΗΜΑΝΤΙΚΟ: στο τέλος του Βήματος 8 στο αρχικό Instructable.
- Όπως αναφέρθηκε στο αρχικό Instructable, η χρήση των Χαρτών Google είναι ένας πολύ καλός τρόπος για να μάθετε το Lat/Long του κάπου. Το βρήκα πιο αποτελεσματικό να το κάνω μαζικά, ανακαλύπτοντας όλα τα Lat/Longs της τοποθεσίας μου, μετά τα έβαλα σε Σημειώσεις (στο Mac μου) και με το συγχρονισμό του cloud, σήμαινε ότι εμφανίστηκαν μαγικά στο iPhone μου στις Σημειώσεις και θα μπορούσα να τα αντιγράψω/επικολλήσω σε Owntracks. Σημαίνει επίσης ότι θα μπορούσα να στείλω το αρχείο στα τηλέφωνα της οικογένειάς μου και όλοι είχαμε σταθερές τοποθεσίες.
- Οι τοποθεσίες που βρίσκονται κοντά μεταξύ τους μπορεί να προκαλέσουν προβλήματα. Ο αδερφός μου ζει 2 δρόμους μακριά και αρχικά το τηλέφωνό μου συνέχιζε να σκέφτεται ότι βρισκόμουν ταυτόχρονα στην περιοχή του σπιτιού του καθώς και στο σπίτι. Τελικά έπρεπε να βάλω επιπλέον λογική στο Node Red για να πιάσω και να αγνοήσω αυτό που συμβαίνει.
Βήμα 3: Ρύθμιση του Raspberry Pi
Εδώ λοιπόν υποθέτω ότι έχετε μια βάση Pi που έχει ρυθμιστεί και σε wifi. Έτρεχα το Raspbian αλλά δεν έπρεπε να έχει σημασία. Χρησιμοποιήστε οδηγίες στο raspberrypi.org για να τα ρυθμίσετε όλα.
Σημειώστε ότι το Pi έχει θύρες για εμφάνιση σε οθόνη και πληκτρολόγιο/ποντίκι κ.λπ. ΑΛΛΑ προφανώς μόλις το έχετε στο ρολόι, δεν θέλετε τίποτα από αυτά. Η απάντηση, λοιπόν, που προτάθηκε από κάποιον στον ιστότοπο Raspberry pi, νομίζω, ήταν η δημιουργία μιας σύνδεσης VNC. Αυτό σας επιτρέπει να συνδεθείτε από άλλη συσκευή στο Pi και να το ελέγξετε επίσης. Το κάνω από το Mac μου αλλά το έχω κάνει και από iPad. Θα πρότεινα να χρησιμοποιήσετε κάτι με πληκτρολόγιο για ευκολία στη χρήση.
Μόλις διαπίστωσα ότι φαίνεται να το διευκόλυναν από τότε που συνδέθηκα… δείτε εδώ
Ουσιαστικά συνδέεστε και λαμβάνετε ένα παράθυρο που είναι η τυπική διεπαφή Pi.
Έτσι, έχετε ένα παράθυρο στο Pi σας από το φορητό υπολογιστή ή τον υπολογιστή σας.
Τώρα πρέπει να συνδέσετε το Servos.
Πρώτα πρέπει να κάνετε μια αρκετά βασική συγκόλληση για να πάρετε το καπέλο adafruit στο Pi. Είναι λίγο περίεργο, αλλά παρά το γεγονός ότι δεν είχα κολλήσει για 30 χρόνια, ήταν μια χαρά. Όπως πάντα, βρήκα ένα χρήσιμο βίντεο YouTube για να με ξεναγήσει, το οποίο ήταν μεγάλη βοήθεια.
Ενώ το καπέλο μπορεί να τρέξει 16 σερβίς, χρειάστηκα μόνο 4 και έτσι ενοχλήσα μόνο τη συγκόλληση του πρώτου σετ των 4 ακίδων.
Στη συνέχεια, τα servos απλώς σπρώχνουν στις καρφίτσες. Έκανα ένα πρώτα για να ελέγξω ότι θα μπορούσα πραγματικά να κάνω το σερβο να μετακινηθεί.
Εκεί χτύπησα το πρώτο μου μεγάλο εμπόδιο. Είχα ένα πολύ βασικό σενάριο python για να μετακινήσω τα servos και κυριολεκτικά δεν συνέβη τίποτα. Πέρασα περίπου μια εβδομάδα δοκιμάζοντας νέα σενάρια κ.λπ., και στη συνέχεια άρχισε να εμφανίζεται καπνός στο καπέλο. Απενεργοποιώντας τα πάντα, έλεγξα το σχηματικό. Ταν ένα συστατικό που προστατεύει από την αντίστροφη πολικότητα. Επειδή είχα μια πηγή τροφοδοσίας πολλαπλών άκρων, πολλαπλής τάσης, μου είχε λείψει το γεγονός ότι θα μπορούσατε να έχετε την έξοδο συνεχούς ρεύματος και με τους δύο τρόπους, αντιστρέφοντας το άκρο. Το είχα κάνει λάθος (πιθανότητα 50:50) και μόλις έκαψα το πρώτο μου καπέλο από adafruit
:-(Έτσι, μια μικρή καθυστέρηση καθώς αγόρασα ένα καινούργιο, ξανακόλλησα και διόρθωσα την άκρη. Πολύ καλύτερα.
Στη συνέχεια χρειάστηκε να μάθω πώς να μεταφέρω τα servos στο σωστό σημείο του ρολογιού. Αυτό θα έρθει στο Βήμα 5, αλλά αυτό που έκανα, χωρίς να φτιάξω το πραγματικό ρολόι, ήταν να βιδώσω ελαφρά τα servos σε ένα τυχαίο κομμάτι ξύλου και να κολλήσω κάποια ταινία κάλυψης με ένα βέλος πάνω τους, όπως στην εικόνα. Αυτό έδωσε μια πολύ οπτική ανατροφοδότηση σε αυτό που κωδικοποιούσα.
Βήμα 4: Εγκατάσταση του Κόμβου Κόκκινου (λήψη των μηνυμάτων από τον διακομιστή MQTT στο σενάριο Python σας)
Το Node-RED είναι ένα πρόγραμμα που εγκαθιστάτε στο Pi, το οποίο σας δίνει μια οπτική διεπαφή (στο πρόγραμμα περιήγησής σας) για να λαμβάνετε μηνύματα από τον διακομιστή MQTT και να τα χρησιμοποιείτε για να περάσετε τις σωστές πληροφορίες στο σενάριο python (καλύπτεται στο επόμενο βήμα (Βήμα 5). Χρησιμοποίησα πολύ τις οδηγίες του ppeters0502 στο Βήμα 5. Υπάρχει λογική σε αυτές τις ροές και επιπλέον λογική στον python, και μπορείτε να έχετε περισσότερο ή λιγότερο σε καθένα, ανάλογα με τις προτιμήσεις σας. Βασικά πρέπει να κάνετε το ακόλουθο
- Έχετε κόμβους λήψης για τα μηνύματα MQTT - αυτά είναι ανοιχτό μωβ και είχα 1 ανά μέλος της οικογένειας
- Αντιστοιχίστε το στο σερβο που θέλετε να μετακινήσετε (αριθμημένο 0, 1, 2, 3)
- Καθορίστε εάν εισέρχεστε ή εξέρχεστε από μια ακτίνα στο OwnTracks
-
Εξετάστε ποια τοποθεσία πρέπει να δείχνει ο σερβο
Υπήρχαν κάποιες εξαιρέσεις στους βασικούς κανόνες που έπρεπε να ενσωματώσω
- Ρυθμίστε σωστά τη γωνία
Είχα το Node-RED να κάνει τα πρώτα 4 και κράτησα το Python σχετικά απλό.
Μπορείτε να δείτε τη βασική ροή εδώ και όλες οι ροές μπορούν να εξαχθούν στη μορφή εδώ, πράγμα που σημαίνει ότι μπορείτε να εισαγάγετε αυτήν τη βασική ροή στο Node-RED και στη συνέχεια να προσαρμοστείτε. Σημειώστε ότι έχω αφαιρέσει όλες τις συνδέσεις από τους μωβ κόμβους, ώστε να μην έχετε πρόσβαση στην παρουσία μου MQTT. Αφαίρεσα επίσης όλους τους δοκιμαστικούς κόμβους καθώς περιέχουν πραγματικά δεδομένα … ίσως χρειαστεί να αλλάξετε αυτόν τον τύπο αρχείου σε flows.json για να εισαγάγετε στο Node-RED, αλλά το Instructables δεν με άφησε να το ανεβάσω.
Οι πράσινοι κόμβοι είναι κόμβοι εντοπισμού σφαλμάτων, οι οποίοι στη συνέχεια εμφανίζουν έξοδο στο παράθυρο εντοπισμού σφαλμάτων στα δεξιά της οθόνης (μπορεί να χρειαστεί επέκταση - βρείτε το βέλος στα μισά προς τα δεξιά)
Το πρώτο κομμάτι που πρέπει να κάνετε είναι το bit "Live - for debugging only". Αυτό ελέγχει ότι μπορείτε να λάβετε τα μηνύματα MQTT και να δείτε τι υπάρχει σε αυτά. Το json είναι απλώς μια πιο δομημένη έκδοση των μηνυμάτων που σας επιτρέπει να βγάζετε τα δεδομένα πιο εύκολα. Σε αυτήν τη ροή, όταν είναι ζωντανή, συνδέω τους μωβ κόμβους πάνω αριστερά στον κόμβο json στα δεξιά τους.
Δοκιμή κόμβων
Μόλις μάθετε πώς θα φαίνονται τα μηνύματα ζωντανά, είναι πολύ βαρετό να πρέπει να βγείτε από το σπίτι σας και να πάτε στο δρόμο και πίσω, μόνο και μόνο για να ενεργοποιήσετε ένα συμβάν. Μόλις το κάνετε αυτό, μπορείτε να αντιγράψετε το μήνυμα σε ένα κανόνα ΔΟΚΙΜΗΣ και, στη συνέχεια, απλώς κάντε κλικ για να προσομοιώσετε το συμβάν. Μπορείτε επίσης να αλλάξετε τα δεδομένα, για να προσποιηθείτε ότι είναι για διαφορετικές τοποθεσίες (βεβαιωθείτε ότι αντιστοιχούν ακριβώς στα ονόματα τοποθεσιών στα Owntracks).
Μπορείτε να δείτε στη ροή ότι οι δοκιμαστικές περιπτώσεις περνούν σε έναν ξεχωριστό κόμβο και στη συνέχεια πηγαίνει στον κόμβο json. Αυτό είναι καθαρά για να τακτοποιήσει την οθόνη.
Δεν μπορώ να τονίσω αρκετά πόσο χρήσιμοι ήταν και εξακολουθούν να είναι αυτοί οι κόμβοι.
Καλώντας την Python
Οπότε χτύπησα το επόμενο εμπόδιο. Αυτό χρειάστηκε πολύ googling σε φόρουμ κλπ. Η ροή μου θα λειτουργούσε τέλεια, αλλά δεν θα ενεργοποιούσε το python script μου. Δεν θα μπορούσα να το επιλύσω, αλλά θα σας γλιτώσω από τις βρισιές κλπ. Απλώς για να πω ότι, όπως επισημαίνεται στο δεύτερο στιγμιότυπο οθόνης, πρέπει να καθορίσετε το python3, όπως φαίνεται ότι το Node-RED υποθέτει python2, εκτός αν το καθορίσετε.
2 επιπλέον επιπλοκές - μόνο εάν χρειάζεται
Είχα τότε πολλές προκλήσεις όπου η λογική δεν λειτούργησε. Το πρώτο ήταν ότι το Owntracks έγινε λίγο περίεργο και, καθώς ο αδελφός μου ζει 2 δρόμους μακριά, έλεγε συχνά ότι ήμουν σε 2 μέρη ταυτόχρονα ή συνέχιζα να αλλάζω μεταξύ. Ο μόνος τρόπος που θα μπορούσα να το ξεπεράσω ήταν να προσθέσω σε μια κατάσταση για να σταματήσω τα ψευδώς θετικά. Αν ισχυριζόμουν ότι ήμουν στο σπίτι του, τότε πέρασα και έλεγξα το πραγματικό Γεωγραφικό μήκος/Γεωγραφικό πλάτος του μηνύματος και το διέκοψα αν έλεγε ότι ήμουν πραγματικά στο σπίτι.
Το άλλο πρόβλημα ήταν ότι, όταν περπατούσα το σκυλί μου δεν μπορούσα να πάρω μια καλή ακτίνα. Συνήθως περπατώ στην ίδια περιοχή, οπότε εδώ, είπα "αν μπω σε αυτήν την περιοχή, σίγουρα περπατάω το σκυλί και θα είμαι μέχρι να φτάσω στο σπίτι." αυτό σήμαινε ότι δεν θα μεταπηδήσει στην παμπ που περνάω στο δρόμο για το σπίτι, ή σε διάφορα άλλα τοπικά μέρη που θα μπορούσαν να προκαλέσουν την βόλτα με σκύλους. Για να το κάνω αυτό χρειάστηκε να δημιουργήσω κάποιες επίμονες μεταβλητές περιβάλλοντος (αναζητήστε τις στο Node-RED. Δείτε το στιγμιότυπο οθόνης. Αυτές οι μεταβλητές παραμένουν έως ότου επανεκκινηθεί το Node-RED και έτσι μπορώ να πω εάν σε μια βόλτα σκύλου, ορίστε τη μεταβλητή περιβάλλοντος στο "Dog". Στη συνέχεια αγνοήστε ΤΙΠΟΤΑ άλλο εκτός αν "Εισέλθω" στο σπίτι.
Το τελευταίο στιγμιότυπο οθόνης είναι αυτό της πραγματικής μου τελικής ροής, με όλες τις εξαιρέσεις, μόνο για το ενδιαφέρον σας.
Βήμα 5: Πραγματικά μετακίνηση Servos με Python στο Pi
Μια σύντομη εκτροπή στα servos. Δεν ήξερα τίποτα για servos, αλλά υπάρχουν πολλές πληροφορίες στο διαδίκτυο. Αυτά που χρησιμοποίησα είναι συνεχόμενα servos που μπορούν να γυρίσουν πάνω από 360 μοίρες και ομαλά. Το άλλο κύριο είδος είναι τα stepper servos που κινούνται σε κομμάτια (βήματα) και προφανώς ανεβαίνουν μόνο στους 180 μοίρες (σαφώς δεν είναι χρήσιμο εδώ). Το πλεονέκτημα των stepper servos είναι ότι μπορείτε απλά να τοποθετήσετε μια γωνία και να μετακινηθούν σε αυτό το σημείο και να σταματήσουν. Όλη η τεκμηρίωση που βρήκα έλεγε ότι τα συνεχή servos λειτουργούν με την παροχή ταχύτητας και χρόνου για τη διατήρηση αυτής της ταχύτητας (π.χ. πλήρη ταχύτητα για 1 δευτερόλεπτα) και καταλήγουν εκεί που καταλήγουν, αλλά είναι σχετικό με το σημείο εκκίνησης. Μετά από πολλές προσπάθειες, δεν κατάφερα να λειτουργήσει, αλλά ανακάλυψα, χρησιμοποιώντας τον πάγκο δοκιμής, ότι τα servos επέστρεφαν σταθερά στο ίδιο σημείο δεδομένης της ίδιας γωνίας. Αυτό είναι πολύ πιο εύκολο, οπότε το έκανα. Μπορεί να υπάρχει κάποιο μειονέκτημα για το οποίο δεν ξέρω, αλλά λειτουργεί για μένα. Σημειώστε, ωστόσο, ότι κάθε σερβο είναι μοναδικό και έτσι πρέπει να έχετε ένα μοναδικό σύνολο γωνιών για κάθε σερβο. Το βρήκα πιο εύκολο να έχω ένα σενάριο python «βαθμονόμησης», όπου θα μπορούσα να θέσω τα servos σε γωνίες με τη σειρά τους, βελτιώνοντάς τα μέχρι να φαίνονται όλα σωστά. Αυτό είναι το πρώτο σενάριο που επισυνάπτεται. Απλώς σχολιάζετε τα servos που δεν δοκιμάζετε, συγκεντρώνεστε σε ένα και στη συνέχεια προσαρμόζετε τις τιμές όπως χρειάζεστε. ΣΗΜΕΙΩΣΗ: η βαθμονόμηση για τον πάγκο δοκιμής είναι απλή και τραχιά και έτοιμη. Θα χρειαστεί να επαναβαθμονομήσετε όταν συναρμολογηθεί το ρολόι, επειδή τα γρανάζια κλπ θα αλλάξουν τα πάντα. Στη συνέχεια, το δεύτερο σενάριο είναι αρκετά βασικό. Κάνει τα εξής
- Εισαγάγετε μερικές βιβλιοθήκες
- μετακινήστε τις μεταβλητές που προέρχονται από το Node-RED σε μεταβλητές στο σενάριο
- αντιστοιχίζει τις γωνίες που καθορίζονται από το σενάριο βαθμονόμησης στις θέσεις του ρολογιού.
- βεβαιωθείτε ότι η τοποθεσία βρίσκεται στη λίστα και, εάν όχι, μεταβείτε στο "Κίνδυνος"
- γράψτε τι έγινε σε ένα αρχείο καταγραφής
- μετακινήστε το απαιτούμενο σερβο στην απαιτούμενη γωνία
- Σταματήστε ένα σερβο να μην «βουίζει» *
3 πράγματα που πρέπει να σημειωθούν.
Το αρχείο καταγραφής είναι εξαιρετικά χρήσιμο για εντοπισμό σφαλμάτων. Αυτό σημαίνει ότι μπορείτε να κοιτάξετε τον εντοπισμό σφαλμάτων Node-RED ενός μηνύματος και, στη συνέχεια, να δείτε τι συνέβη στο σενάριο. η έξοδος μοιάζει με αυτή. Οι 3 πρώτοι είναι εγώ που πάω τον σκύλο για βόλτα και μετά το παιδί 1 βγαίνω από το σπίτι και φτάνω στο σχολείο. Σημείωση για να ελέγξετε την ώρα στο Pi. Μπορεί να είναι προεπιλεγμένο σε UTC και να μην επιτρέπει αλλαγές θερινής/χειμερινής ώρας. Π.χ. οι παρακάτω ώρες είναι 1 ώρα έξω.
2020-12-07_05: 36: 03 Ποιος = 0, loc = Ταξίδι, λεπτομέρεια = Σπίτι, Γωνία = 10, δείκτης = 8
2020-12-07_05: 36: 04 Who = 0, loc = Dog, λεπτομέρεια = Astons, Angle = 86.5, index = 10
2020-12-07_06: 07: 49 Ποιος = 0, loc = Αρχική σελίδα, λεπτομέρεια = είσοδος, Γωνία = 75, δείκτης = 0
2020-12-07_06: 23: 53 Ποιος = 2, loc = Ταξίδι, λεπτομέρεια = Σπίτι, Γωνία = 19, δείκτης = 8
2020-12-07_06: 30: 48 Ποιος = 2, loc = σχολείο, λεπτομέρεια = N, γωνία = 60,5, δείκτης = 2
Σερβο-βουητό
Ένας από τους Servos (0) συνεχίζει να βουίζει μετά το τέλος του σεναρίου. Όπως μπορείτε να φανταστείτε, αυτό είναι εξαιρετικά ενοχλητικό να υπάρχει στην κουζίνα μας. Βρήκα ένα νήμα κάπου που ανέφερε τη ρύθμιση της γωνίας σερβο σε "κανένα", το οποίο με κάποιο τρόπο το θέτει σε αδράνεια. Αυτό λειτούργησε εξαιρετικά και φαίνεται στο σενάριο στο τέλος.
Χρονοδιαγράμματα
Λάβετε υπόψη πόσο χαμηλά χρειάζεται ένα χέρι για να σαρώνει όλο το εικοσιτετράωρο. Μπορείτε να δείτε στο σενάριο ότι υπάρχει μια γραμμή time.sleep (4) λίγο πριν ρυθμίσουμε το σερβο να σταματήσει να βουίζει. Αυτό συμβαίνει επειδή πρέπει να επιτρέψετε στο χέρι να φτάσει στον προορισμό του πριν το ρυθμίσετε σε αδράνεια. Διαφορετικά σταματάει. Αυτό είναι επίσης σημαντικό κατά τη βαθμονόμησή του, επειδή κάνετε πολλαπλές κινήσεις εντός του σεναρίου. Θα το έβαζα σε λειτουργία για να μετακινηθώ και στις 12 τοποθεσίες με τη σειρά, έτσι ώστε να μπορώ να τους ελέγξω ξανά όλους. αλλά χρειάζεστε λίγο χρόνο ενδιάμεσα.
Βήμα 6: Ολοκλήρωση του Λογισμικού - Τηλέφωνα σε Servos
Μόλις ρυθμίσετε τον πάγκο δοκιμών και τα σενάρια, τότε μπορείτε να το εκτελέσετε «ζωντανά» για λίγο και να δείτε πώς λειτουργεί σε πραγματικό χρόνο. Εδώ βρήκα τις εξαιρέσεις που έπρεπε να προσθέσω στη ροή Node-RED.
Μπορείτε εύκολα να αποσυνδέσετε και να συνδέσετε μέλη της οικογένειας στη ροή Node-RED εάν θέλετε να συγκεντρωθείτε σε ένα. Για παράδειγμα, εάν δύο προκαλούν προβλήματα, αλλά θέλετε να διορθώσετε ένα κάθε φορά. Διαφορετικά, λάβετε υπόψη ότι θα συνεχίσετε να λαμβάνετε μηνύματα από τυχόν συνδεδεμένα τηλέφωνα.
Ανέφερα το πρόβλημα με το περπάτημα σκύλων και το σπίτι του αδελφού μου να είναι αρκετά κοντά. Είχα άλλες 2 προκλήσεις.
Πρώτον, τοποθεσίες σε άλλες τοποθεσίες. Η γυναίκα μου έκανε μαθήματα σε κολέγιο στο Λονδίνο. Θέλαμε να εγγραφεί ως "School", αλλά είναι επίσης στο "London". Χρειάστηκε λοιπόν να ξαναχρησιμοποιήσουμε το πλαίσιο για να πούμε ότι αν φεύγεις από αυτό το «Σχολείο», τότε πήγαινε στο «Λονδίνο» και όχι στο «Ταξιδεύοντας».
Δεύτερον, οι συνθήκες του αγώνα. Όπως αναφέρθηκε, το σπίτι του αδελφού μου είναι 2 δρόμοι μακριά, και επίσης κοντά στην αγαπημένη μας παμπ/εστιατόριο. Αυτό σημαίνει ότι μερικές φορές λαμβάνονται 2 σήματα ταυτόχρονα ή πολύ κοντά μεταξύ τους. Αυτό μπορεί να δημιουργήσει μια «συνθήκη αγώνα» όπου θα έχετε διαφορετικά αποτελέσματα ανάλογα με το ποια θα περάσει πιο γρήγορα τη λογική, οδηγώντας σε απρόβλεπτα αποτελέσματα. Για να το αντιμετωπίσω αυτό, έκανα όλα τα μηνύματα «εισόδου» να έχουν 1s καθυστέρηση στη λογική, η οποία φαινόταν να επιλύει το πρόβλημα. Μπορεί να υπάρχουν καλύτεροι, πιο κομψοί τρόποι για να λυθεί αυτό, αλλά φάνηκε να λειτουργεί.
Βήμα 7: Χτίζοντας το φυσικό ρολόι - Μέρος Ι - το Servos & Axle
Τώρα το κομμάτι για το οποίο ήμουν λιγότερο σίγουρος, γι 'αυτό το άφησα στο τελευταίο. Wantedθελα ένα αξιοπρεπές μέγεθος προσώπου και εύκολη κατασκευή. Wasμουν επίσης νευρικός για το ότι πήρα σωματικά 2 servos στον κεντρικό άξονα. Αυτό σήμαινε ότι, έχοντας κοιτάξει εν συντομία το ebay για παλιά ρολόγια, όπως στο διδακτικό που ακολουθούσα, αποφάσισα να δώσω περισσότερες ευκαιρίες στον εαυτό μου, φτιάχνοντάς το μόνος μου.
- Πήρα 2 μεγάλα τετράγωνα (~ 30 εκατοστά) από κόντρα πλακέ που είχα γύρω μου (πάχους περίπου 9 χιλιοστών).
- Στη συνέχεια έκοψα μια παλιά κάγκελα σε τμήματα 4x10cm και βίδωσα την μπροστινή και την πλάτη μαζί.
- Έχοντας επισημάνει την κεντρική τρύπα, τη διάτρησα για να έχει το ίδιο μέγεθος με τον μεγαλύτερο σωλήνα από ορείχαλκο.
- Στη συνέχεια το έβαψα με κανονικό λευκό γυαλιστερό χρώμα.
- Μετά από κάποιους πειραματισμούς συνειδητοποίησα ότι πιθανότατα δεν θα μπορούσα να πάρω 4 σερβίτσια γύρω από τον ίδιο άξονα αν ήταν όλα προσαρτημένα στην πίσω (ή μπροστινή) πλάκα. Έτσι έπρεπε να έχω είτε 3 + 1 είτε 2 + 2, σε κάθε πιάτο. Κατέληξα με 3 πίσω και 1 μπροστά.
- Δούλεψα τις αντισταθμίσεις που απαιτούνται σε ένα κομμάτι χαρτί και έπειτα έκοψα τους σωλήνες από ορείχαλκο για να ταιριάζουν. Σημειώστε ότι ο παχύτερος σωλήνας είναι ο πιο κοντός και ο πιο λεπτός πρέπει να φτάσει μέχρι την πίσω πλάκα. (Στην πραγματικότητα ενσωμάτωσα το μικρότερο σε μια τρύπα που τρύπησα εν μέρει στην πίσω πλάκα, αλλά όχι μέχρι το τέλος, ώστε ο άξονας να μην κινείται προς τα πίσω).
- Για τους σωλήνες, αγόρασα έναν κόφτη σωλήνων, αλλά αυτό χρησιμοποιεί πίεση για να τους κόψει και αυτό σημαίνει ότι δεν μπορείτε να πάρετε τον μικρότερο σωλήνα μέσα. Έτσι χρησιμοποίησα ένα σιδηροπρίονο και στη συνέχεια έπρεπε να κάνω μια σωστή κατάθεση για να τους κάνω να δουλέψουν. Τα αρχεία με διαμάντια ήταν ανεκτίμητα εδώ.
- Στη συνέχεια, ταίριαξα το διάγραμμα με τις πραγματικές αντισταθμίσεις για τους σφιγκτήρες και τα γρανάζια *.
- Μόλις είχα τις αντισταθμίσεις, ήξερα πόσο "ψηλά" να φτιάξω τα μπλοκ για να τοποθετήσω τα servos. Έσπασα μερικά τετράγωνα βλέποντάς τα πολύ λεπτά και επίσης τρυπούσα την τρύπα για να αφήσω το καλώδιο να βγει.
- Στη συνέχεια, ήρθε το άκαμπτο μέρος του πού να τοποθετήσετε τα μπλοκ έτσι ώστε να συναντήσουν ακριβώς τα γρανάζια στον άξονα. Βίδωσα το ένα μπλοκ και στη συνέχεια θα μπορούσα να περιστρέψω το σερβο για να συναντήσει τον άξονα και στη συνέχεια να βιδώσω το δεύτερο μπλοκ το άλλο άκρο του σερβο. Διαπίστωσα επίσης ότι έπρεπε να κόψω λίγο από μερικά τετράγωνα για να αποφύγω να κολλήσω άλλα γρανάζια. Πέρασε αρκετή ώρα.
- Μόλις τα έκανα όλα αυτά, πήρα τη θήκη μου raspberry pi, τρύπησα δύο τρύπες και το βίδωσα στην μπροστινή πλάκα. Στη συνέχεια, μπορούσα να προσθέσω το Pi μέσα, να κλείσω την μπροστινή και την πίσω πλάκα (έχοντας συνδέσει τα servos με το pi (θυμόμαστε ποιο σερβο ήταν για ποιο μέλος της οικογένειας) και να γυρίσω στα χέρια…
* Εδώ βρήκα το μεγαλύτερο πρόβλημα, το οποίο δεν έχω ακόμη λύσει πλήρως. Οι χάλκινοι σωλήνες ήταν, 1/4 ", 7/32", 3/16 ", 5/32". Αλλά οι σφιγκτήρες ήταν μετρικοί (εκτός από έναν που ήταν 1/4 "). Μετατρέποντας τους σωλήνες σε μετρικούς ήταν 6,35mm, 5,56mm, 4,76mm 3,97mm. Οι υπόλοιποι σφιγκτήρες ήταν διάμετρος 4mm, 5mm και 6mm. Οι μικρότεροι 2 και οι τα μεγαλύτερα είναι εντάξει. αλλά σαφώς το 0,44mm είναι πολύ μεγάλο ταξίδι για τον σφιγκτήρα, οπότε έπρεπε να το βάλω με χαρτί. Το έχω δοκιμάσει αρκετές φορές και λειτουργεί εντάξει για λίγο και μετά χαλαρώνει ξανά. Έτσι, το 2ο μεγαλύτερο το χέρι αποτυγχάνει να λειτουργήσει σωστά. wasταν καλά για περίπου 6 μήνες όμως, οπότε ο χρόνος που δαπανήθηκε για να γίνει αυτό ήταν σωστά επενδυμένος χρόνος. Αλλά αν το ξαναέκανα ίσως είχα πάει 1 μέγεθος πάνω ή κάτω, με ένα κενό να προσπαθήσω καλύτερη προσαρμογή σφιγκτήρα σε σωλήνα. π.χ. πηγαίνετε για 9/32 ", 1/4", (διάκενο), 3/16 ", 5/32"
Βήμα 8: Τα χέρια του ρολογιού
Αποφάσισα για φύλλο χάλυβα καθώς ήθελα κάτι άκαμπτο αλλά λιγότερο πιθανό να σπάσει ενώ το έφτιαχνα. Επίσης το να είσαι αδύνατος σήμαινε ότι τα 4 χέρια ήταν λιγότερο θέμα.
- Αρχικά σκιαγράφησα ένα σχήμα.
- Στη συνέχεια, το μετέφερα στο ατσάλι πάνω από μια ταινία κάλυψης.
- Τότε πολύ άπειρα τα έκοψα με το παζλ μου. Wereταν και είναι, όλοι διαφορετικοί, αλλά δεν με πειράζει αυτό.
- Τότε ένας φίλος μου πρότεινε να δανειστώ τον μύλο του πάγκου του για να τους πλάσω, και αυτό ήταν υπέροχο. συνιστάται. Διαφορετικά, η κατάθεση παίρνει αιώνες.
- Υπήρχε ακόμα λίγη αρχειοθέτηση και στη συνέχεια τρίψιμο για να εξασφαλιστεί ότι δεν υπάρχουν αιχμηρές άκρες και επίσης ένα ωραίο φινίρισμα.
- Έπρεπε να ανοίξω τρύπες για να ταιριάζουν με τους αντίστοιχους ορειχάλκινους σωλήνες (χρησιμοποιήστε σωλήνες εκτός λειτουργίας για έλεγχο, όχι τους τοποθετημένους στο ρολόι).
- Διαπίστωσα ότι οι τρύπες χρειάζονταν λίγη λίπανση για να τις βάλουμε στους σωλήνες, αλλά μια φορά ήταν σφιχτές και δεν χρειάζονταν κόλλα. Η εξαίρεση ήταν το μπροστινό χέρι που ήθελα να έχω ένα «εξώφυλλο». Έτσι έκοψα ένα (κυρίως) στρογγυλό κομμάτι χάλυβα, αφού τρύπωσα την τρύπα και το πήρα στο σωστό μέγεθος και το κόλλησα υπερβολικά στο μπροστινό μέρος. μπορείτε να το δείτε στην τελευταία εικόνα. Περιστασιακά, το μπροστινό χέρι θα χρειαζόταν μια κόλλα για να το ασφαλίσει, αλλά μετά από μερικές ψευδείς εκκινήσεις τα χέρια λειτουργούν πολύ καλά.
- Είχα απορρίψει την ιδέα των φωτογραφιών (επειδή τα παιδιά θα παραπονιόντουσαν για τις φωτογραφίες μας με ραντεβού γρήγορα), οπότε ασχολήθηκα με τη ζωγραφική σε αρχικά με ακρυλικό χρώμα.
Βήμα 9: Ολοκληρώστε
Όλα λειτουργούν πραγματικά ωραία. Τα χέρια μερικές φορές είναι λίγο μακριά, ανάλογα από πού προέρχονται, αλλά στην πραγματικότητα δεν έχει σημασία γιατί κάθε τοποθεσία είναι ένα τμήμα όχι μόνο μια γραμμή.
Μερικές φορές, περιέργως, το τηλέφωνό μου αρνείται να αναγνωρίσει ότι είμαι στο σπίτι. Είμαι σαφώς εντός της ακτίνας Owntracks όταν εμφανίζεται στο χάρτη και ακόμη και όταν η ακρίβεια είναι καλή … Δεν έχω ιδέα γιατί. δεν φαίνεται να ταλαιπωρεί την υπόλοιπη οικογένειά μου. αλλά το στήσιμο είναι το ίδιο. Αυτό σημαίνει ότι το Owntracks δεν στέλνει ποτέ μήνυμα και κολλάω στο 'Traveling'. Συνήθως όμως τακτοποιείται τελικά.
Superταν εξαιρετικά χρήσιμο να έχουμε στην κουζίνα μας, κυρίως για να γνωρίζουμε πότε τα κορίτσια πηγαίνουν σπίτι από το σχολείο ή από τα σπίτια των φίλων τους, και έτσι πότε πρέπει να έχουν έτοιμο φαγητό/τσάι για αυτά.
Και πάλι, ένα μεγάλο hat-tip ευχαριστώ στον @ppeters0502 για τις υπέροχες οδηγίες που πρέπει να ακολουθήσετε. Ας ελπίσουμε ότι αυτά μπορούν να προσθέσουν κάτι κάνοντας ένα ρολόι με 4 δείκτες.
Βήμα 10: Πράγματα που έμαθα και θα έκανα καλύτερα/διαφορετικά αν έπρεπε να το κάνω ξανά
- Οι φυσικές κατασκευές χρειάζονται δοκιμή και λάθος. Δεν υπάρχει τρόπος να προβλέψετε τα προβλήματα του χώρου, απλά πρέπει να βουτήξετε και να προσπαθήσετε.
- Για τον κώδικα, τα προβλήματα στο googling είναι απαραίτητα
- Ξεκινήστε βασικά και δημιουργήστε. Τα σερβο σε δοκιμαστικό ξύλο πάγκου σήμαιναν ότι θα μπορούσα να κάνω το μεγαλύτερο μέρος του να λειτουργεί χωρίς τη φυσική κατασκευή
- Μπορεί να έκοψα τα χέρια με λέιζερ σε μηχανή CNC. Αλλά δεν ήξερα πού ήταν το τοπικό και μου αρέσει πώς λειτούργησε ο μαλακός χάλυβας (ήταν φθηνό και ο μύλος πάγκων το έκανε πολύ πιο εύκολο)
- ένα βηματικό μοτέρ μπορεί να είναι εφικτό εάν χρησιμοποιείτε το γρανάζι για να κάνετε 360 στροφές. αλλά τότε μπορεί να χρειαστεί να έχετε τα servos πολύ κοντά στον κεντρικό άξονα
- Υπάρχουν 2 τύποι servo (Futaba & HiTech). Βεβαιωθείτε ότι το έχετε ελέγξει καθώς έχουν διαφορετικό αριθμό δοντιών στο νάρθηκα. Και αγόρασα λάθος στην αρχή…
- Μην συνδέετε το καπέλο με λάθος πολικότητα;-)
- Το Google και το Stack Overflow είναι φίλοι σας όταν κολλήσετε. Αλλά πρέπει να χρησιμοποιήσετε καλούς όρους αναζήτησης…
- Ο δοκιμαστικός πάγκος είναι στην πραγματικότητα ένας τρόπος με τον οποίο μπορείτε να πάρετε μια απλούστερη, φθηνότερη έκδοση πολύ πιο εύκολα. Το μεγαλύτερο μέρος της επιπλοκής με την κατασκευή προέρχεται από την ανάγκη περιστροφής των χεριών γύρω από τον ίδιο άξονα. Εάν συμβιβαστείτε σε αυτό, τότε όλα είναι πολύ πιο εύκολα. Και νομίζω ότι το 4 μπορεί να είναι το όριο του ενιαίου άξονα εκτός αν ο άξονας μακρύνει πολύ. Θα μπορούσατε, υποθέτω ότι έχετε 3 στην μπροστινή πλάκα και τρία στην πίσω πλάκα εάν ο άξονας ήταν μακρύτερος…
Βήμα 11: Πιθανές μελλοντικές επεκτάσεις…;
Οι ιδέες που είχα για τα επόμενα βήματα είναι οι εξής.
- Θα ήθελα να επαναπροσδιορίσω ένα παλιό iPad ως όψη ρολογιού. δηλ. φτιάξτε ένα ψηφιακό ρολόι. Ενδεχομένως να βασίζεται σε πρόγραμμα περιήγησης ή σε εφαρμογή. Καθώς ένα φυσικό ρολόι είναι ουσιαστικά χωρίς καθεστώς απραξίας (δηλ. Δεν γνωρίζει πού βρίσκεται αυτή τη στιγμή, εκτός από το ότι τα χέρια είναι σε φυσική θέση) θα χρειαζόταν να έχω μια επίμονη αποθήκευση δεδομένων. Το Node Red μπορεί να γράψει στο τοπικό σύστημα αρχείων, οπότε μάλλον θα το έκανα.
- Αν το έκανα αυτό, τότε θα ήθελα να μπορώ να το βλέπω έξω από το σπίτι. Αλλά τότε πρέπει πραγματικά να τακτοποιήσουμε την ασφάλεια. Επειδή η πρόσβαση στο ίδιο δίκτυο wifi είναι ένα πράγμα, η πρόσβαση από το Διαδίκτυο είναι άλλο. Προς το παρόν δεν έχω ιδέα για το πώς να το κάνω καλύτερα, αλλά υποψιάζομαι ότι μια συνδρομή MQTT που θα μπορούσε να λειτουργήσει με τον άλλο τρόπο (το pi δημοσιεύει την τρέχουσα κατάσταση και οι εξωτερικές συσκευές εγγραφούν σε αυτό)…;
- Θα ήθελα πολύ το ένα χέρι για το «Εξωτερικό». αλλά αυτό θα μπορούσε να είναι περίπλοκο από την άποψη της OwnTracks. Maybeσως θα μπορούσε να χρησιμοποιηθεί απλώς long/lat σε συνδυασμό με μερικές τεράστιες ακτίνες;
Συνιστάται:
Σύστημα τοποθεσίας αποθήκευσης αντιστάσεων "Resys": 7 βήματα (με εικόνες)
Σύστημα τοποθεσίας αποθήκευσης αντιστάσεων "Resys": Αυτό είναι ένα σύστημα που διευκολύνει την εύρεση των αντιστάσεων σας. Αναζητήστε την επιθυμητή τιμή και ανάβει το σωστό συρτάρι. Αυτό το σύστημα μπορεί να επεκταθεί στους επιθυμητούς αριθμούς συρταριών
Ρολόι συνταξιοδότησης / Καταμέτρηση / Ρολόι Dn: 4 βήματα (με εικόνες)
Ρολόι συνταξιοδότησης / Count Up / Dn Clock: Είχα μερικές από αυτές τις οθόνες 8x8 LED με κουκκίδες στο συρτάρι και σκεφτόμουν τι να κάνω με αυτές. Εμπνευσμένο από άλλες οδηγίες, μου ήρθε η ιδέα να δημιουργήσω μια οθόνη αντίστροφης μέτρησης/ανύψωσης για να μετράω αντίστροφα σε μια μελλοντική ημερομηνία/ώρα και αν ο στόχος είναι
C51 4 Bits Ηλεκτρονικό Ρολόι - Ξύλινο Ρολόι: 15 Βήματα (με Εικόνες)
C51 4 Bits Ηλεκτρονικό Ρολόι - Ξύλινο Ρολόι: Είχα λίγο ελεύθερο χρόνο αυτό το Σαββατοκύριακο, έτσι προχώρησα και συναρμολόγησα αυτό το ηλεκτρονικό ψηφιακό ρολόι 4 -bit DIY 2,40 AU $ 2,40 που αγόρασα από την AliExpress πριν από λίγο
Κάποιος με αγαπά Ρολόι τοποθεσίας: 6 βήματα (με εικόνες)
Κάποιος με αγαπά το ρολόι τοποθεσίας: Με αγαπημένα πρόσωπα στο εξωτερικό ή εκτός κράτους τίποτα δεν λέει ότι σκέφτομαι για εσάς καλύτερα από το να ξέρω πάντα τι ώρα είναι γι 'αυτούς! Οι συνταξιούχοι πεθεροί μου ετοιμαζόταν να υπηρετήσει μια εκκλησιαστική αποστολή στο Βερολίνο της Γερμανίας και η σύζυγός μου κατέληξε στο
Πώς να δώσετε ένα ρολόι τοίχου φωτεινά χέρια και δείκτες χρονικού διαστήματος: 14 βήματα (με εικόνες)
Πώς να δώσετε ένα ρολόι τοίχου φωτεινά χέρια και δείκτες χρονικού διαστήματος: Θέλαμε ένα ρολόι τοίχου υπνοδωματίου με φωτεινούς δείκτες και οθόνη διαστημάτων πέντε λεπτών και τετάρτης ώρας. Έπρεπε να διαβάζεται αβίαστα από το κρεβάτι και η φωτεινότητα έπρεπε να διαρκέσει όλη τη νύχτα. Το φωτεινό χρώμα που χρησιμοποιείται στα μοντέρνα ρολόγια τείνει