Hello Guest it is March 28, 2024, 06:03:16 AM

Author Topic: Disabling an axis via mach  (Read 2981 times)

0 Members and 1 Guest are viewing this topic.

Offline ASC

*
  •  59 59
    • View Profile
    • Automation Systems
Disabling an axis via mach
« on: August 18, 2010, 02:48:56 PM »
Kind of a strange request, I worked so hard to get them going and now I want to go and disable one!

I'm using my C axis stepper motor to drive a a fluid dispenser.  The dispense rate is is controlled by a formula taking into account the velocities of the other 5 axes, so as far as code goes, the C axis is never referenced.  Everything is working great except I have a high speed spindle on the same tooling plate.  When I go to use my spindle to mill a small groove, the dispenser is going to keep right on going!  Can anyone recommend a way to either disable or somehow hold the C axis from moving while my spindle is active? 

Right now I'm having to power down the machine and unplug the dispensers motor from the controller!  It works but I would love a more elegant solution.

I
Mr. Creosote

Offline ASC

*
  •  59 59
    • View Profile
    • Automation Systems
Re: Disabling an axis via mach
« Reply #1 on: August 18, 2010, 03:17:37 PM »
oops, looks like I'm wearing the stupid pants this evening!

I just realized my 4 axis driver has a separate enable line for each driver.  I'll just enable it with the same output signal that turns on the solenoid to move the dispenser into place!
Mr. Creosote

Offline kf2qd

*
  •  148 148
    • View Profile
Re: Disabling an axis via mach
« Reply #2 on: August 18, 2010, 03:18:55 PM »
Do you use the dispense function in the same programs where you use the spindle function? If the answer is No then you could have 2 XML files configured and one would come up with the dispenser function  and the other would come up without the dispenser function. Otherwise you would have to go into the configuration and disable the C axis there.

Does this C axis configuration cause a preoblem when you jog, or does this only work under program operation?

Offline ASC

*
  •  59 59
    • View Profile
    • Automation Systems
Re: Disabling an axis via mach
« Reply #3 on: August 20, 2010, 09:16:37 AM »
Currently the plan is to have a single program that mills with the spindle first, switches to the dispenser, and then follows the same tool path dispensing solder paste or conductive ink.  Using 2 XML's is also a good idea though, using a customized screenset streamlined for each function might also make operation easier.

The C axis actually is not a problem when jogging.  It seems to me that the formulas are ignored during jogging and only take effect when running code.
Mr. Creosote

Offline simpson36

*
  •  1,369 1,369
    • View Profile
Re: Disabling an axis via mach
« Reply #4 on: August 23, 2010, 08:55:46 AM »
Enable/disable *should* be doable on any device that can tollerate having its 'motivation' cycled.

For example, if your dispenser is electric, you might be able to simply use a MACH output to trigger a relay to switch off the power to the dispenser. If this could be done transparently to your dispencer control routine, then that control could continue to operate, but simply not dispense anything.

If the dispenser is air powered, you might be able to install a solenoid operated valve to kill the air supply.

Even in the case of a servo or stepper drive that has no 'disable/enable' function, the step signal coming from Mach could be interrupted between the BOB and the drive, although in such case, re-homing would need to be considered as Mach would no longer have an accurate axis position.

I am using MACH outputs to enable/disable as well as activate/deactivate a variety of devices, electronic, pneumatic and mechanical. The output fuction is easy to use with MACH. More challenging is getting an action to be triggered automatically by a specific event or combination of conditions without using G-code.