RobotStudio event

Physics Pick and Place

I am having a hard time figuring out how to do a simple pick and place using the physics and smart components.  What I would like to do is create a copy of an object to be picked, attach it to the robot, and then drop it off over a pile of already picked objects.  Seems really simple but the source smart component is acting funny.  When I create a copy of the object and set its physics to dynamic, the new object doesn't show up where it is supposed to.  In addition, the smart component "PhysicsControl" always puts the physics behavior back to inactive.  That is very frustrating.  

Any ideas?

I am loving the new functionality!  RS is the best.    

Comments

  • Hi,
    One thing to note is that the object must have physics behavior set to None or Kinematic for standard attachments to work.
    Here is a simple example where I use a SR Latch together with Attacher and Detacher to control the physics behavior.

    Regards,
    Johannes

    Johannes Weiman
    Software Engineer
    RobotStudio Team, ABB Robotics
  • Genius!  I had 90% of it but the SR Latch is the key.  I still don't quite understand how creating a dynamic object with the source control then making its physics inactive while picking and then unlatching the physics controls returns it to dynamic.  I thought I tried this and it always seemed like the physics control returned the behavior to inactive.  But you clearly show that it returns it to the state that it was before you made it inactive.  

    I can't tell you how much this helps me.  Not that I needed it for a project but because it is so cool.  Thanks for making RS the best tool on the market.

    Shane
  • Johannes Weiman
    edited May 2017
    Thanks :)
    To be exact it doesn't return to the state before it was set inactive, but rather to the state specified in the PhysicsControl. But in this case they're the same.
    Johannes Weiman
    Software Engineer
    RobotStudio Team, ABB Robotics
  • I have now created a smart component that allows you to have the following to setup a simple pick and place.

    Here are some images.




    Here is the library.

    Enjoy!

    Shane



  • I'm trying to do the same exact thing as the OP: I want to pick up an item and drop it into a bin.

    I have a solid with a 5 degree tilt and a rubber object flush against the surface of the solid. The behavior of the solid is set to fixed and the object to dynamic. When I start the simulation the object is automatically pushed up about 10 mm from the surface of the solid. When I set the object to any other behavior (inactive, fixed or kinematic) it stays in place like it is supposed to, but does not drop when the tool releases it. I have also tried raising the object a few cm above the surface of the solid, just to see what happens. The object falls down to the level that it is pushed up to when placed against the surface of the solid.

    There seems to be some kind of invisible surface about 10 mm above the solid. I have tried to make completely new solids, a couple of times, with the exact same result.

    I don't have the "PhysicsControl" SC. Can that be the reason for the strange physics behavior? If so, where can the SC be downloaded?
  • I think it could be because the collision geometry, try "Use original geometry" under "Collision geometry" drop down menu when you select the part in question. 
  • Hello,

    The physics simulation is certainly a great feature, but I am finding it very hard to work with. My intent is to create a smart component gripper that senses a part (having dynamic behaviour) by a plane sensor (it is based on the vacum_gripper from the demo solar simulation) and attaches it when the gripper is set to ON. When the gripper is set to OFF, the part should be detached and its behaviour set back to dynamic. I though the sample model by Johannes Weiman could be an inspiration to solve my problems, but that wasn´t the case. In that model it is not clear how/why the part dynamics is set to 'inactive' when attached. In fact that goes against Johannes first comment, that in order to be attached, part dynamics should be set to none or kinematic. But in his model nowhere is that defined. However his model does work... could it be related to the fact that in that model the robot is picking copied parts, and not the original part? Can anyone explain why this works, and how this could be reproduced in a smart component gripper? Many thanks!