Simplest possible simulation on stock KSP — различия между версиями
м (Исправлена опечатка)  | 
				м (Исправлено окончание слова requires (мне кажется что здесь должно быть именно так))  | 
				||
| Строка 1: | Строка 1: | ||
| − | The full Simulation mod pack is relatively resource demanding (RSS with medium textures   | + | The full Simulation mod pack is relatively resource demanding (RSS with medium textures requires 12+ GB RAM).  | 
But you can try Simulation experience using Stock KSP with minimal number of mods.  | But you can try Simulation experience using Stock KSP with minimal number of mods.  | ||
Версия 07:40, 5 марта 2019
The full Simulation mod pack is relatively resource demanding (RSS with medium textures requires 12+ GB RAM). But you can try Simulation experience using Stock KSP with minimal number of mods.
Содержание
You'll need
Software
- Kerbal Space Program 1.6.0+ [1]
 - KSPTOT 1.6.0+ [2]
 - Putty [3]
 - Zello - mobile push-to-talk рация (или настоящая рация).
 
Mods
kOS scripts
Initial save for KSP
saves/initial_save.sfs from archive
Mission Architect scenarios
ma/duna-depature.mat from archive ma/duna-correction-burn.mat from archive
Installation
Install KSP
Buy KSP on Steam, GOG or developer site and install on your PC. Remember KSP installation folder path (will be referenced next as $KSP_PATH).
Install KSP inital save
-  Launch KSP
- In main menu select "Start new"
 - Click "New game"
 - Select game type "Sandbox" and enter name "Simulation"
 - Click "Start!"
 
 - Copy file initial_save.sfs from saves folder from archive to $KSP_PATH/saves/Simulation folder
 
Install KSPTOT
- Download latest release archive compatible with your KSP version. Unzip to any folder.
 - This archive also contains KSPTOTConnect plgin (you'll need it on next step).
 - Copy scenarios duna-depature.mat and ma/duna-correction-burn.mat from ma folder from archive to KSPTOT folder.
 
Install mods
- Download archive with kOS release compatible with your KSP version. Unzip into $KSP_PATH folder.
 - Copy GameData folder from KSPTOT folder to $KSP_PATH folder.
 
Install kOS scripts
Copy files warpup and res from kos folder from archive to $KSP_PATH/Ships/Script folder.
Setup voice commlink
Install Zello app to your smartphone or use real ptp radio.
Run Simulation
-  Load initial save in KSP:
- Run KSP.
 - Click "Start game".
 - Click "Resume saved.
 - Select "Simulation" and click "Load".
 - Press Alt+F9 and select initial_save from the list.
 
 - Launch kOS server
 - Run Putty (putty.exe)
 - Connect to kOS server
 - Launch KSPTOT (KSPTrajectoryOptimizationTool.exe)
 - Connect KSPTOT to KSPTOTConnect
 - Launch Mission Architect in KSPTOT
 - Make sure that you have voice commlink up and running (through Zello or radio).
 
How it works
Data exchange channels are shown on the schema:
-  Mission control uses putty terminal to run kOS commands on the simulation computer:
- _warput_ command is used to start time warp to the given date mark. Command accepts single argument: the target date mark in the timestamp foramt (number of seconds passed from the epoch). Date timestamps are calculated in KSPTOT.
 - _res_ command prints out ship resouses into terminal.
 
 -  Mission control uses KSPTOT to:
- Calculate maneuvers data and control their excution by Crew with the help of Mission Architec
 - Get engine startup time with the help of Maneuver Execution Assistant.
 - Convert date from calendar format to timestamp for the warput command (any date field in KSPTOT).
 - Upload maneuver data to KSP.
 - Get telemetry from KSP with MCC Real Time System.
 
 - Communication between Mission Control and Crew is run through single voice channel over Zello or PTT radio.
 
Lets start
We have:
- Space flight simulation (in KSP) up and running on the simulation computer.
 - kOS server is up and runing in KSP.
 - We have putty terminal connected to kOS server and we can use it to control simulation.
 - KSPTOT connected to KSP through KSPTOTConnect and Mission architect opened and ready to use.
 - Voice commchannel ready to use..
 
We need to assign roles next. We need minimum two participants:
- One (Mission Control) will play as Flight Director, CAPCOM, EECOM and FDO.
 - Another (Crew) will combine roles of Spacecraft Commander and Pilot.
 
Our flight plan:
- We start from low Kerbin orbit at the beginning of Duna transfer window period.
 -  Our tasks:
- Plan Duna depature burn.
 - Execute it.
 - Verify orbit params after burn execution.
 - Compute correction burn if needed.
 
 
How to execute flight plan:
- Mission Control calls Crew and informs them that maneuver calculation process begins.
 -  To calculate maneuver data you need:
- Load duna-depature.mat scenario into Misson Archtect
 - Import initial orbit params from KSP.
 - Run optimization (Ctrl+O)
 
 - After optmization Mission Control calls Crew and informs them that maneuver data is ready.
 - Crew confirms that they are ready to receive maneuver data.
 - Mission Control uploads maneuver to KSP and informs Crew that maneuver has been uploaded.
 - Crew confirms that they see maneuver and copy maneuver dV to Misison Control.
 -  Misison Control now needs to calculate engine startup time (relative to maneuver date).
- First current orbit params are imported into Maneuver Execution Assistant (MEA) tool.
 - Next import maneuver data to MEA.
 - Get ship mass by runnig command "run res." in the kOS terminal.
 - Enter ship mass, engine Isp and Thrust (Isp=350s, Thrust=250kN) into corresponding fields in MEA.
 - Click "Compute Burn Timing Information"
 
 - Mission Control calls Crew and tells them Burn Start Time.
 - Crew copy burn start time.
 - Mission Control requests how many time for preparation for maneuver execution do Crew need.
 - Crew estimates time required to turn ship into direction of the maneuver in minutes (i.e. 1 minute) and passes it to Mission Control.
 - Mission Control calculates date timestamp to warp time using formulae: T = Maneuver time - engine startup time - preparation time. Let's say maneuver time is 40210 seconds, engine startup time is 100 seconds and Crew requested 1 minute to prepare. This gives warp timestamp = 40210 - 100 - 60 = 40050.
 - Mission control calls Crew and requests are they ready for time warp.
 - Crew says ok.
 - Mission control enter command "run warput(40050)." into kOS terminal - time warp starts in KSP.
 - Mission control asks Crew do they observe time acceleration.
 - Crew confirms.
 - When time warp ends, Crew informs Mission control.
 -  Crew begins maneuver execution:
- Turn ship into direction of maneuver (using SAS mode or manually).
 - Start engine in time.
 - Mission control monitors maneuver execution through MCC Real Time System.
 - Crew waits until maneuver dV indicator reaches zero and turns off engine.
 
 - Crew notifies Mission Control that maneuver was executed.
 -  Mission Control verivies maneuver execution:
- Load duna-correction-burn.mat secnario into Mission Architect
 - Import current orbit data into Initial State event
 - Chck orbital params inside Final Spacecarft State box: if Orbiting about = Duna and in the mouse over popup Periapsis Alt. = 100-200 км, then maneuver execution was succesful. If no, we need to calculate correction burn:
 - Run optimization.
 - If optimization result gives orbit that satisfies constraints (Periapsis Alt. = 100 km, Inclanation = 0-10 degree), maneuver data is uploaded to KSP and executes in the same way as was descibed before. If not, when:
 - You need to increase optimization variables range or shift maneuver date.
 
 - The flight plan is considered completed if, after correction, the ship is on a course leading to Duna with pericenter ~100 км and low inclanation.