Hello Guest it is April 18, 2024, 05:17:24 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 - Cbyrdtopper

271
Russ,
Yeah, I have the newest profile from the FTP site on my computer at work, so my manual is updated, didn't even think about it not being in the older manuals.

272
It's in the Mach4 manual.  Page 37.

273
There is a G Command that will home an axis.
G28.1   It is on page 37 of the mill programming manual. 
I just tested it here at work on a mill with the ESS and it works.
I found that it needs to be programmed like G28, with a G91
So, do the following.

G91 G28.1 Z 0.00
G91 G28.1 X 0.00 Y 0.00
G90

Be sure to set your machine back in absolute mode with the G90.

274
Mach4 General Discussion / Re: Windows 10?
« on: March 20, 2019, 08:33:55 PM »
I've got a couple machines running Windows 10.
We haven't ran into any problems running Windows 10. 
We also strip the computer of everything it doesn't need, I recommend doing that as well.
Games, Startup assistants, video players, Microsoft Office, Anything that isn't essential is removed from the computer.

275
Mach4 General Discussion / Re: Proper way to use work / tool offsets
« on: March 19, 2019, 08:44:34 AM »
Home switches make everything nice!!!
I agree with Craig, dig in and experiment, it's the best way to learn.

mcardoso,
Have you seen the Mach Support YouTube Channel?
https://www.youtube.com/channel/UCcZ847PqPXOUrksLYct-gaA/videos

Tool Offsets
https://www.youtube.com/watch?v=tywAByswH2Q

Work Offsets
https://www.youtube.com/watch?v=0aRifYB70Mc&t=95s

276
Mach4 General Discussion / Re: Mach 4 setup
« on: March 18, 2019, 01:03:40 PM »
Yes. 

277
Mach4 General Discussion / Re: Mach 4 setup
« on: March 15, 2019, 07:12:09 PM »
Okay, here is the code for the Axis Fault
Put this in the PLC Script. 
I have each Axis mapped to a separate input so I know which Axis has faulted.

Since it is in the PLC script, I made a "Message Counter" to leave only one message instead of leaving thousands of messages in the Log.
But, as you can see by looking through the script, if there is a fault, it will turn on the Alarm output (I use it to light up the red beacon), leave the Axis Fault Message, and Put the machine in E Stop.

--X Axis Fault
local inst = mc.mcGetInstance()
local XAlarm = mc.mcSignalGetHandle(inst, mc.OSIG_ALARM)
local Input16 = mc.mcSignalGetHandle(inst, mc.ISIG_INPUT16)
local hSig = mc.mcSignalGetHandle(inst, mc.ISIG_INPUT16)
local State = mc.mcSignalGetState(hSig)
XAxisAlarmCounter = testcount
if State == 1 then
     while (MessageCountX + 1) == XAxisAlarmCounter do
         mc.mcCntlSetLastError(inst, "X Axis Fault.")
         XAxisAlarmCounter = XAxisAlarmCounter + 1
     end
     mc.mcSignalSetState(XAlarm, 1)
     mc.mcCntlEStop(inst)
else
MessageCountX = testcount
end       


There are many ways of doing this, I plan on trying to make it a little more clean by making it a function, but for now, this does work very well.

278
Mach4 General Discussion / Re: Mach 4 setup
« on: March 13, 2019, 08:33:50 PM »
Hello,
1)  You have to command a spindle speed before the spindle will turn on.  We are using the HiCON Integra on 3 mills and 3 lathes right now and I haven't had spindle problems like that.

2)  What do you mean, I'm not understanding what you want.  When one drive gives an error, you want them all to disable?  See answer 3.

3)  You can get the Fault Signal and read it in Mach4, you can then Stop Mach4.  When I get Drive Faults, I call an E Stop on the machine then I give a message saying which drive has faulted.  You can also cause the drives to disable on E Stop. I am doing this on a mill at work.  I can get the code tomorrow, hopefully I will remember to get it in the morning.  I've been busy doing other stuff at work this week, filling in while Mom and Dad are out of the country.

279
Mach4 General Discussion / Re: 2 simple lines
« on: March 13, 2019, 11:51:32 AM »
Bill,
Glad to hear that.
How did you use it?  In the Macro?  Using the MDIExecute or GCodeExecute call?

280
Mach4 General Discussion / Re: ATC help
« on: March 12, 2019, 08:07:38 PM »
Here it is.  Two parts of my m6 macro. 
I get the handle of my outputs in the beginning of the macro; but here is a rundown of what is going on.

--Move the POT down.
mc.mcSignalSetState(POTUp, 0)
mc.mcSignalSetState(POTDown, 1)
rc = mc.mcSignalWait(inst, mc.ISIG_INPUT24, mc.WAIT_MODE_HIGH, ErrorWaitTime)
if rc ~= 0 then
   mc.mcCntlSetLastError(inst, "There was a problem moving POT down.")
   mc.mcSignalSetState(Alarm, 1)
   return
end--POT down error check.
   
--Move the arm to the spindle.
mc.mcSignalSetState(ArmToHome, 0)
mc.mcSignalSetState(ArmToSpindle, 1)
rc = mc.mcSignalWait(inst, mc.ISIG_INPUT26, mc.WAIT_MODE_HIGH, ErrorWaitTime)
if rc ~= 0 then
   mc.mcCntlSetLastError(inst, "There was a problem moving the arm to the spindle.")
   mc.mcSignalSetState(Alarm, 1)
   return
end--Arm to spindle error check.

rc = mc.mcSignalWait(inst, mc.ISIG_INPUT#, mc.WAIT_MODE_HIGH, ErrorWaitTime) 
The "ErrorWaitTime" on the end of the call is a variable I have declared at the top of my macro.  It is read in seconds.  You can make it a variable or just put in an integer.  That is how long it waits before it continues on with the macro.  If it is left at 0 then it will wait indefinitely.