Home› Applications
Discussion
Back to discussions page
mikebeauchemin
Vacuum Beta tester Posts: 23 Crew
Assembling M8 nuts & cap screw using vision & path recording |
186 views
|
Answered | |
/ Most recent by kfur5e
in Applications
|
3 comments |

Hi pros,
I 've prepared a proof of concept for a customer. The application goal was to detect M8 hexagonal nuts and assembled it with a cap screw, both with chrome finish. The parts are about to be assembled using the 2F85 gripper, the FT300 using the path recording function and finally, the wrist camera for detecting the parts laying down on a stopped conveyor.
The first challenge I've faced is the detection of the small nut on the table. I've used two different camera position for the snapshot position and the calibration position as explained in the following DoF discussion: http://dof.robotiq.com/discussion/429/how-to-define-a-snapshot-position
The second challenge was to use a jig to locate & maintain the nut while doing the assembly. As you will see, because of tight tolerances of our jig, we had to add an extra movement in the program to ensure that the nut was inserted in the jig at the proper depth position each time.
The third challenge was using another jig to maintain the part in the good orientation while changing the gripping from the shank to the hexagonal head to enable a simple screwing movement. My suggestion on this, learned with experience, would be the use of a better jig, with chamfers all around especially in the area where the threaded cap screw shank is inserted. The goal is to avoid the screw to be disoriented while going down.
Have you faced similar application on your end? How did you manage it? What would you've done differently than us?
Please find below, the final application video:
https://www.youtube.com/watch?v=NQMcbvuUgmQ&feature=youtu.be
Please have a look at the program created:
Program
I 've prepared a proof of concept for a customer. The application goal was to detect M8 hexagonal nuts and assembled it with a cap screw, both with chrome finish. The parts are about to be assembled using the 2F85 gripper, the FT300 using the path recording function and finally, the wrist camera for detecting the parts laying down on a stopped conveyor.
The first challenge I've faced is the detection of the small nut on the table. I've used two different camera position for the snapshot position and the calibration position as explained in the following DoF discussion: http://dof.robotiq.com/discussion/429/how-to-define-a-snapshot-position
The second challenge was to use a jig to locate & maintain the nut while doing the assembly. As you will see, because of tight tolerances of our jig, we had to add an extra movement in the program to ensure that the nut was inserted in the jig at the proper depth position each time.
The third challenge was using another jig to maintain the part in the good orientation while changing the gripping from the shank to the hexagonal head to enable a simple screwing movement. My suggestion on this, learned with experience, would be the use of a better jig, with chamfers all around especially in the area where the threaded cap screw shank is inserted. The goal is to avoid the screw to be disoriented while going down.
Have you faced similar application on your end? How did you manage it? What would you've done differently than us?
Please find below, the final application video:

Please have a look at the program created:
Program
Robot Program MoveJ Snapshot_Position Gripper Move 60% Camera Locate MoveL Nut_Approach Nut_Pick Gripper Close Nut_Exit MoveL Nut_Place_Approach Nut_Approach_Insertion Path Gripper Open MoveL Nut_Place_Exit Gripper Close MoveL Push_Nut_Into_Recess Nut_Insertion_Retreat MoveJ Snapshot_Position Gripper Move 69% Camera Locate MoveL Screw_Approach Screw_Pick Gripper Close Screw_Exit MoveJ Position_Screw_Vertically Screw_Jig_Approach Screw_Jig_Place Gripper Open Screw_Jig_Exit MoveL Reposition_Tool Screw_Vertical_Pick Gripper Close Screw_Vertical_Pick_Exit Screw_Place_Approach Screw_Place_Insertion Path MoveL Screw_Insertion_Exit Bin_Approach Bin_Place Gripper Open Halt
Tagged:
It's a little hard to see in the video, but it looks like you are using some kind of trajectory to insert the nut into the jig? What kind of movement are you using?
And the waypoints that you used to assemble the screw and the nut do not seem to be following a constant screwing motion. Could you explain how you programmed the screwing motion?
Good point, it was probably hard to see it on the video, I agree.
I've used a path recording trajectory using our URcap to insert the nut in the jig. It's actually an asset since it was correcting movement inaccuracy while using the teach pendant.
I've also used another path recording to do the screwing motion. Instead of starting the calculate waypoints to represent the elliptical movement. It was simpler using the path recording with circular movement combined with a pressure movement along the Z axis following the thread.
How would the program/ robot adapt if it picked up the bolt in the opposite direction (rotated 180 deg)?