If you have just started your adventurous journey into robotics, this might be the first question in your head. Everyone around uses differential drive robot, but wait a minute, what exactly is it? And why are we using it? This post answers all your questions and also lets you build your first differential drive robot.
To put it simply, differential drive (see picture 1) is a mechanism which allows you to have a fully functional robot with the use of just two motors. Each motor is connected to a wheel. These two motors are then separately powered and controlled (more on this a bit later). Often, a castor wheel is included just to support the overall structure of the robot.
Since both the motors are exactly same, when we apply similar voltage to them, they achieve similar speeds and the robot moves forward. Reversing the voltage reverses the direction of motion of the wheels and a backward motion is achieved. So how can we make our robot change direction? It’s simple; just change the speed of one motor with respect to the other. For example, if we put more voltage on the right motor, the robot will start making a left turn as shown in Picture 2. And as you can probably make out, this if why it is called differential drive; as the change in movement occurs due to difference in speed of the two wheels.
A differential drive configuration is the easiest to design and work with. This is the reason why it is being used so popularly in robotics. But don’t underestimate the power of this configuration. It is also being used in research level platforms such as the Pioneer, Khepera, Alice etc. (see picture 3).
Other wheel configurations are shown in picture 4. The first image is a robot that has only the front wheel powered. The right and left wheels are passive/castor wheels. The front wheel can move forward and can also be steered, therefore has connection to two motors. This configuration is often difficult to realize. Also, such a design does not allow the robot to completely turn at one position, which can be easily realized using a differential drive configuration.
The second is the famous Ackermann steering robot. This configuration is used in the standard car we use for our daily transport. There are two motors in this configuration. One is responsible for driving the rear wheels through a differential gear system. The other motor is responsible for the combined steering of both the front wheel. This is a really efficient configuration as the motion and steering is completely separated.
Now that you know about the different possible configuration, we need to decide which one to begin with. The differential drive is really simple and efficient and therefore, it is the best bet for a beginner. So let’s now turn our focus into building our first differential drive robot. To begin with, let’s write down the inventory.
1. Chassis – A robotic car, like a normal car needs some kind of a body to tie up all other components. This body can be made by a variety of things such as ply wood, plastic sheet, aluminum etc. While fabricating the chassis (the body) on your own can be real fun, it might require little iteration and experience to get it perfect. I would therefore suggest you to go for a ready made chassis that is easily available in online stores or from the local electronic market. One of the chassis that I am really fond of is the magician chassis by Dagu (picture 5). This chassis gives you enough room for playing with different development boards, sensors and electronic circuits. And this would become a necessity as we progress through different tutorials. Some other robust platforms (shown in picture 6) are available through venders such as Robokits, Robomart and Vegarobokits in India.
Picture 5: Magician Chassis
2. Motors – In robotics, we generally use three types of motors – stepper motor, servo motor and DC motor (shown in picture 7). The choice depends on a number of factors which we would cover up in later tutorials (as the need pops up!). The choice of motors is a crucial one and requires a bit of calculation. For a differential drive robot, we need two similar dc motors. DC motors comes in various voltage and speed rating. For our application, a geared DC motor which runs at nearly 6V, less than 300 rpm serves as ideal. These are cheap and readily available through different websites (some of them are given in the helpful reference section). If you have thought of purchasing the magician chassis, you don’t have to worry about motors as the chassis comes with a pair of 6V motor that runs at 90 rpm. If you are using some other platform, make sure that your motor can be mounted on the platform easily.
Picture 7: Different motors used in robotics
3. Wheels – The selection of wheel involves mathematics. I know you don’t like math, especially for a task as trivial as selection of wheels. So I won’t bother you by pumping equations on your face. A general rule of thumb says that the bigger the wheels, the faster the robot can move. That’s awesome right! So let’s put on the biggest wheel we can find around. That is definitely not a good idea. Bigger wheels come with the disadvantage of having difficulty in maneuvering. Also, your robot becomes incapable of carrying huge payloads (everything you put on the body such as battery, electronics etc.). So a design tradeoff calls for a medium diameter wheel (2 – 3 inches would serve our purpose well). Again, if you are going for the magician chassis, the wheel comes along with it.
4. Castor Wheel – If you remember that when we were talking about the differential drive configuration, I told you that you would often need a passive wheel just to support the overall structure of your robot. These wheels are known as castor wheels. You will need one castor wheel for your differential drive robot. The reference at the end would be useful in finding your castor wheel.
Picture 8: Different wheels
5. Power – If you have motors with you, you need voltage to drive it. This voltage can come through a battery or some kind of a solar cell or an adapter. Solar cells would restrict the use of the robot only to outdoors. Use of adapter will require your robot to always have wires hanging around it. So, a pack of battery seems to be the best possible power source. Now, when it comes to batteries, we have a plethora of options available to us. Although alkaline batteries are cheap and popular, it might not be the best bet in case of robotics. Our motors are really hungry for current due to which batteries drain fast. Therefore, it would be rather useful to invest in a pack of rechargeable batteries such as NiMH or NiCad. These can be easily found in the local market. Consider buying 4 of them so that you get a voltage of 6V when put in series. You will also need a battery holder as shown in picture 9. The magician chassis comes with a battery holder.
Picture 9: battery holder
Once you have received all the components, it is only the matter of bolting to get your first robot made. The final robot will look something like picture 10.
From the next tutorial onward, I will be using the magician chassis for building my robot. You can use any other chassis as per your desire or can actually design your own (Do take a picture of it and share with us!).
Since robotics as a hobby requires frequent use of mechanical as well as electronic components, you will be benefited by having some of the following tools in your inventory.
1. Soldering iron (up to 25 W is good enough), solder wire and flux
2. Wire stripper
4. Digital Multi-meter
6. Screw driver kit
Cost estimation (budget prices INR):
1. Chassis – 100 – 150
2. Motors – 200 – 300
3. Wheels – 60 – 100
4. Castor wheel – 20 – 50
5. Battery holder – 50 -100
6. NiMh rechargeable battery (Pack of 4) – ~ 1000
7. Battery charger – ~500
Total – ~ INR 2200/-
If you go for the magician chassis, it will cost you nearly 1200 INR and you will be needed to purchase batteries and charger separately.
1. Magician Chassis Suppliers: www.vegarobokit.com, www.sparkfun.com , www.mgsuperlabs.co.in, www.tenettech.com .
2. Motor, Wheels, Castor Wheel: www.vegarobokit.com, www.robokits.co.in.
3. Battery Holder: www.ebay.in
In the next tutorial, I will introduce you to Arduino (the brain of our robot) and something known as motor driver chip which lets you control your motors. See you next Tuesday!!
Till then, Happy Making!!