hmm, I guess I should look at joints/axes again
the concept that I was discussing with jeff at the workshop would give you wheel jogs along cartesean axes - including uvw
that would be ultracool
lately I've found machining much more attactive than coding
I know how that is
the spindle project really has my interest right now
got one spindle bored, and I'm making a collet
neat. did you settle on mt3?
no, I'm gonna make a custom collet that uses the existing 1:10 taper
its the last of the possible plans outlined in my last posting
that sounds like a good idea to me.
I've refined the collet design a bit since then, but the core concept is as shown there
the design now incorporates an adjustable stop so if you release the drawbar with no tool in the collet it doesn't draw it in too far and try to crush it
got one collet blank drilled and tapped, and just finished making an arbor to do the external machining on it
cool. the stop sounds great.
I hadn't thought of that being a problem but it sure would be.
spring drawbars are usually used with stuff that has retention knobs, not collets
it has been bugging me for a while, but I came up with the solution while walking the dog a couple days ago
instead of just threading the back of the collet M6 for the drawbar, it is threaded 1/2-20
then I make a piece that is M6 on the inside, 1/2-20 on the outside
insert un-slit collet in spindle, screw "piece" into 1/2-20 hole in collet till it bottoms out in spindle hole, back the piece out 1 turn and locktite it in
that lets the collet pull in 0.050, which tightens it by 0.005
good idea. I have the same problem with my lathe's collet closer, but no solution like that
there isn't some kind of stop in the closer?
(although it will stay open)
it has limited travel, but that would depend on exactly how far you've screwed the collet in
dangit, I'm incapable of properly fixing any bug in task
at least you try and fail
don't feel bad, you aren't alone
it's so confusing to me that I don't even try
seems like only jeff and alex have the power needed
I hope they always use their powers only for good
CIA-40: come back
fenn_ is now known as fenn
jepler, here is my modified wcomp: http://pastebin.ca/1200113
and the compile errors I get: http://pastebin.ca/1200114
can you see if it works on your machine (or point out my stupid error)?
SWPadnos: you want 'pin out bit over' not 'pin over bit out'.
heh - ok
I was just realizing that the pin name and direction that I copied were the same "out"
it's probably stupid to add a parameter to choose whether the boundary values are included
interesting. when min==max==in, over and under are both true which makes out false
of course, if min==max, out is always false
paul strikes again
jepler: when do you convert the jepbot to SWPadnos's servos?
(seems like the next logical upgrade)
skunkworks: I'd have to figure out a good mounting scheme .. a pancake servo is much bigger than a nema 17 stepper
anyway, it's plenty fast and accurate
hmmm. how do I get comp to build (if make doesn't notice that I've changed comp.g)?
I've just been modifying comp.g and rebuilding about a dozen times
it works fine
but, rm ../bin/comp if it really isn't doing the right thing
crap. I think kate mangled whitespace
maybe my change isn't working - that could be the problem :)
what are you doing in comp.g?
just adding a NOTES section to the manpage related keywords
ok, I had forgotten to put a ; at the end of my notes line
do you want me to check that in, or send you a patch?
check it in
I'll criticise you on the mailing list if there's anything that I don't approve of
and so will himorher
hmmm. no CIA
where the heck is that comp manpage source
oh, in the docs/man dir, of course :)
lucky me - there's no keyword description in the manpage - woohoo!
SWPadnos: no; you have to edit the lyx
can't do that without significant pain - I'm on Hardy
yeah I know
I've tried to get a full doc build on a different machine, but I haven't been able to spend much time on it
the docs build just fine on 8.04 fwiw
I'll check the error I get
that is, it doesn't terminate with an error for me. I never looked inside
lunchtime here .. bbl
it may have to do with python2.5 vs 2.4 (I think it was a python error)
Hi , The distance to go pach is redy , can you tell me haw to upload it.
hmmm - good idea
issy, is it a lot of code? if not, put it on http://pastebin.ca
if it is, please email it to - err - someone
ok, pastebin should be OK for that
what is pastebin?
like imagebin, but for text
ol. lets try
actually, imagebin is like pastebin, but for images ;)
strange , i cannot open it...
[17:11:13] <skunkworks> http://pastebin.ca/
welll , is done , the fail name is targetexport , it is exporting targetx,y and z , so for to be able to calculate the distance to go for each axis
issy: can you paste link to pastebin ?
so on a full circle, the distance to go will increase from 0 to 2*radius, then go back to 0 (rather than starting with the circumference and going to 0)?
it is only for the linear movements
does it read 0 for arcs?
or other compound moves (like a peck cycle)?
i have made it only for the linear is reading 0 for the rest
ok, that' scool
this is used mainly when you have fixtures on the working object
so , the first start of the program , if the tool come too close
to the holding fixture , you can see
the distance rest to go
and to move the fixture in case of need
oh, so it's not for a "remaining distance in this move" display, it's so you can see how far from some point you are
no , no.. is the rest , the rest distance
it is the remaining...
who is administrator of wiki ?
stupid question :)
well on the pastebin , you can find a working user interface with the distane to go
the name is grafica
I don't see it, and search doesn't find it. do you have the URL?
give me bether email.
is on the same place as the sources
look for grafica.zip
[17:32:46] <issy> http://filebin.ca/fvcvpe/grafica.zip
this is the link
ok, that's filebin :)
yes , sorry... is too big for pastebin
the sources of the pach are there as well
I'm not really qualified to review it, so you'll need to wait for one of the others to see it :)
i have also windows wersion
it's annoying that there's no way to browse or search filebin
generaly , i dont like this type of bins.. , but ... well why not
you could stick this stuff on the EMC wiki as well (but not grafica.zip - it's too big)
where is the source? I can't seem to search filebin
[17:36:59] <issy> http://filebin.ca/gtbkhu/targetexport.zip
now the qualified people will know where to look :)
in order to use them , they have to be compiles with the emc
of course :)
sugestiona sre welcome
I'm sureyou'll get a few
did somebody have fxf to g code converter writen in c
issy: the first suggestion is to make a diff, then post that
it's a lot easier to read only differences, than reading the whole file and trying to figure out what you changed
you can easily do that by typing: cvs diff -u > distance-xyz.patch
SWPadnos: you were right, it doesn't seem to be the remaining part of this move, but rather the coordinate at the end of the move
thanks alex , it is easy to find the diff , just look for " trg " inside
I think cradek mentioned that Stuart said that's how it often works :)
next time , i will do as you mention
issy: next time then it will be < 1k :)
issy: also, doing the diff -u makes it easy for somebody to apply the patch
got time to look at something?
what is it?
a small patch for the TP :)
cradek: issy is going to paste the diff
cradek: issy is going to paste the diff, but until then maybe you can look at http://filebin.ca/gtbkhu/targetexport.zip
cradek , look for trg inside the sources
i have to get the cvs
what is it? just tell me
cradek: it's adding trgX, Y and Z
as the targets for the current tc
they show up in motion status, and up to emc status
it is exporting the target of the tree axis
this is to make dtg?
so , you can show in the grafic interface the distance to go separated for x,y,z
why export the targets instead of the dtg? that makes it harder for the gui since it has to figure out what coordinate system and units the points are in
ah, I see now - the idea is to see the distances for each axis, not just the total distance
yes that is how every? other control does it
you should check the log. I asked a question or two, but I can't paraphrase the answers becaus I don't know what's going on :)
time to eat - bbiab
well , i think that target is more usefull than the total dtg
why do you make the target 0 if the motion is not linear?
that will make the gui show a crazy dtg
no , in this case is showing 0
because , the distance to go is used mostly for linear movements , I have 20 cnc machines and the only application of that is to check the distance on setting the program for first time.
allways linear , but is not a problem to be made for the rest
"used mostly for" does not mean you should disable the feature for the rest
no , just to add them as well:)
in tp, you can set the target when the move starts. I think in G61 mode your code will not work where you have put it
I will try it and let you know
ok great, I'd be happy to have another look if you fix these things and make up a patch
I want to put this display in AXIS too
well ,i am happy , have you look on mine grafic interface?
I only saw a picture of it
are you going to release it with a free license?
it is posted , your coments will be appriciated!!!
it looks very interesting
I have this intentions
but i have to solve 1 problem with the libraries i am using
as the progect was made in 2 parts , first to be used as standart interface of the emc , and the second as remote tru tcp.ip with windows
i decide to use libraries that works for both.
unfortunately the windows part is not free
so , after discusion with alex , I decide to take out the windows part , and to finish as free the linux
for the target (or DTG) in the stat buffer you should use an EmcPose and fill out all nine coordinates
yes , i know
even if you are only interested in XYZ someone else might want XYZUVW or XYZA
i made this pach to see haw will work ,
ok good, I look forward to seeing the next patch
with the c , i have no problens at all , but the snake is not for me , so i cant see haw the thinks are mase in the axis
that's why i am asking so much
I have to go find lunch, I look forward to talking more later
alex_joni: can you look again at the spindle bug? I tried again to fix it but failed
my patch to emccanon fixes mdi and manual mode, but breaks auto programs that change the speed
hummm.. I will in a bit
was your patch commited?
ok, I'll bug you in a bit when I start looking at it.. ok?
I don't think it makes the problem better, only different
ok thank you
don't thank me yet :D
[19:29:18] <cradek> http://timeguy.com/cradek-files/emc/canon-spindle-patch.diff
cradek , i have to make the path prewiew in my gui , can yoy give me some advice
when there is a line then I whant to know target point, when ther is a circle then I would like to know center of the circle, and regarding the third kind "ridgit... something" perhaps I need again target
SWPadnos: how did you end up getting involved with emc?
I think I know everyones story but yours. :)
I wanted to get a CNC going for a new product line, and a friend pointed me toward EMC
he said something like "you're a linux guy, maybe you should try out EMC"
of course, he uses DeskCNC, because it's easier for him
'today we replaced jims normal cnc controller with emc.. Lets watch what happens.'
well , i have different system made by me , but without os , so is difficult to add new items
with the emc the hardware and the software are easy to get , install adjust ... well this is the tru solutin
much easier with the source (when you want to do things yourself)
yes , true
unfortunately , not made from m e , so i have to read all of them to get an idea what where is made and haw is working....
issy: we all are still reading to get an idea how it's working :P
sometimes it feels like magic :D
is robh having the same issue as steve blackmore?
like every other run works..
might just be
hmm.. running 2 VM's + win on this machine is a bit much
I have a sinking feeling that using MODULE_DEVICE_TABLE makes the hm2_5i20 driver participate in the linux hotplug system
that would explain that stuff getting loaded at boot time without apparent user intervention, anyway
* alex_joni looks around for seb
I think we (I) added a symlink from /etc/modules to /usr/realtime/.../modules in the new rtai version
before that it wouldn't have participated in hotplug because depmod wouldn't find it ..
so it pulls in all dependent modules?
(except rtai_math.. obviously :)
something like that
so if the problem is "emc gets partway loaded at startup", I'd be tempted to try 'sudo rm /lib/modules/2.6.24-16-rtai/rtai' and reboot ..
I haven't followed this closely
option 2 is to manually downgrade to rtai-modules-2.6.24-16-rtai_3.6-linuxcnc.1 from 3.6.1
what's .../2.6.24-16-rtai/rtai/ ?
it's a symlink from the kernel modules directory into the rtai modules directory
lrwxrwxrwx root/root 0 2008-07-20 09:40 ./lib/modules/2.6.24-16-rtai/rtai -> /usr/realtime-2.6.24-16-rtai/modules
so the symlink is for hotplugging.. do we need that?
for the firmware or something?
I had some other motivation in mind when I made that symlink but I honestly don't remember what just at the moment
aha, the changelog entry I wrote says "make modprobe work" -- that's not actually required or used in emc, though being able to use modprobe would theoretically simplify module_helper at some indefinite time in the future
I'd vote we take it out for now, or push an emc2 update which prevents the hotplug
cradek: I don't think your patch can work
I think the easiest is to revert my change (this patch does that: http://pastebin.ca/1200474
) and push out a new rtai package to the repos
that's a patch to rtai
you guys are great!
* skunkworks cheers from the cheap seats.
* alex_joni runs back to the spindle issue
* BigJohnT heads to the house to play with the dog
'tis make my head hurt
cradek: I think I got an explanation why it can't work
but I guess you're more thrilled about hearing a solution.. and I'm still thinking about that
EMC_SPINDLE_ON has Motion and IO as preconditions, that means task waits with running it before all motion and io that were before it finish
but the problem is not there, it's in canon
canon has no way of stopping things, until it can evaluate the GET_EXTERNAL_foo functions safely
and the GET_EXTERNAL_foo get the current status (which is what the machine is doing, not where the interp. is)
* alex_joni hugs cradek
* alex_joni hugs CIA-40
* CIA-40 hugs alex_joni
cradek: darn, I can't remember what the issue in maual/MDI was without your patch
alex_joni: You said: "and the GET_EXTERNAL_foo get the current status (which is what the machine is doing, not where the interp. is)".
To get where the interp is, you need to do the type of sync that the interp does when probing.
(I just came in the door and have to leave in a few minutes, but saw the comment)
Don't even know what it is referring to, so if you tell me I don't know what I'm talking about, I'll agree. :-)
Lerman: yeah, I know.. but this is for setting spindle speed
and pausing the interp for every spindle speed change, is .. uhmmm
No, you're not pausing, your just catching up. :-)
After all, it takes time for the spindle speed to actually change. You should wait for that, anyway.
you mean you don't have an 10000g accel spindle?
I do, but even that take *some* time.
do you have it fresh how to stop interpreting until it's been executed?
Last time I wanted to know, I looked at the code for probing.
I have to leave now -- time for a martial arts class. I'll see you later.
ok, see ya
I did use the same mechanism for reading inputs.. so I guess I should be able to figure it out again :D
alex_joni: the original problem was this: MDI s1000 m3, hit escape or F9 to stop the spindle, MDI s500, the spindle incorrectly starts
also issuing G43 will incorrectly start the spindle sometimes
sorry I should have made a bug report.
the problem is handling it in canon, it can't work
as much as it disgusts me, we need to handle this in task
do you know what the fix might be then?
I thought maybe we could make a new call for the motion/interplist that only sets the speed, instead of overloading ON to set the speed
I think one of the reasons is simply having too obscure messages
right, exactly what I was thinking
then you don't have to guess the state of the spindle
another thing that bugs me sometimes is that the same message comes from different sources (interp and GUI)
I'll do the new type now
can you do the bugreport, in case I don't finish and want to test it tomorrow ?
sure I'll try to figure out how to reproduce the G43 case again too
ok, got it already
looking at the code helps
[22:48:00] <cradek> https://sourceforge.net/tracker/index.php?func=detail&aid=2106490&group_id=6744&atid=106744
cool, thanks.. I'm almost in motion with spindle speed
alex_joni: this might help you test, it uses lots of spindle modes: http://timeguy.com/cradek-files/emc/s-test.ngc
if I fix mode 1, can you do 2 ?
I'm not that familiar with CSS
the css bug is just one line in emccanon where it checks spindleOn
but sure I will fix/test it
it'll be another 2-3 lines in taskintf.cc
bug here: if(css_maximum && spindleOn)
is your new SET_SPINDLE_SPEED message going to be able to set speed, factor, xoffset?
you need all those for css
yeah, I know..
that's why I said maybe you can fix it
for now I simply used 0 :D
for factor and xoffset
I will try
I only have anon checkout on this vm
so I can only put a ptch online :)
I can test and check it in for you
ok, I think it works as it should for case 1..
did you try s-test.ngc?
nope.. will now
all my 'fixes' made that program break
now you have to fix the fix
the only question is how would I know if it's right? :D
I think it breaks on G95, but that's expected
if you run sim/lathe you can see the spindle speed
I use a halmeter
but for CSS it can't work.. I used 0's
does it change to 400 at the s400 line? my 'fix' broke even that
yeah, that works
even the M4 makes it go negative
I have a program wich does a rectangle with a different S-word for every side
works a treat
so we need to move the code from emcSpindleOn to emcSpindleSpeed and fix everything that called emcSpindleOn?
or will they have duplicate code so either one can set the speed?
yeah, that would be my bet
the latter I mean
so SpindleSpeed will be the same as SpindleOn, but it does everything except turning it on
and it only does stuff if the spindle is on already
otherwise it just returns
no I think it should set the speed, but not turn it on
yeah, but that means adding another EMCMOT_ command
because there it's the same :(
but it has to work that way
I can see that is the nice fix..
s400 and then later m3 must give 400 rpm
because M3 calls SPINDLE_ON from canon
which sets the spindle together with spindle_on
s400 was stored into emccanon:spindleSpeed
whoops.. bug waiting to happen?
emc.cc:EMC_SPINDLE_ON() doesn't have references to css
right now, if the spindle is off, can spindle-speed be non-zero?
SWPadnos: who's spindle-speed ? :D
we have: g-code, interp, task, motion, physical spindle
the HAL pin
if the spindle is off, then the physical speed is obviously 0
the motion.spindle-speed-out is also 0
I'm wondering about breaking HAL configs that assume that speed==0 whenever the spindle should be off
that's still true
I don't pass the spindle speed down to motion if the spindle is stopped
and that HAL output gets set to 0 when the spindle told to stop?
actually motion only deals with spindle-speed-out
err - when the interp tells canon to tell NML to tell motion to tell HAL to stop the spindle ;)
the spindle-on, brake-on, etc all get built out of the speed
spindle-forward and reverse, etc
was a spindle-at-speed input ever added?
there's feed-hold :P
that's right - we had some issues with continuing a move in progress vs. waiting for a speed change
I don't know what the right behavior would be for at-speed control
with css the spindle is often not at-speed
it seems that something like if (in-motion || spindle-at-speed), continue
if you want to wait for a speed change, then program a move with a dwell time
or we can add M3.1 - set speed and wait for it
or use M66 :P
wait for input?
let's let alex finish his patch in peace... :-)
well.. I finished adding the css stuff..
yeah - sorry. I'll go mess wth new quad-core computers now ;)
but it doesn't work as I would expect it to
this is the most important bug I know about that we currently have
or see if my sister actually has to evacuate from Ike
no, ike :)
how I added the css stuff?
let me know how I can help
the canon call set spindle speed is probably wrong
why hasn't jepler written the NML-generating equivalent of comp yet?
it's easy and fun to add NML messages :D
and there was a java app which did that for you .. if you feel suicidal enough
cradek: in taskintf.cc there needs to be some * -1 going on
based on current spindle direction
it even ran/runs on Windows
but I'm not sure if the css_factor or the offset or both need to be negative for M4
css_numerator and speed go negative
double denom = fabs(emcmotStatus->spindle.xoffset - emcmotStatus->carte_pos_cmd.tran.x);
what does G95f.002 do?
feed .002 inches per spindle revolution
and sim/axis.ini won't work with that.. right?
so as css speeds up/down, so does feed
because of lack of feedback
hmm.. it looks like it's working here
new patch coming up
but I don't know much about css.. except that it moves around the place :D
can you try that?
* alex_joni is feeling a certain urge to get some sleep
thanks very much
not until you say it's right though :P
(even if you have to lie .. LOL)
problem #2 is still there
what's g43 again?
load tool offset
yup.. it sets a spindle_on
I'd try changing that to EMC_SPINDLE_SPEED
go to bed, I will work on it some more
yup.. that works
that's ok, I made the same change here
can we get rid of spindleOn in emccanon?
I don't think so
spindleSpeed doesn't turn on the spindle.. ever
static int spindleOn = 0;
I mean this
it becomes wrong if you change the spindle in manula mode
if we do then it won't work to S200
and a while later to M3
I'd say commit it like this for now, and we'll talk about properly fixing this..
that means 3 different messages from g-code to spindle
on (fwd/reverse), off, speed
but for that motion needs to brighten up a bit..
I think it is working right
I took out the static int spindleOn
it was only used in USE_TOOL_LENGTH
I was thinking of spindleSpeed :/
but I don't care about that
I hibernated the VM
what does it do?
goes to 400 when you INCREASE and then back to 300 when it gets the second m3
ah.. no idea what should be right :D
so that means the current behavior is right
hm, fpr doesn't work when m4
different bug though
I think you fixed the bug report!
whee.. cool :)
think I found the fpr/m4 problem
one line fix - my specialty
I didn't put in a lot of lines lately either
EMC: 03cradek 07TRUNK * 10emc2/src/emc/task/ (taskintf.cc emctaskmain.cc emccanon.cc): fix bugs described in 2106490 (thanks Alex!) and also FPR + M4 not going anywhere
EMC: 03cradek 07TRUNK * 10emc2/src/emc/nml_intf/ (emc_nml.hh emc.hh emc.cc): fix bugs described in 2106490 (thanks Alex!) and also FPR + M4 not going anywhere
EMC: 03cradek 07TRUNK * 10emc2/src/emc/kinematics/tp.c: fix bugs described in 2106490 (thanks Alex!) and also FPR + M4 not going anywhere
I closed the bug