quick testing - I don't get the error until I actually try to create a thread that is faster than the axis limit (for a given rpm) awesome! (and it doesn't seem to pause at the end when there is an error)
Here is with the gain set to 1 (default) http://electronicsam.com/images/KandT/testing/robthreading/roblatestthreading.png and set to .5 http://electronicsam.com/images/KandT/testing/robthreading/roblatestthreadinggain.5.png Great work! sam On 01/26/2017 09:44 PM, Robert Ellenberg wrote: > For anyone interested in trying this out, I have fixes / improvements in > this branch now: > > https://github.com/robEllenberg/linuxcnc-mirror/tree/feature/spindle-sync-overhaul-2.7-rebase > > - Less intrusive warning messages if the spindle is too fast > - Spindle RPM limit calculation should work properly now > - Improved (again) algorithm for position tracking that should have even > less acceleration ripple. > > Best, > Rob > > On Thu, Jan 26, 2017 at 3:10 AM John Morris <[email protected]> wrote: > >> On 01/23/2017 12:05 PM, John Kasunich wrote: >>> If you run a program with G33 moves in it and the spindle isn't >>> turning, the program will silently hang waiting for index. >> Additionally, a G33 move will wait for the spindle-at-speed pin. (See >> below) >> >>> The run-time check sould of course use the actual spindle speed from >>> the encoder. If you don't have an encoder you can't do G33 anyway. >>> [...] >>> >>> On Mon, Jan 23, 2017, at 12:18 PM, Robert Ellenberg wrote: >>>> Is there an INI or HAL setting to tell LinuxCNC that the spindle >>>> ismanually controlled? >>> Not that I'm aware of. >> Of course an INI setting could be added to specify whether the spindle >> is under LCNC control, but even without this, Rob's spindle-scaling >> scheme should still work. If a fixed-speed spindle runs at 2000 RPM but >> axis constraints limit max spindle speed to 1000 RPM, the program should >> pause indefinitely waiting for the spindle-at-speed pin. >> >> This behavior could be puzzling: the spindle is turning, but axes never >> move, why? This might be addressed with a "spindle not coming to speed" >> warning following some timeout. >> >> If that makes sense, then here's one way to specify the checks: >> >> - Preview-time check: >> - Input: S value >> - Applicability: any machine >> - Fixed-speed spindles: operator must program S to benefit fm check >> - Failure action: raise warning >> >> - Run-time check: >> - Input: spindle encoder output >> - Applicability: any machine with spindle encoder >> - No spindle encoder: hang waiting for index; see next >> - Failure action: scale spindle speed >> - After timeout on index/spindle-at-speed pins, raise warning >> >> John >> >> >> ------------------------------------------------------------------------------ >> Check out the vibrant tech community on one of the world's most >> engaging tech sites, SlashDot.org! http://sdm.link/slashdot >> _______________________________________________ >> Emc-developers mailing list >> [email protected] >> https://lists.sourceforge.net/lists/listinfo/emc-developers >> > ------------------------------------------------------------------------------ > Check out the vibrant tech community on one of the world's most > engaging tech sites, SlashDot.org! http://sdm.link/slashdot > _______________________________________________ > Emc-developers mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/emc-developers > ------------------------------------------------------------------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, SlashDot.org! http://sdm.link/slashdot _______________________________________________ Emc-developers mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/emc-developers
