Skip to content

A proposed method to automate the milling cell in conventional manufacturing environment to improve productivity and efficiency of the overall process.

Notifications You must be signed in to change notification settings

jd509/Intelligent-Robotic-Millling-Cell

Repository files navigation

Intelligent Robotic Milling Cell

This repository contains code to execute a deep-learning based robotic milling cell in ROS framework using Python and C++.

List of Required Dependencies

The following dependencies need to be installed before running the project.

  • ROS-melodic - framework for running the project.
  • Gazebo - for simulation of the robot motions.
  • MoveIt - Motion Planning of Robots.
  • Keras-API to process deep learning dataset.
  • TensorFlow-API to train Convolutional Neural Networks
  • Sci-kit Learn-Machine Learning module in Python

Installation

Clone the repository in a folder 'Intelligent_Robotic_Milling_Cell' and rename the cloned repository to src. For now, please clone the master branch of the repo using:

git clone -b master https://github.com/jd509/Intelligent-Robotic-Millling-Cell.git

Then, type the following on a terminal:

cd Intelligent_Robotic_Milling_Cell && catkin_make -j7

This will make the project.

Usage

For simulation and planning purpose:

Open a new terminal and paste the following code:

cd Intelligent_Robotic_Milling_Cell
source devel/setup.bash
roslaunch process_visualizer start_simulation.launch

This will start the gazebo with the needed controllers. The initial PID gain have not been set and hence may produce warnings.

The gazebo window should display the robotic cell as follows:

Gazebo World

Now, open another terminal alongside the gazebo and type the following:

cd Intelligent_Robotic_Milling_Cell
source devel/setup.bash
roslaunch ur5_planning ur5_planning.launch

This will start the MoveIt's Motion Planning Framework. The RViz window can then be used to plan and execute robot motions.

Finally, start the User Interface for the cell in the next step as:

cd Intelligent_Robotic_Milling_Cell
source devel/setup.bash
roslaunch user_interface user_interface.launch

Simulation Video

The simulation video is embedded in the thumbnail below. Please follow the youtube link by clicking on the image.

Alt text

Modules

  • Process Visualizer

    The process visualizer package includes the launch file to load objects in the gazebo world.

    • ROS node list:
    • URDF files : This folder contains all the urdf files needed to spawn objects into the world.
  • Convolutional Neural Network

    This package includes the service files, datasets and the pretrained model to classify images using a 6-layered network.

  • Milling Path Generator

    This package includes the nodes to draw millling paths on the workpiece.

  • User Interface

    This package includes the nodes to launch user interface for commanding the robots.

  • MoveIt Planning

    This package includes the launch files and nodes to start the moveit planning for each robot.

    • ROS node list:
      • UR5 Robots : This node controls the motion planning for UR5 robots.
    • UR10 Robot : his node controls the motion planning for UR10 Milling robot.
  • Coordinator : This package controls the information flow in the system.

    System Rqt Graph

Known Issues

If the gazebo specific controllers are not installed on the system, MoveIt will not be able to execute motions. You can install all the ros-controllers by typing:

sudo apt-get install ros*controller*

Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

Please make sure to update tests as appropriate.

License

MIT

About

A proposed method to automate the milling cell in conventional manufacturing environment to improve productivity and efficiency of the overall process.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published