Comments (22)
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:
and the comparison between the joint encoder angles and the reference values:
After the changes, instead:
@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.
Today I plotted the data I've acquired on iCubGenova11 after the change in the vergence coupling matrix and here they are:
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?
from robots-configuration.
PR here:
cc @pattacini
from robots-configuration.
Apparently, also matrixE2J should contain coupling terms!
from robots-configuration.
Link in the OP fixed.
from robots-configuration.
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.
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.
Just to clarify, I only update this line with -1.0 1.0
instead of -0.5 0.5
.
from robots-configuration.
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.
You're right @pattacini! I'll do the acquisitions and I'll report here the results.
from robots-configuration.
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.
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.
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.
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.
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.
Any comments on this @ale-git @randaz81 ?
from robots-configuration.
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.
/remind September 03 let's address this once for good.
from robots-configuration.
⏰ Reminder
Sunday, September 3, 2023 10:00 AM (GMT+02:00)
let's address this once for good.
from robots-configuration.
let's address this once for good.
from robots-configuration.
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.
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)
- `batteryWrapper` device removal in YARP 3.8.0 HOT 2
- Fix Dry-Run errors HOT 35
- Replace `analogServer` with `multipleanalogsensorsserver` for publishing FT data – Stint 2 HOT 8
- ergoCubSN000: expose BMS on YARP network via `battery_nws_yarp` HOT 1
- CI failing on `ergoCubSN000` and `iCubGenova09` with the latest `yarp-3.8` HOT 11
- Missing example for `embObjMultipleFTsensors` device in `iCubTemplates/iCubTemplateV6_0/hardware/FT`
- Split robots between `maintained` and `unmaintained` and refactor CI dry-run accordingly HOT 3
- [ergoCubSN000] Gear ratio values of right and left shoulder roll joints do not match HOT 3
- Update maintained robots to the use of `multipleanalogsensorsserver` for `embObjMAIS` device HOT 3
- Check and validate ergoCub wrist-mk2.x gear ratios HOT 13
- Wrong eyes joint names for iCubGenova11 HOT 4
- Replace `embObjInertial` w/ `embObjIMU` – Stint 2 HOT 11
- Port all the robots' configuration to the TemperatureSensorType parameter HOT 2
- Register iCub `iCubManchester01` and update robotology-superbuild HOT 16
- CI for tests `dry-run_R!SN00?_dev` HOT 1
- Add alljoints-inertials_wrapper/remapper
- IMU sensors: alignment real ergoCub/iCub w/ simulated one HOT 10
- Cleanup ergocub configuration files using `enable_by` and `disable_by` yarprobotinterface tags HOT 6
- [ergoCubSN00*] Missing elbow and wrist joints from axesNames used in WBD HOT 5
- Remove ergocub xml leftovers
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from robots-configuration.