On Saturday 16 August 2014 14:33:56 Philipp Burch did opine And Gene did reply: > Hi Gene! > > Replying on a tiny note you made: > > On 16.08.2014 16:55, Gene Heskett wrote: > > ... > > This causes the Mesa SpinX1 controlled fwd/reverse relays to switch, > > throwing the full power of the controller into the motor trying to > > reverse it. The controller, a $185 Gemini, survived only 3 such > > events before it punched the IRFP250N hexfet, a 200 volt 30 amp > > device. So that is an error condition that I'll use to defeat the 2 > > input and's setup in lut5's, releasing the 3rd relay, which if > > energized, shorts out a 50 ohm 400 watt resistor in series with the > > motor. And I'll do it based on the man page comment about leaving > > unused inputs open by feeding this true if dir is missmatched from > > an abs.piddir module into in-2 of both the forward and reverse path > > logic, which if the man page comment is true should cause a false > > output. > > ... > > Actually, it isn't a special feature of this component that an unused > input going true sets the output to false. This is just depending on > your function and assumes that you insert zeros in the unused fields of > your truth table. > If you take my other examples for inverter and nand2, then you will see > this behaviour only in the former: > > setp inv-1.function 0x00000001 # Single inverter > setp nand-1.function 0xfffffff7 # Two-input NAND > > For the inverter, if all inputs are zero, then you have state 0 for the > truth table, so you get out = 1 (as bit 0 in the function is 1). In any > other state, no matter if it is because in-0 is one or any other input, > you will hit one of the zeros in the function word and therefore get a > zero output. > But the NAND is different: When calculating the function parameter > value, I first thought how an AND with two inputs has to look. Well, > easy enough, the output should be one if in-0 and in-1 are one and zero > in all other cases. Thats state 3, so bit 3 must be 1 and the rest > zero. Makes 0x00000008. A NAND is simply the inverted version of the > AND, so all I did then was to invert the whole function value, giving > 0xfffffff7. But this will obviously generate a one also if any of the > other inputs is one. You only get the advertised behaviour with a > function value of 0x00000007. If the NAND2 should function without > considering any of the other inputs, the word would be 0x77777777. I > hope that bit patterns are correct, have just put them together in my > head. > > So when checking if your code is actually fail-safe, you should > consider all truth tables completely and make sure that the output > bits for your unused states really generate a safe condition if the > inputs are bogus. > > Oh, just as a side note: The source of the lut5 component (in > src/hal/components/lut5.comp) is worth a look. That's 12 lines of > comp-related code, 126 lines of description and only 10 lines for the > actual functionality :)
You obviously understand that puppy way better than I do. Nevertheless, when I managed to get it working like it should, and did the final hook up from the controller to the motor, only to find that the controller is still toasted. So, I guess I buy yet another like those 2 and bow to the east. Unforch, I have not found a 4 quadrant with enough amps, so I guess I am still stuck synthesizing it in hal, but without the spindle positioning the 4 quadrant could do. I'll call Monday and get another headed my way, and make arrangements to get these two failures repaired. It looks like I may need to keep spares handy. I think I'll also order a 5 pack of that much higher voltage hexfet & change it out before the puny one blows once the spares get back repaired. > > Cheers, > Philipp 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
