Hello Guest it is May 22, 2019, 11:33:36 AM

Author Topic: Is Mach4 really Hobby Material?  (Read 7978 times)

0 Members and 1 Guest are viewing this topic.

Re: Is Mach4 really Hobby Material?
« Reply #110 on: January 25, 2018, 02:04:46 PM »
Thank you Mauri,

I already read about that possibility. The point is, that that solution will consume 2thousand bucks, so I look around if I find alternatives ...

Reinhard
Re: Is Mach4 really Hobby Material?
« Reply #111 on: January 25, 2018, 02:08:04 PM »
Hi,

Quote
Mach4 is not a closed loop control, so this is irrelevant.
Hm, for me, lathe threading is closed loop based on external encoder signals.

What I don't understand: if the functionality is already in mach4, why use it for little use case only and don't use it for common use case?

Reinhard

That seems moer like just "encoder following", not at all like a closed loop system.
Re: Is Mach4 really Hobby Material?
« Reply #112 on: January 25, 2018, 02:22:20 PM »
Hi,

well, to follow an encoder, you have to process encoder signals. That's the hard part of the closed loop.
A pid controller in software is nothing complicated, so if you already have the data ... ?!?

... just my 2 cent

Reinhard
Re: Is Mach4 really Hobby Material?
« Reply #113 on: January 25, 2018, 03:27:45 PM »
Lathe threading and regular closed loop motion are not that similar.

As mentioned lathe threading is actually encoder following. On top of that the
following is implemented by the motion controller and its plug-in, not directly
by the Mach4 core. The technique used by Mach4 to control lathe threading
cannot be applied to more than one axis at a time.

There are motion controllers, like the Hicon, that can manage servos with
encoders and provide a locally closed loop between the servo and the
internal system of the motion controller. They can even cause Mach4 to
display actual position instead of commanded location, but the decision
of what to do about following error and fault detection is still up to the
motion controller. This results in a system that is only marginally better
that using servo drivers that accept step and direction commands and
internally flag a fault if the following error exceeds a preset threshold.


Steve Stallings
www.PMDX.com
For PMDX product support, please use PMDX forum or direct email for quickest response. We do not use this forum as our primary product support site.

Offline smurph

*
  • *
  •  1,085 1,085
  • "That there... that's an RV."
    • View Profile
Re: Is Mach4 really Hobby Material?
« Reply #114 on: January 25, 2018, 03:42:24 PM »
Windows is not real time and thus any application running on it will never close the control loop.  However, Mach can be part of a closed loop system.  Some motion controllers operate in a closed loop manner with Mach.  Galil, Vital System DSPMC, etc...  For a servo system, the loop can be closed in three places, depending on the setup.

1. On the control itself (LunuxCNC).
2. On the motion controller.
3. On the servo drive. 

It you want instantaneous feed rate override, it has to be done at the point in the system where the loop is closed.  That leaves points 1 and 2, as I have never seen it implemented on point 3 (the servo drive).

Hardware based feed rate override is possible on the Galil with a pot connected to an analog input and a bit of Galil DMC programming.  You change the sample period time base (TM) based on the analog value.  However, if you are running servos, this also changes the PID loop sample period so you had better change the PID values to match the new time base as well (just a mathematical calculation).  If you are running steppers with the Galil instead of servos, dealing with the PID values become irrelevant.

All that being said, I would not consider the Galil a hobby controller.  It is more of an industrial motion controller due to its' complexity and price point.  But the option is there.  The higher priced controllers can usually accommodate these types of requirements.  But we are talking about Hobby level machines and controllers, right?  Professional features come at a price. 

Threading...  it needs to be done in the real time component.  No encoder need be involved though.  The motion profile can be, and is, calculated.  The start and end point of the thread never changes.  The challenge is the spindle speed.  If the spindle speed could remain constant, a perfect thread could be produced with a predetermined motion profile.  However, that is never the case in the real world.  So the real-time component of the motion controller must monitor the speed of the spindle and change the time base in which the thread profile is executed to match.  So how does a motion controller monitor the spindle speed?  It can use an encoder.  But a single pulse per rev is usually quite adequate.  It turns out that producing a class A thread doesn't require THAT much monitoring of the spindle speed.  If you have an encoder on the spindle, then use it.  But it is definitely not required. 

Steve
Re: Is Mach4 really Hobby Material?
« Reply #115 on: January 25, 2018, 05:00:41 PM »
Steve,
To add to your point on threading Encoder vs single pulse.  We have lathe that is using an encoder with 300 PPR and it threads just fine we also have 2 lathes in that use a single pule per rev and they thread just as well. 

I Also agree with your point that certain features are industrial and not hobby, therefore you'll have to shell over some money for them.   
Chad Byrd
Re: Is Mach4 really Hobby Material?
« Reply #116 on: January 26, 2018, 02:43:04 AM »
Hi Steve,

thank you for pointing out the higher level controllers. Didn't heard about galil before - so have to read a bit to get familiar with them. Pricing is high, but looks interesting.

About the question linuxCNC versus mach4 - I'm quite sure, that mach4 could be much better than linuxCNC - you only have to try :D
... linuxcnc does not work on linux standard distributions - it needs a special (realtime-)kernel.
May be, there's something similar possible on windows systems too?

Quote
Threading ...  No encoder need be involved though.
Some pages before I was told, that you can not guarantee, what you don't have under control.
For me, position of Z-Axis is related to position of the turning axis. If you know the position, velocity is irrelevant - so I don't know, how you can guarantee precision without measuring?
AFAIK threading is worked out by multiple passes usually. How can you match the same starting point without measuring?

Anyway - your decision.

Reinhard

@Steve
I skimmed  galil pages for the instantaneous feed rate override. Did not found any.
Do you have a link, where I can read more about it?
« Last Edit: January 26, 2018, 02:59:36 AM by django013 »
Re: Is Mach4 really Hobby Material?
« Reply #117 on: January 26, 2018, 03:06:08 AM »
Oups, I'm confused. Prices I saw at first sight where used prices at ebay :(
Re: Is Mach4 really Hobby Material?
« Reply #118 on: January 26, 2018, 03:47:00 AM »
Quote
Some motion controllers operate in a closed loop manner with Mach.  Galil, Vital System DSPMC, etc...
Vital System DSPMC looks what I was searching for. Great!
So I might have to eat dog food for a while and beg for bigger budget ;)

Reinhard

Offline smurph

*
  • *
  •  1,085 1,085
  • "That there... that's an RV."
    • View Profile
Re: Is Mach4 really Hobby Material?
« Reply #119 on: January 26, 2018, 07:55:09 PM »
Reinhard,

On the Galil, you would use the TM command.  TM is set to 1000 (approx 1ms) by default.  That is the time base that everything uses.  Increasing or decreasing the value of TM would be tantamount to feed rate override.  The challenge then becomes to tie the value of TM to an analog input.  This can be done in Galil DMC programming where a thread is dedicated to watching the analog and adjusting the values of TM (and possibly the PID values to if using servos.  As I said, the Galil is a complex controller.  They have good documentation, but it still takes years to master every facet.  Meaning it is up to you to read the documentation and implement what you want to do.  You will NEVER see a reference to feed rate override in their manuals.  They give you the tools, you just have to figure out how to use them.  However, if you buy a Galil, they do offer great support.  They have good application engineers to help you get what you want out of the controller.  

In order to run a Galil with Mach, you have to know how to run a Galil by itself first.  I run a Galil on one of my machines.  I consider it a viable hobby level controller IF you are willing to learn about it and IF you can/want to afford it.  Budgets being what they are, everybody has their own levels to which they draw a line.  Buying a Galil on eBay is not for the crowd that knows nothing about them.  There are so many different models and a LOT of them on eBay were custom designs made for a particular purpose.  And Galil offers no support for used controllers.  So you better know exactly what you want to pull the trigger on an eBay Galil.

Multiple pass threading starts each thread pass on the index pulse on the encoder or the pulse per rev input.    The infeed amount is already there.  All that remains is synchronizing the Z feed rate with the actual spindle speed.  Z always moves from the start point to the end point and never needs to be re-planned.  It is NEVER as complicated as people make it.  It is actually quite simple to produce a high quality thread with just a spindle pulse and a calculated trajectory.  But it does take a real-time environment to implement the control loop.  

There are real-time extensions for Windows.  The problem is that all of them cost big bucks.  It would more than double the price of Mach.  There are two types for Windows, mainly; Hypervisor and HAL.  A Hypervisor is running a RTOS on the hardware that then partitions a CPU core (or more) to runs Windows in a VM.  The HAL method uses a custom Windows HAL.  The HAL type turns Windows into a true RTOS and can be implemented with a single core processor.  Of the two, I prefer the HAL type.  Interval Zero https://www.intervalzero.com/ is one that I like.  In fact, they have a product called KingStar that implements a software EtherCAT controller.  They are developing a plugin which is nearing completion.  They demonstrated it running a machine at our shop a few weeks back.  But this stuff, while cool, is way out of the realm of Hobby land.  

Steve