Robotics for Control

A mini-sized robot for investigation in robotics and control systems

Similar projects worth following
We present the development of an affordable robotic platform with the aim of providing a comprehensive hardware tool for demonstrating control systems in a low-cost laboratory setting. This platform offers the capabilities necessary for researchers and students to implement a range of techniques, from basic to complex (e.g., from PID to multi-agent systems). The designed and developed hardware enables experiments in single or multiple robot control, utilizing capabilities such as locomotion, communication, perception, and autonomous decision-making. We demonstrate three different control techniques using this platform.

Capabilities and Demos


"The general design is presented using layers. The bottom layer supports the physical components that compose the robot, such as motors, IR sensors, expansion sockets and modules, RGB LED, LiPo battery, LiPo charger, and a global positioning system that uses an overhead camera. The peripheral layer is powered by the ATmega168A microcontroller, which manages and drives all the physical components. Above that, the control layer performs the necessary actions to safely drive the robot in its environment and complete tasks. The application layer describes the individual and collective actions that emerge when the robot or group of robots are operating. Finally, the top layer allows the user, through the communication layer, to debug, run, start/stop, and program the robots.

Hardware Description

The complete hardware is shown in the previous picture and is composed of robots, a computer, a web-cam, and a controller board (the green one attached to the computer). The user can write codes to program the robots using AVR-Studio on the computer. Additionally, the computer runs the 'Central controller' software, which enables the sending of commands to the robots and the processing of web-cam information for global positioning. The 'Central controller' software is compatible with any web-cam with a minimum resolution of 340x480 and 30 fps. The computer application communicates with a Central Controller board via USB to send user commands to the robots wirelessly. The 'Central controller board' has an AT90USB162 microcontroller that receives USB data from the computer and sends it to the robots using the NRF24L01 module. It also allows for wire programming via AVR-ISP

Robot Main Board

The software developed is divided into three parts. The first part is the robot firmware, which enables the motors to be driven, the sensors to be read, and controllers to be implemented. The second part is the "central controller board" firmware and drivers, which facilitate communication between the computer and the robots. Finally, there is the user interface, which enables the user to send start/stop commands to the robots and process overhead camera images.
  • Locomotion subsystem: It is based only on the contact between the rotor of two tiny 3V electric motor and the surface. The manage of the motors speed and direction is done by the microcontroller, using PWM and digital pins, using the TB6552 driver .
  • Communication: Here, we use an ultra low cost transceiver RF (at 2.4GHz) module NRF24L01, which gives the robot the possibility to interchange data with the operator and other robots.
  • Power and Charging Management: The electronics are powered by a 3.7V, 200mAh LiPo battery. A voltage regulator is used to maintain a constant voltage of 3.3V and enable operation above 5 hours of constant working. Also an external LiPo charger has been built that uses an MCP73833 to manage battery reload.
  • Assembly and Costs: Three custom 3D print parts for easy setting-up and calibration of the motors and IR sensors are designed. These two pieces do not need to use glue or screws. An exploded view of mechanical assembly is shown. The 3D pieces models are available Here.
  • The Electronic design is available Here.

Lipo Charger

The Lipo charger board is USB (5V) compatible, it allows to charge a single cell Lipo battery, using the IC MCP73833. It recommendable to use a GP connector between battery and board (take care about polarity !!). The design and fabrication files are available Here

Central Controller Board

The Central controller board is also USB (5V) compatible. It has two functions:

  • First one: It can be used as a programmer emulating the AVRISPmkII programmer. Refer to the software section to it usage. When you have configured the Central controlled board as a AVIPSmkII programmer you just have to interconnect the ISP pins of this board and the ISP robot socket and avr studio to code and run your code.
  • Second...
Read more »

  • 1 × ATMEGA168A Microprocessors, Microcontrollers, DSPs / ARM, RISC-Based Microcontrollers
  • 2 × Custom 3d printed parts 3D Printed parts
  • 1 × NRF24L01 RF Communication
  • 1 × Lipo Battery Power
  • 1 × AT90USB162 Microprocessors, Microcontrollers, DSPs / ARM, RISC-Based Microcontrollers

View all 10 components

  • ​Previous Prototypes

    AndresRengifo05/07/2016 at 17:23 0 comments

    As you see, this prototype had tiny wheels that moved, by friction, with a micro vibration motor. The wheels also had magnets to perform dead reckoning using a hall sensor. However the slipping of the wheels result in inaccuracies in the dead reckoning system. Another problem with the mechanic system was that the power needed to overcome the wheel friction was to big and this prevented the speed control. Finally, minor differences between wheels and mechanical mounting produced a significant changes in the robot steering and make impossible an acceptable linear trayectory.

View project log

Enjoy this project?



raulMrello wrote 05/06/2016 at 06:47 point

Hi Andres, coooool!!!!

I'm impressed with the similarities of a project I'm just working on. You can see it here:

If you like, we can exchange informartion/ideas/comments as I'm doing more or less the same as you.


  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates