I have been working on upgrading an autonomous robot as part of a university project for the past year. As part of my work I have been switching the old skid steering system to a new active steering one, so have some experience with both methods.
Steering accuracy
Skid steering: Fairly good, need to use a PID loop to keep an accurate heading using a compass.
Active steering: Depends on how you are controlling it, if controlling it manually then it will be much worse than skid steering for accurate turning. When used with a control system, assuming you have some way of measuring steering angle and motor speed, it will be much more efficient, probably slower, but more accurate at keeping a heading without the need for a PID loop and compass
Efficiency in electrical power consumption
Skid steering: Not very good, you waste a huge amount of power every time you need to turn or correct your direction while moving. Most power is wasted when the wheels are skidding as it takes a lot of power to do so.
Active steering: Fairly good, since the motors are never fighting themselves it is much more efficient, although you do have to take into account the actuators doing the steering.
Durability and maintenance
Skid steering: Very Robust if mechanics are done properly, the skidding puts huge loads on the axles and motors, so much sure they are up to scratch.
Maintenance is mostly making sure the tires haven't completely worn through from all the skidding!
Active steering: In my experience the added complexity leads to a huge amount that can go wrong, but again if the mechanism is well designed and components over-specced appropriately then it can be just as good as skid steering. It depends a lot on how exactly you’re doing the steering - the robot I’ve been working on has steering on the same wheels that are motorised, as well as suspension, so the mechanism is fairly complex (ball joints, double-wishbone suspension etc.) For maintenance you need to check a much larger number of parts and keep the mechanics in good shape.
Control complexity (coding and electronics)
Skid steering: Very easy, both forward to go forward, opposite directions to turn, slow down one side to turn while moving forwards. Best manual control, but does require a PID loop and compass for holding an accurate direction when used with a control system. For drive electronics you just need motor drivers for each wheel, relative power levels are normally sufficient for steering.
Active steering: Insanely complex or easier than skid steering (depending on how you are controlling the robot!) If you are remotely controlling it and can have controls for steering angle and motor speed then it is very simple, although skid steering is still easier to drive manually. However if you want to control the steering with software and do path planning etc, it adds a lot of complexity to the control system. What angle do you turn the wheels? How fast do you turn each wheel for a given steering angle?
For drive electronics you will need a way of controlling your steering actuator and a way of knowing what position it is in. You also need to know the speed of each motor so you can control the exact speed of each one (depending on how beefy the mechanics are this might not be necessary). For the robot I am working on if you drive the motors at the wrong speeds then it will probably rip the wishbones right off the robot!
Summary
Skid steering:
- Simple mechanics
- Simple control (both manual and autonomous)
- Easy to construct with good durability
- Inefficient power-usage
Active steering:
- Possibly complex mechanics
- Simple control only with steering angle feedback
- Lots of component probably required, so lots of maintenance
- Can be more efficient
While active steering is certainly more impressive when it works properly, it’s a lot harder to achieve with the control system alone being insanely complex. In retrospect to my own projects, I wouldn’t recommend active steering unless it’s absolutely necessary.
I would however suggest some investigation into holonomic robotics. These use special wheels to allow movement in all available degrees of freedom in 2D space with the same mechanics as a skid-steering robot.
Here are some photos of the old and new robots:
Tiberius 2 - Skid steering
Tiberius 3 - Fully independent suspension and steering
