@@ -1395,7 +1395,14 @@ Now I can do the derivative, error, and integral all in terms of actual error on
I think I'll get that back up and running... and target a wider range of positions, should be all tuned in already, and then I'm kind of finished with this step... next would be to bring it into a real machine context, benchtop test a new VM with an accel controller feeding it positions.
- re-integrate I and D terms
- tune back in
- set 'units per rev'
- test, OK
\ No newline at end of file
So, for 'units per revolution' (1) I cannot just throw in a -ve value here to reverse it, but I would like to be able to and (2) the tuning variables depend on this, since the loop now runs in the 'space' of the unrolled position, rather than in the 'space' of the wrapped / unwrapped angles.
I think maybe then the move is to leave the controller in degrees-and-revolutions, kind of makes sense down there, and feed it target 'revs & degrees' positions based on this. Yep, this is the way.
OK, all seems sound now. So tomorrow would be about setting this up in a 'real system' ... or maybe it's prepping that system: I have parts ready to make another clank, a larger one... though I should check against the reality of my available desk space. I might as well jump in on the X axis there...
- re-order the API / the internal code: lots of spaghetti in here at the moment
- match vm api,
- build clank-stretch
- put it on the bus, check if all commands can still op. through the bus: this is higher bandwidth, check for drops etc, maybe you have to fix those now
- configure to grab positions from the bus, you'll be mixing closed- and open-loop motors not irregularely.