Hello Guest it is September 21, 2019, 04:54:54 PM

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

861
Galil / Re: Galil DMC2140 Help
« on: June 04, 2012, 03:36:40 PM »
Limit switches are a bit funny with the Galil.  It has to do with how the limit switches are wired.  If LSCOM is positive, then the limits will show active high (a 1 in the data record) when the appropriate limit is shorted to ground.  If LSCOM is negative, then the limits will show active low (a zero in the data record) when the appropriate limit is connected to positive.  Then, in the plugin config, you need to tell the plugin how the limits are configured (active low or high).  This actually sends a CN command down to the galil.  If this is not setup correctly, then you will not be able to jog off the limits.

862
Galil / Re: Adding an A axis
« on: June 04, 2012, 03:21:10 PM »
Ok...  Mach will only use one motion device.  You cannot spread coordinated motion axes across two or more plugins.  For spindles, you can use any modbus device (Galil RIO) or any plugin that controls an analog output (Maybe PoKeys does this?).  The deal is that a spindle is not a coordinated motion axis in most instances.  Threading and rigid tapping excluded, of course.  So if you just want RPM control of your spindle, you have other options. 

For a feed type axis, you could also implement a motor with a VFD speed control.  Instead of using a Mach axis, you could do a special script M code that moves the feed motor at a certain speed. 

Steve

863
Galil / Re: Galil Controller 41x3 Plugin
« on: June 04, 2012, 03:03:06 PM »

864
Galil / Re: Galil dmc-4040 3-axis and/or 4th axis
« on: February 19, 2012, 01:07:49 PM »
You can disable the 4th axis in the Galil Plugin axis mapping config.  That is all that should be required.  With this, even if you sent A axis commands to Mach, it would do nothing on the Galil.

Steve

865
Galil / Re: Galil controller compatability (what works with the plugin)
« on: February 15, 2012, 12:44:56 PM »
Hmm...  i would have though the hitting a limit, the Galil would have shut down the axis allowing no further movement in that direction.  Regardless of the movement type (jog or otherwise).  I don't have a controller setup to test at the moment.  The only thing I have left is a 1425.  I'll set that up and see if I can duplicate.

Steve

866
Galil / Re: Galil controller compatability (what works with the plugin)
« on: January 20, 2012, 05:53:47 AM »
Make sure that the GalilDebug.txt file is turned off in the plugin.  It could be that!  A 300000 line Gcode program may create a HUGE debug file.  And the bigger the file, the longer it takes to seek to the end and write a new line.

I'm really grasping at straws here because I don't know where else to go.  If that doesn't help you out, I'm afraid I have no more suggestions.  :(

Steve

867
Galil / Re: Galil controller compatability (what works with the plugin)
« on: January 18, 2012, 05:35:59 PM »
Something must be going on with your machine.  All indexing and other OS functions (Automatic updates, etc...) that burn CPU must be turned off.  Look at this link and see if there is anything that needs to be done.  http://www.machsupport.com/downloads/XP_Optimization.txt

Others are reporting success with the improved timeout handling.

Steve

868
Galil / Re: Slave axis travels faster during homing on DMC-4143
« on: January 16, 2012, 06:21:42 PM »
Ok..  Gantry homing is somewhat of an issue for me because I don't have a machine with a gantry.  But here goes anyway.

First, in the general config, don't home slave with master.  In other words, we want Mach to just home the master axis.  The slave axis should move with the master as the Galil has them geared together.
Second, in the Galil plugin, select "perform axis squaring".

What this should do is home the master axis while moving the slave axis along with it.  Once the mater is homed, the plugin will home the slave if axis squaring is selected (it should be near the home switch at this point anyway).

So try that out and post the debug file if you continue having problems.

Below is what your debug file should look like.
Code: [Select]
FL 2147483647,2147483647,2147483647,2147483647               Slots=000  Response=":"  <DisableSoftLimits() gState.nAixs = 4>
BL -2147483648,-2147483648,-2147483648,-2147483648           Slots=000  Response=":"  <DisableSoftLimits() gState.nAixs = 4>
AC ,250000                                                   Slots=000  Response=":"  <HomeAxis(1)>
DC ,67107840                                                 Slots=000  Response=":"  <HomeAxis(1)>
JGB=8332                                                     Slots=000  Response=":"  <HomeAxis(1)>
BG B                                                         Slots=000  Response=":"  <HomeAxis(1)>
JGB=0                                                        Slots=000  Response=":"  <Update() FINDSWITCH>
ST B                                                         Slots=000  Response=":"  <Update() FINDSWITCH>
JGB=-833                                                     Slots=000  Response=":"  <Update() MOVEOFFSWITCH>
BG B                                                         Slots=000  Response=":"  <Update() MOVEOFFSWITCH>
JGB=0                                                        Slots=000  Response=":"  <Update() ROUGHHOME>
ST B                                                         Slots=000  Response=":"  <Update() ROUGHHOME>
JGB=0                                                        Slots=000  Response=":"  <Update() SYNCSTATE>
ST B                                                         Slots=000  Response=":"  <Update() SYNCSTATE>
AC ,0                                                        Slots=000  Response=":"  <Update() SYNCSTATE>
DC ,0                                                        Slots=000  Response=":"  <Update() SYNCSTATE>
DP ,0                                                        Slots=000  Response=":"  <Update() SYNCSTATE>
SH B                                                         Slots=000  Response=":"  <DoHoming() SYNCSTATE>
GM ,,,0                                                      Slots=000  Response=":"  <Slave(1, 3, false)>             //Uncouple the slave from the master
GR ,,,0                                                      Slots=000  Response=":"  <Slave(1, 3, false)>             //Uncouple the slave from the master
FL 2147483647,2147483647,2147483647,2147483647               Slots=000  Response=":"  <DisableSoftLimits() gState.nAixs = 4>
BL -2147483648,-2147483648,-2147483648,-2147483648           Slots=000  Response=":"  <DisableSoftLimits() gState.nAixs = 4>
AC ,,,250000                                                 Slots=000  Response=":"  <HomeAxis(3)>
DC ,,,67107840                                               Slots=000  Response=":"  <HomeAxis(3)>
JGD=8332                                                     Slots=000  Response=":"  <HomeAxis(3)>
BG D                                                         Slots=000  Response=":"  <HomeAxis(3)>
JGD=0                                                        Slots=000  Response=":"  <Update() FINDSWITCH>
ST D                                                         Slots=000  Response=":"  <Update() FINDSWITCH>
JGD=-833                                                     Slots=000  Response=":"  <Update() MOVEOFFSWITCH>
BG D                                                         Slots=000  Response=":"  <Update() MOVEOFFSWITCH>
JGD=0                                                        Slots=000  Response=":"  <Update() ROUGHHOME>
ST D                                                         Slots=000  Response=":"  <Update() ROUGHHOME>
JGD=0                                                        Slots=000  Response=":"  <Update() SYNCSTATE>
ST D                                                         Slots=000  Response=":"  <Update() SYNCSTATE>
AC ,,,0                                                      Slots=000  Response=":"  <Update() SYNCSTATE>
DC ,,,0                                                      Slots=000  Response=":"  <Update() SYNCSTATE>
DP ,,,0                                                      Slots=000  Response=":"  <Update() SYNCSTATE>
SH D                                                         Slots=000  Response=":"  <DoHoming() SYNCSTATE>
CS S                                                         Slots=000  Response=":"  <DoHoming() NO MORE HOMES>
GA ,,,B                                                      Slots=000  Response=":"  <Slave(1, 3, true)>                     // re-couple the slave to the master
GR ,,,1                                                      Slots=000  Response=":"  <Slave(1, 3, true)>
GM ,,,1                                                      Slots=000  Response=":"  <Slave(1, 3, true)>

869
Galil / Re: Galil controller compatability (what works with the plugin)
« on: January 16, 2012, 12:49:57 PM »
It's possible.  I have a few 1425s and I'll pound one to see if I can get it to choke up.  They are a little bit different than the Optima line.  I put the support in the plugin for them just because I had a few laying around.  But I didn't do any thorough testing with them.  Just got them talking.   I was planning to try using two of them with the distributed firmware (makes them a 3425) for a total of 4 axes.  I'm not sure that distributed mode will work for axes that need to be tightly coupled, but it might work for controlling a Z axis and spindle for a 2D mill type of setup.  Or a lathe that needs spindle control.

Steve

870
Galil / Re: Galil controller compatability (what works with the plugin)
« on: January 15, 2012, 04:36:40 PM »
Guys with timeouts, try this plugin: http://www.smcomp.com/~smurph/galil/Galil.zip

It handles timeouts in a more graceful manner.  It will keep trying to communicate to the controller until it becomes un-stuffed.  So your machine may pause, but it will recover.

Steve