# Rovers (UGVs)
PX4 supports rovers (Unmanned Ground Vehicles - UGVs) with ackermann and differential steering.
This section contains build logs/instructions for assembling as well as configuring a number of UGV frames.
# Rover Types
PX4 supports rovers with:
- Differential steering: direction is controlled by moving the left- and right-side wheels at different speeds. This kind of steering commonly used on a military tank of the wheels left and right.
- Ackermann steering: direction is controlled by pointing wheels in the direction of travel (ackermann geometry (opens new window) compensates for the fact that wheels on the inside and outside of the turn move at different rates). This kind of steering is used on most commercial vehicles, including cars, trucks etc.
The supported frames can be seen in Airframes Reference > Rover.
# How to Configure a Rover
Using control allocation, it is straightforward to setup a rover.
For vehicles with Ackermann steering:
- In the Airframe configuration, select the Generic Ground Vehicle.
- Set the CA_AIRFRAME parameter to Rover (Ackermann) (5).
- Follow the Actuators document to map the steering and throttle outputs as displayed.
For vehicles with Differential steering:
- In the Airframe configuration, select either the Aion Robotics R1 UGV or NXP Cup car: DF Robot GPX
- Set the CA_AIRFRAME parameter to Rover (Differential) (6).
- Follow the Actuators document to map the left and right motors and throttle outputs.
Gazebo Classic provides simulations for both types of steering:
- Ackermann: ackermann rover
- Differential: r1 rover
This video shows the Traxxas Stampede Rover (an Ackermann vehicle).