Sadržaj:
- Korak 1: Shema
- Korak 2: Izgradnja Godot mašine
- Korak 3: Kôd: Slučajni brojevi iz haosa?
- Korak 4: Divite se svojoj Godo mašini
Video: Godot mašina: 4 koraka (sa slikama)
2024 Autor: John Day | [email protected]. Zadnja izmjena: 2024-01-30 08:06
Šta je Godotova mašina?
Dio je ljudskog iskustva da se možemo naći u stanju čekanja na nešto što bi se na kraju moglo dogoditi nakon dugog čekanja, ili uopće ne.
Godot Machine je solarno napajano djelo "umjetnosti" koje pokušava uhvatiti očajničke emocije koje prate vjerovatno besmisleno čekanje.
Naziv je iz poznate drame Samuela Becketta Čekajući Godoa, u kojoj dva čovjeka čekaju dolazak izvjesnog Godoa, koji bi mogao stići sutra, prekosutra ili nikad.
Šta radi Godot Machine?
- 1. S obzirom na malo sunca, krug Joule Thief -a počinje puniti kondenzator.
- 2. Jednom napunjen na približno 5V, Arduino Nano se napaja.
- 3. Arduino generira 20-bitni pravi slučajni broj, koji je prikazan na 4-bitnoj LED traci.
- 4. Ovaj se broj uspoređuje s drugim, nepoznatim svima slučajnim brojem, koji je pohranjen u eepromu pri prvom pokretanju kruga.
- 5. Ako je jednako, čekanju je kraj, stroj pohranjuje tu činjenicu u eeprom i od sada će se aktivirati zelena LED i piezo biper (ako ima dovoljno energije).
- 6. Ako nije jednako, nadaj se, očajavaj, ponovi.
… također, s vremena na vrijeme generirani broj se čuje zvučnim signalom, tako da zapravo ne zaboravljate da imate Godot Machine.
S obzirom na to da je vjerojatnost da će pogoditi Godotov broj 1 preko 2^20 ili otprilike jedan u milijun, a stroj nije jako brz, posebno zimi i jeseni, moglo bi proći godine da se to pronađe. Vaša Godot mašina mogla bi čak postati dio vašeg nasljedstva. Dok čekate da testira sljedeći broj, možete maštati o tome kako će vaši daleki praunuci napokon vidjeti da je došao do kraja. Ukratko: to je idealan poklon za predstojeće praznike!
Korak 1: Shema
Godot mašina se sastoji od:
-Kombajn energije Joule Thief (Q1) koji puni kondenzatore 9x2200uF. Za one koji pate od heliksafobije (iracionalne napetosti induktora, dok kondenzatori i otpornici ne predstavljaju takav problem), ne bojte se jer nije potrebno ručno namotavanje: spojnica se stvara postavljanjem standardnih koaksijalnih induktora u međusobnu blizinu, kao što je prikazano ovdje u 2nd pic. Odličan trik!
-Diskretni prekidač za napajanje tranzistora (Q2, Q3, Q4), koji se uključuje pri 5V1 oko i isključuje na oko 3.0V. Možda ćete htjeti malo podesiti R2-R4 ako koristite različite tipove tranzistora (opće namjene).
-Generator entropije (Q6, Q7, Q8). Ovo kolo pojačava elektronsku buku prisutnu u okolini od mikrovolti do nivoa volti. Taj signal se zatim uzorkuje kako bi se pokrenuo generator nasumičnih brojeva zasnovan na (kao na čitanju). Komad gitarske žice djeluje kao antena.
-LED-traka sa 4 LED ili 4 odvojene crvene LED diode, piezo zvučnim signalom i zelenom LED diodom.
Imajte na umu da je izlaz prekidača za napajanje (kolektor Q4) spojen na 5V pin Arduino Nano, NE na VIN pin!
Korak 2: Izgradnja Godot mašine
Napravio sam krug na komadu perfarda. Nema tu ničeg posebnog. Solarni panel 2V/200mA je ostatak drugog projekta. Marka je Velleman. Lako ga je otvoriti oštrim nožem, izbušiti rupe za vijke itd. Ploča i solarna ploča pričvršćeni su na dva komada šperploče, kao što je prikazano na slici. Ideja je da se solarni panel može postaviti prema suncu na mirnom prozoru.
Korak 3: Kôd: Slučajni brojevi iz haosa?
Kako nastaju slučajni brojevi? Pa, oni su napravljeni matematikom!
Umjesto da koristim Arduino funkciju generiranja slučajnih brojeva random (), odlučio sam napisati vlastiti generator slučajnih brojeva (RNG), samo iz zabave.
Zasnovan je na logističkoj karti, koja je najjednostavniji primjer determinističkog kaosa. Evo kako to funkcionira:
Pretpostavimo da je x neka stvarna vrijednost između 0 i 1, a zatim izračunajte: x*r*(1-x), gdje je r = 3,9. Rezultat je vaš sljedeći 'x'. Ponavljajte beskonačno. Ovo će vam dati niz brojeva između 0 i 1, kao na prvoj slici, gdje se ovaj proces započinje za početnu vrijednost x = 0,1 (crvena) i x = 0,1001 (plava).
Evo sada cool dijela: bez obzira koliko blizu odabrali dva različita početna uvjeta, ako oni nisu potpuno jednaki, rezultirajući niz brojeva će se na kraju razlikovati. To se naziva 'Osetljiva zavisnost od početnih uslova'.
Matematički, jednadžba preslikavanja x*r*(1-x) je parabola. Kao što je prikazano na drugoj slici, možete grafički odrediti seriju x koristeći ono što je poznato kao konstrukcija paučine: počnite od x na vodoravnoj osi, pronađite vrijednost funkcije na osi y, a zatim reflektirajte u odnosu na ravnu liniju na 45 stepeni ugla koji prolazi kroz ishodište. Ponovi. Kao što je prikazano za crvenu i plavu seriju, čak i ako se u početku zatvore, potpuno se razilaze nakon 30 -ak ponavljanja.
Odakle dolazi broj 'r = 3.9'? Ispostavilo se da za niske vrijednosti r dobivamo samo dvije izmjenične x vrijednosti. Povećanjem r-parametra tada će se u nekom trenutku preći na oscilaciju između 4, 8, 16 vrijednosti itd. Ove grane ili bifurkacije dolaze sve brže s povećanjem r, u onome što se naziva 'period udvostručenja perioda do kaosa'. Nacrt s r na vodoravnoj osi i mnogim x-iteracijama koje se preklapaju okomito rezultirat će onim što je poznato kao bifurkacijska shema (3. slika). Za r = 3,9, karta je potpuno kaotična.
Dakle, ako izračunamo mnogo x-ažuriranja i uzorkujemo iz njih, dobit ćemo slučajan broj? Pa ne, u ovom trenutku to bi bio generator pseudo slučajnih brojeva (PRNG), jer ako uvijek krećemo od iste početne vrijednosti (nakon izlaska iz resetiranja), uvijek bismo dobili isti slijed; poznat i kao deterministički haos. Ovdje dolazi generator entropije, koji zasijava logističku kartu s brojem stvorenim od električne buke koja se nalazi u okruženju.
Riječima, kôd generatora slučajnih brojeva to čini:
- Izmjerite napon iz generatora entropije na pinu A0. Zadržite samo 4 najmanje bitna bita.
- Pomaknite ova 4 bita u 'početnu' vrijednost, ponovite 8 puta da biste dobili 32-bitnu sjemenku s pomičnim zarezom.
- Promijenite veličinu sjemena između 0 i 1.
- Izračunajte prosjek ovog sjemena i x, trenutno stanje logističke karte.
- Unaprijedite logističku kartu u mnogo (64) koraka.
- Izdvojite jedan bit iz stanja logističke karte x provjerom neke beznačajne decimale.
- Prebaci taj dio u konačni rezultat.
- Ponovite sve gore navedene korake 20 puta.
Napomena: U kodu su Serial.println i Serial.begin nadomješteni. Uklonite // kako biste provjerili generirane slučajne brojeve na serijskom monitoru.
Da budem pošten, nisam statistički provjerio kvalitetu slučajnih brojeva (npr. NIST testni paket), ali čini se da su u redu.
Korak 4: Divite se svojoj Godo mašini
Uživajte u Godot Machine -u i podijelite, komentirajte i/ili pitajte ako je nešto nejasno.
Dok čekate da se pronađe Godotov broj, glasajte za ovaj Instructable na takmičenju Made With Math! Hvala!
Drugoplasirani na takmičenju Made with Math
Preporučuje se:
Handsfree mašina za izradu kartona od kartona: 18 koraka (sa slikama)
Hands-Free Cardboard Gumball Machine: Napravili smo Gumball Machine bez dodira koristeći micro: bit, bitnu ploču ludih kola, senzor udaljenosti, servo i karton. Izrada i upotreba je bila "BLAST"!! ?? ?? Kad stavite ruku u podnožje rakete, senzor udaljenosti
Biometrijska mašina za glasanje zasnovana na otiscima prstiju koristeći Arduino: 4 koraka (sa slikama)
Biometrijska mašina za glasanje zasnovana na otiscima prstiju koristeći Arduino: Svi smo svjesni postojeće elektronske mašine za glasanje u kojoj korisnik mora pritisnuti dugme za glasanje. Ali ove mašine su od početka kritikovane zbog kaljenja. Dakle, vlada planira uvesti sistem otisaka prstiju
Različita beskorisna mašina: 6 koraka (sa slikama)
Drugačija beskorisna mašina: Sa toliko beskorisnih mašina, pokušao sam da napravim jednu koja je malo drugačija. Umesto da imam mehanizam koji pritiska prekidač, ova mašina jednostavno rotira prekidač za 180 stepeni. U ovom projektu sam koristio Nema 17 steppermotora, koji
555 Beskorisna mašina: 8 koraka (sa slikama)
555 Beskorisna mašina: Gotovo svaki projekat koji sam napravio u svom životu koristio je arduino ili samo atmegas, ali na posljednjoj elektronskoj lekciji u mojoj školi pronašao sam maleno integrirano kolo koje se zove 555. Čuo sam o tome i prije, ali mislio sam da su mikrokontroleri bolji. Ja čitam
Smokin ' - Dimna mašina na daljinsko upravljanje jeftino: 5 koraka (sa slikama)
Smokin ' - Jeftino dimna mašina s daljinskim upravljanjem: Ovo je kratka uputa o tome kako napraviti relativno malu, jeftinu i zabavnu malu mašinu za dim, koja se može daljinski upravljati, koja se može koristiti za zezanje prijatelja, izvođenje mađioničarskih trikova, testiranje protoka zraka ili bilo čega drugog vaše srce želi. Odricanje od odgovornosti: Ova verzija sadrži