Hello Guest it is March 19, 2024, 05:30:33 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.


Topics - jevs

Pages: 1 2 3 4 5 6 7 8 »
1
Mach4 General Discussion / Mach 4 G-Code File Extension?
« on: April 01, 2020, 06:30:48 PM »
I am not sure why I cannot find this in the documentation quickly, but what is the standard or recommended file extension for Mach 4 G-Code?

I found one document (not by Artsoft) that said .tap, but I want to make sure it should not be .nc or something else?

I am trying to fill all the paperwork out for BobCAD V32 to make a proper post for Mach4 instead of just giving you a Mach3 post. I would have thought they already would have this by now. Apparently I am the first person or something...

I am not sure I am going to be able to answer all the questions because I don't even know how to do it all yet. I got my machine all done and running Mach4 properly, but I have not used it to make anything or program anything yet due to lack of time.

Thanks

2
I do not see a post processor listed for Mach4, only Mach3.
Anyone know what post processor I should be using for Mach4 (mill)?

3
This is in my history at start up of Mach 4 every time. I am running the latest Mach 4 and ESS plugin (just updated the ESS today 2/10/20 and it still happens). My Mach version is still at the recommended version.

E-Stop condition!
E-Stop cleared!
>>> Clearing a spurious limit_hit_latch event event. Start Logging in 'Menu-> Diagnostic-> Logging...' to see more details.

Everything works fine after this so far, but I am not sure why I am getting that "Clearing a spurious limit_hit_latch event event." at start up

It homes fine to the home switches every time and works fine after this. The actual limits work fine also (kicking everything off).

Of course turning on the logging does me no good, because it only happens at opening of Mach4 and the logging can only seemingly be started after Mach4 is opened.

I cannot remember if this was happening before. I was working on my machine for awhile (rebuilt ball screws and new support bearings). I did change the ways oiler to come on whenever Mach4 is enabled rather than when an axis is moving.

4
Mach4 General Discussion / Dual Dimensions?
« on: November 01, 2019, 10:44:09 AM »
Has anyone setup the screen set to display dual dimensions on Mach 4. I was just thinking this could be interesting to have metric DRO's show up somewhere.
I would assume you could write some code to do the math and display it, but I was wondering if there was a simple way and if anyone has done it.

5
I am using a Wildhorse Econoprobe
I adjust the tip with a dial indicator and get it pretty much dead on.
Then I put a new 1.0937" ring gage in the vice.
With a dial indicator in a collet, I center the ring gauge up and zero out x and Y.
Switch to the probe.
Go through the calibrate xy offset and radius.
After that I measure the bore of the ring gauge and it measures right on the money at 1.0937. A couple times I got 1.0936 after calibrating, but this is still excellent I think.

Next I probe the X edge and then load the edge finder and I was getting within .0001 of each other which is again really good.

Then I try to do the Y edge and keep getting about .0036 difference from the probe and the edge finder.

Not sure why this is happening, but I am not sure I can trust the probe or use it with it being this far off.


6
Am I missing this somewhere, or is it really just this painful to edit screens?


7
ESS version 248
Mach 4 Hobby Version 4.2.0.4310

If I do a tool probe or tool change many times I am getting "Error, Y axis commanded over Softmin".

I have been fighting this since I got the probing working. I updated the ESS to what they say works with this version of Mach 4.

One thing I notice is that my Y will say -0.0000. Not sure why it has a minus, but maybe this has something to do with it? I moved my tool setter .005 in from the soft limits to make sure that was not it. I moved the tool change location in also to make sure. No help.

Sometimes after this occurs, then it will also start my tool height check , but never actually move, yet my message window comes up that it is in position, even though it never moved. No moves will occur with the tool height check function, but I can jog the axis around still.

It may also have something to do with a tool change after the tool probe.

What I just did this time was power up mach, ref home everything, initiate a tool height probe sequence, which worked like it should. Then I sent an M6 T6 to change to the next tool, then I get the "Error, Y axis commanded over SoftMin". I am beginning to think this is a bug??

Once this occurs, even if I ref all home again, the Auto Tool Change button will no longer make any moves. When I hit it, it will say it is ready to probe (meaning it should have moved over the tool height setter), but it never moves and does not try to probe even if you say okay. It is like the moves are disabled within the function now for some reason. However, I can still jog around and home etc just fine after this. A tool change will not do anything either once it gets in this state.

.....I just tried again, and it does the same thing after a tool height check and then trying to do a tool change. However this time it did not give me a negative on the Y, but many times it does.

If this is not a bug, maybe something in my Tool Zero probe function is causing it?
Code: [Select]
-----Auto Tool Zero button------
function AutoToolZero()
local posmode = mc.mcCntlGetPoundVar(inst, mc.SV_MOD_GROUP_3) --Get the current mode so we can return to it when macro ends
local currenttool = mc.mcToolGetCurrent(inst)
local ToolRadius = mc.mcToolGetData(inst, mc.MTOOL_MILL_RAD, currenttool) --Get the radius of the current tool

--Get positions before moving to do tool change
local valX, rc = mc.mcAxisGetMachinePos(inst, mc.X_AXIS) --Get the position of the X axis in Machine Position
local valY, rc = mc.mcAxisGetMachinePos(inst, mc.Y_AXIS) --Get the position of the Y axis in Machine Position
local valZ, rc = mc.mcAxisGetMachinePos(inst, mc.Z_AXIS) --Get the position of the Z axis in Machine Position

rc = mc.mcCntlGcodeExecuteWait(inst, "M05") --Turns off the spindle (includes decel time)

