#emc | Logs for 2010-05-03

[00:00:59] <ries> andypugh: from cmd, what hal program should I use?
[00:01:18] <andypugh> Do you have emc running?
[00:01:23] <ries> yes
[00:01:39] <andypugh> you can just use halcmd then
[00:01:49] <andypugh> Or does that not work?
[00:02:31] <skunkworks> halcmd -something iirc
[00:02:41] <andypugh> halcmd setp
[00:03:35] <andypugh> I think you can run a hal file, probably your main hal file, without starting emc, but I have not bothered to figure out how.
[00:05:21] <andypugh> ries: If you are running a run-in-place installation of emc then you need to run the environment script to get halcmd to work.
[00:06:20] <ries> andypugh: I am running, that, but allcmd wasn't in the scripts... but worked from the bin directory
[00:06:31] <ries> trying to simulate a touch off plate before I can bring the files to my router
[00:06:47] <ries> I am running ./halcmd -k -f
[00:06:54] <ries> then it goes into stdin mode
[00:07:18] <andypugh> It is more elegant to do . ./emc2-dev/scripts/emc-environment
[00:08:02] <andypugh> (and you do need a " . ./ " at the beginning, which caught me out the first time, reading from the wiki
[00:10:44] <ries> andypugh: I already that did indeed...
[00:11:09] <ries> it all works, just trying to lean some more advanced stuff... and help me to use my machine better
[00:27:05] <gweepprefect> greetings
[00:27:32] <gweepprefect> does anyone know if there is a configuration setting to control the maximum tool slot #?
[00:28:03] <andypugh> Do you want more, or fewer?
[00:28:24] <gweepprefect> i am trying to set up a tool table with high numbers (in the 200's) and getting "tool length offset index too big"
[00:28:42] <gweepprefect> more, i guess.. i'm not sure what the current limit is
[00:29:24] <jimbo> Jimbo Trying to solve noise problem causing keyboard to send misc garbage.
[00:29:44] <gweepprefect> if it's a huge pain i'll just renumber my tools
[00:30:50] <andypugh> Which version of E<C2?
[00:33:07] <andypugh> http://linuxcnc.org/docs/devel/html/gcode_tool_compensation.html#r1_2
[00:33:22] <andypugh> Suggests that T99999 should be OK
[00:34:15] <gweepprefect> axis reports 2.3.5
[00:35:15] <andypugh> The tool table changed in 2.4
[00:35:32] <andypugh> But I don't know if there was a limit before that.
[00:36:31] <gweepprefect> anything > T56 seems to fail on my version
[00:39:20] <andypugh> Yes, I get the same.
[00:39:36] <andypugh> Seems an odd number to choose too.
[00:39:39] <gweepprefect> indeed
[00:40:08] <andypugh> Version 2.4 is out very soon, or you could get the development version
[00:41:42] <gweepprefect> i'll probably just wait for now... i tend to be pretty lazy on my emc machine and only update from the package manager
[00:43:38] <gweepprefect> trying to work out all the details to make best use of my new Tormach tooling system holders
[00:43:59] <gweepprefect> some very simple experiments show i can pre-measure my tool lengths and enter them in the table and G43 does the right thing
[00:44:43] <andypugh> That is the idea, I believe
[00:45:45] <andypugh> Anyhow, time to log off
[02:41:38] <ries> Hey all, I am reading http://linuxcnc.org/docs/2.2/html/config_ini_homing.html at has a USE_INDEX switch, but there is not explained with the index really is/does. So what is a index next to the switches?
[02:58:19] <skunkworks> index in this context is the z channel of an encoder. It only fires once per rev. so you would hit a switch that would get you within 1 rev of the ecoder - then emc would search for the index pulse from the encoder. very accurite
[02:58:26] <ewlsey> ries, index is for rotary axes
[02:58:33] <skunkworks> *encoder
[02:59:11] <skunkworks> acurite
[02:59:22] <ewlsey> if you only have linear axes, disregard it
[03:05:56] <skunkworks> ewlsey: that is not correct. index can be used for a linear axis (and is probably used most for homing linear)
[03:09:06] <cradek> index homing gives you an exact repeatable home position, absolutely accurate to the resolution of the machine, which is one encoder count
[03:09:35] <cradek> like skunkworks says, it is definitely used on all axes.
[03:09:43] <ewlsey> ok
[03:10:03] <ewlsey> but you would need encoders
[03:10:23] <cradek> yes if you don't have encoders, you can't use it, because there is no index
[03:10:41] <cradek> it is a feature that servo+encoder machines have
[03:11:47] <ewlsey> if you had a rotary axis with a stepper, would you home it with an index pulse?
[03:12:07] <ewlsey> or is that still called a home switch?
[03:12:26] <cradek> index is a feature of encoders
[03:12:35] <cradek> rotary/linear axes is not relevant here
[03:12:57] <cradek> if you have a rotary OR linear axis run with servo+encoder, and the encoder has an index channel, you can home that axis to index
[03:21:34] <ries> skunkworks: ewlsey Ahh ic, I know the indexer in the context of rotery axis, but I didn't read that from the store... just that you could use both
[03:22:01] <ries> Hmmm I am reading on :)
[03:22:15] <ries> so the home switch is in-accurate, the indexer is accurate..
[03:23:14] <ries> Hmm I think it's clear...
[03:25:43] <ewlsey> cradek, is there a way to change to no tool in Axis, M6 T0 gives an error?
[03:26:09] <cradek> random or nonrandom toolchanger?
[03:26:29] <cradek> and what's the error, ffs
[03:26:31] <ewlsey> manual
[03:27:27] <ewlsey> sorry I don't have EMC running, I believe it says tool number is out of range
[03:27:47] <cradek> do you know what version of emc it is?
[03:28:16] <ewlsey> 2.3.5 I think
[03:28:48] <cradek> in 2.3 i'm pretty sure T0 M6 always unloads the tool
[03:30:04] <ewlsey> I don't know if it's me, but I seem to get strange warnings that the program exceeds the limits on Z
[03:30:30] <ewlsey> and I think it has to do with the axis manual toolchanger
[03:30:44] <cradek> I think in 2.3 it sometimes gives that warning incorrectly depending on how you use tool lengths
[03:31:26] <ewlsey> hmm, intuitvely it seems fine, and I ignore the error and carry on
[03:33:40] <ewlsey> spindle overide set to 0 seems to cause some havoc as well
[03:34:04] <cradek> define havoc
[03:35:50] <elmo401> can someone tell this brit weirdo that gauges in a MINIVAN are retarded? http://www.youtube.com/watch?v=uXQ5G0ydmYs
[03:36:13] <ewlsey> let me do some experimenting, the most likely scenario is that I don't know what I'm doing :)
[05:01:26] <MrSunshine> hmm, is there alot of interferance for other electronics going on in the cables that goes to the stepper motors?
[05:01:40] <MrSunshine> i was thinking i if i can mix them and the controller cables in my control cabinett
[05:07:34] <jimbo> ewley: You get the exceeds limit on Z when Z is at the home position. If you drop your tool a bit and then run your program all seems to work.
[06:06:50] <jstenback_> jstenback_ is now known as jstenback
[08:24:41] <sealive> good morning
[08:31:32] <micges> hi
[08:33:06] <sealive> fog all over here
[08:33:22] <sealive> view below 50meter
[08:35:48] <micges> sealive: where are you?
[08:52:41] <alex_joni> hmm.. sunny and nice here
[08:53:01] <micges> raining here
[08:53:12] <alex_joni> 24.7C / 74.5F
[09:03:07] <mk0> hello all. i've got a nontechnical question, maybe someone will answer. i installed emc2 in russian, but russian symbols are much wider than latin. so the interface looks ugly and not comfortable. is it possible to make interface english?
[09:04:54] <renz0r> emc is too skinny for russian
[09:04:59] <renz0r> =\
[09:05:03] <renz0r> renz0r is now known as renesis
[09:06:00] <mk0> wut?
[09:06:14] <mk0> i need to change interface lang
[09:08:31] <mk0_lan_died> ffuu that disconnects
[09:13:11] <encee> guys
[09:13:56] <encee> in axis when you put the coordinate font big from the view menu and home the axis, the little origin symbol shows up on top of the coordinates
[09:14:07] <encee> i was like, YAY now im like WAT
[09:14:48] <encee> wait wat i turned the font small and it still smashed together
[09:15:17] <micges> mk0_lan_died: are you there?
[09:15:19] <encee> okay thats annoying
[09:15:48] <encee> i guess because my gtk font is diff in xfce than in gnome
[09:15:49] <encee> ?
[09:15:52] <encee> anyway nite
[09:16:19] <micges> mk0: you must open console, put LANG=en_EN.UTF-8 and then start ./emc
[09:17:06] <mk0> thanks! and hi from belarus ;)
[09:21:11] <piasdom> g'mornin all
[09:31:33] <micges> hi
[09:40:01] <micges> encee: what system, graphic, emc version?
[09:55:06] <MarkusBec_away> MarkusBec_away is now known as MarkusBec
[13:00:11] <MattyMatt> elmo401: can you read them? he may have a flux capacitor fitted :)
[13:00:43] <MattyMatt> 10 hr lag
[13:01:13] <MattyMatt> bleh still no milling today
[13:09:19] <sealive> MattyMatt: i did so many milling today so i decidet to go home erlyer
[13:45:38] <MattyMatt> did you say you have solidworks? :)
[13:47:24] <sealive> matty i got alot of the systems working most parts with ProE
[14:20:35] <Jymmm> Grab all the can; After All; Grab all the can; After All;
[14:29:25] <gweepprefect> does anyone out there use tool holders (e.g. Tormach), with pre-measured tool heights? wanted to compare notes on the best techniques for managing everything end-to-end, from CAM to touching off and running programs..
[14:31:15] <JT-Work> I use the tool table to store the offsets from a fixed location for Z and use a g54 offset for the material
[14:34:49] <gweepprefect> i've got a granite plate and a height gauge, so i can measure all of my tool heights offline.. and one of my tools holds a digital indicator, which is set to a known height at its zero, so i can use that to touch off without crashing real tools
[14:35:32] <tom3p> installing vmware server under hardy 8.04 gets error saying gcc used for building kernel is not same as installed. do i need to install older gcc? ( 4.2.4 installed, 4.2.3 wanted )
[14:36:13] <cradek> gweepprefect: sounds like a great setup
[14:36:13] <gweepprefect> so far i have to do a little bit of MDI code to do the touchoff.. T1 M6 G43 H1 .. then i can touch it off, and as long as i do a G43 for subsequent tool changes it seems to behave properly using the tool height offsets
[14:36:34] <gweepprefect> wondering if i can tie that to a button in Axis
[14:37:24] <cradek> I don't see how a button would know which tool number you want, so I guess the answer is no
[14:37:50] <gweepprefect> just for the touchoff - it'll always be tool 1
[14:38:11] <MattyMatt> tom3p, the only things that do that in my experience are kernel modules. do you want to risk that with the RT kernel?
[14:38:19] <cradek> but touch off is already a button
[14:38:45] <cradek> how can it always be tool 1? you have more than one tool surely? otherwise you wouldn't need to use tool lengths
[14:39:07] <gweepprefect> yes, the touchoff itself is, i just mean the precursor stuff i need to do .. the T1 M6 G43 H1 string really. i know i can just type it, but i like to minimize manual stuff where i can
[14:39:28] <cradek> you don't need to g43 before tool touchoff, since touchoff does that for you
[14:39:40] <MattyMatt> I went ahead and installed the old gcc, for nv driver, and it's smooth. doesn't mess with the current gcc
[14:39:52] <gweepprefect> my touchoff tool is tool 1 - it's basically one of these: http://www.tormach.com/document_library/Datasheets/DS31283_TouchTools.pdf
[14:40:15] <gweepprefect> everything else is relative to that, all of the tool lengths are measured offline and pre-loaded into the tool table
[14:41:01] <cradek> cool, kind of like a probe but manually operated
[14:41:37] <cradek> so you'll do T1M6G43 and load this, then zero it on the workpiece, then touch off the G54 system's Z=0
[14:41:50] <gweepprefect> exactly
[14:42:01] <tom3p> MattyMatt vmware server is the app that wont build. how does building the app 'risk the rt kernel'?
[14:42:04] <gweepprefect> i just want to save the step of typing the T1M6G43 by adding a new buttont o axis
[14:42:30] <cradek> (you don't need the H1 because G43 defaults to the current tool)
[14:42:32] <MattyMatt> maybe vmware server is partly a kernel module
[14:42:43] <gweepprefect> fair point
[14:42:58] <gweepprefect> do you happen to know if G43H0 is the same as G43 with no H argument as well?
[14:43:15] <cradek> if you want no tool length offset, program G49
[14:43:30] <gweepprefect> i was looking at the code my CAM post produced and without explicitly setting a tool length offset for every tool in its own tool table, it outputs G43H0
[14:43:38] <cradek> I'm not sure what G43H0 would do.
[14:43:44] <MattyMatt> otherwise why would the vmware build want to be built with the same compiler version? that's a kernel security thing
[14:44:24] <gweepprefect> back to that touchoff tool - my hope is to eventually hack something together so i can read the output of the digital indicator and input it into EMC somehow, and maybe make it a semi-automated touchoff
[14:44:48] <gweepprefect> i suspect its output is a similar format to one of the chinese scale formats
[14:44:50] <cradek> what you want is a probe then (that's what I use)
[14:45:12] <cradek> you don't need an indicator, you just need a switch that tells emc when it has touched
[14:45:48] <cradek> I think tormach even sells a probe
[14:46:22] <gweepprefect> yeah.. a probe would work, though i like the fact that the indicator has its own travel. it's admittedly an overly complex solution to the touchoff problem, but it does have some advantages
[14:47:16] <elmo401> is it just me or is there too much 'dwell' when it rotates the head to make it in the corner http://www.youtube.com/watch?v=pfJaAGQp7Yc
[14:47:39] <elmo401> seems like it would make a deep spot where it slows down too much
[14:48:22] <gweepprefect> drool.. nice 5 axis machine porn there.
[14:48:51] <MattyMatt> <MattyMatt> is vmware a kernel module?
[14:48:51] <MattyMatt> <demonicmaniac> MattyMatt: yes
[14:48:51] <MattyMatt> <Typosu> it has kernel modules
[14:48:51] <MattyMatt> a few of them
[14:49:28] <MattyMatt> so, I wouldn't, on MY emc machine :)
[14:53:02] <MattyMatt> I'm surprised you don't see bolt-on 5 axis spindles on the market
[14:53:24] <MattyMatt> it's pretty self contained unit
[14:54:01] <MattyMatt> * MattyMatt hotglues dremel to camera pan & tilt
[14:54:14] <SWPadnos> http://www.doughtydrive.com/productb.html
[14:54:17] <SWPadnos> B/C drive
[14:55:24] <MattyMatt> yeah not a coaxial unit like that vid tho
[14:55:55] <Jymmm> A/D
[14:56:09] <MattyMatt> that simplifies the kinematics
[14:56:39] <SWPadnos> I don't think that machine was "coaxial"
[14:56:39] <MattyMatt> and is sexier
[14:57:06] <SWPadnos> note that the table moved in XY every time the head rotated, but the tool didn't move (as much) relative to the part
[14:58:48] <Jymmm> I love the PCMCIA SLOT SECURITY on this laptop, it's a single screw on the bottom - DOH!
[14:59:20] <SWPadnos> maybe s/SECURITY/SECURING/ ?
[14:59:23] <SWPadnos> (or similar)
[14:59:32] <Jymmm> Maybe
[15:02:34] <renesis> mounting?
[15:02:48] <renesis> no securing sounds better
[15:06:06] <gweepprefect> thought i'd also share some USB pendant hacking i've been doing... http://www.tangentaudio.com/?p=294
[15:09:23] <gweepprefect> nothing too fancy, but I may be one of the only other people in the world to have hacked on an LCD using hidcomp, other than othe author of hidcomp
[15:10:22] <SWPadnos> too bad about the lack of 9-bit SPI
[15:10:36] <SWPadnos> cool stuff though
[15:13:57] <tom3p> MattyMatt, fix for vmware server = install linux-headers-`uname -r` & build-essential , then use gcc 4.2.4 , but point the hdr includes question to /usr/src/linux-headers-2.6.24-16-rtai/include
[15:14:10] <tlab> gweepprefect, that looks like a nice mill
[15:15:10] <elmo401> MattyMatt: I think he did have a flux capacitor in there... but I didn't see the date selector tool :-P
[15:15:48] <elmo401> gweepprefect: you want nice 5-axis pr0n... http://www.youtube.com/watch?v=_r38wFk2R4c
[15:16:06] <elmo401> I like this style better then the 4&5 axis in the head
[15:16:29] <elmo401> I think it is the same company, too :P
[15:16:53] <gweepprefect> thanks.. it's a converted Sieg X3.. not bad for a benchtop, though anyone with a real machine would sneer at it
[15:17:15] <gweepprefect> elmo401: wow, that machine flies.
[15:17:53] <tlab> what kind of drivers are you using?
[15:20:43] <MattyMatt> elmo401: yeah that's better when your spindle is bigger than your workpiece :)
[15:21:21] <elmo401> now THIS is 5-axis pr0n! http://www.youtube.com/watch?v=0LCaRqQ8Qf8
[15:21:25] <elmo401> * elmo401 drools !!
[15:21:35] <MattyMatt> which I suppose it generally is. maybe that's the true diff between mills & routers
[15:22:33] <MattyMatt> * MattyMatt feels demoted to home router league again :(
[15:22:44] <gweepprefect> there was a video going around a couple of weeks ago of a 5 axis machine making a model of a full face motorcycle helmet in metal
[15:23:21] <elmo401> ya, saw that one too.
[15:23:24] <elmo401> really cool
[15:23:38] <elmo401> but this Matsuura video is crazy!
[15:24:05] <elmo401> our shop would never be able to program like that. our mazaks are just too slow.
[15:25:52] <tlab> hah where I used to work the mazak was the fastest thing we had
[15:28:14] <tom3p> elmo401, yeah the rotaries dont slow down the linear axis axis. so often the rotaries are slugs due to gearing and resolution.
[15:28:52] <tom3p> but i like the knuckle joint on the huron, just looks really beefy
[15:29:58] <MattyMatt> my machine would suit that 45 deg table style
[15:30:20] <MattyMatt> especially as it's on the floor anyway :)
[15:30:55] <elmo401> check this out! footwear CAD http://www.footwear-cadcam.com/general/cadsuite.asp
[15:31:34] <elmo401> I always wanted to design my own shoes.
[15:31:36] <elmo401> now I can ;)
[15:32:21] <MattyMatt> for one pair, you don't need anything special
[15:32:31] <elmo401> I think the knuckle 5-axis spindle is fine for light stuff. don't know about hogging out A2 tool steel for making die!
[15:33:23] <grommit> When I open a hal meter window on axis.X.f-error, rather then showing a what I think should be a small relatively consistant or mildly varying error, it displays a number that increases or decreases as I move the axis. What am I doing wrong?
[15:34:49] <grommit> I am trying to understand why, when I enable the encoders in AXIS, I get a following error every time I move an axis. I believe it is because axis.X.f-error is not sending the right value.
[15:39:18] <grommit> I often have that effect on people :-)
[15:39:47] <tlab> gweepprefect, nice web site
[15:40:46] <gweepprefect> thanks!
[15:40:51] <SWPadnos> grommit, do you have the encoder hooked up correctly (both physically and in HAL)?
[15:41:29] <SWPadnos> if you don't have any feedback, the motor-pos-feedback remains at zero, but the motor-pos-cmd goes up as you try to jog or do any other motion
[15:41:53] <SWPadnos> since ferror is position-feedback, you'll see error = position as long as feedback is zero
[15:42:04] <grommit> Yes, this time I do (I promise :-))!
[15:42:13] <SWPadnos> har har :)
[15:42:33] <grommit> I have 208076 counts per inch
[15:42:44] <SWPadnos> ok
[15:42:50] <SWPadnos> irrelevant, but OK :)
[15:43:10] <grommit> Well, I had the encoders messed up last week when I was trying to figure out this problem.
[15:43:21] <SWPadnos> oh. lucky I was gone :)
[15:43:30] <grommit> :-)
[15:43:43] <cradek> that number sounds so high as to be unlikely
[15:43:56] <SWPadnos> it's also not "round"
[15:44:40] <SWPadnos> (which, though not itself a problem, often suggests that there may be a calculation error)
[15:44:47] <grommit> I have 2048pp X 4 (quadrature) X 10.16 (rev/in on screw) X 40/16 (gear ratio) = 208076
[15:45:02] <SWPadnos> 2.5mm screw?
[15:45:20] <grommit> Not sure, it is smallis (EMCO F1 mill)
[15:45:24] <grommit> smallish
[15:45:57] <SWPadnos> ok. metric <-> imperial is a good cause for non-roundness in numbers
[15:46:22] <grommit> It is very repeatable, that is, I move an inch I get almost exactly 208076 counts
[15:46:41] <grommit> Using a dial indicator..
[15:46:47] <SWPadnos> ok, that's fine
[15:47:04] <SWPadnos> you need to look at all three of those numbers, preferably with halscope
[15:47:12] <SWPadnos> (position command, position feedback, ferror)
[15:47:16] <grommit> Ok, now you all going to leave me alone on my high count encoders and the fact that I am using them with steppers? I know I am a lepper!
[15:47:34] <cradek> stepper leper
[15:47:43] <grommit> :-)
[15:47:46] <SWPadnos> trigger on axis.0.f-errored (assuming you're messing with X)
[15:48:01] <grommit> Ok, hang on, I'll look...
[15:48:04] <SWPadnos> better than a steeper leaper
[15:48:53] <MattyMatt> concentric? is that the best word to describe that huron knuckle?
[15:49:00] <SWPadnos> no
[15:49:20] <SWPadnos> I was wondering what you meant, since it's hard to have concentric anything that tilts
[15:49:44] <SWPadnos> (and it's not anyway :) )
[15:49:49] <elmo401> you think $620 is expensive for a BT30 spindle? http://www.tormach.com/Product_PCNC_maint.html (need to scroll down half way)
[15:50:46] <elmo401> their stepper boards seem a little over priced, though
[15:50:47] <Jymmm> SWPadnos: LOL iPad clone (sorta) http://articles.latimes.com/2010/may/02/business/la-fi-ct-sony-20100501
[15:50:47] <MattyMatt> there must be a special word for that special topology where B/C and spindle all pass through a point, which is fixed in XYZ
[15:51:14] <elmo401> Jymmm: sony can't make anything properly
[15:51:16] <SWPadnos> yeah, it's called "perfect", and it doesn't exist :)
[15:51:26] <elmo401> SWPadnos: lol
[15:51:40] <MattyMatt> it would in the kinematics file for that machine
[15:51:43] <elmo401> Jymmm: plus, there are many iPad clones, though they did come out before the iPad...
[15:52:13] <grommit> Oh, hal scope. I am using hal meter and they all move up in one direction and down in the other. I will try them in hal scope....
[15:53:24] <SWPadnos> MattyMatt, look at the work Stuart Stevenson has done for his 5-axis Cincinatti machine
[15:53:39] <MattyMatt> ah yeah, all calibration would be finite not-quite-zero, so kinematically it's no diff to a doglegged one
[15:53:56] <SWPadnos> most of the work done in the kins has to do with correcting those alignment/manufacturing errors
[15:54:24] <MattyMatt> gotcha
[15:54:53] <MattyMatt> but, in common parlance, what do you call it? eyeball spindle?
[15:55:15] <MattyMatt> 5-axis-knuckle. got that already
[15:55:23] <MattyMatt> ok I'm learnin
[15:55:56] <SWPadnos> no idea
[15:56:08] <SWPadnos> it's called "nodal" in the film industry
[15:56:38] <SWPadnos> they have "full nodal" camera mounts, that let you spin the camera in any direction, with the center of rotation in the center of the film (or sensor) plane
[15:56:59] <SWPadnos> they used to be about $1 million, but they may have come down since then
[15:57:15] <SWPadnos> (that was 10-12 years ago, I think)
[15:57:30] <MattyMatt> $1m for tax purposes
[15:57:46] <MattyMatt> I bet these movies don't spend half what they claim to
[15:57:54] <SWPadnos> $1M for purchasing purposes
[15:58:17] <SWPadnos> they rent, I was talking to a manager at a rental house, where things are actually bought
[16:02:09] <grommit> Ok, I posted halscope output of moving in one direction and the other. Images are http://bgp.nu/~tom/pub/emco1.png and http://bgp.nu/~tom/pub/emco.png
[16:03:14] <grommit> Not sure what I should be seeing...
[16:03:27] <grommit> or what I am seeing for that matter...
[16:04:41] <grommit> f-error follows pos-commanded
[16:05:19] <grommit> I would expect f-error to stay steady and quite low or slightly vary some very small amount
[16:05:33] <SWPadnos> the sign of your feedback or drive is backwards
[16:05:41] <SWPadnos> err, command, not drive
[16:05:54] <SWPadnos> note that one went up while the other went down
[16:06:58] <grommit> does that mean I need to invert one or the other in hal?
[16:07:13] <grommit> or ini...
[16:07:14] <SWPadnos> you need to change one or the other signs in the ini file
[16:07:40] <SWPadnos> most likely the feedback, if the steppers move in the direction you expect (without feedback)
[16:07:54] <SWPadnos> so maybe it's -208076
[16:09:05] <grommit> I have SCALE = -50800, how does that scale relate to INPUT_SCALE, or does it?
[16:09:56] <SWPadnos> you'd have to look at the hal files to be sure (that's where the numbers are actually used), but it's most likely that SCALE is the stepper output scaling and INPUT_SCALE is the encoder input scaling
[16:10:35] <SWPadnos> if the motors move the right way when you disconnect feedback (loop motor-pos-cmd to motor-pos-fb), then you need to change the INPUT_SCALE
[16:11:08] <grommit> setp hm2_7i43.0.stepgen.00.position-scale [AXIS_0]SCALE and setp hm2_7i43.0.encoder.00.scale [AXIS_0]INPUT_SCALE - so you are correct
[16:16:40] <grommit> Hey, I think that worked!
[16:17:38] <grommit> How do I determine what values to set FERROR and MIN_ERROR to in the ini file so that it is reasonable, but faults if I get behind?
[16:23:40] <skunkworks_]> grommit: in halscope you can graph following error.. I think it is axis.0.f-error or something like that for each axis.
[16:24:19] <skunkworks_]> you can then decide what your ferrer should be.
[16:25:01] <grommit> When I show it in halscope it appears to be zero.
[16:26:48] <skunkworks_]> zoom in?
[16:26:56] <skunkworks_]> it can't be zero...
[16:32:21] <SWPadnos> and/or click on the f-error trace and move the cursor, where it says "f(0.2345455) = 1.24566", it's telling you what the value of the selected trace is at the cursor position
[16:32:40] <SWPadnos> (the numbers will change to protect the innocent)
[17:02:08] <Jymmm> You know you're in serious trouble when you need a 48" pipe wrench... http://sfbay.craigslist.org/sby/tls/1722324892.html
[17:14:50] <grommit>
[17:15:03] <grommit> I am seeing 0.00045 max on Z-axis
[17:15:29] <skunkworks_]> neat
[17:15:50] <skunkworks_]> is that at max velocity?
[17:17:07] <grommit> Yes, at max velocity
[17:18:05] <skunkworks_]> set min and max at .001 and see if you can get it will error :)
[17:18:53] <grommit> FERROR and MIN_ERROR at .001?
[17:19:41] <skunkworks_]> yes
[17:22:26] <grommit> Don't seem to be able to get it to fault at 0.001 (z-axis)
[17:23:33] <skunkworks_]> what if you stall it?
[17:23:46] <grommit> what do you mean by stall it?
[17:23:59] <skunkworks_]> can you stall an axis while it is moving?
[17:24:22] <grommit> how would I do that? You mean run into something?
[17:24:38] <skunkworks_]> I was figuring a smallish machine...
[17:25:06] <grommit> You mean hit the end of a screw?
[17:25:47] <skunkworks_]> I was figuring it was a small enough machine that you could just grab the leadscrew to stop movement. how big are the steppers?
[17:26:18] <Jymmm> skunkworks_]: ever see an earth mover? THAT big =)
[17:26:31] <skunkworks_]> heh
[17:26:42] <grommit> 370 oz/in
[17:27:01] <skunkworks_]> you should be able to stall that pretty easy I would think
[17:27:59] <grommit> hmm, I can't with my hands. Must be a weakling :-)
[17:28:47] <Jymmm> grommit: Use a crow bar, that ALWAYS works
[17:29:06] <grommit> careful what you suggest. I am new to this, I might try it!
[17:29:32] <Jymmm> If you try it, you deserve whatever happens
[17:29:48] <grommit> Well, I am new, but try not to be gullible ;-)
[17:30:59] <grommit> doesn't always work though.
[17:31:00] <Jymmm> I only mess with those that have Half-A-Clue (tm)
[17:31:33] <grommit> I tried to buy one of those, but it was too expensive
[17:33:17] <grommit> Many thanks (once again) to skunkworks and SWPadnos for the help!!
[17:33:33] <Jymmm> 1-900-CLUES-FOR-SALE... 1 for $1, 2 for $5, 3 for $10, and out best value 4 for $20, CALL NOW Operators are standing by!
[17:34:55] <grommit> Is that quote for half or a full clue?
[17:35:28] <Jymmm> Yes
[17:39:05] <piasdom> can i zoom in better then with the zoom bar in halscope?
[17:44:40] <grommit> define "better" :-)
[17:47:56] <piasdom> all i see are line with little dots underneath
[17:48:45] <grommit> if you select the channel you want to see, you can then move your mouse along the line and see the value at the bottom
[17:49:13] <grommit> you will see a large dot moving along the line
[17:52:06] <piasdom> k....Thanks
[17:54:41] <piasdom> the large dot suppose to follow the cursor ?
[17:59:12] <piasdom> is there some kind of manual for this thing ?
[17:59:50] <telmnstr> wiki pagez
[17:59:54] <telmnstr> and some html/pdf
[18:00:43] <piasdom> thanks
[18:14:44] <grommit> Can I use my encoders to establish a home position (before I get home/limit switches) on my machine?
[18:15:36] <gweepprefect> not really - encoders are relative, not absolute.
[18:15:44] <cradek> grommit: yes, if they have index
[18:15:53] <grommit> They do have index
[18:15:55] <awallin> if you have an index pulse you can home to the nearest index
[18:16:02] <cradek> grommit: is it a servo machine?
[18:16:13] <grommit> oh here we go again ;-)
[18:16:13] <gweepprefect> you can manually jog the machine to a known position and say "this is home," but you can't really automatically home the machine .. to the best of my knowledge anyway
[18:16:20] <grommit> Steppers with encoders
[18:16:40] <cradek> velocity mode or position mode?
[18:16:56] <grommit> position mode
[18:17:12] <cradek> then no, you can't home to index, it doesn't work.
[18:17:44] <cradek> gweepprefect: many machines are homed by aligning some marks (which are between indexes) and then telling the machine to seek the index. In emc we call this "index only" homing.
[18:18:30] <gweepprefect> do those indexes pulse once per motor revolution?
[18:18:57] <cradek> once per encoder revolution, which is sometimes but not always once per motor revolution
[18:19:48] <gweepprefect> i'm unclear how that gets you machine homing.. presumably you would see many index pulses, say, along the full travel of your X axis.. how do you know which one is closest to your home position?
[18:19:52] <grommit> so in velocity mode what is different with the encoders?
[18:20:18] <cradek> gweepprefect: you align the marks by eye, which is good enough to get between two particular encoder indexes
[18:20:43] <cradek> grommit: you have to use pid, and it works less well than position mode, but you can home to index (I think)
[18:20:50] <gweepprefect> i must be missing an important piece of the puzzle
[18:21:16] <gweepprefect> any visual aids online somewhere?
[18:21:34] <cradek> no idea
[18:21:58] <gweepprefect> i live in stepper land so i haven't encountered this yet
[18:24:38] <atmega> I was trying to use image-to-gcode, but the results are a bit 'pixelate' kind of. Any suggestions on what to tweak?
[18:29:12] <bill2or3> how big is your source image?
[18:34:18] <atmega> around 1100x700 for the last one
[18:35:16] <atmega> .078 end mill (5/64") maybe 8" x 3.5" finished size
[18:38:00] <frallzor> * frallzor finally got screws
[18:55:37] <frallzor> http://www.cnczone.com/modules.php?name=News&file=showarticle&postid=750424 anyone into these things?
[18:57:13] <awallin> frallzor: keep the intelligence in emc2, and keep the pendant "dumb"
[18:57:42] <frallzor> cant even keep a pendant atm
[19:03:26] <frallzor> aeehhh Ill just get a cheap gamepad and slaughter it :)
[19:03:36] <frallzor> and rewire some buttons
[19:05:28] <tlab> is a release of emc2 with ubuntu 10.04 coming?
[19:05:46] <frallzor> http://wiki.linuxcnc.org/emcinfo.pl?Simple_Remote_Pendant all I need =D
[19:06:28] <frallzor> even found the same pad for cheap
[19:09:42] <grommit> From: http://wiki.linuxcnc.org/emcinfo.pl?Steppers_With_Encoders - "Additionally, if encoders with an index channel are used, they will also home to the index. This means it will set itself to a particular mark on the encoder so that homing will be on the money everytime, just like a real cnc."
[19:11:01] <grommit> If true, this indicates I can use my encoders with index to home.
[19:11:18] <grommit> However, in hal scope I don't see index there to use...
[19:11:30] <cradek> it will not work if your stepgen is position mode
[19:12:01] <Jymmm> position mode O_o
[19:14:35] <grommit> The encoder is separate from the stepgen, I still do understand why the mode would make a difference..?
[19:15:32] <SWPadnos> grommit, stepgen (in position mode) keeps track of where it is, and where it's told to be
[19:16:06] <SWPadnos> the encoder will reset itself when an index comes in, but stepgen can't
[19:16:17] <SWPadnos> stepgen has no index or "clear" input
[19:16:52] <SWPadnos> the motion controller doesn't know how to deal with a motor output that does its own positioning like this
[19:18:01] <grommit> When you say "encoder resets when index comes in", does stepgen send the index?
[19:18:16] <SWPadnos> no, that's from the physical encoder hardware
[19:18:42] <SWPadnos> and it goes to the encoder counter HAL component
[19:20:21] <grommit> So could one keep track of the encoder index in a separate place (separate from stepgen)?
[19:20:29] <SWPadnos> um, no
[19:20:50] <SWPadnos> you have to separate in your mind the input path and the output path
[19:21:05] <cradek> I bet a suitably smart person could make stepgen reset for index homing, but that person is not me
[19:21:24] <SWPadnos> "command" and "feedback" may be better terms in this context
[19:21:42] <grommit> Index is feedback from the encoder
[19:21:55] <SWPadnos> well, consider the entire feedback system
[19:22:01] <SWPadnos> it's got position and index
[19:22:11] <grommit> position comes from?
[19:22:14] <SWPadnos> and index does a special thing in a certain mode - it resets the position
[19:22:30] <SWPadnos> the encoder. we're just talking about encoder feedback right now
[19:22:42] <grommit> ok
[19:23:11] <SWPadnos> when you start EMC2, the software encoder component starts at 0, and counts up or down as the encoder turns
[19:23:39] <SWPadnos> normally, it ignores the index pulses
[19:24:00] <grommit> ah, yes I see
[19:24:12] <grommit> I restarted EMC and see that the number changes
[19:24:27] <SWPadnos> there's a HAL pin that tells the encoder counter component that it should reset its counter when an index is detected
[19:25:01] <SWPadnos> (names can get confusing here, since we have the physical encoder, the encoder counting software, physical connections and HAL connections, etc :) )
[19:25:12] <grommit> I had been seeing the same numbers and thought those were fixed from the enccoder.
[19:25:17] <grommit> physical encoder
[19:25:21] <grommit> I see they are not
[19:25:31] <SWPadnos> so that's what happens on the feedback side, the position suddenly snaps from whatever it was to zero, which the motion controller expects while homing to index
[19:25:50] <SWPadnos> ah, no. you need absolute encoders (which aren't really supported at the moment) for that
[19:26:02] <grommit> I see
[19:26:11] <SWPadnos> now look at the output (or command) side
[19:26:50] <SWPadnos> the motion controller knows where it told the motor to be, and when it sees the index (while homing), it calculates an offset based on where it thought it was
[19:27:14] <grommit> ok
[19:27:37] <SWPadnos> so if the command position was 0.12 when the index was hit, the position would be reset to 0.12, and an offset variable would be set to 0.12
[19:27:54] <SWPadnos> this home offset is always added to the command position
[19:28:06] <SWPadnos> err, oops
[19:28:24] <SWPadnos> the position gets reset to 0 (assuming that your home is at 0)
[19:29:09] <SWPadnos> hmmm. I think I explained that backwards :)
[19:29:33] <grommit> I hope so, as I am confused now.
[19:29:37] <SWPadnos> excellent!
[19:29:46] <grommit> :-0
[19:30:11] <SWPadnos> let me sum up by saying that there's an offset that gets summed with the command position, which cancels out the "error" detected when homing
[19:30:15] <SWPadnos> does that make sense?
[19:30:22] <grommit> yes.
[19:30:30] <grommit> but, where did the error come from?
[19:30:51] <SWPadnos> well, the software encoder resets to 0 whenever you start EMC2
[19:31:06] <grommit> then you home, and the diff is the error?
[19:31:11] <SWPadnos> so the error depends on how far from home the machine was when you started up
[19:31:14] <SWPadnos> yep
[19:31:25] <grommit> ok, now I get it
[19:31:35] <SWPadnos> so, look at a servo/PID system
[19:32:31] <SWPadnos> remember that feedback actually snapped to 0, so the motion controller needs to output a "0" command as well, or the PID will try to jump elsewhere
[19:34:24] <SWPadnos> the PID has no internal knowledge of where the machine is - it can do its calculations with only the command and feedback (more or less)
[19:34:40] <grommit> makes sense
[19:34:41] <SWPadnos> contrast that with stepgen, which really really thinks it's at 0.12
[19:35:02] <SWPadnos> feedback from the encoder doesn't go to stepgen, it uses its internal position counter for "feedback"
[19:35:21] <grommit> ok
[19:35:28] <SWPadnos> so the encoder feedback and the motion controller command snap to 0, but stepgen thinks it's at 0.12
[19:35:31] <SWPadnos> so what does it do?
[19:35:35] <SWPadnos> it moves
[19:35:43] <SWPadnos> to what it thinks is 0
[19:35:49] <SWPadnos> and probably causes a following error
[19:36:17] <SWPadnos> (since the motion controller sees the motion from the encoder feedback)
[19:36:47] <grommit> but doesn't a PID loop dampen that?
[19:37:02] <grommit> That is where I don't get the why you can't use PID with stepper/encoder
[19:37:09] <SWPadnos> what PID loop? You don't have one with stepgen in position mode
[19:37:25] <SWPadnos> you could have one with stepgen in velocity mode
[19:37:30] <grommit> I mean, if I wanted to close the loop with the stepper
[19:37:46] <SWPadnos> which is why cradek asked if you were using position or velocity mode
[19:37:47] <grommit> Oh, I thought I could have one in position mode as well. No?
[19:37:51] <SWPadnos> no
[19:38:05] <grommit> hmm
[19:38:10] <SWPadnos> and the way PID works isn't really compatible with steppers either
[19:38:32] <SWPadnos> if a stepper falls behind, it has most likely already maxed out its torque
[19:38:49] <SWPadnos> and the way PID works is to ask for more torque when the motor lags behind
[19:39:01] <grommit> I see
[19:39:07] <SWPadnos> you can see the problem - the motor has no more oomph to give, yet that's exactly what PID needs
[19:39:29] <SWPadnos> servos have reserve torque, even above their continuous ratings
[19:39:35] <grommit> it couldn't just ask for more steps to "catch up" and use the encoder to see if it does?
[19:39:41] <SWPadnos> and they have full torque at all speeds
[19:39:45] <SWPadnos> nope
[19:39:52] <SWPadnos> that would be worse for the stepper
[19:40:20] <SWPadnos> variable step timing results in lower torque
[19:40:40] <SWPadnos> that's one reason why people use hardware for step generation - it's faster, but it's also much smoother
[19:40:58] <skunkworks_]> The thing that someone had never tried was using adaptive feedrate to lower the feedrate as the following error increases... I think it would be a neet experiment...
[19:41:24] <SWPadnos> I thought someone had made some attempts, but ended up with some sort of oscillation
[19:41:33] <grommit> I am using Mesa 7i43
[19:41:35] <SWPadnos> or maybe that's what we thought might happen, I don't remember :)
[19:42:07] <grommit> so is adaptive feedrate part of the feedback loop now?
[19:42:13] <SWPadnos> grommit, PID will change the step rate every millisecond, back and forth as errors are slightly positive or slightly negative. this could end up looking like "bad timing", and may reduce torque
[19:42:42] <SWPadnos> may not, but it still seems like it's already too late
[19:42:55] <grommit> I can imagine that...
[19:44:03] <grommit> what happens to a servo when you run up to it's max torque in your scenario, by the way?
[19:44:24] <SWPadnos> well, that depends on whether you're talking about max continuous or peak
[19:44:28] <skunkworks_]> folloing error :) (if it cannot keep up)
[19:44:47] <grommit> right, but doesn't the PID have the same problem?
[19:45:02] <grommit> that is, oscillation?
[19:45:12] <SWPadnos> machines are generally designed to the continuous rating, but the motor can provide 4-6 times that in short bursts
[19:45:12] <skunkworks_]> not if it is tuned correctly.
[19:45:19] <SWPadnos> well, most servos don't run on steps
[19:45:41] <SWPadnos> there could be some oscillation, but deadband and tuning should eliminate that, if done right
[19:46:04] <SWPadnos> and generally the oscillation will be one or two encoder counts of "dithering"
[19:46:18] <SWPadnos> (makes some servo systems "sing" when they're stopped)
[19:46:37] <grommit> So the PID will just drive the crap out of it, or stop driving it if it?
[19:47:09] <SWPadnos> it will keep asking for more and more, and the motor/driver will either catch up or shut down (or fry)
[19:47:25] <grommit> gotcha
[19:49:50] <SWPadnos> oh, and if it falls really far behind, emc2/PID will stop asking for more - that's what a following error actually is
[20:30:58] <alex_joni> http://failblog.org/2010/05/03/epic-fail-photos-child-safety-fail-4-2/ <- omg
[20:32:17] <celeron55> "the fakest thing I’ve ever seen on this website." 8)
[20:34:25] <SWPadnos> ha: http://graphjam.files.wordpress.com/2010/04/129168866671902100.png
[20:35:16] <alex_joni> SWPadnos: not true
[20:35:32] <alex_joni> there needs to be another category: "people on the couch not watching athletes"
[20:35:38] <SWPadnos> heh
[20:35:56] <gweepprefect> and real athletes don't drink gatorade anyway, they drink more expensive stuff like cytomax
[20:36:48] <SWPadnos> or even, gasp, water
[20:36:58] <alex_joni> wot's that?
[20:37:33] <SWPadnos> http://ihasahotdog.files.wordpress.com/2009/05/128879190370298695.jpg
[21:45:27] <andypugh> Dave911: Did my suggestion make sense?
[22:24:23] <grommit> I was trying to run a friend's ngc file which he has used to mill a part. I ran it and nothing happened, it was running but nothing was going on. I realized that I had not installed his tool.tbl file so I killed it and installed tool.tbl and then ran it again. It began to run, moved the spindle, moved x and y and then just sat there spinning the spindle indefinitely.
[22:24:50] <grommit> How can one tell what it is waiting for?
[22:25:09] <grommit> I ran the EMC status but that didn't seem to indicate anything unusual
[22:25:50] <grommit> The reason I mention the tool.tbl is that the behavior is the same as what was going on when there was no tool.tbl in place. That is, no indication of a problem but nothing heppening.
[22:27:30] <micges> grommit: pastebin.com ngc file
[22:27:48] <jt-plasma> probably waiting for a tool change to complete
[22:27:57] <andypugh> If no tool table = no error message and no movement then that sounds to me like a bug.
[22:28:26] <jt-plasma> how long do you wait for a tool change to complete?
[22:28:42] <SWPadnos> until tool-changed becomes true
[22:28:52] <jt-plasma> exactly my point
[22:28:54] <SWPadnos> shouldn't the spindle stop for a tool change though?
[22:29:02] <jt-plasma> depends on the config
[22:29:06] <SWPadnos> really?
[22:29:11] <grommit> Yes, that is what I thought, spindle should stop
[22:29:18] <jt-plasma> you can leave it on for lathes at least
[22:29:26] <SWPadnos> ah, ok, that makes sense
[22:29:31] <grommit> I can't past the ngc file until tomorrow, as I am not near the machine and it is shut down
[22:29:37] <jt-plasma> doesn't make sense for a mill
[22:29:47] <SWPadnos> no, indeed
[22:30:02] <grommit> The program has been run and tested on his (nearly identical machine) so I don't think there is a bug in it.
[22:30:18] <jt-plasma> did you see the mod to arcbuddy.py on the wiki to dump the results into gedit?
[22:30:31] <grommit> oh wait, I do have the ngc file. Hang on a min....
[22:30:41] <jt-plasma> works pretty slick for hand writing code
[22:31:56] <grommit> ngc file: http://pastebin.com/3sJYBBgF
[22:33:25] <micges> grommit: at what line it hangs?
[22:35:00] <grommit> I don't know for sure
[22:35:33] <micges> it's on emcstatus->current line
[22:35:47] <grommit> yeah, but I am not near the machine
[22:36:06] <micges> ah ok
[22:36:28] <grommit> it was an m6 command if I recall correctly.
[22:36:47] <andypugh> Is that more than one file in the same pastebin?
[22:36:53] <grommit> That is why we thought it was tool change, but spindle was running and no change tool dialog came up
[22:36:58] <grommit> no, one file
[22:37:53] <jt-plasma> EMC status will show the current line
[22:37:59] <SWPadnos> you'd have to paste the ini and hal files again I think
[22:38:23] <SWPadnos> or read the entire manual and verify every setting :)
[22:38:29] <grommit> :-)
[22:38:41] <grommit> That is what I was doing before posting actually.
[22:38:52] <grommit> Well, sort of. I was comparing my files and his
[22:38:53] <SWPadnos> ok. there will be a test tomorrow
[22:39:10] <andypugh> I am puzzled around line 343. But that might just be that the subs are first and the main code last (very C-like) and I am used to the latter. I would expect the material definition to be at the beginning of the file. Almost certainly that is not the problem.
[22:39:18] <grommit> Can I use a calculator or is a slide rule required?
[22:39:27] <SWPadnos> abacus only
[22:39:47] <grommit> It was processed with M4, hence the Clike structure
[22:40:27] <grommit> as I mentioned, this has been run quite a bit on another, very nearly identical machine, without an issue.
[22:40:52] <andypugh> Identical EMC2 versions?
[22:41:13] <grommit> Well, mine might be a bit newer, I will check that too tomorrow.
[22:42:31] <micges> grommit: it works fine here, I think that it's config issue
[22:42:40] <grommit> not surprised!
[22:42:56] <grommit> I suspected as much, that is why I was trying to compare our configs
[22:43:34] <micges> paste config when you can, will see
[22:43:54] <grommit> It may still be in pastebin from a few days ago, let me see.....
[22:47:29] <grommit> http://pastebin.com/ByvhgUc4 - This is close. Some changes were made for my encoders and the toolchange stuff at the bottom is now uncommented....
[22:50:03] <micges> mhm
[22:50:50] <micges> when will you test, take a look at iocontrol tool prepare, prepared, change, changed signals
[22:51:09] <micges> they both should be 1 to make toolchange finish
[22:51:10] <grommit> ok
[23:36:04] <MarkusBec> MarkusBec is now known as MarkusBec_away