On 01/20/2017 08:30 AM, Robert Ellenberg wrote:
> On Fri, Jan 20, 2017, 9:22 AM John Kasunich <jmkasun...@fastmail.fm> wrote:
>
>>
>>
>> On Fri, Jan 20, 2017, at 07:46 AM, John Morris wrote:
>>> The manual for G33 spindle synchronized motion [1] reads, "It is an
>>> error if [...] The requested linear motion exceeds machine velocity
>>> limits due to the spindle speed."
>>>
>>> It seems that doing that actually doesn't cause an error, as
>>> demonstrated by the regression test in the top commit here [2].
>>> Instead, the G33 command is happily executed with the axis velocity
>>> limited to its `MAX_VELOCITY` from the INI file, thus cutting threads
>>> with smaller pitch than specified in the K flag.
>>>
>>> Is this something that should be fixed, or am I reading the
>>> documentation wrong?
>>>
>>
>> I think it is a terminology thing.  Where the manual says "it is an error",
>> read it to mean "if you do this, you made an error and all bets are off",
>> rather than "if you do this, LCNC will detect and report it".
>>
 > That's true, though I think we should warn users of errors we can 
detect as
 > early as possible, so they don't have to destroy a part to learn the
 > significance of a line in the documentation.
 >

I also thought of these three possible intended scenarios pointed out in 
this thread, and can think of valid arguments for each, briefly:

1. The manual says it's an error, and it's up to the user to avoid it 
(status quo)
2. The controller detects the condition, and informs the user
3. The controller detects the condition, and compensates by adjusting 
spindle speed

Of course "spindle synched motion" most simply means to move other axes 
by a specified amount with each revolution of the spindle.  In this 
case, the spindle shares some characteristics with an axis, since the 
goal is to produce coordinated motion of a tool across the surface of a 
workpiece.  In coordinated motions involving the XYZABCUVW axes, the TP 
will scale down the feed rate in order not to violate constraints for 
any axis.

Scenario 3 extends this thinking to scaling spindle speed to keep within 
axis constraints.  Aside from the theoretical elegance, I can think of 
practical reasons, like having the same .ngc file produce the same tool 
path on different machines.

I'm going to take a look at Rob's implementation (related thread here 
[1]).  Thanks-

        John

[1]: 
http://www.mail-archive.com/emc-developers@lists.sourceforge.net/msg16953.html

------------------------------------------------------------------------------
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
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers

Reply via email to