Re: [Emc-users] Absolute Encoder Feature Request

2010-03-09 Thread Kirk Wallace
On Tue, 2010-03-09 at 16:02 +, Leslie Newell wrote:
> I have to say that pretty much every machine I have ever worked on (I do 
> quite a bit of repair work) that had an override used a pot, giving an 
> absolute position. I don't think I have seen one with an incremental 
> control for the overrides.
> 
> Les

EMC2 does it the same way. It's just a virtual pot in AXIS, which gets
set to 100% when AXIS starts. On other machines, you get the same sorts
of problems when one wants more than one master control. They really
need to be slaves.
-- 
Kirk Wallace
http://www.wallacecompany.com/machine_shop/
http://www.wallacecompany.com/E45/index.html
California, USA


--
Download Intel® Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] Absolute Encoder Feature Request

2010-03-09 Thread Leslie Newell
I have to say that pretty much every machine I have ever worked on (I do 
quite a bit of repair work) that had an override used a pot, giving an 
absolute position. I don't think I have seen one with an incremental 
control for the overrides.

Les

John Kasunich wrote:
> The NIST/EMC way of doing things doesn't just apply to pendant controls
> vs GUI controls.  It is a general principle for any time there can be
> more
> than one source of control.  For example, a large machine, especially
> something like a horizontal boring machine, might have two (or more)
> sets of jogwheels and buttons, one on each side of the table, for the
> convenience of the operator.
>   


--
Download Intel® Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] Absolute Encoder Feature Request

2010-03-09 Thread John Kasunich

> 
> I know this goes against the EMC way of doing things but who is going to 
> want to use a GUI based override when you have a nice convenient knob on 
> the front panel? 

The NIST/EMC way of doing things doesn't just apply to pendant controls
vs GUI controls.  It is a general principle for any time there can be
more
than one source of control.  For example, a large machine, especially
something like a horizontal boring machine, might have two (or more)
sets of jogwheels and buttons, one on each side of the table, for the
convenience of the operator.

If each "operator console" has a feed override knob that is labeled
from 0% to 100%, what happens when console 1 is set to 60% and console
2 is set to 20%?  The NIST approach is that both consoles should have
unlabeled knobs that can spin continuously.  If you turn either knob
clockwise, the override value increases until it hits 100% (or whatever
the upper limit is).  After that you can keep turning, but nothing
happens.  If you turn either knob down, the override goes down, until
it hits 0%, then nothing happens.

I realize that most machines won't have two control panels, but the
general principle is built into the core of EMC2, and I strongly
recommend trying to do things that way instead of hacking around it.

In this specific case, you have an absolute encoder that generates a
number between 0 and 1023.  That doesn't mean you need to put a pointer
on the knob and draw numbers around it on the control panel - it can
still be used as an incremental control.

All that is needed is a fairly simple HAL component that accepts the
absolute position and converts it to incremental.  If the input changes
from 100 to 200, the output will increase by 100.  An input change from
750 to 700 will make the output will decrease by 50.  The only slightly
tricky part is when the input wraps.  If the input goes from 24 to 1000,
there are two possibilities:  either it was turned clockwise 976 counts,
increasing the count, or counterclockwise by 48 counts, wrapping back
to 1023 after passing through zero.  Since the counterclockwise case is
more likely (you can't turn the knob almost a full revolution in a
millisecond), the output would decrease by 48 counts.

The HAL component to do this would only require two pins, in and out,
and one parameter, the number of counts in one revolution of the input.
Its output would always start at zero, and would increase and decrease
as you turn the knob.  That output could then be used by EMC as if the
knob was a regular incremental encoder.

It will be at least a few days before I get a chance, but if nobody
beats me to it, I'll write that component.

Regards,

John Kasunich

-- 
  John Kasunich
  jmkasun...@fastmail.fm


--
Download Intel® Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] Absolute Encoder Feature Request

2010-03-09 Thread Kirk Wallace
On Tue, 2010-03-09 at 09:35 -0500, John Kasunich wrote:
> > 
> > I know this goes against the EMC way of doing things but who is going to 
> > want to use a GUI based override when you have a nice convenient knob on 
> > the front panel? 
> 
> The NIST/EMC way of doing things doesn't just apply to pendant controls
> vs GUI controls.  It is a general principle for any time there can be
> more than one source of control.
... snip
> It will be at least a few days before I get a chance, but if nobody
> beats me to it, I'll write that component.
> 
> Regards,
> 
> John Kasunich

