-
Notifications
You must be signed in to change notification settings - Fork 524
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
Add ackermann_steering_controller to kinetic-devel #356
Add ackermann_steering_controller to kinetic-devel #356
Conversation
Do I need to add |
Yes please. I'm pushing a new release now but after you made the change I think we are ready for a merge. |
Thank you very much for your reply. I just added If this PR is merged, I would like to add the controllers into other distributions later. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for this. Even though there are a few things I could be nit-picky about, it is time to merge this controller, we can do refactoring further down the line.
@ipa-mdl please approve if you like it and go ahead with the merge 👍 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't see why this code needs a dependency on Gazebo.
Please check the other dependencies as well.
...nn_steering_controller/include/ackermann_steering_controller/ackermann_steering_controller.h
Outdated
Show resolved
Hide resolved
...nn_steering_controller/include/ackermann_steering_controller/ackermann_steering_controller.h
Outdated
Show resolved
Hide resolved
...nn_steering_controller/include/ackermann_steering_controller/ackermann_steering_controller.h
Outdated
Show resolved
Hide resolved
...nn_steering_controller/include/ackermann_steering_controller/ackermann_steering_controller.h
Outdated
Show resolved
Hide resolved
ackermann_steering_controller/include/ackermann_steering_controller/odometry.h
Show resolved
Hide resolved
In general this PR contains a lot of duplcated code (from diff_drive_controller), I would prefer to refactor things properly. |
ackermann_steering_controller/src/ackermann_steering_controller.cpp
Outdated
Show resolved
Hide resolved
Thank you so much for kind review. Yes, the comment #356 (comment) makes sense. Probably https://github.com/ros-controls/ros_controllers/tree/kinetic-devel/four_wheel_steering_controller has the same matter. I would like to refactor them at the next step. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for the update!
There are still some issues (see comments).
I have now compiled the list of dependencies:
<depend>
(find_package + CATKIN_DEPENDS):
controller_interface
diff_drive_controller
hardware_interface
nav_msgs
realtime_tools
roscpp
tf
boost is missing as well, but I can ignore the fact for now ;)
<build_depend>
+ <exec_depend>
(find_package):
pluginlib
urdf_parser (urdf?)
<test_depend>
(find_package):
controller_manager
(geometry_msgs)
(std_msgs)
rosunit
std_srvs
<test_depend>
(no compile options):
gazebo_ros
xacro
DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION}) | ||
|
||
if (CATKIN_ENABLE_TESTING) | ||
find_package(catkin REQUIRED COMPONENTS |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I believe that catkin should not get resolved twice with a different set of components, but I have to double check.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fixed at a8087f7
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not fixed, but I guess it is okay for now. Other packages do the same and it makes sense to fix them in a follow-up PR.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We'll fix the point later as a follow-up PR including other controllers as well!
...nn_steering_controller/include/ackermann_steering_controller/ackermann_steering_controller.h
Outdated
Show resolved
Hide resolved
Okay :) |
I've learnt a lot from you! Thank you so much.
I added Boost related lines into CMakeLists. Speaking of refactoring, I'm considering a model to add a super (could be an abstract) class such as Of course it would require a huge modification but simplifies the whole codes at the same time. hope I can hear your opinion :) |
I'd call it |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Almost there 👍
I'm sorry for bothering you because of my mistakes and very appreciate you guys on giving patiently me advises. I would like to work on some points remaining in other PRs! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
All points addressed, thank you very much!
Taken over from #289 to safely and cleanly rebase the branch.