understanding CalcTrajTiming

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

understanding CalcTrajTiming

garratt
Hi Rosen,

I'm examining some code in actionlib controller:

in SetDesired():
           
ptraj->AddPoint(TrajectoryBase::TPOINT(vcurrentvalues,0));
ptraj->AddPoint(TrajectoryBase::TPOINT(values,0));
ptraj->CalcTrajTiming(_probot,TrajectoryBase::LINEAR,true,false);

It seems like the purpose of this code is to create a trajectory that
linearly interpolates in joint space between the current joint position
and the desired joint position.

However, I notice in TrajectoryBase::_SetLinear()
that no new points are created.

Is there a way that you intended for points to be created if the robot
cannot move between the start and the goal within the given
velocity/acceleration constraints? (also, since we are only adding two
points in actionlib controller, there is no way that the robot can meet
it's acceleration constraints)

The observed robot behavior is that it tries to reach the goal position
at maximum velocity, which is definitely undesirable.

thanks
Garratt


------------------------------------------------------------------------------
Sell apps to millions through the Intel(R) Atom(Tm) Developer Program
Be part of this innovative community and reach millions of netbook users
worldwide. Take advantage of special opportunities to increase revenue and
speed time-to-market. Join now, and jumpstart your future.
http://p.sf.net/sfu/intel-atom-d2d
_______________________________________________
Openrave-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/openrave-users
Reply | Threaded
Open this post in threaded view
|

Re: understanding CalcTrajTiming

Rosen Diankov
Administrator
Hi Garrett,

The CalcTrajTiming function computes the timestamps of each of the
waypoints and initializes the internal structures, it does not create
new waypoints. The SampleTrajectory function allows sampling of a new
point given any timestamp.

To answer your question about the max velocities. Currently
CalcTrajTiming takes a fMaxVelMult parameter that allows you to scale
all velocities.

I agree with you that the trajectory class needs a better way to
expose parameters for fine-tuning the various limits, this is
definitely something we need a lot of feedback on.

rosen,

2010/8/30 garratt <[hidden email]>:

> Hi Rosen,
>
> I'm examining some code in actionlib controller:
>
> in SetDesired():
>
> ptraj->AddPoint(TrajectoryBase::TPOINT(vcurrentvalues,0));
> ptraj->AddPoint(TrajectoryBase::TPOINT(values,0));
> ptraj->CalcTrajTiming(_probot,TrajectoryBase::LINEAR,true,false);
>
> It seems like the purpose of this code is to create a trajectory that
> linearly interpolates in joint space between the current joint position
> and the desired joint position.
>
> However, I notice in TrajectoryBase::_SetLinear()
> that no new points are created.
>
> Is there a way that you intended for points to be created if the robot
> cannot move between the start and the goal within the given
> velocity/acceleration constraints? (also, since we are only adding two
> points in actionlib controller, there is no way that the robot can meet
> it's acceleration constraints)
>
> The observed robot behavior is that it tries to reach the goal position
> at maximum velocity, which is definitely undesirable.
>
> thanks
> Garratt
>
>
> ------------------------------------------------------------------------------
> Sell apps to millions through the Intel(R) Atom(Tm) Developer Program
> Be part of this innovative community and reach millions of netbook users
> worldwide. Take advantage of special opportunities to increase revenue and
> speed time-to-market. Join now, and jumpstart your future.
> http://p.sf.net/sfu/intel-atom-d2d
> _______________________________________________
> Openrave-users mailing list
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/openrave-users
>

------------------------------------------------------------------------------
Sell apps to millions through the Intel(R) Atom(Tm) Developer Program
Be part of this innovative community and reach millions of netbook users
worldwide. Take advantage of special opportunities to increase revenue and
speed time-to-market. Join now, and jumpstart your future.
http://p.sf.net/sfu/intel-atom-d2d
_______________________________________________
Openrave-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/openrave-users