Actually wrote this before the log "Taking a step back...", but didn't submit it for some reason until now (12-15-16)... it's been sitting in a "tab" for quite some time...
So, I've just connected two motors with encoders and a really simple feedback system for each, and between the two. Basically little more than,
power[n] = (desiredPosition[n] - actualPos[n]) * Kp[n]and
desiredPos[n] = actualPos[m] * PosRatio[nm]
And the results...?
I should just throw up some video... but it's *really* interesting to play with.
Messing with the ratios, it's kinda like having gear-reduction (or the opposite) between the two shafts. Except... SPEED-wise, it's like gear-reduction/increasion(?), but *torque-wise* it's like the exact opposite.
I dunno if I've got the ratios wrong or if it has something to do with the motor-drivers, or the motors, or the math, or what...
But just think about that for a moment... I mean, we've all a pretty good idea about what it's like to spin a tiny gear, and have it turn a larger one... (think of a bike).
Real gear-systems take a tiny bit of force on a small gear, but a lot of turning, to rotate the big one a little bit.
But in this case what's happening is a LOT of force and a lot of turning to rotate the big gear a little bit.
And equally-weird a tiny bit of force and a tiny bit of turning to rotate the big gear, causing the tiny gear to rotate *a lot*.
It's like gravity turned upside-down, or something... or one's first experience with cornstarch and water ("non-newtonian fluid"). A weird mind-bender.
Force-feedback...? Yeahp, it seems to exist.
Unexpectedly, I'm feeling the additional force it takes to change the position of the motor slightly when it approaches a pole... and various other factors of the motors themselves, the resolution of the encoders, and more that has nothing to do with external loading.
This is some interesting shizzle... and also a bit dangerous. It's only drawn a tiny bit of blood so far.
But I'm quite tired, so we'll have to do more another day/hour.