In my case, I only used an absolute encoder because I had an absolute
encoder solution looking for a problem. Since incremental encoders are
generally less expensive and easier to implement, it seems logical to
use an incremental for the overrides.

What would be nice though, is to have access to the master inputs, so
that one could choose where the master encoder is placed, AXIS or
physical master console. The slaves could be other consoles, AXIS or
pyVCP.

I wonder if the halui components should have the s32 inputs, the clock
up/down inputs are more appropriate. A separate absolute to incremental
encoder component would make it clear how a halui slave is supposed to
work. my2c
-- 
Kirk Wallace
http://www.wallacecompany.com/machine_shop/
http://www.wallacecompany.com/E45/index.html
California, USA


--
Download Intel® Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] Absolute Encoder Feature Request

2010-03-09 Thread Leslie Newell
The way I got around this problem is to use the hal_input component with 
a USB game port adapter such as this one 
.
 
These ones 

 
don't work very well.

These adapters work with the absolute position of a potentiometer so 
there are no problems with losing position after a shutdown. It is also 
much cheaper than using encoders. If you want you can use a hacked 
joystick but the adapter is more tidy. I did find that they are a bit 
sensitive to EMI so it is best to keep them well away from power wiring.

I know this goes against the EMC way of doing things but who is going to 
want to use a GUI based override when you have a nice convenient knob on 
the front panel? I use this for feed override, spindle override and 
rapid override.

Les


Kirk Wallace wrote:
> Thanks to some help from the IRC (tom3p), I got the encoder working with
> AXIS's spindle override. One problem I am still having is that when AXIS
> starts, the spindle override always starts at 100% even though the knob
> is usually at a different setting. When I move the knob, the override
> moves proportionally with the knob until I hit the 0 to 1024 encoder
> boundary. After this the knob and the slider agree. Is there a way to
> have AXIS start with the knob setting?
>   


--
Download Intel® Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] Absolute Encoder Feature Request

2010-03-08 Thread Stephen Wille Padnos
Kirk Wallace wrote:
> [snip]
> What about,
> "halui.spindle-override.counts (s32, in) - counts from an encoder for
> example to change SO"
> http://www.linuxcnc.org/docview/html//gui_halui.html#r1_2_15
>
I believe that's only used by looking at the difference between the old 
count value and the new to get a delta value.  That delta is then used 
to change the setpoint.
> (I suspect it was designed for an encoder that doesn't wrap)
>
Yes, it's meant for a standard quadrature encoder.
> Since I have an override knob I would not need the slider in AXIS, or I
> could have a switch to enable one or the other, with an indicator for
> which one is active.
>
If it were possible, a switch would have the bad side effect of suddenly 
snapping the setting from one value to another as the control point is 
changed.  This is a specific case that the NIST folks should be avoided 
also :)  It's not possible though, there's no way to prevent any user 
interface from sending commands to the EMC task controller.
> How would one remove the override setting feature from AXIS?
>
You could remove the code that creates the slider, and any code that 
assigns keyboard shortcuts to move the slider (I don't know that there 
are keyboard shortcuts for this)
> Maybe an incremental encoder would be better?
>
Yes.  Connect it to halui.spindle-override.counts.  If you have an 
absolute encoder that also outputs gray code, just connect the two 
lowest bits to the incremental encoder inputs.

- Steve


--
Download Intel® Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] Absolute Encoder Feature Request