if (ToolRadius < .4500) then --checks to see if the tool is too big for the touch plate
rc = mc.mcCntlGcodeExecuteWait(inst, "G90 G53 G0 Z0.0000") --Move the Z to Home
rc = mc.mcCntlGcodeExecuteWait(inst, "G90 G53 G0 X19.5250 Y14.4445") --Move the the X, Y Coords to to the touch pad location
rc = mc.mcCntlSetLastError(inst, 'Now in Tool Measuring Position')
else
local xValDiamCor = (19.5300 - ToolRadius) -- Tool plate center minus tool radius to hit edge of tool
rc = mc.mcCntlGcodeExecuteWait(inst, "G90 G53 G0 Z0.0000") --Move the Z to Home
rc = mc.mcCntlGcodeExecuteWait(inst, "G90 G53 G0 X" .. tonumber(xValDiamCor) .. "Y14.4500") --Move the the X, Y Coords to to the touch pad location minus tool radius

local MyChoice = wx.wxMessageBox("Manually rotate tool so lowest cutting edge is over the center of the touch plate","Click OK to continue once tool area is clear!" , 4)
end

local MyChoice = wx.wxMessageBox("Click Ok to Begin Probing the New Tool","Click OK to continue" , 16)

if (MyChoice == 16) then
rc = mc.mcCntlSetLastError(inst, 'Auto Tool Zero was cancelled.')
mc.mcCntlGcodeExecuteWait(inst, "G90 G53 G0 Z0.0000 F15.0") --Retract back to Z home
mc.mcCntlGcodeExecuteWait(inst, "G90 G53 G0 X" .. tonumber(valX) .. "Y" .. tonumber(valY)) --Move back to X & Y initial location
return
elseif (MyChoice == 4) then
rc = mc.mcCntlSetLastError(inst, "Probing in Progress!")
rc = mc.mcCntlGcodeExecuteWait(inst, "G90 G31.1 Z-8.125 F20.0") --Quick probe to find touch plate, Z distance min for shortest tool to hit

local touchLoc = mc.mcCntlGetPoundVar(inst, mc.SV_PROBE_POS_Z) --Assigns Z Probed position in Machine coords at touch plate
local RetractPoint = touchLoc + .200 --Adds retract distance to touch plate probed point

rc = mc.mcCntlGcodeExecuteWait(inst, "G90 G53 Z" .. tonumber(RetractPoint) .. "F15.0") --Retracts to prepare for slow approach

local approachDist = RetractPoint - .210 --Subtracts retract distance to touch plate probe, slightly more to make sure probe trips

rc = mc.mcCntlGcodeExecuteWait(inst, "G90 G31.1 Z" .. tonumber(approachDist) .. "F5.0") --Probe the new tool at slow speed
rc = mc.mcCntlGcodeExecuteWait(inst, "G90 G53 G0 Z0.0000 F20.0") --Retract back to Z home
rc = mc.mcCntlGcodeExecuteWait(inst, "G90 G53 G0 X" .. tonumber(valX) .. "Y" .. tonumber(valY)) --Move back to X & Y initial location

local probedz = mc.mcCntlGetPoundVar(inst, mc.SV_PROBE_POS_Z) -- Z Probe position in Machine coords
        mc.mcCntlGcodeExecute(inst, string.format('G ' .. posmode))--return to pre macro mode G90, or G91

local ToolSetterHeight = mc.mcProfileGetDouble(inst , "ProbingSettings", "ToolHeightZ", 0.0000) --Gets the Tool Height Setter Z postion from the probing tab settings
local NewOffset = math.abs (probedz - ToolSetterHeight) --Gives the Absolute value of the probed Z minus the Tool Heigt Setter Z position
mc.mcToolSetData(inst, mc.MTOOL_MILL_HEIGHT, currenttool, NewOffset)
mc.mcCntlSetLastError(inst, string.format("Auto tool setting complete, Offset = %.4f", NewOffset))
wx.wxMessageBox("Toolchange Complete.\nTLO Set")
end
end

8
I am using an ESS

I have my backlash set to .0013 on the X axis and the compensation turned on with the ESS settings.

Many times when I home, the X axis machine coordinate becomes .0013 or .0014 after a home instead of .0000"

It seems to work out to zero if you move the X axis in a certain direction before homing.

Nothing strange like this ever happens with Y and I have compensation on that as well and it is a higher amount. It happens all the time on X. 

If I set the X backlash to zero, then it always takes the machine coords to X = 0.0000 on a ref all.

9
I am trying to create my own from what I can find, but it is turning into dead ends and no answer to be found on google.

The screen set that has this button is just blank on the button, so it does nothing.

I kind of have it working, but not very good....the wxMessageBox stuff in there is not really working right.
Everything I find here is old.
In the mean time I am still working on my own starting with some example of an M6 with auto tool change code in it, but something that just works would be nice.....

The manual references setting up an Auto Tool Zero macro in the manual for setting your TLO's using the gage line method....but then that becomes a dead end to actually do it since I cannot find anything further.

10
I cannot figure out what this is doing. I don't know what that 16 is on the end and I cannot find documentation for it.

This pops up a message box with a selection of "Ok" and "Cancel"

local MyChoice = wx.wxMessageBox("Click Ok to Begin Probing the New Tool","Click OK to continue" , 16)

The problem is if you pick "Cancel" it does the same thing as "Ok" and continues on with the code below it. I need cancel to end the operation. Without any info
I cannot decipher what is going on here without knowing what that 16 does. I assume it is a choice of what to do from some list that I have no idea of.....

Pages: 1 2 3 4 5 6 7 8 »