Skip to content

Latest commit

Β 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ€– RoboSort Pro

IoT-enabled robotic arm system capable of sorting multiple object categories with TFT display monitoring and web-based control dashboard.

Machine Learning β€’ Computer Vision β€’ Robotics β€’ IoT β€’ Embedded Systems


πŸ“– Overview

RoboSort Pro is an intelligent robotic automation system designed to automatically identify, classify, and sort objects based on multiple parameters including:

  • Shape
  • Color
  • Size
  • Weight

The system combines Machine Learning, Computer Vision, Weight Sensing, Robotic Manipulation, Embedded Systems, and Web-Based Monitoring into a single smart automation platform.

Unlike traditional sorting systems that rely on a single parameter, RoboSort Pro performs multi-parameter classification and sorts objects into 16 unique categories using a robotic arm.

The project was developed using a Raspberry Pi 4B, TensorFlow Lite, OpenCV, Flask, HX711 Load Cell Module, TFT Display, and a 6-DOF Robotic Arm.


πŸš€ Key Features

🧠 Machine Learning Based Classification

  • TensorFlow Lite image classification model
  • Trained using Google Teachable Machine
  • Edge AI inference on Raspberry Pi
  • Real-time object recognition

πŸ‘οΈ Computer Vision

The system identifies:

Shape

  • Circle
  • Rectangle

Color

  • Black
  • White

Size

  • Small
  • Large

using image classification and computer vision techniques.


βš–οΈ Weight-Based Classification

The system uses:

  • Load Cell
  • HX711 Amplifier Module

to measure object weight.

Weight categories:

  • Light
  • Heavy

πŸ€– Automated Robotic Arm Sorting

After classification:

  • Object is picked automatically
  • Target bin is determined
  • Robotic arm places object into correct block
  • Arm returns to home position

🌐 Flask Web Dashboard

The system includes a web dashboard with role-based access.

πŸ‘¨β€πŸ’Ό Admin Dashboard

Features:

  • Login Authentication
  • Start System
  • Stop System
  • Reset Statistics
  • Live Monitoring
  • Object Count Statistics
  • User Monitoring
  • Sorting Logs

πŸ‘€ Viewer Dashboard

Features:

  • Read-Only Access
  • Live Statistics
  • Current Sorting Status
  • System Monitoring

πŸ“Ί TFT Display Integration

The TFT display provides:

  • Object Prediction
  • Confidence Score
  • Weight Information
  • Final Category
  • Sorting Status

in real time.


🎯 Object Classification

The visual classifier predicts one of the following categories:

ID Category
0 Black Small Circle
1 Black Big Circle
2 White Small Circle
3 White Big Circle
4 Black Small Rectangle
5 Black Big Rectangle
6 White Small Rectangle
7 White Big Rectangle

βš™οΈ Final Sorting Categories

Visual classification is combined with weight classification to generate:

Circle Objects

  • Black Small Circle Light

  • Black Small Circle Heavy

  • Black Big Circle Light

  • Black Big Circle Heavy

  • White Small Circle Light

  • White Small Circle Heavy

  • White Big Circle Light

  • White Big Circle Heavy

Rectangle Objects

  • Black Small Rectangle Light

  • Black Small Rectangle Heavy

  • Black Big Rectangle Light

  • Black Big Rectangle Heavy

  • White Small Rectangle Light

  • White Small Rectangle Heavy

  • White Big Rectangle Light

  • White Big Rectangle Heavy

Total Categories: 16


πŸ—οΈ System Architecture

                     β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                     β”‚ Raspberry Pi 4B β”‚
                     β””β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                              β”‚
        β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
        β”‚                     β”‚                     β”‚
        β–Ό                     β–Ό                     β–Ό
 Pi Camera Module       Load Cell + HX711      TFT Display
        β”‚                     β”‚
        β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                    β–Ό
          TensorFlow Lite Model
                    β”‚
                    β–Ό
          Classification Engine
                    β”‚
                    β–Ό
          Sorting Decision Logic
                    β”‚
        β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
        β–Ό                       β–Ό
 Flask Dashboard         PCA9685 Driver
                                β”‚
                                β–Ό
                         6-DOF Robotic Arm
                                β”‚
                                β–Ό
                           Sorted Bin

