On 03/05/2018 08:56 AM, andy pugh wrote:
On 5 March 2018 at 13:07, Mark <wendt.m...@gmail.com> wrote:
I'm leaning towards lincurve. In order to utilize that, I've got to upgrade
linuxcnc to a bit new version.
That's not strictly necessary, the file is a standalone module, you
could just download the comp file and
sudo comp --install lincurve.comp
https://github.com/LinuxCNC/linuxcnc/blob/master/src/hal/components/lincurve.comp
Right-Click the "Raw" button and "Download file as..."
Probably better to upgrade to the current version anyway. v2.5.5 is
getting pretty long in the tooth, and the improvements added to the
newer version might well be welcome.
But: To use the external offsets you need to run the experimental
external-offsets branch, and it isn't a standard LinuxCNC version.
You might be able to get it from the buildbot. But you would need
someone else who knows their way around the buildbot to find the .deb
if it exists (I just build from source)
When I built the machine and configured linuxcnc we sorta had to jump
through hoops to get the configuration set up the way it was needed for
the operations it did. Changing to something like that might mean a
whole re-write of the hal code that I got a lot of help on from some
very kind folks on the IRC.
You can use the "offset" HAL component though, so all is not lost. You
can even use both with your 2.5.5 install
http://linuxcnc.org/docs/2.7/html/man/man9/offset.9.html
I'll look into that one too. Thanks for the info.
I couldn't find any examples of lincurve in use and the man page is a bit
thin on how to actually implement it. Also, the man page mentions x,y
coordinates.
Those refer to the axes of the imaginary graph paper that lincurve is
drawn on. You can use any input at all, and do anything at all with
the output. This is HAL.
You set the curve up (rather clunkily) in HAL. If X = 0 is nominal and
X = 3" is 5 thou high:
setp lincurve.0.x-val-00 0
setp lincurve.0.y-val-00 0
setp lincurve.0.x-val-01 3
setp lincurve.0.y-val-01 -0.005
and so-on.
Okay, so how do I translate the 'y-val' to the Z axis position? I may
have mentioned I'm a tad weak on hal coding since I haven't done it in
ages. Looking at those lines above, I'm guessing that the Z axis would
"curve" between station 0 to station 1 to accommodate the -0.005 difference?
If that is true, how would I map say something like this: stations 0 -
5 are the median height. Stations 6 through 15 are .003" high. Stations
16 through 25 are .002" low and so on. The values of deviance from the
mean table height are rather nicely grouped with maybe one or two .001"
deviations in the mix, but I'm not going to worry about that.
You might want to keep the curve definition in a separate HAL file for
convenience.
You lost me on this one. What is the curve definition? Speaking of
HAL, is the placement order in the main HAL file for something like this
going to bite me if it's put in too early or late in the declarations?
I remember Gene having issues with some of his HAL code by coding
something in too early or too late in the file.
Thanks again for your help Andy.
Mark
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users