Hi
My farther and I developed a THC device (independently controls the Z motor) to upgrade a customers old CNC plasma (using a hypertherm 1100). Since this has been functioning perfectly for the last couple of months the customer wants to get some extra functionality that their software will not allow.
This is where Mach3 comes in I believe.
I have been playing with the trial program and have successfully got inputs and outputs to trigger relays and what not. I have also modified macros to do specific tasks push buttons and. We also wrote some brains and they worked to a point and then it broke my brain. As a result I think maybe I need to write a macropump. Correct me If I'm Wrong
But I have virtually no experience with VB and have no idea whether what I want to do is possible.
If anyone could have a look at my scenario and maybe help me out and point me in the right direction it would be great. Ie do I use a brain and then call a macro from the brain or just use the macropump.
Control Process
macro And Functions
M3 - set Enable6, unset (Retry ) Variable
M5 - unset Enable6, unset (Machine is cutting) Variable
Main Program Routine
Run Gcode, M3 send torch fire signal-feedhold-wait for RTG signal from plasma unit-when RTG active-cycle start
check if Enable6 is active (Enable6 is set by m3 macro and unset by the M5 macro)
if Enable6 is and (Machine is cutting) Variable DeActive then DoOEMButton(1001) 'feed hold' (press once)
if Enable6 is active and FeedHold active, activate Output1
if Output1 is active and OEMTrigger1 not active wait (some amount of time not specified yet) then repeat this step
check Output1 and check OEMTrigger1 if both active DoOEMButton(1000) 'cycle start'
when Enable6 and Output1 and OEMTrigger1 Active Set a (Machine is cutting) Variable
Sub Routine
Flame out occurs while machine is in the middle of a part This procedure is to reestablish torch cutting.
Try 3 times or until successfull and continue as normal. If it fails 3 times Display warning for the operator and END Program
(In this instance OEMTrigger1 would drop out)
check OEMTrigger1 check (Machine is cutting) Variable True
if OEMTrigger1 is DeActive and (Machine is cutting) Variable True DoOEMButton(1001) 'feed hold' (press once) and DeActivate Output1
wait (some amount of time not specified yet) and check OEMTrigger1 is DeActive and (Machine is cutting) Variable True and Output1 DeActive then
Activate Output1
wait (some amount of time not specified yet)
Check if Output1 is active and OEMTrigger1 DeActive DeActivate Output1 and increment (Retry) Variable return to sub-routine start
Check (Retry) Variable if <3 return to sub-routine start If = to 3 then Display Warning on screen and hit stop button.
if Output1 and check OEMTrigger1 if both active DoOEMButton(1000) 'cycle start'
Return To main
Thanks in Advance
Christian