Return to Robotics Tutorials

Comparison of Robot Kits

For beginners to robotics, starting with a robot kit is a great way to learn how robots and their sensors work. Most robotic kits include multiple motors, a processor and a variety of sensors to get you started. Some include a controller while others are designed to operate on their own (autonomous).

What is the best robot kit to learn robotics? It depends on your goals: how much you plan to expand or customize it, what type of sensors are important to you and what level of processing you want done on-board. The following comparision of robot kits covers a number of robot platforms that are suitable for beginner and advanced builders:

Feature Comparison of Beginner Robot Kits

MakeModel Price Motor Control Sensors IMU Display CPUExtras
GoPiGoRobot Kit $99 2+enc -- -- RPi(NI)Open Source
GoPiGoStarter Kit $209 2+enc -U - - RPi(NI)Open Source, Servo
BrickPiStarter Kit $179 ---- - RPiAdapt to LEGO
GrovePiStarter Kit $89 - -U,L,S - LCD RPi(NI)RGB LED, Temp, Relay, Angle, Buzzer
Multiplo Starter Kit v1.0 $134 2 CI - - ArduinoOpen Source
MultiploBuilding Kit v1.0 $2692CI,U,L - - ArduinoOpen Source, LED, gripper
VEXSuper Kit $329 4+encCU,T,CG LCD TI Tiva900MHz radio, RGB LED
VEXHexBug Construction Set $2994+enc CT,C - LCD TI Tiva900MHz radio, RGB LED
VEXStarter Kit with Controller $269 4+enc CT - LCD TI Tiva900MHz radio
DFRobotCherokey 4WD Basic Kit $1094 -I,B- - ArduinoServo
DFRobotBaron 4WD Mobile Platform $494+enc --- - - 
DFRobotPirate 4WD Mobile Platform $39 4 - -- - -
DFRobot4WD Remote Control Robot Kit $1684 CI,B,U,T- - ArduinoServo
DFRobot4WD MiniQ Complete Kit v2 $974+enc CL- - ArduinoRGB LED
DFRobotDevastator tank mobile platform $692- -- - - 
ParallaxActivityBot $199 2+enc-I,U,T,L- - Propeller 
ParallaxBOE-Bot $148 2-I,T- - Basic Stamp 
Parallax Robotics Shield with Arduino $179 2 -I,T - - Arduino
Pololu3pi $99 2 -I - LCD Arduino5 IR, 8x2 LCD, Buzzer
SainSmartUno+Shield v5 + 4WD Mobile Car $634- U- - Arduino 
MakeblockMakeblock Starter Robot Kit v2 (BT) $1492- I,B,L- - Arduino Button, RGB LED
MakeblockMakeblock Starter Robot Kit v2 (IR) $1192C I,U- - Arduino 
Makeblock Makeblock mBot v1.1 (BT) $94 2 CI,B,U - - Arduino
SparkfunRaspiRobot Board - 2 -- - - -
SparkfunRedBot Basic Kit $842- IA - Arduino 
SparkfunDagu Rover 5 Robot Platform $59 4+enc --- - -Tank tread
Emgreat4 wheel Robot Smart Car Chassis kit $23 4 - -- - -
ArcBoticsSparki $149 2+stepCI,U,LG,A,C LCD ArduinoOpen Source, Servo, Gripper
Kingduino4WD Ultrasonic Robot Kit $62 4 - U- - ArduinoServo
LEGOMindstorms EV3 $349 3+enc CI,B,T,C - LCD ARM9Servo, Adapt to LEGO
LEGOMindStorms NXT 2.0 - 3+encCB,U,T,C- LCD ARM7Servo, Adapt to LEGO
CanaKit4WD Platform Arduino $57 4 - -- - -
FrindoFrindo $79 2 -U - - ArduinoOpen Source
ModMyPiDiddyBorg $209 6 -- - - RPi(NI)
4tronixPi2Go-Lite $46 2+enc-I,U- - RPi(NI)Servo
NOTE: For any additions or corrections, please feel free to leave a comment below! Prices last updated 2016/09/23

 enc = Encoders
step = Stepper
I = InfraRed
U = Ultrasonic
B = Bluetooth
T = Touch
L = Light
C = Color
S = Sound
G = Gyroscope
A = Accelerometer
C = Compass
(NI) = Not Included

Feature Definition

