Skip to content

Vhcmorais/Avoidance.Obstacle.Robot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 

Repository files navigation

🤖 Autonomous Obstacle-Avoiding Robot – Scientific Research Project (UFU)

🧑🏽‍💻 This repository hosts the source code for an Autonomous Obstacle-Avoiding Robot developed through an undergraduate research project conducted at the Federal University of Uberlândia (UFU) – Santa Mônica Campus.

The project focuses on autonomous navigation using sensors to detect and avoid obstacles in real time, allowing the robot to move through an environment without human intervention.


💡 About the Project

Autonomous mobile robots are widely used in research and industry for tasks involving navigation, mapping, and environmental monitoring.

This project was developed as part of a scientific research initiative aimed at applying concepts of:

  • Embedded Systems
  • Autonomous Navigation
  • Mobile Robotics
  • Sensor Integration
  • Real-Time Systems
  • Control Engineering

The robot continuously monitors its surroundings and adjusts its trajectory whenever an obstacle is detected, ensuring safe and efficient movement.


🚀 Features

  • ✅ Autonomous navigation
  • ✅ Real-time obstacle detection
  • ✅ Automatic obstacle avoidance
  • ✅ Continuous environment monitoring
  • ✅ Motor control and movement management
  • ✅ Embedded control system implementation
  • ✅ Autonomous decision-making

🛠️ Technologies Used

Software

  • Arduino IDE
  • C/C++ (Arduino Framework)

Hardware

  • Arduino-compatible microcontroller
  • Ultrasonic sensors
  • DC motors
  • Motor driver module
  • Battery power supply
  • Mobile robot chassis

📂 Repository Structure

📁 Autonomous_Obstacle_Avoiding_Robot/
├── 📄 rbtdo.ino
└── 📄 README.md

File Description

  • rbtdo.ino → Main source code responsible for sensor reading, obstacle detection, navigation logic, and motor control.
  • README.md → Project documentation.

⚙️ System Operation

The robot operates through three main stages:

1. Environment Monitoring

Sensors continuously scan the surrounding area.

Tasks include:

  • Measuring distances
  • Detecting obstacles
  • Monitoring free paths

2. Decision Making

Based on sensor readings, the robot determines the appropriate action.

Possible actions:

  • Move forward
  • Stop
  • Turn left
  • Turn right
  • Search for a free path

3. Movement Execution

The selected action is sent to the motors, allowing the robot to navigate autonomously.


💻 Source Code

The file:

rbtdo.ino

contains the complete implementation of the robot's control algorithm.

Main functionalities include:

  • Sensor initialization
  • Distance measurement
  • Obstacle detection
  • Navigation control
  • Motor actuation
  • Autonomous path adjustment

The code runs in a continuous loop, processing sensor data and updating the robot's movement in real time.


🔄 Navigation Logic

The robot follows a simple autonomous navigation strategy:

Start
   ↓
Move Forward
   ↓
Obstacle Detected?
   ↓
 Yes ──► Stop
            ↓
     Analyze Direction
            ↓
     Turn to Free Path
            ↓
     Continue Navigation
   ↓
 No
   ↓
Keep Moving

⚙️ How to Run

Requirements

  • Arduino IDE installed
  • Compatible Arduino board
  • Robot hardware assembled and connected

Installation

  1. Clone the repository:
git clone https://github.com/your-username/autonomous-obstacle-avoiding-robot.git
  1. Open:
rbtdo.ino

in the Arduino IDE.

  1. Select the correct board and communication port.

  2. Upload the code to the microcontroller.

  3. Power the robot and place it in an environment with obstacles for testing.


🎯 Research Objectives

This project was developed to explore concepts related to:

  • Autonomous Mobile Robotics
  • Obstacle Avoidance Algorithms
  • Sensor-Based Navigation
  • Embedded Programming
  • Real-Time Control Systems
  • Intelligent Robotics

📊 Results

The robot successfully demonstrates:

  • Autonomous movement
  • Obstacle detection
  • Collision avoidance
  • Route adjustment
  • Real-time decision-making

The project provided practical experience in robotics development and autonomous control systems.


🔬 Future Improvements

Potential future enhancements include:

  • Computer vision integration
  • Simultaneous Localization and Mapping (SLAM)
  • Multiple sensor fusion
  • Autonomous path planning
  • Machine learning-based navigation
  • Wi-Fi/Bluetooth monitoring interface

👤 Author

Developed by Vitor Henrique Carvalho de Morais, Computer Engineering student at the Federal University of Uberlândia (UFU).


🙏 Acknowledgments

Special thanks to the professors, researchers, and colleagues of the Federal University of Uberlândia (UFU) who supported the development of this scientific research project.

🚗 Advancing autonomous robotics through research and innovation.

About

This repository hosts the source code for an autonomous obstacle-avoiding robot developed through an undergraduate research project conducted at the Federal University of Uberlândia (UFU), Santa Mônica Campus.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages