Machsupport Forum
Mach Discussion => Brains Development => Topic started by: pat.stave on June 09, 2010, 04:28:20 AM
-
Hi guys,
In my control cabinet i have a safety relay circuit. The relay is active when everything is OK to run.
The relay cuts power to the stepper drivers when it is disabled.
I have a signal to my Grex motion controller from the safety relay. I want Mach 3 to stop all program translation when this signal is not present (so that position is not lost when powes supply cuts out).
I could use the ESTOP input, but then i would have to press the reset-button every time the signal goes on (the relay is reset externally).
Is there a Mach button i could use in brains for this? Any suggestions how this could be done?
-
i think this help you
if code runing and input#1 was zero >> press "feed hold"
in addition
The relay cuts power to the stepper drivers when it is disabled.
i think cause to loos steps
Amir
-
Thank you for your reply Amir,
That brain would stop the G-code running. But i also want all jogging to stop (if not running code), and prefferably all "button presses" inhibited while input is low.
This is a machine to be used at a school so it needs to be "fool-proof".
The relay cuts power to the input side of the PSU, so the capacitance in the PSU should be enough to drive the steppers the time it takes for MACH3 to stop movement.
-
Pat as soon as the relay kills the power to the drives you have lost position. So every thing after that is a mute point.
For safety reasons you do NOT want a FULL auto reset. You want to have separate manual functions to bring the machine back online.
Be very carefull to follow "established" machine safety guidelines. Your future may depend on it.
(;-)
-
The safety relay cuts control voltage to a 3kW AC3 24V-coil contactor that controls 230V to VFD and 48VDC PSU. Since it cuts the 230V side of the 48V PSU the PSU will deliver power to the drivers for probably 10 seconds after power has been cut.
The safety relay however also cuts power to another control relay that disables the geckodrivers and gives a signal to input #1 on the Grex controller. This miniature relay should preferably be a MBB (make before break), but i think the inputs should be fast enough so that no steps are lost. The only way to find out is to test with the Mach3 brain
As said the safety relay also cuts power to the VFD. The VFD has been programmed so that it will brake the spindle with maximum level of DC injection if safety relay K1 is out, even if power is lost.
To reset the safety relay all EMSTOP-switches has to be reset. Then a non latching key switch has to be actuated the same time as the non latching start switch is actuated.
As you can see this is in no way a full auto reset :)
Of course if Mach3 is running a program the program should be stopped so that cycle start has to be pushed after the reset. This is easy to do in brains.
However i can not figure out how to program a brain so that all actions including jogging is stopped in Mach3. Any suggestions? ???
I'm attaching the schematics of the main controller board.
-
Pat I don't think your design will meet safety protocal as an emergency shut down. To meet that qualification you would need to open the incoming power supply and then SHUNT across the PSU to effectively drain down the caps to stop the machine dead in its tracks.
NOTE: If the situation is sever enought to need to ESTOP why are you worried about loosing position??(;-)
Using the brains is like using the Macropump it is an endless loop so if you program a saftey function that depends on an input to function it is possible that if the right conditions exist it could auto restart with movement.
That I know of there is NO function in mach to do what you want.
-
I use Gecko G210 drivers. These drivers have a disable terminal. When the safety relay cuts it also cuts the control power to miniature relay placed on the same board as the stepper drivers.
When this miniature relay looses power it will give all G210's disable signal (ground disable terminal).
This is in another schematic that i have at school. I could post it on Wednesday.
Really i would have preferred that the drivers had an enable signal instead of a disable signal, but the relay is placed as close to the drivers as possible, with direct wiring.
The drivers are disabled to stop all movement immediately, then they loose 48VDC power.
Stepper safety function #1: Disable all drivers to stop movement.
Stepper "safety function" #2: Cut incoming power to PSU.
Avoid lost steps function": Disable Mach3
NOTE: If the situation is sever enought to need to ESTOP why are you worried about loosing position??(;-)
During an ESTOP this is no worry. The case is that the limit switches are also wired to the safety relay. If a limit switch is triggered and not manually overridden the relay cuts out just like an ESTOP.
The reason for limit switch cut off is not for "human protection" but rather "machine protection".
To meet that qualification you would need to open the incoming power supply and then SHUNT across the PSU to effectively drain down the caps to stop the machine dead in its tracks.
It is clearly stated in G210 manual that the drives will suffer damage if power is cut on DC side of PSU ("fast" powerloss).
Using the brains is like using the Macropump it is an endless loop so if you program a saftey function that depends on an input to function it is possible that if the right conditions exist it could auto restart with movement.
As said the machine can absolutely not automatically restart. To restart the G9D relay requires a impuls action (non latching) key switch and a impuls action (non latching) start switch to be actuated at the same time by a human on the control panel. This can only be done if all ESTOP switches are out and all limit switches are overridden or not actuated.
Really this brain i request is by no means a safety function. It is simply a function to avoid loosing steps if a limit switch is reached. :)
I have attached the datasheet for the G9D safety relay.
-
Pat I think the gecko manual referes to OPENING the circuit not shunting across it.
NOT to be picking on you, just trying to help keep the lawyers away from your door. Operator safety especially at public schools is very serious.
Does your circuit KNOW the difference between a real ESTOP or just a limit trip? NO? that is one of my points.
The only thing in MACH that can help is to setup and USE SoftLimits. You will have to RefHome all axis then setup the travels for all the axis in softlimits. Stop them just short of the HardLimits trip.
That way you have a soft limits AND hardlimits to protect the machine. AND the softlimits will not loose position where the hard limits WILL loose position.
-
Just to clarify I'm not a machine builder delivering a CNC-router to a public school.
I'm a automation student in a secondary school here in Norway. A group of last years students started a CNC-router build as their main project. This year I and two others have continued on this build.
We are by no means finished and next years students will continue on the build and continue to improve it.
The machine does know the difference between limit trip and estop by visual indicator lamps on the control panel. Also a secondary pole on each limit switch and is wired to the Grex to give indication.
You are probably right about the shunting. I would have to confirm this with Geckodrive however. If everything is ok next years students could wire in a shunting relay (probably needs a small resistor in series?).
I belive i have read that the Grex do not support soft limits. I realize that the Grex is old and abandoned technology, but that is what we have to work with (tight economy).
However i will try to setup soft limits on Wednesday to see if they work. If they do problem is solved :)
By all means i appreaciate your input, and as said shunting the 48V PSU should probably be done. ;)
However i as far as i can see the machine will stop immediately on an estop (by disabling drivers) and can not be restarted until human action is taken.
-
Something to consider, last I heard GECKO was offerering to BUY BACK old g100s. You may want to consider this option and then replace it with a modern SmoothStepper that is supported.
Just a thought