On 4/17/24 07:40, Tomaz T. wrote:
There is an arbitrarily large position jump when the index
pulse is detected.  The position counter is set from
whatever has accumulated during the home move to zero.  My
PPMC driver detects index_enable going from 1 to 0 and
suppresses any velocity on the next servo cycle.  It still
sometimes causes a following error on the next cycle, but
that is somewhat rare.  What version of LinuxCNC are you using?

Linuxcnc is 2.9.2

I'm a bit surprised by this as I have never seen this on a
stepper system before.  (I do see it rarely on my PPMC
analog servo machine.)  Rotary axes often have much lower
SCALE values than linear, I wonder if that has something to
do with the issue.

SCALE value in my case is 233.9181, due to reduction gear for increase output 
toque.
Stepper driver's microstepping is set to 2000puls/rev

10/1? Thats a bit coarse possibly making s slight error in SCALE big enough to trip. I use at least 16/1, but I have a speciail hal setup to calibrate SCALE that has worked well for nearly 2 decades now. basically a counter and two comparators, one set for 3, one set for 103. Zero the counter, start the axis and run for 110 or so complete revs, the counter is started on the 3rd index pulse, stopped on the 103rd pulse. Read the counter, divide by 100 and put that into the .ini file as that axises SCALE. Gives you a 1/100 degree accuracy. The axis may have more backlash than that. IMO that is good enough to hob gears.

My rotaries aren't big BS dividing head clones, but 3NM, 3phase stepper/servo nema23's driving an ebay 5/1 rvs30 sized worm, and I print work chucks for the job. Wide open they can do 400+ revs in perfect, thread cutting sync with their primary axis. Much higher torque than any of the belt driven combo's they try to sell us. Sitting idle, but capable of max torque, they don't heat the motors as the error controls the motor current, no error, low current. If it runs into something and cannot get to where it has been sent by the TP, hooking their alm sigbal into hal to do an e-stop stops LCNC in the next millisecond. Tested here till the cows come home, just one non-problem, its has yet to happen doing a job. They do exactly as the TP tells them to do, no PID's needed.

I notice your stepgen is on axis # 0, but your encoder is on
axis # 4, which is on a different board than #0.  That seems
like an odd way to do things, but should work.

On my machine I have Universal PWM controller to run 4 DC servos, and additional USC 
controller to run 3 additional steppers with "integrated" encoders for rotary 
axis.

So, I added linksp Bindex => pid.4.index_enable
now it doesn't trigger following error any more (homing completes 
successfully), interesting thing is, that on first attempt of homing after 
fresh starting LinuxCNC I see quite large spike on f-error when hitting index 
pulse, this large spike doesn't accrue on any more on second attempt of homing 
or later, only after fresh start and on first one.

_______________________________________________
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users
.

Cheers, Gene Heskett, CET.
--
"There are four boxes to be used in defense of liberty:
 soap, ballot, jury, and ammo. Please use in that order."
-Ed Howdershelt (Author, 1940)
If we desire respect for the law, we must first make the law respectable.
 - Louis D. Brandeis



_______________________________________________
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users

Reply via email to