Simple arm-curl model

Hi,

I have run a simulation in which I collected Vicon motion data and EMG
data on a subject doing a bicep curl at a constant angular velocity.
I am now constructing 2 simple models. The first - a model that is
driven by the motion capture data, and the second - a model that is
driven by constant angular velocity input. Both models demonstrate an
individual curling 2.5 pounds. I am then going to compare the EMG
output to the AnyBody EMG output. As of now, I have the constant
angular velocity model working, however I am having a hard time
getting the Vicon motion data model to work (I have uploaded it to the
file section - it’s called Validation). Similar to the wheelchair
problem that I have worked on in the past, the lateral elbow, medial
and lateral wrist, and metacarpal are driven with respect to the
shoulder marker (as opposed to the hub marker). However, even with
the wheelchair template, I still can not get the model to run. It
compiles, however I can’t SetInitialConditions because the tolerances
are too large. Any suggestions?

I appreciate your help,
Sarah

Hi Sarah

I took a look at your model… you have enormous errors on your
kinematics, thats why you get the kinematicTol error.
I tried to put a KinematicTol=0.0001 into your study, but the errors i
way larger than that… When I look at the files with the coordinates
from the Wicon, it looks like they are in another unit than meters, I
might think it has something todo with it? or am I wrong? then get
back to me:D
By the way KinematicTol should only be used to make the model run, so
you can identify the problem.

Best regards
Christian, AnyBody Support

— In anyscript@yahoogroups.com, “Sarah R. Sullivan” <sarsulli@…>
wrote:
>
> Hi,
>
> I have run a simulation in which I collected Vicon motion data and EMG
> data on a subject doing a bicep curl at a constant angular velocity.
> I am now constructing 2 simple models. The first - a model that is
> driven by the motion capture data, and the second - a model that is
> driven by constant angular velocity input. Both models demonstrate an
> individual curling 2.5 pounds. I am then going to compare the EMG
> output to the AnyBody EMG output. As of now, I have the constant
> angular velocity model working, however I am having a hard time
> getting the Vicon motion data model to work (I have uploaded it to the
> file section - it’s called Validation). Similar to the wheelchair
> problem that I have worked on in the past, the lateral elbow, medial
> and lateral wrist, and metacarpal are driven with respect to the
> shoulder marker (as opposed to the hub marker). However, even with
> the wheelchair template, I still can not get the model to run. It
> compiles, however I can’t SetInitialConditions because the tolerances
> are too large. Any suggestions?
>
> I appreciate your help,
> Sarah
>

Hi Christian,

Thanks for getting back to me. Vicon reports x-, y-, and z- coordinates in mm,
so in my “MotionTrackerInclude.any” file I have divided my Vicon include file by
1000, which should give me meters. For example, for each marker, I have a
similar line to:

AnyFolder p7 = { // RLEL
AnyVector time = {#include “Kinematics_time.any”}*1/120;
AnyMatrix p = {#include “RLEL_wrt_RSHO.any”}*1/1000;
#include “MarkerMoverWRTHubR.any”
//#include “MarkerMover.any”
};

I think my problem may occur in the JointsAndDrivers file where I have
positioned the pelvis in the environment.

AnyKinEqSimpleDriver SeatHeight = {
AnyKinLinear &PelvisPos = .PelvisPos;
DriverPos = {0,0,0};//{0.0,0.4448,0};
DriverVel = {0,0,0};
//Reaction.Type = {0,0,0};
Reaction.Type = {1,1,1};
};

This is incorrect and my pelvis should be located much higher, however I have no
markers on the pelvis so I’m not quite sure what the exact height should be.
Instead, I took out the above pelvis driver and tried to do the following (since
I am driving my markers with respect to my shoulder marker):

AnyKinLinear ShoulderPos = {
AnyFixedRefFrame &Ground = Main.MyValidation.EnvironmentModel.GlobalRef;
AnyRefNode &RSHO =
Main.MyValidation.HumanModel.Right.ShoulderArm.Seg.Humerus.gh;
};

AnyKinEqSimpleDriver ShoulderHeight = {
AnyKinLinear &ShoulderPos = .ShoulderPos;
DriverPos = {
-0.2580307,
1.497251,
0.2118869
};
DriverVel = {0,0,0};
Reaction.Type = {1,1,1};
};

The DriverPos is the marker placement location in space, however trying this
didn’t work either.

I hope I have helped to define my problem a little better. Any other
suggestions?

I appreciate your help,
Sarah

-----Original Message-----

> Date: Wed Nov 08 22:08:26 EST 2006
> From: “AnyBody Support” <support@anybodytech.com>
> Subject: [anyscript] Re: Simple arm-curl model
> To: anyscript@yahoogroups.com
>
> Hi Sarah
>
> I took a look at your model… you have enormous errors on your
> kinematics, thats why you get the kinematicTol error.
> I tried to put a KinematicTol=0.0001 into your study, but the errors i
> way larger than that… When I look at the files with the coordinates
> from the Wicon, it looks like they are in another unit than meters, I
> might think it has something todo with it? or am I wrong? then get
> back to me:D
> By the way KinematicTol should only be used to make the model run, so
> you can identify the problem.
>
> Best regards
> Christian, AnyBody Support
>
>
> — In anyscript@yahoogroups.com, “Sarah R. Sullivan” <sarsulli@…>
> wrote:
> >
> > Hi,
> >
> > I have run a simulation in which I collected Vicon motion data and EMG
> > data on a subject doing a bicep curl at a constant angular velocity.
> > I am now constructing 2 simple models. The first - a model that is
> > driven by the motion capture data, and the second - a model that is
> > driven by constant angular velocity input. Both models demonstrate an
> > individual curling 2.5 pounds. I am then going to compare the EMG
> > output to the AnyBody EMG output. As of now, I have the constant
> > angular velocity model working, however I am having a hard time
> > getting the Vicon motion data model to work (I have uploaded it to the
> > file section - it’s called Validation). Similar to the wheelchair
> > problem that I have worked on in the past, the lateral elbow, medial
> > and lateral wrist, and metacarpal are driven with respect to the
> > shoulder marker (as opposed to the hub marker). However, even with
> > the wheelchair template, I still can not get the model to run. It
> > compiles, however I can’t SetInitialConditions because the tolerances
> > are too large. Any suggestions?
> >
> > I appreciate your help,
> > Sarah
> >
>
>
>