2010-03-08 Thread Kirk Wallace
On Mon, 2010-03-08 at 22:15 -0500, Stephen Wille Padnos wrote:
> Kirk Wallace wrote:
> > Thanks to some help from the IRC (tom3p), I got the encoder working with
> > AXIS's spindle override. One problem I am still having is that when AXIS
> > starts, the spindle override always starts at 100% even though the knob
> > is usually at a different setting. When I move the knob, the override
> > moves proportionally with the knob until I hit the 0 to 1024 encoder
> > boundary. After this the knob and the slider agree. Is there a way to
> > have AXIS start with the knob setting?
> >
> Two things:
> 1) This method of control is against the "NIST principle" regarding 
> multiple locus of control.  What that means is that since there are 
> multiple places from which you can control the feed override (on the 
> AXIS screen and the halui knob at minimum), neither place can be an 
> absolute setpoint.  Consider this - how will you cause the knob to move 
> if the keys or slider in AXIS are manipulated?  If the two (or more) 
> user interfaces have different absolute setpoints, how should EMC choose 
> which one to honor?  How does the operator know which one is active?
> 
> 2) At the moment, I don't think there's any way of pre-setting the 
> value.  The spindle override value is not an input to halui (since that 
> would violate the NIST principle).
> 
> - Steve

What about,
"halui.spindle-override.counts (s32, in) - counts from an encoder for
example to change SO"
http://www.linuxcnc.org/docview/html//gui_halui.html#r1_2_15 

(I suspect it was designed for an encoder that doesn't wrap)

Since I have an override knob I would not need the slider in AXIS, or I
could have a switch to enable one or the other, with an indicator for
which one is active.

How would one remove the override setting feature from AXIS?

Maybe an incremental encoder would be better?
"halui.spindle-override.decrease (bit, in)- pin for decreasing the SO
(-=scale)
halui.spindle-override.increase (bit, in) - pin for increasing the SO
(+=scale)"

-- 
Kirk Wallace
http://www.wallacecompany.com/machine_shop/
http://www.wallacecompany.com/E45/index.html
California, USA


--
Download Intel® Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] Absolute Encoder Feature Request

2010-03-08 Thread Stephen Wille Padnos
Kirk Wallace wrote:
> Thanks to some help from the IRC (tom3p), I got the encoder working with
> AXIS's spindle override. One problem I am still having is that when AXIS
> starts, the spindle override always starts at 100% even though the knob
> is usually at a different setting. When I move the knob, the override
> moves proportionally with the knob until I hit the 0 to 1024 encoder
> boundary. After this the knob and the slider agree. Is there a way to
> have AXIS start with the knob setting?
>
Two things:
1) This method of control is against the "NIST principle" regarding 
multiple locus of control.  What that means is that since there are 
multiple places from which you can control the feed override (on the 
AXIS screen and the halui knob at minimum), neither place can be an 
absolute setpoint.  Consider this - how will you cause the knob to move 
if the keys or slider in AXIS are manipulated?  If the two (or more) 
user interfaces have different absolute setpoints, how should EMC choose 
which one to honor?  How does the operator know which one is active?

2) At the moment, I don't think there's any way of pre-setting the 
value.  The spindle override value is not an input to halui (since that 
would violate the NIST principle).

- Steve


--
Download Intel® Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] Absolute Encoder Feature Request

2010-03-08 Thread Kirk Wallace
On Mon, 2010-03-08 at 18:48 -0800, Kirk Wallace wrote:
> Thanks to some help from the IRC (tom3p), I got the encoder working with
> AXIS's spindle override. One problem I am still having is that when AXIS
> starts, the spindle override always starts at 100% even though the knob
> is usually at a different setting. When I move the knob, the override
> moves proportionally with the knob until I hit the 0 to 1024 encoder
> boundary. After this the knob and the slider agree. Is there a way to
> have AXIS start with the knob setting?

I forgot to link my config files:
http://wallacecompany.com/machine_shop/EMC2/AEAT-6010/abs_enc/

-- 
Kirk Wallace
http://www.wallacecompany.com/machine_shop/
http://www.wallacecompany.com/E45/index.html
California, USA


--
Download Intel® Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


[Emc-users] Absolute Encoder Feature Request

2010-03-08 Thread Kirk Wallace
Thanks to some help from the IRC (tom3p), I got the encoder working with
AXIS's spindle override. One problem I am still having is that when AXIS
starts, the spindle override always starts at 100% even though the knob
is usually at a different setting. When I move the knob, the override
moves proportionally with the knob until I hit the 0 to 1024 encoder
boundary. After this the knob and the slider agree. Is there a way to
have AXIS start with the knob setting?
-- 
Kirk Wallace
http://www.wallacecompany.com/machine_shop/
http://www.wallacecompany.com/E45/index.html
California, USA


--
Download Intel® Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users