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

Η μηχανή Godot: 4 βήματα (με εικόνες)
Η μηχανή Godot: 4 βήματα (με εικόνες)

Βίντεο: Η μηχανή Godot: 4 βήματα (με εικόνες)

Βίντεο: Η μηχανή Godot: 4 βήματα (με εικόνες)
Βίντεο: Πιάτο ΚΑΡΠΑ! Έτσι μαγειρεύουμε!! Ψάρι σε κόκκινη σάλτσα! Απλό, Γρήγορο, Νόστιμο!! 2024, Ιούλιος
Anonim
Η μηχανή Godot
Η μηχανή Godot

Τι είναι μια μηχανή Godot;

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

Η μηχανή Godot είναι ένα ηλιακό ηλεκτρικό κομμάτι της «τέχνης» που προσπαθεί να συλλάβει το απελπισμένο συναίσθημα που συνοδεύει ενδεχομένως άσκοπη αναμονή.

Το όνομα είναι από το περίφημο έργο του Samuel Beckett Waiting for Godot, στο οποίο δύο άντρες περιμένουν τον ερχομό ενός συγκεκριμένου Γκοντό, ο οποίος μπορεί να φτάσει αύριο, μεθαύριο ή ποτέ.

Τι κάνει λοιπόν η Godot Machine;

  1. 1. Με δεδομένη την ηλιοφάνεια, ένα κύκλωμα Joule Thief ξεκινά να φορτίζει μια τράπεζα πυκνωτών.
  2. 2. Μόλις φορτιστεί σε περίπου 5V, το Arduino Nano τροφοδοτείται.
  3. 3. Το Arduino δημιουργεί έναν πραγματικό τυχαίο αριθμό 20-bit, ο οποίος εμφανίζεται σε μια γραμμή LED 4-bit.
  4. 4. Αυτός ο αριθμός συγκρίνεται με έναν άλλο τυχαίο αριθμό, άγνωστο σε όλους, που αποθηκεύτηκε στο eeprom την πρώτη φορά που ξεκίνησε το κύκλωμα.
  5. 5. Εάν είναι ίσο, η αναμονή έχει τελειώσει, το μηχάνημα αποθηκεύει αυτό το γεγονός στο eeprom και από εδώ και πέρα ενεργοποιούνται το πράσινο LED και το πιεζοηλεκτρικό μπιπ (αν υπάρχει αρκετή ενέργεια).
  6. 6. Αν δεν είναι ίσοι, ελπίζουμε, απελπίζουμε, επαναλαμβάνουμε.

… Επίσης, κάθε τόσο ο αριθμός που παράγεται γίνεται ακουστικός από το μπιπ, έτσι ώστε να μην ξεχνάτε ότι έχετε μια μηχανή Godot.

Δεδομένου ότι η πιθανότητα να χτυπήσει τον αριθμό Godot είναι 1 πάνω από 2^20 ή περίπου ένα στο εκατομμύριο, και το μηχάνημα δεν είναι πολύ γρήγορο, ειδικά το χειμώνα και το φθινόπωρο, θα χρειαστούν χρόνια για να το βρούμε. Η μηχανή σας Godot μπορεί ακόμη και να γίνει μέρος της κληρονομιάς σας. Ενώ περιμένετε να δοκιμάσει τον επόμενο αριθμό, μπορείτε να φανταστείτε πώς τα μακρινά δισέγγονα σας μπορεί τελικά να το δουν να καταλήγει. Με λίγα λόγια: είναι το ιδανικό δώρο για την ερχόμενη περίοδο των γιορτών!

Βήμα 1: Το σχηματικό

Το Σχηματικό
Το Σχηματικό

Η μηχανή Godot αποτελείται από:

-Ένας θεριστής ενέργειας Joule Thief (Q1) που φορτίζει πυκνωτές 9x2200uF. Για όσους πάσχουν από ελικαφοβία (ένα παράλογο άγχος επαγωγέων, ενώ οι πυκνωτές και οι αντιστάσεις δεν δημιουργούν τέτοιο πρόβλημα), μην φοβάστε καθώς δεν απαιτείται χειροκίνητη περιέλιξη: η σύζευξη δημιουργείται με την τοποθέτηση τυπικών ομοαξονικών επαγωγών ο ένας κοντά στην άλλη, όπως φαίνεται εδώ 2η φωτογραφία Φοβερό κόλπο!

