Sadržaj:
- Korak 1: 2 Dimenzionalna simulacija
- Korak 2: Uzimanje u 3 dimenzije
- Korak 3: Korištenje pravih planeta
- Korak 4: Završne misli i komentari
Video: Simulacija solarnog sustava: 4 koraka
2024 Autor: John Day | [email protected]. Zadnja promjena: 2024-01-30 09:36
Za ovaj projekt namjeravao sam stvoriti simulaciju kako gravitacija utječe na kretanje planetarnih tijela u Sunčevom sustavu. U gornjem videu \, tijelo Sunca predstavljeno je sferom od žičane mreže, a planeti su nasumično generirani.
Kretanje planeta temelji se na stvarnoj fizici, Zakonu univerzalne gravitacije. Ovaj zakon definira gravitacijsku silu koja na masu djeluje drugom masom; u ovom slučaju Sunce na svim planetima, a planeti jedan na drugom.
Za ovaj projekt koristio sam Processing, programsko okruženje temeljeno na javi. Također sam koristio datoteku primjera Processing koja simulira gravitaciju planeta. Sve što vam je potrebno za to je softver za obradu i računalo.
Korak 1: 2 Dimenzionalna simulacija
Počeo sam gledajući neke videozapise o tome kako kodirati ovo što je Dan Shiffman stvorio na svom YouTube kanalu, Coding Train (dio 1/3). U ovom sam trenutku pomislio da ću koristiti rekurziju za generiranje Sunčevog sustava, slično onome kako Shiffman radi samo koristeći zakone fizike.
Ja sam stvorio planetarni objekt koji je imao 'dječje planete', a koji su također imali 'dječje' planete. Kod za 2D simulaciju nije dovršen jer nisam imao sjajan način za simulaciju gravitacijskih sila za svaki planet. Okrenuo sam se od ovog načina razmišljanja, u smjeru koji se temelji na ugrađenom primjeru obrade gravitacijskog privlačenja. Problem je bio u tome što sam trebao izračunati gravitacijsku silu sa svih ostalih planeta na svakom planetu, ali nisam mogao smisliti kako lako izvući informacije o pojedinom planetu. Nakon što sam vidio kako to radi vodič za obradu, shvatio sam kako to točno učiniti pomoću petlji i niza
Korak 2: Uzimanje u 3 dimenzije
Koristeći primjer koda za planetarnu privlačnost koji dolazi s obradom, pokrenuo sam novi program za 3D simulaciju. Glavna razlika je u klasi Planet, gdje sam dodao funkciju privlačenja, koja izračunava gravitacijsku silu između dva planeta. To mi je omogućilo da simuliram kako funkcioniraju naši solarni sustavi, gdje planete ne privlači samo Sunce, već i svaki drugi planet.
Svaki planet ima nasumično generirane karakteristike kao što su masa, polumjer, početna orbitalna brzina itd. Planeti su čvrste kugle i Sunce je sfera od žičane mreže. Osim toga, mjesto kamere se okreće oko središta prozora.
Korak 3: Korištenje pravih planeta
Nakon što sam spustio okvir za 3D simulaciju, koristio sam Wikipedia kako bih pronašao stvarne planetarne podatke za naš Sunčev sustav. Napravio sam niz objekata planeta i unosio stvarne podatke. Kad sam to učinio, morao sam smanjiti sve karakteristike. Kad sam to učinio, trebao sam uzeti stvarne vrijednosti i pomnožiti ih s faktorom za smanjenje vrijednosti, umjesto toga, učinio sam to u jedinicama Zemlje. To jest uzeo sam omjer vrijednosti Zemlje prema vrijednosti drugih objekata, na primjer Sunce ima 109 puta veću masu od Zemlje. Međutim, to je dovelo do toga da su veličine planeta izgledale prevelike ili premale.
Korak 4: Završne misli i komentari
Ako bih nastavio raditi na ovoj simulaciji, poboljšao bih/poboljšao nekoliko stvari:
1. Prvo bih sve jednolično skalirao koristeći isti faktor skaliranja. Zatim bih za poboljšanje vidljivosti orbita dodao trag iza svakog planeta da vidim kako se svaka revolucija uspoređuje s prethodnom
2. Kamera nije interaktivna, što znači da je dio orbita izvan ekrana, "iza osobe" koja gleda. Postoji biblioteka 3D kamera pod nazivom Peazy Cam, koja se koristi u 2. dijelu video serije Coding Train o ovoj temi. Ova knjižnica omogućuje gledatelju rotiranje, pomicanje i zumiranje kamere tako da može pratiti cijelu orbitu planeta.
3. Konačno, planeti se trenutno ne razlikuju jedan od drugog. Volio bih svakom planetu i Suncu dodati 'kože' kako bi gledatelji prepoznali Zemlju i slično.
Preporučeni:
Bicikliranjem solarnog vrtnog svjetla do RBG -a: 7 koraka (sa slikama)
Uz biciklizam solarnog vrtnog svjetla do RBG -a: Na Youtubeu ima mnogo videozapisa o popravljanju solarnih vrtnih svjetala; produžavajući vijek trajanja baterije solarnog vrtnog svjetla tako da rade dulje noću i bezbroj drugih hakova. Ovaj Instructable je malo drugačiji od onih koje nalazite na Y
Izgradnja automatskog solarnog tragača s Arduino Nano V2: 17 koraka (sa slikama)
Izgradnja automatskog solarnog tragača s Arduino Nano V2: Bok! Ovaj Instructable zamišljen je kao drugi dio mog projekta Solar Tracker. Za objašnjenje kako solarni tragači rade i kako sam dizajnirao svoj prvi tragač, koristite donju vezu. Ovo će ponuditi kontekst za ovaj projekt.https: //www.instructables.co
Skidanje solarnog znaka u obliku prstena: Učinio sam to pogrešno pa ne morate: 11 koraka
Rušenje solarnog znaka u prstenu: Učinio sam to pogrešno pa ne morate: Dobio sam zvono na vratima, što je prilično strašno. Bravo za Ring. Onda sam dobio kameru s prstenom za prstenje dok su se odvijale sve internetske prodaje za dan zahvalnosti. 50 USD popusta, a oni su mi BESPLATNO poslali ovaj sjajni solarni znak u obliku prstena (samo 49 USD!). Siguran sam da
Mini spinner iz solarnog kolebanja: 27 koraka
Mini Spinner iz Solar Wavera: Za izradu ovog uređaja nije potrebno znanje o elektronici
Sustav za nadzor solarnog sustava: 5 koraka
Sustav za nadzor solarnog sustava: Solarni sustav za nadzor mjeri napon, struju i snagu s ploče, te s dva izlaza i napon na bateriji. Ova ploča mjeri ulazni napon, struju i snagu iz dva izvora. Ploče imaju dva izlaza. Svaki ima napon, struju i snagu