-
Notifications
You must be signed in to change notification settings - Fork 41
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
Convert all remaining actions to new framework #300
Convert all remaining actions to new framework #300
Conversation
- updated some action client import statements - arranged ArmTrajectoryMixin servers into a grouping
…-remaining-actions
- guarded_move plan function now only returns the plan
This was necessary to avoid the next arm action in a sequence gettting called before the previous one had finished
- GroundDetector now gives end-effector position in the base_link frame - Guarded Move's final position is now in base_link frame
First and second try each had one failure, which were approximately the same:
Third test had 2 failures, the above and this one:
I have not tried any more. |
All tests pass except the one noted above. Moving on to the code for now. |
My most recent commit changed the frame in which guarded move provides its "final" Result parameter, so it makes perfect sense this now consistently fails. I will update the expected value configuration.
My explanation for this failure is not as clean cut. Considering it deviated by an entire 5 cm, I read this as indicating a real bug, but maybe a sporadic one. Something to keep an eye on next retest. I will be back to provide updated expected values for GuardedMove later this morning. |
Expected values for GuardedMove have been updated to be in the correct frame. |
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.
The arm check test now fully passes.
Just one request: add a descriptive sentence at the top of every .py
file, even if you think the filename is descriptive enough. About half of them don't have obvious meanings to me.
Also, I think it would have been good to delay renaming the action client scripts, since one more renaming will be needed (I'd like to drop the _client
suffix), but this is okay.
Great work!
Can do!
I am all for this. What if I just did the full rename right now in this PR? So |
That sounds fine, actually. This will need a user documentation update, however, which you can do on a branch of the wiki. |
Done. Unfortunately it is now harder to discern action client scripts from other scripts in the Out of scope for this PR, but I am considering merging all action servers into a single executable. So |
I think the net change was positive.
That sounds like a good idea. Feel free to add it to this PR if it's not hard or complicated. Lower priority than implementing unified actions though. |
I just realized another round of script renaming may be in order when we rename all the actions to their unified name. But let's hold off any more renaming for now. |
Done. I think this is cleaner. |
@kmdalal There is one new test section I would like you to complete. The LightSetIntensity was not tested by the tests you have already performed. |
- Removed spin_action_server since it has no use now
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.
The additional test (pan/tilt, lights) passed and the filename changes are good (for now).
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.
@AstroStucky , since this PR is a prerequisite for subsequent action work that both you and I potentially want to tackle this week, and @anthonykoutroulis is out this week, you can merge it now if it's done on your end. I think it has been sufficiently reviewed.
Linked Issues:
Jira Ticket 🎟️ OCEANWATER-904
Summary of Changes
Tests
Source
devel/setup.bash
in every terminal you perform the following tests in.arm_check_action.test
Run
rostest ow_sim_tests arm_check_action.test
and verify all units pass.sample_collection.test
Run
rostest ow_sim_tests sample_collection.test
and verify all units pass.ow_plexil Regression Test
First terminal Run any sim environment
roslaunch ow atacama_y1a.launch
Second terminal Run the ReferenceMission1
roslaunch ow_plexil ow_exec.launch plan:=ReferenceMission1.plx
Test the 2 actions not covered in rostests
First terminal Boot up any sim environment (feel free to use the one from the previous test)
Second terminal
rosrun ow_lander antenna_pan_tilt.py 0.0 1.0
rosrun ow_lander light_set_intensity.py left 0.0
thenrosrun ow_lander light_set_intensity.py right 0.5
Help Messages
Ensure all help messages of all clients work and that the language is clear. Here's a single-line command that will print them all, or feel free to do so manually.
The orange text is just a separator and is not part of the help messages.
Caveat
Whenever simulation shuts down you will now see the following messageIt comes from Gazebo. The limbs controller is not actually used by anything as best as I can tell, but I also do not wish to remove its implementation before I understand it better. I made some attempts to suppress the message, but none were successful. It does not appear to break anything. I will make an entry in our Caveats section once this is merged.It turns out this was already happening in noetic-devel, but is not listed in our Caveats. I'll go ahead and make an entry for this in my documentation branch.