× Forum Header

Configuring e-stop disables motors

More
31 Dec 2015 18:13 #67611 by ex262
Configuring e-stop disables motors was created by ex262
Hi all,

Hoping someone might be able to assist me with a funky issue I'm finding! My setup (a new CNC that I'm bringing online slowly!):
  • Driver: Leadshine MX4660 for the 4 main axes plus Leadshine DM442 for the slave axis. Here's the link to the MX4660 manual
  • LinuxCNC: Vers 2.6.4, using StepConf for setup
  • 4 axes plus slave: X, X (slave), Y, Z, and A
  • Motors are all Nema 23 stepper
  • normal parallel cable connection
  • e-stop button: link here

The Leadshine has a dedicated e-stop input and output. Per the manual, the e-stop is to be connected using Normally Closed, sends 0 volts normally and 5 volts on error to pin 15. Linuxcnc typically expects the opposite, so I have the Inverted box checked for pin 15.

The issue: I initially had the e-stop button wired into the Leadshine driver but not configured in StepConf. In that case, all of the motors work correctly (both X motors, Y, Z, and I've not yet tested A or the spindle) when I jog the axes and when I run some test g-code samples. I've now gone into StepConf to set up the e-stop (see attachment below for settings), using pin 15. When I run the system with these settings, the e-stop appears to function correctly (i.e. LinuxCNC shows "e-stop" and shuts the power down when it's pressed, and returns power when e-stop is reset), but now none of the motors work with the exception of the slave X motor. Might be coincidence but that's the only one that also has "Inverted" checked in StepConf? Any suggestions? Jogging the axes shows movement on the screen but not at the motors. When I put pin 15 back at Unused, motors function normally.

My stepconf (note the second X motor direction is inverted because it needs to mirror the other X motor)

Attachments:

Please Log in or Create an account to join the conversation.

More
01 Jan 2016 15:33 #67650 by ArcEye
Replied by ArcEye on topic Configuring e-stop disables motors
Hi

You need to post the actual .ini and .hal files you are trying to run, rather than tell us what you entered into stepconf.

zip the whole dir and attach that

If you have a charge pump as well as estop for instance, that can greatly complicate things as they get linked together.

regards

Please Log in or Create an account to join the conversation.

More
02 Jan 2016 00:18 #67671 by ex262
Replied by ex262 on topic Configuring e-stop disables motors
Thanks for taking a look at it for me. Attached is a zip of my settings directory that I'm using. I'm a newcomer to both linux and CNC so I'm doing my best to climb a steep learning curve! When you say charge pump, here's what the Leadshine manual says:

To make the MX4660 work properly, setting this switch to the right position is required. The MX4660 is featured with a feature called "Charge Pump", a watchdog timer to enable/disable the MX4660. When the charge pump feature is turned on, the MX4660's activation will depend on the receiving of 10 KHz signals at pin 16 of the DB25 connector. When the "Charge Pump" feature is turned off, the MX4660 wil be activated without such verification. By default, the charge pump feature is turned on, with the "Charge Pump" set to the "Off" position (means "Charge Pump" ON).


I currently have it at the default setting so, as I understand it, the charge pump is on and it requires the signal on pin 16. Should I just try to turn the charge pump off?

Thanks!
Attachments:

Please Log in or Create an account to join the conversation.

More
02 Jan 2016 06:13 #67691 by kornphlake79
Replied by kornphlake79 on topic Configuring e-stop disables motors
What the charge pump does is disable the drives even though power has been applied, to prevent errant signals during startup from moving the machine, once startup is complete LinuxCNC sends a signal to the charge pump which enables the drives. I haven't had any problems with my machine moving while the control is starting up, but as a safety measure I keep the power to the drives switched off until after the PC is booted up and I've launched LinuxCNC, a manual charge pump of sorts.

Because my machine doesn't support a charge pump I haven't investigated how the E-stop and charge pump interact, but it may be complicated as ArcEye suggests. It wouldn't hurt to try disabling the charge pump for testing purposes, but I'd recommend keeping the power to the drives switched off until the PC is booted up and LinuxCNC is launched as I described above.

Please Log in or Create an account to join the conversation.

More
02 Jan 2016 11:06 #67696 by ArcEye
Replied by ArcEye on topic Configuring e-stop disables motors
Hi

I think you will find that it is the interaction between the internal estop and charge-pump that prevents operation.

This is not aided by the MX4660 requirement for a connection across the 'Estop' signal terminals, when more sanely these could be regarded as an 'Enable' signal and treated as such.

Pin 15 is not actually an Estop signal, but a Fault signal, encompassing both internal driver error and EStop.

I would suggest that you connect the charge-pump without estop linkage, this will provide a cut out if the computer losses power, or the user operates machine-off or estop.
It will not however link the charge-pump.enable to the state of estop, which is where the problem arises.

Then wire the Estop button externally into Linuxcnc, through a second signal (inverted as necessary)

This is how I did the same sort of thing with one of my mills, the .hal file still being annotated as a reminder, because of all the problems it caused me.
################################################################################
# Hardware estop button
# This is only setup that ensures external ESTOP works and also enables charge pump

#####  net estop-out <= iocontrol.0.user-enable-out => charge-pump.enable
#####  net estop.ext => charge-pump.enable
#      is what stepconf gives you and it doesn't work
#################################################################################

net charge-pump => parport.0.pin-01-out
net charge-pump <= charge-pump.out

net estop-out iocontrol.0.user-enable-out
net estop-ext <= parport.0.pin-10-in-not
net estop-out <= iocontrol.0.user-enable-out
net estop-ext => iocontrol.0.emc-enable-in

You will need to open your .hal file in an editor to make the changes, stepconf cannot do this for you

regards

Please Log in or Create an account to join the conversation.

Time to create page: 0.242 seconds
Powered by Kunena Forum