Motor - Wheel Encoders
Motors with built-in encoders allows accurate wheel speed control. This can help your robot drive at a specific speed (useful for odometry or distance measurement) and even drive in a straight line despite an uneven ground surface. Control logic (called (PI or PID control) uses the wheel-speed encoder info to keep the wheels rotating at a known speed.
Robots are either designed to be manually controlled or run autonomously. Manual-controlled robots often include some form of handheld controller including buttons or a joystick. The simplest of human controlled robot kits will include an Infra-Red (IR) remote control, which is good for short-range control and limited precision. More advanced robots may include Bluetooth (BT) or WiFi control.
Note that most simple manual robot controllers are non-proportional; that is they include buttons for forward, back, turn left, turn right, but rarely provide any "in-between" operations. Proportional controllers allow for more advanced controls such as differential drive algorithms.
Autonomous robots usually include a programmable on-board CPU that you can code to perform movements whilst avoiding obstacles (according to other sensors such as IR or Ultrasonic). For more info, see a Comparison of Robot Remote Controls.
Sensors - Infra-Red (IR)
Other than Ultrasonic, InfraRed sensors are among the most common to find on a robotic kit. They provide a means of measuring distance (usually less than 80cm) with a very precise beam (invisible to the human eye). The distance measurement is performed by measuring the angle at which the IR beam of light reflects back to the sensor (called triangulation). IR distance sensors (range finders) are easy to incorporate as most provide an output voltage that can be mapped to the distance.
Another use for IR sensors is in line-following. Some robot kits include a line-following feature which usually means that it provides one or more (sometimes up to 5) IR transmitter / receiver pairs that measure the degree of reflectance from the ground under / ahead of the robot. A black line will not reflect as much IR light as a white background. The robot can then continuously adjust its heading to keep the threshold between light and dark centered over one of the IR sensors.
Still other robot kits (such as the Mindstorms EV3) can use a set of IR sensors to determine the heading to an IR beacon, which can enable a robot to track and move towards the beacon!
Sensors - Ultrasonic
Nearly all robotic kits include an ultrasonic sensor. Like InfraRed, they are used to measure distance, but instead of looking for a reflected beam of light, they send a series of inaudible pulses and wait for an echo. A real-time processor (such as an Arduino) is used to measure the time between the pulse and echo, giving a linear relationship to the distance measured.
Ultrasonic range finders are harder to integrate (than IR) as they require precise timing measurements, usually done by a processor. There are a couple other reasons for the popularity of the ultrasonic sensors on robotic kits: they are extremely cheap ($3) and they are often made to look like a pair of eyes, which can appeal to some. Unlike IR, the ultrasonic "beam" is much wider, making it more suitable to detecting chair legs and other narrow objects that IR may fail to see.
Sensors - Touch
Ideally, most robots will detect an approaching obstacle (using IR or ultrasonic) before colliding with it. But, ultimately, it is still possible for certain objects to be overlooked by the sensors or processing algorithms (especially if the robot is moving quickly). Therefore, it is desirable to have a last-resort detection by means of touch. Touch or bump sensors can be used to trigger an immediate stop to the robot once contact is established.
IMU - Gyro
One example of an Intertial Measurement Unit (IMU) is the gyroscope (also known as gyro). These sensors are able to detect a change in orientation (eg. rotating left / right) of the robot and sometimes how far a robot has turned. A gyro can help a robot track in a straight line even though the terrain may be uneven. Gyros can also assist a robot in performing precise turns (eg. 90 degrees right), though this is often assisted by a compass or magnetometer.
IMU - Accelerometer
Another function of an Intertial Measurement Unit (IMU) is providing a multi-axis accelerometer. Accelerometers detect a change in speed (or movement) in all directions, in addition to the effect (direction) of gravity. Accelerometers can be useful on a robot kit for maintaining balance/tilt or detecting contact with another robot.
Some robot kits only include a platform and series of motors while others will include an onboard processor (CPU) that can make navigation decisions autonomously. There is a wide range of processors / microcontrollers that are available for robots, but the most common include: Arduino and the Raspberry Pi (RPi). For a given robot CPU, there are often a few choices as to how they can be programmed. The following list just summarizes the typical languages used for each robot CPU, but many others are possible:
Arduino - Can be programmed in a number of languages including C, C++, Scratch and miniBloq.
Raspberry Pi - Often programmed in C, C++, Python, Scratch and JAVA but since it can drive a full LINUX environment, just about any language can be used.
Mindstorms - ARM - Usually programmed with the Mindstorms graphical editor (based on LabView), but it is also possible to install other operating systems such as LeJOS (enables JAVA) or ROBOTC.
VEX - TI TIVA - ROBOTC, Modkit, easyC
Propeller - C


Reader's Comments:

Please leave your comments or suggestions below!


Leave a comment or suggestion for this page:

(Never Shown - Optional)