One of the main difficulties is that the atmosphere isn't thick enough to stop a landing craft. It can slow the lander enough to deploy a parachute, and the parachute can slow the lander to a few tens of metres per second. But that isn't slow enough - the crash would be comparable to hitting a concrete block while breaking the speed limit on a motorway.
Another challenge is that the journey from leaving earth to deploying the solar panels has many steps, and testing them all accurately is very difficult. Each needs to succeed.
The simulation here is meant to show how some of the steps involved in landing a space probe on Mars would work.
The simulation is loosely based around the Schiaparelli Probe, but the details are slightly different. The suspected failure that lead to the loss of the Schiaparelli probe isn't replicated here because it's a 2-dimensional simulation.
The simulation here is made slightly easier by the lack of a requirement to ditch the parachute. The real probe had to ditch the parachute, and then fly to the ground, landing away from where the parachute might drift.
The simulation is below. Edit the javascript and press submit to control the spacecraft. An example script is there to show how the spacecraft can be controlled, but the example won't manage to land the probe.
var sensors = { pressure: pressure * factor, // accuracy is limited at speed. radarLeft: radarLeft, // accurate if heatshield released and low enough radarRight: radarRight, // accurate if heatshield released and low enough angle: angle, // inaccurate in atmo altitude: altitude, // inaccurate in atmo velocityVertical: vv, // inaccurate in atmo unless radar working velocityHorizontal: vh, // inaccurate in atmo unless radar working acceleration: magnitude(acceleration) // accurate, scalar };Angles are in radians. Velocities and acceleration are in m/s and m/s/s. Distances in m. Pressure in Pa.
var output = { parachuteDeploy: false, parachuteCut: false, releaseHeatShield: false, retrosLeft: false, retrosRight: false, messages: [] };
© Hugo2015. Session @sessionNumber