Turinys:
- 1 žingsnis: schema
- 2 žingsnis: „Godot“mašinos kūrimas
- 3 žingsnis: kodas: atsitiktiniai skaičiai iš chaoso?
- 4 žingsnis: stebėkitės savo „Godot“mašina
Video: „Godot“mašina: 4 žingsniai (su nuotraukomis)
2024 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2024-01-30 10:46
Kas yra „Godot“mašina?
Tai yra žmogaus patirties dalis, kad galime atsidurti būsenoje, kai laukiame to, kas ilgainiui gali įvykti po ilgo laukimo arba visai ne.
„Godot“mašina yra saulės energija varomas elektros „meno“kūrinys, kuriuo bandoma užfiksuoti beviltišką emociją, lydinčią galbūt beprasmišką laukimą.
Pavadinimas kilęs iš garsiosios Samuelio Beketo pjesės „Belaukiant Godo“, kurioje du vyrai laukia, kol ateis tam tikras Godotas, kuris gali ateiti rytoj, poryt arba niekada.
Taigi ką veikia „Godot“mašina?
- 1. Atsižvelgiant į saulę, „Joule Thief“grandinė pradeda krauti kondensatorių banką.
- 2. Įkrovus maždaug 5 V įtampą, „Arduino Nano“yra maitinamas.
- 3. „Arduino“sukuria 20 bitų tikrąjį atsitiktinį skaičių, kuris rodomas 4 bitų LED juostoje.
- 4. Šis skaičius lyginamas su kitu atsitiktiniu, visiems nežinomu skaičiumi, kuris buvo įrašytas „eeprom“pirmą kartą paleidus grandinę.
- 5. Jei lygus, laukimas baigtas, aparatas išsaugo šį faktą „eeprom“ir nuo šiol įjungiamas žalias šviesos diodas ir pjezo pyptelėjimas (jei yra pakankamai energijos).
- 6. Jei ne lygūs, viltis, neviltis, pakartokite.
… taip pat kartas nuo karto pyptelėjimas leidžia išgirsti sukurtą skaičių, todėl iš tikrųjų nepamiršite, kad turite „Godot“mašiną.
Atsižvelgiant į tai, kad tikimybė pasiekti Godoto skaičių yra 1 per 2^20 arba maždaug vienas iš milijono, o mašina nėra labai greita, ypač žiemą ir rudenį, ją surasti gali prireikti metų. Jūsų „Godot“mašina netgi gali tapti jūsų palikimo dalimi. Laukdami, kol bus išbandytas kitas skaičius, galite fantazuoti, kaip jūsų tolimi proanūkiai pagaliau gali pamatyti, kaip jis baigiasi. Trumpai tariant: tai ideali dovana artėjančiam atostogų sezonui!
1 žingsnis: schema
„Godot“mašiną sudaro:
-Joule Thief energijos kombainas (Q1), kuris įkrauna 9x2200uF kondensatorius. Tiems, kurie kenčia nuo helixaphobia (neracionalios induktorių įtampos, o kondensatoriai ir rezistoriai tokios problemos nekelia), nebijokite, nes nereikia apvijos rankiniu būdu: mova sukuriama įdedant standartinius bendraašius induktorius vienas šalia kito, kaip parodyta čia 2 pav. Nuostabus triukas!
-Diskretinis tranzistoriaus maitinimo jungiklis (Q2, Q3, Q4), kuris įjungiamas esant 5V1 maždaug ir išsijungia esant maždaug 3,0 V įtampai. Jei naudojate skirtingų tipų (bendrosios paskirties) tranzistorius, galbūt norėsite šiek tiek sureguliuoti R2-R4.
-Entropijos generatorius (Q6, Q7, Q8). Ši grandinė sustiprina aplinkoje esantį elektroninį triukšmą nuo mikrovoltų iki voltų lygio. Tada šis signalas imamas imti chaosu pagrįstą (skaityti toliau) atsitiktinių skaičių generatorių. Gitaros stygos veikia kaip antena.
-LED juosta su 4 šviesos diodais arba 4 raudonais atskirais šviesos diodais, pjezo pyptelėjimu ir žaliu šviesos diodu.
Atkreipkite dėmesį, kad maitinimo jungiklio (Q4 kolektoriaus) išėjimas yra prijungtas prie „Arduino Nano“5 V kaiščio, o ne prie VIN kaiščio!
2 žingsnis: „Godot“mašinos kūrimas
Aš sukūriau grandinę ant perforatoriaus gabalo. Nieko ten ypatingo. 2V/200mA saulės kolektorius yra kito projekto likučiai. Prekės ženklas yra „Velleman“. Jį lengva atsukti aštriu peiliu, išgręžti skyles varžtams ir pan. Plokštė ir saulės kolektorius prisukami prie dviejų faneros gabalų, kaip parodyta paveikslėlyje. Idėja yra tai, kad saulės kolektorių galima pastatyti saulės link ant nejudančio lango.
3 žingsnis: kodas: atsitiktiniai skaičiai iš chaoso?
Kaip sudaromi atsitiktiniai skaičiai? Na, jie pagaminti naudojant matematiką!
Užuot naudojęs „Arduino“atsitiktinių skaičių generatoriaus funkciją atsitiktinis (), nusprendžiau savo malonumui parašyti savo atsitiktinių skaičių generatorių (RNG).
Jis pagrįstas logistiniu žemėlapiu, kuris yra paprasčiausias deterministinio chaoso pavyzdys. Štai kaip tai veikia:
Tarkime, x yra tikroji vertė nuo 0 iki 1, tada apskaičiuokite: x*r*(1-x), kur r = 3,9. Rezultatas yra jūsų kitas „x“. Pakartokite be galo. Taip gausite skaičių seriją nuo 0 iki 1, kaip ir pirmoje nuotraukoje, kur šis procesas pradedamas, kai pradinė vertė yra x = 0,1 (raudona), taip pat x = 0,1001 (mėlyna).
Dabar štai šaunioji dalis: kad ir kaip arti pasirinktumėte dvi skirtingas pradines sąlygas, jei jos nėra visiškai lygios, gauta skaičių serija ilgainiui skirsis. Tai vadinama „jautria priklausomybe nuo pradinių sąlygų“.
Matematiškai žemėlapio lygtis x*r*(1-x) yra parabolė. Kaip parodyta 2 paveiksle, galite grafiškai nustatyti x seriją naudodami vadinamąją voratinklio konstrukciją: pradėkite nuo x horizontalioje ašyje, raskite funkcijos reikšmę y ašyje, tada atspindėkite tiesę ties 45 laipsnių kampu, einančiu per kilmę. Pakartokite. Kaip parodyta raudonos ir mėlynos spalvos serijose, net jei jos iš pradžių buvo uždarytos, jos visiškai išsiskiria maždaug po 30 pakartojimų.
Dabar iš kur gaunamas skaičius „r = 3.9“? Pasirodo, kad esant mažoms r reikšmėms gauname tik dvi kintamas x reikšmes. Padidinus r parametrą, tam tikru momentu pereinama prie svyravimų tarp 4, 8, 16 verčių ir tt. Šie išsišakojimai ar išsišakojimai atsiranda vis greičiau, kai r padidėja, vadinama „laikotarpio dvigubinimo keliu į chaosą“. Sklypas su r ant horizontalios ašies ir daug x-iteracijų, persidengiančių vertikaliai, sudarys vadinamąjį bifurkacijos grafiką (3 pav.). Jei r = 3,9, žemėlapis yra visiškai chaotiškas.
Taigi, jei apskaičiuosime daug x atnaujinimų ir imsime iš jų pavyzdį, gausime atsitiktinį skaičių? Na ne, šiuo metu tai būtų pseudo atsitiktinių skaičių generatorius (PRNG), nes jei visada pradėtume nuo tos pačios pradinės vertės (išėję iš naujo), visada gautume tą pačią seką; dar žinomas kaip deterministinis chaosas. Čia įeina entropijos generatorius, kuris sėja logistinį žemėlapį su skaičiumi, sukurtu iš aplinkoje randamo elektros triukšmo.
Žodžiu, atsitiktinių skaičių generatoriaus kodas tai daro:
- Išmatuokite įtampą iš entropijos generatoriaus ant kaiščio A0. Palikite tik 4 mažiausiai reikšmingus bitus.
- Perkelkite šiuos 4 bitus į „sėklos“vertę, pakartokite 8 kartus, kad gautumėte 32 bitų slankiojo kablelio sėklą.
- Pakeiskite sėklos mastelį nuo 0 iki 1.
- Apskaičiuokite šios sėklos vidurkį ir x, dabartinę logistinio žemėlapio būklę.
- Iš anksto atlikite logistinį žemėlapį (64).
- Ištraukite vieną bitą iš logistinio žemėlapio būsenos x, patikrindami nereikšmingą dešimtainį skaičių.
- Perkelkite šiek tiek į galutinį rezultatą.
- Pakartokite visus aukščiau nurodytus veiksmus 20 kartų.
Pastaba: Kode yra „Serial.println“ir „Serial.begin“. Pašalinkite //, kad patikrintumėte serijiniame monitoriuje sugeneruotus atsitiktinius skaičius.
Teisybės dėlei, statistiškai netikrinau atsitiktinių skaičių kokybės (pvz., NIST testų rinkinio), bet atrodo, kad jie yra gerai.
4 žingsnis: stebėkitės savo „Godot“mašina
Mėgaukitės savo „Godot“mašina ir pasidalykite, komentuokite ir (arba) paklauskite, jei kas neaišku.
Kol laukiate, kol bus rastas Godoto numeris, balsuokite už šį nurodymą konkurse „Made With Math“! Dėkoju!
Konkurso „Made with Math“laimėtojas
Rekomenduojamas:
Skirtinga nenaudinga mašina: 6 žingsniai (su nuotraukomis)
Skirtinga nenaudinga mašina: turėdama tiek daug nenaudingų mašinų, aš bandžiau padaryti tą, kuris yra šiek tiek kitoks. Užuot turėjęs mechanizmą, stumiantį perjungimo jungiklį, ši mašina tiesiog pasuka jungiklį 180 laipsnių kampu. Šiame projekte aš naudoju „Nema“17 žingsninis variklis, kuris
„Smokin '“- nuotoliniu būdu valdoma dūmų mašina pigiai: 5 žingsniai (su nuotraukomis)
„Smokin '“- nuotoliniu būdu valdoma dūmų mašina pigiai: tai trumpas pamokymas, kaip padaryti palyginti mažą, nuotoliniu būdu valdomą, pigų ir linksmą dūmų aparatą, kurį galima panaudoti draugų išdaigoms, stebuklingiems triukams, oro srautų bandymui ar bet kuriai kitai jūsų širdis trokšta. Atsisakymas: šiame kūrinyje yra
Radijo laiko mašina: 8 žingsniai (su nuotraukomis)
Radijo laiko mašina: čia radau puikų projektą „Instrutables“: WW2 radijo transliavimo laiko mašina. Aš buvau nustebęs dėl šios idėjos. Bet aš nesu „Python“vaikinas ir man patinka „Steampunk“. Taigi aš nusprendžiau sukurti panašų dalyką iš skirtingų medžiagų. Čia rasite sąrašą
Sukurkite savo žalios kokteilių mašiną: 5 žingsniai (su nuotraukomis)
Sukurkite savo žalios kokteilių mašiną: Šiame projekte aš jums parodysiu, kaip sujungiau „Arduino Nano“, skystųjų kristalų ekraną, sukamąjį kodavimo įrenginį, tris peristaltinius siurblius su variklio tvarkyklėmis, apkrovos elementą ir keletą medienos gabalų, kad sukurtų neapdorotą, bet funkcionali kokteilių mašina. Pakeliui aš apžiūrėsiu
Sukurkite mini konvejerio juostą kaip slinkusią mašiną: 7 žingsniai (su nuotraukomis)
Sukurkite mini konvejerio juostą kaip slankią mašiną: Šiame mažame projekte naudojamas geltonos pavaros variklis, skirtas 1 pėdų ilgio konvejerio, pagaminto iš PVC vamzdžio, 1 x 4 pušies medienos, ir menininko drobės (diržui) maitinti. Prieš pradėdamas veikti, perėjau keletą versijų, padariau paprastą ir akivaizdžią klaidą