-
Notifications
You must be signed in to change notification settings - Fork 18
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
wrist's joints: getRefPosition() returns a value that differs from setPosition() #261
Comments
Hi @PasMarra, is the real wrist motion as expected, and thus only the getRefPosition() readings are wrong, or the real wrist motion is coherent with getRefPosition()? |
Hi @ale-git The real wrist motion ( |
I think that the problem is here, where the special case of wrist kinematics isn't managed in reading: as it is managed in writing: |
We will prepare a patch for that. |
For the records, in simulation the wrist has not any coupling involved, it is composed by the relative serial mechanism |
This PR should fix the problem. Needs to be tested. |
@ale-git Is the PR ready for testing on the robot.? If so I could help with the testing tomorrow from 11, when I have the slot on EcubSN001. |
Hi @vigisushrutha23, I'll prepare the binary .hex in the evening. It is already functionally tested, in fact this version (2.9) is already running in SN001 wrists if nobody has flashed other versions in the meanwhile. The remaining test to do is to check if it solves the target feedback mismatch. |
Hi @vigisushrutha23, this is the draft PR with amc.hex wrist firmware |
Hi @vigisushrutha23 and @PasMarra ! What was the outcome of yesterday's test? |
Signals recap
That said, if Left wristRight wrist |
Anyway, there is also another problem with some joints. As you can see from the video below, there is a small jump during the motion of the wrist: MicrosoftTeams-video.2.mp4MicrosoftTeams-video.mp4MicrosoftTeams-video.1.mp4Notice that this jump does not seem to appear in the any of the plots above. |
Thanks heaps @PasMarra for testing the patch 🚀 If the jumps you noticed are not visible in the plot it means that there must be some loose part in the wrist levers needing to be tightened, most likely. We don't have a direct measure of the position of the wrist but it is in turn reconstructed from the motor encoders. For this reason, it may be more convenient to report #261 (comment) to https://github.com/robotology/icub-tech-support/issues instead. |
The PRs has been merged, closing |
If I set a position with
yarp::dev::IPositionDirect::setPosition()
and then I callyarp::dev::IPositionDirect::getRefPosition()
, I get the same value, as I expect, for all the joints but the wrist's ones.As an example, in the image below you can see what happens with the
wrist_pitch
:yarp::dev::IPositionDirect::setPosition()
yarp::dev::IPositionDirect::getRefPosition()
It is important to notice that this problem does not appear in simulation.
The text was updated successfully, but these errors were encountered: