Simple Barrett hand

Typically: "How do I... ", "How can I... " questions
Post Reply
kleinash
Posts: 112
Joined: 28 Sep 2014, 09:58

Simple Barrett hand

Post by kleinash »

Hi,

Currently, the model for the simple Barrett hand closes all fingers at the same time. Is there any way to separate the finger on the one side from the other two? So that the two "sides" can close independently. Making it just a little more realistic.

I looked through the tree structure and the child script and, having played with moving things around, haven't managed to get it working. I am not looking to give different instructions to the two fingers vs the one, just that if the one finger is held back by a collision I would like the other two to continue to close.

Thx

coppelia
Site Admin
Posts: 10366
Joined: 14 Dec 2012, 00:25

Re: Simple Barrett hand

Post by coppelia »

Hello,

Follow this procedure:
  • select Barret_openCloseJoint and Barrett_cyl1 and copy-paste them
  • select the copy of Barret_openCloseJoint (probably Barrett_openCloseJoint1) and attach it to BarretHand
  • attach Barrett_dum1 to the copy of Barrett_cyl1 (probably Barrett_cyl7)
  • select Barret_openCloseJoint0 and Barrett_cyl2 and copy-paste them
  • select the copy of Barret_openCloseJoint0 (probably Barrett_openCloseJoint2) and attach it to BarretHand
  • attach Barrett_dum0 to the copy of Barrett_cyl2 (probably Barrett_cyl8)
Now the single finger is decoupled from the two other fingers. It is now controlled by 2 additional prismatic motors: Barrett_openCloseJoint1 and Barrett_openCloseJoint2 that you need to use in the child script of the Barrett hand.

Cheers

kleinash
Posts: 112
Joined: 28 Sep 2014, 09:58

Re: Simple Barrett hand

Post by kleinash »

Thank you kindly. Worked perfectly.

kleinash
Posts: 112
Joined: 28 Sep 2014, 09:58

Re: Simple Barrett hand

Post by kleinash »

Hi,

Is there any chance you could talk me through separating the two fingers on the other side please?

Thx

coppelia
Site Admin
Posts: 10366
Joined: 14 Dec 2012, 00:25

Re: Simple Barrett hand

Post by coppelia »

  • Select Barrett_openCloseJoint, Barrett_cyl1 and Barrett_dum6, copy-paste them in one copy-paste operation.
  • Select the copy of barrett_openCloseJoint above, then ctrl-select BarrettHand, then [Menu bar --> Edit --> Make last selected object parent]
You will then have to control also the new prismatic joint.

Cheers

kleinash
Posts: 112
Joined: 28 Sep 2014, 09:58

Re: Simple Barrett hand

Post by kleinash »

There is something I am not getting right:

Copy and paste gives me:
Barrett_openCloseJoint3 -> Barrett_cyl10 -> Barrett_dum12
Then I make BarrettHand parent
But now I need to attach the dum12 to something - or do I need to delete one of the other dummy joints?

coppelia
Site Admin
Posts: 10366
Joined: 14 Dec 2012, 00:25

Re: Simple Barrett hand

Post by coppelia »

Oh, I described the procedure without taking into account the first modification you made. But at the same time, it is important that you understand what you are doing, because if you are simply blindly following step-by-step some procedures, you will never know what is really going on and will always need help for every small thing.

You will have to understand how loop-closures work, check also this page that is super important.

Cheers

kleinash
Posts: 112
Joined: 28 Sep 2014, 09:58

Re: Simple Barrett hand

Post by kleinash »

I hear you - probably why I am unable to see which loop to connect now. I read through the page and I get what it's saying, which is dynamic and what the loop is - I am pretty ok with the theory. But it is almost impossible for me to test that it's working because I have to run through matlab and load an object that grasps just right so that one of the fingers is held back.

The last step is to connect the BarrettHand_jointA_2 or BarrettHand_jointA_0 to the dum12. So just focusing on A_2

there are two connected Barrett_dum3 and Barrett_dum4 should they not both have a copied dum? and should I delete the dum6?

Post Reply