On Friday 07 November 2014 18:58:19 Joe Hildreth did opine And Gene did reply: > Bruce, > > Thanks for the information. You gave me quite a bit to chew on. > Having a computer and electronic background I tend to think of logic > being implemented via discreetly or through a micro-controller. I > never really thought about relay logic. I have never tried to > implement a logic circuit with relays, so would have to look at some > samples. Off the top of my head it would seem that driving coils in > series would be an AND and the same coils in parallel would be an OR. > But beyond that no clue really. > > You said I shouldn't use IC to implement logic, but aside from the Y > and !Y (NO and NC contacts) output logic why do you recommend against > it? > > Currently, I have 5Vdc, 36Vdc and 110Vac that I am dealing with. > Seeing that the 5Vdc power supply supplies my BOB, and other future > devices, TTL logic just seemed natural. > > I agree with you about the software E-Stop versus the Hard E-Stops. I > will insist to my Boys and wife that if SHTF, ALWAY hit the big red > buttons! > > Thanks again for all the support, advice, direction and resources. I > appreciate it. I see I have a little reading on the subject to catch > up on. > > Regards, > > Joe
Joe; One thing I would think needs stressed, is when doing the relay logic stuff, it should all be dependent on an energized relay, so that if a power bump comes along, even a 50 millisecond one, all relays should de- energize and stay that way so there is protection when the power comes back up. Having the machine, with a slowing or stopped spindle, suddenly get jerked 1/4" sideways, probably snapping off a $20+ dollar solid carbide mill, or chewing on your hand if you reach for it, isn't something you want to happen. Using power to hold the relays closed when its in normal operation is a relatively small cost for that sort of safety. Some would call it sensible too. ;-) > ----- On Nov 7, 2014, at 4:34 PM, Bruce Layne [email protected] wrote: > > You shouldn't use integrated circuits to implement the AND logic. > > Instead, use relay logic. > > > > The output from the BOB that represents the internal E-stop state in > > LinuxCNC is wired to a relay. If the BOB can't source enough current > > to drive the relay, you might need to use a small relay to operate a > > larger relay, but you don't need a high current relay for the relay > > logic. You only need a small "ice cube" relay and the BOB output > > should be able to drive it directly. If you select a relay with > > normally open and normally closed (NO and NC) contacts, you can > > select the correct set of contacts as you wire it to negate any > > signals that may be an opposite logic state than you assumed. That's > > a handy feature for flexibility and can come in handy for future > > add-ons. It's easy to make one wrong assumption about signal > > polarity and have the opposite of what you need at the final relay > > in the circuit, and having NO and NC contacts on your relay is never > > having to say DOH! > > > > The logic relay that represents the LinuxCNC internal E-stop state is > > wired in series with any E-stop switches you installed. That way, if > > you push any E-stop switch, or click the E-stop button in LinuxCNC, > > the machine goes into an E-stop state and all motion stops. The > > signal that passes through the E-stop switches and your small relay > > contacts then operates a larger power relay that supplies power to > > all motion control (spindle, steppers, etc.). This power relay can > > have multiple sets of contacts, so each motion producing device can > > be controlled separately if they use different voltages. A set of > > contacts can be used to control your Hitachi router. Another can > > control the stepper motor powers supply or power supplies. > > > > You can also include a set of contacts to control a digital signal > > that feeds back as an input to the BOB so LinuxCNC can determine > > that you pressed an E-stop switch, although for my simple machines > > like routers, I generally don't bother because that takes a bit of > > messing around in HAL, and I like being able to install a new copy > > of LinuxCNC, select a generic stepper gantry router configuration, > > tweak the machine limits and steps per inch, and Bob's your uncle. I > > don't plan on pushing the E-stop switch, and if I do, I don't mind > > if the program keeps running as long as the motion stops. I'm going > > to reset everything, anyway. > > > > Similarly, for a simple machine, you might skip the relay that > > externalizes the internal LinuxCNC E-stop state. You'll probably > > press a physical E-stop switch on the machine, but clicking the > > E-stop button in LinuxCNC would still stop the motion even if it > > didn't generate a real E-stop. The difference is, the motors would > > still be powered and would be holding position, potentially keeping > > the operator pinned. If you trained everyone to ignore the E-stop > > button in LinuxCNC and push the E-stop mushroom head switch on the > > machine, it wouldn't be too much of a safety problem IMO. If it's > > an emergency, the operator shouldn't be mouse clicking or trying to > > press hot keys on the keyboard, and I don't think they should be > > trusting any PC software, even if LinuxCNC is very robust. I don't > > believe in software E-stops. > > > > If I was wiring it, I'd probably use a solid state relay ($6 each or > > less on eBay) for each motion device I needed to control and use the > > E-stop signal to control them all. I know they'd work for the 120VAC > > power for your Hitachi router and the DC power supplies that dive the > > stepper motors. If I had any three phase devices, I'd use a three > > pole relay (actually, a motor starter) to ensure that all three > > phases were switch on and off at the same time. > > > > If you do an online search for E-stop circuit, I'm sure you can find > > a lot of circuit diagrams that are wired as I'm describing. There > > will be minor differences depending on the specifics of the machine > > hardware, but the basic concept is the same. Use those as examples > > and draw something similar for your machine. > > > > Good luck! > > > > > > Bruce > > > > On 11/07/2014 04:30 PM, Joe Hildreth wrote: > >> Bruce, > >> > >> Thanks for taking the time to explain it to me. > >> > >> So I can take this approach then: > >> > >> 1) Use the internal E-Stop as an output on the BOB (Use this as in > >> input to my AND gate) > >> 2) Use the external E-stop which is normally closed as the second > >> input to my AND gate) > >> 3) Use the output of the Charge pump signal from the BOB as the > >> third input to the AND gate. > >> > >> 4) The output of the AND gate to drive the TTL inputs of my AC > >> Relays to enable/disable power to the motors. > >> > >> This way, I still have both E-Stops (Or additional ones by cascading > >> E-stops) and the charge pump signal to rely on? > >> > >> I could make a PC board for an AND gate with Vcc and ground in with > >> a decoupling cap and just bring the inputs and out puts to screw > >> terminals. This way, it would be nice and modular, cheap and fit > >> in any corner of my electronics drawer that slides in the computer > >> rack. > >> > >> My spindle is a Hitachi router, so not sure if it is even possible > >> to brake. It will get wired to a SuperPID so that I can control > >> on/off and motor speed via software. I need to look at the > >> documentation and see what I have available in terms of E-Stop > >> control. It may be that I have to treat it like the stepper driver > >> power supplies. I am just not there yet. I still consider myself > >> a newbie so am trying to take it in digestible BYTES. > >> > >> As far as the external charge pump. I am thinking that LinuxCNC > >> will only generate the carrier frequency (charge pump signal) when > >> it has control. This way if the computer hangs or crashed I would > >> at least have an additional level of safety. Or am I just over > >> thinking it? > >> > >> One more question. If I wired it like my last email, then LinuxCNC > >> would not have any clue that I hit the external E-Stop. Would it > >> be benifitial to bring the signal back in anyway, just to let the > >> software know we killed it externally? Otherwise, I imagine that > >> the software will continue to send motion information and continue > >> to plot like nothing ever happened. > >> > >> > >> Thanks again for your help. > >> > >> Joe > >> > >> ----- On Nov 7, 2014, at 2:35 PM, Bruce Layne > >> [email protected] > >> > >> wrote: > >>> Hi Joe, > >>> > >>> The industry preferred method of implementing an E-stop would be > >>> the opposite of what you propose. Rather than using the > >>> mechanical E-Stop switch as an input and logically ANDing the > >>> external E-stop switch and the internal E-stop machine state, you > >>> should use the internal E-stop machine state as an output and use > >>> electronic hardware (relay logic) to AND the E-stop switch and the > >>> E-stop machine state to enable the spindle motion and the X/Y/Z > >>> motion. To be clear, you're actually ANDing the non-E-stop > >>> conditions, or NANDing two E-stop signals. However you want to > >>> say it, motion should only be possible when the PC based > >>> controller says it's OK to run, and when the E-stop switch says > >>> it's OK to run. > >>> > >>> The issue is the reliability of computer hardware and software. > >>> These have greatly improved, but are still not up to the > >>> reliability standards of relays. > >>> > >>> I like solid state relays, although E-Stop relays are usually > >>> clackity relays with mechanical contacts. > >>> > >>> Consider using multiple E-stop switches if someone could be pinned > >>> by part of the machine. Try think of all of the things that could > >>> go wrong and make sure someone could quickly reach an E-stop. > >>> > >>> When wiring your E-stop circuit, make sure the E-stop switch > >>> contacts are closed when you want the machine to run, and open > >>> when the E-stop switch is activated. That way, if there is any > >>> loose connection in your E-stop circuit, the wiring fault causes > >>> the machine to fail in the E-stopped condition. > >>> > >>> The simplest E-stop wiring would cut power to the spindle motor and > >>> all of your stepper motor power supplies, even though the spindle > >>> could probably be actively stopped faster if left under power and > >>> commanded to stop rather than coasting to a stop. > >>> > >>> Bruce > >> > >> -------------------------------------------------------------------- > >> ---------- _______________________________________________ > >> Emc-users mailing list > >> [email protected] > >> https://lists.sourceforge.net/lists/listinfo/emc-users > > > > --------------------------------------------------------------------- > > --------- _______________________________________________ > > Emc-users mailing list > > [email protected] > > https://lists.sourceforge.net/lists/listinfo/emc-users > > ----------------------------------------------------------------------- > ------- _______________________________________________ > Emc-users mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/emc-users Cheers, Gene Heskett -- "There are four boxes to be used in defense of liberty: soap, ballot, jury, and ammo. Please use in that order." -Ed Howdershelt (Author) Genes Web page <http://geneslinuxbox.net:6309/gene> US V Castleman, SCOTUS, Mar 2014 is grounds for Impeaching SCOTUS ------------------------------------------------------------------------------ _______________________________________________ Emc-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/emc-users
