#emc | Logs for 2007-07-24

[00:38:15] <lerneaen_hydra> 'night all
[01:42:07] <ds2> for isolation, how slow of an optocoupler can I use with steppers?
[01:44:32] <skunkworks> how fast do you want the steppers to go?
[01:45:15] <ds2> what are some ball part numbers? I am browsing datasheets and they all seem very slow
[01:45:42] <ds2> I don't know how fast because I haven't figured out the pitch of the screw and pull ratios
[01:46:25] <skunkworks> I would think 100khz or more.. Unless your doing hardware step generation - then atleast 300khz
[01:46:42] <ds2> Oh hmmm
[01:46:56] <ds2> maybe the parts aren't that slow then
[01:47:20] <skunkworks> probably not..
[01:47:22] <ds2> I'm seeing around 2-10uS rise/fall times which would be in the ball park of your numbers
[01:50:00] <jmkasunich> I think gecko drives require 4uS pulses, and have a max step rate of 200KHz
[01:50:18] <jmkasunich> of course, geckos already have isolators, so you probably have something else
[01:50:51] <ds2> try to upgrade the controls on an existing machine
[01:51:04] <ds2> once that works,then the drivers will be looked at
[01:52:11] <ds2> is the 4uS number the period or the rise time?
[01:52:28] <jmkasunich> for the gecko its the minimum low time
[01:52:35] <jmkasunich> low = internel opto LED on
[01:53:15] <ds2> oh Hmmm
[01:56:18] <jepler> well guys, the pluto-step looks pretty good on the scope
[01:56:30] <jmkasunich> cool
[01:56:51] <jepler> correct # steps per second, dirtime, steplen, stepspace all seem to be obeyed
[01:56:51] <cradek> (between us we could sure use at least one good scope)
[01:57:09] <jmkasunich> ebay!
[01:57:18] <cradek> good
[01:57:37] <jepler> I'm not convinced I got the "tuned feedback loop" right however -- while doing something at constant speed the actual velocity wanders around a bit
[01:57:58] <jmkasunich> http://cgi.ebay.com/Tektronix-2440-300Mhz-500Ms-s-Digital-Osciloscope_W0QQitemZ230154512829QQihZ013QQcategoryZ104247QQssPageNameZWDVWQQrdZ1QQcmdZViewItem
[01:58:25] <jepler> jmkasunich: and how much will that scope actually go for?
[01:58:42] <jmkasunich> dunno
[01:58:49] <jepler> 3 digits or 4?
[01:58:50] <skunkworks> look at compleated items
[01:58:50] <jmkasunich> this one has a buy it now of $699
[01:58:52] <jmkasunich> http://cgi.ebay.com/Tektronix-2440-300MHz-500MS-s-Dig-Oscilloscope-MINT_W0QQitemZ290141082676QQihZ019QQcategoryZ104247QQssPageNameZWDVWQQrdZ1QQcmdZViewItem
[01:58:59] <cradek> eek
[01:59:06] <jmkasunich> I have a 2440, they definitely qualify as a good scope
[01:59:19] <cradek> all the scopes I own together didn't cost that!
[01:59:22] <jmkasunich> I paid $200 for mine (gloat)
[01:59:32] <jepler> I've paid that much for things I never use
[01:59:41] <jepler> can you transfer the traces to the PC?
[01:59:53] <jmkasunich> no, its a pre-PC era scope
[02:00:06] <cradek> I can do that with mine using an external tool
[02:00:15] <skunkworks> That is what digital cameras are for..
[02:00:20] <jmkasunich> I thought you said you didn't have a good scope?
[02:00:47] <cradek> skunkworks was quicker than jmk on that one
[02:01:08] <jmkasunich> the 2440 got 500MS/s in an era when A/D converters couldn't do 500MS/s
[02:01:20] <jepler> using pixie dust or something?
[02:01:35] <cradek> magtape?
[02:01:40] <jmkasunich> it has an analog CCD delay line, they clock the CCD at 500MHz until it triggers, then clock it out slower (50MHz maybe) to the A/D
[02:01:57] <cradek> heh I was right
[02:02:15] <jmkasunich> not magtape
[02:02:46] <CIA-8> 03cradek 07TRUNK * 10emc2/src/hal/drivers/pluto_step.comp: from jepler: write the step timing parameters to the pluto
[02:03:51] <jepler> does CCD mean "charge-coupled device" as in the digital camera sensor?
[02:03:55] <jmkasunich> yes
[02:04:06] <jmkasunich> but in this case, a 1xN array, not NxM
[02:04:08] <jmkasunich> and not exposed to light
[02:04:23] <jmkasunich> analog bucket-brigade thing
[02:04:31] <jepler> I have never really believed that digital cameras work at all
[02:04:52] <jmkasunich> more pixie dust?
[02:04:57] <jepler> yeah probably
[02:05:37] <jmkasunich> have you guys ever seen a recycled UPS tracking number?
[02:05:46] <jepler> jmkasunich: yes I did once
[02:06:05] <jmkasunich> I got a one today
[02:06:17] <jepler> I tracked my number once and it was a package to some other guy in another state
[02:07:22] <jmkasunich> "1/19/07: Delivered 7/23/07: Billing information received"
[02:07:49] <jepler> in the case I remember (dunno if it was ups or fedex) the "old" information all soon disappeared
[02:09:13] <jmkasunich> I imagine the same will happen here
[02:09:25] <skunkworks> jmkasunich: did you see this? http://www.electronicsam.com/images/steam/DSC_3839.JPG
[02:09:31] <jmkasunich> "billing info received" doesn't mean the package itself is in UPS's hands
[02:09:49] <jmkasunich> skunkworks: yes
[02:17:23] <skunkworks> so - what purchase have you guys gotten the 'most' out of? I would probably have have to say this portable. bought in 01/02 it is still going strong. paid around 1100 for it. use it every day.
[02:17:46] <jmkasunich> portable what?
[02:17:51] <skunkworks> pc
[02:17:52] <skunkworks> sorry
[02:17:57] <jmkasunich> heh
[02:18:15] <skunkworks> :)
[02:18:20] <jmkasunich> I'd have to say either my shoptask or the van norman mill
[02:18:38] <jmkasunich> the shoptask was $1600 in 1998, the VN was $500 in 2000 or so
[02:18:57] <jmkasunich> between the two of them I've done about $20K of side jobs in the last 7 years
[02:19:04] <skunkworks> wow. nice
[02:20:32] <Jymmm> skunkworks: Tequilia by the case.
[02:20:51] <skunkworks> what ever works.. :)
[02:21:13] <skunkworks> * skunkworks is on a second rum and orange juice
[02:21:23] <Jymmm> skunkworks: I'm assuming your speaking of machinery and not jsut hand tools
[02:21:31] <skunkworks> anything I guess
[02:21:58] <Jymmm> MY Snap-on 1/4" deep well sicket set - worth every penny!
[02:23:08] <Jymmm> or my $50 snap on ratching screw driver.
[02:23:18] <Jymmm> I love that thing.
[02:23:39] <Jymmm> I'
[02:23:55] <Jymmm> I'll exclude all my locksmithing tools as they're a specialty.
[03:03:22] <jepler> spiral.ngc is now running one axis of a stepper machine
[03:05:33] <Jymmm> ?
[03:06:03] <jepler> Jymmm: the pluto-p step generator is moving hardware
[03:06:19] <Jymmm> oh, hawt damn!!!
[03:06:39] <jepler> there was only one bug we've found so far and it was a trivial "forgot to write one line of code"
[03:06:52] <jepler> on the other hand, it is really not doing that well at low-velocity moves
[03:07:21] <Jymmm> any idea why?
[03:07:46] <jepler> yeah but I'm not sure I can explain it in just a few words
[03:08:03] <Jymmm> timig? bandwidth?
[03:08:11] <jepler> the signal that emc sends to the pluto is the frequency that the pluto should generate steps at
[03:08:26] <jepler> but there are only a small number (1024, I think) of frequencies that can be requested
[03:08:35] <Jymmm> ah
[03:08:52] <Jymmm> what abut emc dishing out quad, and the pluto dishing out step/dir?
[03:09:09] <jepler> so at any speed it will switch between the two closest available speeds as often as once per ms
[03:09:28] <jepler> that only doubles your step rate to maybe 50kHz, this goes up to 600kHz or so
[03:09:38] <Jymmm> ok
[03:09:44] <jepler> and if you have a high SCALE on your mill you'll notice this effect less
[03:09:51] <jepler> this mill has only 6400 per inch
[03:10:55] <Jymmm> so the availbel scale 1024 isn't larger enough?
[03:11:26] <Jymmm> brb, someone wants to play with theri server.
[03:17:08] <toast> pew pew pew
[03:17:10] <toast> lasers
[03:17:17] <Jymmm> back
[03:17:22] <toast> i have a copy of "foundations of mechanical accuracy" by the moore tool company
[03:17:30] <toast> holy crap, these people are insane.
[03:18:02] <toast> how to make a straightedge 18" long and parallel/flat to 5 millionths of an inch
[03:18:38] <Jymmm> jepler: so there's 10bit @ 1024, couldn't it be increased to 16bit?
[03:19:01] <jepler> Jymmm: no
[03:19:39] <Jymmm> jepler: ok, I'll bite... why not?
[03:19:47] <SWPadnos> just bolt on a few extra gates
[03:20:01] <jepler> Jymmm: unlike PCs, things in FPGAs don't come in natural multiples of 8
[03:20:25] <jepler> "10 bits" fits, "11 bits" might barely, but "16 bits" is not going to
[03:20:29] <SWPadnos> maybe there's enough space to crank it up to 11 (bits)
[03:21:09] <Jymmm> just asking here, why pluto as opposed to a uC?
[03:21:39] <jepler> Jymmm: because pluto is the device I have
[03:21:45] <SWPadnos> is the 10-bit number you send to the FPGA a direct adder for an internal accumulator, or something else?
[03:21:54] <Jymmm> There are some awefully fast uC's with lots of I/O on them anymore.
[03:22:29] <SWPadnos> the pluto board is $59, which is probably less than any uC board that can connect to a parport and do step generation at anything near 600 KHz
[03:22:30] <jepler> SWPadnos: yes. it's sign-extended to match the length of the position accumulator, though
[03:22:47] <jepler> increasing width of the velocity means increasing the width of the position accumulator too
[03:23:19] <jepler> I think it costs either 3 or 4 logic blocks per stepgen per additional bit (out of 500 or so)
[03:23:22] <Jymmm> SWPadnos: what about any of the AVRMega lines?
[03:23:24] <SWPadnos> no - you just sign extend a little less
[03:23:44] <jepler> that means decreasing max step rate
[03:24:07] <SWPadnos> Jymmm, those have enough I/O (though not as much as the Pluto), but try getting asynchronous parport reads and high speed step generation out of one
[03:24:24] <Jymmm> SWPadnos: ah
[03:24:27] <jepler> (because in one polling cycle the on-FPGA position accumulator overflows)
[03:24:38] <SWPadnos> hmmm
[03:24:51] <jepler> I could give up one bit if I mandate .5ms servo cycle for the top step rates, though
[03:24:55] <SWPadnos> how wide is the position accumulator?
[03:25:02] <jepler> I'd have to look at the source
[03:25:09] <jepler> it's about time to call it a night though
[03:25:15] <SWPadnos> indeed it is
[03:25:55] <CIA-8> 03cradek 07TRUNK * 10emc2/configs/stepper/ (pluto_inch.ini pluto_pinout.hal): make constraints match max since that's the testing platform
[03:25:59] <jepler> 'night all
[03:26:03] <jepler> I'll blog my successes in the morning
[03:26:07] <SWPadnos> see you. night time for me as well
[03:26:10] <jepler> then sam can start selling more of these boards on a promise
[03:26:16] <SWPadnos> heh
[04:03:06] <LawrenceG> Jymmm: you about?
[04:03:15] <Jymmm> yep
[04:03:41] <LawrenceG> you were using a pendant with your machine... was it usb or a keypad?
[04:03:58] <Jymmm> LawrenceG: PS/2 NUM_PAD
[04:04:15] <Jymmm> Pseudo pendant I call it =)
[04:04:45] <LawrenceG> do you know if anyone is using a contour shuttle pro (multimedia controller)?
[04:05:01] <Jymmm> LawrenceG: no idea. is that wireless?
[04:05:17] <LawrenceG> usb dodad
[04:05:36] <ds2> Hmmm
[04:05:56] <Jymmm> LawrenceG: looks like a glorified trackball
[04:06:14] <LawrenceG> hmmm Ted is going to post a link.....
[04:06:16] <Jymmm> http://dvinfo.net/articles/post/troxel/cdsp3.jpg
[04:06:32] <tfmacz> http://www.contourdesign.com/shuttlepro/
[04:07:02] <Jymmm> $110 ?!
[04:07:04] <Jymmm> you nutz!
[04:07:53] <tfmacz> never looked at price
[04:07:58] <LawrenceG> not me.... allergic to nutz
[04:08:41] <toast> that's what she said
[04:14:19] <LawrenceG> :}
[05:29:50] <Twingy> is there any plans to make the Estimated Time more accurate under the Properties menu in Axis?
[05:30:10] <Twingy> also, is there a way to display like time remaining or % complete in Axis?
[06:45:59] <Jymmm> /msf lig
[07:19:13] <Skullworks-PGAB> http://wiki.linuxcnc.org/cgi-bin/emcinfo.pl?IndexOnlyHoming
[07:20:34] <Skullworks-PGAB> someone proof that - I have not used it, just repeating described function.
[07:22:52] <lerman_> lerman_ is now known as lerman
[07:29:43] <a-l-p-h-a2> a-l-p-h-a2 is now known as a-l-p-h-a
[07:36:34] <fenn> Once homing is started the machine will move in the direction defined
[07:36:37] <fenn> ^^ defined where?
[07:37:07] <Skullworks-PGAB> good point
[07:49:05] <lerman_> lerman_ is now known as lerman
[08:10:30] <Guest728> Guest728 is now known as richarda
[08:11:56] <richarda> fenn: I assume home search velocity +/-
[08:14:07] <fenn> ya that sounds reasonable, just trying to improve skunk's documentation
[08:15:21] <richarda> ok
[08:17:12] <fenn> oh damn i always get skunk/skull confused
[08:17:28] <Jymmm> fenn: same here
[08:18:59] <Jymmm> Man Nero7, um really sucks!
[08:19:29] <fenn> why do you bother with that windows junk
[08:19:47] <Jymmm> fenn: It came with the new dvd burner I jsut installed
[08:20:06] <Jymmm> Just that Nero7 contains all this added crap on top
[08:22:05] <Jymmm> Hmmm, it has dvd overburning... that might come in handy
[08:22:34] <fenn> k3b works great for me
[08:23:51] <Jymmm> fenn: that does DVD's?
[08:24:19] <fenn> data dvd's at least, i havent tried making a movie disc
[08:26:15] <Jymmm> fenn: what about DL ?
[08:26:17] <fenn> it appears to do movies too
[08:26:21] <fenn> what's DL?
[08:26:32] <Jymmm> fenn: Dual Layer - DVD9 format
[08:34:09] <fenn> uh, "yes" because i see a bunch of distro-related bugs from 2006
[08:36:56] <Jymmm> Now to find a FW for it!!!
[08:42:01] <lerman_> lerman_ is now known as lerman
[08:52:52] <lerman_> lerman_ is now known as lerman
[08:56:48] <richarda> what's the general feeling about the writing of guides/intros for newbies?
[08:57:02] <toast> what kind of guide
[08:57:26] <richarda> would it be considered a good or useful thing?
[08:57:38] <fenn> the consensus seems to be "why didnt you read this manual we just spent a year on"
[08:57:50] <toast> well, whether or not something is good or useful
[08:57:58] <toast> is dependent on it's scope and intended purpose
[08:58:00] <toast> which is what i'm trying to ask you
[08:58:46] <fenn> on the other hand, you are highly encouraged to document anything and everything on the wiki
[08:58:48] <toast> like, are you writing an emc newbie guide?
[08:59:11] <toast> a machining guide?
[08:59:29] <toast> guide to astrology?
[08:59:37] <fenn> "practical astrology"
[08:59:47] <fenn> its not just for astrologers anymore
[08:59:54] <richarda> toast: well first off, I am a newbie
[09:00:13] <toast> aaaaaaaaaaarrrrrg
[09:00:21] <toast> what is your SUBJECT
[09:00:41] <richarda> and I spent a long time getting emc up and running
[09:00:44] <toast> what do you want to write a guide on, specifically
[09:01:00] <fenn> what did you spend the most time doing?
[09:01:19] <toast> because if you want to write a whole "newbie guide" from start to finish, i have to agree with the above comment
[09:01:22] <toast> in that "read the manual"
[09:01:32] <richarda> fenn: reading and learning
[09:01:43] <fenn> do you keep a diary/log of how much time was spent on each subject?
[09:01:55] <fenn> or can you estimate
[09:02:04] <richarda> fenn: no log
[09:02:28] <fenn> i spend 14 hours a day reading and learning
[09:03:01] <richarda> sorry, I am slow typing here
[09:03:17] <fenn> it's ok; you're a newbie right? :)
[09:03:37] <toast> i might be getting a for rizzle apprenticeship
[09:04:16] <toast> toast is now known as toastydeath
[09:04:35] <fenn> apprentice toastmaster, knight of the realm
[09:04:56] <toastydeath> indeed!
[09:05:15] <toastydeath> unless there's some ridiculous requirement for the business
[09:05:35] <fenn> there usually is
[09:05:45] <fenn> but if you dont ask, i wont tell
[09:05:52] <toastydeath> uh
[09:05:59] <toastydeath> i don't think there's a ridiculous requirement
[09:06:09] <toastydeath> whatever the hour requirement is
[09:06:20] <toastydeath> plus the classroom time, which i believe is paid for by the state now
[09:06:38] <toastydeath> then i'll have some weird card saying i'm a machinist
[09:06:41] <toastydeath> which everyone will ignore!
[09:06:43] <fenn> pfff
[09:06:55] <toastydeath> just like the college degree i'll have by then
[09:07:06] <toastydeath> associates degree
[09:07:07] <fenn> yeah you might as well go get a Lunix wingnut certification
[09:07:07] <toastydeath> bazing
[09:07:12] <toastydeath> nah
[09:07:21] <toastydeath> it allows me to go forward and get into a tool and die apprenticeship
[09:07:52] <toastydeath> that's my plan, in two phases - associates degree + journeyman machinist
[09:07:59] <toastydeath> then batchelor's degree and tool and die journeyman
[09:08:01] <toastydeath> hopefully.
[09:08:08] <fenn> what are the degrees for?
[09:08:26] <Jymmm> *I* find the that "user guide" is NOT complete in itself to go from scratch to finish. Especially for stepper usage.
[09:08:30] <toastydeath> mechanical engineering, hopefully
[09:08:35] <archivist> designing tool and die?
[09:08:46] <toastydeath> with a very hevay emphasis on dimensional metrology
[09:08:53] <toastydeath> i want to go into ultraprecision machining
[09:09:09] <fenn> that book is a good start
[09:09:11] <fenn> moore
[09:09:16] <toastydeath> yar
[09:09:20] <toastydeath> we have a small library at work
[09:09:35] <toastydeath> and apparently one of the owners of the company is friends with the Moore family
[09:10:11] <toastydeath> so they have a ton of their books
[09:10:32] <toastydeath> i'll have to get my own copies though =(
[09:11:38] <fenn> btw i recommend reading this from start to finish http://yarchive.net/metal/
[09:12:05] <fenn> so you dont come out of school knowing nothing
[09:12:10] <toastydeath> well
[09:12:13] <toastydeath> i kind of work as a machinist right now
[09:12:47] <toastydeath> so that's where the majority of my knowledge is coming from at the moment
[09:13:02] <fenn> how do you like your job?
[09:13:05] <toastydeath> but i'm going to look through that, it looks like there's some weird stuff in there
[09:13:10] <Jymmm> toastydeath: hitting a nail into a piece of lumber is NOT a machinst =)
[09:13:23] <toastydeath> great, they've put me in the one-off / prototype section
[09:13:36] <toastydeath> it's stressful though
[09:14:07] <Jymmm> toastydeath: That's sound a LOT better than on the production line. get to learn/try new things
[09:14:18] <toastydeath> i've been on the production line too
[09:14:23] <toastydeath> as a setup dood
[09:14:24] <toastydeath> and minor programming
[09:14:30] <toastydeath> pressing buttons in between
[09:14:40] <toastydeath> it's a lot more interesting than the line is
[09:14:50] <Jymmm> I've been pressing buttons for 25+ years, enough is enough
[09:14:55] <toastydeath> haha.
[09:15:14] <toastydeath> yeah the biggest "production" run i see is like, four parts
[09:15:16] <Jymmm> toastydeath: I mean as TechSup/Admin
[09:15:21] <toastydeath> yeah, i got you
[09:15:25] <toastydeath> =)
[09:15:29] <toastydeath> IT is thankless
[09:15:36] <toastydeath> AS YOU SEEM TO BE WELL AWARE =)
[09:15:48] <fenn> wow jymmm i thought you were younger
[09:15:52] <toastydeath> but they've purposely put me in way over my head
[09:16:00] <Jymmm> That's why I HATE it. I work in a DC because it's an easy job
[09:16:10] <toastydeath> but i've got a ton of toolmakers looking over my shoulder to help get me through the day
[09:16:24] <toastydeath> still scrap a lot of stuff though
[09:16:29] <Jymmm> obscene bandwidth, watch movies, fsckoff on IRC
[09:16:48] <toastydeath> hahah
[09:16:54] <toastydeath> a+ irc.
[09:17:04] <Jymmm> all with the boss'es blessings
[09:17:27] <Jymmm> Hell if I was a gamer, I could be playing WOW with the boss watching.
[09:18:23] <toastydeath> sounds very stimulating =/
[09:18:49] <toastydeath> but i must go to bed
[09:18:52] <toastydeath> goodnight sirs
[09:18:55] <Jymmm> It would get boring around here if it wasn't for the media server one of the admins runs personally.
[09:18:59] <toastydeath> also ty fenn for the linc
[09:19:02] <fenn> * fenn tips his cap
[09:19:02] <toastydeath> *link
[09:25:17] <Jymmm> oh hawt damn.... fw to enable lightscribe (I've always wanted to try it out)
[10:31:22] <lerneaen_hydra> would this: http://www.analog.com/en/prod/0,,761_797_AD5220%2C00.html be easy to interface with EMC as a spindle-control-element?
[10:31:43] <lerneaen_hydra> ie replace the potentiometer found on mills controlling the spindle with one of those
[10:32:12] <lerneaen_hydra> and have some type of sensor on the spindle head that detects the speed, akin to what xemet had yesterday
[10:32:39] <fenn> yep thats the idea
[10:34:15] <fenn> i imagine trying to do any kind of closed-loop speed control would be frustrating though
[10:34:29] <lerneaen_hydra> how so?
[10:36:30] <fenn> * fenn shrugs helplessly
[10:36:56] <lerneaen_hydra> what would make it more difficult than setting up a servo for an axis?
[10:37:10] <archivist> 128 sounds a bit too digital
[10:37:17] <archivist> 128 bit
[10:37:24] <fenn> its not 128 bit
[10:37:29] <lerneaen_hydra> there are ones up to 1024 step resolution
[10:37:31] <fenn> its 7 bit
[10:38:10] <archivist> slip of the tongue yes
[10:38:53] <fenn> lerneaen_hydra: i guess most speed controls i've encountered are exceedingly cheap and i'd expect them to break if used in a manner other than the manufacturer intended
[10:39:21] <lerneaen_hydra> fenn: oh, you mean the one usually already in the mill?
[10:39:34] <fenn> ya
[10:39:57] <lerneaen_hydra> I don't see how it would be used in a different manner, the component emulates the potentiometer used to set speed transparently
[10:40:19] <fenn> yes but you will be cranking the speed up and down a lot, like several orders of magnitude faster and more often
[10:40:37] <lerneaen_hydra> that is true
[10:40:50] <lerneaen_hydra> you could have an open-loop system instead
[10:41:05] <fenn> yeah but what's the fun in that :P
[10:41:12] <lerneaen_hydra> and trust the built in controller to regulate
[10:41:11] <lerneaen_hydra> :p
[10:42:06] <fenn> controlling a speed regulator sounds like driving a car with antilock brakes
[10:42:19] <fenn> and trying to do rally racing with it
[10:43:47] <lerneaen_hydra> heh, true
[10:43:59] <lerneaen_hydra> open loop wouldn't be as ugly
[10:44:17] <lerneaen_hydra> you could have closed loop but with very weak I and P
[10:44:23] <lerneaen_hydra> just to autocalibrate
[11:18:22] <jepler> LawrenceG: my experience with a device identified as "Contour Design ShuttleXpress" on linux with hal_input can only be described as "bad". http://www.mail-archive.com/emc-users@lists.sourceforge.net/msg02091.html
[11:56:46] <jepler> http://axis.unpy.net/01185276001
[11:56:47] <jepler> bbl
[12:26:52] <lerneaen_hydra> jepler: oh, nice buffer overflow there
[12:29:52] <lerneaen_hydra> jepler: do you only have 1000 stepper speeds between 1khz and 300khz?
[12:30:03] <lerneaen_hydra> are there too few logical elements?
[12:31:26] <jepler> lerneaen_hydra: yeah that's exactly the problem
[12:31:47] <lerneaen_hydra> nasty
[12:31:56] <lerneaen_hydra> and there's no easy way to remedy that
[12:32:12] <lerneaen_hydra> other than the logarithmic distribution you were talking about?
[12:33:29] <lerneaen_hydra> if you have a log distribution it could get nasty at high speeds, say at high speeds you need to step from 250k to 300k, that's a lot of applied accel, easy to miss steps
[12:33:50] <jepler> lerneaen_hydra: it's not exactly a log distribution I am thinking about
[12:33:59] <lerneaen_hydra> especially as the energy needed to move the table's mass is proportional to the square of the speed
[12:35:03] <jepler> lerneaen_hydra: the position and velocity are stored as "fixed-point" binary numbers. Right now, the implied division between the whole part of the number and the fractional is fixed at a particular position (the 11th bit if I recall correctly)
[12:35:54] <jepler> lerneaen_hydra: by changing which bit is the "ones bit", the range of step rates gets doubled or halved
[12:36:04] <jepler> this scaling would be set by a HAL parameter and not change while running
[12:36:12] <lerneaen_hydra> oh so it's not a floating point-type style, with a mantissa and exponent
[12:36:16] <jepler> no not at all
[12:36:40] <lerneaen_hydra> would that not be implementable wrt to the limited logic gates?
[12:37:18] <jepler> I *think* the cost would be much smaller than adding bits to all the registers but I won't know for sure until I try implementing it
[12:37:51] <lerneaen_hydra> adding bits? you mean increasing the length of the velocity/position bits?
[12:38:44] <jepler> right
[12:39:21] <lerneaen_hydra> so the pluto takes in a desired destination position in some format and a speed to get there?
[12:39:59] <jepler> it takes a velocity and reports a position. details here: http://cvs.linuxcnc.org/cvs/emc2/src/hal/drivers/pluto_step_firmware/register-layout.txt?rev=1.1
[12:40:04] <lerneaen_hydra> and if say feed is lowered then a new velocity word is send, and if the program is aborted the (nearly) current position is sent?
[12:40:35] <lerneaen_hydra> oh, so it's not only one direction (PC->pluto)
[12:40:40] <jepler> nope, bidirectional
[12:41:12] <lerneaen_hydra> ah, that's quite a clever setup
[12:41:25] <lerneaen_hydra> minimum of intelligence needed for the pluto
[12:41:59] <jepler> I have to confess, I am following in the footsteps of smarter people than me -- jon elson and john kasunich
[12:42:40] <lerneaen_hydra> all the pluto needs to do is read a velocity and run the motor at that speed, and report where it is
[12:42:52] <lerneaen_hydra> the position, is it absolute or relative to some previous position?
[12:43:25] <lerneaen_hydra> have they made a similar system earlier?
[12:43:36] <jepler> it's absolute but wraps around quite quickly
[12:43:42] <lerneaen_hydra> oh ok
[12:45:44] <jepler> jon elson's "universal step controller" also uses a system where velocity is sent and position is retrieved: http://pico-systems.com/univstep_regs.html (when running steppers with that board, "encoder N" actually means "position of stepper N", because those counters are internally clocked with the output from the step generators, not from external quadrature signals)
[12:46:39] <jepler> I used jmkasunich's software stepgen ideas (though not source code because they're in different languages) as the basis for the pluto step generator
[12:47:08] <jepler> so, basically, none of it is original -- all I did was pick which corners to cut for this particular implementation
[12:47:27] <maddash> G-code woes: "G3X-1.213Y1.392I.268J.344" keeps giving me some arc radius error. can anyone else confirm this?
[12:47:54] <maddash> erm, sorry -- the two lines are:
[12:48:09] <maddash> N55X-1.045Y1.735F100
[12:48:09] <maddash> N60G3X-1.213Y1.392I.268J.344
[12:48:18] <lerneaen_hydra> jepler: which language is the pluto implementation done in?
[12:48:21] <maddash> verilog
[12:48:28] <jepler> lerneaen_hydra: yes, verilog
[12:48:56] <skunkworks> logger_emc: bookmark
[12:48:56] <skunkworks> Just this once .. here's the log: http://www.linuxcnc.org/irc/irc.freenode.net:6667/emc/2007-07-24.txt
[12:49:27] <jepler> maddash: TRUNK reports the folowing:
[12:49:27] <jepler> emc/task/emctask.cc 312: interp_error: Radius to end of arc differs from radius to start: start=(X-1.0450,Y1.7350) center=(X-0.7770,Y2.0790) end=(X-1.2130,Y1.3920) r1=0.4361 r2=0.8137
[12:50:04] <maddash> meh, how'd you get the useful error message? was this implemented after 2.1.6 was released?
[12:50:10] <jepler> maddash: yes, it's only in TRUNK
[12:50:21] <jepler> maddash: I got annoyed at the crappy arc error message one too many times so I improved it
[12:50:27] <maddash> :)
[12:50:49] <lerneaen_hydra> nice, is it printed to the error window that pops up?
[12:52:50] <jepler> lerneaen_hydra: yes
[12:53:14] <skunkworks> jepler: only issue I see with setting the max speed is different input scales for each axis IE 1000 for x and y and 10000 for z.
[12:57:31] <jepler> skunkworks: yeah
[12:58:40] <skunkworks> jepler: does encoder+pwm take up less space then an axis stepgen?
[13:01:30] <alex_joni> skunkworks: I'd expect quite less
[13:01:48] <alex_joni> but it depends how smart the stepgen is.. (clamps max vel, max accel or not..)
[13:02:03] <skunkworks> Then maybe 3 axis + encoder/pwm. then increase the stepgen resolution?
[13:02:12] <skunkworks> maybe :)
[13:02:18] <skunkworks> morning alex
[13:02:41] <skunkworks> * skunkworks thinks not too many people have more than 3 axis.
[13:02:56] <skunkworks> cradek is the odd man out ;)
[13:03:45] <jepler> yeah i've considered a 3+1 setup too
[13:04:03] <jepler> bbl
[13:06:02] <maddash> fuuck
[13:06:23] <maddash> i .2680 j .3440 really means i .268 j -.344
[13:09:48] <maddash> [sigh]
[13:14:30] <Dallur> hmm
[13:34:47] <cradek> ?
[13:35:15] <jepler> I wonder how maddash concluded that
[13:36:02] <cradek> can an athiest rightfully say "god only knows"?
[13:36:13] <fenn> yes
[13:36:24] <cradek> how about an atheist?
[13:36:43] <jepler> hm -- it turns out that changing his gcode to ... j-.344 does give an arc
[13:36:48] <fenn> you'll ahve to ask athiestdragon
[13:37:13] <cradek> oh maybe he's complaining about whatever is generating his gcode
[13:37:26] <jepler> that could be
[13:37:42] <cradek> that's comforting actually
[13:41:29] <cradek> skunkworks: with only 3 axes you can't properly play daisy
[13:41:40] <skunkworks> How come fenn thinks he can just show up - like nothing happened. Does he know how much we worried about him?
[13:42:44] <skunkworks> Just disappeared for months. No word..
[13:46:07] <fenn> * fenn grovels at your feet for forgiveness
[13:46:19] <skunkworks> ;)
[13:46:36] <fenn> um, well, i guess that means i'm back
[13:47:12] <fenn> was spending too much time on irc and this guy wouldnt leave me alone
[13:47:42] <skunkworks> was it me
[13:47:47] <fenn> no
[13:48:20] <skunkworks> thats good :)
[13:51:43] <fenn> dinner time?
[13:52:31] <skunkworks> so far - I don't have any stalkers.
[13:52:37] <fenn> it's dinner because i say it is.. just got off work and ready to party!
[13:53:09] <fenn> oh this virtual office stuff is rough
[13:53:50] <jepler> skunkworks: no, you just stalk me
[13:54:34] <fenn> it doesnt count unless they /msg you more than once a day
[13:55:34] <skunkworks> * skunkworks blushes.
[13:56:32] <skunkworks> jepler: atleast I send you gifts... oh - I see what you mean.
[13:57:21] <skunkworks> I can /msg people? cool. ;)
[14:06:25] <lerneaen_hydra> oh noes, jepler what have you done
[14:12:25] <CIA-8> 03jepler 07TRUNK * 10emc2/docs/src/hal/comp.lyx: fix dashes in --install
[14:13:39] <CIA-8> 03jepler 07TRUNK * 10emc2/docs/src/hal/ (pluto_step_waveform.eps pluto_step_waveform.dxf):
[14:13:39] <CIA-8> correct timing diagram and add conversion to eps. Converted to postscript in
[14:13:39] <CIA-8> qcad by "print", A3 paper, to pluto_step_waveform.ps then "ps2epis
[14:13:39] <CIA-8> pluto_step_waveform.ps pluto_step_waveform.eps". Unfortunately, this cannot be
[14:13:39] <CIA-8> automated.
[14:14:15] <fenn> i wanna make a qcad clone in cairo
[14:14:31] <fenn> one that doesnt crash randomly
[14:15:25] <jepler> sigh, there's a commandline converter that is not packaged for ubuntu and it needs an X server anyway .. http://www.qcad.org/vec2web_doc_faq.html
[14:15:31] <jepler> fenn: yes please let me know when you've written it
[14:15:50] <fenn> well, without the native dxf format
[14:16:09] <fenn> i just like the way snapping works
[14:17:45] <jepler> I haven't had qcad crash much -- the bug I run into the most seems to be that it randomly duplicates labels
[14:18:06] <jepler> but it is a hassle to use
[14:18:10] <fenn> i think the crashing is related to inserting a "module" which is like an instance of a drawing
[14:20:39] <jepler> I haven't ever done that
[14:25:17] <Vq^> fenn: i've had similar thoughts
[14:30:03] <Vq^> fenn: i've been using cairo to visualize some things when i played with my library for handling solid 2d shapes
[14:33:28] <skunkworks> fenn: there is a #cam channel now where they are working on aptos(sp) and trying to make something user frendly. http://wiki.linuxcnc.org/cgi-bin/emcinfo.pl?AptProgrammingForEMC
[14:33:56] <fenn> ya apt kinda sucks really
[14:34:06] <fenn> you might as well write postscript by hand
[14:35:00] <archivist> hehe been there done that 15 years ago, a postscript smith chart
[14:37:00] <jepler> that reminds me I need to get back to finishing the FROTH language--I can't quite figure out how subroutine calls can work. (FROTH is just like FORTH except that the storage is a FIFO instead of a stack)
[14:38:10] <fenn> FROTH - for RABID (rapid application brainfuck in development)
[14:38:36] <Vq^> http://arda.no-ip.org/shapetest.png <- bad shot from my g-code generator
[14:39:49] <fenn> how come everything's nice and black background but the thing you're working on?
[14:40:10] <SWPadnos> duh - it's so you can tell what you're working on!
[14:40:36] <fenn> but wat if i'm working on ten things at once?
[14:40:43] <Vq^> bad colour choice in the application i guess :)
[14:40:46] <SWPadnos> impossible
[14:40:55] <fenn> * fenn barks in all directions
[14:41:23] <anonimasu> fenn: as long as you dont bite that's ok..
[14:41:27] <anonimasu> my pet dog is no better either..
[14:41:28] <anonimasu> :p
[14:44:34] <jepler> haha http://www.wellingtongrey.net/miscellanea/archive/2007-05-27--the-truth-about-wireless-devices.html
[14:45:29] <anonimasu> haha
[14:45:40] <lerneaen_hydra> haha :D sweet
[14:45:50] <anonimasu> yeah and true
[14:45:53] <lerneaen_hydra> almost XKCD
[14:46:01] <anonimasu> http://www.wellingtongrey.net/miscellanea/archive/2007-06-03--this-modern-life.html
[14:46:28] <fenn> ugh
[14:47:29] <lerneaen_hydra> http://www.wellingtongrey.net/miscellanea/archive/2007-06-10--the-new-physics.html
[15:08:11] <cradek> jepler: that one is really great
[15:14:27] <skunkworks> cradek: I am touched.. thank you.
[15:20:38] <SWPadnos> look out - he may want you to be the new release manager ;)
[15:20:56] <skunkworks> that would be scary ;)
[15:21:01] <SWPadnos> yes
[15:21:03] <SWPadnos> err - no
[15:21:07] <SWPadnos> :)
[15:22:12] <fenn> lerneaen_hydra: it really is scary http://www.wellingtongrey.net/articles/archive/2007-06-07--open-letter-aqa.html
[15:22:29] <lerneaen_hydra> fenn: yeah I saw that...
[15:34:30] <xemet> hello
[15:34:37] <Vq^> hello mr Xemet
[15:36:05] <xemet> cradek are you there?
[15:37:43] <cradek> yes
[15:38:08] <xemet> just to say I've got the PID working very well
[15:38:18] <cradek> that's great
[15:38:19] <xemet> I wrote a small component using comp
[15:38:42] <xemet> it calculates the time beetwen one pulse and the successive
[15:38:59] <xemet> and calculates velocity using this time
[15:39:18] <xemet> so I used this component to calculate velocity instead of the counter
[15:39:34] <jepler> you are using emc 2.1 as a base?
[15:39:40] <xemet> 2.1.6
[15:39:43] <skunkworks> xemet: this is for spindle speed control?
[15:39:47] <xemet> yes
[15:39:50] <skunkworks> nice
[15:40:11] <xemet> the spindle only has two puse per rotation
[15:40:42] <xemet> so at low speed using counter there was a problem because I had to use a thread with a low freqeuncy
[15:41:04] <xemet> if not, some time the velocity was 0
[15:41:20] <jepler> xemet: in CVS TRUNK the encoder component has been improved to use a method similar to the one you are now using, so someday your component might become unnecessary.
[15:41:22] <xemet> and also using a low frequency thread the velocity was always unstable
[15:41:36] <jepler> xemet: but for now, a custom component is the only alternative if you're using 2.1.
[15:41:37] <xemet> jepler: I hope so!
[15:42:02] <xemet> I think your component will be much better than the one written by me :)!
[15:42:33] <jepler> it's written by jmkasunich_ -- he sure knows his stuff
[15:42:33] <xemet> however, using this component I have a very stable velocity reaing
[15:42:39] <xemet> reading
[15:42:51] <jepler> I'm glad
[15:43:01] <xemet> and now I've increased the Pgain to 15, when yesterday I had it to 2
[15:43:23] <Vq^> fenn: yeah, that was very scary
[15:43:41] <xemet> yesterday i tried with Pgain 3 and it did oscillate
[15:44:11] <xemet> now with increased Pgain I've a very good response and the torque is very good also at low speed
[15:45:49] <xemet> also now I can run the pid cycle faster (500000 ns vs 50000000 yesterday!)
[15:46:11] <jepler> xemet: are there some details about the spindle control hardware on your website yet?
[15:46:19] <xemet> still not
[15:46:26] <xemet> but I will put something
[15:47:16] <steve_stallings> steve_stallings is now known as steves_logging
[15:47:32] <xemet> this is a picture of the PWM control I built: http://imagebin.org/9497
[15:47:56] <xemet> I'm not expert in electronics so I built it with advices from a forum
[15:48:19] <xemet> Probably it can be improved a lot...but it works
[15:48:23] <skunkworks> cool - single direction I take it?
[15:48:37] <xemet> yes I think so...:)
[15:48:36] <skunkworks> are you running pwm out of the printer port?
[15:48:41] <xemet> yes
[15:48:43] <xemet> pin 17
[15:48:52] <skunkworks> I love it. :)
[15:48:52] <xemet> and feedback on pin 13
[15:49:05] <jepler> is it to create an analog control voltage for the actual spindle driver, or is it a driver as well?
[15:49:17] <xemet> it is a driver
[15:49:25] <skunkworks> single mosfet?
[15:49:28] <xemet> the motor is 220V
[15:49:29] <xemet> yes
[15:50:27] <xemet> this was the first scheme: http://imagebin.org/9498
[15:51:10] <xemet> the final control has only a transistor because the phocoupler cannot be drive directly by the parallel port
[15:52:01] <xemet> so there is a power supply of 5V taken from USB port that power the photocoupler and the parallel port signal goes to the transistor
[15:52:34] <jepler> xemet: so it's a 5V mosfet as well?
[15:53:06] <xemet> uhm not...
[15:53:20] <xemet> the 5V serve only for the photocoupler
[15:53:29] <xemet> The motor is 220V
[15:53:58] <skunkworks> what supplies the cmos?
[15:54:05] <jepler> I mean the gate voltage of the mosfet
[15:54:22] <xemet> ah ok there is a 12-15V derived from the 220V for the mosfet
[15:54:28] <skunkworks> ah - nice
[15:54:44] <skunkworks> with the zener.
[15:54:48] <xemet> yes
[15:55:08] <xemet> sorry but as said...I'm not very expert
[15:55:17] <xemet> people explained me how to do that
[15:55:51] <skunkworks> so - right now there is no opto-isolation? or are you saying that the transister is what drives the opto.. (led)
[15:55:58] <xemet> there is the zener, a capacitor and a couple of 5W resistor do derive the 12V from the 220
[15:56:18] <xemet> in the scheme the transistor is missing
[15:56:32] <jepler> skunkworks: if I understand right there is isolation -- the 5V goes on the PC side only, the 220V and 12V go on the motor side only
[15:56:36] <skunkworks> but the transister is between the printer port and the opto?
[15:56:40] <xemet> at the beginning I had the optocpupler directly connected to the parallel port
[15:56:49] <skunkworks> ah - cool
[15:56:56] <xemet> but it worked with some parallel ports
[15:56:57] <skunkworks> simple but effective.
[15:57:01] <xemet> and not with othes
[15:57:16] <xemet> so I added the transistor beetween the opto and the parallel port
[15:57:30] <skunkworks> does the mosfet get warm?
[15:57:32] <xemet> the opto is powered using 5V from USB
[15:57:39] <skunkworks> makes sense now
[15:58:14] <xemet> absolutely not...the mosfet is 8A, and the motor is about about 0.5A...
[16:00:11] <xemet> maybe with a bigger motor it could became warm...
[16:00:56] <jepler> yeah, 1/8HP is a pretty small spindle motor by most people's standards
[16:01:23] <maddash> is there a doc on how t1/m6 codes are supposed to be used?
[16:01:30] <xemet> yes
[16:01:56] <xemet> it is a VERY small spindle motor!
[16:02:30] <cradek> issue Tx to perpare a tool, and M6 to change to it
[16:02:38] <cradek> M6 without a previous prep (T) is an error
[16:03:02] <cradek> (I'm sure that's in the NGC spec but I'm too lazy to find a link for you)
[16:03:35] <jepler> maddash: http://linuxcnc.org/docs/2.1/html/gcode/main/#sub:M6:-Tool-Change http://linuxcnc.org/docs/2.1/html/gcode/main/#sub:T:-Select-Tool http://linuxcnc.org/docs/2.1/html/config/ini_config/index.html#sub:_EMCIO_-Section http://linuxcnc.org/docs/2.1/html/config/emc2hal/index.html (scroll down to 'iocontrol') ... and probably more
[16:03:38] <xemet> but the circuit was created for my very small milling machine...also the dimension of the circuit is based on the original dimension of the original regulation circuit (with potentiometer...) in order to be fitted where the original one was
[16:04:06] <maddash> jepler: whoa. thanks.
[16:06:26] <xemet> are you interested in putting a link on the italian linuxcnc.org to a liveCD in italian?
[16:07:21] <CIA-8> 03jepler 07TRUNK * 10emc2/src/hal/drivers/pluto_step.comp:
[16:07:21] <CIA-8> * cap steplen and dirtime and issue an error if this is done
[16:07:21] <CIA-8> * issue an error if maxvel is capped from a value other than the default 1e30
[16:07:42] <jepler> xemet: I don't see why not
[16:07:57] <jepler> xemet: It might also be possible to host the .iso on linuxcnc.org
[16:09:20] <xemet> oh the iso is in the university server
[16:09:30] <maddash> brb.
[16:09:38] <xemet> it is liveCD with EMC2 2.1.5
[16:09:48] <xemet> we have still to upgrade the iso to 2.1.6
[16:09:57] <xemet> http://learning.dtpm.unipa.it/emc/emc.html
[16:10:18] <xemet> tested, a lot of people used and installed it
[16:13:10] <jepler> xemet: I added a link to it from the wiki; someone who can edit the italian pages on the joomla website should add it there as well
[16:13:54] <xemet> I think alex
[16:17:09] <xemet> thank you, I will update the wiki when we create the new iso with the 2.1.6
[16:17:42] <xemet> now I've to go
[16:17:48] <xemet> thank you all
[16:20:52] <toastydeath> pre pre pre
[16:20:53] <toastydeath> er
[16:20:54] <toastydeath> pew pew pew
[16:20:56] <toastydeath> lasers!
[16:24:48] <anonimasu> ^_^
[16:33:11] <lerneaen_hydra> n sharks!
[16:34:37] <toastydeath> pew pew pew
[16:34:36] <toastydeath> raar
[17:02:04] <maddash> in my tool file, i've set the tool length of POC #1 to 1.2. also, in my ini file, TOOL_CHANGE_POS Is unset. I issue a t1m6 in AXIS, but the z-coordinate remains unchanged -- should EMC automatically shift z to -1.2 to offset the tool?
[17:02:15] <maddash> s/offset/compensate for/
[17:03:22] <awallin> I think you need to turn on length compensation
[17:03:35] <awallin> and then the next move issued will reflect the new offset
[17:04:09] <maddash> how do I explicitly turn it on?
[17:04:51] <maddash> nvm -- H code
[17:05:19] <awallin> G43H1
[17:05:32] <awallin> then try a move G0z0
[17:05:54] <awallin> then look at machine coordinates vs part coordinates
[17:06:09] <maddash> so what's the point of 't1' to begin with? why not issue 'm6 g43h1' in place of 't1m6'?
[17:06:33] <maddash> because g43h1 also works without a preceding t1
[17:07:15] <awallin> maybe some tools can be used with different length-offsets?
[17:07:26] <awallin> or with no length offset at all
[17:09:33] <SWPadnos> Txx only issues a "tool prep" command, so you can move an ATC to the right spot before the tool is needed
[17:10:42] <SWPadnos> the NGC spec specifically states that a new tool will not result in a change to Z position due to tool length compensation - you need to make a Z move to compensate for the new length
[17:11:01] <SWPadnos> I don't know if EMC currently honors this, since it's a silly spec in many cases
[17:12:50] <toastydeath> i would argue you don't want the machine moving of it's own accord
[17:13:12] <SWPadnos> an ATC implies that the machine moves of its own accord in most cases
[17:13:14] <toastydeath> and that a Z move makes sense
[17:13:29] <toastydeath> well there's the ATC moving
[17:13:33] <toastydeath> and then there's the toolchange itself
[17:13:33] <SWPadnos> also, if you switch to a longer tool, you'll have a problem if the machine doesn't account for it
[17:14:03] <SWPadnos> not all ATC implementaions can operate at any table position
[17:14:17] <toastydeath> what i'm saying is re: T01
[17:14:35] <toastydeath> that many toolchangers will begin moving as soon as you issue the command
[17:14:39] <SWPadnos> sure
[17:14:40] <toastydeath> so that the tool is ready to swap
[17:14:53] <SWPadnos> right. it's the M6 that gets you ERT length comp :)
[17:14:56] <SWPadnos> s/ERT/WRT/
[17:15:07] <toastydeath> wrt?
[17:15:30] <SWPadnos> with respect to
[17:16:24] <toastydeath> like, i'm a bit confused as to the whole needing to move for a m6
[17:16:49] <toastydeath> the m6 should move the machine to the toolchange position, if there is one, and then swap the tool
[17:16:55] <SWPadnos> if your tool changer has a bunch of pockets in an array, you'd need to move X+Y to change tools
[17:17:01] <SWPadnos> sure
[17:17:15] <toastydeath> you should need to know where each tool pocket is
[17:17:17] <toastydeath> as the operator
[17:17:47] <toastydeath> or am i missing something here
[17:17:49] <SWPadnos> how the change is accomplished is irrelevant to the too length comp. discussion though
[17:18:05] <toastydeath> how so?
[17:18:17] <maddash> [sigh]
[17:18:21] <toastydeath> wait
[17:18:24] <toastydeath> that was not what i meant to ask
[17:18:28] <SWPadnos> heh
[17:18:28] <maddash> so, t1m6, then g43h1?
[17:18:40] <maddash> and what is this 'atc'?
[17:18:44] <awallin> it's probably up to the integrator to code stuff in HAL that responds to the tool-prep and tool-change etc. pins from motion control
[17:18:48] <maddash> all-terrain vehicle?
[17:18:48] <toastydeath> atc - automatic tool changer
[17:19:07] <maddash> :( brb
[17:19:32] <toastydeath> for all the controls I've used, they required a Z move
[17:19:39] <toastydeath> for a g43/44
[17:20:10] <toastydeath> but that was usually not an issue because the tool was way up in the sky and you had to Z down to the part anyway
[17:20:56] <toastydeath> which, mind you, is limited to haas, fanuc, and some weird mitsubishi thing
[17:21:03] <awallin> you mean a Z-move was needed on the same g-code line as the g43? like g43h1g0z100
[17:21:07] <toastydeath> no
[17:21:21] <toastydeath> when you issue the g43, the tool doesn't move at all
[17:21:31] <awallin> yep. I think that is how emc works too
[17:21:42] <toastydeath> the offset is incorporated into the next move you make that uses the Z axis
[17:21:54] <SWPadnos> that's how EMC is expected to work
[17:21:58] <toastydeath> cool!
[17:22:08] <SWPadnos> by the spec - as I said, I'm not sure if the implementation has deviated from that spec
[17:22:17] <toastydeath> now i get what you are saying.
[17:22:22] <toastydeath> ty.
[17:22:52] <SWPadnos> the problem cases are where the tool isn't "somewhere in the sky" when a toolchange is requested
[17:23:05] <SWPadnos> and you switch to a longer tool, and Z hasn't changed ...
[17:23:34] <SWPadnos> though I'm seeing now that that would fall under "programmer stupidity", so I'm not worried about it any more :)
[17:23:49] <toastydeath> well like, for something where the tool isn't in the sky
[17:24:02] <toastydeath> you still need to do a full Z retract to get the tool to clear
[17:24:49] <toastydeath> because the length offset may not represent the actual length of the tool
[17:25:03] <toastydeath> but rather, the cutting face or operating depth of a tool that is much longer
[17:25:34] <SWPadnos> the thing is, when the M6 is finished, the machine is not at toolchange position, it's supposed to be back where the M6 was encountered
[17:25:48] <SWPadnos> but without having accounted for the new length ...
[17:25:49] <toastydeath> what?
[17:25:59] <toastydeath> no machine i have used has done that
[17:26:00] <SWPadnos> I think that's what the spec says
[17:26:09] <toastydeath> it always sits at the toolchange position
[17:26:15] <SWPadnos> but I can't look into it, since I have to go to a meeting now :)
[17:26:17] <toastydeath> and waits for you to manuever it back home
[17:26:28] <toastydeath> (home being the part, not actual home)
[17:26:33] <toastydeath> good luck sir!
[17:27:14] <toastydeath> that's another one of those "unexpected motion" things
[17:28:47] <robh> hi all
[17:29:04] <awallin> hi robh
[17:30:09] <robh> woops pressed wrong button
[17:30:47] <robh> getting hal error pin 'axis.2.motor-pos-cmd' not found
[17:31:27] <awallin> when starting emc?
[17:31:32] <robh> yes
[17:32:12] <robh> this is what i have in hal linksp Zpos-cmd <= axis.2.motor-pos-cmd
[17:33:13] <maddash> robh: I think you need motmod loaded
[17:33:34] <maddash> robh: so, `hal show comps|grep motmod`
[17:35:03] <robh> how do i tell it to load it?
[17:35:45] <awallin> motmod should be loaded by emc
[17:36:03] <awallin> in which HAL file do you have this?
[17:37:54] <robh> http://innovative-rc.co.uk/EMC/orac-lathe.hal
[17:37:55] <awallin> in the latest manual there is something about axis.N.joint-pos-cmd
[17:38:40] <awallin> num_joints=[TRAJ]AXES
[17:38:42] <JymmmEMC> awallin: http://www.google.com/search?hl=en&client=firefox&rls=org.mozilla%3Aen-US%3Aunofficial&hs=BW3&q=axis.N.joint-pos-cmd+site%3Alinuxcnc.org&btnG=Search
[17:39:04] <awallin> so look in your ini file in the [TRAJ] section and see how many AXES you have
[17:39:21] <awallin> if it's a generic lathe config that you have started with the number of axes might be 2
[17:39:32] <awallin> so then only axis.0 and axis.1 would exist
[17:41:22] <robh> there is 0,1,2 as i took the nist config and start from that
[17:43:02] <robh> http://innovative-rc.co.uk/EMC/lathe_mm.ini
[17:43:41] <awallin> [TRAJ] #+ machine specific settings AXES = 2 #AXES = 3
[17:43:53] <awallin> you have AXES=2
[17:44:25] <awallin> btw what are you controlling with a third axis on the lathe?
[17:44:25] <skunkworks> AXES = 2
[17:44:30] <skunkworks> oops ;)
[17:45:04] <robh> nuthink, lol but dam so simply problm lol nist lath config had the 3 and i have not brough self to take out 3rd yet
[17:45:40] <skunkworks> all the lathe configs I have seen have 3 axis - xyz. (although I don't know why) it seems to have x and z you need to keep y.
[17:46:40] <robh> im running cvs right now also
[17:46:56] <lerneaen_hydra> skunkworks: yeah afaik it was something like that
[17:47:23] <awallin> that's what hc emcers should do: always run heavy iron with newest TRUNK :)
[17:47:48] <lerneaen_hydra> anything else is for pussies
[17:47:53] <cradek> if you want Z, you have to have AXES=3 at least
[17:48:16] <awallin> cradek: that's a nice 'feature'!
[17:49:21] <cradek> AXES = 3
[17:49:21] <cradek> COORDINATES = X Z
[17:49:30] <cradek> (when in doubt check the latest sample configs)
[17:49:47] <cradek> I don't know what the point of AXES= is anymore really
[17:49:49] <cradek> this is a bit in flux
[17:49:58] <robh> when i ran it it showed Y on screen not Z
[17:50:13] <robh> in dimaiter display and rad
[17:50:54] <cradek> do you have COORDINATES=X Z and LATHE=1?
[17:51:01] <robh> yes
[17:51:18] <robh> im updating cvs now anyway
[17:51:27] <cradek> can you put your ini file on http://pasetbin.ca please
[17:51:56] <awallin> cradek: robh's ini was here http://innovative-rc.co.uk/EMC/lathe_mm.ini
[17:52:26] <robh> yep, just updated it to show axis = 3
[17:53:09] <cradek> and what does the axis screen show?
[17:53:40] <robh> ok it now shows from top to bottom, X, Dia, Z, Vel, DTG
[17:53:41] <cradek> I just updated my cvs and ran sim/lathe and I see X, Dia, Z as expected
[17:53:46] <robh> so now all is grate
[17:53:59] <cradek> excellent
[17:54:15] <robh> might been a small bug in cvs i had from night i grabed it
[17:54:17] <cradek> you can turn on/off the extras in the view menu now (they are saved)
[17:54:33] <robh> i will see if rembers G54 now as i had a problem last time with it forgeting it when u shutdown emc
[17:55:34] <robh> i like the new machine limit view you have added nice touch
[17:55:51] <cradek> thanks
[17:56:24] <cradek> G10 L2 offsets not working/saving right usually means the var file is not writable
[17:56:49] <lerneaen_hydra> cradek: limit view? got a screenshot of that?
[17:57:14] <cradek> lerneaen_hydra: it's a red dashed box that shows the travel extents
[17:57:21] <lerneaen_hydra> nice :)
[17:57:22] <cradek> on a lathe it's a square, but on a mill it's a cube
[17:57:44] <lerneaen_hydra> so you see how close you are to the edges of the working window?
[17:57:50] <cradek> yes
[17:57:59] <lerneaen_hydra> do programs refuse to run if they exceed boundaries
[17:58:09] <cradek> when offsetting the program into the working area, it's nice to see what parts are sticking out
[17:58:26] <cradek> you are prompted that they exceed limits (you can say "run anyway")
[17:58:44] <lerneaen_hydra> nice :)
[17:58:46] <cradek> ... because the limits calculations are (unfortunately) imperfect if you use tool length offset
[17:58:50] <robh> see here, took a shot for u , http://innovative-rc.co.uk/EMC/Screenshot.jpg
[17:59:06] <cradek> http://timeguy.com/cradek-files/emc/limits.png
[17:59:08] <cradek> oops I'm too slow
[17:59:09] <lerneaen_hydra> robh: cool
[17:59:41] <lerneaen_hydra> now we just need to add a simulated spindle, head, XY table ;)
[18:00:02] <robh> lol
[18:00:14] <lerneaen_hydra> cradek: are limit calculations based on the current offset, and not the offset when running another tool?
[18:00:19] <robh> take our machine files for edgecam and put into it ;)
[18:01:06] <robh> going to see if i can fix this G54 thx for quick help guys
[18:01:19] <maddash> brb
[18:01:47] <robin_z> meep?
[18:03:49] <lerneaen_hydra> robh: you use edgecam?
[18:03:53] <lerneaen_hydra> which version?
[18:06:57] <robh> checked var, it has owner r & w, group r, other r
[18:07:15] <cradek> what's the problem exactly?
[18:08:18] <robh> i do touch off, for the x and z , it shows on screen it has put it there, send it back home, then if shutdown emc and reload its put offset back to home postion
[18:09:39] <cradek> when you restart, the tool (cone) should be back at 0,0,0 but you should still see the offset (cyan origin marker at the machine origin, XYZ marker at the offset origin)
[18:10:28] <robh> yea thats what id exspect, buts it put them both back at 0, as tool marker should be, but also the marker, ill do a screenshot
[18:10:37] <cradek> g0 x0 y0 z0 should go to the offset origin (XYZ marker) and g0 g53 x0 y0 z0 should go to the machine origin (cyan)
[18:12:21] <robh> lerneaen we are using edgecam 10.5
[18:12:53] <lerneaen_hydra> robh: nice, I have an EMC post for 10.0 if you're interested
[18:13:16] <robh> is that urs on wiki
[18:13:19] <lerneaen_hydra> yeah
[18:13:32] <lerneaen_hydra> I wonder which version it is
[18:13:45] <robh> i gave it a go works grate
[18:14:07] <lerneaen_hydra> oh, it's the latest
[18:14:10] <lerneaen_hydra> should work well
[18:14:15] <lerneaen_hydra> outputs in radius mode
[18:14:36] <robh> cardek, see here please http://innovative-rc.co.uk/EMC/Screenshot-1.jpg
[18:15:51] <robh> phone, bk in 10, soz
[18:17:32] <anonimasu> lerneaen_hydra: mastercam does that for recent versions too
[18:17:53] <lerneaen_hydra> anonimasu: mastercam does what?
[18:18:06] <anonimasu> give stuff in R mode
[18:18:42] <lerneaen_hydra> oh, ok
[18:18:52] <lerneaen_hydra> isn't that something very basic?
[18:19:04] <anonimasu> yeah
[18:19:13] <anonimasu> though with emc i and j are recomended(I have no idea why)
[18:19:29] <anonimasu> it did so in the older version pre X
[18:19:38] <lerneaen_hydra> better accuracy for a given number of decimal places
[18:19:47] <cradek> IJ is a better arc format - but that's not what LH is talking about
[18:20:02] <lerneaen_hydra> cradek: what do you mean?
[18:20:24] <cradek> I think you're talking about lathe radius (X) and anonimasu is talking about arcs
[18:20:29] <cradek> R-format arcs
[18:20:44] <lerneaen_hydra> that's what I was talking about ;)
[18:20:52] <lerneaen_hydra> g2/g3 arcs
[18:20:53] <cradek> oh sorry
[18:21:05] <lerneaen_hydra> well, it would apply to radius
[18:21:06] <cradek> * cradek goes back under his rock
[18:21:07] <lerneaen_hydra> too
[18:21:16] <lerneaen_hydra> * lerneaen_hydra gives cradek a cookie
[18:21:30] <cradek> I like cookie, it's good enough for me
[18:21:43] <cradek> (hmm, not sure I remember the words to that)
[18:21:57] <skunkworks> c is for cookie
[18:22:03] <cradek> ah!
[18:22:11] <cradek> skunkworks: we're giving away our ages
[18:22:14] <lerneaen_hydra> where have I heard that...
[18:22:15] <skunkworks> :)
[18:23:09] <skunkworks> sesame street
[18:23:13] <lerneaen_hydra> ah!
[18:23:15] <lerneaen_hydra> right!
[18:23:22] <lerneaen_hydra> I thought I recognised it
[18:23:39] <skunkworks> was that when you where in the us?
[18:23:59] <lerneaen_hydra> yeah
[18:24:10] <cradek> back to the topic: IJ format arcs are better because they're more deterministic
[18:24:22] <cradek> think of doing a full circle (or very nearly full circle) with R format
[18:24:23] <lerneaen_hydra> http://video.google.com/videoplay?docid=471700154547892800&q=%22c+is+for+cookie%22&total=165&start=0&num=50&so=0&type=search&plindex=1 <-- that was a long time ago!
[18:24:37] <skunkworks> * skunkworks has never and will proably never use r format arcs.
[18:24:54] <lerneaen_hydra> r format is nice when coding by hand and doing simple stuff
[18:25:03] <cradek> they're nice for fillet arcs and stuff like that
[18:25:46] <cradek> or very large radius arcs that you don't care much about the exact curvature, but the center is hard to calculate
[18:26:22] <cradek> but cam shouldn't generate them - too many problems with certain arcs that would need special handling
[18:26:50] <lerneaen_hydra> yep
[18:26:53] <lerneaen_hydra> * lerneaen_hydra nods
[18:27:24] <lerneaen_hydra> a small change in the value for R will greatly change the position of the toolpath
[18:27:26] <CIA-8> 03jepler 07TRUNK * 10emc2/docs/src/hal/ (pluto-step-pinout.eps drivers.lyx):
[18:27:26] <CIA-8> * manually convert pluto-step-pinout.dxf into .eps
[18:27:26] <CIA-8> * add pluto-step documentation
[18:29:36] <anonimasu> ok
[18:34:24] <robh> cradek, just checked out the cvs , it stores the g54 fine, if i turn it off and on, i can move to the 54 and i knows where it should be, just on the display it puts the x,z marker backto home not on the g54 offset like it used to
[18:36:01] <cradek> the cone starts at the cyan marker and you expect it to start at the other one?
[18:36:48] <cradek> I'm still trying to understand the exact problem
[18:36:51] <robh> hmm just loaded a program it has put the z and x to right place
[18:38:14] <robh> like in here, http://innovative-rc.co.uk/EMC/Untitled-1.jpg the z,x indication for the g54 shows job home postion
[18:41:19] <cradek> ah, I think I've seen that it shows wrong before you load a program
[18:41:35] <cradek> I never see it in mill mode, because it loads a program at startup (the "splash screen" program)
[18:41:36] <robh> indeed, sorry cant think how else explane it
[18:41:48] <cradek> is it all right after you load something?
[18:42:12] <robh> yea, it shows the xz perfect, just on first boot with no program its at machine home not at its offset location if you get me
[18:42:39] <cradek> yes I understand
[18:42:41] <cradek> I'll try it
[18:43:57] <cradek> yes I get it here too
[18:44:05] <robh> still seems to put in them strange graphics paths for tool offsets but it does not travel there when run program
[18:44:38] <robin_sz> meep?
[18:44:40] <cradek> yep I get that too
[18:45:04] <robh> i just need to get feedper rev working and i can give that ago
[18:47:10] <lerneaen_hydra> robh: the current edgecam post doesn't have the feed/rev gcode done, as that wasn't implemented when I made it
[18:47:28] <lerneaen_hydra> not hard to add though
[18:47:32] <robh> for feed per rev, is it looking for the same encoder as that for the threading?
[18:47:59] <robh> no problem lerneaen, coding by hand right now any way, did ur post have screw cutting in? i cant rember
[18:48:05] <lerneaen_hydra> yes, I beleive it only looks at the index pulse
[18:48:17] <lerneaen_hydra> yeah it has support for G33
[18:48:22] <lerneaen_hydra> no canned cycle though
[18:48:35] <robh> using G76
[18:48:43] <lerneaen_hydra> support for tapered threads using G33 too
[18:49:04] <lerneaen_hydra> and the edgecam/emc pitch thing is taken care of
[18:49:26] <robh> im finding G76 is working very well here
[18:49:41] <lerneaen_hydra> ok, shouldn't be hard to add that to the post
[18:50:45] <jepler> G95 "Units per revolution" uses the motion.spindle-speed-in pin
[18:50:48] <robh> iv put in the sig for fpr, newsig motion.spindle-speed-in bit
[18:51:07] <robh> can i link the motion to the same parport pin i use for threading input?
[18:51:11] <lerneaen_hydra> jepler: how's that generated, once per servo period and using index pin?
[18:51:21] <jepler> lerneaen_hydra: it's generated however you want
[18:51:34] <lerneaen_hydra> oh so it's up to you to make it
[18:51:35] <jepler> lerneaen_hydra: in the case of pluto-lathe it comes from the velocity output of the encoder
[18:52:10] <jepler> if you don't have spindle speed feedback you could "loop back" the commanded spindle speed to spindle-speed-in and it will kinda work
[18:52:19] <jepler> (actually you have to multiply by 60 because unfortunately the output is in RPM but the input is in RPS)
[18:52:46] <lerneaen_hydra> I'm not following you here
[18:52:52] <robh> i have the encoder feedback i am using for threading, parport.0.pin-12-in
[18:53:03] <lerneaen_hydra> what does the pluto have to do with the spindle?
[18:53:13] <lerneaen_hydra> robh: don't you have two pins?
[18:53:22] <robh> i have marker yes
[18:53:33] <robh> parport.0.pin-13-in
[18:53:43] <lerneaen_hydra> oh so an index pin (once per rev) and then one with lots of holes per rev
[18:53:50] <jepler> lerneaen_hydra: I think he's operating in "counter" mode (AZ) not "encoder" mode (ABZ)
[18:53:58] <robh> yes, 48 holes
[18:54:03] <lerneaen_hydra> oh ok
[18:54:07] <lerneaen_hydra> same setup I have
[18:54:26] <robh> so im just wundering how to put this in to my hal, wiht out needing to wire up a 2nd parport pin
[18:55:12] <jepler> robh: you hook encoder.0.velocity to motion.spindle-speed-in -- it should be that simple
[18:57:17] <robh> newsig motion.spindle-speed-in bit, linkps encoder.0.velocity => motion.spindle-speed-in
[18:57:20] <robh> like that
[18:58:18] <jepler> I'm looking at http://innovative-rc.co.uk/EMC/orac-lathe.hal -- is that your hal file?
[18:58:30] <robh> yes
[18:58:43] <jepler> that is using counter rather than encoder -- you should probably switch to using encoder in counter mode. It has a better velocity estimate than counter does.
[18:59:02] <jepler> if you don't, then the 'link' line would refer to 'counter.0.velocity' instead of 'encoder.0.velocity'
[18:59:16] <robh> ok i am happy to switch to encoder
[19:00:14] <jepler> in that case, you'd change each 'counter' to 'encoder', and add 'setp encoder.0.counter-mode 1'
[19:00:37] <jepler> (that feature, counter mode of the encoder component, is kinda new so if it doesn't work let us know)
[19:01:08] <ds2> is someone working on an ORAC?
[19:01:23] <robh> yes a little orac lath
[19:01:58] <ds2> robh: what are you using as the replacement control? (going to be getting one)
[19:03:08] <robh> i pulled out try in bottom of it, this lathe, as graphics died on it, i kept the steper drives, spindle inverter as they are good and perfect working, i added in a PC inside the case so its 100% inclosed in the lathe
[19:03:36] <ds2> so a standard PC motherboard?
[19:03:47] <robh> i had all the manuals for ours so finding pins and rewiring was easy or so, and i used standard pc mb yea, using 1 parport
[19:03:57] <robh> i have some photos
[19:04:20] <ds2> how are you driving the VFD? and are you putting in extra isolatiors between the PC and the drivers?
[19:05:03] <robh> http://innovative-rc.co.uk/EMC/IMG_4964.jpg
[19:05:21] <robh> i build a opto board, as u can see on end of the stepper drives
[19:05:44] <ds2> hmmm the top comes off?
[19:06:08] <robh> its on a tray slides in bottom
[19:06:36] <ds2> Oh? where are the screws to release the tray? part of my problem is unloading this 300lb beast
[19:06:53] <robh> http://innovative-rc.co.uk/EMC/IMG_4971.jpg
[19:07:17] <robh> yes it is a heavy lump, due to transformer inverter etc
[19:07:28] <cradek> wow that looks full
[19:07:39] <robh> the screws are in bottom, and in front aloong the edge of the metal tray, if u take off the front panel and open back door u will see them
[19:07:58] <robh> no more full than it did before i refitted it :)
[19:08:09] <ds2> that's it? I saw the screws, just didn't think the entire thing slides out
[19:08:16] <robh> and with fan in back, blowing air out the case it keeps it more than coolenough
[19:08:53] <robh> ye slides out back just watch for cables etc, if u take side panel off and unplug stepers cable will come out easyer
[19:09:20] <robh> best if you can find a spare pair hands at time to unwire if needed etc :)
[19:09:28] <ds2> what about the VFD? how are you generating the +/-10V to drive it?
[19:09:44] <ds2> I am trying to unload it intact and it sounds like it is easier to remove the torrid
[19:10:26] <robh> it all comes out on that tray like i said so once out u can see how they have it wried up and start to go to work
[19:10:34] <robh> for vfd 1 sec ill find unit im using
[19:10:42] <maddash> my dad suggested that g0 moves be automatically preceded by a g0z0 move within emc, to avoid tool breakage -- can anyone tell me why this is a bad idea?
[19:11:59] <jepler> because it is only the convention of some users that "Z0" correspond to the top of the material, and because it's an impossible task to make sure that no writable gcode will break your tool
[19:12:55] <jepler> because you can correctly write a g0 move that is entirely below where the top of material was at the start of milling
[19:12:55] <robh> its like doing g28 g91, some prefer to do g91 g28
[19:13:23] <ds2> some people also make Z0 the bottom of the material
[19:13:38] <ds2> or even make Z0 an arbitrary point that corresponds to some know reference/stops
[19:13:41] <CIA-8> 03jepler 07TRUNK * 10emc2/docs/src/hal/drivers.lyx: geez lyx, if you can display it onscreen why can't you convert it to other formats?
[19:14:00] <jepler> even if you follow the convention that Z0 is the top of the material, that means the proposed move to Z=0 before any other rapid will simply scrape right over the top of the material .. not what you want either
[19:14:34] <ds2> Always do a home sequence (G23 Z0, I think)
[19:14:45] <maddash> one would usually make z0 a little above the material, right?
[19:15:19] <jepler> when milling circuit boards, I make Z0 exactly the top of copper
[19:15:30] <jepler> safety moves are to Z.01 inches or so
[19:16:15] <jepler> but the point is that the meaning any particular Z value depends on the convention of the person who wrote the gcode
[19:16:18] <cradek> I can't see any way that the machine moving automatically in ways not described by the gcode could be considered a feature
[19:16:36] <maddash> ds2: you mean, g28 instead of g23?
[19:17:05] <lerneaen_hydra> * lerneaen_hydra agrees with cradek
[19:17:22] <maddash> cradek: ditto, but my dad's forcing me to embed it
[19:17:28] <ds2> yeah, G28... my bad
[19:17:58] <robh> ds2 here u go, what i used http://homanndesigns.com/store/index.php?main_page=product_info&cPath=1&products_id=21
[19:18:34] <jepler> It's sure a good idea to make sure the tool is out of the material before you make G0 move
[19:18:41] <robh> i dont know what inverter u will have as many oracs seem to have different ones, i used one that was in mine and i can get about 1900rpm
[19:18:43] <jepler> it's a bad idea to have emc try to do this automatically, because it'll fail
[19:19:13] <ds2> * ds2 takes a lot of notes
[19:19:22] <maddash> hm, he claims that powerstation does it automatically.
[19:19:34] <ds2> robh: thanks.... lots of useful info
[19:19:36] <maddash> oh well, let me tell him about g28
[19:19:47] <maddash> jepler/cradek, thanks.
[19:20:00] <lerneaen_hydra> emc doesn't have a clue about where there's material, and in general attemping to make "smart" applications is prone to failure, moreso when they move 100kg of steel
[19:20:12] <ds2> for Z0, I was told to retract to Z0.1 before rapiding
[19:20:25] <maddash> holy shit, who moves 100kg of steel?
[19:20:30] <ds2> for top == Z0
[19:20:39] <lerneaen_hydra> a large cnc mill
[19:20:57] <maddash> not even my bridgeport series 1 can do that
[19:21:28] <lerneaen_hydra> an old mill I ran probably weighed far over that, and moved at 24000mm/min
[19:21:31] <skunkworks> just our pallet is 1 ton
[19:21:34] <lerneaen_hydra> it scares the shit out of me
[19:23:04] <maddash> lerneaen_hydra: that's 945 in/min. my old BP manual sets the limit at 120in/min.
[19:23:20] <maddash> lerneaen_hydra: Your mill is an abomination.
[19:23:35] <lerneaen_hydra> maddash: that wasn't my mill, unfortunately
[19:23:57] <lerneaen_hydra> maddash: similar to this one http://www.dreyfus.ch/modig_md7000.jpg
[19:23:58] <maddash> i wonder how the good folk at bridgeport came up with 120 in/min
[19:24:03] <lerneaen_hydra> same model actually
[19:24:28] <ds2> robh: are you in the UK?
[19:24:29] <lerneaen_hydra> 2m X travel, 80cmY, 1.2m Z or thereabout
[19:25:04] <maddash> er, is that 2 meters of freedom on the X-axis?
[19:25:16] <maddash> or a typo?
[19:25:23] <lerneaen_hydra> I think it was something like that
[19:25:26] <lerneaen_hydra> insanely large
[19:25:36] <lerneaen_hydra> might have been a bit less
[19:26:17] <lerneaen_hydra> the controller system was the real abomination though
[19:26:25] <lerneaen_hydra> very unstable
[19:26:39] <maddash> heh, DOS?
[19:26:53] <maddash> brb.
[19:27:00] <lerneaen_hydra> especially if the power died when the tool was in the spindle
[19:27:06] <lerneaen_hydra> no some embedded system
[19:27:06] <maddash> * maddash runs off to push the series I at >120ipm
[19:27:17] <lerneaen_hydra> heh good luck
[19:27:36] <JymmmEMC> Man I miss a 1-1-1 ultrasonic degreasing tank =(
[19:27:51] <lerneaen_hydra> they're nice :)
[19:28:33] <JymmmEMC> sure in the hell beats this 3 days soaking in charcoal fluid crap
[19:28:50] <lerneaen_hydra> what are you cleaning?
[19:29:01] <JymmmEMC> ballscrew and nut
[19:29:10] <lerneaen_hydra> oh, old?
[19:29:55] <JymmmEMC> no, new. just lots of grease in it, and I what it clean enough to completely inspect - especially if I have to remove the ballnut
[19:30:31] <awallin> anyone running emc right now?
[19:31:15] <robh> running it as in
[19:31:22] <awallin> there's a guy on the mailinglist who wonders if <button><height>100</height><width>200</width></button> will work in a pyvcp file
[19:31:32] <awallin> I suspect it might work but I can't test it now
[19:31:37] <jepler> I think it won't work in 2.1 but might in 2.2.
[19:31:56] <JymmmEMC> lerneaen_hydra: I found a place in LA that will let you walk-in and hand pre-load your leadscrews. Kinda expensive if you have them ship the sample kit to you.
[19:32:06] <jepler> for Tkinter buttons that show text, the size is in average-characters, not pixels, so 100x200 is an extremely large widget
[19:32:38] <lerneaen_hydra> JymmmEMC: I'm not following you
[19:33:09] <awallin> jepler: the grand idea was to use reflection or something to see which xml tags are valid for each widget, but I never got round to implementing that
[19:33:36] <JymmmEMC> lerneaen_hydra: If you take in your ballscrew/nut, you can preload it with the EXACT size balls you need in their lobby, then just pay for what you use.
[19:34:33] <JymmmEMC> lerneaen_hydra: If you want to mail-order, you have to buy a kit of various sized balls, figure out what you need, then order that size.
[19:34:49] <lerneaen_hydra> JymmmEMC: ooh, nicr
[19:35:00] <lerneaen_hydra> how long do they stay tight?
[19:35:05] <JymmmEMC> lerneaen_hydra: Yeah, very nice actually.
[19:35:19] <lerneaen_hydra> aren't most of them based on having two ball nuts that are tightened against each other?
[19:35:20] <JymmmEMC> lerneaen_hydra: fiik, I'm in SF area, LA be 400 miles south
[19:35:39] <lerneaen_hydra> don't you need a nut with a removable ball return tube?
[19:35:53] <lerneaen_hydra> that's quite a distance
[19:36:01] <lerneaen_hydra> two days for there and back?
[19:36:46] <JymmmEMC> lerneaen_hydra: OK, a pre-loaded ballnut is just the balls are hand loaded, not a pre defined ball diameter.
[19:37:03] <lerneaen_hydra> ah ok
[19:37:23] <lerneaen_hydra> what's it called when you have two that are tightended against each other?
[19:38:08] <JymmmEMC> lerneaen_hydra: so mass production might fill them with 2mm balls. Pre-loaded might fit one nut with 2.05mm, and another one with 1.95mm. All based on mfg tolerances.
[19:38:39] <lerneaen_hydra> yeah
[19:38:46] <JymmmEMC> lerneaen_hydra: Basically, pre-loaded == custom fit.
[19:39:33] <JymmmEMC> lerneaen_hydra: you buy pre-loaded to eliminate backlash
[19:39:50] <lerneaen_hydra> yeah
[19:40:44] <JymmmEMC> lerneaen_hydra: So Thompson might sell their cheapest ballnut for $60, and a preloaded one for $90 becasue of the hand loaded/fitted balls.
[19:41:05] <JymmmEMC> due to the labor involved
[19:41:20] <lerneaen_hydra> yeah
[19:41:33] <lerneaen_hydra> how long do they stay tight?
[19:41:36] <JymmmEMC> fiik
[19:41:57] <lerneaen_hydra> fiik?
[19:42:03] <JymmmEMC> fuck if i know
[19:42:09] <JymmmEMC> till you grind them down?
[19:42:15] <lerneaen_hydra> what an excelent expression
[19:42:33] <lerneaen_hydra> so it's not like they get worn/deformed after running for a while
[19:43:09] <JymmmEMC> lerneaen_hydra: You're asking the wrong person there, just what I learned what "pre loaded" meant.
[19:43:23] <lerneaen_hydra> oh, right :p
[19:44:57] <JymmmEMC> lerneaen_hydra: read this http://www.danahermotion.com/documents/index.php?product_cat_id=210#
[19:45:27] <JymmmEMC> pdf pg 4 shows it ezactly
[19:47:08] <jepler> awallin: hm in 2.1 I think you can at least set the font and this will naturally increase the button size
[19:47:17] <lerneaen_hydra> JymmmEMC: which pdf?
[19:47:28] <cradek> also, increasing the gnome dpi helps make things big
[19:48:48] <JymmmEMC> lerneaen_hydra: fucking JS.... Thomson Precision Plus Ground Ball Screws - Inch SeriesĀ 
[19:49:38] <lerneaen_hydra> oh the track isn't spherical
[19:50:14] <lerneaen_hydra> double nut preloaded is what I've used before
[19:53:44] <lerneaen_hydra> cradek: how many unique hits per day does linuxcnc.org get?
[19:55:07] <cradek> swp might be able to tell you
[19:55:09] <anonimasu> lerneaen_hydra: yes, after a long while..
[19:55:22] <anonimasu> lerneaen_hydra: they wear in commercial machines too
[19:55:25] <lerneaen_hydra> anonimasu: what's a long time?
[19:55:28] <anonimasu> lerneaen_hydra: lube lube lube..
[19:55:55] <anonimasu> lerneaen_hydra: a few years.. I guess
[19:56:22] <lerneaen_hydra> a double nut is good in that respect as you can tighten it
[19:57:09] <anonimasu> I dont know how commercial machines does it.
[19:57:17] <anonimasu> but even the old machines dosent wear that fast
[20:20:34] <robin_sz> commercial machines .... theres one very good method I've seen
[20:21:13] <robin_sz> its called: using linear drives :)
[20:24:18] <anonimasu> robin_sz: Well, does your buddy sell he's homemade ones free/cheap?
[20:24:47] <robin_sz> mmm .. not yet
[20:24:51] <robin_sz> but soon :)
[20:25:00] <robin_sz> make some yourself maybe?
[20:25:31] <anonimasu> robin_sz: he asked about ballscrews not linear drives.
[20:26:07] <anonimasu> :)
[20:26:13] <anonimasu> *aywn*
[20:27:01] <lerneaen_hydra> linear drives, you mean like the type with a smooth rod and three bearings that are rotated around to drive the shaft?
[20:27:10] <anonimasu> no
[20:27:14] <anonimasu> he means magnetts in a row..
[20:27:21] <lerneaen_hydra> oh electromagnetic
[20:27:24] <anonimasu> yeah
[20:27:37] <anonimasu> linear motors..
[20:27:46] <lerneaen_hydra> and some sort of glass slide encoder on the table?
[20:28:06] <lerneaen_hydra> they eat a lot of power though, if the holding force is supposed to be high
[20:29:49] <anonimasu> lerneaen_hydra: not to mention that they are expensive..
[20:30:15] <lerneaen_hydra> that too
[20:31:26] <robin_sz> depends if you make them yourself or not :)
[20:32:15] <robin_sz> works out cheaper than rack and pinion if you wind your own motors and assemble your own magnet tracks
[20:32:14] <anonimasu> robin_sz: But people dont.
[20:32:25] <robin_sz> soem people do ...
[20:32:43] <robin_sz> it will become more common
[20:32:45] <anonimasu> robin_sz: there's this guy in this town that does edm stuff that made he's own crankshafts while racing.
[20:32:58] <anonimasu> robin_sz: that dosent mean people do.
[20:33:03] <robin_sz> right now, its leading edge, 3 to 5 years it will be common
[20:33:35] <robin_sz> the reason it is now a possibility is the cheap availability of neo magnets
[20:34:29] <robin_sz> all the major machine tool guys are into it now, from lasers to mills
[20:37:01] <robin_sz> it sounds scary, but once you actually do it, its not that hard ... in reallity, its going to be a few years before home constructors start using it, but, not as far off as you might think
[20:42:28] <lerneaen_hydra> neodymium magnets are really cheap now, that's very true
[20:42:38] <lerneaen_hydra> and their magnetic strength is very good
[20:42:55] <lerneaen_hydra> an interesting notion
[20:43:27] <lerneaen_hydra> it certainly sounds like a competitor to servo+encoder+drive
[20:43:51] <lerneaen_hydra> hell it's just magnets, a coil, a drive, and a glass slide
[20:44:25] <lerneaen_hydra> zero backlash, wonderfully insanely fast, no mechanical contact...
[20:44:47] <lerneaen_hydra> it sounds better the more I think about it
[20:46:30] <anonimasu> there's still mechanical contact in other places I think
[20:46:34] <anonimasu> just not in the motors
[20:46:45] <anonimasu> air bearings would solve it ;)
[20:47:00] <maddash> cool,what are air bearings?
[20:47:31] <anonimasu> ever played air hockey'?
[20:49:37] <alex_joni> :)
[20:49:49] <alex_joni> how about air guitar?
[20:50:34] <anonimasu> haha
[20:50:39] <anonimasu> that dosent count
[20:51:05] <archivist> maddash same as hovercraft only its a bearing pressurised with air
[20:51:22] <anonimasu> yep
[20:52:36] <lerneaen_hydra> is there any easy way to delete files from the wiki?
[20:53:14] <lerneaen_hydra> anonimasu: sure theres mechanical contact, but the wear there takes a long time longer to affect the result
[20:53:20] <cradek> lerneaen_hydra: I think only admins can do that
[20:53:27] <lerneaen_hydra> oh, ok
[20:53:39] <maddash_> cooooooool.
[20:53:46] <maddash_> maddash_ is now known as maddash
[20:53:56] <lerneaen_hydra> so if I have an updated file should I just upload a new one and append _rev2 ?
[20:54:08] <cradek> oh files?? hmmmm
[20:54:19] <cradek> I assumed you meant pages, instead of reading what you said
[20:54:29] <cradek> I'm changing my answer to "I don't know"
[20:54:35] <cradek> ask alex :-)
[20:54:39] <alex_joni> there is no easy way
[20:54:51] <alex_joni> unless you have ssh access to the wiki server
[20:54:55] <lerneaen_hydra> cradek: btw, can screw compensation affect the position of other axes, say at X coord A can it make Z move B units in a direction?
[20:55:09] <alex_joni> lerneaen_hydra: nope it can't
[20:55:11] <cradek> lerneaen_hydra: nope, it works on joints. you could do that with kinematics.
[20:55:14] <lerneaen_hydra> like if the ways are worm
[20:55:16] <lerneaen_hydra> *worn
[20:55:17] <lerneaen_hydra> oh ok
[20:55:24] <alex_joni> lerneaen_hydra: you need kins for that
[20:55:27] <lerneaen_hydra> right
[20:55:42] <lerneaen_hydra> that'll probably need some cpu overhead too, right?
[20:55:44] <alex_joni> you could implement some rather simple kins with a 3 dimentional lookup table
[20:55:48] <JymmmEMC> Anyone know of any inexpensive pilot lights that can been from a distance?
[20:55:57] <alex_joni> not that much.. depends how complicated the kins are
[20:55:58] <lerneaen_hydra> like for a boat?
[20:56:12] <lerneaen_hydra> aren't kins supposed to be expressed as functions
[20:56:17] <alex_joni> if it's only linear approximation between setpoints, then it's straightforward
[20:56:19] <lerneaen_hydra> not lookup tables
[20:56:25] <alex_joni> and not much overhead
[20:56:35] <cradek> kins can be anything you can write in C
[20:56:40] <lerneaen_hydra> oh, ok
[20:56:58] <cradek> they take in (joint) coordiantes and output (axis) coordinates, and also the other way around
[20:56:59] <alex_joni> if you want some parametric curves of 3rd order or higher, then it might increase the overhead
[20:57:03] <JymmmEMC> control panel, on, off ,etc. Jsut want to see them from 8-20ft away at a glance... "Oh shit, I forgot to tuen that off" kinda thing.
[20:57:46] <lerneaen_hydra> JymmmEMC: oh, if you already have the bezel and everything a luxeon star LED might be worth looking into
[20:58:16] <lerneaen_hydra> they can take up to 300mA, compared to the 20-ish a normal LED can take (so they're about 15 times as bright)
[20:58:25] <JymmmEMC> I dont' want to burn my fingers =) No bezels, just drill a hole, and pop in
[20:58:29] <lerneaen_hydra> oh
[20:58:31] <maddash> can I add support for tilted arcs to emc?
[20:58:41] <lerneaen_hydra> maybe just a normal LED in a holder?
[20:58:47] <JymmmEMC> too small
[20:58:56] <lerneaen_hydra> there are 10mm LEDs
[20:59:04] <JymmmEMC> I dont want to have to be with 15 deg to see it
[20:59:22] <maddash> er, may I *
[20:59:23] <lerneaen_hydra> if you file the top of the LED it will shine roughly evenly
[20:59:49] <JymmmEMC> sorta like this... but not flat... http://cgi.ebay.com/NEW-10-PIECES-MINI-PILOT-LIGHT-9MM-RED-230VAC-NIB_W0QQitemZ150143417144QQihZ005QQcategoryZ58166QQssPageNameZWDVWQQrdZ1QQcmdZViewItem
[21:00:03] <JymmmEMC> I just can't find them on ebay
[21:00:26] <lerneaen_hydra> oh
[21:00:33] <lerneaen_hydra> digikey/farnell/mouser
[21:00:38] <lerneaen_hydra> take your pick
[21:01:26] <JymmmEMC> still cant' find them mouser
[21:01:43] <JymmmEMC> or non-stocked item
[21:03:50] <Martzis> Hello all. Can anyone say is it possible to configure EMC to have a step/dir spindle speed control?
[21:04:46] <Martzis> I have four Granite Devices Fluxeon servo drives. Three are controlling x, y and z and the fouth is running the spindle.
[21:06:01] <Martzis> Currently I am controlling the speed manually via MPG connected to the servo drive.
[21:06:45] <SWPadnos> use freqgen for the spindle
[21:07:13] <SWPadnos> connect the input of the freqgen to motion.spindle-speed-out (or similar)
[21:07:40] <alex_joni> you can connect it to a mux
[21:07:59] <alex_joni> and alternatively drive it by position for orienting, or from freqgen for speed control
[21:08:18] <JymmmEMC> FSCK ME.... $24/ea http://www.ledtronics.com/ds/rplh16/
[21:08:25] <SWPadnos> oh - I didn't think that both position and velocity control would be neede
[21:08:27] <SWPadnos> d
[21:08:49] <alex_joni> if needed..
[21:09:22] <SWPadnos> JymmmEMC, that's not a bad price at all
[21:09:33] <JymmmEMC> SWPadnos: you're kidding me
[21:09:36] <Martzis> The drive takes step pulses only when I need to increase on decrease the speed
[21:09:53] <lerneaen_hydra> JymmmEMC: goddamn!
[21:09:57] <lerneaen_hydra> that's fscking expensive!
[21:10:05] <lerneaen_hydra> for just a glorified LED
[21:10:08] <Martzis> Does that kind of configuration work with Freqgen?
[21:10:15] <SWPadnos> $24 for a panel light is not exactly expensive, especially if they're sealed
[21:10:36] <lerneaen_hydra> oh, they're full size
[21:10:44] <SWPadnos> Martzis, oops - I didn't realize that the pulses were for speed up/down. freeqgen won't work for that
[21:10:48] <lerneaen_hydra> I was thinking they were small ones
[21:11:22] <JymmmEMC> lens is .77"
[21:11:27] <JymmmEMC> not all THAT big
[21:11:51] <lerneaen_hydra> standard front panel size
[21:11:57] <lerneaen_hydra> or thereabouts
[21:12:01] <Martzis> I have Elson's USC board and one channel is free. I would like to use that for spindle control.
[21:12:47] <Martzis> Here is the drive: http://www.granitedevices.fi/index.php?id=2
[21:13:16] <alex_joni> Martzis: how do you make it spin 4000 rpm?
[21:13:28] <SWPadnos> ok, you don't need freqgen then, since that's what the USC does in hardware
[21:14:16] <Martzis> Currently I make it spin 4000 rpm by rotating manual encoder 40 pulses
[21:14:33] <alex_joni> so each pulse up increases with 100 rpm?
[21:14:35] <Martzis> and it stops by rotating same amount bacwards
[21:14:40] <Martzis> you
[21:14:47] <Martzis> or it can be configured
[21:14:52] <alex_joni> I see
[21:14:51] <Martzis> yuo = yes
[21:14:53] <SWPadnos> it says it's a positioning controller - that should mean that you can send it a pulse stream (just like the other 3 channels)
[21:15:17] <alex_joni> stepgen with up/down steps
[21:15:20] <Martzis> It can be configured to position, velocity or moment mode
[21:15:24] <SWPadnos> so set it into the servo mode, and use the USC as a pulse rate generator
[21:15:30] <SWPadnos> use position mode
[21:15:54] <alex_joni> SWPadnos: how about velocity mode, and use stepgen with the spindle-speed-out as the position prescription
[21:16:00] <SWPadnos> exactly
[21:16:09] <SWPadnos> I was just looking up the USC pin name :)
[21:16:12] <lerneaen_hydra> alex_joni: the max size for files on the wiki, is it 215kb or 215mb?
[21:16:19] <alex_joni> kB :P
[21:16:20] <SWPadnos> kb
[21:16:21] <SWPadnos> kB
[21:16:24] <lerneaen_hydra> hmm, crap
[21:16:31] <alex_joni> lerneaen_hydra: need something larger uploaded?
[21:16:37] <JymmmEMC> never saw blue before... http://cgi.ebay.com/1-7-segment-Blue-LED-display-common-cathode-10pcs_W0QQitemZ220131888495QQihZ012QQcategoryZ66949QQrdZ1QQcmdZViewItem
[21:16:37] <lerneaen_hydra> can you manually place a file?
[21:16:40] <lerneaen_hydra> yeah, 800kb
[21:16:41] <alex_joni> sue
[21:16:44] <alex_joni> sure
[21:16:54] <alex_joni> mail it to me
[21:17:13] <SWPadnos> Martzis, what is the encoder resolution on your spindle servo?
[21:17:42] <Martzis> It has 500 lines and it is connected directly to the Fluxeon
[21:17:58] <Martzis> Fluxeon reads 200 counts from it
[21:18:01] <SWPadnos> ok, so it's 2000 steps per revolution
[21:18:12] <Martzis> yes 2000 cunts
[21:18:15] <Martzis> sorryt
[21:18:16] <SWPadnos> heh - oops
[21:18:17] <Martzis> :)
[21:18:23] <lerneaen_hydra> hahaha :D
[21:18:29] <Martzis> It is late here in Fnland
[21:18:29] <JymmmEMC> Martzis: in your dreams!
[21:18:45] <SWPadnos> so 1 RPM is 2000/60 steps/second = 33.333
[21:18:46] <lerneaen_hydra> perkele!
[21:19:01] <lerneaen_hydra> alex_joni: you've got PM
[21:19:04] <Martzis> And I have drinken too much Estonian beer
[21:19:14] <JymmmEMC> Martzis: ot not enough =)
[21:19:17] <JymmmEMC> or
[21:20:22] <maddash> do you guys all use a hardware counter for your encoders?
[21:20:33] <maddash> i just discovered that i'm too poor to buy an fpga board
[21:20:44] <lerneaen_hydra> maddash: you mean for servo systems?
[21:20:49] <lerneaen_hydra> or for a lathe spindle?
[21:21:21] <SWPadnos> come on - a pluto is only $59 :)
[21:21:43] <maddash> lerneaen_hydra: no, stepper
[21:22:02] <SWPadnos> Martzis, I think you just need to set ppmc.0.stepgen.3.scale to 33.33, and connect motion.spindle-speed-out to ppmc.0.stepgen.3.velocity
[21:22:31] <maddash> SWPadnos: that's the altera fpga type of pluto, for which the netlist downloader costs extra
[21:22:58] <SWPadnos> I don't think you have to pay for it, but their tools only work on Windows (or VMWare, and possibly on Wine)
[21:23:05] <lerneaen_hydra> maddash: encoder? stepper?
[21:23:25] <SWPadnos> but I think the driver downloads the firmware to the board
[21:23:40] <maddash> lerneaen_hydra: encoder . one for each of my steppers.
[21:23:50] <lerneaen_hydra> oh you have a closed loop system?
[21:24:21] <maddash> no, I want a closed loop system
[21:24:29] <SWPadnos> that will be hard with steppers
[21:24:43] <maddash> freakin hell -- the pluto hogs an entire parport
[21:24:48] <maddash> SWPadnos: why?
[21:24:49] <SWPadnos> it's not clear how the controller should respond if a stepper starts to lag behind
[21:25:05] <Martzis> SWPadnod: I'll try that. Should I configure the servo drive to position or velocity mode?
[21:25:05] <maddash> take an extra step?
[21:25:11] <Martzis> s
[21:25:15] <SWPadnos> it's also not clear how to prevent stalls anywhere except in the stepper drive
[21:25:33] <SWPadnos> no, steppers lag when they're stalling or stalled - an extra step won't do anything in that case
[21:25:57] <SWPadnos> you can't just up the torque like with a servo
[21:26:33] <maddash> then what about lost steps?
[21:26:42] <lerneaen_hydra> you'll need to start from vel 0, accel up, and continue, and at the same time accel down the other axes and accel up synchronously
[21:26:44] <SWPadnos> what about them?
[21:26:58] <lerneaen_hydra> though you'll still get a messed up workpeice
[21:27:03] <SWPadnos> like I said - it's not clear what the controller can do if a stepper lags behind
[21:27:28] <JymmmEMC> catch up?
[21:27:45] <lerneaen_hydra> can you ever* get a stepper so it looses just one step, and doesn't just stall *within reason
[21:27:45] <SWPadnos> the new step drives from Gecko (new = not yet developed or for sale) will have the ability to prevent stalling at any speed, and will be able to feed "lag" information to a controller
[21:27:57] <lerneaen_hydra> sweet!
[21:28:15] <SWPadnos> but I don't think there are any affordable drives that do that now, and there may not be any that aren't affordable either
[21:29:16] <skunkworks> that seemed to be cutting edge.. I had never heard of it until marris started discussing it. (not that it means much)
[21:29:22] <SWPadnos> heh
[21:29:39] <SWPadnos> it is cutting edge. his description of the operation of the frankenstein model is pretty astounding
[21:30:01] <SWPadnos> (frankenstein because it's a lot of parts on the bench that look like a bad operation that almost failed)
[21:30:18] <alex_joni> lerneaen_hydra: ping
[21:31:21] <SWPadnos> he describes being able to spin a stepper up to 15000 RPM (unloaded), then immediately flip the commanded speed to 15000 RPM the other way, and the motor smoothly decelerates at first (low torque at high speed), then decelerates at an alarming rate, then accelerates like a bat out of hell until it gets to high speed the other way
[21:31:54] <SWPadnos> just moving a stepper at 15kRPM is a pretty tall order - they usually top out under 2000 RPM (and many under 1000)
[21:33:16] <skunkworks> it somehow senses how much the stepper can handle and doesn't exceed it
[21:33:21] <SWPadnos> right
[21:33:47] <SWPadnos> that's in the drive though, fed back to a rabbit microcontroller (what he had on hand, it won't be in the final drive)
[21:34:51] <lerneaen_hydra> SWPadnos: that sounds very interesting
[21:34:57] <lerneaen_hydra> you talked to him a bit?
[21:35:09] <SWPadnos> this is all on the geckodrive list - I asked him about the Rabbit
[21:35:26] <lerneaen_hydra> oh ok
[21:37:39] <skunkworks> bbl
[21:39:52] <maddash> what exactly is this 'stalling'?
[21:40:17] <maddash> i always thought that a stepper would lose steps if you sent it pulses too quickly
[21:40:35] <SWPadnos> that is stalling
[21:40:44] <archivist> overload a stepper and it stalls
[21:40:53] <SWPadnos> but "too quickly" depends on the speed it's traveling, the load on it, etc.
[21:41:11] <maddash> so if it's stalling, lower the speed until your start moving again
[21:41:42] <alex_joni> stalling means it doesn't move at all
[21:41:47] <lerneaen_hydra> when it stalls it stops catastrophically, so unless you've got really special hardware you need to wait for it to stop, then start from 0 speed again
[21:41:53] <alex_joni> it just bounces back and forth
[21:42:06] <alex_joni> you need to slow down to zero, and accelerate back up
[21:42:14] <alex_joni> can't do that without an encoder to notice this
[21:42:26] <SWPadnos> but the part is already destroyed, since the other axes kept on moving ...
[21:42:40] <maddash> why 0? why not just lower the speed until the motor stops stalling?
[21:42:58] <SWPadnos> it may not need to go to 0, but it will need to go to some low velocity
[21:43:10] <maddash> SWPadnos: not really, since the moment you lose a step the encoder would take notice
[21:44:46] <SWPadnos> right, so you need to slow down all the other axes, but this one is likely to not move again until the velocity output to it is near zero
[21:45:07] <SWPadnos> so the other axes will decelerate to near zero as well, but that takes time and distance
[21:45:36] <alex_joni> SWPadnos: I think he meant that when you see that it starts losing steps you slow down
[21:45:46] <alex_joni> but I bet you can't react fast enough before the motor stalls
[21:46:14] <SWPadnos> right - a stall will already have occurred by the time the encoder detects it
[21:46:23] <SWPadnos> err - detects a position loss
[21:46:33] <archivist> unless the drives sense the back emf of a stepper
[21:46:51] <maddash> so what do you guys do for a high precision stepper system?
[21:46:54] <SWPadnos> which means you need a special drive ...
[21:46:58] <SWPadnos> I use servos ;)
[21:47:43] <maddash> geez get real -- this is a bridgeport series 1 retrofit we're talking about
[21:47:58] <SWPadnos> so, that's what I've got (once I complete it)
[21:48:18] <robin_sz> SWPadnos, did you ever see the videos of mariss' unstallable stepper?
[21:48:38] <SWPadnos> I saw the spiral thing he did, but I don't think I watched the unstallable stepper
[21:48:42] <maddash> robin_sz: who's mariss? and why is his stepper un-stall-able?
[21:48:43] <SWPadnos> I did read the list emails though
[21:48:53] <maddash> robin_sz: and how does he know that it's unstallable?
[21:49:09] <alex_joni> it's large as a house
[21:49:14] <alex_joni> and only goes 2 pulses / day
[21:49:19] <archivist> he has to be sensing the motor
[21:49:25] <robin_sz> SWPadnos, he had one with the encoder on, lag detection, slow pulse train down as the lag increases etc
[21:49:48] <SWPadnos> he's designing a new drive that senses phase lag, and sends information back to the controller whne it's asking too much
[21:49:51] <alex_joni> robin_sz: yeah, but for that you need feedback to the app doing the control
[21:49:57] <SWPadnos> it does this before the stepper actually stalls
[21:50:06] <SWPadnos> yes, he's using an encoder on the stepper
[21:50:20] <alex_joni> SWPadnos: I mean feedback to emc or whatever sw is there
[21:50:29] <robin_sz> alex_joni, he had feed back to the master pulse gen, slowed all the other axes together
[21:51:08] <alex_joni> robin_sz: I know, saw it a while ago
[21:51:18] <maddash> who's mariss?!
[21:51:22] <alex_joni> was just trying to imagine how to hook that up to emc
[21:51:29] <lerneaen_hydra> maddash: designer of geckodrives
[21:51:30] <SWPadnos> he's the designer and owner of Geckodrive
[21:51:36] <alex_joni> maddash: the guys that does the geckos
[21:51:45] <alex_joni> s/guys/guy/
[21:51:54] <maddash> http://www.mechmate.com/forums/archive/index.php/t-257.html
[21:51:55] <SWPadnos> and he used to be at Centent, where he designed - wait for it - stepper drives :)
[21:52:02] <alex_joni> mariss freimannis or something like that
[21:52:16] <SWPadnos> that board is *NOT* closed loop!
[21:52:22] <SWPadnos> I've had that argument with Roger on the CCED list
[21:52:32] <SWPadnos> err - Rogers ...
[21:52:34] <SWPadnos> whatever
[21:52:45] <SWPadnos> Ron Rogers, that is (I think)
[21:52:49] <maddash> whoa -- so if geckodrives are revered, then mariss must be....God of machinists
[21:53:13] <SWPadnos> he's god of stepper drive design, there's fair concensus on that
[21:53:13] <lerneaen_hydra> SWPadnos: so what does it do, open loop and estop if the encoder shows a missed step?
[21:53:27] <SWPadnos> yes, it's a "traveling following error detector"
[21:53:36] <lerneaen_hydra> ..
[21:53:42] <maddash> mariss is my frickin' hero -- he implemented a motion controller on fpga
[21:53:47] <SWPadnos> the position error is not used in any way to control the output of the controller, so it's not closed loop
[21:53:56] <SWPadnos> no he didn't
[21:53:56] <robin_sz> maddash, not exactly ...
[21:54:02] <lerneaen_hydra> well, it is closed loop, by the manner of the term, but it's not used effectively
[21:54:03] <SWPadnos> the motion controller on the G-Rex is in the Rabbit
[21:54:09] <SWPadnos> no, it is not closed loop
[21:54:09] <robin_sz> the motion control was on the Rabbit,
[21:54:19] <lerneaen_hydra> SWPadnos: isn't it? if it misses a step then it stops
[21:54:29] <lerneaen_hydra> binary controller system
[21:54:30] <SWPadnos> look it up, and you'll see that by definition, closed loop control must use the error to change the control output
[21:54:38] <robin_sz> * robin_sz nods
[21:54:41] <maddash> http://www.geckodrive.com/product.cfm?pid=17
[21:54:44] <SWPadnos> this uses the error to stop the process
[21:54:46] <alex_joni> it's an open-loop + comparator
[21:54:59] <robin_sz> * robin_sz nods
[21:55:03] <alex_joni> SWPadnos: it says it also reports the position to mach while switched off
[21:55:09] <alex_joni> so you can use it as a DRO
[21:55:19] <SWPadnos> that is true, it certainly is a feedback device :)
[21:55:23] <lerneaen_hydra> we're splitting hairs here, I do agree with you, but it does take input from the steppers and depending on the input different things can happen (stop or continue)
[21:55:25] <robin_sz> yeah, but mach only has DRO, it not closed loop
[21:55:37] <SWPadnos> this is not splitting hairs, it's a funcamental concept of control theory
[21:55:44] <SWPadnos> fundamental too
[21:55:51] <robin_sz> funkamental!
[21:55:56] <maddash> hm, so the best thing that an encoder can do for a stepper system is to tell it when there's a following error, and the best thing that the stepper system can do is to Estop, right?
[21:56:05] <robin_sz> maddash, no
[21:56:07] <lerneaen_hydra> yes, it's not an analog control, it's digital, either continues or stops
[21:56:17] <SWPadnos> until there's a new stepper srive, that's about all you'll get, I think
[21:56:24] <robin_sz> the best thing it can do is slow down a tiny bit and slide back up the torque curve
[21:56:27] <SWPadnos> lerneaen_hydra, look it up - I'm serious :)
[21:56:53] <SWPadnos> robin_sz, he's talking about adding encoders to a stepper, and feeding the position back to EMC - no support in the drive to prevent stalling
[21:57:19] <SWPadnos> I think the stall will have already occurred if there's any detectable position error
[21:57:23] <robin_sz> right, but depending on encoder resolution you could detect an increease in ferror
[21:57:30] <robin_sz> and you COULD slow emc down
[21:57:34] <lerneaen_hydra> hmm, it's a matter of definition IMO
[21:57:36] <SWPadnos> you'd need an awfully fast servo loop for that
[21:57:48] <archivist> an fpga
[21:57:49] <lerneaen_hydra> the control/feedback in this case is very quantized
[21:58:01] <robin_sz> you need to be 1/2 a step behind befor eit stalls
[21:58:11] <SWPadnos> lerneaen_hydra, I'm not contending that the device is useless, only that it is not closed loop, by any definition of the term
[21:58:18] <robin_sz> * robin_sz agrees
[21:58:35] <lerneaen_hydra> robin_sz: the question is if the stepper drive can stop it in time, wrt holding times and so on
[21:58:41] <SWPadnos> it does allow the controller to see if its open-loop output (steps) have been acted upon by the machine, and to stop if they haven't
[21:59:04] <robin_sz> anyway ...
[21:59:12] <SWPadnos> it could allow a different control program to do closed-loop as well, but Mach doesn't do that
[21:59:17] <robin_sz> "it has some uses, but its not closed loop" ...
[21:59:22] <maddash> SWPadnos: by 'stop' you mean 'abruptly stopping,' no? and that's bad for the steppers, anyway.
[21:59:39] <SWPadnos> that card causes the equivalent of an E-Stop, I think
[21:59:45] <Martzis> I had closed loop system with steppers. I have this card: http://jelinux.pico-systems.com/univstep.html and linear encoders for feedback. Now I have replaced two of three steppers with Sanyo Denki servos and I am driving them (and the stepper) with closed loop Fluxeon servo drives. Fluxeon can drive also steppers in closed loop although I am driving it openloop and feeding position information from linear encoder to EMC. The last stepp
[21:59:46] <robin_sz> right
[22:00:05] <lerneaen_hydra> SWPadnos: I haven't read formal control theory yet, so I'm probably babbling shit, but in my eyes it's a very weak form of closed loop, as depending on what happens on the output the controller changes behavior
[22:00:28] <SWPadnos> it is, by definition, not closed loop. you'll see that on page 1 of the first control theory text you read ;)
[22:00:36] <robin_sz> lerneaen_hydra, you are confusing error detection with closed loop,
[22:00:48] <lerneaen_hydra> * lerneaen_hydra bows
[22:00:56] <alex_joni> SWPadnos: I think it was on page 3
[22:01:01] <lerneaen_hydra> you know this better than I
[22:01:10] <alex_joni> page 1 was title, and 2 was the TOC
[22:01:18] <lerneaen_hydra> alex_joni: :p
[22:01:20] <SWPadnos> alex_joni, hmmm - I forgot the obligatory tahnk-yous - you're probably right :)
[22:01:22] <robin_sz> lerneaen_hydra, can I give you a simple analogy?
[22:01:29] <lerneaen_hydra> sure
[22:01:33] <alex_joni> oh-oh
[22:01:35] <SWPadnos> a car analogy, please
[22:01:43] <lerneaen_hydra> haha :D
[22:01:52] <alex_joni> can I be the police?
[22:01:53] <robin_sz> imagine a car with some device for steering it down the road automatically
[22:02:07] <maddash> my baby brother?
[22:02:16] <robin_sz> closed loop monitors the position, produces steering corrections to keep it centred
[22:02:17] <SWPadnos> accurately and automatically ;)
[22:02:40] <robin_sz> you system notices if its too far off line and stands on the brakes
[22:02:40] <alex_joni> not necessarely accurately :P
[22:02:52] <SWPadnos> error detection tells you when you've hit the curb :)
[22:03:06] <robin_sz> s/curb/pedestrians/
[22:03:08] <archivist> some bstard paints an extra white line acceoss the road
[22:03:11] <SWPadnos> whichever
[22:03:26] <robin_sz> you see the point?
[22:03:48] <robin_sz> closed loop is a control input into the actual steering process
[22:04:04] <robin_sz> the other is a estop ...
[22:04:47] <robin_sz> OK?
[22:04:53] <robin_sz> did that do it?
[22:05:10] <lerneaen_hydra> robin_sz: very true, where's the limit between closed loop and not in these examples: pure analog feedback (infinite precision, so if you're 1/inf away from the middle of the road you'll try to do something about it), real performance (you'll get to a few cm), some quantization (say, you turn to the middle of the road when you're distance X from the curb). you see where I'm going right?
[22:05:28] <robin_sz> no ... no
[22:05:43] <SWPadnos> the limit is whether the feedback is used to change the control output (steering) or not
[22:05:56] <robin_sz> note the none-closed loop system did not affect the steering, it applied the brakes
[22:06:03] <robin_sz> what SWPadnos said
[22:06:05] <SWPadnos> turning the car off is not "changing the sterering"
[22:06:12] <robin_sz> * robin_sz nods
[22:06:59] <SWPadnos> lerneaen_hydra, both of the examples you mentioned are closed loop, because they both cause the steering to change based on the feedback
[22:07:11] <robin_sz> exactly
[22:07:24] <lerneaen_hydra> I gues I've just abstracted it too much where I thought closed loop was "reading of output has some/an effect on the controller) and your working to keep it centered
[22:07:25] <SWPadnos> the other example is a fluid level control, which has only two digital inputs
[22:07:42] <lerneaen_hydra> yes, say a toilet tank
[22:07:47] <SWPadnos> when the low level input turns on, start pumping. when the high level input turns on stop pumping
[22:07:50] <SWPadnos> that's closed loop
[22:07:52] <robin_sz> * robin_sz nods
[22:08:06] <SWPadnos> error detection would be "if either input goes on, shut down the system"
[22:08:09] <lerneaen_hydra> with a float that lets in water depenging on the water level
[22:08:17] <SWPadnos> not "turn off the pump", but "shut down the system"
[22:08:26] <robin_sz> lerneaen_hydra, take a mill/router/gantry with a DC motor and an encoder
[22:08:40] <robin_sz> you push on the gantry ... it moves a small amount
[22:09:18] <robin_sz> a closed loop system applies more voltage to the motor, the gantry appears to be locked solid, it jus doesnt move unti the motor runs out pf volts ...
[22:09:24] <lerneaen_hydra> a standard closed loop system would let in water if it's lower then a certain level, whereas the mach board would stop letting in water if it sees that the water level is too low
[22:09:40] <maddash> Martzis: does that pico sys board use an fpga?
[22:09:44] <robin_sz> non-closed loop would let it move and then ring a bell when it went past soem limit
[22:09:48] <alex_joni> maddash: yes
[22:10:02] <maddash> :O <gasp>
[22:10:13] <lerneaen_hydra> hmm I guess I'm just stuck in my own little rut :)
[22:10:31] <lerneaen_hydra> thinking that *any* feedback is enough for closed loop
[22:10:36] <SWPadnos> lerneaen_hydra, the Mach board would close down the bathroom if either switch closed :)
[22:11:01] <robin_sz> water level out of limits error
[22:11:08] <SWPadnos> right :)
[22:11:15] <robin_sz> closed loop would just pump faster
[22:11:28] <lerneaen_hydra> so your definition of closed loop would require the control system to use the feedback to try to get back to the desired position
[22:11:31] <SWPadnos> it doesn't have to be proportional
[22:11:35] <robin_sz> exactly
[22:11:41] <lerneaen_hydra> right I can see the difference
[22:11:48] <SWPadnos> low limit = pump on, high limit = pump off
[22:11:52] <maddash> it took a car AND a bathroom analogy to get that point across?
[22:12:02] <SWPadnos> very simple, but still closed loop (very coarse though)
[22:12:15] <lerneaen_hydra> well... well.. well.. I'm an ex-yankee ;)
[22:12:18] <robin_sz> maddash, thank $deity .. the next analogy was the nun/penguin one
[22:12:22] <lerneaen_hydra> gotta be somewhat stupid
[22:12:25] <SWPadnos> I'm a current yankee, so don't push it ;)
[22:12:31] <lerneaen_hydra> oops
[22:12:30] <maddash> this bathroom talk makes me wanna...you know...
[22:12:38] <SWPadnos> drive?
[22:12:41] <lerneaen_hydra> TMI warning!
[22:12:41] <robin_sz> vommit?
[22:13:22] <robin_sz> hey, wait a minute ...
[22:13:41] <SWPadnos> waiting ...
[22:13:46] <robin_sz> somewhere back there didn;t Martzis post something about linear scales, mixed servo/stepper emc systems etc?
[22:13:56] <robin_sz> weird ...
[22:14:15] <robin_sz> thats why I love this channel ...
[22:14:17] <Martzis> My system is weird:)
[22:14:25] <lerneaen_hydra> if mach would stop the other axes and try to reposition itself, and then resume milling would it be closed loop? it does try to work to a desired output
[22:14:37] <SWPadnos> lerneaen_hydra, no - go read :)
[22:14:39] <robin_sz> all of a sudden someoen you have never heard of pops up running somethng totally weird
[22:15:03] <robin_sz> lerneaen_hydra, no, thats just intelligent recovery
[22:15:06] <SWPadnos> though that might start to blur the lines a little
[22:15:12] <lerneaen_hydra> wouldn't that be like hitting the curb, going whoops, and then going back to the road
[22:15:19] <robin_sz> sorta
[22:15:43] <robin_sz> closed loop should never hit the curb under normal design loads
[22:15:46] <lerneaen_hydra> it does use the input to go to a desired effect
[22:15:59] <robin_sz> the "OTHER SYTEM" always hits the curb from time to time
[22:16:01] <lerneaen_hydra> nono, naturally, we're just arguing about definitions now :p
[22:16:27] <alex_joni> lerneaen_hydra: say the program pops up a window saying: "operator please move the machine 10 turns to the left and hit resume"
[22:16:46] <robin_sz> or "buy fries"
[22:16:47] <alex_joni> do you still think that's closed loop?
[22:17:31] <robin_sz> closed loop is adjusting the interest rates to keep inflation under control
[22:17:39] <lerneaen_hydra> alex_joni: I'm thinking in the broadest sense now, closed loop as an idea, it doesn't matter if its a stepper, servo, operator or a hamster that does the movement
[22:18:05] <lerneaen_hydra> s/movement/feedback
[22:18:07] <robin_sz> the "other way" is waiting for gas to cost $6000 a litre and then invading something
[22:18:14] <archivist> * archivist is thinking a mixture, a stepper drive could knowing the lag error overdrive it for a short time without damage and an fpga seeing this slow down the others to match and keep them in step
[22:18:26] <lerneaen_hydra> archivist: overdrive voltage?
[22:18:27] <alex_joni> here's a topic change..
[22:18:37] <robin_sz> archivist, thats what Mariss thing does
[22:18:40] <alex_joni> should MDI work when machine is switched off?
[22:18:48] <SWPadnos> heh
[22:18:49] <robin_sz> define off
[22:18:50] <alex_joni> like ESTOP or ESTOP RESET?
[22:18:57] <lerneaen_hydra> SWPadnos, robin_sz, thanks for the discussion
[22:19:01] <SWPadnos> sure
[22:19:07] <robin_sz> probably
[22:19:11] <alex_joni> robin_sz: 3 states in emc.. ESTOP, ESTOP RESET and MACHINE ON
[22:19:12] <lerneaen_hydra> hope I wasn't too flamey :p
[22:19:17] <robin_sz> for some control groups
[22:19:18] <alex_joni> lerneaen_hydra: not at all
[22:19:21] <SWPadnos> no, just boneheaded ;)
[22:19:32] <alex_joni> robin_sz: movement doesn't work
[22:19:35] <SWPadnos> damn yankees
[22:19:37] <lerneaen_hydra> arr my yankee attitude coming out :p
[22:19:37] <robin_sz> sure
[22:19:45] <robin_sz> but chnaging variables etc
[22:19:47] <alex_joni> just some M-codes for spindle and flood control, etc
[22:19:57] <robin_sz> not spindle
[22:20:04] <alex_joni> well.. spindle does atm
[22:20:08] <robin_sz> eek
[22:20:10] <lerneaen_hydra> flood is an interesting question
[22:20:17] <SWPadnos> ah yea - vairables. I had forgotten about those
[22:20:20] <robin_sz> estop should stop the spindle
[22:20:25] <alex_joni> SWPadnos: damn :P
[22:20:27] <alex_joni> robin_sz: it stops
[22:20:36] <alex_joni> but you can M3 it running again
[22:20:45] <robin_sz> hey, I was playing with that nice beaver at the wekend
[22:20:48] <SWPadnos> in "machine off", nor in ESTop
[22:20:56] <alex_joni> SWPadnos: both atm
[22:21:02] <robin_sz> yikes
[22:21:13] <robin_sz> thats bad and wrong :)
[22:21:25] <SWPadnos> in estop, I think the spindle should be disabled. though that would ideally be up to the integrator
[22:21:48] <SWPadnos> but that's separate from whether MDI should be allowed
[22:22:00] <robin_sz> that beaver mill is awesome
[22:22:06] <SWPadnos> if you allow MDI, the operator should just get an error if they try something that isn't allowed in the current mode
[22:22:10] <robin_sz> 24hp on the spindle
[22:22:35] <robin_sz> something like 80% of that available by 400rpm
[22:22:38] <archivist> slab mill and blue chips
[22:22:46] <robin_sz> 100% by 1000rpm
[22:23:00] <robin_sz> and 5000rpm on the spindle
[22:24:19] <robin_sz> very nice ... we got the DNC to deliver code to it, and mostly tweaked the code gen to produce compatible code
[22:24:30] <robin_sz> just toolchnage code to be finalised
[22:24:54] <alex_joni> does MDI work while it's switched off?
[22:24:58] <alex_joni> :P
[22:25:19] <robin_sz> heh
[22:26:13] <alex_joni> * alex_joni is off to bed
[22:26:20] <robin_sz> with anyone we know?
[22:26:37] <alex_joni> well.. it's a girl.. so.. no
[22:26:42] <robin_sz> fair point
[22:26:45] <robin_sz> ;)
[22:26:56] <SWPadnos> I bet she's married, too :)
[22:27:08] <alex_joni> * alex_joni blushes
[22:27:33] <anonimasu> hehe
[22:27:38] <alex_joni> good night gents ;)
[22:27:43] <robin_sz> * robin_sz waves
[22:27:44] <SWPadnos> see you Alex
[22:30:29] <maddash> * maddash thanks God that his excretory system is closed-loop
[22:33:25] <maddash> servos suck
[22:34:23] <Ziegler> heh
[22:38:36] <JymmmEMC> well, fsck a duck... no torques available for my motors
[22:39:17] <JymmmEMC> leadscrew is striaght, mount blocks are good,
[22:39:29] <Ziegler> short?
[22:39:41] <JymmmEMC> ?
[22:39:55] <Ziegler> no torque...
[22:40:14] <JymmmEMC> need the curves to see if the RPM is too much for them.
[22:40:23] <Ziegler> oh... no "torque curves"
[22:40:39] <Ziegler> can you produce those with emc?
[22:40:43] <JymmmEMC> Ya know, everything I've learned I should write a book.
[22:40:59] <JymmmEMC> Maybe pay mariss to toss them on his dyno
[22:41:43] <JymmmEMC> Hey, how do you calc necessary torque?
[22:42:19] <Ziegler> ??
[22:42:24] <anonimasu> JymmmEMC: maybe just hang a weight connected to them
[22:42:27] <Ziegler> to do what?
[22:42:35] <anonimasu> Ziegler: make parts
[22:43:00] <SWPadnos> there are cutting force calculations in Machinery's Handbook, and probably other places available online
[22:43:02] <Ziegler> right... out of what material
[22:43:04] <Ziegler> what speed
[22:43:08] <JymmmEMC> anonimasu: Well, with my machien, I have a 5tpi ba;;screw on 2:1 pulley... I can move the whole thing with my fingertip
[22:43:36] <JymmmEMC> no load of course
[22:44:07] <Ziegler> negligible with good slides
[22:44:13] <anonimasu> check out the app by danher motion..
[22:44:17] <archivist> JymmmEMC, dont forget the torque required rises with speed and the steppers lose torque with speed
[22:44:44] <JymmmEMC> archivist: Yeah, that's why I was looking for the non-existant torque curves for my motors
[22:44:53] <Ziegler> steppers or servos?
[22:45:00] <JymmmEMC> stppers
[22:45:12] <Ziegler> what is holding torque?
[22:45:40] <lerneaen_hydra> the torque the stepper can give while standing still
[22:45:46] <Ziegler> * Ziegler sigh
[22:46:04] <Ziegler> what is THE holding torque of your steppers
[22:46:11] <lerneaen_hydra> sorry..
[22:46:12] <Ziegler> ;-P
[22:46:15] <JymmmEMC> I want to be able todo 150IPM. 200SPR * 10TPI * 5x microstepping = 10,000 SPI @ 150IPM == ____________ RPM ?
[22:46:24] <lerneaen_hydra> I just looked at the IRC window, and saw that question
[22:46:35] <SWPadnos> steps are irrelevant to speed in that calculation
[22:46:44] <lerneaen_hydra> JymmmEMC: didn't we do this earlier?
[22:46:51] <lerneaen_hydra> what's the pitch of the screw?
[22:46:52] <JymmmEMC> lerneaen_hydra: maybe, I forgot
[22:46:54] <Ziegler> JymmmEMC: 150 x 10 tpi = 1500 rpms
[22:47:04] <lerneaen_hydra> oh, 10tpi
[22:47:13] <SWPadnos> 10 TPI screw = 10 revs/inch = 150 RPM for 150 IPM
[22:47:19] <SWPadnos> err - 1500
[22:47:43] <JymmmEMC> ok, 1500RPM
[22:47:53] <Ziegler> JymmmEMC: what is your holding torque on your steppers
[22:48:03] <SWPadnos> that's a lot for a stepper
[22:48:05] <JymmmEMC> 269 oz in
[22:48:31] <ds2> what about running it against a torque wrench to at various settings til it stalls?
[22:48:49] <Ziegler> wait JymmmEMC about RPMs... didnt you say you were using a pully?
[22:48:50] <JymmmEMC> so, what torque motors do I really need (under load) at 1500RPM ?
[22:49:03] <JymmmEMC> Ziegler: it's in the 10TPI
[22:49:07] <Ziegler> ok
[22:49:12] <Ziegler> with your stepper
[22:49:36] <Ziegler> lets for kicks and giggles say at 1500 rpm... you only get 100 oz-inch
[22:50:00] <SWPadnos> (which would be surprising ...)
[22:50:01] <Ziegler> and that your mechanical advantage is only 5
[22:50:18] <Ziegler> ok lets do 50 oz-inch
[22:51:48] <Ziegler> gives you a driving force of over 200 lbs
[22:52:04] <Ziegler> ounces
[22:52:07] <Ziegler> oops
[22:52:32] <lerneaen_hydra> that's not a lot
[22:52:37] <lerneaen_hydra> (6kg)
[22:53:31] <Ziegler> thats a mass?
[22:53:41] <lerneaen_hydra> 60N then :p
[22:53:44] <Ziegler> dnake
[22:53:50] <Ziegler> :P
[22:53:54] <lerneaen_hydra> dnake?
[22:53:56] <Ziegler> danke
[22:54:08] <lerneaen_hydra> bitte zehn
[22:55:17] <lerneaen_hydra> Ziegler: where you located?
[22:55:18] <Ziegler> wait what diameter is your lead screw?
[22:55:29] <Ziegler> Illinois
[22:55:37] <Ziegler> usa
[22:55:51] <lerneaen_hydra> ok
[22:56:53] <JymmmEMC> It takes 10lbs to move the gantry unloaded and dosconnected from the leadscrew
[22:56:57] <SWPadnos> the screw diameter shouldn't matter
[22:56:58] <JymmmEMC> (max)
[22:57:39] <JymmmEMC> [hand]---[digital scale]---[gantry] =)
[22:57:57] <SWPadnos> motor torque (oz * in) * 2*pi (radians/rev) * 10 (revs / inch) = 20 * pi * motor torque ounces of force on the table (inches and revs cancel)
[22:57:58] <Ziegler> are you sure SWPadnos?
[22:58:02] <SWPadnos> I think so
[22:58:33] <SWPadnos> I think the length being included in the torque rating accounts for that
[22:58:46] <lerneaen_hydra> screw diameter shouldn't matter no
[22:59:07] <lerneaen_hydra> if the screw is 100% efficient and all that
[22:59:26] <JymmmEMC> on worse case scenario... what torque?
[22:59:30] <JymmmEMC> s/on/ok/
[22:59:32] <SWPadnos> right - minus losses, and if it's an acme screw, then the losses should be from 25-50%
[22:59:39] <JymmmEMC> ball
[22:59:42] <SWPadnos> ballscrew between 3 and 10%
[22:59:43] <lerneaen_hydra> way under 10lbs
[22:59:56] <SWPadnos> curring what, and at what speed?
[22:59:59] <JymmmEMC> screw it, use 25% loss
[23:00:01] <SWPadnos> cutting
[23:00:15] <SWPadnos> it doesn't matter what loss we use - you haven't told us the load yet :)
[23:00:29] <Ziegler> right I am on board SWPadnos... I used 50% for conservative
[23:00:30] <lerneaen_hydra> didnt he say 10lbs to move the gantry?
[23:00:31] <JymmmEMC> hardwood
[23:00:50] <JymmmEMC> being the most dense.
[23:00:59] <SWPadnos> you'll need to look up how to find out cutting force - I don't think I ever bothered with that :)
[23:01:14] <lerneaen_hydra> and we're at 200oz -> 12.5lb right now, which is nothing left at all
[23:01:16] <JymmmEMC> maybe acrylic 1" thick
[23:01:17] <Ziegler> JymmmEMC: what is your gantry made from?
[23:01:25] <JymmmEMC> Ziegler: kscnc.com
[23:01:30] <JymmmEMC> k2cnc.com
[23:01:42] <Ziegler> ahh
[23:02:06] <Ziegler> you dont want to cut at 150 IPM do you?
[23:02:28] <JymmmEMC> Ziegler: jog, yes. cut around 120ipm Max
[23:02:34] <Ziegler> hardwood?
[23:02:37] <JymmmEMC> plastics
[23:02:38] <Ziegler> isnt that a bit fast?
[23:02:48] <lerneaen_hydra> is it?
[23:03:03] <lerneaen_hydra> how fast is your spindle?
[23:03:07] <JymmmEMC> Ziegler: I need the speed for plastics, not wood
[23:03:12] <JymmmEMC> 30K
[23:03:38] <JymmmEMC> err 8000-25000 RPM
[23:03:53] <JymmmEMC> (I dont have enough juivce from the wall todo 30,000 rpm =)
[23:03:56] <anonimasu> night
[23:04:01] <Ziegler> hehe
[23:04:07] <lerneaen_hydra> at 10k rpm and 100ipm the chips are probably quite thin
[23:04:13] <lerneaen_hydra> though they might clog
[23:04:18] <JymmmEMC> lerneaen_hydra: melt back
[23:04:18] <lerneaen_hydra> * lerneaen_hydra stops the conjecture
[23:04:40] <lerneaen_hydra> how fast can you run plastics? say a 1/2" endmill?
[23:04:48] <lerneaen_hydra> (rpm/ipm)
[23:04:53] <Ziegler> 2 flute?
[23:05:02] <lerneaen_hydra> sure
[23:05:25] <Ziegler> trying to look it up
[23:05:37] <JymmmEMC> you need the IPM to prevent melt back depending on the palstic
[23:05:58] <JymmmEMC> higher IPM on things like HDPE
[23:06:14] <lerneaen_hydra> so thicker chips?
[23:06:19] <JymmmEMC> no
[23:06:44] <JymmmEMC> you have to move fast enough to prevent the chips from melting back on to the material
[23:06:47] <lerneaen_hydra> if you keep the spindle rpm contant and increase the feed I don't see how the chips can't get thicker
[23:07:00] <ds2> or run flood
[23:07:35] <JymmmEMC> Ok, were getting off track here... I just need to know what torque I really need.
[23:07:46] <JymmmEMC> so I can check or buy needed motors
[23:08:01] <lerneaen_hydra> meh, night all
[23:08:06] <JymmmEMC> Then I can start looking at torque curves and such
[23:08:14] <Ziegler> 269 seems a bit low from my experience
[23:08:18] <lerneaen_hydra> sorry about any flamy attitude I may have had ;)
[23:08:26] <JymmmEMC> lerneaen_hydra: eh, who cares =)
[23:08:27] <SWPadnos> see you LH - no flames detected :)
[23:08:32] <SWPadnos> except from JymmmEMC
[23:08:48] <JymmmEMC> never flames, just explosions
[23:08:53] <Ziegler> but JymmmEMC... the cutting speed does figure in to torque
[23:08:55] <SWPadnos> right
[23:09:08] <JymmmEMC> Ziegler: Yes I said 150IPM
[23:09:17] <JymmmEMC> max
[23:09:19] <SWPadnos> 150 IPM rapids, 120 IPM cuts
[23:09:22] <Ziegler> and THAT
[23:09:29] <SWPadnos> or do you want 150 IPM cuts?
[23:09:32] <Ziegler> all depends on your cutter
[23:09:45] <JymmmEMC> SWPadnos: I'll take what I can get in NEMA23 motors
[23:09:55] <Ziegler> 60 ipm
[23:10:00] <JymmmEMC> Ziegler: most of the tiem I use 1/4" or smaller
[23:10:21] <JymmmEMC> 3/8" V-cutter is the BIGGEST I ever use
[23:10:30] <Ziegler> oh no end mills?
[23:10:42] <JymmmEMC> no metals ever
[23:10:58] <JymmmEMC> polymers and wood
[23:11:10] <Ziegler> with v-cutters only
[23:11:14] <JymmmEMC> no.
[23:11:25] <JymmmEMC> you can't cut out shapes with v cutters
[23:12:07] <Ziegler> so what do you plan to use?
[23:12:27] <Ziegler> besides a v-cutter?
[23:12:29] <SWPadnos> JymmmEMC, to figure out the cutting force, we need to know the worst case situation you expect to have: hardest material at highest speed at deepest depth with most cutter flutes and worst cutter material
[23:12:44] <SWPadnos> (at least, I think most flutes is the wrost case - it may not be)
[23:12:47] <SWPadnos> worst
[23:12:52] <Ziegler> it is SWPadnos
[23:13:02] <Ziegler> 2 flute cuts quick
[23:13:11] <Ziegler> compared to 4 flute mil
[23:13:18] <SWPadnos> I wasn't sure if there's some non-linear term based on thickness
[23:13:30] <JymmmEMC> ok, say 4flute 1/2" endmill being the worse
[23:13:31] <SWPadnos> chip thickness
[23:13:53] <JymmmEMC> fuck it, lets back up a sec...
[23:13:56] <Ziegler> what are you using for your spindle?
[23:13:57] <SWPadnos> 4 flute 1/2" in hardwood (or lexan, whichever is worse), at 120 IPM, at what depth?
[23:14:15] <JymmmEMC> SWPadnos: I never go more than half the diam if the cutter
[23:14:22] <JymmmEMC> of
[23:14:28] <SWPadnos> ok, so 1/4" depth
[23:14:31] <Ziegler> I just dont think you can do it with 269 oz-inch steppers
[23:14:43] <JymmmEMC> Ziegler: YES I KNOW...
[23:14:49] <SWPadnos> that's probably way more than your spindle can handle, but it could be used for cutting force calcs
[23:14:58] <JymmmEMC> Then I can start looking at torque curves and such
[23:15:06] <JymmmEMC> for new motors
[23:15:07] <SWPadnos> now, if only I knoew the equations for cutting force ;)
[23:15:12] <SWPadnos> knew
[23:15:40] <JymmmEMC> SWPadnos: It's taken me all these years Ive been aroudn to figure, hey I better check this because I didn't know
[23:15:41] <Ziegler> get some 450 oz-in and you might get in the 80s-90s
[23:16:07] <JymmmEMC> Ziegler: I can jog now at 80 IPM
[23:16:17] <SWPadnos> 80-90 cutting
[23:16:26] <JymmmEMC> ah
[23:16:28] <Ziegler> :P
[23:17:19] <JymmmEMC> http://cgi.ebay.com/3-PCS-NEMA-23-DUAL-SHAFT-STEPPER-MOTOR-425-OZ-IN_W0QQitemZ120136594155QQihZ002QQcategoryZ78196QQrdZ1QQcmdZViewItem
[23:17:29] <Ziegler> good luck finding something biger with nema 23
[23:17:41] <JymmmEMC> just did
[23:17:57] <Ziegler> bigger than 450
[23:18:08] <JymmmEMC> but wtf is .9Nm in oz in ?
[23:18:18] <SWPadnos> ask google
[23:18:18] <Ziegler> google conversion
[23:18:29] <JymmmEMC> google doesn't know Nm
[23:18:38] <Ziegler> one second
[23:19:37] <Ziegler> http://www.google.com/search?q=convert+newton*meters+to+pound+inches
[23:19:47] <JymmmEMC> For the record... I'm not trying to be an ass here, just frustrated as hell with the 24+ months I've been trying to get this going, and after I just spent $$$$$$$$ for the new controller to find out all this time it MIGHT have been the motors.
[23:20:04] <maddash> you know what pisses me off? everytime I fire up emc, my steppers jerk a bit
[23:20:25] <SWPadnos> you have to remember - you can get something going easily, but optimizing it requires lots of seemingly arcane knowledge
[23:20:29] <JymmmEMC> 0.9 (newton * meters) = 7.96567121 pound force inches
[23:20:43] <SWPadnos> multiply by 16 for ounce inch
[23:20:52] <SWPadnos> you get ~128
[23:20:56] <Ziegler> multiple by 16
[23:20:58] <JymmmEMC> that's at the 2000RPM point on the curve of those motors
[23:21:00] <Ziegler> yeah
[23:21:19] <maddash> so that even when I've set them to the exact zero position before closing emc the previous time, the whole system gets knocked off by some unknown number of steps at the start of another session
[23:21:57] <SWPadnos> what hardware?
[23:22:00] <JymmmEMC> SWPadnos: ok, so is that a good/decent torque under laod?
[23:22:09] <archivist> thats 2000 pps not revs per minute
[23:22:15] <SWPadnos> JymmmEMC, it sounds low to me, but I don't know for sure
[23:22:28] <JymmmEMC> archivist: ah fsck, your right.
[23:23:05] <archivist> 600 rpm
[23:23:18] <JymmmEMC> 600rpm == 2000 pps ?
[23:23:51] <maddash> SWPadnos: i think it happens to all hardware, because the stepper drivers don't have a way of telling where it last left off in the stepping sequence
[23:23:56] <archivist> 200 per rev 10 revs per sec 60 secs in a minute
[23:24:15] <maddash> SWPadnos: thus far, i've tried the ims ib106 and bridgeport series 1 drivers
[23:24:40] <SWPadnos> can you check to see whether EMC is outputting steps at start-up?
[23:24:55] <maddash> with an external multimeter?
[23:25:00] <SWPadnos> with a scope
[23:25:28] <SWPadnos> are the step drivers de-powered between runs?
[23:25:30] <JymmmEMC> archivist: sorry, you lost me.
[23:25:42] <maddash> SWPadnos: yes
[23:26:19] <SWPadnos> maddash, ok, it sounds like the stepper drives may reset to some known state, like "A on B off" at power-up
[23:26:31] <maddash> SWPadnos: :(
[23:26:33] <SWPadnos> that will cause them to turn depending on what state they were left in
[23:26:33] <JymmmEMC> archivist: were you saying that (in my case) 2000PPS is 600RPM?
[23:26:45] <SWPadnos> JymmmEMC, at the motor it is
[23:26:59] <SWPadnos> 2000 steps = 10 revs per sec, * 60 seconds = 600 RPM
[23:27:30] <JymmmEMC> SWPadnos: did you see that torque curve? 2000 PPS
[23:27:36] <SWPadnos> yes
[23:27:39] <JymmmEMC> k
[23:28:00] <Ziegler> 2000 / 200 steps per rev
[23:28:00] <SWPadnos> actually, it's worse than that - it says it's in half-step
[23:28:06] <Ziegler> = 10
[23:28:07] <SWPadnos> so 300 RPM
[23:28:13] <Ziegler> oh
[23:28:28] <archivist> hehe yes so it is
[23:28:43] <archivist> specmanship
[23:29:01] <SWPadnos> step motor ratings remind me of the old specmanship for boom boxes and other shitty stereos
[23:29:05] <JymmmEMC> So these motors are for pure torque, not speed
[23:29:10] <SWPadnos> anyone remember the term "PMPO"?
[23:29:25] <archivist> music power for total bs
[23:29:27] <JymmmEMC> SISO
[23:29:38] <maddash> sex in, sex out?
[23:29:46] <JymmmEMC> like FIFO, shit in, shit out
[23:29:45] <SWPadnos> "Peak Maximum Power Output" - or something like 4-8 times the actual max allowed per channel
[23:30:00] <maddash> i always thought that it was GIGO
[23:30:04] <SWPadnos> 200W PMPO is like about 2W from Yamaha ;)
[23:30:05] <JymmmEMC> PEP? P-P ?
[23:30:11] <archivist> 9w wall wart with 400W from the speakers
[23:30:18] <SWPadnos> heh
[23:30:21] <JymmmEMC> lol @ archivist
[23:30:24] <maddash> phosphoenolpyruvate
[23:30:32] <SWPadnos> I had a Yamaha boom box that could output 13W per channel from batteries
[23:30:39] <SWPadnos> 10 D cells, to be exact
[23:30:50] <maddash> JymmmEMC: any more acronyms?
[23:30:51] <SWPadnos> 15W if connected to AC
[23:31:01] <JymmmEMC> SWPadnos: and carried on your shoulder to skool?
[23:31:12] <archivist> it carried him
[23:31:40] <JymmmEMC> oh yeah, SWPadnos has hollow legs
[23:31:56] <maddash> threaded*
[23:32:00] <SWPadnos> cool - the top photo: http://pocketcalculatorshow.com/boombox/decline4.html
[23:33:18] <JymmmEMC> SWPadnos: you know you wanted this one, but couldn't afford the batteries! http://pocketcalculatorshow.com/boombox/graphics/The-Super-Woofer.jpg
[23:33:28] <SWPadnos> heh
[23:33:57] <SWPadnos> I bought the Yamaha because it sounded great (better than many home stereos at the time), and had Dolby B+C and could handle metal tapes
[23:34:09] <JymmmEMC> ok, lets say I get the calc, what else do I need to figure the toque for my machine?
[23:34:19] <Ziegler> lol
[23:34:21] <JymmmEMC> calcs formulas, whatever
[23:34:30] <Ziegler> what your spindle can handle
[23:34:40] <maddash> http://www.robotics.com/motors.jpg
[23:34:40] <JymmmEMC> 2hp
[23:34:40] <Ziegler> what your gantry is capable of
[23:34:43] <maddash> which one is the servo?
[23:34:53] <maddash> and what is the yellow one?
[23:35:00] <archivist> is the frame man enough for the speeds and cuts
[23:35:05] <JymmmEMC> the blk is the servoc
[23:35:07] <Ziegler> yeah
[23:35:28] <Ziegler> my home built machine (machine 1) isnt
[23:35:32] <SWPadnos> once you figure out the cutting force needed, you can backtrack through the magic formula table force = 2*pi*revs/inch*motor torque
[23:35:38] <Ziegler> machine two will be strong enough to eat machine 1
[23:35:49] <archivist> hehe
[23:36:05] <SWPadnos> or motor torque = needed cutting force / (2 * pi * motor revs/inch)
[23:36:09] <Ziegler> I think machine two is getting some 600+ oz-in steppers
[23:36:21] <JymmmEMC> archivist: http://farm1.static.flickr.com/166/424362252_1bd7946026_b.jpg
[23:37:56] <Ziegler> you bought the machine right?
[23:38:04] <Ziegler> the gantry at least?
[23:38:06] <JymmmEMC> Ziegler: stole it
[23:38:09] <Ziegler> LOL
[23:38:20] <Ziegler> they should have some specs on what it can handle
[23:38:32] <JymmmEMC> ha
[23:38:42] <Ziegler> no?
[23:39:46] <JymmmEMC> What part of "HA" didn't you understand? ;)
[23:40:24] <Ziegler> http://k2cnc.com/
[23:40:52] <Ziegler> lame support?
[23:42:05] <Ziegler> which gantry is yours?
[23:43:28] <JymmmEMC> 2525
[23:43:48] <SWPadnos> in the year 2525 ...
[23:44:58] <Ziegler> im guessing you may just have to settle for the slower speed
[23:46:26] <JymmmEMC> for shits and giggles, I'm goin to toss on the 130 oz in motors from applied motion I have.
[23:46:37] <Ziegler> hehe
[23:46:58] <Ziegler> I tend to prefer the former over the later ;-)
[23:47:03] <Ziegler> wiat
[23:47:04] <Ziegler> other way around
[23:47:06] <JymmmEMC> Jeff for Xylotex doens't ahve any torque curves for the motors he's importing.
[23:47:51] <Ziegler> bet they are simmilar to what HobbyCNC has
[23:47:55] <JymmmEMC> enough is enough.... 24 months of this bullshit... no more saying it's stalling issue alone (not afte the new controller).
[23:48:25] <JymmmEMC> AND lower microstepping
[23:48:33] <JymmmEMC> double the voltage
[23:48:34] <Ziegler> how fast of a computer?
[23:48:42] <JymmmEMC> 1GHz
[23:48:49] <Ziegler> ah
[23:49:16] <Ziegler> I can get about 40 ipm on my poor machine with 200 oz-in steppers, and an 18 tpi screw
[23:49:24] <JymmmEMC> this guessing a solution crap is sending me to the poor house
[23:49:38] <JymmmEMC> I'm outta here, back in 180
[23:49:42] <Ziegler> when I use a larger power supply... I gain an extra 10 per minute
[23:50:22] <Ziegler> Long as he is giving out money, he can pay me to figure it out for him. ;-P