Tartalomjegyzék:

A Godot -gép: 4 lépés (képekkel)
A Godot -gép: 4 lépés (képekkel)

Videó: A Godot -gép: 4 lépés (képekkel)

Videó: A Godot -gép: 4 lépés (képekkel)
Videó: Сериал "Пепел" - 3 и 4 серии 2024, November
Anonim
A Godot gép
A Godot gép

Mi az a Godot gép?

Az emberi tapasztalat része, hogy olyan állapotba kerülhetünk, amikor várunk valamire, ami végül hosszú várakozás után megtörténhet, vagy egyáltalán nem.

A Godot-gép egy napenergiával működő elektro-"művészet", amely megpróbálja megragadni a kétségbeesett érzelmeket, amelyek az értelmetlen várakozást kísérik.

A név Samuel Beckett Godot -ra várva című híres darabjából származik, amelyben két férfi várja egy bizonyos Godot eljövetelét, aki holnap, másnap vagy soha nem érkezik meg.

Tehát mit csinál a Godot -gép?

  1. 1. A napsütés hatására a Joule Thief áramkör elkezdi tölteni a kondenzátorokat.
  2. 2. Körülbelül 5 V feszültségre feltöltve az Arduino Nano áramellátást kap.
  3. 3. Az Arduino egy 20 bites valódi véletlen számot generál, amely egy 4 bites LED-sávon látható.
  4. 4. Ezt a számot összehasonlítják egy másik, mindenki számára ismeretlen véletlen számmal, amelyet az áramkör első indításakor az eepromban tároltak.
  5. 5. Ha egyenlő, akkor a várakozásnak vége, a gép ezt a tényt az eepromban tárolja, és ezentúl a zöld LED és piezo hangjelzés aktiválódik (ha elegendő energia van).
  6. 6. Ha nem egyenlő, remény, kétségbeesés, ismételje meg.

… Azt is, hogy időnként a hangjelzés hallhatóvá teszi a generált számot, így valójában nem felejti el, hogy rendelkezik Godot géppel.

Tekintettel arra, hogy a Godot -szám elérésének valószínűsége 1 felett 2^20 vagy körülbelül egy a millióból, és a gép nem túl gyors, különösen télen és ősszel, évekbe telhet. A Godot -géped akár az örökséged részévé is válhat. Amíg arra vár, hogy tesztelje a következő számot, fantáziálhat arról, hogyan láthatják végül távoli dédunokái a végsőkig. Röviden: ez az ideális ajándék a közelgő ünnepekre!

1. lépés: A vázlat

A sematikus
A sematikus

A Godot gép a következőkből áll:

-Joule Thief energiagyűjtő (Q1), amely 9x2200uF kondenzátorokat tölt. Azok, akik helixaphobiában szenvednek (az induktorok irracionális zaklatása, míg a kondenzátorok és az ellenállások nem jelentenek ilyen problémát), ne féljenek, mivel nincs szükség kézi tekercselésre: a csatolást úgy hozzák létre, hogy szabványos koaxiális induktivitásokat helyeznek el egymás közelében, amint az itt látható. 2. kép Félelmetes trükk!

-Egy diszkrét tranzisztoros tápkapcsoló (Q2, Q3, Q4), amely 5V1 körül bekapcsol, körülbelül 3,0V körül. Érdemes kicsit hangolni az R2-R4-et, ha különböző (általános célú) tranzisztor típusokat használ.

-Entrópiagenerátor (Q6, Q7, Q8). Ez az áramkör felerősíti a környezetben lévő elektronikus zajt a mikrovoltról a volt szintre. Ebből a jelből mintát vesznek egy káosz alapú (olvasható) véletlenszám-generátor létrehozásához. Egy darab gitárhúr antennaként működik.

-LED-sáv 4 LED-del vagy 4 piros külön LED-del, piezo hangjelzéssel és zöld LED-del.

Vegye figyelembe, hogy a tápkapcsoló kimenete (a Q4 kollektor) az Arduino Nano 5 V -os csatlakozójához van csatlakoztatva, NEM a VIN -érintkezőhöz!

2. lépés: A Godot -gép felépítése

A Godot -gép építése
A Godot -gép építése
A Godot -gép építése
A Godot -gép építése
A Godot -gép építése
A Godot -gép építése

Egy áramkörre építettem az áramkört. Ott semmi különös. A 2V/200mA napelem egy másik projekt maradványa. A márka Velleman. Könnyű felnyitni éles késsel, lyukakat fúrni a csavarokhoz stb. Az áramköri lapot és a napelemet két rétegelt lemezre csavarják fel, amint az a képen látható. Az ötlet az, hogy a napelemeket a nap felé lehet helyezni egy ablakon.

3. lépés: A kód: Véletlen számok a káoszból?

A kód: Véletlen számok a káoszból?
A kód: Véletlen számok a káoszból?
A kód: Véletlen számok a káoszból?
A kód: Véletlen számok a káoszból?
A kód: Véletlen számok a káoszból?
A kód: Véletlen számok a káoszból?

Hogyan készülnek a véletlen számok? Nos, matekból készültek!

Ahelyett, hogy az Arduino véletlenszám -generátor random () funkcióját használnám, úgy döntöttem, hogy megírom a saját véletlenszám -generátoromat (RNG), csak szórakozásból.

A logisztikai térképen alapul, amely a determinisztikus káosz legegyszerűbb példája. Így működik:

Tegyük fel, hogy x valamilyen valós érték 0 és 1 között, majd számítsa ki: x*r*(1-x), ahol r = 3,9. Az eredmény a következő "x". Ismételje meg végtelenül. Ez 0 és 1 közötti számokat fog adni, mint az első képen, ahol ez a folyamat az x = 0,1 (piros) és x = 0,1001 (kék) kezdeti értékre indul.

Most itt a remek rész: bármennyire közel is választ két különböző kezdeti feltételt, ha nem teljesen egyenlők, a kapott számsor végül el fog térni. Ezt nevezik „Érzékeny függés a kezdeti feltételektől”.

Matematikailag az x*r*(1-x) térképegyenlet parabola. Amint az a 2. ábrán látható, grafikusan meghatározhatja az x-sorozatot az úgynevezett pókháló-konstrukció segítségével: kezdje x-től a vízszintes tengelyen, keresse meg a függvény értékét az y-tengelyen, majd tükrözze az egyenest a 45-ös ponton fokos szög megy keresztül az origón. Ismétlés. Amint a piros és kék sorozatoknál látható, még ha kezdetben közel is vannak, körülbelül 30 iteráció után teljesen eltérnek egymástól.

Most honnan származik az 'r = 3,9' szám? Kiderül, hogy az r alacsony értékeihez csak két váltakozó x-értéket kapunk. Az r-paraméter növelése egy bizonyos ponton 4, 8, 16 értékek közötti oszcillációra vált. Ezek az elágazások vagy elágazások egyre gyorsabban jönnek, ahogy az r növekszik, az úgynevezett „időszak kettős útja a káosz felé”. Ha egy görbe a vízszintes tengelyen r, és sok x-iterátum függőlegesen átfedésben van, az úgynevezett bifurkációs diagramot eredményezi (3. ábra). R = 3,9 esetén a térkép teljesen kaotikus.

Tehát ha sok x-frissítést számolunk és mintát veszünk belőlük, akkor véletlen számot kapunk? Nos, nem, ezen a ponton egy pszeudo -véletlenszám -generátor (PRNG) lenne, mivel ha mindig ugyanabból a kezdeti értékből indulunk ki (a resetből való kilépés után), akkor mindig ugyanazt a sorozatot kapjuk; más néven determinisztikus káosz. Itt jön létre az entrópiagenerátor, amely a logisztikai térképet a környezetben talált elektromos zajból létrehozott számmal veti be.

Szavakkal a véletlenszám -generátor kódja ezt teszi:

- Mérje meg az entrópiás generátor feszültségét az A0 érintkezőn. Csak a 4 legkevésbé jelentős bit maradjon meg.

- Váltsa át ezt a 4 bitet „mag” értékre, ismételje meg 8-szor, hogy 32 bites lebegőpontos magot kapjon.

- Méretezze át a vetőmagot 0 és 1 között.

- Számítsa ki ennek a magnak az átlagát és x -et, a logisztikai térkép aktuális állapotát.

- Lépjen előre a logisztikai térképen (64).

- Bontson ki egyetlen bitet az x logisztikai térképállapotból néhány jelentéktelen tizedesjegy ellenőrzésével.

- Ezt a részt tolja be a végeredménybe.

- Ismételje meg a fenti lépéseket 20 -szor.

Megjegyzés: A kódban a Serial.println és a Serial.begin fel vannak tüntetve. Távolítsa el a // parancsot a generált véletlen számok ellenőrzéséhez a soros monitoron.

Az igazat megvallva, statisztikailag nem ellenőriztem a véletlen számok minőségét (pl. NIST tesztcsomag), de úgy tűnik, hogy rendben vannak.

4. lépés: Csodálkozz Godot gépeden

Csodálkozz Godot gépeden!
Csodálkozz Godot gépeden!

Élvezze Godot gépét, és ossza meg, kommentelje és/vagy kérdezzen, ha valami nem világos.

Amíg a Godot -szám megtalálására vár, kérjük, szavazzon erre az Instructable -re a Made With Math versenyen! Kösz!

Matematikai Versennyel készült
Matematikai Versennyel készült
Matematikai Versennyel készült
Matematikai Versennyel készült

Második helyezett a Made with Math versenyben

Ajánlott: