Skip to content

This is my implementation for Udacity Robotics Software Engineer Nanodegree Program Pick and Place project.

License

Notifications You must be signed in to change notification settings

ozdemre/RoboND-Pick-and-Place

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Udacity Robotics Software NanoDegree Program Pick&Place Project

This is my implementation for Udacity Robotics Software Engineer Nanodegree Program Pick and Place project.

Problem Statement:

Complete ROS & Gazebo package of Kuka KR210 RRR type robot arm is given in the original project repository of Udacity. Typical Pick and Place operation consist of 6 main steps.

  1. Going for the target objects pose.
  2. Approaching to the object
  3. Grasping the object
  4. Retracting
  5. Going for second target pose
  6. Release the object

Provided ROS package has all the steps except from 1 and 5. What's left to us is to create a Inverse Kinematics service node (IK_Server.py) which calculates the necessary joint angles for all joints for all provided trajectory samples provided by Moveit! Rest is already done by the ROS package

How to use this code?

  1. Go to Udacity original repo, clone and follow the instructions
  2. Go to the /src/RoboND-Kinematics-Project/kuka_arm/launch folder and change the demo flag to "false" in the inverse_kinematics.launch file
  3. Replace the IK_server.py file under /src/RoboND-Kinematics-Project/kuka_arm/scripts with IK_server.py file
  4. Change execution permissions
$ cd ~/catkin_ws/src/RoboND-Kinematics-Project/kuka_arm/scripts
sudo chmod u+x IK_server.py
  1. Open a new terminal, source your workspace and execute:
$ cd ~/catkin_ws/src/RoboND-Kinematics-Project/kuka_arm/scripts
$ ./safe_spawner.sh 

This will initialize Moveit, Rviz and Gazebo ready for Pick and Place operation.

  1. Open another terminal, source it and run the IK_server.py
$ cd ~/catkin_ws/src/RoboND-Kinematics-Project/kuka_arm/scripts
$ rosrun kuka_arm IK_server.py   

Description of Files

  1. writeup_pick_and_place.md Writeup file includes solution steps and all explanations
  2. IK_server.py : ROS node for Forward and Inverse Kinematic Calculations
  3. Video: Video of 9/10 successful pick and place operations.

About

This is my implementation for Udacity Robotics Software Engineer Nanodegree Program Pick and Place project.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages