Open rtonnaer opened 4 years ago
Could you add a screenshot to illustrate what you are referring to?
The definition of the base_frame and apature_frame
Do you mean base_link
?
Do you mean
base_link
?
The description contains two links only, ${prefix}base_link
and ${prefix}aperture_frame
, so it indeed should be base_link
.
Sure, it would make sense to agree upon a logical location of the base_link
. Can you post a screenshot of your proposed position/orientation?
Only some orientation tweaks would be needed (which are application dependent).
I would suggest doing this already with the sensor_mount_link
you mentioned (or whatever the link will be called).
base_link
is the canonical link where "all ROS urdf models" start.
So my suggestion would be to use base_link
as the start of the model, not sensor_mount_link
.
I assumed there that the sensor_mount_link
would be on the bracket/end-effector on which the sensor would be mounted, indeed not the start of the model.
Yeah in my current setup (will share screenshot later) the sensor only has a base_link
and apature_link
. My suggestion is to move the base_link
to a "logical" place. E.g. one of the holes that are used in real life to attach the sensor to a bracket. "Logic" is a relative term in this case, as it will depend on how the sensor mounting is designed.
In turn, my sensor mounting bracket has a base_link
as a root and a sensor_mount_link
to indicate the place where (one of the holes of) the sensor should go.
If we are really radical we add each of the mounting point locations on the sensor w.r.t. the base link in a comment, so a user can (without opening CAD or the sensor drawing) choose which "hole" to use as their mounting point.
btw the model I am refering to can be found on our internal gitlab for the afp-xs tool
Ah, ok, this starts to make sense now.
My suggestion is to move the
base_link
to a "logical" place. E.g. one of the holes that are used in real life to attach the sensor to a bracket
This would depend a bit on how that bracket is shaped exactly, but good candidates for base_link
placement are always "in the middle" of things. So for sensors with mounting flanges, it would be in the middle of the flange. That would make things automatically align when linking up link
s with fixed
joint
s.
"In the middle" of things indeed works great for sensors or end-effectors with clear mounting flanges. However, the scanCONTROL sensors feature 3-4 threaded holes accessible from the left or right side. In the middle would then be inside the sensor casing, which would make linking up link
s with fixed joint
s a little annoying.
I would suggest to pick a side and use that as the default mounting side. The question then would be, do we define the base link in the middle of the mounting holes or just at the center of one of the holes? I favor using one of the mounting holes as the middle, in this case, does not represent any point of interest that is used outside of the URDF (the mounting points are quite randomly located, whereas flanges most of the time use some pattern or pitch circle (??)).
Would it make sense to create a second xacro
for if the sensor is mounted on the non-default side, or even not pick a default side and make a left/right version?
The definition of the base_frame and apature_frame for the 26x0/29x0 and 27x0 makes that the these frames coincidence. From an "assembly of urdf" point of view it would make sense to position the base_frame central to one of the mounting holes (t.b.d which mounting hole).
I have implemented this for the 30xx variant of the sensor so we can discuss if this makes sense. If the assembly that the sensor is integrated into has a "sensor_mount_link", this would yield a logical position of the sensor. Only some orientation tweaks would be needed (which are application dependent).