Guillaume Matheron

Data scientist, PhD in computer science

Curiosity rover in Kerbal Space Program with working rocker-bogie suspension and differential

KSP rover

It’s always a privilege doing what I love for a living. This past two months I’ve been on Curiosity’s next-of-kin at the NASA Jet Propulsion Lab in Pasadena.

On a boring evening, I started to try making a working Curiosity rover in Kerbal Space Program. The main two challenges were the rocker-bogie suspension and its differential.

KSP rover

Technical stuff

The terrain on Mars is difficult to navigate because of the many rocks, the limited visibility, and the fact that falling into a pothole is simply not an option. NASA’s answer to this problem was the rocker-bogie suspension. All four hinges in this system are free (they are not actuated by a servo), and gravity makes sure all the wheels always touch the ground, and the weight of the rover is equally distributed.

However, the body of the rover is now attached to only two free hinges, which means it can freely rotate (and jam against the ground or other horrible things). A possibility to avoid this would be to have the center of gravity of the rover right under the two rocker joints. However, the body of the rover would stay vertical on steep slopes, reducing the ground clearance (compared to the case where the belly pan is parallel to the slope).

The differential bar solves this problem by enforcing that from the point of view of the body of the rover, the left and right rockers have opposite rotations: when the front left wheel goes down, the front right wheel has to go up by the same amount.

A quick kinematic study of the system shows that it is perfectly constrained :

The variables 7 are roll, pitch, height, two rocker angles and two bogie angles

6 constraints are set by the height of the wheels, and the differential sets the 7th constraint!

KSP stuff

Now, the KSP craft. I used two mods: Infernal Robotics for the hinges, and The Colliders Strike Back for the differential.

The differential works pretty much in the exact same way as the actual differential bar. Two bars attached to a central hinge slide along a third bar that is attached to the rocker. This constrains the angle of the rocker to the angle of the central hinge. Since both mechanisms are attached to the same hinge, both rockers are constrained together, and the pitch of the rover body is the average of the pitches of both rockers.

The collision mod is required since by default KSP doesn’t allow parts of the same craft to collide.

As bonus features:

  • Cameras, as provided by the mod Hullcam VDS, placed in reasonable positions (you can notice the front and rear hazcams, the main navcam, chemcams, etc…)
Camera view
Front HazCam
  • Foldable mast!
  • High-gain antenna, used for communications directly to Earth
  • Nuclear power supply (although the KSP one was too small so I had to use several)

Leave a Reply

Your email address will not be published. Required fields are marked *