-
Notifications
You must be signed in to change notification settings - Fork 7
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
Investigate effects of sampling time on joint behavior #253
Comments
Technosoft support has confirmed my assumptions:
|
Candidates:
|
When confirmed, the yarp-devices/libraries/YarpPlugins/TechnosoftIpos/StateVariables.cpp Lines 278 to 281 in 31a3361
The result of the conversion into internal units should be expressed in terms of pulses (position), pulses per sample (velocity) or pulses per squared sample (acceleration). However, the naming of the |
|
I have confirmed joints 1, 6, 12 and 13 reach twice higher reference speeds/accelerations, so the table above holds true. I had issues with 9 and 23 due to CUI encoders timing out, but I'll assume their values are also correct. Keep in mind that the actual sampling time considered by iPOS drives is the slow loop period, regardless of position/speed loops being configured in fast loop mode (bolded). I have used this script to plot velocities against time with a |
Done at 98842dd and roboticslab-uc3m/teo-configuration-files@43357e5, changes applied on real HW. |
Is the table of #253 (comment) something we would want/like in https://github.com/roboticslab-uc3m/teo-developer-manual ? PD: https://github.com/roboticslab-uc3m/teo-developer-manual/tree/master/csv (perma) |
I'm not sure, it's just another controller parameter like Kp, Ki, Kd and we are not disclosing those anywhere (for external use). |
Confirmed (kind of?) at MotionChip™ II TML Programming User Manual, 2.1.1 Position Profile Modes:
Also at MotionChip™ II TML Configuration Setup User Manual, 3.4.2 Speed sensors:
|
I recall struggling with unusual behavior in, if I'm correct, velocity control mode regarding joints that move at different speeds even if given the same command. This was never reported, it just came to my mind after observing inconsistent configuration across all 28 TEO's joints. It is best to check the screenshots of the PID controller dialogue on EasySetUp to see what I mean (https://github.com/roboticslab-uc3m/teo-hardware-issues/issues/45#issuecomment-759550140).
Long story short, some joints perform position/speed control in the fast loop (same as torque control), some do that on the slow loop (10x slower than fast loop). Slow loop sampling periods vary between 0.5-1 ms. Now, the following information is based on the iPOS CANopen programming manual and was taken for granted by me:
There are several references to sampling periods, there is a distinction made between steppers and other configurations, and a default value of 1 ms seems to prevail (#153 (comment)). I've got a hunch this value could actually depend on the internal configuration one can tweak via EasySetUp, thus internal calculations performed in our TechnosoftIpos device might be incomplete or wrong due to this missing factor.
I need to check this on the real hardware. In case my assumptions are not correct, let's investigate the real cause.
PS section 11.3 Speed profile example, step 6. Target velocity states: "By using a 500 lines incremental encoder and 1ms sample rate for position/speed control the corresponding value of object 60FF h expressed in encoder counts per sample is 140000 h."
PS2 see #198 (comment) (default fast loop sampling period?).
The text was updated successfully, but these errors were encountered: