ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange |
1 | initial version |
But the REP 105 [..] says that I should attach the base_link in any position or orientation of the base.
Your confusion may come from a misinterpretation of the REP.
From REP-105 that you link, the exact phrasing is (emphasis mine):
The base_link can be attached to the base in any arbitrary position or orientation; for every hardware platform there will be a different place on the base that provides an obvious point of reference
Note can
here: it should perhaps have been may, but in the end: REP-105 does not dictate any preferred location for base_link
. It recognises that the "best" location for that frame will be completely dependent on the kinematics of the robot, and the REP authors do not presume to know best, so they simply say: "as a developer/roboticist you probably know best where to put base_link
, so use your experience/insight as a guide and put it in the most logical place".
I am building a car-like robot, and now I was thinking about its tf tree and where I should place the frames.
For Ackermann steering vehicles I've often seen base_link
placed on the axle between the two rear wheels, precisely in the centre. That will not be the "rotational centre" as suggested by the TF tutorials, but that would seem to be impossible in this case (as the rotational centre would be outside the vehicle).
You may want to lookup other ROS-ified Ackermann steering vehicles, such as the MIT racecar and compare their setup to yours. That should give you a good idea of what has worked for those projects.
2 | No.2 Revision |
But the REP 105 [..] says that I should attach the base_link in any position or orientation of the base.
Your confusion may come from a misinterpretation of the REP.
From REP-105 that you link, the exact phrasing is (emphasis mine):
The base_link can be attached to the base in any arbitrary position or orientation; for every hardware platform there will be a different place on the base that provides an obvious point of reference
Note the word "can here: it " there (it should perhaps have been "may, but in the end: "): REP-105 does not dictate any preferred location for base_link
. It recognises that the "best" location for that frame will be completely dependent on the kinematics of the robot, and the REP authors do not presume to know best, so they simply say: "as a developer/roboticist you probably know best where to put base_link
, so use your experience/insight as a guide and put it in the most logical place".
I am building a car-like robot, and now I was thinking about its tf tree and where I should place the frames.
For Ackermann steering vehicles I've often seen base_link
placed on the axle between the two rear wheels, precisely in the centre. That will not be the "rotational centre" as suggested by the TF tutorials, but that would seem to be impossible in this case (as the rotational centre would be outside the vehicle).
You may want to lookup other ROS-ified Ackermann steering vehicles, such as the MIT racecar and compare their setup to yours. That should give you a good idea of what has worked for those projects.
3 | No.3 Revision |
But the REP 105 [..] says that I should attach the base_link in any position or orientation of the
base.base. I am a bit confused because the two pages suggest different things.
Your confusion may come from a misinterpretation of the REP.
From REP-105 that you link, the exact phrasing is (emphasis mine):
The base_link can be attached to the base in any arbitrary position or orientation; for every hardware platform there will be a different place on the base that provides an obvious point of reference
Note the word "can" there (it should perhaps have been "may"): REP-105 does not dictate any preferred location for base_link
. It recognises that the "best" location for that frame will be completely dependent on the kinematics of the robot, and the REP authors do not presume to know best, so they simply say: "as a developer/roboticist you probably know best where to put base_link
, so use your experience/insight as a guide and put it in the most logical place".
I am building a car-like robot, and now I was thinking about its tf tree and where I should place the frames.
For Ackermann steering vehicles I've often seen base_link
placed on the axle between the two rear wheels, precisely in the centre. That will not be the "rotational centre" as suggested by the TF tutorials, but that would seem to be impossible in this case (as the rotational centre would be outside the vehicle).
You may want to lookup other ROS-ified Ackermann steering vehicles, such as the MIT racecar and compare their setup to yours. That should give you a good idea of what has worked for those projects.
4 | No.4 Revision |
But the REP 105 [..] says that I should attach the base_link in any position or orientation of the base. I am a bit confused because the two pages suggest different things.
Your confusion may come from a misinterpretation of the REP.
From REP-105 that you link, the exact phrasing is (emphasis mine):
The base_link can be attached to the base in any arbitrary position or orientation; for every hardware platform there will be a different place on the base that provides an obvious point of reference
Note the word "can" there (it should perhaps have been "may"): REP-105 does not dictate any preferred location for base_link
. It recognises that the "best" location for that frame will be completely dependent on the kinematics of the robot, and the REP authors do not presume to know best, so they simply say: "as a developer/roboticist you probably know best where to put base_link
, so use your experience/insight as a guide and put it in the most logical place".
I am building a car-like robot, and now I was thinking about its tf tree and where I should place the frames.
For Ackermann steering vehicles I've often seen base_link
placed on the axle between the two rear wheels, precisely in the centre. That will not be the "rotational centre" as suggested by the TF tutorials, but that would seem to be impossible in this case (as the rotational centre would be outside the vehicle).
You may want to lookup other ROS-ified Ackermann steering vehicles, such as the MIT racecar and compare their setup to yours. That should give you a good idea of what has worked for those projects.