Skip to content

Admittance with filters #560

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

Open
wants to merge 14 commits into
base: master
Choose a base branch
from

Conversation

guihomework
Copy link
Contributor

Re-introduced filters to the admittance_controller as originally done in #382. Improved testing, variable names and comments.

Depends on ros-controls/control_toolbox#152 and ros-controls/control_toolbox#153

Tests currently fail due to compensation already moving the robot after the first update step. This is expected but was not expected in past test. So a discussion should occur to decide how to change the test.

Test currently fails at joint state matching commands, but this
should be expected as there is gravity compensation with a 2.3 kg mass
@guihomework guihomework changed the title Admittance with filters rolling Admittance with filters Apr 3, 2023
@codecov-commenter
Copy link

codecov-commenter commented Apr 3, 2023

Codecov Report

❌ Patch coverage is 87.27273% with 7 lines in your changes missing coverage. Please review.
✅ Project coverage is 85.60%. Comparing base (1321ae8) to head (dfe3be0).

Files with missing lines Patch % Lines
...ude/admittance_controller/admittance_rule_impl.hpp 80.95% 2 Missing and 2 partials ⚠️
...dmittance_controller/src/admittance_controller.cpp 62.50% 2 Missing and 1 partial ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##           master     #560      +/-   ##
==========================================
- Coverage   85.64%   85.60%   -0.05%     
==========================================
  Files         123      123              
  Lines       12417    12431      +14     
  Branches     1057     1060       +3     
==========================================
+ Hits        10635    10642       +7     
- Misses       1432     1436       +4     
- Partials      350      353       +3     
Flag Coverage Δ
unittests 85.60% <87.27%> (-0.05%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

Files with missing lines Coverage Δ
.../include/admittance_controller/admittance_rule.hpp 100.00% <100.00%> (ø)
...nce_controller/test/test_admittance_controller.cpp 100.00% <100.00%> (ø)
...nce_controller/test/test_admittance_controller.hpp 94.88% <100.00%> (ø)
...dmittance_controller/src/admittance_controller.cpp 74.35% <62.50%> (-0.41%) ⬇️
...ude/admittance_controller/admittance_rule_impl.hpp 91.38% <80.95%> (-2.14%) ⬇️
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@mergify
Copy link
Contributor

mergify bot commented Apr 5, 2023

This pull request is in conflict. Could you fix it @guihomework?

@guihomework
Copy link
Contributor Author

@destogl I discover that "allowing edits" means allow others to write to my branch. I did not knot this was possible. Isn't it better to always rebase rather than do a merge from the master (which is then not a straight line merging for the PR anymore) ? I can force-push a rebased PR now if desired to get a cleaner history.

@mergify
Copy link
Contributor

mergify bot commented Jun 4, 2023

This pull request is in conflict. Could you fix it @guihomework?

gwalck added 3 commits August 4, 2023 16:46
New initial pose and matching valid frames to ease checks on GC/wrench
Special parameters for test of first state with no mass
 to avoid deviation form GC
@guihomework
Copy link
Contributor Author

Merging master into this branch introduced a test failure (another one than the known one). This came from some invalid parameters that cannot be tested in on_init because they are only used on_configure

Additionally I should have fixed the other test failing due to gravity compensation. In fact this test (receive_message_and_publish_updated_status) should not pass when there is a mass at eef because gravity compensation (the one of the filter in PR or the hard-coded one in existing code) will necessarily make the posture after one iteration deviate from the start.
Why that particular test passed before is because a smoothing (equivalent to the new LP filter) was hard-coded and applied after gravity compensation, which meant that after one iteration almost no gravity compensation was seen by the eef (0.1 instead 23 N). It makes no sense to filter the gravity compensation, only the noisy input data from the sensor should be filtered and that is what the proposed implementation does (LP then GC filter)

I think CI fails as it relies on 2 other PRs.

@guihomework guihomework marked this pull request as ready for review August 4, 2023 20:48
Copy link
Contributor

mergify bot commented Mar 1, 2024

This pull request is in conflict. Could you fix it @guihomework?

Copy link
Contributor

This PR is stale because it has been open for 45 days with no activity. Please tag a maintainer for help on completing this PR, or close it if you think it has become obsolete.

@github-actions github-actions bot added the stale label Apr 10, 2025
Copy link
Contributor

mergify bot commented Apr 10, 2025

This pull request is in conflict. Could you fix it @guihomework?

@github-actions github-actions bot removed the stale label Apr 11, 2025
Copy link
Contributor

github-actions bot commented Jun 9, 2025

This PR is stale because it has been open for 45 days with no activity. Please tag a maintainer for help on completing this PR, or close it if you think it has become obsolete.

@github-actions github-actions bot added the stale label Jun 9, 2025
Copy link
Contributor

mergify bot commented Jun 9, 2025

This pull request is in conflict. Could you fix it @guihomework?

Copy link
Contributor

This PR is stale because it has been open for 45 days with no activity. Please tag a maintainer for help on completing this PR, or close it if you think it has become obsolete.

@github-actions github-actions bot added the stale label Jul 25, 2025
Copy link
Contributor

mergify bot commented Jul 25, 2025

This pull request is in conflict. Could you fix it @guihomework?

@github-actions github-actions bot removed the stale label Jul 28, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Admittance Controller should use filters from control_toolbox for gravity compensation and smoothing.
5 participants