-Ένας διακριτικός διακόπτης ισχύος τρανζίστορ (Q2, Q3, Q4), ο οποίος ανάβει και σβήνει στα 5V1 περίπου στα 3,0V. Mightσως θέλετε να ρυθμίσετε λίγο το R2-R4 εάν χρησιμοποιείτε διαφορετικούς τύπους τρανζίστορ (γενικής χρήσης).

-Μια γεννήτρια εντροπίας (Q6, Q7, Q8). Αυτό το κύκλωμα ενισχύει τον ηλεκτρονικό θόρυβο που υπάρχει στο περιβάλλον από επίπεδα μικροβολίων έως βολτ. Αυτό το σήμα λαμβάνεται στη συνέχεια για να σπείρει μια γεννήτρια τυχαίων αριθμών που βασίζεται στο χάος (διαβάζεται). Ένα κομμάτι χορδών κιθάρας λειτουργεί ως κεραία.

-Ένα LED-bar με 4 LED ή 4 κόκκινα ξεχωριστά LED, ένα πιπέζο μπιπ και ένα πράσινο LED.

Σημειώστε ότι η έξοδος του διακόπτη τροφοδοσίας (συλλέκτης Q4) συνδέεται με τον πείρο 5V του Arduino Nano, ΟΧΙ με τον πείρο VIN!

Βήμα 2: Κατασκευή της μηχανής Godot

Κατασκευή της μηχανής Godot
Κατασκευή της μηχανής Godot
Κατασκευή της μηχανής Godot
Κατασκευή της μηχανής Godot
Κατασκευή της μηχανής Godot
Κατασκευή της μηχανής Godot

Έχτισα το κύκλωμα σε ένα κομμάτι από σανίδα. Τίποτα το ιδιαίτερο εκεί. Ο ηλιακός πίνακας 2V/200mA είναι ένα υπόλοιπο από άλλο έργο. Η μάρκα είναι Velleman. Είναι εύκολο να το ανοίξετε χρησιμοποιώντας ένα κοφτερό μαχαίρι, να ανοίξετε τρύπες για βίδες κλπ. Ο πίνακας κυκλώματος και ο ηλιακός πίνακας βιδώνονται σε δύο κομμάτια κόντρα πλακέ, όπως φαίνεται στην εικόνα. Η ιδέα είναι ότι ο ηλιακός πίνακας μπορεί να τοποθετηθεί προς τον ήλιο σε ένα ακίνητο παράθυρο.

Βήμα 3: Ο Κώδικας: Τυχαίοι αριθμοί από το χάος;

Ο Κώδικας: Τυχαίοι αριθμοί από το χάος
Ο Κώδικας: Τυχαίοι αριθμοί από το χάος
Ο Κώδικας: Τυχαίοι αριθμοί από το χάος
Ο Κώδικας: Τυχαίοι αριθμοί από το χάος
Ο Κώδικας: Τυχαίοι αριθμοί από το χάος
Ο Κώδικας: Τυχαίοι αριθμοί από το χάος

Πώς γίνονται οι τυχαίοι αριθμοί; Λοιπόν, είναι φτιαγμένα με μαθηματικά!

Αντί να χρησιμοποιήσω την τυχαία συνάρτηση γεννήτριας τυχαίων αριθμών Arduino (), αποφάσισα να γράψω τη δική μου γεννήτρια τυχαίων αριθμών (RNG), μόνο για διασκέδαση.

Βασίζεται στον λογιστικό χάρτη, που είναι το απλούστερο παράδειγμα ντετερμινιστικού χάους. Ετσι δουλευει:

Ας υποθέσουμε ότι το x είναι κάποια πραγματική τιμή μεταξύ 0 και 1, και στη συνέχεια υπολογίστε: x*r*(1-x), όπου r = 3,9. Το αποτέλεσμα είναι το επόμενο 'x' σας. Επαναλάβετε άπειρα. Αυτό θα σας δώσει μια σειρά αριθμών μεταξύ 0 και 1, όπως στην πρώτη εικόνα, όπου αυτή η διαδικασία ξεκινά για την αρχική τιμή x = 0.1 (κόκκινο) και επίσης x = 0.1001 (μπλε).

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

Μαθηματικά, η εξίσωση χάρτη x*r*(1-x) είναι παραβολή. Όπως φαίνεται στο 2ο σχήμα, μπορείτε να προσδιορίσετε γραφικά τη σειρά x χρησιμοποιώντας αυτό που είναι γνωστό ως κατασκευή ιστού αράχνης: ξεκινήστε από το x στον οριζόντιο άξονα, βρείτε την τιμή της συνάρτησης στον άξονα y και μετά αντανακλάτε σε ευθεία γραμμή στο 45 μοίρες γωνία που διέρχεται από την προέλευση. Επαναλαμβάνω. Όπως φαίνεται για τις κόκκινες και μπλε σειρές, ακόμη και αν κλείσουν αρχικά, αποκλίνουν τελείως μετά από περίπου 30 επαναλήψεις.

Τώρα, από πού προέρχεται ο αριθμός «r = 3,9»; Αποδεικνύεται ότι για χαμηλές τιμές r, παίρνουμε μόνο δύο εναλλασσόμενες τιμές x. Η αύξηση της παραμέτρου r θα αλλάξει κάποια στιγμή σε μια ταλάντωση μεταξύ 4, 8, 16 τιμών κ.λπ. Αυτές οι διακλαδώσεις ή διακλαδώσεις έρχονται όλο και πιο γρήγορα καθώς αυξάνεται το r, σε αυτό που ονομάζεται «διαδρομή διπλασιασμού περιόδου στο χάος». Μια γραφική παράσταση με r στον οριζόντιο άξονα και πολλές επαναλήψεις x αλληλοεπικαλυπτόμενες κάθετα θα οδηγήσει σε αυτό που είναι γνωστό ως διάγραμμα διακλάδωσης (3η εικόνα). Για r = 3.9, ο χάρτης είναι πλήρως χαοτικός.

Έτσι, αν υπολογίσουμε πολλές x-ενημερώσεις και κάνουμε δείγμα από αυτές, παίρνουμε έναν τυχαίο αριθμό; Λοιπόν, όχι, σε αυτό το σημείο θα ήταν μια γεννήτρια ψευδοτυχαίων αριθμών (PRNG), αφού αν ξεκινούσαμε πάντα από την ίδια αρχική τιμή (μετά την έξοδο από την επαναφορά), θα είχαμε πάντα την ίδια ακολουθία. γνωστός και ως ντετερμινιστικό χάος. Εδώ έρχεται η γεννήτρια εντροπίας, η οποία σπέρνει τον λογιστικό χάρτη με έναν αριθμό που δημιουργήθηκε από ηλεκτρικό θόρυβο που βρίσκεται στο περιβάλλον.

Με λίγα λόγια, ο κώδικας δημιουργίας τυχαίων αριθμών κάνει αυτό:

- Μετρήστε την τάση από τη γεννήτρια εντροπίας στον πείρο A0. Κρατήστε μόνο τα 4 λιγότερο σημαντικά bit.

- Μετακινήστε αυτά τα 4 bits σε μια τιμή "σπόρου", επαναλάβετε 8 φορές για να λάβετε έναν σπόρο κυμαινόμενου σημείου 32-bit.

- Επαναλάβετε τη σπορά μεταξύ 0 και 1.

- Υπολογίστε τον μέσο όρο αυτού του σπόρου και x, την τρέχουσα κατάσταση του λογιστικού χάρτη.

- Προωθήστε τον υλικοτεχνικό χάρτη σε πολλά (64) βήματα.

- Εξαγάγετε ένα μόνο bit από την κατάσταση logistics του χάρτη ελέγχοντας κάποιο ασήμαντο δεκαδικό.

- Μετατοπίστε αυτό το κομμάτι στο τελικό αποτέλεσμα.

- Επαναλάβετε όλα τα βήματα πάνω από 20 φορές.

Σημείωση: Στον κώδικα, τα Serial.println και Serial.begin αναφέρονται. Αφαιρέστε το // για να ελέγξετε τους τυχαίους αριθμούς που δημιουργήθηκαν στη σειριακή οθόνη.

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

Βήμα 4: Θαυμάστε τη μηχανή σας Godot

Θαυμάστε τη μηχανή σας Godot!
Θαυμάστε τη μηχανή σας Godot!

Απολαύστε τη μηχανή σας Godot και μοιραστείτε, σχολιάστε ή/και ρωτήστε εάν υπάρχει κάτι ασαφές.

Ενώ περιμένετε να βρεθεί ο αριθμός Godot, ψηφίστε αυτό το Instructable στο διαγωνισμό Made With Math! Ευχαριστώ!

Διαγωνισμός Μαθηματικών
Διαγωνισμός Μαθηματικών
Διαγωνισμός Μαθηματικών
Διαγωνισμός Μαθηματικών

Διαγωνισμός στο Made with Math

Συνιστάται: