Re: Analog Spindle
Hi Dave, Kurtis, Jon
I did a search of the emc/src and directories below it and found more
than 50 files that contain the word spindle. I'm clueless when it comes
to reading C and C++ but it would appear that the spindle speed notion
travels quite a ways through the code. For example in
bridgeporttaskintf.cc about line 1934
"int emcSpindleOn(double speed)
{
EMC_SPINDLE_ON spindleOnMsg;
spindleOnMsg.speed = speed;
sendCommand(&spindleOnMsg);
return 0;
}"
There is an interesting comment in emccanon.cc
"1-Apr-1998 FMP added spindleOn flag for resending CW, CCW if speed
change"
And in emcio.hh about line 51 we see the comment
" Spindle commands are given as on (with a signed speed) or off; they
are converted to brake-on,off, spindle forward,reverse for the lower
level spindle controller."
In emcops.cc about line 184 speed is also present in status messages.
"EMC_SPINDLE_STAT::EMC_SPINDLE_STAT() :
EMC_SPINDLE_STAT_MSG(EMC_SPINDLE_STAT_TYPE, sizeof(EMC_SPINDLE_STAT))
{
speed = 0.0;
direction = 0;
brake = 1;
increasing = 0;
enabled = 0;
}"
It is also clear from bridgeportspin.cc that someone had planned for
spindle feedback because about line 214
" // sync status vars with sensors
spindleStatus.speed = 0.0; // no speed sensor"
So some planning for it is in there. Kurtis and Jon have the right
thoughts that any real CNC spindle needs to be handled by a real servo
interface with encoder counters like the Pico, STG, Vigilant, Studio
Ferraris or other similar boards.
I was not able to find any kind of comparator between spindle speed as
commanded and actual speed from a speed sensor. Nor was I able to find
any position comparison. But I need to restate my innocence of these
languages.
Just a thought here, emccfg.h, inispin.cc, and inispin.hh all look at
the [EMCIO] section of the ini file to setup spindle stuff. This is okay
for the parport forward, reverse, increase, decrease, brake on kinds of
things but for servoed spindles, I'd think that we would want to use a
section more like an axis definition with gain, max speed, and D/A
control.
Ray
BTW -- inispin.cc would be a good place to start streamlining the code if
Microsoft CE is no longer supported.
On Tuesday 03 September 2002 11:02 pm, you wrote:
> Sorry to be the cynic but:
> So where is the code...I only find basically a stub in
> cannon_stand-alone.cc But nothing really implemented. I hope it is
> there someplace.
>
> Dave
>
> On 9/3/02 7:26 PM, "Jon Elson" <elson-at-pico-systems.com> wrote:
> > Kurtis Martineau wrote:
> >> Dave, and anyone interested in the emc interpeter,
> >>
> >> Please take a look a the following manual:
> >>
> >> http://www.isd.cme.nist.gov/personnel/kramer/publications.html#RS274
> >>NGC3
> >>
> >> Unless I am mistaken, it would appear that the emc interpeter is
> >> more complete than we using it.
> >> The S**** command for speed is ready to be used (I think) - just how
> >> can I direct it?
> >
> > Yes, absolutely, the interpreter handles the S word, and sends an NML
> > message through to some level inside EMC. And, some code has been
> > written to pass that along to the STG-I card. I don't know if it
> > works now. I suspect it DID
> >
> > work at some time. I will take a look at it in the BDI version I am
> > working with
> > right now, and see if I can get it to work with my new parallel port
> > hardware.
<s>
Date Index |
Thread Index |
Back to archive index |
Back to Mailing List Page
Problems or questions? Contact