On Thursday 14 August 2014 22:42:13 Peter C. Wallace did opine And Gene did reply: > On Thu, 14 Aug 2014, Gene Heskett wrote: > > Date: Thu, 14 Aug 2014 20:06:20 -0400 > > From: Gene Heskett <[email protected]> > > Reply-To: "Enhanced Machine Controller (EMC)" > > > > <[email protected]> > > > > To: "Enhanced Machine Controller (EMC)" > > <[email protected]> Subject: [Emc-users] Questio on > > nor's & nand's > > > > Greetings; > > > > I know I can make a nand by following an and2 with a not, or a nor > > using the same not on the or2 output. > > > > But we at times, really do need a nand and a nor. > > > > In fact, I was wishing I had a 4 input and at one point today. > > > > Has anyone ever considered adding those modules to our trick basket? > > > > Thanks. > > > > Cheers, Gene Heskett
> The LUT5 component can do all the mentioned logic functions. > > 4 input and is 0x00008000 > 2 input nand is 0x00000007 > 2 input nor is 0x00000001 > What I am trying to do, is re-write the logic from a complicated 3 edge modules, using their outputs s clocks to operate a pair of flipflops that had the net effect of, when the motion direction reversed, blocking the requested speed from the input to a limit2 that controls the acceleration, and enabled the dynamic braking until such time as the spindle was essentially stopped, which then clocked the new direction and speed back into the driver, but accel ramped to the requested speed. This worked well, if slow for a peck cycle built out of a g33.1 wrapper. But while playing with that lashup, I found that if from mdi input, I had the spindle running at 1k rpms or above, and while it was running, I typed an s100ENTER into the mdi, the overrun from the spindle feedback caused the pid to change the sign of its output. While the motor was still running the spindle at 1000 rpms or more. That caused the direction relays to reverse, and proved several times that the controller almost had enough guts to reverse the motor in a few milliseconds, bringing it to a complete stop and rotating it the other direction about 1/4 turn before it recovered, stopped and the wound it back up to the newly selected rpms. This is not something that you or I would ever do in our gcode output, but which could happen in machine generated code. So I junked that code, and moved the now blown hexfet in the controller to a spot on the desk here for future attempts to find a much higher rated hexfet, putting the one from another controller whose input circuitry was blown by wrapping it with a shorting bar and moving that good one to an otherwise working controller. Now the theory I am trying to conjure up will operate what was the run/brake relay with a 4th signal from the BOB so that it will be energized, short circuiting a 50 ohm 200 watt resistor in series with the motor and allowing full power to be delivered. And, if conditions cause the resistor to be switched in, the whole speed command path is reset to send about a 0.5 to the PID.s.command, or a -0.5 if motion.spindle-reverse is true. That should ease the controllers stress, and as soon as the encoder.velocity output sign matches the motion.spindle-direction this relay will be energized, the clamps on the value sent to pid.s.command are removed, and the speed then ramped up to the selected speed by the limit2. The limit2's input is switched around by a pair of mux2's. Then, if on a slowdown such as having it turning 1500, and giving it a new speed of 100 causes a PID output sign change, the relay will be de- energized, inserting the protective resistor which should protect the controller until such time as the PID.s.output sign again matches the requested direction from motion, at which time the relay is re-energized and control reverts to normal full power. This is in effect, two different functions controlling the same relay. In the overrun recovery, I want it to brake, yes, but brake power limited by that big resistor until such time as the direction sign out of the PID.s again matches the requested direction. At that time it should be safe on the controller to re-energize the relay allowing full power to reach the motor again. Getting close to a 4 quadrant control with a one quadrant controller. But I believe that doing this on a long term basis will need a hexfet rated at more than 200 volts and 35 amps. I can get 78 amp, 650 volt rated devices in the same plastic to247 package, but haven't been able to check the gate capacitance to see if the gate drivers used in this Gemini controller are capable of driving that increased capacitance while maintaining the needed transition times. The existing hexfet used in this controller is an IRFP250N. And my 8' shelf of semi books is, after 12 years of retirement, sadly way out of date. What I need is to download IRC/Vishay/Siliconix's complete power hexfet catalog, but I've not been able to get a google hit on the whole thing. If someones google foo is better than mine, URL plz. :) Best I can come up with from here is a Vishay/Siliconix SiHW73N60E Are there even better ones? I don't know. > Peter Wallace > Mesa Electronics > > > ----------------------------------------------------------------------- > ------- _______________________________________________ > 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
