-
Notifications
You must be signed in to change notification settings - Fork 8
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
Velocity smoother tests #7
Conversation
@clalancette this is finally starting to pay dividends, i.e. finding bugs! For reference... You might want to make sure we're careful not to default-construct any
I've also started plugging in defaults for the parameters. Should anyone want to run the nodes directly, it crashes if these do not have a default value at the type error check (e.g. 'not set' != double). |
Current Status
|
Good call.
For what it is worth, that was the ROS 1 behavior; these were marked as "mandatory" parameters. I kind of agree with the ROS 1 behavior here, as this is something that should definitely be tuned per-robot. It does make it a little more annoying to run it on the command-line, but you can always do so via:
|
Signed-off-by: Chris Lalancette <clalancette@openrobotics.org>
…ar_z_ Signed-off-by: Chris Lalancette <clalancette@openrobotics.org>
Signed-off-by: Chris Lalancette <clalancette@openrobotics.org>
We were sending all zeros, which is clearly wrong. Signed-off-by: Chris Lalancette <clalancette@openrobotics.org>
Signed-off-by: Chris Lalancette <clalancette@openrobotics.org>
Looking at this a bit further, I found a few things:
This at least gets rid of the more obvious errors, but doesn't look "smoothed" at all to me. So I think there is probably still something else wrong here, but I'm not sure what. |
That way the odometry isn't "lying" during the test. Signed-off-by: Chris Lalancette <clalancette@openrobotics.org>
All right, and it turns out that just using the odometry is no good. The problem there is that the odometry is "lying" during the test; it says the robot is going faster and faster, even though the cmd_vel we are outputting isn't commanding that. So I instead changed the test to work like the ROS 1 version, where the "smooth_cmd_vel" is fed back into the "robot_cmd_vel", and that seems to make it work. At least, I can tune down the linear acceleration and maximum speed, and see those have an effect on the graph. @stonier take a look at what I've done in ffcbcc8, you may or may not agree with it. |
Oh, bugger. Looks like I was walking down the same paths you did (rewiring the feedback channel appropriately), pushed a commit thinking the merge conflict was just something leftover from what I'd done at work. I'm getting smoothing, but there is still some logic breakdown early in the profile. The code seems to be brittle - lots of if-else decisions that just try to make it work. I'll revisit this again ASAP, though the next few days will be difficult to find the time. If you do want to keep plugging away, would you like to push on the |
Alright...working! Well, just one translational test that works for all variants of feedback. Certainly doesn't cover the permutations of things that can happen, nor does it cover angular rotational smoothing. But is probably enough to get started. NB: Not a big fan of this package, but until it can be proven that it doesn't do the 'job' for kobuki, a refactor can wait. |
Re the aforementioned parameter discussion. I'm fine with either When you see the program crash out with I left them with default for now simply because I'm too lazy to revert and test :) |
No description provided.