I have used the PID stepgen + offset with good luck.  As andy said - use a limit3 before the offset.

Also - thread order is very important.

something like this - you can check by watching pid error...

addf hm2_[HOSTMOT2](BOARD).0.read         servo-thread
addf offset.0.update-feedback                        servo-thread
addf motion-command-handler                       servo-thread
addf motion-controller servo-thread
addf limit3.0                             servo-thread
addf offset.0.update-output               servo-thread
addf pid.0.do-pid-calcs                   servo-thread
addf pid.1.do-pid-calcs                   servo-thread
addf pid.2.do-pid-calcs                   servo-thread
addf hm2_[HOSTMOT2](BOARD).0.write        servo-thread


On 03/16/2018 03:00 PM, andy pugh wrote:
On 16 March 2018 at 19:29, Ralph Stirling <[email protected]> wrote:
This offset approach is proving harder than I expected.  I think it is because 
I'm
using the PID-driven stepgen approach generated by pncconf (7i92 board).

Ah, yes, that will make things harder.

You could try using a conventional non-PID setup, those always used to
work pretty well, if not quite so well as the PID based one.

I think the velocity gets messed up by the step function in position,
and the pid loop is using velocity.  Any further suggestions for
achieving my invisible 90 degree rotations?
You could put a limit3 component between the G-code output and the
offset input. That would remove the step.



------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Emc-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/emc-users

Reply via email to