#emc | Logs for 2008-06-10

[00:26:50] <chr0n1c> what would be an optimal FERROR and MIN_FERROR for a smal machine with a closed loop stepper setup?
[00:27:03] <dmess> no im Dmess
[00:27:05] <chr0n1c> i got a following error for the first time ever today
[00:27:19] <dmess> he may be my lost Bro
[00:28:06] <dmess> send him to #cam...
[00:29:24] <dmess> that could be where i got 2 left brains and he got 2 rights
[00:29:24] <chr0n1c> wouldn't i send him to #twin though?
[00:29:57] <dmess> i have'nt ventured there...
[00:30:55] <dmess> but thx for the thought..... i'm what most refer to as a twinless twin
[00:31:55] <dmess> he sits a little left and high over MY shoulder... with the CORRECT answer...
[00:33:21] <dmess> saved MY ASS many times... look left.. and say IT... whatever is THERE
[00:39:41] <chr0n1c> ok.. so.. FERROR= is pretty much meaningless on a stepper system unless it has encoders?
[00:42:24] <SWPadnos> yes
[00:42:55] <SWPadnos> even with encoders, you need a few steps worth of FERROR, due to the motor lagging the step pulses by a bit
[00:43:20] <SWPadnos> (that's a few electrical steps of the motor, as if you were using no microstepping)
[00:43:46] <chr0n1c> got it... so i have it set at 1:1 now
[00:44:13] <SWPadnos> what is set at 1:1?
[00:44:14] <chr0n1c> it should be ok as long as i stay under the speeds where i get lost steps, which i have set with MAX_ACCELL=
[00:44:29] <chr0n1c> MIN_FERROR=1, FERROR=1
[00:44:42] <SWPadnos> oh, I thought that was a ratio :)
[00:44:48] <SWPadnos> (which it is, sort of)
[00:44:54] <SWPadnos> mm or inch?
[00:44:58] <chr0n1c> inch
[00:45:03] <SWPadnos> that's 1 inch of error
[00:45:07] <SWPadnos> not 1 step
[00:45:08] <chr0n1c> is that 1 inch
[00:45:12] <chr0n1c> or one thousandth
[00:45:16] <chr0n1c> ohhh
[00:45:20] <SWPadnos> 1 user unit
[00:45:27] <chr0n1c> so i'll do .002
[00:45:36] <chr0n1c> i had the idea it was thousandths
[00:45:46] <chr0n1c> silly me
[00:45:46] <SWPadnos> do you have encoders?
[00:45:55] <chr0n1c> nope, so it could be 100 inches and not matter
[00:46:11] <chr0n1c> i do have encoders... they aren't hooked up
[00:46:14] <SWPadnos> you can set it pretty small, like a couple of steps (microsteps)
[00:46:28] <SWPadnos> when you hook up the motors, it'll be a different story
[00:46:31] <SWPadnos> err - encoders
[00:47:19] <chr0n1c> yeah, i don't have any ports right now to plug them into
[00:47:45] <SWPadnos> heh
[01:04:46] <dmess> this will BLOW your mind http://www.moriseiki.com/dixi/english/products/index.html
[01:07:11] <chr0n1c> does it run on dos?
[01:07:15] <dmess> they have nano-meter precision
[01:07:31] <dmess> NO.. dont be a FOOL
[01:09:34] <dmess> who knows the and and outs .... only rayh....
[01:13:06] <chr0n1c> the last hurco i touched in 1998 still ran on dos
[01:14:16] <dmess> with a track ball???
[01:22:49] <chr0n1c> hmm i dunno it may have had one
[01:53:09] <dmess> they were COOL machines... but WAY different.... g'nite all
[02:24:16] <chr0n1c> can i change to display of the tool in axis? it was a cone forever... then somehow it changed to the diameters in the tool table...
[02:36:12] <crotchetyGuy> /clear
[02:36:19] <crotchetyGuy> eh..oops
[02:39:17] <PMinMO> Is anybody on that can answer some HAL configuration questions?
[02:40:49] <jmkasunich> just ask the question ;-)
[02:41:28] <eric_U> cool, I have some of your stepper drives
[02:42:28] <PMinMO> I've loaded the 8.04 live CD I've got motors running, but can't figure out how to link motor enable
[02:42:36] <PMinMO> or at least control motor enable
[02:42:47] <jmkasunich> what do you want it to do?
[02:43:13] <PMinMO> be able to disable motors when not needed
[02:43:20] <PMinMO> no code running
[02:43:32] <jmkasunich> you mean when EMC is in "machine off"?
[02:43:38] <PMinMO> yes
[02:43:41] <PMinMO> I guess
[02:43:52] <eric_U> I think he wants an idle
[02:43:58] <jmkasunich> I believe there are pins called axis.<number>,motor enable
[02:44:01] <PMinMO> no not an idle
[02:44:23] <jmkasunich> use halmeter to look at the pins, run EMC, switch modes, and see when the pins turn on and off
[02:44:46] <PMinMO> ok makes sense
[02:45:03] <PMinMO> the user interface is real foreign to me right now
[02:45:15] <PMinMO> machine off is disbled?
[02:45:17] <jmkasunich> the EMC interface?
[02:45:40] <PMinMO> it came up with Axis running
[02:45:48] <PMinMO> which looks great
[02:46:04] <PMinMO> I'm just a real newbie with it
[02:47:15] <PMinMO> I believe what I want is to "connect" a motor enable with machine off
[02:48:21] <cradek> axis.*.amp-enable-out
[02:48:23] <jmkasunich> first you find a pin coming out of EMC's motion controller that turns on and off when you want - I believe that is axis.<number>,enable, easiest way to check is to start emc, then from a shell, start halmeter and browse the list
[02:50:10] <PMinMO> Is the "home" in the drop down, a method to drive motors to a home switch?
[02:50:44] <cradek> yes
[02:51:07] <cradek> well, you can home many different ways, switch and/or index pulse
[02:51:18] <PMinMO> I'm not getting any motor movement
[02:51:30] <PMinMO> when I try to home
[02:51:30] <cradek> when you home?
[02:51:35] <jmkasunich> you gotta configure homing in the ini file before the button will do anything
[02:51:43] <cradek> that's also one behavior, common for machines without home switches
[02:51:50] <jmkasunich> there is a page in the manual that explains how to set it up
[02:51:53] <cradek> it assumes you have jogged to the home position
[02:51:58] <jmkasunich> its not that complex, but you do need to read it
[02:52:21] <cradek> http://www.linuxcnc.org/docs/html//config_ini_homing.html
[02:52:59] <tomp2> PMinMO: you from St Louis? (from your logo ) going to the fest? ( i also have 4 of your stepper drives and the i/f pcb )
[02:53:23] <PMinMO> I'm planning on trying to get there for Friday and Saturday
[02:53:30] <tomp2> cool, thx
[02:53:39] <tomp2> can you jog?
[02:53:59] <PMinMO> although I saw the schedule had HAL stuff on tuesday :-(
[02:54:43] <PMinMO> haven't tried to jog, is there a method from the keyboard?
[02:54:54] <cradek> arrows
[02:55:11] <PMinMO> I can execute the default emc2 logo g-code and it looks pretty good
[02:55:17] <cradek> PMinMO: help/quick reference
[02:55:27] <cradek> shows the key shortcuts
[02:55:44] <PMinMO> thnx
[02:56:00] <cradek> aside from zooming/panning the preview, everything is keyboardable
[02:56:35] <PMinMO> i'll be back in a few minutes, the emc machine is in the basement and that box doesn't have network capabilities
[03:03:43] <tomp2> nasa tech briefs has photo of 6dof robot, with a suction cup end packing muffins into a box... a muffin sucker :)
[03:05:15] <tomp2> and (fenn) a nice article on the kins math for a hexapod from ACS motion control "Understanding Robot Movements Through Kinematics"
[03:15:39] <PMinMO> Quick reference is a big help, thnx I can jog all axis. Xen toggles with machine on
[03:16:03] <PMinMO> but I must not have my xen signal correct in hal
[03:16:34] <PMinMO> linsp Xen => paraport.0.pin-14-out
[03:17:14] <PMinMO> pin 14 doesn't toggle with Xen as Hal meter tells me
[03:22:04] <jmkasunich> "net Xen axis.0.amp-enable-out => parport.0.pin-14-out"
[03:22:15] <jmkasunich> or:
[03:22:20] <jmkasunich> "newsig Xen"
[03:22:30] <jmkasunich> "linksp Xen axis.0.amp-enable-out"
[03:22:39] <jmkasunich> "linksp Xen parport.0.pin-14-out"
[03:22:53] <jmkasunich> (you can see why we added the "net" command, much less typing
[03:23:27] <PMinMO> Ok thanks
[03:23:39] <jmkasunich> did you already have an Xen signal?
[03:24:00] <jmkasunich> it sounds like maybe you did, since you say it toggles
[03:24:15] <PMinMO> xen => paraport.0.pin.14.out
[03:24:38] <jmkasunich> earlier you wrote Xen, now xen
[03:24:44] <jmkasunich> names are case sensitive
[03:24:50] <cradek> also, parport is spelled parport
[03:25:12] <jmkasunich> (dunno if you knew that and were just typing fast, or if those are actual copy/pastes of the commands you used)
[03:25:16] <PMinMO> theire ok in the hal file, it's my thumbs here
[03:25:58] <PMinMO> my home signal is false in halmeter
[03:26:04] <PMinMO> signals
[03:26:10] <jmkasunich> from the switch?
[03:26:15] <PMinMO> all three
[03:26:23] <jmkasunich> from the switches?
[03:26:38] <PMinMO> they are nc switches so logic 0 on the ppt
[03:26:49] <PMinMO> when not home
[03:26:50] <jmkasunich> * jmkasunich sends PMinMO a hunk of CAT5 cable
[03:27:04] <jmkasunich> (life is much easier when you can copy/paste stuff, or post your files on pastebin.ca
[03:27:36] <PMinMO> pastebin.ca ?
[03:27:58] <jmkasunich> its a website where you can post just about any kind of text, then give others a URL to view it
[03:28:20] <jmkasunich> example: http://www.pastebin.ca/1036281
[03:28:28] <PMinMO> ok tnx
[03:28:55] <jmkasunich> handy when sharing snippets of hal files, or lettting others see your perplexing error messages, etc
[03:30:52] <PMinMO> http://www.pastebin.ca/1043479
[03:31:57] <jmkasunich> there must be another hal file that creates the signal Xen
[03:32:13] <jmkasunich> * jmkasunich looks at the standard sample config
[03:32:41] <PMinMO> it is just the std config modified
[03:33:01] <jmkasunich> yeah, I'm seeing that now
[03:33:23] <cradek> looks like it was already hooked to pin 14 with that "net Xen" line
[03:33:58] <jmkasunich> so your symptom is that the motors move just fine, but a meter on pin 14 shows no changes as you hit F2?
[03:34:09] <PMinMO> correct
[03:34:27] <PMinMO> f2 toggles Xen in halmeter
[03:34:32] <jmkasunich> yeah, line 37 and line 20 (in the pastebin) are redundant at best - its quite possible that the second one will barf
[03:35:20] <PMinMO> So remove line 37?
[03:35:37] <jmkasunich> I'd remove 20 actually
[03:35:47] <jmkasunich> since there are comments describing what 37 does
[03:36:25] <jmkasunich> PMinMO: are you starting EMC from a shell or an icon?
[03:36:41] <PMinMO> icon on desktop
[03:37:11] <jmkasunich> you might want to use a shell until everything is working - EMC might be printing error messages or warnings that would be usefull
[03:37:25] <jmkasunich> icons swallow messages without even burping - shells display them
[03:37:33] <PMinMO> ok
[03:37:46] <PMinMO> emc2 at the shell prompt?
[03:37:50] <jmkasunich> just emc
[03:38:21] <PMinMO> what about home setup?
[03:39:03] <jmkasunich> one step at a time ;-)
[03:39:58] <PMinMO> ok I assumed deleteing line 20 was the fix on Xen
[03:43:28] <jmkasunich> well, we hope
[03:43:48] <jmkasunich> computers have a way of laughing at your hopes tho
[03:44:19] <jmkasunich> damn, how did it get to be 11:40
[03:44:26] <jmkasunich> gotta walk the dog and get to bed
[03:44:30] <jmkasunich> good luck PMinMO
[03:49:46] <PMinMO> tnx
[04:04:56] <PMinMO> motoer enable is fixed, turns out I posted the wrong hal file
[04:05:00] <PMinMO> motor
[05:28:38] <fenn_> fenn_ is now known as fenn
[06:57:43] <sendo> good morning
[07:29:04] <sendo> damn i accidently shorted one of my parrallel port pins ... not good...
[08:09:22] <pjmm> sendo most parports are current limited, so if you just shorted it to ground then nothing will be damaged
[08:42:49] <sendo> i didnt notice it came loose
[08:43:16] <sendo> shorted it to +25V dc its broken the others stille work tho
[08:59:07] <micges> hello
[12:29:12] <lerman> Is anyone going to CNC Fest currently here? jmkasunich? SWPadnos ? cradek ?
[12:29:21] <SWPadnos> yes
[12:29:33] <lerman> Where are you staying ?
[12:29:42] <SWPadnos> crappo inn I think
[12:29:46] <lerman> I need to make reservations?
[12:30:00] <SWPadnos> you should. there are two basic levels of "place to stay" there
[12:30:10] <SWPadnos> (not counting camping in the field adjacent to the shop)
[12:30:10] <lerman> Can you be more specific? There are a lot of crappo inns there.
[12:30:18] <SWPadnos> heh
[12:30:27] <SWPadnos> America's Best Value Inn
[12:30:41] <lerman> Thanks, I'll try that.
[12:30:43] <SWPadnos> I think it's about $300 for the whole 8 days
[12:31:24] <SWPadnos> the next level is the Fairfield Inn / Country Suites etc, at around $80/night
[12:31:29] <lerman> I'll only be there til Thursday.
[12:32:04] <SWPadnos> oh, so it's not as bad a hit to stay at a nicer place :)
[12:32:32] <lerman> Sure, but it's just me. All I need is a bed and a shower.
[12:32:49] <SWPadnos> oh, well in that case ;)
[12:33:06] <lerman> (A gym, swimming pool, concierge service, a bar, ....)
[12:33:13] <SWPadnos> the ABVI is within walking distance of the Seminary Street shops and stuff
[12:33:16] <SWPadnos> heh
[12:33:25] <SWPadnos> don't forget the Jacuzzi
[12:33:54] <SWPadnos> we generally walk down to a shop for breakfast
[12:35:37] <lerman> Hmmm. Their web link is a dummy from goDaddy. I guess I need to call them.
[12:35:53] <SWPadnos> odd
[12:36:44] <SWPadnos> bestvalueinn.com works from here
[12:37:20] <SWPadnos> you need to call for the weekly (or other discount rates) anyway
[12:37:25] <lerman> But you said "Americas Best Value Inn"
[12:37:38] <SWPadnos> if you mention the CNC workshop, you might get a discount
[12:37:42] <SWPadnos> yep, that's what it's called
[12:38:07] <lerman> That's listed as www.abvigal.com on the Lodging list.
[12:38:35] <SWPadnos> so it is :) I used google
[12:40:26] <lerman> Hey. Look at all the goodies... Gym, bar, indoor pool, FEMA approved (are we going to need that?)
[12:40:59] <SWPadnos> didn't last year
[12:41:10] <lerman> I'll give them a call. Thanks for the pointer.
[12:41:13] <SWPadnos> does that mean "as good as a trailer"?
[12:59:18] <lerman> OK. I'm booked. (by phone -- after web site problems). $45.00 per night.
[12:59:30] <lerman> plus tax, license, and dealer prep.
[12:59:48] <SWPadnos> ok, that's the standard rate I think
[13:09:58] <cradek> lerman: do you have any interp work planned for workshop?
[13:10:41] <lerman> I haven't planned anything specific. I would like to have a discussion about wizards.
[13:10:58] <cradek> have you seen John T's recent stuff?
[13:11:24] <cradek> I played with one but haven't really used them yet
[13:11:55] <lerman> I've just seen references to it. What I'm "working" on is a generic framework for wizards that would let them be embedded into gcode.
[13:12:12] <lerman> The framework wouldn't care about the specifics of individual wizards.
[13:12:36] <lerman> It's all built on the subroutine stuff that I've already built.
[13:12:53] <cradek> can you say what a wizard is? I want to be sure I know what you're talking about
[13:13:03] <lerman> I guess I should probably try to "host" some bull sessions.
[13:14:10] <lerman> A wizard is a picture of a machining operation (circular pocket, threadmill, etc) together with a list of the parameters (feed rate, ...) AND a gcode subroutine to implement the operation.
[13:14:31] <lerman> picture <=> drawing
[13:14:48] <cradek> ok I see
[13:15:51] <SWPadnos> does anyone have interest in trying to get EMC to run on an ARM platform?
[13:16:01] <lerman> To create a new wizard: (1) create the drawing -- a bmp file, (2) create the gcode subroutine, (3) create a list of the parameters. For each parameter you need the type of the parameter -- floating point number, list, etc.
[13:16:17] <SWPadnos> I may be able to borrow an ARM development board with CF and ethernet interfaces (already runs Linux)
[13:16:30] <cradek> SWPadnos: not me
[13:16:30] <SWPadnos> hmmm. I wonder if I have one already
[13:16:32] <SWPadnos> ok
[13:17:19] <lerman> I have an arm board with a 8 inch touchscreen. Actually, two of them -- different types.
[13:17:35] <SWPadnos> which chips?
[13:17:59] <SWPadnos> I hae an Atmel AT91SAM7X board, but it may be a bit underpowered
[13:18:01] <SWPadnos> have
[13:18:04] <lerman> I forget. One is an LH?????.
[13:18:08] <SWPadnos> though it does have ethernet and runs Linux
[13:18:26] <SWPadnos> hmmm - don't immediately recognize the manufacturer from that
[13:20:44] <lerman> One of the boards was sold by earthlcd -- the Marmalade board. It had some manufacturing/design defects and lots of them failed with power supply problems.
[13:21:06] <lerman> The other board was from Logic Products (I think I got the name right).
[13:22:06] <lerman> The marm board was cheap but had problems. The other board was expensive (in small qty) and had other problems.
[13:22:44] <lerman> They touted it as having software ready to go but didn't really.
[13:22:56] <lerman> (At least not for Linux.)
[13:22:57] <SWPadnos> heh
[13:23:12] <SWPadnos> I'd probably just start with one of the Atmel/Cirrus/STMicro development kits
[13:24:07] <lerman> I'm more interested in an ethernet connection to an off board IO board. I really don't like the idea of fat (many wire) connections to machines.
[13:24:59] <lerman> Parallel ports are slow, PCI is wide and not intended for out of box work. USB has latency issues.
[13:25:20] <lerman> I think ethernet could do the job nicely.
[13:26:00] <lerman> I wouldn't mind an ethernet connection to a pluto or mesa, or whatever. (Although I'd prefer programming in C).
[13:26:01] <SWPadnos> yep
[13:26:28] <lerman> The idea of moving HAL to a separate box is (intellectually) appealing.
[13:26:32] <SWPadnos> I have an ulterior motive of making it possible to run HAL-only embedded systems on ARM
[13:26:34] <SWPadnos> yep
[13:26:46] <lerman> And what is your motive.
[13:27:15] <SWPadnos> I've got two projects that scream for HAL, but they're on ARM, and they're far enough behind that I can't switch now
[13:27:26] <SWPadnos> (I was brought in to help catch up, I didn't make these behind myself :) )
[13:28:45] <lerman> Many decades ago (does three count as many) I built a HAL like system that did pid, digital in/out, feed forward, etc using an 8080 processor. It worked more or less like HAL.
[13:29:20] <lerman> Sometimes you can redo something faster than you can finish it.
[13:29:33] <lerman> Just don't tell your boss until it is done. :-)
[13:29:35] <SWPadnos> I agree
[13:29:37] <SWPadnos> heh
[13:29:46] <SWPadnos> I'm my own boss - how does that work? ;)
[13:30:07] <archivist> dont listen to yourself
[13:30:20] <SWPadnos> these are simple PID + some extra math things, but they want monitoring and debugging capability
[13:30:26] <lerman> I once had a boss who wanted me to integrate someone else's code into a project. I knew it wouldn't work, so I just said no.
[13:30:30] <SWPadnos> remote monitoring would be good too
[13:30:51] <SWPadnos> "you're fired"
[13:31:01] <SWPadnos> archivist, I never listen to myself anyway
[13:31:04] <lerman> Monitoring and debugging call for a generic solution.
[13:31:26] <lerman> I haven't played with it, but hal scope seems pretty neat.
[13:31:42] <SWPadnos> it is
[13:31:58] <SWPadnos> you can remote it using remove X / ssh / whatever, which is fine
[13:32:16] <SWPadnos> I'm writing an ncurses program to alow inspection and monitoring of some variables - sound familiar?
[13:32:31] <SWPadnos> (other than the ncurses part)
[13:32:53] <lerman> Is this for a generic product or is it a custom job?
[13:33:03] <SWPadnos> these are custom
[13:33:11] <archivist> ooo curses, theres a blast from the past
[13:33:14] <SWPadnos> hence "ulterior" motive ;)
[13:33:40] <rayh> I'm told that the self employed person has a fool for a boss.
[13:33:43] <Vq^> archivist: curses is still very much around :)
[13:33:50] <archivist> I know
[13:34:02] <SWPadnos> rayh, also a fool for an employee
[13:34:07] <lerman> The best way to make money on custom jobs is to have a generic solution. The first job pays for most of the development and from then on it's gravy.
[13:34:13] <SWPadnos> yes
[13:34:29] <rayh> Oh I thought it was a slovenly employee.
[13:34:29] <archivist> I need some gravy
[13:34:50] <SWPadnos> foolish / slovenly aren't mutually exclusive
[13:34:54] <lerman> Come to fest. They'll have the best hog jowl gravy around. :-)
[13:35:12] <archivist> too far on the pay here
[13:35:14] <rayh> Oh I'm up for some of that.
[13:38:27] <rayh> Speaking of fest. I've got to back and get out of here.
[13:38:32] <rayh> pack
[13:38:48] <SWPadnos> heh - getting there
[13:39:12] <archivist> * archivist waits to watch the webcam from afar
[13:39:26] <rayh> Going to shake hands and make plans with several folk on the way down.
[13:39:28] <SWPadnos> 1FPM
[13:39:46] <rayh> 0.001F
[13:40:24] <jymm> mornin
[13:40:35] <SWPadnos> hodwy
[13:40:40] <SWPadnos> or something
[13:40:50] <rayh> sup?
[13:41:38] <gezr> fest is this weekend?
[13:41:55] <SWPadnos> starts Sunday I think. or maybe Monday
[13:41:55] <rayh> Starts Monday.
[13:42:14] <gezr> ah fun fun
[13:43:48] <tomp2> this weekend, damn time
[13:44:49] <tomp2> re: arm, i just picked up the gnome pocketpc-gcc tools, thinking about the old iPAQ
[13:45:16] <SWPadnos> that may be useful for some UI things
[13:46:38] <rayh> Long years ago now we had a fellow that worked at Palm and was working on an interface.
[13:47:12] <SWPadnos> that would probably have been 68k-based (ColdFire or Fireball or something)
[14:05:07] <jepler> ah there you are
[14:26:23] <lerman_> lerman_ is now known as lerman
[16:19:45] <micges> hi all
[16:23:54] <jepler> micges: after you halcmd setp halui.machine.on true the pin remains true until set back to false (like a toggle switch). You want to have it be true for a short time, like pressing a momentary switch until it has its effect, then releasing it.
[16:24:11] <jepler> micges: your report on sourceforge doesn't indicate that you are ever setting the pin back to false..
[16:26:50] <micges> er
[16:28:57] <micges> yes you have right..
[16:36:28] <micges> in docs there is no info that these are toggle switch pins
[16:36:39] <micges> bug report closed
[16:37:14] <jepler> the documentation could always be better
[16:37:49] <micges> yes I know
[16:45:49] <micges> jepler: another behavior that could be improoved
[16:46:22] <micges> jepler: when I start AXIS and accidentally my board hang up in some way
[16:46:40] <micges> (I have encoder feedback to emc)
[16:46:58] <micges> position sometimes shows "nan"
[16:48:24] <micges> and when I close AXIS and have settings in ini : POSITION_FILE then always when I start AXIS I will have "nan" in position
[16:49:29] <micges> (my board is data transport layer from electronics to LPT)
[16:49:34] <Uriell> Hello, can EMC control a 5 axis CNC machine?
[16:49:46] <archivist> yesum
[16:50:15] <Uriell> Can it take DXF files?
[16:50:28] <cradek> no, it reads gcode
[16:50:52] <cradek> a dxf file does not have the necessary information to control a machine, especially a 5-axis machine, without a lot of interpretation by a CAM system of some kind
[16:51:36] <Uriell> Oh right... it has been 3 years since I last messed up with a CNC machine
[16:52:03] <jepler> micges: what do you believe emc should do in this case?
[16:52:49] <jepler> micges: I think that this condition can only arise if axis.#.motor-pos-fb is nan. Perhaps there is a bug in your position feedback component.
[16:54:05] <micges> I don't know, but eventually industrial customer will get no idea what was wrong and what to do
[16:54:38] <cradek> micges: can you tell us how to reproduce this problem
[16:55:15] <jepler> I can reproduce the problem when I set the motor-pos-fb to nan -- but in my opinion only a buggy position feedback component would do this.
[16:56:30] <micges> jepler: only when something caused to hang on electronics, plug off the cable and so on
[16:57:11] <micges> only problem is there is no way to get info where search the problem, in electronics or in the config or in the program
[16:59:00] <cradek> micges: I don't understand what change you are proposing. It sounds like you have a bug in your driver and you know what it is (gives nan as feedback) and what causes it (unplugging the cable).
[17:07:16] <SWPadnos> it may be reasonable for emc to consider
[17:07:26] <SWPadnos> "nan" feedback as an estop condition
[17:07:46] <SWPadnos> it's pretty obvious you can't control anything if you have crap for feedback
[17:13:54] <awallin_vm> does NaN feedback result in NaN following error also?
[17:16:51] <SWPadnos> it should, but I don't know if NaN > (small_number)
[17:17:14] <SWPadnos> so I don't know if that would trip a following error check
[17:17:57] <dave_1> isn't NAN inderterminate?
[17:18:10] <SWPadnos> it's just not a number :)
[17:18:12] <dave_1> just talking off the wall
[17:18:27] <dave_1> exactly ... so no comparasion is possible??
[17:18:56] <SWPadnos> well, if (a>b) turns into a logical test. I don't know if nan>$anything
[17:19:33] <SWPadnos> a comparison must result in true or false. it may well be that any comparison of nan will result in false
[17:19:36] <SWPadnos> or true :)
[17:20:40] <rayh> Over the years we have seen quite a few NAN's. The original EMC code had traps.
[17:21:28] <dave_1> nan's almost always mean something need fixing!
[17:21:46] <SWPadnos> sure
[17:21:48] <rayh> NAN means divide by zero or really close to it.
[17:22:12] <SWPadnos> maybe more than one thing should be changed here though - it doesn't make sense for a UI to save a nan position
[17:22:29] <SWPadnos> it would make sense to ignore POSITION_FILE if any of the values are nan
[17:22:32] <rayh> So if there is a division in there you have to trap for it.
[17:22:53] <SWPadnos> and/or not save (or write zeroes or something) if any position is nan at program close
[17:24:11] <dave_1> at least zeros might keep you out of trouble ;-)
[17:24:39] <micges> SWPadnos: that would be cool
[17:24:51] <SWPadnos> micges, you still need to fix your driver though :)
[17:25:28] <SWPadnos> as Ray pointed out, if you have any division in there, or some other trig functions, you should check for values that could cause nan and avoid them
[17:25:30] <cradek> SWPadnos: you are arguing that it should silently cover up the error in feedback?
[17:25:52] <SWPadnos> cradek, I think nan feedback should cause an estop
[17:25:58] <SWPadnos> which is far from silent
[17:26:19] <cradek> it will certainly cause following errors already
[17:26:29] <rayh> What is the divisor that we are dealing with here?
[17:26:32] <SWPadnos> are you sure that nan > 0.01?
[17:26:39] <SWPadnos> (for example)
[17:27:26] <SWPadnos> rayh, we don't know - it's in micges' hardware driver
[17:27:34] <cradek> rayh: hardware or driver problems that happen when you unplug cables while the machine is running
[17:27:52] <rayh> AHBL!
[17:28:12] <cradek> I probably agree, but I don't know what that means
[17:28:15] <SWPadnos> that's one problem. the other is having the UI blindly accept values in the position_file which are clearly wrong
[17:28:27] <rayh> All Hell Breaks Loose.
[17:29:08] <cradek> SWPadnos: or motion accepts them from the driver ... or task writes them out ... or reads them ...
[17:29:14] <cradek> or the driver accepts them from the hardware
[17:29:19] <SWPadnos> yep, any/all of the above :)
[17:29:26] <rayh> It still seems to me that the encoder effects the count which is the dividend.
[17:29:36] <cradek> there's one cause. it does not need 17 fixes.
[17:29:49] <SWPadnos> it's best to prevent them from getting into the system at all, but that includes (a) preventing the driver from generating them and (b) loading them from a text file
[17:30:10] <SWPadnos> rayh, we don't know what the driver in question does
[17:30:32] <cradek> ok I can get behind that I think
[17:30:54] <cradek> you said something else earlier (hide the error instead of writing it out)
[17:31:20] <SWPadnos> yeah - I'd like some way of invalidating the file, which nan would be if it's checked for on load
[17:31:55] <SWPadnos> but then you have the problem of hiding the issue on load instead of on save
[17:32:16] <rayh> There are a lot of ways to invalidate the values in that file. If it 's the file that saves last position.
[17:32:17] <SWPadnos> you still need to ignore the data, which is another form of coercing the data into something usable
[17:32:39] <SWPadnos> I mean invalidate as in "mark as known bad", rather than "make the values wrong"
[17:32:51] <rayh> Oh. That too.
[17:33:05] <rayh> sorry just being a b*&.
[17:33:09] <SWPadnos> you could load a file that tells EMC2 it's at X=1 mile, when your machine only goes to 1 foot
[17:33:11] <SWPadnos> heh
[17:33:22] <SWPadnos> crap - I forgot that my roght hand monitor is dead
[17:33:38] <SWPadnos> it works for a few minutes then croaks
[17:36:03] <micges> I check that my driver has to little error checking - i'll fix that
[17:36:34] <dave_1> do you really want emc to store a number at all if it is bad?
[17:37:06] <micges> I want to emc tell me that this number is wrong
[17:37:16] <SWPadnos> not really. I guess we could delete the file if any number is bad - that's a good way to invalidate it :)
[17:37:48] <dave_1> and it usually does this by following error or something that stops operation!
[17:38:30] <dave_1> but a way is needed to operate in a debug mode to find the problem
[17:39:01] <micges> dave_1: my machine does that by hit the error breake and destroy many cables ;P
[17:39:19] <dave_1> OH ... not good
[17:40:06] <SWPadnos> it appears that the only reliable way of detecting a nan is to compare a number with itself
[17:40:22] <cradek> no, surely you use isnan()
[17:40:26] <SWPadnos> since nan is never equal to nan, even using the identical bit representation
[17:40:30] <SWPadnos> well, possibly :)
[17:40:46] <SWPadnos> (according to the wiki page)
[17:41:13] <micges> dave_1: I know now that NAN is NOT good :)
[17:41:37] <dave_1> and neither is tearing up cables
[17:41:53] <micges> (my machine is PID controlled with hard params )
[17:42:20] <dave_1> ah, more difficult
[17:44:46] <dave_1> I really dropped in here to ask a simple quesion: 5i20 first I/0 goes to the encoder/dac board?
[17:46:42] <awallin_vm> dave_1: yes, I think so, the pinout is in the integrator manual
[17:47:19] <dave_1> ok, I looked in the wiki and didn't find anything.... will check he integrator manual... thanks
[17:48:05] <jepler> dave_1: http://linuxcnc.org/docs/html/hal_drivers.html#r1_5_4
[17:48:13] <awallin_vm> if I remember correctly the 50-pin connectors are called P2, P3 and P4 ? and the integrator has a table for each one which shows what the pins are
[17:48:25] <dave_1> It makes sense to me that way but sometime things that makes sense to me don't to anyone else.
[17:48:29] <SWPadnos> P2 is encoders/PWMs, P3 and P4 are I/O (though P3 also has secondary encoders)
[17:48:35] <SWPadnos> IIRC
[17:48:55] <dave_1> I'l go check it out ... I'm trying to have cabling ready for fest.
[17:49:40] <SWPadnos> 50-pin IDC?
[17:49:47] <SWPadnos> or the other end? :)
[17:50:32] <dave_1> 5i20 -> 7i33 and 7i37 and also from there to breakout boards
[17:50:53] <SWPadnos> ok. are you bringing some PC with a 5i20 in it?
[17:51:02] <dave_1> thanks jepler ... the link makes it pretty clear
[17:51:28] <dave_1> I'm brings a mb similar to the one in the Mazak ... only it has video problems ...
[17:51:48] <SWPadnos> I can bring my touchscreen PC with a 5i20 in it, plus I'm bringing aqn embedded PC with a 5i22, plus all the cables/breakouts/DIN-mount breakouts, etc.
[17:52:04] <dave_1> so far I can't get it to work with an pci video card
[17:52:06] <SWPadnos> I also have one or two of the terminal-strip version of the DIO card
[17:52:35] <dave_1> good .. then I can see how someone else did/does it.
[17:52:52] <SWPadnos> well, none of those machines actually run EMC :)
[17:53:08] <dave_1> My plan is to use time at fest to get the 5i20 checked out ...
[17:53:31] <SWPadnos> the embedded box has a custom HAL app on it (with the 5i22+analog boards), but we can test EMC2 on another hard drive
[17:53:52] <dave_1> I'm also bringing my ppmc and a new 64bit dual AMD
[17:54:02] <SWPadnos> I should still have the drive I did development with, which is an ubuntu 6.06+EMC2 thing
[17:54:09] <SWPadnos> cool
[17:54:14] <SWPadnos> are you driving?
[17:54:18] <dave_1> yes
[17:54:30] <dave_1> leaving Thur after school
[17:54:36] <SWPadnos> ah - I was thinking you'd fly, and not want to carry as much :)
[17:54:50] <cradek> I'm bringing my bridgeport cnc so we can convert it to emc
[17:55:03] <dave_1> Barb is coming also ... going to hit all the quilt shops between here and IL
[17:55:05] <SWPadnos> I don't think you'll get 27 MPG with that ;)
[17:55:13] <SWPadnos> so we'll see you Tuesday?
[17:55:17] <SWPadnos> maybe
[17:55:17] <cradek> ha
[17:55:45] <dave_1> this will be a good test of the Camry hybrid ...
[17:56:09] <dave_1> Yakima to Ogden the 80 east
[17:56:11] <SWPadnos> http://www.npr.org/templates/story/story.php?storyId=91259501
[17:57:36] <dave_1> Saw the video on the Honda hypermiler ... I'm not that careful or that crazy.
[17:57:43] <SWPadnos> heh
[17:57:45] <dave_1> Pete is the hypermiler ...
[17:58:01] <SWPadnos> I'm hoping to use some of those techniues to get over 21MPG with my Jeep
[17:58:06] <SWPadnos> techniques
[17:58:12] <SWPadnos> maybe as high as 22
[17:58:16] <cradek> haha
[17:58:33] <dave_1> downhill???
[17:58:44] <SWPadnos> uphill, both ways
[18:01:42] <micges> rayh: driver is simmilar to 5i20
[18:02:26] <micges> encoder counters, dac, adc, one pwm, and inputs outputs
[18:02:34] <micges> all by the LPT port
[18:03:24] <dave_1> flying is about break even for one person but not for two or at least it was two years ago.
[18:03:48] <dave_1> See ya Sunday afternoon if everything goes well.
[18:03:50] <SWPadnos> the cost of a flight from here (about the same distance) was ~$450
[18:04:11] <SWPadnos> the 2200 mile drive is around $400, plus trip expenses and wear/tear on the vehicle
[18:04:29] <SWPadnos> so for one person it's better (unless you have >50 pounds of stuff ;) ), but for 2 you'd have to think about it
[18:04:31] <micges> and simmilar hal driver too
[18:05:13] <dave_1> exactly .. and we are going to go other places on the way home.
[18:06:28] <rayh> Is the FPGA software loaded like the 5I20 or is it handled by the board itself?
[18:07:46] <micges> by the board
[18:08:01] <micges> had ARM on board that do the job
[18:08:04] <SWPadnos> that would be a nice change for the mesa boards :)
[18:08:29] <SWPadnos> I think peteW said the PCIe boards (or at least some of them) would have onboard config SEEPROM
[18:13:58] <rayh> Where does the scaling for an axis take place. In the EMC PC or on the board?
[18:18:13] <micges> in emc hal driver
[18:20:56] <rayh> If the board passes raw counts, why would a bad encoder cause a divide by zero?
[18:22:44] <micges> divide by zxero ?
[18:23:30] <rayh> My thought is that the only way to create a NAN is to divide a number by zero or very near zero.
[18:26:19] <cradek> there are other ways too, but I bet that's the most common one
[18:29:20] <micges> hm
[18:29:31] <micges> that mean that somehow I get scale - 0
[18:29:36] <micges> scale = 0
[18:29:48] <rayh> That would be my guess.
[18:30:46] <micges> ok thanks
[18:30:50] <rayh> (raw-count/scale) + offset
[18:31:04] <micges> but nan in position.txt file is still bad
[18:31:06] <rayh> But there is also the issue of a raw count rolling over.
[18:31:52] <rayh> It would be if there were not some provision for seeing an erroneous entry yes.
[18:32:15] <rayh> Like text where a number ought to be.
[18:32:20] <cradek> you do see it, because it's shown on the screen
[18:32:31] <cradek> yes it shows "nan" on the screen
[18:33:30] <micges> this axis has only 180 degrees of move
[18:33:30] <rayh> Seems to me that EMC would see the text and quit.
[18:34:07] <cradek> I agree it would be better to fail with an error
[18:34:30] <rayh> If the zero count was at 90, you'd roll over each time you went past zero one way or the other.
[18:34:47] <SWPadnos> ooh - that lightning was close
[18:35:20] <ds2> lightning? thought the east coast was a suana?
[18:35:21] <rayh> If I remember, we initialized the old STG card to it's half way value.
[18:35:21] <SWPadnos> an error wouldn't be seen by people running from an icon
[18:35:34] <SWPadnos> (though they aren't the type to experiment with drivers that might give nan)
[18:35:45] <SWPadnos> it's an electric sauna now
[18:36:05] <ds2> at least you are going to get some rain!
[18:36:22] <rayh> Heat lightning. We see it most every summer here.
[18:36:23] <SWPadnos> yep, the torrential rains should clean most of the pollen off the cars
[18:36:32] <SWPadnos> no, this is a regular thunderstorm
[18:36:35] <rayh> Gotta run and pack.
[18:36:48] <ds2> I'd settle for a nice shower
[18:37:07] <SWPadnos> oh, a tornado watch even
[18:37:29] <SWPadnos> I wonder if those gutters stayed clean
[19:26:37] <gezr> I wish I could get extra credit for going to fest
[19:29:10] <fenn> you get workshop points
[19:35:40] <christel> [Global Notice] Hi all, We are now able to receive donations via Paypal again and should you wish to make a one-off donation, create a subscription or re-new a previous subscription you can do so using the links at the left-hand sidebar on http://freenode.net Thank you for using freenode and have a great day!
[20:01:20] <micges> bbl
[20:01:36] <micges> back from work
[20:09:22] <K`zan> iop[+
[20:09:28] <K`zan> +
[20:09:41] <SWPadnos> ? REDO FROM START
[20:11:12] <K`zan> Oops, sorry keyboard went funky, on the spare now.
[20:54:38] <chr0n1c> cradek: you around? i had a question about my backplot display in axis... where it displays the positions and velocities when the machine is moving, all the way across the backplot screen on those lines is blacked out... could it be something with my video drivers or would it be something within axis' code?
[20:55:09] <chr0n1c> if i move the backplot up to that area it gets cut off...
[20:57:48] <chr0n1c> ** details: i can see X:0.0000, Y:0.0000, Z:0.0000 and Vel: 0.000 ... but nothing beside that area is viewable
[20:59:43] <skunkworks> change your video driver to vesa and see.
[21:03:21] <chr0n1c> ahah...
[21:03:30] <chr0n1c> i think it's the unichrome driver
[21:03:52] <rayh_> I had a similar display issue with 8.04 and unichrome.
[21:03:57] <rayh_> vesa fixed it.
[21:04:57] <chr0n1c> thanks rayh_ and skunkworks
[21:05:56] <chr0n1c> * will try as soon as this file is done verifying
[21:06:22] <chr0n1c> i love the sounds of the stepper motors...
[21:06:44] <chr0n1c> lol, hopefully i'll have a working function generator and a midibox_core module done soon
[21:06:54] <chr0n1c> the nc files are ready
[21:14:35] <gezr> well, I put most of the electronics on the bike, and energized the system, and things seem to be working, pressing the starter button, makes things spin :)
[21:15:23] <gezr> Ive got the water system in place, and now I just need to go get the right fluid for it :(, new plugs, and get the ignition coils on.
[21:51:15] <dmess> hi all
[21:52:14] <tomp> i just had a reason to run the jogl (java open gl) version of glxgears, it was a blur!
[21:52:39] <dmess> cool... NOT
[22:00:39] <chr0n1c> anyone need a function generator? i found a cool project... i'll be ordering parts for one soon and milling a board or two...
[22:24:18] <dmess> wont EMC already work as a function generator??
[22:42:27] <chr0n1c> hmmm...
[22:42:42] <chr0n1c> it does...
[22:42:58] <chr0n1c> but what if you wanna test an amp installed in a car
[22:43:16] <chr0n1c> perfect 30hz bass for the subs?
[22:49:59] <chr0n1c> holy cow where are the main emc2 files located?
[22:50:20] <chr0n1c> **on my hd... resorting to search.. lol
[22:53:13] <dmess> your ears are only good to +/- 10hz anyway... it'll depend on temp moisture.. etc...
[22:53:36] <dmess> no need to tune a sound system like that.. its STU----PID
[23:29:25] <tomp> emc's function generator may not be as fast as the hardware project, eg: a pic cant produce a sqr wave faster than its clock. whats the project? ( always looking for fast programmable oscillators :)
[23:37:44] <dmess> i have a friend who is willing to help on some projects... he's got me working on a pcb drilling machine... under 500 bucks...
[23:38:51] <dmess> he' a PIC programmer... so he's familiar with integration...
[23:40:54] <dmess> im thinking retro'd flat bed scanner with a contollable z platen
[23:42:13] <dmess> z axis will be a hybrid rotary-linear motion from a cam under the platen
[23:43:47] <dmess> any thoughts or comments....??
[23:45:27] <chr0n1c> ohhh it's the function generator from nuxie1.com
[23:45:45] <dmess> tool spindle will move only in x-y directions on the carriage... board will present istelf
[23:46:16] <chr0n1c> i can do custom pcbs for people if i have a .dxf or a eagle .brd file
[23:46:43] <chr0n1c> i have a few scanners laying around here
[23:47:00] <chr0n1c> i was gonna scrap them all and use the steel bars in them to build a small lathe
[23:47:28] <chr0n1c> i guess i could possibly do it from a eagle schematic also
[23:47:33] <dmess> were thinking about MORE people who do-it-yourself .. get a rig and GO
[23:48:31] <dmess> micro drilling is an ART... or very expensive...
[23:51:04] <chr0n1c> i've used a .005 drill before in stainless
[23:51:14] <chr0n1c> talk about a pain in the brain
[23:51:32] <chr0n1c> *had to use for a job
[23:51:46] <chr0n1c> it wasn't anythign i wanted to do, lol
[23:52:22] <ds2> now make a 1.000" deep hole with it ;)
[23:52:49] <fenn> dmess what's the scanner's step size?
[23:52:55] <chr0n1c> peck peck peck
[23:53:24] <fenn> and you need 2 or 3 of course
[23:53:50] <fenn> the floppy drive mechanism might work for Z?
[23:55:21] <fenn> * fenn fighting with AVR programming dongles right now