Coder Social home page Coder Social logo

Comments (22)

martinaxgloria avatar martinaxgloria commented on July 19, 2024 3

Yesterday I repeated the tests acquiring the joint references and the other quantities with much faster movements (0.3 sec per movement). To make a comparison, I also do the tests and the acquisitions before the change:

old
and the comparison between the joint encoder angles and the reference values:

encoder_pid_old

After the changes, instead:

new

encoder_pid_new

@mfussi66 noticed that the sampling time it's high (when I did again the acquisitions maybe I accidentally change this parameter and I didn't notice it). So far, I decided to post here the results, but I'll do again the acquisitions and the plots with more samplings to have a more accurate analysis.

cc @pattacini

from robots-configuration.

martinaxgloria avatar martinaxgloria commented on July 19, 2024 2

Today I plotted the data I've acquired on iCubGenova11 after the change in the vergence coupling matrix and here they are:

image

I hope that these quantities are the ones that @pattacini referred to. In particular, I plotted the encoder, motor encoder, pwm and current values for the eyes_tilt, eyes_vers and eyes_verg joints. These values were obtained by setting a sequence from the yarpmotorgui from the home position, to the upper limit, then the lower limit and then home again for the three eyes' joints. I set a time of 5 sec for each movement (e.g. from home to upper limit in 5 sec). Then I start the acquisition and I ran the code to save the values in order to plot them at the end.

The only particular thing that stands out is the peak of current and duty cycle percentage around the second 45 that corresponds to the eyes_verg joint reaching its upper limit. In your opinion, is it consistent with the movement?

cc @pattacini @mfussi66

from robots-configuration.

martinaxgloria avatar martinaxgloria commented on July 19, 2024 2

PR here:

cc @pattacini

from robots-configuration.

pattacini avatar pattacini commented on July 19, 2024 1

Apparently, also matrixE2J should contain coupling terms!

from robots-configuration.

pattacini avatar pattacini commented on July 19, 2024 1

Link in the OP fixed.

from robots-configuration.

pattacini avatar pattacini commented on July 19, 2024 1

To sum up, here's the list of things that we need to do:

  • Stick to one iCub with eyes; most likely iCubGenova11.
  • Update iCubGenova11 following these instructions.
  • Test that the eyes will still move correctly w/o big overshoots.
  • Update all the remaining maintained robots.

from robots-configuration.

martinaxgloria avatar martinaxgloria commented on July 19, 2024 1

Hi @pattacini,

as you suggested, I booked iCubGenova11 to do the tests with the new values of eyes' vergence. I took a video of the eyes' movement after the upload:

IMG_1507.mp4

I have little experience with it, but the movement seems smooth, also compared to the previous version with the wrong vergence values:

IMG_1505.mp4

Do you agree? If yes, I'll proceed with the update of all the maintained robots.

from robots-configuration.

martinaxgloria avatar martinaxgloria commented on July 19, 2024 1

Just to clarify, I only update this line with -1.0 1.0 instead of -0.5 0.5.

from robots-configuration.

pattacini avatar pattacini commented on July 19, 2024 1

Great, @martinaxgloria 👍🏻

That's all correct!

The videos are nice. However, given the control context, I would expand on the validation phase by including some data acquisitions of the commands and joint feedback. These traces would help us appreciate small details that are not visible in the videos, like overshoots, rising times...

from robots-configuration.

martinaxgloria avatar martinaxgloria commented on July 19, 2024 1

You're right @pattacini! I'll do the acquisitions and I'll report here the results.

from robots-configuration.

pattacini avatar pattacini commented on July 19, 2024 1

You can talk to @davidetome and/or @mfussi66, who do have some code snippets for logging both commands and feedback you may consider reusing.

from robots-configuration.

pattacini avatar pattacini commented on July 19, 2024 1

Great that you managed to plot these results 👍🏻
A couple of important points though:

  • The joint references are missing.
  • The 5-second movements are far slower than the dynamics we're interested in with the eyes. Eyes need to move much much faster, meaning fractions of a second. For example, let's stick to 0.3 s.

We could also plot the profiles before and after the change.

from robots-configuration.

pattacini avatar pattacini commented on July 19, 2024 1

Overall, I'm happy with the results and for me it's green light 🟢
Thus, we can proceed with the update of robots-configuration.

@mfussi66 noticed that the sampling time it's high (when I did again the acquisitions maybe I accidentally change this parameter and I didn't notice it). So far, I decided to post here the results, but I'll do again the acquisitions and the plots with more samplings to have a more accurate analysis.

It seems so, yeah. However, what was the sample time you used?

from robots-configuration.

pattacini avatar pattacini commented on July 19, 2024 1

It seems so, yeah. However, what was the sample time you used?

I computed it from the acquired samples and it is 0.1s

Ok, it's fairly low, but the graphs above demonstrate that the reference is well-tracked anyhow.

For the record, a good sample time when dealing with control issues is 10 ms at the YARP layer.

from robots-configuration.

pattacini avatar pattacini commented on July 19, 2024 1

So, can I proceed with the update of robots-configuration or it's better to re-do the acquisitions with the right sample time before?

Let's proceed with robots-configuration 👍🏻

from robots-configuration.

pattacini avatar pattacini commented on July 19, 2024

Any comments on this @ale-git @randaz81 ?

from robots-configuration.

pattacini avatar pattacini commented on July 19, 2024

Discussed this with @randaz81 today, who agrees with what said above.
However, the wrong matrix coefficients get subsumed by the PID gains, hence there ain't actually any real control problem.

Given that it's more correct to have -1.0 1.0, it'd be worth updating the conf files anyway.

from robots-configuration.

pattacini avatar pattacini commented on July 19, 2024

/remind September 03 let's address this once for good.

from robots-configuration.

octo-reminder avatar octo-reminder commented on July 19, 2024

Reminder
Sunday, September 3, 2023 10:00 AM (GMT+02:00)

let's address this once for good.

from robots-configuration.

octo-reminder avatar octo-reminder commented on July 19, 2024

🔔 @pattacini

let's address this once for good.

from robots-configuration.

martinaxgloria avatar martinaxgloria commented on July 19, 2024

It seems so, yeah. However, what was the sample time you used?

I computed it from the acquired samples and it is 0.1s

from robots-configuration.

martinaxgloria avatar martinaxgloria commented on July 19, 2024

Yes, thanks for the clarification @pattacini!
So, can I proceed with the update of robots-configuration or it's better to re-do the acquisitions with the right sample time before?

from robots-configuration.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.