https://github.com/anshuman-02/fuzzy-vacuum-cleaner
Python implementation of a fuzzy logic controller for a robotic vacuum cleaner
https://github.com/anshuman-02/fuzzy-vacuum-cleaner
artificialintelligence automation autonomoussystems controlengineering embeddedsystems fuzzylogic iot matlab mechatronics opensource python robotics smartdevices
Last synced: 3 months ago
JSON representation
Python implementation of a fuzzy logic controller for a robotic vacuum cleaner
- Host: GitHub
- URL: https://github.com/anshuman-02/fuzzy-vacuum-cleaner
- Owner: Anshuman-02
- Created: 2025-01-21T13:04:03.000Z (4 months ago)
- Default Branch: main
- Last Pushed: 2025-01-21T13:11:39.000Z (4 months ago)
- Last Synced: 2025-01-21T14:22:24.955Z (4 months ago)
- Topics: artificialintelligence, automation, autonomoussystems, controlengineering, embeddedsystems, fuzzylogic, iot, matlab, mechatronics, opensource, python, robotics, smartdevices
- Language: Python
- Homepage:
- Size: 1.3 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Fuzzy Logic Controller-Based Vacuum Cleaner 🌟
This repository contains the project report and MATLAB outputs for a **Fuzzy Logic Controller (FLC)** designed for a robotic vacuum cleaner. The intelligent system adapts its cleaning strategy based on environmental inputs such as dirtiness level and proximity to obstacles, demonstrating the power of fuzzy logic in automation.
---
## 📝 Problem Statement
Develop a Fuzzy Logic Controller for a robotic vacuum cleaner using MATLAB. The controller:
- Dynamically adjusts cleaning speed and patterns based on real-time inputs.
- Avoids obstacles efficiently.
- Adapts cleaning strategies based on environmental conditions.
- Uses fuzzy rules and membership functions for intelligent decision-making.---
## 📂 Repository Structure
- **`Fuzzy_PBL.docx`**: Detailed project report, including:
- Problem statement.
- Theoretical explanation of fuzzy logic.
- MATLAB code and outputs.
- Flowcharts, algorithms, and conclusions.
- **`README.md`**: Documentation for the project.---
## 📘 Report Highlights
### MATLAB Code and Outputs
The MATLAB implementation includes:
1. **Membership Function Editors**:
- Define input and output variables.
- Design fuzzy sets for dirtiness level, obstacle proximity, and cleaning speed.2. **Rule Viewer**:
- Displays fuzzy if-then rules in action.3. **Surface Viewer**:
- Illustrates the relationship between input variables and output decisions.4. **Fuzzy Logic Designer**:
- Simulates the system and evaluates fuzzy inference rules.### Outputs
- Visualizations from MATLAB's Fuzzy Logic Toolbox, such as rule viewers, membership functions, and surface plots, are documented in the project report.### Python Code
- The project also includes a Python implementation of the fuzzy logic system using the `scikit-fuzzy` library.---
## 🌟 Features
- **Dynamic Control**: Uses fuzzy logic for real-time decision-making.
- **Obstacle Avoidance**: Intelligent navigation through obstacles.
- **Multi-Platform**: MATLAB for simulation, Python for real-world implementation.
- **User-Friendly Interface**: Simulates fuzzy inference and provides interpretable outputs.---
## 🔧 How to Run
### MATLAB Implementation
1. Open MATLAB.
2. Use the code provided in `Fuzzy_PBL.docx` to set up and run the fuzzy logic system.
3. Visualize the outputs using:
- **Membership Function Editors**.
- **Rule Viewers**.
- **Surface Viewers**.