The "E-waste Non-Destructive Disassembly Robot" project is a cutting-edge endeavor aimed at addressing the pressing issue of electronic waste (e-waste) through an innovative robotic system. The project focuses on developing a robot capable of disassembling electronic devices without causing damage, facilitating efficient recycling and reuse of valuable components.
Key Features:
- Utilizes the ABB IRB120 robotic manipulator as the core hardware platform.
- Implements a pure mechanical tool-changing mechanism for the seamless switching of specialized tools.
- Utilizes the Intel RealSense D435 camera and a custom vision algorithm for precise component localization.
- Develops algorithms for approaching, engaging, and unfastening screws with high accuracy.
- Incorporates a central node for supervision, coordination, and fault tolerance.
- Comprehensive documentation is provided in a detailed thesis and accompanying video.
The project aims to contribute to sustainable e-waste management by offering an environmentally friendly and efficient solution for disassembling electronic devices. By enabling the safe extraction of valuable components, it promotes recycling and reduces the environmental impact of e-waste.
- Pure Mechanical Tool changing algorithm
- Detect screws and locate their position precisely.
- Tool-changing algorithm that has 100% success in getting and returning tools.
- Central node that coordinates and determines the order of operation.
- Successfully approach and engage with screws.
- Unscrewing algorithm that can predict precisely when the screw is completely out.
- Operating system
- Ubuntu 20.04 Focal Fossal
- Framework
- Ros1 Noetic
- Python 3.8 or above
- Moveit 1
- PyTorch
roslaunch control start.launch robot_ip:=<robot_ip>
rosrun Central_node starterSystem.py
sudo apt-get install ros-noetic-moveit*
sudo apt-get install ros-noetic-abb*
sudo apt-get install ros-noetic-industrial*
sudo apt-get install ros-noetic-trac-ik-kinematics-plugin
sudo apt-get install ros-noetic-joint*
sudo apt-get install ros-noetic-control*
pip3 install numpy
pip3 install opencv-python
pip3 install open3d
pip3 install seaborn
pip3 install torch
pip3 install torchvision
cd ~/EwasteNonDestructiveDisassembly
rosdep install --from-paths src --ignore-src --rosdistro=noetic -y
catkin build
🚨 This step must be done in both master and slave PC
roslaunch ft_sensor_driver force_filtered.launch
ls /dev/tty* #select the tty that contain the ACM
rosrun rosserial_python serial_node.py _port:=/dev/ttyACM0 _baud:=115200
roscore
#adjust the starter file to see which file should start first
rosrun CentralNode starterSystem.py