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
|GoPiGo||Robot Kit||$99||2+enc||-||-||-||-||RPi(NI)||Open Source|
|GoPiGo||Starter Kit||$209||2+enc||-||U||-||-||RPi(NI)||Open Source, Servo|
|BrickPi||Starter Kit||$179||-||-||-||-||-||RPi||Adapt to LEGO|
|GrovePi||Starter Kit||$89||-||-||U,L,S||-||LCD||RPi(NI)||RGB LED, Temp, Relay, Angle, Buzzer|
|Multiplo||Starter Kit v1.0||$134||2||C||I||-||-||Arduino||Open Source|
|Multiplo||Building Kit v1.0||$269||2||C||I,U,L||-||-||Arduino||Open Source, LED, gripper|
|VEX||Super Kit||$329||4+enc||C||U,T,C||G||LCD||TI Tiva||900MHz radio, RGB LED|
|VEX||HexBug Construction Set||$299||4+enc||C||T,C||-||LCD||TI Tiva||900MHz radio, RGB LED|
|VEX||Starter Kit with Controller||$269||4+enc||C||T||-||LCD||TI Tiva||900MHz radio|
|DFRobot||Cherokey 4WD Basic Kit||$109||4||-||I,B||-||-||Arduino||Servo|
|DFRobot||Baron 4WD Mobile Platform||$49||4+enc||-||-||-||-||-|
|DFRobot||Pirate 4WD Mobile Platform||$39||4||-||-||-||-||-|
|DFRobot||4WD Remote Control Robot Kit||$168||4||C||I,B,U,T||-||-||Arduino||Servo|
|DFRobot||4WD MiniQ Complete Kit v2||$97||4+enc||C||L||-||-||Arduino||RGB LED|
|DFRobot||Devastator tank mobile platform||$69||2||-||-||-||-||-|
|Parallax||Robotics Shield with Arduino||$179||2||-||I,T||-||-||Arduino|
|Pololu||3pi||$99||2||-||I||-||LCD||Arduino||5 IR, 8x2 LCD, Buzzer|
|SainSmart||Uno+Shield v5 + 4WD Mobile Car||$63||4||-||U||-||-||Arduino|
|Makeblock||Makeblock Starter Robot Kit v2 (BT)||$149||2||-||I,B,L||-||-||Arduino||Button, RGB LED|
|Makeblock||Makeblock Starter Robot Kit v2 (IR)||$119||2||C||I,U||-||-||Arduino|
|Makeblock||Makeblock mBot v1.1 (BT)||$94||2||C||I,B,U||-||-||Arduino|
|Sparkfun||RedBot Basic Kit||$84||2||-||I||A||-||Arduino|
|Sparkfun||Dagu Rover 5 Robot Platform||$59||4+enc||-||-||-||-||-||Tank tread|
|Emgreat||4 wheel Robot Smart Car Chassis kit||$23||4||-||-||-||-||-|
|ArcBotics||Sparki||$149||2+step||C||I,U,L||G,A,C||LCD||Arduino||Open Source, Servo, Gripper|
|Kingduino||4WD Ultrasonic Robot Kit||$62||4||-||U||-||-||Arduino||Servo|
|LEGO||Mindstorms EV3||$349||3+enc||C||I,B,T,C||-||LCD||ARM9||Servo, Adapt to LEGO|
|LEGO||MindStorms NXT 2.0||-||3+enc||C||B,U,T,C||-||LCD||ARM7||Servo, Adapt to LEGO|
|CanaKit||4WD Platform Arduino||$57||4||-||-||-||-||-|
|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|
- 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
- BASIC Stamp - PBASIC