robot_localization with UWB sensor

asked 2020-04-10 01:49:00 -0500

Filippo gravatar image

updated 2020-04-10 02:17:42 -0500

Hi, I'd like to use my own sensor to localize a robot. My sensor give me x, y, z position in respect of a poin that I can choose. These are in string format (i.e. 1,657 -2,345 1,659 where the first is x position, the second y and the third z)

How can I convert this data to make them fit with the robot_localization and navigation_stack package? I'm using ros kinetic and C++ as language.

edit retag flag offensive close merge delete



Please see these recent Q&As on a similar topic: #q340495 and #q346720.

gvdhoorn gravatar image gvdhoorn  ( 2020-04-10 04:19:38 -0500 )edit

@gvdhoorn I don't see how they are correlated. These question are about laser and set a goal and the don't even present a solution. I'd like to transform my data in a right way to be able to use that in navigation and localization package

Filippo gravatar image Filippo  ( 2020-04-10 05:10:59 -0500 )edit

They are very much related: the OP there also uses an oracle (either lasers or UWB sensor) which provides him with the absolute pose of his robot in a certain space.

The linked questions #346761 and #q346720 discuss how to transform that data such that it can be used with the navigation stack, which seems to be what you are looking for as well.

gvdhoorn gravatar image gvdhoorn  ( 2020-04-10 05:50:50 -0500 )edit

@gvdhoorn yes I understood that I can use move_base but I haven't any sensor that give me the orientation, I can only produces x,y,z. How can I use move_base without any angles and angular velocity?

Filippo gravatar image Filippo  ( 2020-04-11 03:09:42 -0500 )edit

If you don't have anything that can give you orientation, then using move_base properly is going to be difficult if not impossible, as it will not know the orientation of your mobile base and thus cannot reliably plan and execute paths.

gvdhoorn gravatar image gvdhoorn  ( 2020-04-11 03:26:53 -0500 )edit

So what do you suggest? Are the any other package that allows me to use only x,y,z position?

Filippo gravatar image Filippo  ( 2020-04-11 03:50:31 -0500 )edit

Is orientation important for your robot? Or is it completely symmetrical (ie: a circle or sphere)?

If orientation is not important, then you could just always report the same orientation.

You'll have to provide more information, as right now your question is about how to convert data from your sensor to something navigation can use. We know nothing about what your actual goal is.

gvdhoorn gravatar image gvdhoorn  ( 2020-04-11 03:53:14 -0500 )edit

@gvdhoorn there's something new. Now I can provide x,y,z absolute position in respect of a point in space that I can arbitrary choose and also rotation around z axis. At the beginning I have to manage only with planar motion (2D) so I don't need rotation around x and y. What kind of package do you suggest to me to localize and then drive my robot? And how have I to modify my data to make them with ROS package?

Filippo gravatar image Filippo  ( 2020-04-15 11:34:11 -0500 )edit