changing manipulators

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

changing manipulators

baxelrod

What is the preferred way to change manipulators “on the fly”?  I thought you could pre-load them like this:

 

left_arm = databases.inversekinematics.InverseKinematicsModel(robot,

                                                          manip=robot.GetManipulator('left_arm'))

left_arm.load(freeinc=0.01)

 

right_arm = databases.inversekinematics.InverseKinematicsModel(robot,

                                                          manip=robot.GetManipulator('right_arm'))

right_arm.load(freeinc=0.01)

 

then call these at any time:

 

left_arm.manip.FindIKSolutions(…)

right_arm.manip.FindIKSolutions(…)

 

but it looks like only one ik database can be loaded at any time.  Do I need to call load() every time when changing manipulators?  Or can I still pre-load them somehow then only change the active manipulator?

 

Thanks,

Ben

 

Ben Axelrod

Sr. Robotics Software Engineer

iRobot Corporation

8 Crosby Drive, M/S 8-1

Bedford, MA 01730

(781) 430-3315

[hidden email]

 


------------------------------------------------------------------------------
Dive into the World of Parallel Programming The Go Parallel Website, sponsored
by Intel and developed in partnership with Slashdot Media, is your hub for all
things parallel software development, from weekly thought leadership blogs to
news, videos, case studies, tutorials and more. Take a look and join the
conversation now. http://goparallel.sourceforge.net/
_______________________________________________
Openrave-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/openrave-users
Reply | Threaded
Open this post in threaded view
|

Re: changing manipulators

Rosen Diankov
Administrator
I'm pretty sure it will keep the IK solvers for each manipulator pre-loaded. There's no reason why loading one manip would reset another.
First check manip.GetIkSolver(). If it is really reset, put a gdb breakpoint on all the places that reset the iksolver (in robotmanipulator.cpp) and see which one gets called.


2015-03-31 6:29 GMT+09:00 Axelrod, Ben <[hidden email]>:

What is the preferred way to change manipulators “on the fly”?  I thought you could pre-load them like this:

 

left_arm = databases.inversekinematics.InverseKinematicsModel(robot,

                                                          manip=robot.GetManipulator('left_arm'))

left_arm.load(freeinc=0.01)

 

right_arm = databases.inversekinematics.InverseKinematicsModel(robot,

                                                          manip=robot.GetManipulator('right_arm'))

right_arm.load(freeinc=0.01)

 

then call these at any time:

 

left_arm.manip.FindIKSolutions(…)

right_arm.manip.FindIKSolutions(…)

 

but it looks like only one ik database can be loaded at any time.  Do I need to call load() every time when changing manipulators?  Or can I still pre-load them somehow then only change the active manipulator?

 

Thanks,

Ben

 

Ben Axelrod

Sr. Robotics Software Engineer

iRobot Corporation

8 Crosby Drive, M/S 8-1

Bedford, MA 01730

<a href="tel:%28781%29%20430-3315" value="+17814303315" target="_blank">(781) 430-3315

[hidden email]

 


------------------------------------------------------------------------------
Dive into the World of Parallel Programming The Go Parallel Website, sponsored
by Intel and developed in partnership with Slashdot Media, is your hub for all
things parallel software development, from weekly thought leadership blogs to
news, videos, case studies, tutorials and more. Take a look and join the
conversation now. http://goparallel.sourceforge.net/
_______________________________________________
Openrave-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/openrave-users



------------------------------------------------------------------------------
Dive into the World of Parallel Programming The Go Parallel Website, sponsored
by Intel and developed in partnership with Slashdot Media, is your hub for all
things parallel software development, from weekly thought leadership blogs to
news, videos, case studies, tutorials and more. Take a look and join the
conversation now. http://goparallel.sourceforge.net/
_______________________________________________
Openrave-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/openrave-users