Download
Download
Objectives
• To demonstrate modelling of a robot work cell for pallet picking operation using 3-D graphical User interface in Robodk software.
• To demonstrate robot trajectory planning, programming and simulation of a robot manipulator.
Experimental Setup
The physical setup in the FMS and CIM lab consists of the following:
6-axis Robot manipulator with pneumatic gripper
Robodk Software for simulation of robot
Table, mechanical parts
Computer system for integration of Robodk with robot manipulator
Details of the Exercise
The objective of this experiment is to program a robotic system to autonomously perform a pallet picking task. The task involves retrieving five
rectangular parts positioned at specified locations on a table, transferring each part to a designated target location, and subsequently stacking the parts
on top of each other to form a palletized arrangement. Finally, the robot should return to a predefined home position.
Procedure:
Retrieval and Placement:
a. The robotic system is initialized at a starting position.
b. Using manual programs, the robot identifies and locate the five rectangular parts on the table.
c. The robot is programmed to approach each part individually, grasp it securely, and transport it to the respective target location.
d. At the target location, the robot releases the part with precision.
Palletization:
a. Following the retrieval and placement phase, the robot repeats the process for the remaining parts until all five are positioned at their designated
target locations.
b. The robot is programmed to stack the parts on top of each other to create a palletized structure.
c. Careful attention is given to the stacking sequence and alignment to ensure stability.
Home Position:
a. Upon completing the palletization task, the robot is directed to navigate back to the home position.
b. The home position serves as the reference point for the robot's initial and final states in the experiment.
Steps for installing the Robodk software
1. Open the below
https://robodk.com/download
2. Fill the form and access the download.
6. Click on next
7. Click on I agree
8. Click on next
9. Click on install
10. Finish…
Experimental setup
https://drive.google.com/drive/folders/1x_KYrG4pWqJOzkQbpuN5xBWUawqb8xzu?usp=sharing
1. Import table
Click on load file directory
Select download folder
Select Table-1400x800x800mm file
x y z Rx Ry Rz
part2 500 900 0 0 0 0
part3 500 1000 0 0 0 0
part4 500 1100 0 0 0 0
part5 500 1200 0 0 0 0
4. Import box1
Click on load file directory
Select download folder
Select box1 file
Double click on box1
Enter values 300 1300 0 0 0 0 and press enter
5. Import gripper
Click on load file directory
Select download folder
Select gripper file
Drag and drop the gripper in Motoman MH5F
Experimental setup for pick and place operation has been successfully completed.
Programming of Robodk simulator
Now record positions for all the parts and their respective target position in the box to complete palletizing task.
6. Program Structure
Import Libraries
# Import libraries
# Importing the necessary libraries for RobotDK operations.
RDK = Robolink()
# Set the speed of the robot joints to 5 (units depend on the robot and its setup)
# configuring the joint speed of the robot to 5 units, adjusting based on the specific robot configuration.
robot.setSpeedJoints(5)
speed_linear = 5 # Set the desired linear speed in mm/s
robot.setSpeed(speed_linear)
Define Tool
# calculate a new approach position 60 mm along the Z axis of the tool with respect to the target
target = RDK.Item('Target 1') # retrieve the Target item
robot.MoveJ(target) # move the robot to the target
approach = target.Pose()*transl(0,0, 60)
robot.MoveL(approach) # linear move to the approach position
Gripper Close
toolitem.AttachClosest()
Gripper Open
toolitem.DetachAll()
Move robot to home Position
# Move the robot to its home position
# guiding the robot to its predefined home position within the workspace.
robot.MoveJ([0, 0, 0, 0, 0, 0])
Follow the same procedure to pick all the parts and place in the box on top of each another. The code snippet is given as below