Ardusumo: an Open Source Platform for Fighting Robots using Arduino

The idea

Ardusumo is a universal platform to build robots on wheels that can move around avoiding obstacles using infrared sensors and follow routes marked with dark lines on a white background.

We have created Ardusumo to bring young students to the world of robotics: if suitably programmed, Ardusumo allows robots to perform various autonomous movements, it integrates sensors and actuators of various types with wheels and electric motors.

Arduino Fighting Robots

The platform is Arduino based but consists of a single molded frame that is both mechanical and electronic circuit. It has also various possible assembly, thanks to the modularity and versatility of the connections.

The electronic circuit of the Ardusumo robot is very simple: the core is an Arduino UNO board, interfaced with four sensors – three in front and one on the back- and two Sharp infrared radar. The optical sensors are pointed down and used to follow tracks marked on the ground and recognize when the robot is crossing a delimited border.

Each optical sensor contains a light emitting diode, pointing towards the ground and a detector for reflected light. In this way it can distinguish thanks to light intensity (more light is detected when a more reflective surface is illuminated) the track to follow. The three front sensors are aligned. The middle one follows a track and detect whether the robot it has gone away from it. In that case the microcontroller detects the movement and imparts commands to correct it. The rear sensor is designed to detect when the robot approaches the edge of the ring. In this case, the firmware sends a forward motion command to break the deadlock.

The two infrared radar are pointed forward and slightly tilted sideways. They are the eyes of the robot, used to perceive obstacles and walk around them.

Two LEDs, to illuminate the scene in front of the robot, are interfaced to the Arduino. There’s also a buzzer to give alerts and a dual engines controller used to operate the two geared motors for the traction wheels.
The wheels are placed on the same virtual axis and, by varying the rotation speed,  Arduino “steers” the robot.

In the front, a “ball-caster” support serves as the third wheel for balance. A second ball-caster is located on the opposite side and contributes further to balanceing .

With the same track you can print both: the PCB that hosts all the basic electronics (works as a actual phisical basis) and the four mechanical and electrical connection to the infrared sensors. This in case you decide to mount them.

The Electric Scheme

Ardusumo electronic circuit is based on Arduino: are the connections needed for the contacts on the board are available on side pin-strip. Via D4, D5, D6, D7, D8, D9 and D10, Arduino manages the motors controllers. PWM is used to drive the two motors so they provide traction and rotation to the robot. The robot steers with the same principle used for tanks: by rotating wheels in opposite directions.

Schematic Arduino Fighting Robots

The controller is a TB6612FNG: it contains a double PWM bridge driver, controllable by means of a simple logic. Each of the drivers is composed of an output bridge formed by four complementary MOSFET protected by a diode.

Each section of the pilot is controlled with a PWM signal to be applied to PWMA and PWMB lines (respectively channel A and B). That signal that is duplicated identical between M1 and M2. The AIN1 and AIN2 set A bridge operating mode, while BIN1 BIN2 and do the same for the bridge B.

[box color=”#985D00″ bg=”#FFF8CB” font=”verdana” fontsize=”14 ” radius=”20 ” border=”#985D12″ float=”right” head=”Major Components in Project” headbg=”#FFEB70″ headcolor=”#985D00″]R1: 47 kohm
R2: 390 ohm
R3: 47 kohm
R4: 390 ohm
R5: 47 kohm
R6: 390 ohm
R7: 47 kohm
R8: 390 ohm
R9: 100 ohm
R10: 270 ohm
R11: 47 kohm
R12: 47 kohm

C1: 100 nF 63 VL
C2: 100 nF 63 VL
C3: 470 µF 16 VL
C4: 470 µF 16 VL
C5: 470 µF 16 VL
C6: 470 µF 16 VL
C7: 1 µF 35 VL
C8: 1 µF 35 VL
C9: 100 µF 35 VL

T1: CNY70
T2: CNY70
T3: CNY70
T4: CNY70

P1: Microswitch
P2: Microswitch

BZ1: Buzzer

SW1: Switch

U1: Driver motors (TB6612FNG)

LD1: LED 5 mm red
LD2: LED 5 mm red

– Fuse 1 A
– Battery holder 6xAA
– Ball Caster mod. PBCASTER12 (2 pz.)
– Motors mod. BCM601 (2 pz.)
– IR Sensor GP2D120 (2 pz.)
– Wheels 60 mm mod. RUOTABCM (2 pz.)


For more detail: Ardusumo: an Open Source Platform for Fighting Robots using Arduino

About The Author

Ibrar Ayyub

I am an experienced technical writer holding a Master's degree in computer science from BZU Multan, Pakistan University. With a background spanning various industries, particularly in home automation and engineering, I have honed my skills in crafting clear and concise content. Proficient in leveraging infographics and diagrams, I strive to simplify complex concepts for readers. My strength lies in thorough research and presenting information in a structured and logical format.

Follow Us:

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top