Мазмуну:

Годот машинасы: 4 кадам (сүрөттөр менен)
Годот машинасы: 4 кадам (сүрөттөр менен)

Video: Годот машинасы: 4 кадам (сүрөттөр менен)

Video: Годот машинасы: 4 кадам (сүрөттөр менен)
Video: Спринтер сгорел со Спринтерской скоростью близ Шымкентта 😨 #шымкент #спринтер #автобус #казахстан 2024, Июль
Anonim
Годот машинасы
Годот машинасы

Годот машинасы деген эмне?

Бул адамдык тажрыйбанын бир бөлүгү, биз узак убакыттан кийин күтүлүүчү нерсени күтө алабыз же таптакыр болбойт.

Годот машинасы-бул күн менен иштөөчү электротехника "көркөм", ал эч нерсеге жарабаган күтүүнү коштогон үмүтсүз сезимдерди басып алууга аракет кылат.

Аты -жөнү Сэмюэл Бекеттин атактуу "Годотту күтүү" пьесасынан алынган, анда эки киши белгилүү бир Годоттун келишин күтүшөт, алар эртең, эртеси же эч качан келиши мүмкүн.

Ошентип, Godot Machine эмне кылат?

  1. 1. Бир аз күн тийип тургандыктан, Джоуль Уурунун схемасы конденсаторлор банкын заряддай баштайт.
  2. 2. Болжол менен 5В заряддалгандан кийин, Arduino Nano иштейт.
  3. 3. Arduino 4-биттик LED тилкесинде көрсөтүлгөн 20-биттик чыныгы кокустук санын жаратат.
  4. 4. Бул сан башка туш келди санга салыштырылат, бул баарына белгисиз, бул схема биринчи жолу жүктөлгөндө eepromдо сакталган.
  5. 5. Эгерде тең болсо, күтүү бүттү, машина бул фактыны eepromдо сактайт жана мындан ары жашыл LED жана пьезо сигналын иштетет (эгерде энергия жетиштүү болсо).
  6. 6. Тең болбосо, үмүт, үмүт үзүү, кайталоо.

… ошондой эле, анда -санда генерацияланган номер сигнал берүүчү тарабынан угулат, андыктан сизде Godot Machine бар экенин унутпаңыз.

Годоттун номуруна тийүү ыктымалдыгы 2^20дон жогору же миллиондон бирөө экенин жана машина өтө тез эмес экенин, айрыкча кышында жана күзүндө, аны табуу үчүн жылдар талап кылынышы мүмкүн экенин эске алганда. Сиздин Godot машинаңыз мурасыңыздын бир бөлүгү болуп калышы мүмкүн. Кийинки номерди текшерүүнү күтүп жатып, алыскы улуу неберелериңиз акыры анын жыйынтыгын кантип көрөрүн элестете аласыз. Кыскача айтканда, бул келе жаткан майрам мезгили үчүн идеалдуу белек!

1 -кадам: Схема

Схемалык
Схемалык

Godot Machine төмөнкүлөрдөн турат:

-A Joule Thief энергия жыйноочу комбайн (Q1), ал 9x2200uF конденсаторлорун кубаттайт. Геликсафобиядан жабыркагандар үчүн (индукторлордун акылга сыйбас түйшүгү, ал эми конденсаторлор жана резисторлор мындай көйгөйдү жаратпайт), кол менен ороо талап кылынбайт деп коркпогула: бириктирүү стандарттык коаксиалдуу индукторлорду бул жерде көрсөтүлгөн 2 -сүрөт. Укмуш трюк!

-Дискреттик транзистордук электр которгуч (Q2, Q3, Q4), ал 5V1де күйгүзүлөт жана 3.0V тегерегинде өчөт. Эгерде сиз башка (жалпы максаттагы) транзисторлорду колдонсоңуз, R2-R4ти бир аз тууралоону каалашыңыз мүмкүн.

-Энтропия генератору (Q6, Q7, Q8). Бул схема микровольттон вольттун деңгээлине чейинки чөйрөдөгү электрондук ызы -чууну күчөтөт. Бул сигнал башаламандыкка негизделген (окуу боюнча) туш келди сан генераторун алуу үчүн тандалып алынат. Гитаранын кылынын бир бөлүгү антенна катары иштейт.

-A 4 LED же 4 кызыл өзүнчө LED, пьезо-сигнал жана жашыл LED менен LED-бар.

Көңүл буруңуз, электр которгучтун чыгышы (Q4 коллектору) VIN пинине эмес, Arduino Nano 5V пинине туташкан!

2 -кадам: Годот машинасын куруу

Годот машинасын куруу
Годот машинасын куруу
Годот машинасын куруу
Годот машинасын куруу
Годот машинасын куруу
Годот машинасын куруу

Мен схеманы перфорборттун бир бөлүгүнө курдум. Ал жерде өзгөчө эч нерсе жок. 2V/200mA күн панели башка долбоордун калдыгы. Бренд Velleman болуп саналат. Сүрөттө көрсөтүлгөндөй, курч бычак менен ачуу оңой, бурамалар ж.б тешиктерди бургулоо. Электр панели жана күн панели фанеранын эки бөлүгүнө кадап коюлган. Күндүн панелин күнгө карай терезенин үстүндө жайгаштырса болот деген ой.

3 -кадам: Код: Баш аламандыктан туш келди сандар?

