I have some interesting work done with 5 axis tool length compensation that might be a general solution for nontrivkins machines. It is a bit invasive and not well integrated yet. Should I make a branch? Does anyone want to see it?
by not well integrated, I mean not at all
"general solution for non-triv machines" sounds interesting
we have extra axes uvw. If you put them relative to the tool tip (I have only done W for 5 axis so far) you can move tool offsets there
so it just turns it into a kins problem. for serial machines even I can handle it then
it also gives you some neat things like real 5 axis controls have: you can position the tool at whatever angle/location and drill/plunge/face with it.
you could even do this in teleop mode (if teleop would work right)
oh, so you meant "general solution to the tool offset problem on non-triv machines", not "general solution to the brokenness of non-triv machines"
* jmkasunich was getting excited for a minute there
that drill/plunge/face thing is cool
and for handwritten gcode it would be great
g0b33c99x1y2z3; g1w-100f10; g0w0
well maybe not w-100 (mixing units)
I don't know how to integrate these changes, or if it's possible
TLO has assumptions at all levels
I'm sufficiently behind that I don't even know how the UVW stuff works
interp, canon, guis
it seems that there are as many ways to do that as there are people
what about it?
it's just three more (linear) axes
the one you did, does it do uvw as offsets from xyz like the wire edm folks want? or as independent axes like the foam people want?
they are independent
(lathe folks want a third thing)
right, which I have no clue about
we eventually need to have a configurable interpreter. I don't know how to do that.
that makes two of us
I'd be happy to get teleop and homing working
yeah teleop would be nice. it almost works.
the homing issues that I was running into, and the 101 homed flags, got me thinking
that, and something reminded me of the concept of runlevels that has been discussed before
I'd kinda like to seriously consider runlevels for 2.3
for non-triv kins, one level would be "haven't homed everything, can't go to coord mode"
if you're saying we should throw out task and start again, but smarter this time, I'm with you
I'm not sure I'm saying that
in the past I was thinking of runlevels as being a realtime thing, because they would be used to do some types of interlocking
like, you can't enable amps until the hydraulic pressure is up
I think no more should be in realtime than needs to be in realtime
I can agree with that
for one thing, it's a pain to talk to it
the original runlevel concept would have had levels like:
estopped, idle, pump running, amps on, homed, coord, running program
various operations would or would not be allowed depending on the level
and various conditions would apply to level transitions
yeah that sounds smart
how many times did I start a program running on the mazak without homing? 3 in a week I think
it stopped soon enough, but still that shouldn't be allowed (on that machine)
I think it was anonimasu (or maybe anderswallin) who ran a commercial machine that wouldn't let you do anything except jogs until you had homed all axes
for non-triv kins that is pretty much a requirement
on mine you can't even jog!
(it's a huge pain)
to jog before homing (which sometimes you NEED to do) I hold down a limit switch when enabling it
so, that safety feature causes me to stick my fingers places where they shouldn't be...
but anyway (sorry)
yes, some kind of runlevels.
the hard part is (as always), how do you configure it
trivkins machines could skip right past the "homed" state, or not, depending on the integrator
nontriv would always (I think) want to use that level
03cradek 07w_tool_length * 10emc2/configs/5axis/5axis.ini: TLO on W axis. currently this is only useful on the 5axis kins/config.
03cradek 07w_tool_length * 10emc2/nc_files/cone.ngc: TLO on W axis. currently this is only useful on the 5axis kins/config.
03cradek 07w_tool_length * 10emc2/src/emc/rs274ngc/interp_find.cc: TLO on W axis. currently this is only useful on the 5axis kins/config.
03cradek 07w_tool_length * 10emc2/src/emc/kinematics/5axiskins.c: TLO on W axis. currently this is only useful on the 5axis kins/config.
03cradek 07w_tool_length * 10emc2/src/emc/usr_intf/axis/extensions/emcmodule.cc: TLO on W axis. currently this is only useful on the 5axis kins/config.
03cradek 07w_tool_length * 10emc2/src/emc/task/emccanon.cc: TLO on W axis. currently this is only useful on the 5axis kins/config.
03cradek 07w_tool_length * 10emc2/src/emc/usr_intf/axis/scripts/axis.py: TLO on W axis. currently this is only useful on the 5axis kins/config.
so much silence
nobody cares about tool length
yuck. write a loop that runs a gcode line that produces motion each time (like in cone.ngc)
now step over it
you'll be surprised, but not too much
step works by waiting until a motion with a different id (line number) starts, and then pausing
so, all the motions in the loop run in one step
doesn't gdb have that function? "step over loop" or something like that? ;-)
yes "next" I think
but, it also has step
yuck, I really shouldn't have left this DC rated contactor sitting on the lathe bench
maybe step needs to be rethought too
(with all the rest of task)
DC rated contactor with permanent magnet arc blowout
bad news if used on AC?
but bad news when steel chips are stuck all over it
pick pick pick
scrape, blow, wipe
a really cool light show the first few times it operates
I am such a slob sometimes
by a small miracle known as "me finally doing something productive for an evening", the Shoptask is no longer covered in chips, tools, and gritty cement dust
time to build something?
ever so slowly getting back to the CNC project
when I'm in a rut I like to build something, even very small
last time was a nice aluminum holder for my wiggler set - big deal, make a block square, drill five holes of various sizes
but still it gets me doing something
but, it'll be dirty again...
the shoptask? true
but it will take a while
you had motors turning in june - I hope you put one on your machine sometime soon
heh, I have lots to do to get _back_ to where I was in June
you will love having a cnc lathe... manual lathes are just no fun.
I dunno, I like lathe work
at least for onsey-twosey things
I think tapers and threads are a pain...
I wouldn't have dreamed of trying to do the "magic socket" using CNC
well sure, that's true
yeah for odd stuff I sometimes just use the jog arrows at very slow jog speed
a wheel or two would be better
yeah, I'll probably use the wheels quite a bit
and I imagine "F1 Z3" after using the wheel on X to set depth of cut will be nice
I love measuring a diameter with a micrometer and setting X, and then having it right until the job is done
(I never had resettable handwheels when it was manual)
so I had a notepad I wrote dial settings on...
oh, that would suck
my next step has to be cleaning off my desk/workbench
its impossible to work when surrounded by a 6" deep mess
but cleaning the bench is always the worst thing to do, cause thats where the stuff with no "home" winds up
cradek_ is now known as cradek
if we have tool table editing in the gui, there's no reason not to expand the tool table to include anything we might need - and then hide most of it from the user when it's not appropriate
also: how about a format where you specify:
tool_1 X2.5 Z102.7
I'd be happy to help with the internals, but I'm clueless about the gui
tool_1 2.5 0 102.7 0 0 0
same here ;)
this would need to read/write stuff to the tool table through task, not directly
we can work on that
but there's too much to do.. and I have too little time :D
cradek: there's a german guy who extended TOOL_CHANGE location in a very nice way
there are a lot of pieces in place already I think (the nml message)
cradek: any idea why you made this change? The log message is a bit cryptic for me ..
[15:38:59] <jepler> http://cvs.linuxcnc.org/cvs/emc2/src/emc/rs274ngc/gcodemodule.cc.diff?r1=1.23;r2=1.24;f=h
"not used for anything, but called now"
[15:40:19] <alex_joni> http://private.addcom.de/rc-hobby/sonst/emc/ww1.png
the set_feed_rate python call was somehow busted
I don't remember what I was working on
[15:40:54] <alex_joni> http://private.addcom.de/rc-hobby/sonst/emc/ww2.png
1..10 are various moves based on stuff in the ini
do you have a patch?
yes, but I don't want to apply it as it is
(actually it's not a patch, but a full source dir)
as it is now it breaks existing configs..
I want to rethink it as an extention from the current state
jepler: cd rs274ngc; cvs diff -D 2007/11/02 -D 2007/11/04
it was when I was fixing the initial/abort conditions for fpr/css
cradek: ah, hm
I see that just taking off the #if 0 breaks touch off
I probably was being an idiot and didn't bother to figure out the real problems
I don't know why you guys let me touch the source code
03jepler 07TRUNK * 10emc2/src/emc/usr_intf/axis/scripts/axis.py: feed rate is required for gcode time estimate, and this also requires a new stub in dummycanon
03jepler 07TRUNK * 10emc2/src/emc/rs274ngc/gcodemodule.cc: feed rate is required for gcode time estimate, and this also requires a new stub in dummycanon
03jepler 07TRUNK * 10emc2/src/emc/rs274ngc/gcodemodule.cc: prevent metric files from being off by a factor of 25.4 in time
03jepler 07v2_2_branch * 10emc2/src/emc/rs274ngc/gcodemodule.cc: backport: axis gcode time estimate
03jepler 07v2_2_branch * 10emc2/debian/changelog: backport: axis gcode time estimate
03jepler 07v2_2_branch * 10emc2/src/emc/usr_intf/axis/scripts/axis.py: backport: axis gcode time estimate
I hope it's right
we'll test before 2.2.2
I noticed again last night that resume isn't quite right
I didn't work on it though.
not quite right how?
after you step, you can't resume until you push pause (even though pause is already down)
I guess this only happens if you start by stepping
(I thought I saw it in another way last night)
... I think I've decided not to try backporting the pause/step stuff for a release this weekend ...
I forget exactly how badly it's broken
... not that bad
not that bad
jepler: I agree it's safer this gets some more testing.. so 2.3.x shouldn't be a problem
or 2.2.3 for that matter
SWPadnos___ is now known as SWPadnos
SWPadnos___ is now known as SWPadnos
03tissf 07TRUNK * 10emc2/docs/html/gcode_fr.html: French translation update
03tissf 07v2_2_branch * 10emc2/docs/html/gcode_fr.html: French translation update