Control driver's power through linuxcnc
- rodw
- Offline
- Platinum Member
Less
More
- Posts: 10820
- Thank you received: 3566
24 Nov 2019 12:32 - 24 Nov 2019 12:41 #151103
by rodw
Replied by rodw on topic Control driver's power through linuxcnc
I had a bit of a look at the halui pins and I did not see one that leapt out at me but you could achieve it with estop-latch.
Its not well documented but it is designed to build an estop chain in software.
As my machine grew, I added more estops so moved them all to estop-latches chained together. One of them was for a plasma torch breakaway which triggered an e-stop so that is functionally equivalent to what you want. You can trigger a relay from one of the e-stop outputs. Here is a complex example from my config. You can see I turn a few things on and off with the estop-out signal.(relays and warning lights)
Its not well documented but it is designed to build an estop chain in software.
As my machine grew, I added more estops so moved them all to estop-latches chained together. One of them was for a plasma torch breakaway which triggered an e-stop so that is functionally equivalent to what you want. You can trigger a relay from one of the e-stop outputs. Here is a complex example from my config. You can see I turn a few things on and off with the estop-out signal.(relays and warning lights)
Warning: Spoiler!
# --- ESTOP CHAIN STARTS ---
net latch-reset <= iocontrol.0.user-request-enable
net latch-ok-in <= iocontrol.0.user-enable-out
net latch-ok-in => estop-latch.0.ok-in
net latch0-out <= estop-latch.0.ok-out
net latch0-out => estop-latch.1.ok-in
net latch1-out <= estop-latch.1.ok-out
net latch1-out => estop-latch.2.ok-in
net latch2-out <= estop-latch.2.ok-out
net latch2-out => estop-latch.3.ok-in
#net latch3-out <= estop-latch.3.ok-out
#net latch3-out => estop-latch.2.ok-in
net latch-reset => estop-latch.0.reset
net latch-reset => estop-latch.1.reset
net latch-reset => estop-latch.2.reset
net latch-reset => estop-latch.3.reset
net latch-out iocontrol.0.emc-enable-in <= estop-latch.3.ok-out
net estop-out estop-latch.3.fault-out
# --- EXTERNAL ESTOP SWITCH - CONTROL BOX---
net external-estop <= hm2_7i76e.0.7i76.0.0.input-00
net external-estop => estop-latch.0.fault-in
# --- EXTERNAL ESTOP SWITCH - CONSOLE ---
net console-estop <= hm2_7i76e.0.7i76.0.0.input-31-not
net console-estop => estop-latch.3.fault-in
# --- PENDANT ESTOP SWITCH ---
net pendant-estop <= hm2_7i76e.0.7i76.0.0.input-26-not
net pendant-estop => estop-latch.1.fault-in
# --- TORCH BREAKAWAY E-STOP ---
net torch-breakaway <= hm2_7i76e.0.7i76.0.0.input-06
net torch-breakaway => estop-latch.2.fault-in
# --- E-STOP STEPPER DRIVE DISABLE ---
net estop-out hm2_7i76e.0.7i76.0.0.output-05
# --- E-STOP RED WARNING LIGHT ---
net estop-out hm2_7i76e.0.7i76.0.0.output-00
net estop-out hm2_7i76e.0.7i76.0.0.output-10
# --- ESTOP CHAIN ENDS ---
Last edit: 24 Nov 2019 12:41 by rodw.
Please Log in or Create an account to join the conversation.
- Muz94
- Offline
- Senior Member
Less
More
- Posts: 79
- Thank you received: 2
24 Nov 2019 12:49 #151105
by Muz94
Replied by Muz94 on topic Control driver's power through linuxcnc
However, just to be clear, i'm going to switch to a 7i96 sooner than later, so i would not focus on the charge pump, i'd rather prepare a good schematic and then implement the whole estop circuit when i'll install the mesa board.
Please Log in or Create an account to join the conversation.
- Muz94
- Offline
- Senior Member
Less
More
- Posts: 79
- Thank you received: 2
24 Nov 2019 12:50 #151106
by Muz94
Thank you, i'll look into this!
Replied by Muz94 on topic Control driver's power through linuxcnc
I had a bit of a look at the halui pins and I did not see one that leapt out at me but you could achieve it with estop-latch.
Its not well documented but it is designed to build an estop chain in software.
As my machine grew, I added more estops so moved them all to estop-latches chained together. One of them was for a plasma torch breakaway which triggered an e-stop so that is functionally equivalent to what you want. You can trigger a relay from one of the e-stop outputs. Here is a complex example from my config. You can see I turn a few things on and off with the estop-out signal.(relays and warning lights)
Warning: Spoiler!# --- ESTOP CHAIN STARTS --- net latch-reset <= iocontrol.0.user-request-enable net latch-ok-in <= iocontrol.0.user-enable-out net latch-ok-in => estop-latch.0.ok-in net latch0-out <= estop-latch.0.ok-out net latch0-out => estop-latch.1.ok-in net latch1-out <= estop-latch.1.ok-out net latch1-out => estop-latch.2.ok-in net latch2-out <= estop-latch.2.ok-out net latch2-out => estop-latch.3.ok-in #net latch3-out <= estop-latch.3.ok-out #net latch3-out => estop-latch.2.ok-in net latch-reset => estop-latch.0.reset net latch-reset => estop-latch.1.reset net latch-reset => estop-latch.2.reset net latch-reset => estop-latch.3.reset net latch-out iocontrol.0.emc-enable-in <= estop-latch.3.ok-out net estop-out estop-latch.3.fault-out # --- EXTERNAL ESTOP SWITCH - CONTROL BOX--- net external-estop <= hm2_7i76e.0.7i76.0.0.input-00 net external-estop => estop-latch.0.fault-in # --- EXTERNAL ESTOP SWITCH - CONSOLE --- net console-estop <= hm2_7i76e.0.7i76.0.0.input-31-not net console-estop => estop-latch.3.fault-in # --- PENDANT ESTOP SWITCH --- net pendant-estop <= hm2_7i76e.0.7i76.0.0.input-26-not net pendant-estop => estop-latch.1.fault-in # --- TORCH BREAKAWAY E-STOP --- net torch-breakaway <= hm2_7i76e.0.7i76.0.0.input-06 net torch-breakaway => estop-latch.2.fault-in # --- E-STOP STEPPER DRIVE DISABLE --- net estop-out hm2_7i76e.0.7i76.0.0.output-05 # --- E-STOP RED WARNING LIGHT --- net estop-out hm2_7i76e.0.7i76.0.0.output-00 net estop-out hm2_7i76e.0.7i76.0.0.output-10 # --- ESTOP CHAIN ENDS ---
Thank you, i'll look into this!
Please Log in or Create an account to join the conversation.
- rodw
- Offline
- Platinum Member
Less
More
- Posts: 10820
- Thank you received: 3566
24 Nov 2019 13:19 #151107
by rodw
Here is a start. A bit of a work in progress really. You might need to implement shared home/limit switches or add a daughter baord if you want more inputs. BUt there is one left tfor your heating circuit
Replied by rodw on topic Control driver's power through linuxcnc
However, just to be clear, i'm going to switch to a 7i96 sooner than later, so i would not focus on the charge pump, i'd rather prepare a good schematic and then implement the whole estop circuit when i'll install the mesa board.
Here is a start. A bit of a work in progress really. You might need to implement shared home/limit switches or add a daughter baord if you want more inputs. BUt there is one left tfor your heating circuit
Attachments:
The following user(s) said Thank You: Muz94
Please Log in or Create an account to join the conversation.
- rodw
- Offline
- Platinum Member
Less
More
- Posts: 10820
- Thank you received: 3566
24 Nov 2019 13:20 #151108
by rodw
Replied by rodw on topic Control driver's power through linuxcnc
Ooops, ignore where it says Plasma. This is a reference pinout for a milling machine
Please Log in or Create an account to join the conversation.
- Muz94
- Offline
- Senior Member
Less
More
- Posts: 79
- Thank you received: 2
24 Nov 2019 13:33 - 24 Nov 2019 13:39 #151109
by Muz94
Replied by Muz94 on topic Control driver's power through linuxcnc
I already have that implemented in my hal file, at the moment i have all the switches connected in series, and they work both as limit and home switches, using only 1 input.
However at the moment the heating is all managed by an arduino with a hand made "shield", it's connected to the pc throug serial (via usb) and it communicates with linucnc by a userspace hal component (a simple python script that manages the communication with the arduino and checks for alarms that should trigger the e-stop).
Even the e-stop latch works (i can trigger the e-stop if i call M104 and the thermistor is not connected or if i detect a temperature out of a "safe range"), but for now the e-stop just stops the program, if something really goes wrong i still can't cut the power.
However at the moment the heating is all managed by an arduino with a hand made "shield", it's connected to the pc throug serial (via usb) and it communicates with linucnc by a userspace hal component (a simple python script that manages the communication with the arduino and checks for alarms that should trigger the e-stop).
Even the e-stop latch works (i can trigger the e-stop if i call M104 and the thermistor is not connected or if i detect a temperature out of a "safe range"), but for now the e-stop just stops the program, if something really goes wrong i still can't cut the power.
Last edit: 24 Nov 2019 13:39 by Muz94.
Please Log in or Create an account to join the conversation.
- tommylight
- Away
- Moderator
Less
More
- Posts: 19526
- Thank you received: 6553
24 Nov 2019 13:44 #151111
by tommylight
Replied by tommylight on topic Control driver's power through linuxcnc
in that case all you need is to wire that e-stop signal to a physical pin on the parallel port, in hal.However at the moment the heating is all managed by an arduino with a hand made "shield", it's connected to the pc throug serial (via usb) and it communicates with linucnc by a userspace hal component (a simple python script that manages the communication with the arduino and checks for alarms that should trigger the e-stop).
Even the e-stop latch works (i can trigger the e-stop if i call M104 and the thermistor is not connected or if i detect a temperature out of a "safe range"), but for now the e-stop just stops the program, if something really goes wrong i still can't cut the power.
Please Log in or Create an account to join the conversation.
- rodw
- Offline
- Platinum Member
Less
More
- Posts: 10820
- Thank you received: 3566
25 Nov 2019 00:26 #151170
by rodw
Well you can, you just use a mains power relay and control it exactly like I did here:
Replied by rodw on topic Control driver's power through linuxcnc
but for now the e-stop just stops the program, if something really goes wrong i still can't cut the power.
Well you can, you just use a mains power relay and control it exactly like I did here:
# --- E-STOP STEPPER DRIVE DISABLE ---
net estop-out hm2_7i76e.0.7i76.0.0.output-05
Please Log in or Create an account to join the conversation.
Time to create page: 0.065 seconds