On 03/12/2018 09:27 AM, andy pugh wrote:
I think you would need to look to be certain.
http://linuxcnc.org/docs/2.7/html/man/man9/motion.9.html
I think that axis.0.joint-pos-cmd is likely, but motor-pos-cmd might be the one.
I think you want the one that does change on homing.
Stepping back a few days worth of emails, I finally got a chance to get
out to the shop and look at this. Before I show my results, something I
forgot to mention earlier on is that although it's a 2 axis machine, I'm
using three drives/steppers. Axis.0 is the primary X axis, with Axis.1
slaved to it. Axis.2 is the single Z axis.
I powered up linuxcnc and the machine and used Halmeter to observe the
pins and their values during homing like Andy mentioned above.
Unfortunately,both of those sets of pins on the X and Z axis change
during homing from their original value to something different. Here's
the values the pins showed after homing (I didn't think to record the
values prior to homing, but they were different than noted before):
axis.0.joint-pos-cmd - 3.105958e-09
axis.0.motor-pos-cmd - 0.000327
axis.2.joint-pos-cmd - 2.4
axis.2.motor-pos-cmd - -6.183435e-05
The axis.2.joint-pos-cmd value of 2.4 is what shows on the Axis DRO
after homing. I'm taking a SWAG that the axis.0.joint-pos-cmd equates
to the 0.0 shown on the Axis DRO after homing, but is accurate to more
places than what the DRO shows? At any rate, should I be using the
joint or the motor pos-cmd?
A Halmeter question - is it possible to run multiple instances of
halmeter so that I can observe different pin's values and compare, say,
the original Z position, the offset, and the final Z position after the
offset is applied? That would be handy to make sure I've got the
negative values correctly and also to see if the hal code is actually
doing what I want it to do.
Here's what I've got so far for the hal coding using lincurve and
offset. The x,y values section is just padding currently using the
examples John K posted the other day, and will be replaced with the real
values once I finally determine my breakpoints.
loadrt lincurve
loadrt offset
addf offset.0.update-output
setp lincurve.0.x-val-00 0
setp lincurve.0.y-val-00 0
setp lincurve.0.x-val-01 4
setp lincurve.0.y-val-01 0
setp lincurve.0.x-val-02 5
setp lincurve.0.y-val-02 -0.002
setp lincurve.0.x-val-03 6
setp lincurve.0.y-val-03 -0.003
setp lincurve.0.x-val-04 13
setp lincurve.0.y-val-04 -0.003
setp lincurve.0.x-val-05 14
setp lincurve.0.y-val-05 0.000
setp lincurve.0.x-val-06 15
setp lincurve.0.y-val-06 0.001
setp lincurve.0.x-val-07 21
setp lincurve.0.y-val-07 0.001
net axis.0.joint-pos-cmd offset.0.in
net lincurve.0.out offset.0.offset
net z-raw axis.2.joint-pos-cmd offset.0.in
net z-corr lincurve.0.out offset.0.offset
net z-cmd offset.0.out stepgen.2.pos-cmd
net z-pos-fb-raw stepgen.2.pos-fb offset.0.fb-in
net z-pos-fb-offs offset.0.fb-out axis.2.joint-pos-fb
Andy helped me out with a bunch of this stuff so some of it's copied and
pasted from his emails with minor edits to get the correct axis
numbers. In light of the top part of this email, is this correct? Did I
leave anything out? Is anything superflous?
Thanks,
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
[email protected]
https://lists.sourceforge.net/lists/listinfo/emc-users