Skip to content
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

ergoCub 1.0 S/N:000 – Right wrist reaches the limit while calibrating and it remains there #1683

Closed
GiulioRomualdi opened this issue Nov 13, 2023 · 10 comments
Assignees
Labels
ergoCub 1.0 S/N:000 ergoCub robot (prototype)

Comments

@GiulioRomualdi
Copy link
Member

Robot Name πŸ€–

ergoCub 1.0 S/N:000

Request/Failure description

While walking, the right wrist reached its limits unexpectedly, without being controlled by the walking controller. We attempted to reboot the robot and the motors several times, but when the YARP robot interface started, the motor exceeded the limits

Detailed context

To prevent damaging the motors, we immediately switched off the robot.

Additional context

Here are images of the robot after executing the YARP robot interface, revealing the asymmetry.

MicrosoftTeams-image (5)
MicrosoftTeams-image (4)

How does it affect you?

There's a demo scheduled in the upcoming days (https://github.com/ami-iit/lab-events-demos/issues/281). Additionally, it's worth noting that the robot will be departing from IIT permanently (https://github.com/ami-iit/lab-events-demos/issues/284).

cc @S-Dafarra @DanielePucci @carloscp3009 @paolo-viceconte

@GiulioRomualdi GiulioRomualdi added the ergoCub 1.0 S/N:000 ergoCub robot (prototype) label Nov 13, 2023
@github-actions github-actions bot changed the title Right wrist reaches the limit while calibrating and it remains there ergoCub 1.0 S/N:000 – Right wrist reaches the limit while calibrating and it remains there Nov 13, 2023
Copy link

⚠️ Detected missing mandatory information

Hi @GiulioRomualdi πŸ‘‹πŸ»

Some of the following points need your attention.

You are required to:

  • enter the Robot Name.
  • give the issue a meaningful Title.
  • provide a Detailed Context (at least 100 characters).

Please, mark the points above as solved once done.

@sgiraz sgiraz moved this from Triage to Backlog in iCub Tech Support Nov 14, 2023
@S-Dafarra
Copy link

I have checked the yarpmotorgui and all the wrist joints remain constantly equal to zero even when moving the joint by hand. I also started the robot with these two parameters to true and this is the output

image

When moving the joints by hand, the motor encoder change, but not the joint ones.

cc @Fabrizio69 @Gandoo

@sgiraz
Copy link
Contributor

sgiraz commented Nov 14, 2023

I also started the robot with these two parameters to true and this is the output

Hi @S-Dafarra which version of FW of AMC is currently flashed on the robot?

I have checked the yarpmotorgui and all the wrist joints remain constantly equal to zero even when moving the joint by hand.

Probably we have to check the wires/connector of the AEA2 encoder of the wrist.

cc @Gandoo @AntonioAzocar

@sgiraz sgiraz moved this from Backlog to In Progress in iCub Tech Support Nov 14, 2023
@S-Dafarra
Copy link

I also started the robot with these two parameters to true and this is the output

Hi @S-Dafarra which version of FW of AMC is currently flashed on the robot?

101.8

Indeed, there is a mismatch between the two wrists

image

@sgiraz
Copy link
Contributor

sgiraz commented Nov 14, 2023

Indeed, there is a mismatch between the two wrists

In this case, it is normal, since it is an old FW version compared to the latest one.

2 possible solutions:

  1. A "quick" swap test:

It consists of swapping the 2 AMC boards with the aim of proofing whether there is a faulty board or not. To do this test you need the same binaries currently flashed on the robot (usually within the icub-firmware-build folder on the robot). Swap physically the 2 boards and flash the amc.wrist.left.hex binary to the board mounted on the left arm and the amc.wrist.right.hex mounted to the right one.
If the problem is swapped from the right wrist to the left, it means that the board has to be replaced.

  1. Flash the latest FW version of the amc

In this case, there exists only one binary called amc.hex to flash on both amc boards. In order to use this FW you have to perform some minor changes to the configuration files of both left and right arms:

in ergoCubSN000\hardware\mechanicals\right_arm-eb30-j4_6-mec.xml replace the JOINTSET_CFG group with the following:

    <group name="JOINTSET_CFG">
        <param name= "numberofsets"> 1 </param>
        <group name="JOINTSET_0">
            <param name="listofjoints">  0 1 2         </param>
            <param name="constraint">    ergocubwrist  </param> <!-- none for calibration -->
            <param name="param1">        20            </param>
            <param name="param2">        1             </param>
        </group>
    </group>

in ergoCubSN000\hardware\mechanicals\left_arm-eb31-j4_6-mec.xml replace the JOINTSET_CFG group with the following:

    <group name="JOINTSET_CFG">
        <param name= "numberofsets"> 1 </param>
        <group name="JOINTSET_0">
            <param name="listofjoints">  0 1 2         </param>
            <param name="constraint">    ergocubwrist  </param> <!-- none for calibration -->
            <param name="param1">        20            </param>
            <param name="param2">        0             </param>
        </group>
    </group>

Warning

The solution nr.2 hasn't been tested yet on ergoCub1.0 S/N:000, but only on the wrists of ergoCub1.1 S/N:001. It should be fine with the configuration posted above, but please pay attention.

cc @davidetome @Nicogene

@sgiraz
Copy link
Contributor

sgiraz commented Nov 14, 2023

During an F2F call with @S-Dafarra I got that the wrist was working correctly while it was walking. Then at a certain point, the wrist went out of control. In this case, it shouldn't be a FW's version problem. It is more probable that it is a HW or electrical (wires/connectors) problem since the jogger reads the AEA2 values correctly.

@sgiraz
Copy link
Contributor

sgiraz commented Nov 14, 2023

After detaching and re-attaching the amc of the right arm (without changing any FW version), something seems improved. Another indicator that it may be a mechanical or electrical issue.

@sgiraz
Copy link
Contributor

sgiraz commented Nov 14, 2023

The wrist is now under repair since one of the belts is broken:

image

cc @S-Dafarra @GiulioRomualdi @fbiggi @fiorisi @GiacomoVassallo13 @Gandoo @Nicogene

@S-Dafarra
Copy link

@maggia80 also spotted a damaged wrist encoder connector. This might have been the source cause of this issue, although the breakage of the belt might have been caused by continuous wear.

@sgiraz
Copy link
Contributor

sgiraz commented Nov 20, 2023

I guess that this issue can now be closed as the wrist has been successfully repaired and the robot has been delivered to Monte Porzio.

@sgiraz sgiraz closed this as completed Nov 20, 2023
@github-project-automation github-project-automation bot moved this from In Progress to Done in iCub Tech Support Nov 20, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
ergoCub 1.0 S/N:000 ergoCub robot (prototype)
Projects
Status: Done
Development

No branches or pull requests

7 participants