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

Reply via email to