Questions on creating a new application:Moving Hand by driving Carpals

Hello AnyBody-Team,

I would like to create a new „Application“, where the Hand (including the “Carpals”-Segment) makes a defined motion that is based on measured CT-data from the Carpals.
As a starting point I chose the „FreePostureHandSR” – Application/Model.
To modify the application, I’ve read the Tutorials very carefully and took quite a deep look into the model structure of the “FreePostureHandSR”.
In the following I’d like to ask you a few questions if I got the things right, and if my “plan” might work that way:

To implement this motion I want to drive the “carpals”-segment with CT-measured data-points that I read in from txt-files. To do so there are the following ideas to modify the existing application:

  1.  Loose the existing constraints between Radius and “Carpals”-segment, that there is no connection left between the lower arm (containing Radius )and the Hand
    
  2.  Create a new Joint between Radius and Carpals-segment (AnyKinLinear + AnyKinRotational), which Is situated at the very place where the “Capitatum” (bone of distal carpal row) might have its place
    
  3.  Drive this joint by measured data points of the “Capitatum” (translation and rotation)
    

When doing 3) whole carpals-segment is moving like the Capitatum. Because the carpals-Segment stays linked to the rest of the Hand, whole Hand should move the same way. Reactions from the muscles overdrawing the wrist, going from lower arm to Hand might be possible to measure, too.

When doing 1): did i get this right, that the only jointly constraint that has to be loosened are the ones in “BodyModel/Interface/Right/”, namely WristFlexion and WristAbduction?

Could you perhaps tell me, whether these ideas will work and I got these things right so far?

Thanks a lot!

Benni

Hi Benni,
sounds interesting but Im not quite sure if I understand correctly. Basically you just want to drive the carpals segment to some measured motion, right? If this is the case you can simply start by using the data like motion marker data without changing the model. Simply create a segment in space which you can drive using your data, then connect the segement to a virtual marker on the carpals. If you set the driver to {Soft} it should work and you can see if the joint definiiton is ok like it is.
Best regard,
Sebastian

Hi Sebastian,
thanks for your response.

Yes, this is correct so far.
But it is a motion which is relative to Radius bone, so I would like to drive the carpals relative to Radius bone as well.
(for example doing a Flexion/Extension of the Wrist, but not by use of the joints that are already implemented in "BodyModel/Interface/Right/" , but rather by a new joint between carpals segment and radius, situated on the carpals).

This new joint should have 6 DOFS relative to Radius (my idea was to use AnyKinLinear+AnyKinRotational here), because my measured data is defined in a translation (3 components) and a Rotation (3 angles), relative to Radius bone.

When I drive my measured data to the new joint, i think that this will interfere with the joints/constraints already defined in "BodyModel/Interface/Right/". Because of that there was my thinking of deleting these latter ones?

Best wishes
Benni

Hi,
have a look at the JntSR file, here is the wrist joint defined. Radius is connected to a WristJointSeg and this is connected to the hand. This should go away and after excluding the corresponding drivers you can follow your approach.
Best regards,
Sebastian

Thank you very much!
So i’ll try this out.

best regards
Benni