Mixing stepgen step_type(s)

More
20 Oct 2018 06:42 - 20 Oct 2018 06:45 #119103 by deemoss
Hi Guys,

My understanding is that using quadrature encoding places half the burden on the RT system compared to step an direction, which since I am using the parallel port, should improve performance:

step_type=0 #(S&D) make−pulses must run at least twice for each step
step_type=2 #(Quadrature) one step every time make−pulses runs

Then

stepgen step_type=2,2,2 should give x2 the performance of stepgen step_type=0,0,0

Since my drivers (ClearPath) happen to accept S&D or Quadrature signals, switching to Quadrature looks like a good "upgrade". However, I also use a stepper in the system (z-axis) whose drive only accepts S&D. So my initial thought was to load the stepgen(s) as follows:

loadrt stepgen step_type=2,2,0 #Quadrature, Quadrature, S&D

So my questions is: Will the existence of a single S&D pulse generator drag the performance of the RT system, effectively lowering the performance of the Quadrature pulse generator to the S&D's level?

In other words, would step_type=2,2,0 yield the same performance as step_type=0,0,0 ? Would there be some partial improvement?

Thanks!
Dimos
Last edit: 20 Oct 2018 06:45 by deemoss.

Please Log in or Create an account to join the conversation.

More
20 Oct 2018 07:47 #119106 by rodw
Replied by rodw on topic Mixing stepgen step_type(s)
I might be wrong, but I can't see it will make any difference. Performance is related to the base thread and that in turn is set by machine latency which has nothing to do with step generation methods.

Please Log in or Create an account to join the conversation.

More
20 Oct 2018 08:02 #119107 by tommylight
You can mix and match stepgens as you like, i know i did. It works.

Please Log in or Create an account to join the conversation.

More
21 Oct 2018 23:39 #119182 by andypugh
Step + direction isn't as bad as it sounds if "reset" is enabled. That is a third base-thread function that just resets all pins with "reset" set to 0 some time after the base-thread write. (It actually does a busy-wait until the programmed time has elapsed, but normally enough other stuff has consumed clock cycles by then that it doesn't need to wait.

That said, quadrature is more elegant and would always be my first choice.

Please Log in or Create an account to join the conversation.

Time to create page: 0.064 seconds
Powered by Kunena Forum