Kerbal Space Program Forum | Polska Społeczność Gry
Galerie => Własna twórczość => Wątek zaczęty przez: JW w Śro, 26 Sie 2015, 15:04:10
-
Witam, jakiś czas temu na forum przedstawiłem program, który był zdolny wylądować statkiem kosmicznym na Munie. Teraz postanowiłem spróbować czegoś trudniejszego.
Jakby ktoś nie wiedział o co chodzi --> http://forum.kerbalspaceprogram.com/threads/68089-1-0-4-kOS-Scriptable-Autopilot-System-v0-17-3-2015-6-27 (http://forum.kerbalspaceprogram.com/threads/68089-1-0-4-kOS-Scriptable-Autopilot-System-v0-17-3-2015-6-27)
Moim celem było tym razem napisanie programu, który wystartowałby rakietą, przeprowadził wszystkie manewry orbitalne, trafił w Dunę i bezpiecznie na niej wylądował łazikiem.
Nie było łatwo, ale po parunastu godzinach pracy oraz wielu wielu próbach udało się:
https://www.youtube.com/watch?v=fnp3D_i3V6E&feature=youtu.be
Jedyna rzecz, jaką kontrolowałem to kamera.
Tutaj możecie pobrać pliki: .craft oraz kod programu --> https://drive.google.com/file/d/0B3CkQEnZQkVZTWNOVHRONFVaQW8/view?usp=sharing
Albo jeśli ktoś woli sam kod --> http://pastebin.com/z1aaZQX6
Jeśli ktoś odkryłby błąd w skrypcie, niech da mi znać.
Dziękuję za uwagę.
P.S. Możecie w tym temacie pokazywać także swoje projekty z modem kOS.
-
Szacunek, piękna misja
-
Świetne.
-
Dobre to.
Pytanie mam. Jak piszesz programy? Klepiesz cały i patrzysz co wyszło po czym wprowadzasz poprawki, czy etapami już na gotowo: orbita -> transfer -> lądowanie?
I jeszcze jedno. Przelot przed Ike policzony czy tak się udało? Mnie raz tak Mun trafił jak z Minmusa wracałem...
-
Piszę jakiś etap, sprawdzam czy został wykonany poprawnie, jeśli trzeba wprowadzam poprawki i znowu testuję. Niestety potem zabiera to wiele czasu, bo tych lotów na Dunę to chyba z 15 musiałem zrobić (i nie mogłem używać maksymalnego warpa). Gdyby zdarzyło się spotkanie z Ike program teoretycznie powinien je uwzględnić, ale nie miałem okazji, żeby to przetestować.
P.S. Wszystkie etapy lądowania testowałem najpierw na Kerbinie. Co ciekawe po męczarni z ustawianiem PID'ów do sterowania gazem wpisałem jakieś losowe i okazały się najlepsze :D
-
Zainspirowany niedawnym lądowaniem Falcona 9 firmy SpaceX, które zakończyło się powodzeniem, uznałem że muszę to zrobić w kerbalach.
https://www.youtube.com/watch?v=8un8yFMKWHo
Silniki uruchamiane są tylko 3 razy.
Wektorowanie ciągu mieści się w granicach 70 - 100%
W czasie startu pracuje wszystkie 9 silników.
Potem używane są jedynie 3.
Cały lot można podzielić na kilka części:
1. Start i lot pionowo w górę na pełnej mocy.
2. Rozpoczęcie zwrotu grawitacyjnego oraz takie ustawnienie przepustnicy, by przyspieszenie wynosiło 15m/s^2.
3. Po wyczerpaniu ~65% paliwa pierwszego stopnia, wyłączenie silników i ustabilizowanie kierunku lotu.
4. Odłączenie drugiego stopnia i ustawnienie się w stronę KSC.
5. Zapłon tylko 3 silników w pierwszym stopniu, oraz silnika głównego drugiego stopnia.
6. Powrót pierwszego stopnia trajektorią balistyczną do KSC. Drugi stopień gwałtownie przyspiesza.
*** Drugi stopień już nas nie interesuje***
7. Zapłon silników na odpowiedniej wysokości.
8. Zerowanie prędkości horyzontalnej i (w miarę) delikatne lądowanie.
9. Stabilizacja ewentualnego wychylenia za pomocą RCS'ów.
10. Koniec.
***Co stanie się z drugim stopniem zależy już tylko od gracza***
Póki co rakieta nie ląduje w żadnym konkretnym miejscu a jedynie "niedaleko" KSC. Może w przyszłości zaimplementuję taką opcję.
Zawartość do pobrania:
https://drive.google.com/file/d/0B3CkQEnZQkVZQzBKYWFVeVZFZmM/view?usp=sharing (https://drive.google.com/file/d/0B3CkQEnZQkVZQzBKYWFVeVZFZmM/view?usp=sharing)
Skrypty:
- Kalcon.ks http://pastebin.com/YGs1sT4N (http://pastebin.com/YGs1sT4N)
- Kalcon_thr.ks http://pastebin.com/Vm3LKB1B (http://pastebin.com/Vm3LKB1B)
- Kalcon_2stage.ks http://pastebin.com/pe0uBRKG (http://pastebin.com/pe0uBRKG) Ten skrypt jest mało ważny, włącza on tylko silniki w drugim stopniu.
Wszystko zrobione jest na stocku (nie wliczając w to kOS).
Konstruktywna krytyka mile widziana :)
-
Bardzo ciekawe , przydał by się poradnik do tego moda kOS sam zanim odpaliłem twoje projekty się namęczyłem ale udało się jakoś :D
-
Wow
Niesamowicie to wygląda! To teraz pozostało tylko oskryptować Orbcommy
Namazane z P8 Lite przez Tapatalk
-
Wygląda to kiepsko, nie ma się czym jarać.
To tak dla entuzjastów nie mających pojęcia o programowaniu.
A poza tym, między nami JW, zrobiłeś kawał dobrej roboty.
Sporo czasu zajęło Ci testowanie kodu.
I myślę, że to jest mankament tego skryptu.
Jest za mało precyzyjny.
A dla tego, bo za bardzo zaufałeś doświadczeniu, a za mało nauce.
Matematyce zwłaszcza.
Kod do separacji pierwszego stopnia jest dosyć poprawny.
Problemy pojawiają się podczas próby powrotu do KSC.
Taka sugestia z mojej strony:
Za dużo liczenia, za mało danych.
Wprowadź więcej stałych, niech kOS nie liczy rzeczy oczywistych i zajmie się sterowaniem rakietą, bo jak na jego możliwości, to kiepsko mu to wychodzi.
Bez problemu można zaprojektować trajektorię Falcona 9.
Najprostsza i najbardziej oczywista z punktu widzenia fizyki.
Pozdrawiam.
Oczekuję poprawek kodu.
Mogę pomóc jeśli będę trzeźwy.
-
Dziękuję za Twoją opinię.
Masz rację, lot jest mało precyzyjny. Niestety, żeby obliczyć precyzyjną trajektorię oraz perfekcyjny moment uruchomienia silników przed lądowaniem, potrzebne są całki, różniczki, itp. a ja na swoim obecnym poziomie rozwoju jeszcze ich nie ogarniam.
Bardzo chętnie przyjmę Twoją pomoc ;)
-
Rekt, użyłeś 3 silników a nie jednego :>! Tylko proszę... jak Falcon 9 to NIE POMARAŃCZKI. No, dam już ci to 8/10 bo nie wiem czy udało się 2 fazie dostarczyć ładunek na orbitę :).
-
Nie chodziło mi o zrobienie wiernej kopii Falcona 9 ani misji Orbcomm, a jedynie o lądowanie rakiety.
-
Cześć wszystkim. Dawno nic nie robiłem w temacie programowania w KSP, ale nadszedł najwyższy czas :D
Moim celem było odtworzenie lotu rakiety New Shepard firmy Blue Origin:
https://www.youtube.com/watch?v=9pillaOxGCo
Istnieje pewna różnica między moim nowym projektem, a poprzednimi, które znajdują się w tym wątku - zamiast modyfikacji kOS tym razem użyłem kRPC (http://forum.kerbalspaceprogram.com/index.php?/topic/130742-130-krpc-control-the-game-using-c-c-java-lua-python-ruby-haskell-v039-14th-june-2017/), który zdecydowanie bardziej mi odpowiada, głównie ze względu na możliwość pisania programów w Javie.
We wstępie chcę jeszcze powiedzieć, że cały projekt zajął mi zdecydowanie więcej czasu (ponad 100 godzin), niż wcześniej zakładałem. Zakodowanie samego lotu, tak żeby wyglądał jak na powyższym filmie nie było problemem. Naprawa wszystkich błędów, małe poprawki i upewnienie się, że program jest przygotowany na wszystkie możliwe okoliczności - to było dla mnie największe wyzwanie i to zajęło mi około 75% całego czasu.
Przygotowałem dwa filmy, które pokazują mój projekt.
Pierwszy jest zmontowany tak, żeby przypominał oryginalny film Blue Origin'a:
https://www.youtube.com/watch?v=QwAmZyfuj9I
Drugi zrobiłem po to, żeby pokazać lot z perspektywy gracza i wyjaśnić na nim kilka rzeczy:
https://www.youtube.com/watch?v=j_b5-HEn9jc
Cały projekt dostępny jest na githubie: link (https://github.com/janw23/New-Kepard)
Mam nadzieję, że podoba Wam się to, co zrobiłem :D
Liczę na konstruktywna krytykę.