Код: Баш аламандыктан туш келди сандар?
Код: Баш аламандыктан туш келди сандар?
Код: Баш аламандыктан туш келди сандар?
Код: Баш аламандыктан туш келди сандар?
Код: Баш аламандыктан туш келди сандар?
Код: Баш аламандыктан туш келди сандар?

Кокус сандар кантип жасалат? Ооба, алар математика менен жасалган!

Arduino кокустук сандар генераторунун функциясын random () колдонуунун ордуна, мен өзүмдүн Random Number Generator (RNG) жазууну чечтим.

Бул детерминисттик баш аламандыктын эң жөнөкөй мисалы болгон логистикалык картага негизделген. Бул жерде ал кантип иштейт:

Х 0 менен 1дин ортосундагы кандайдыр бир реалдуу балл дейли, анан эсептеп көрөлү: x*r*(1-x), мында r = 3.9. Жыйынтык сиздин кийинки 'x' белгисиңиз. Чексиз кайталаңыз. Бул сизге 0 менен 1дин ортосундагы бир катар сандарды берет, биринчи сүрөттөгүдөй, бул процесс x = 0.1 (кызыл) жана x = 0.1001 (көк) баштапкы мааниси үчүн башталган.

Эми бул жерде эң сонун жери: эки башка баштапкы шартты канчалык жакын тандаганыңызга карабай, эгерде алар бирдей болбосо, натыйжада сандардын сериясы акыры айырмаланат. Бул "баштапкы шарттарга сезимтал көз карандылык" деп аталат.

Математикалык жактан x*r*(1-x) карта теңдемеси парабола болуп саналат. 2-сүрөттө көрсөтүлгөндөй, сиз өрмөк курулушу деп аталган нерсени колдонуп, х сериясын графикалык түрдө аныктай аласыз: горизонталдык огунда xтен баштаңыз, y огунда функциянын маанисин табыңыз, андан кийин 45те түз сызыкка чагылдырыңыз градус бурчу баштап аркылуу өтөт. Кайталоо. Кызыл жана көк серияларда көрсөтүлгөндөй, башында жабык болсо дагы, алар 30га жакын кайталоодон кийин толугу менен айырмаланат.

Эми, 'r = 3.9' саны кайдан келет? Көрсө, rдын төмөн мааниси үчүн биз эки гана алмашып турган x-мааниге ээ болобуз. R-параметрин жогорулатуу бир убакта 4, 8, 16 маанилеринин ортосундагы термелүүгө өтөт. Бул бутактар же бифуркациялар r көбөйгөн сайын тезирээк келип, "мезгил баш аламандыкка эки эсе көбөйтүү жолу" деп аталат. Горизонталдык огунда r менен көптөгөн х-кайталоолор вертикалдуу түрдө бири-бирине дал келген сюжет бифуркация участогу деп аталат (3-сүрөт). R = 3.9 үчүн карта толугу менен башаламан.

Ошентип, эгер биз көптөгөн x-жаңыртууларды эсептеп, алардан үлгү алсак, анда биз кокус санга ээ болобузбу? Жок, бул учурда бул Pseudo Random Number генератору болмок (PRNG), анткени эгер биз ар дайым бир эле баштапкы мааниден баштасак (баштапкы абалга келгенден кийин), биз дайыма ошол эле ырааттуулукту алмакпыз; ака детерминистикалык башаламандык. Бул жерде энтропия генератору келет, ал логистикалык картаны айлана-чөйрөдөн табылган электр ызы-чуусунан түзүлгөн.

Башкача айтканда, кокус сандар генераторунун коду муну аткарат:

- А0 пининдеги энтропия генераторунун чыңалуусун өлчөө. Эң аз дегенде 4 битти гана сактаңыз.

- Бул 4 битти "үрөн" маанисине жылдырыңыз, 32-бит өзгөрмөлүү чекитти алуу үчүн 8 жолу кайталаңыз.

- Үрөндү 0дөн 1ге чейин кайра өлчөө.

- Бул үрөндүн орточо эсебин жана х, логистикалык картанын учурдагы абалын.

- Логистикалык картага көптөгөн (64) кадамдарды илгерилетүү.

- Логистикалык карта абалынан xти бир аз бөлүп алыңыз, анча -мынча ондукту текшериңиз.

- Бул битти акыркы жыйынтыкка жылдырыңыз.

- Жогорудагы бардык кадамдарды 20 жолу кайталаңыз.

Эскертүү: коддо Serial.println жана Serial.begin жыйынтыкталат. Сериялык монитордо түзүлгөн кокус сандарды текшерүү үчүн // алып салыңыз.

Адилеттүүлүк үчүн, мен туш келди сандардын сапатын статистикалык жактан текшере элекмин (мисалы, NIST тест пакети), бирок алар жакшы окшойт.

4 -кадам: Godot машинаңызга таң калыңыз

Сиздин Godot машинаңызга таң калыңыз!
Сиздин Godot машинаңызга таң калыңыз!

Годот машинаңыздан ырахат алыңыз жана бөлүшүү, комментарий берүү жана/же түшүнүксүз болсо сураңыз.

Годот номеринин табылышын күтүп жатканыңызда, бул Инструктивдүү Математика сынагына добуш бериңиз! Рахмат!

Математика сынагы менен жасалган
Математика сынагы менен жасалган
Математика сынагы менен жасалган
Математика сынагы менен жасалган

"Математика менен жасалган" сынагында экинчи орун

Сунушталууда: