forked from RobotLocomotion/drake
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
default frames for rigidbodymanipulators are no longer singletons.
justification from an email i sent out: I've convinced myself that I should make a change to the default frame behavior for RigidBodyManipulators. Currently, they are always instantiated as SingletonCoordinateFrames . The mental model when I started this was that everything was going to live in the urdf, so one urdf -> one unique robot in drake. We've drifted away from that substantially now by adding lots of modification abilities in matlab (starting with optional floating bases, to adding/removing collisions, and today i'm welding lots of joints). So I now think it makes sense to make them good old fashion CoordinateFrames by default instead. They are still handles... so everything in the code we have should still work (e.g. checking that frames are equal), but you simply won't be protected any more from generating two different frames with the same name and different meanings. The most tangible result is that you will not be bothered by error messages which say "a singleton coordinate frame of this name already exists but with a different dimension" anymore. I thought I'd run it by you since you are the primary consumers of the rigidbodymanipulator classes in drake. Please squawk if you think I'm off here. And I will test extensively before committing. NOTE: Atlas is immune here, since it (correctly) creates all of it's coordinate frames explicitly (and as singletoncoordinateframes). This is how I would imagine it working - if you do have a particular robot that you care about, you can always make it have singleton frames. But joe-shmoe-urdf will not. UPDATE: I think it was worse than that. I now believe that i made the frames singleton because it was an easy way to overcome the problem of overwriting existing frames (and therefore losing transformations already established with other coordinate frames). i've added that logic in now. git-svn-id: https://svn.csail.mit.edu/locomotion/robotlib/trunk@6958 c9849af7-e679-4ec6-a44e-fc146a885bd3
- Loading branch information
russt
committed
Aug 16, 2013
1 parent
27c0ecf
commit 6eb1ea6
Showing
6 changed files
with
70 additions
and
15 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -88,3 +88,4 @@ lcmtypes/cpp | |
lcmtypes/java | ||
lcmtypes/python | ||
build | ||
unitTest.log |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
%function singleJointParameterEstimation | ||
|
||
r = RigidBodyManipulator('../urdf/atlas_minimal_contact.urdf'); | ||
shoulder = findJointInd(r,'l_arm_usy'); | ||
|
||
for i=1:getNumBodies(r) | ||
if i~=shoulder | ||
r = weldJoint(r,i); | ||
end | ||
end | ||
|
||
r = compile(r); | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters