Hello Guest it is February 19, 2020, 05:30:12 AM

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Messages - smurph

Mach4 General Discussion / Re: G 05
« on: July 10, 2018, 06:08:29 PM »
The default motion mode is determined by the general tab of the configuration dialog.  Exact Stop (G61) or Constant Velocity (G64), CV for short.  G64 is the semi-equivalent of you motion smoothing.  Most of the time, G64 (CV) is the default motion mode.  G64 it is primarily characterized by the acceleration capabilities of your machine.  The higher the accel settings/capabilities, the closer CV cuts to the true path.  There is a way to tailor the CV settings by angle.  But there isn't a way to blend with a number in a range like your G5 command. 


Mach4 General Discussion / Re: Calibration issue (I think)
« on: July 10, 2018, 05:49:37 PM »
What is the Mach build number?

The system variables are also described in the Mill G code programming manual in the Docs folder.  Chapter 6.


This is the way to share code between LUA states.  But it will not let you share global variables between the states!  Just throwing that out to clarify.  If you want to share data between the states, use Mach registers. 


No, there isn't a way to lock more menu items. 

Once the machine is configured, you can remove CoreConf.dll.  That will make it impossible to configure the machine.  It will remove some config related menu items as well. 


It is just semantics.  The human controls Mach which controls the motion controller that controls the machine (maybe not even all of it) or just a stepper driver (or servo drive) that controls the stepper (or servo) motor which controls the screw which controls the table position for a plane of motion.  I/O boards may be different from the motion controller, but does that mean they don't control parts of the machine?  The machine control is really the sum of the parts that make up the system. 

Which one controls the machine again?  Seems like it is really the human that kicks it all off.  And this human thinks your buddy may be overthinking it a bit.  :)


The obvious question is why do the axis jog planners  not use the default units set by the user? Surely that overcomes the problem?

I don't know  why the Reset button is even there, it didn't exist in my Mach3 screen that I use. The only time I've pressed it was when Mach4 became unresponsive for any reason and I thought that might get back in control. I intend to remove it because I have no idea what it's supposed to be used for.

Mach 4 is not Mach 3.  About the only thing they have in common is that they are windows programs that run G code.  If you want to make a comparison, Mach 4 is probably a lot more like a Fanuc than it is like Mach 3.  The reset button is normally on all machine controls (Fanuc, Ysanac, Fidia, etc...), Mach 3 being an exception.  It is there to put the machine into a known state.  For instance, what if you were running a program with cutter comp and stopped it.  And you wanted to restart it from the beginning.  Well...  comp is still in effect!  Or what if you ganked the machine state running MDI commands?  Reset ensures that the machine is put back into its' know state (no comp) before you run the file again.  Reset is all about safety.  You can spot the reset button on a Fanuc quickly because it one of the most used buttons and is probably worn more than others.  


I see what is happening now.  It is not changing on its' own.  The config process destroys the axis jog planners and recreates them with the default of inches.  Nothing, at this point, will set the jog units other than a reset.  Pressing Reset will put the control in the proper mode.  

Ok, I'll call that a bug.  But you don't press reset after a config?!?


Or finally, perhaps someone at Mach might take this bug seriously and fix it!

It isn't a bug.  I explained in a earlier post that the jog units will follow the machine units mode.  The jogging USED to be ONLY in machine native units.  But we got so many support tickets about that so we made it follow the units mode.  Damned if we do and damned if we don't...


rc = mc.mcJogSetUnitsMode(inst, axis, mc.MC_UNITS_METRIC || mc.MC_UNITS_INCH);


unitsMode, rc = mc.mcJogSetUnitsMode(inst, axis)

The mode of the machine may override it.  Meaning if you called mcJogSetUnits() to set the jogs to metric and then executed G20 in G code, the jogs will be in inches.  And vice verse.