Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rotation-only goals ignored #94

Open
MoffKalast opened this issue Jun 7, 2021 · 6 comments
Open

Rotation-only goals ignored #94

MoffKalast opened this issue Jun 7, 2021 · 6 comments
Assignees
Labels

Comments

@MoffKalast
Copy link
Contributor

So it would seem that sending simple or actionclient goals without a translational change results in a complete disregard of the goal.

For example, sending a simple goal:

[ INFO] [1623088413.784146154, 48.450000000]: MoveBasic: Received simple goal
[ INFO] [1623088413.869282423, 48.500000000]: MoveBasic: Received goal 0.000000 0.000000 180.000000 base_link
[ INFO] [1623088413.869342759, 48.500000000]: Planning in goal frame: base_link

[ INFO] [1623088413.869401961, 48.500000000]: MoveBasic: Goal in base_link  0.000000 0.000000 180.000000
[ INFO] [1623088413.869471346, 48.500000000]: MoveBasic: Goal in base_link  0.000000 0.000000 180.000000

The base proceeds to do nothing. It seems that the threshold for movement is at around 4cm on both x and y, so if we send a goal at 0.04 0.04 180 it does actually work. Anyhow, pretty annoying and I'm almost sure this used to work at some point.

The tf frame doesn't seem to matter, it also ignores ones in map and odom if the translation sent matches the one of the robot. Steps to reproduce would be to load up rviz and send a manual goal in a 8x8cm area around the robot center.

@MoffKalast MoffKalast added the bug label Jun 7, 2021
@MoffKalast
Copy link
Contributor Author

Another thing, the workaround I mentioned doesn't fully work either it seems.

[ INFO] [1623089989.156225937, 814.851000000]: Planning in goal frame: base_link

[ INFO] [1623089989.156259677, 814.851000000]: MoveBasic: Goal in base_link  0.040000 0.040000 180.000000
[ INFO] [1623089989.156328205, 814.851000000]: MoveBasic: Goal in base_link  0.040000 0.040000 180.000000
[ INFO] [1623089989.156369680, 814.851000000]: MoveBasic: Requested rotation -129.398652
[ INFO] [1623089993.879035292, 817.175000000]: MoveBasic: Done rotation, error 3.706254 degrees
[ INFO] [1623089994.417629743, 817.397000000]: MoveBasic: Done linear, error: x: 0.042650 meters, y: 0.004839 meters
[ INFO] [1623089994.418079954, 817.397000000]: MoveBasic: Requested rotation 2.368312
[ INFO] [1623090006.863490802, 823.137000000]: MoveBasic: Done rotation, error 4.481289 degrees

The rotation and translation do get executed, but the goal itself doesn't get labeled as succeeded, but stays in the active state (1), so the actionclient doesn't know it's done and cannot proceed.

(this is using the latest kinetic-devel, but the same thing happens on feature-externalforce so it's bound to be a somewhat more widespread issue)

@dorkamotorka
Copy link
Contributor

Done in 629c081

@MoffKalast
Copy link
Contributor Author

Still seems to occur in gazebo, when issuing goals without a any notable linear component. For some reason it doesn't happen on the real robot though.

@MoffKalast MoffKalast reopened this Oct 28, 2021
@dorkamotorka
Copy link
Contributor

OK, will take a look into that.

@dorkamotorka dorkamotorka self-assigned this Oct 29, 2021
@dorkamotorka
Copy link
Contributor

dorkamotorka commented Nov 4, 2021

I cannot reproduce the issue in Gazebo, it works for me. I was publishing rotation only goals with rostopic pub.
How can I reproduce it?

@MoffKalast
Copy link
Contributor Author

I think I managed to reproduce it with rviz simple goals, just dropped on the robot. If that's the case and you're running it with rosrun it may be some parameter changed by ezmap's launch of move_basic that causes this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants