On Sunday 17 August 2014 08:07:22 Stuart Stevenson did opine
And Gene did reply:
> Isn't the label of the net analogous to the label of the wire
> connecting one circuit to another?

Thats a great way to think about it, a wire label.
 
> truly superfluous UNTIL some trouble shooting needs to be done

Also true, and priceless when writing the hal file. pncconf gets you 
started, but the version I had the last time I ran it back in early July, 
gave me a decent outline of the axis's of my lathe, but when it came to 
the spindle, did not set it at all well.

So I attempted to translate my software solution to using the 5i25, but 
destroyed a $185 Gemini controller when I induced an error condition by 
typing s100 in the mdi mode when it was turning about 1550 at the chuck.

That flipped the fwd/reverse relays at full speed because the encoder 
feedback from the over run speed caused the pid.s module to change its 
output sign.  That is not something that sane gcode would do, but which 
could be done while running a loop to tune the PID.

My then current setup was designed to synthesize a stop on a dirchange 
from motion, and did it with a complex bunch of edge detectors and flip-
flops to turn the controller off and disconnect the motor while enabling a 
staged dynamic braking load on the motor using relays to connect various 
loading R's that were safe for the pm fields until it was down to about 
200 rpms at the spindle at which point the motor was crowbar'd.  That 
worked but was slow, taking a hair over 3 turns at the chuck to stop it 
from a 300 rpm run.  6 turns without the brakes.

So I have re-written my hal file now to one that uses lut5's and abs 
modules looking at 

motion.spindle-speed-rps
pid.s.output
encoder.velocity

and using those 3 signals to determine if a 50 ohm 400 watt resistor in 
series with the motor can be shorted, allowing full controller output to 
get to the motor.

Obviously having

abs.motdir.is-positive=true
abs.spindl.is-positive=true
abs.piddir.is-negative=false
says I can crowbar the resistor
but an abs.piddir.is-negative=true is a controller destroying error, and 
the relay is to be opened as fast as possible.

so in both direction paths, the appropriate true from the abs.piddir 
module is fed to the lut5's so that this error condition is dealt with in 
both fwd and reverse directions as the lut5's have function settings of

setp lut5-fwd.function 0x8 # make and, true when fwd, and spindle turns 
fwd
setp lut5-rvs.function 0x8 # make and, true when rvs, and spindle turns 
backwards
setp lut5-protect.function 0x6 # not sure about this, s/b xor for either 
input true

It was at this point I tried hooking the controller to the relays to see 
if the motor ran, and found that replacing the hexfet with an identical 
hexfet from another identical controller did not fix it.  And in tracing 
the pcb traces, I find a 556 timer being used for the hexfet gate driver, 
so I am even less impressed.

And the more I think about it, the more inclined I am to see if I can find 
another controller a bit better engineered.

This one, designed for 90 volt treadmill motors, is pwm and silent, rated 
12 amps CCS.  This motor carries a 9.7 amp nameplate, 1 HP label.  I have 
had scr based controllers on it and the hum from the motor seems to  
pervade my whole universe when its working at more than 1/2 amp.

So I am open to suggestions for a better controller. 4 quadrant would be 
nice but that adds at least 1 big buck to the price, and cuts the 
available current nearly in half in the offerings I have found.

I can live with this one if it can be enhanced with a decent gate driver 
and a SiHW73N60E output hexfet, which has a slightly lower Rds(on), with a 
650 volt Vds and a 78 amp Id.  That should live thru this sort of abuse 
where the IRFP250N won't survive.  But questions along that line in an 
email to Gemini have not been replied to.

Jon's (pico systems) big servo amp I assume needs a variable duty cycle 
square wave drive, and I may be blind, but I don't see a matching circuit 
to drive it.  Looking at the pinouts I may be mistaken as it does have a 
direction input, which I'd assume means it can take a normal pwm input at 
a 1 to 95% or so duty cycle.  That means I probably could drive it with a 
5i25. If I can crank up its frequency. I'll put my scope on that and 
measure it yet today.

Looking at your web page Jon, can this be driven directly from a 5i25?  It 
looks like it could, but I have not found the correct syntax to set its 
pwm frequency into a range usable by your $125 product. Any attempt to is 
an error (pin doesn't exist) from my hall file at init time.  It reports 
that its running the encoder sample frequency at 7,880hz by default.  The 
only 2 pins of the pwmgen exposed to the hal-show are value and enable so 
its a no clue until measured situation.  It measures at 20 kilohertz on my 
scope, thats close, but is it close enough Jon?  Also, what do I need to 
do to make it work with 4.75 volt p-p signals on all lines.  High powered 
cmos output levels IOW.

And, while I could make a suitable psu, do you have a recommendation as 
I'd do that with an isolation transformer.  Full wave bridges leave both 
sides hot, not what I'd call safe.  I'd do a FW bridge, with a choke input 
filter, shooting for about 100 volts by putting in a 24 volt buck 
transformer.

I'm going over to my "private" electronics junk yard this afternoon, 
intending to get enough flat alu sheet to make a psu boxes for both the 
mill and the lathe, and might as well get whatever he has in transformers 
too.  He has tons of them, stripped from old broadcast gear.  Potentially 
some e-core chokes too.

Lots of questions, that hopefully will generate suitable answers.

If I can find some high current chokes for psu usages, then I'll have a 
honking big toroid choke I just bought to use as additional output 
filtration on your amp/driver.  That ought to go quite a ways toward 
mitigating the 20 khz drive.

Thanks all.


> On Sat, Aug 16, 2014 at 9:54 PM, Peter C. Wallace <p...@mesanet.com> 
wrote:
> > On Sat, 16 Aug 2014, Drew Rogge wrote:
> > > Date: Sat, 16 Aug 2014 19:32:51 -0700
> > > From: Drew Rogge <d...@dasrogges.com>
> > > Reply-To: "Enhanced Machine Controller (EMC)"
> > > 
> > >     <emc-users@lists.sourceforge.net>
> > > 
> > > To: "Enhanced Machine Controller (EMC)"
> > > <emc-users@lists.sourceforge.net
> > > 
> > > Subject: Re: [Emc-users] connecting logic components inputs without
> > 
> > creating
> > 
> > >     signals
> > > 
> > > It's just a matter of coming up with a name for each signal.
> > 
> > There was a discussion of this matter on IRC devel list a few months
> > ago but
> > I dont think there was support for "anonymous" signals added
> > 
> > http://psha.org.ru/irc/%23emc-devel/2014-05-11.html
> > 
> > (scroll towards the bottom)
> > 
> > > On 8/16/14, 5:17 PM, Andy Pugh wrote:
> > >>> On 17 Aug 2014, at 00:32, Drew Rogge <d...@dasrogges.com> wrote:
> > >>> 
> > >>> Is there a way to associate logic component inputs with pins
> > >>> without
> > 
> > using net and creating signals?
> > 
> > >> No. But the signals have zero cost, so I don't understand why you
> > >> care?
> > 

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
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users

Reply via email to