Πίνακας περιεχομένων:
- Βήμα 1: Υλικά και εξαρτήματα
- Βήμα 2: Σχεδιάστε ένα βραχιολάκι
- Βήμα 3: Ηλεκτρονικές συνδέσεις
- Βήμα 4: Ο κώδικας
- Βήμα 5: Συνολική συναρμολόγηση
- Βήμα 6: Βίντεο
- Βήμα 7: Συμπέρασμα
Βίντεο: Φορετό - Τελικό έργο: 7 βήματα
2024 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2024-01-30 08:34
ΕΙΣΑΓΩΓΗ
Σε αυτό το έργο είχαμε το καθήκον να φτιάξουμε ένα λειτουργικό φορετό πρωτότυπο βασισμένο σε λειτουργίες cyborg. Γνωρίζατε ότι η καρδιά σας συγχρονίζεται με το BPM της μουσικής; Μπορείτε να προσπαθήσετε να ελέγξετε τη διάθεσή σας μέσω της μουσικής, αλλά τι γίνεται αν αφήσουμε την τεχνολογία να μας βοηθήσει να ηρεμήσουμε; Χρειαζόμαστε μόνο μερικά εξαρτήματα, ένα Arduino και τα ακουστικά σας. Ας καινοτομήσουμε!
Έργο των Marc Vila, Guillermo Stauffacher και Pau Carcellé
Βήμα 1: Υλικά και εξαρτήματα
ΚΑΤΑΣΚΕΥΑΣΤΙΚΑ ΥΛΙΚΑ:
- τρισδιάστατο τυπωμένο βραχιόλι
Βίδες M3 (x8)
Μ3 παξιμάδια (x12)
- Πακέτο Fanny
Ηλεκτρονικά υλικά:
-Αισθητήρας ρυθμού καρδιάς BPM
- Κουμπιά (x2)
- Ποτενσιόμετρο
- ΜΟΝΑΔΑ LCD C 1602
MODULE DFPLAYER MINI MP3
- Στερεοφωνικό ακουστικό Jack Stereo TRRS 3,5 mm
- Κάρτα MicroSD
- Πιάτο Arduino Uno
- Συγκολλητής
- Πιάτο βακελίτη
Βήμα 2: Σχεδιάστε ένα βραχιολάκι
Πρώτα κάνουμε πολλά σκίτσα για να οργανώσουμε τα διαφορετικά εξαρτήματα στο βραχιολάκι.
Με τη σαφή ιδέα, κάναμε μετρήσεις των τριών βραχιόνων των μελών της ομάδας, στη συνέχεια κάναμε τον μέσο όρο για να βρούμε το βέλτιστο μέτρο για το σχέδιο. Τέλος σχεδιάζουμε το προϊόν με ένα τρισδιάστατο πρόγραμμα και το εκτυπώνουμε με έναν 3D εκτυπωτή.
Μπορείτε να κατεβάσετε τα αρχεία. STL εδώ.
Βήμα 3: Ηλεκτρονικές συνδέσεις
Συνεχίζουμε να κάνουμε τους απαραίτητους ελέγχους του τρισδιάστατου σχεδιασμού μας, κάναμε μια πρώτη συναρμολόγηση όλων των εξαρτημάτων στο πρωτότυπο για να δούμε ότι οι μετρήσεις ήταν σωστές.
Για να συνδέσουμε όλα τα εξαρτήματα στον πίνακα Arduino, πραγματοποιήσαμε διαφορετικές συνδέσεις από τα εξαρτήματα χρησιμοποιώντας καλώδια 0, 5 μέτρων, με αυτόν τον τρόπο μειώνουμε την ορατότητα της πλακέτας και οργανώνουμε καλύτερα το πρωτότυπο.
Βήμα 4: Ο κώδικας
Αυτό το έργο είναι ένα πρωτότυπο cyborg. Προφανώς δεν έχουμε εισαγάγει τα εξαρτήματα κάτω από το δέρμα, οπότε το έχουμε προσομοιώσει με ένα βραχιόλι ως όρθωση (εξωτερική συσκευή που εφαρμόζεται στο σώμα για να τροποποιήσει τις λειτουργικές πτυχές).
Ο κωδικός μας λαμβάνει τα πλήκτρα του χρήστη και τα εμφανίζει χρησιμοποιώντας την οθόνη LCD. Εκτός από το BPM, η οθόνη δείχνει την επιθυμητή ένταση, ώστε ο χρήστης να μπορεί να τη συγκρίνει με τον καρδιακό του ρυθμό. Υπάρχουν πολλές καταστάσεις όπου είναι ενδιαφέρον να αυξήσετε ή να μειώσετε το δικό σας BPM. Για παράδειγμα, οι αθλητές αντοχής πρέπει να ελέγχουν τους παλμούς για να μην κουράζονται υπερβολικά. Ένα καθημερινό παράδειγμα θα ήταν να θέλετε να κοιμηθείτε ή να ηρεμήσετε σε μια νευρική κατάσταση. Θα μπορούσε επίσης να εφαρμοστεί ως θεραπευτική μέθοδος για άτομα με αυτισμό για να μειώσουν το άγχος που αισθάνονται. Δίπλα στην οθόνη υπάρχουν δύο κουμπιά για τον έλεγχο της επιθυμητής έντασης και την αύξηση ή μείωση του καρδιακού ρυθμού. Ανάλογα με την ένταση, παίζεται ένα είδος μουσικής που έχει μελετηθεί προηγουμένως. Υπάρχουν μελέτες που δείχνουν ότι η μουσική μπορεί να αλλάξει το BPM. Σύμφωνα με τους Beats per Minute του τραγουδιού, το ανθρώπινο σώμα μιμείται και ταιριάζει με αυτά τα BPM.
int SetResUp = 11; // καρφίτσα 10 του Arduino με κουμπί αύξησης έντασης.int SetResDown = 12; // καρφίτσα 11 του Arduino με κουμπί μείωσης έντασης
int ResButtonCounter = 0; // time counter που αυξάνει ή μειώνει τη ρύθμιση αντίστασης, αρχική τιμή 0 int ResButtonUpState = 0; // τρέχουσα κατάσταση του κουμπιού αύξησης της έντασης int ResButtonDownState = 0; // τρέχουσα κατάσταση του κουμπιού μείωσης έντασης int lastResButtonUpState = 0; // τελευταία κατάσταση του κουμπιού αύξησης της έντασης int lastResButtonDownState = 0; // τελευταία κατάσταση του κουμπιού μείωσης έντασης
int pulsePin = 0; // Αισθητήρας παλμών συνδεδεμένος στη θύρα A0 // Αυτές οι μεταβλητές είναι ασταθείς επειδή χρησιμοποιούνται κατά τη διάρκεια της ρουτίνας διακοπής στη δεύτερη καρτέλα. πτητικό int BPM; // Ρυθμοί ανά λεπτό πτητικό int Σήμα; // Εισαγωγή δεδομένων αισθητήρα παλμού πτητικό int IBI = 600; // Χρόνος παλμού πτητικό boolean Pulse = false; // True όταν το κύμα παλμών είναι υψηλό, ψευδές όταν είναι Low volatile boolean QS = false?
# define Start_Byte 0x7E # define Version_Byte 0xFF # define Command_Length 0x06 # define End_Byte 0xEF # define Αναγνώριση 0x00 // Επιστρέφει πληροφορίες με εντολή 0x41 [0x01: info, 0x00: no info]
// PANTALLA #include // Ανεβάστε τη βιβλιοθήκη για τις λειτουργίες της οθόνης LCD #include #include
LiquidCrystal LCD (7, 6, 5, 4, 3, 2); // Δηλώστε τις θύρες στις οποίες είναι συνδεδεμένη η οθόνη LCD
// LECTOR #include #include // Ανεβάστε τη βιβλιοθήκη για τις λειτουργίες της μονάδας dfplayer mini MP3.
char serialData; int nsong; int v;
SoftwareSerial comm (9, 10); // Δηλώστε τις θύρες όπου είναι συνδεδεμένο το DFPlayer DFRobotDFPlayerMini mp3.
void setup () {Serial.begin (9600); pinMode (SetResUp, INPUT); pinMode (SetResDown, INPUT);
// Ορίστε τις διαστάσεις της οθόνης LCD (16x2) lcd.begin (16, 2). // Επιλέγουμε σε ποια στήλη και σε ποια γραμμή αρχίζει να εμφανίζεται το κείμενο // LECTOR comm.begin (9600).
mp3.αρχή (comm); // Το συστατικό ξεκινά serialData = (char) (('')); mp3.start (); Serial.println ("Παίξτε"); // Αναπαραγωγή τραγουδιού mp3.τόμος (25). // Ορισμός έντασης}
void loop () {if (digitalRead (11) == LOW) {mp3.next (); // Εάν πατηθεί το κουμπί, το τραγούδι περνάει} if (digitalRead (12) == LOW) {mp3.previous (); // Εάν πατηθεί το κουμπί, το προηγούμενο τραγούδι} // if (SetResUp && SetResDown == LOW) {
int pulso = analogRead (A0); // Διαβάστε την τιμή του μετρητή καρδιακών παλμών που είναι συνδεδεμένος στην αναλογική θύρα A0
Serial.println (pulso/6); εάν (QS == true) {// Flag of Quantified Self είναι true όπως η αναζήτηση arduino το BPM QS = false? // Επαναφορά της σημαίας του Quantified Self}
lcd.setCursor (0, 0); // Εμφάνιση του επιθυμητού κειμένου lcd.print ("BPM:"); lcd.setCursor (0, 1); // Εμφάνιση του επιθυμητού κειμένου lcd.print ("INT:"); lcd.setCursor (5, 0); // Εμφάνιση του επιθυμητού κειμένου lcd.print (pulso); lcd.setCursor (5, 1); // Εμφάνιση του επιθυμητού κειμένου lcd.print (ResButtonCounter); καθυστέρηση (50)? lcd.clear (); ResButtonUpState = digitalRead (SetResUp); ResButtonDownState = digitalRead (SetResDown);
// συγκρίνετε το TempButtonState με την προηγούμενη κατάστασή του
εάν (ResButtonUpState! = lastResButtonUpState && ResButtonUpState == LOW) {// αν άλλαξε η τελευταία κατάσταση, αυξήστε τον μετρητή
ResButtonCounter ++; }
// αποθηκεύστε την τρέχουσα κατάσταση ως τελευταία κατάσταση, // για την επόμενη φορά που εκτελείται ο βρόχος lastResButtonUpState = ResButtonUpState;
// συγκρίνετε την κατάσταση του κουμπιού (αύξηση ή μείωση) με την τελευταία κατάσταση
εάν (ResButtonDownState! = lastResButtonDownState && ResButtonDownState == LOW) {
// εάν η τελευταία κατάσταση άλλαξε, μειώστε τον μετρητή
ResButtonCounter--; }
// αποθηκεύστε την τρέχουσα κατάσταση ως την τελευταία κατάσταση, // για την επόμενη φορά που εκτελείται ο βρόχος lastResButtonDownState = ResButtonDownState; {Serial.println (ResButtonCounter);
εάν (ResButtonCounter> = 10) {ResButtonCounter = 10; }
εάν (ResButtonCounter <1) {ResButtonCounter = 1; }
}
}
Βήμα 5: Συνολική συναρμολόγηση
Με τον κωδικό προγραμματισμένο σωστά και τα δύο μέρη του πρωτοτύπου μας έχουν ήδη συναρμολογηθεί. Βάζουμε όλα τα εξαρτήματα στη θέση τους και το ενώνουμε με ταινία για να το στερεώσουμε στο βραχιόλι. Τα εξαρτήματα που βρίσκονται στο βραχιόλι είναι το Heart Rate Sensor BPM, τα δύο κουμπιά, το ποτενσιόμετρο και η οθόνη LCD, το καθένα στην αντίστοιχη τρύπα που είχε σχεδιαστεί προηγουμένως στο αρχείο 3D. Με το πρώτο μέρος που ολοκληρώθηκε, εστιάζουμε στο protoboard, κάθε σύνδεσμος στη σωστή ακίδα του πίνακα Arduino. Τέλος, με την επαληθευμένη λειτουργία κάθε εξαρτήματος, το βάζουμε στο fanny pack για να κρύψει τα καλώδια.
Βήμα 6: Βίντεο
Βήμα 7: Συμπέρασμα
Το πιο ενδιαφέρον πράγμα σε αυτό το έργο είναι να μάθεις να μιμείται το ανθρώπινο σώμα ασυνείδητα με μουσική. Αυτό ανοίγει την πόρτα σε πολλές επιλογές για μελλοντικά έργα. Νομίζω ότι αυτό είναι ένα ολοκληρωμένο έργο, έχουμε αρκετά μεγάλη ποικιλία στοιχείων με επεξεργασμένο κώδικα. Αν ξεκινήσουμε ξανά θα σκεφτόμασταν άλλες εναλλακτικές λύσεις ή θα τις αγοράζαμε καλύτερης ποιότητας. Είχαμε πολλά προβλήματα με σπασμένα καλώδια και συγκολλήσεις, είναι μικρά και πολύ ευαίσθητα (ειδικά το BPM). Από την άλλη πλευρά, πρέπει να είστε προσεκτικοί όταν συνδέετε τα εξαρτήματα, έχουν πολλές εξόδους και είναι εύκολο να κάνετε λάθη.
Είναι ένα πολύ εμπλουτισμένο έργο στο οποίο έχουμε αγγίξει μια μεγάλη ποικιλία επιλογών υλικού και λογισμικού Arduino.
Συνιστάται:
Φορετό ηλεκτρονικό σήμα: 6 βήματα (με εικόνες)
Φορετό ηλεκτρονικό σήμα: Εδώ είναι ένα μεγάλο έργο που πρέπει να αναλάβετε εάν σκοπεύετε να πάτε σε μια συνάντηση υλικού/Python ή σκοπεύετε να πάτε στο τοπικό σας Makerfaire. Φτιάξτε ένα φορετό ηλεκτρονικό σήμα, το οποίο βασίζεται σε Raspberry Pi Zero και PaPiRus pHAT eInk οθόνη. Μπορείτε να ακολουθήσετε
Φορετό σύστημα υγειονομικής περίθαλψης με χρήση IOT: 8 βήματα
Φορετό σύστημα υγειονομικής περίθαλψης με χρήση IOT: Στην παρούσα εργασία, οι αισθητήρες τυλίγονται στο φορετό παλτό και μετρά τη θερμοκρασία του χρήστη, το ΗΚΓ, τη θέση, την αρτηριακή πίεση και το BPM και το στέλνει μέσω του διακομιστή ThingSpeak. Εμφανίζει μια γραφική αναπαράσταση των μετρημένων δεδομένων
Φορετό δαχτυλίδι ανίχνευσης ψέματος Arduino: 7 βήματα
Φορετό δαχτυλίδι ανίχνευσης ψέματος Arduino: Αρχικά… κουτσομπολιό: Ο Τομ, μαθητής της 5ης τάξης πίσω από το δημοτικό σχολείο. Μόλις επέστρεψε στο σπίτι πιέστηκε να καθίσει από τον πατέρα του. Στη συνέχεια, ο πατέρας κουδουνίζει για πολύ καιρό, τελικά παίρνει ένα μικροσκοπικό πράγμα που καλύπτεται από σκόνες. Ο πατέρας του το ενεργοποιεί και
Διαδραστικό τρισδιάστατο εκτυπωμένο ύφασμα με φορετό, Lilypad, επιταχυνσιόμετρο, φώτα: 13 βήματα
Διαδραστικό τρισδιάστατο ύφασμα με Wearable, Lilypad, Επιταχυνσιόμετρο, Φώτα: Wat heb je nodig: 3D printer + filamentTyrapsStofDraad in de zelfde kleur als het stofGeleidend draadNaaldenLilypad en arduino unoPowerbankApple usbeneno
Καυστήρας με τροφοδοσία USB! Αυτό το έργο μπορεί να καεί μέσω πλαστικών / ξύλου / χαρτιού (το διασκεδαστικό έργο πρέπει επίσης να είναι πολύ λεπτό ξύλο): 3 βήματα
Καυστήρας με τροφοδοσία USB! Αυτό το έργο μπορεί να καεί μέσω πλαστικών / ξύλου / χαρτιού (το διασκεδαστικό έργο πρέπει επίσης να είναι πολύ λεπτό ξύλο): ΜΗΝ ΚΑΝΕΤΕ ΑΥΤΟ ΧΡΗΣΙΜΟΠΟΙΗΣΤΕ USB !!!! διαπίστωσα ότι μπορεί να βλάψει τον υπολογιστή σας από όλα τα σχόλια. ο υπολογιστης μου ειναι μια χαρα Χρησιμοποιήστε φορτιστή τηλεφώνου 600ma 5v. το χρησιμοποίησα και δουλεύει μια χαρά και τίποτα δεν μπορεί να καταστραφεί αν χρησιμοποιήσετε βύσμα ασφαλείας για να διακόψετε την τροφοδοσία