πŸ“Έ Project Gallery

Complete System

System


Robotic Arm

Arm


TFT Display

TFT


Robosort Login Dashboard

Login Page


Admin Dashboard

Admin


Viewer Dashboard

Viewer


Sorting Logs

Logs


πŸ›  Hardware Components

Component Quantity
Raspberry Pi 4B (8GB) 1
Raspberry Pi Camera Module 1
6-DOF Robotic Arm 1
PCA9685 Servo Driver 1
MG996R Servo Motors 3
SG90 Servo Motors 3
Load Cell 1
HX711 Amplifier 1
TFT Display 1
Buck Converter 1
Lithium-Ion Batteries 3

πŸ’» Software Stack

Programming

  • Python

Machine Learning

  • TensorFlow Lite
  • Google Teachable Machine

Computer Vision

  • OpenCV
  • Picamera2
  • NumPy

Web Development

  • Flask
  • HTML
  • CSS
  • JavaScript

Embedded Systems

  • Raspberry Pi GPIO
  • PCA9685
  • HX711

πŸ“‚ Repository Structure

RoboSort-Pro/
β”‚
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ app.py
β”‚   β”œβ”€β”€ dashboard_data.py
β”‚   β”œβ”€β”€ display_manager.py
β”‚   β”œβ”€β”€ main_controller.py
β”‚   β”œβ”€β”€ ml_classifier.py
β”‚   β”œβ”€β”€ servo_control.py
β”‚   └── weight_sensor.py
β”‚
β”œβ”€β”€ templates/
β”‚   β”œβ”€β”€ login.html
β”‚   β”œβ”€β”€ admin_dashboard.html
β”‚   β”œβ”€β”€ viewer_dashboard.html
β”‚   └── logs.html
β”‚
β”œβ”€β”€ model/
β”‚   β”œβ”€β”€ model_unquant.tflite
β”‚   └── labels.txt
β”‚
β”œβ”€β”€ dataset/
β”‚
β”œβ”€β”€ data/
β”‚   β”œβ”€β”€ robot_data.json
β”‚   └── sorting_logs.txt
β”‚
β”œβ”€β”€ testing/
β”‚
β”œβ”€β”€ images/
β”‚
β”œβ”€β”€ videos/
β”‚
β”œβ”€β”€ README.md
β”œβ”€β”€ requirements.txt
└── .gitignore

πŸ”„ System Workflow

  1. Object is placed on the platform.
  2. Camera captures object image.
  3. TensorFlow Lite model predicts visual category.
  4. Load Cell measures object weight.
  5. Weight category is assigned.
  6. Final category is generated.
  7. TFT display updates information.
  8. Dashboard statistics are updated.
  9. Sorting log is generated.
  10. Robotic arm picks object.
  11. Object is placed in assigned block.
  12. Arm returns to home position.

πŸ“ˆ Future Enhancements

  • Conveyor Belt Integration
  • YOLO-Based Detection
  • Cloud Dashboard
  • Mobile Application
  • MQTT Integration
  • Industrial PLC Integration
  • Voice Commands
  • Predictive Analytics
  • Advanced Deep Learning Models

πŸŽ“ Academic Significance

This project demonstrates practical integration of:

  • Artificial Intelligence
  • Machine Learning
  • Computer Vision
  • Robotics
  • Embedded Systems
  • IoT
  • Human-Machine Interfaces
  • Industrial Automation

within a single intelligent automation platform.


πŸ‘₯ Team

Developed as a collaborative B.Tech (CSE - IoT) engineering project focused on smart automation and intelligent object sorting.


⭐ If you found this project useful, consider giving it a star.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages