robotology / icub-tech-support

Virtual repository that provides support requests for individual robots
GNU General Public License v2.0
20 stars 2 forks source link

Issue with the fingers of the right hand #1231

Open paliasgh opened 2 years ago

paliasgh commented 2 years ago

Device name 🤖

iCubWaterloo01

Request/Failure description

After turning the motors of the robot on and while the robot is calibrating itself by the yarprobotinterface, its fingers in the right hand gets stuck in a pointing configuration.

Detailed context

See this and this picture. Also a closer look into the wires, cables, etc.: here and here. A screenshot from the yarpmotorgui showing the joints of /right_arm is available here. Other than joints 10, 12, 14, and 15, everything else is configured well.

Additional context

No response

gsisinna commented 2 years ago

Good morning @pourya456, thank you for contacting our support.

First of all we ask you to verify based on our picture if the shown ICs are correctly connected:

The latter are fundamental for the correct functioning of the finger and those affect the initial calibration procedure if they are not correctly positioned.

MicrosoftTeams-image

We are waiting for your answer and we remain available for any need.

Thank you, Gabriele

kothiga commented 2 years ago

Hi @gsisinna,

To me, the ICs look correctly connected (below)

img01

I wanted to add something that was something missing from the original post. We had the following cable come loose from the following position

img02

img03

and think this may be related. Please let me know if I should send another photo of the ICs or the wrist.

Thank you for your help, Austin.

gsisinna commented 2 years ago

Good morning @kothiga, thanks for the added details. The two issues of cable and finger calibration are most likely separate, and I would proceed with the finger issue first.

From the yarpmotorgui I see that there are 3 joints in "IDLE" and one in "NOT CONFIGURED". Can you tell me what happens to joints 10, 14, 15 when you try to click RUN in the interface?

For joint 12 (index_distal) instead I would like to understand if at least the current position is read correctly, because I see from your previous screenshots the encoders fixed at zero for joints 11 and 12. So I ask you to compare your hand with the following picture, and try to manually move (very little movements) with a screwdriver the motor that determines the movement of the joint:

index_distal_motor

ezgif com-gif-maker

During the movement the value read by the yarpmotorgui should change, and already from this we understand what intervention could be necessary.

As for the cable, this is responsible for the movement of the wrist and could be out of its seat because too loose. Referring to our guide I ask you to look at paragraph 1.3: WRIST - PASSIVE TENDONS. Looking at the image we see how the cable in question should be connected:

R_cabling_wrist1

Try following the cabling procedure in the guide and let me know how it goes.

We remain available for any problem or doubt, thanks!

Gabriele.

kothiga commented 2 years ago

Hi @gsisinna!

The two being unrelated makes sense. Let's take care of the fingers first.

We took the top of the hand off and ensured the ICs were connected properly.

The joints 10, 14 and 15, which are idle after starting the yarprobotinterface, work properly after putting them into the mode "position" with the yarpmotorgui after calibration. They fully open and close without a problem.

For joint 12 (r_index-distal), physically moving the motor with a screw driver as you suggested makes the encoder value change in the yarpmotorgui. The range of values which we saw were from 0 (open) to 170 (fully closed).

Meanwhile we will take a look at the cabling of the wrist.

Thank you for the help!

kothiga commented 2 years ago

Hi again @gsisinna,

We're continuing on with the cabling of the wrist, and it's not quite as simple as we were hoping.

We cannot fit the cable within the tensioners. Is there a way to manually move joint 5 (r_wrist_pitch) to make the tensioner more accessible?

Thanks!

gsisinna commented 2 years ago

Hi @kothiga, have you tried releasing the cable tensioner slightly using an allen wrench?

gsisinna commented 2 years ago

Any news @kothiga @pourya456 ?

amaroyo commented 2 years ago

Hi @gsisinna,

Sorry for the late reply, please could you elaborate a bit more your last reply? We tried loosing the cable holders to try to make it fit but we didn't manage... missing few mm to make it fit.

We haven't received any feedback from the first part of the question, do you want us to create a separate issue for that as it seems that both problems are unrelated?

Thanks, Alex.

gsisinna commented 2 years ago

Hi @amaroyo, the best instructions are certainly those attached in the guide that I linked previously with the presence of photos and CAD files. For further help this afternoon I'll try to make a video that shows the steps needed to replace this tendon of the wrist.

Regarding the fingers, from what I understood reading your answer, it seems that the calibration is done normally and from the yarpmotorgui you can set the "position" mode.

For the index_distal joint, since the encoder reads the values correctly, it could be another broken tendon that needs replacement, but being at a distance I can only guess based on the behavior of the hand.

However, I am sending you the link for the replacement of the tendon of that joint, so you can evaluate if it is a feasible operation for you or requires our support in presence.

Thank you, @gsisinna

gsisinna commented 2 years ago

A small addition that might help. I simulated a replacement on a hand that we have here in the lab, and one of the unintuitive points is that the two cables, the red one and the blue one work in pairs.

So, in order to replace the cable we are interested in, it is necessary to gain a few more mm by removing tension from the other cable, and then try to insert the head of the steel cable into its housing.

immagine

But be careful, don't take off too much length by turning the waist of the cable tensioner, because there is a risk of losing the cable tensioner housing.

github-actions[bot] commented 2 years ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs.

paliasgh commented 10 months ago

Hello @gsisinna,

After some time, we are back and are interested in finally fixing these two issues!

Regarding the issue with the cables, we could correctly insert both tendons 10 and 9 successfully (after some try). The only thing was after we tested the wrist and then, turned off the robot and it went to its sleeping position (turning off yarprobotinterface) cable 9 again jumped out! We guess we should next time add more (or maybe less?) tension to those tendons and it will stay there.

Regarding the issue with the fingers, everything is still the same as our last reply to answer this question:

The joints 10, 14 and 15, which are idle after starting the yarprobotinterface, work properly after putting them into the mode "position" with the yarpmotorgui after calibration. They fully open and close without a problem.

For joint 12 (r_index-distal), physically moving the motor with a screw driver as you suggested makes the encoder value change in the yarpmotorgui. The range of values which we saw were from 0 (open) to 170 (fully closed).

Could you please further help us with the issue with fingers? Thanks a lot in advance.

github-actions[bot] commented 8 months ago

This issue has been automatically marked as stale because it did not have recent activity. It will be closed if no further activity occurs.