#emc | Logs for 2008-05-21

[00:03:30] <tomp2> wow japanese pastebin.ca using dxf2gode http://ja.pastebin.ca/160788
[00:04:36] <tomp2> and is this the dxf2gcode you used k`zan? a python from de? http://christian-kohloeffel.homepage.t-online.de/dxf2gocde.html
[00:07:08] <tomp2> yah i find no english manuals for that
[00:09:33] <tomp2> jepler: from the dxf2gcode home page " 10.05.2008: Update der BiarcFitting Funktion in Python "
[00:11:59] <tomp2> and some travelling saleman study with a connect the dots picture ( in python)
[00:15:37] <tomp2> optimize hole drilling for pcbs
[01:37:17] <K`zan> Well, I'm out of ideas :-/.
[01:52:25] <eric_U> I need some hoods for my brake levers on my old racing bike, $50 on ebay :0
[02:10:39] <dmess> what kinda bike Eric_U
[02:11:03] <eric_U> it has a frame from a company named Viner
[02:11:12] <eric_U> campy super record components
[02:11:41] <eric_U> the $50 hoods aren't even the good ones, that were made from gum rubber
[02:11:44] <dmess> what year a bike??
[02:11:59] <eric_U> '80 or so
[02:13:04] <dmess> hmm my 82 GT rotted everything but the frame... all the rubber and plastic just crumbled...
[02:15:00] <dmess> i don't think i recall a Viner... but i could never afford a REAL racing sled anyway back then i was still paying for skies
[02:15:11] <eric_U> I have another bike from around that time where the rubber crumbled. Mostly I've been riding them, so it's all newer. But the brake lever hoods are not something you replace on a whim
[02:15:24] <eric_U> it was a small italian company
[02:15:48] <eric_U> nice bike, good as any of that vintage, but cheaper
[02:15:56] <dmess> whats it weigh?? if i might ask??
[02:16:04] <eric_U> funny thing is I was building frames back then
[02:16:12] <eric_U> about 20 pounds
[02:16:51] <dmess> have you seen the fulll mountain bike frame under 2 kgs
[02:17:10] <eric_U> no, but that's not all that light
[02:17:14] <dmess> tube is .020" thick
[02:17:30] <eric_U> I had a titanium frame in the '70s that didn't weigh much more than that
[02:17:48] <dmess> this is aermet 100 tube..
[02:18:27] <dmess> 240-260 ksi uts
[02:18:52] <dmess> you can get it over 300 ksi
[02:19:16] <eric_U> wonder what the fatigue properties are like
[02:20:15] <dmess> its used on the launch bar for the f18 fighter... we make that
[02:21:31] <dmess> it will launch an a/c with a 1/8" crack... and it's LITTLE in section... tested to the moon
[02:21:37] <eric_U> well, that isn't 020 thick
[02:22:09] <dmess> nominal section... .200"
[02:22:47] <dmess> seems reasonable to extrapolate from there
[02:23:23] <eric_U> not really
[02:23:56] <eric_U> but thicker is actually worse for fatigue strength than thin, all else being equal
[02:25:50] <dmess> it looks like a pretty SWEET frame to me... for what i know...
[02:26:21] <eric_U> I'd like to have a new bike, but I don't wanna spend $3k on one
[02:26:39] <dmess> these launch bars have a working life of 20 launches..
[02:26:51] <eric_U> that's about how much mine would cost in today's dollars, it was a $1500-$2000 bike back in '80
[02:27:14] <eric_U> I lost 2 titanium frames to fatigue cracks
[02:27:33] <eric_U> still have one, keep thinking about having it welded
[02:29:01] <dmess> i bought a 2400 dollar diamond back... that didn't get me home.... i peeled the drop out off fallin off the asphalt
[02:30:11] <dmess> thru it into about 15000 dollars worth of bikes wen i brought it back... wiped em all out...
[02:32:27] <dmess> this was a Cr-Mo frame that we built race car roll cages from.... This frame had never been tempered after welding...
[03:23:28] <K`zan> tomp2: Yes, that is the one, all in German and a quick draw and run the dxf through that got a lot of complaints :-(. Source comments are also pretty much in German.
[03:32:42] <tomp2> K`zan, yes, the pdf any help ? ( a few pictures ) I havent tried it yet ( i'm in vismach making a virtual machine now :)
[03:33:25] <tomp2> 11pm & im still at work, gotta go, have fun
[03:33:34] <klickrr> ok, anyone around that can shed some help on PID tuning inside EMC? I have a pico systems board, and actually I have gecko servo controllers, which hold their positions perfectly, setting P, I and D to 0 makes the machine move perfectly upto the FERROR numbers (which I set at 1 inch). But I have this total feedback system so I was hoping to use the PID part of EMC to at least correct missing "steps" when the motors fault out
[03:33:55] <klickrr> with P, I and D at 0 it moves as I stated, perfectly back and forth, upto the FERROR number
[03:34:30] <klickrr> i set P and I to 1 and when i make the first move, the axis accelerates fairly quickly, but noticably until it throughs a fault
[03:35:02] <klickrr> a joint following error, clearly detected from the PID loop thinking it's failing
[03:35:48] <klickrr> perhaps the PID numbers are working in reverse, as it appears to be accelerating it the wrong way, however I already determined the INPUT_SCALE are appropriate direction, and when PID are all 0 it moves up and down, left to right as it should.... so those are right
[03:37:26] <klickrr> although I don't know if I really want EMC doing a PID loop on the signal, but if there is a fault I love the feedback the pico board gives to emc as I don't lose my position. Granted, it sounds like setting PID to 0 and FERROR to 10000.0 might be what i'm asking, i'm not entirely sure... and honestly i'd like to understand the PID looping system for EMC but the wiki doesn't shed much light...
[03:38:51] <cradek> klickrr: I have only tuned pid with servos and encoder feedback. I do not know the ins and outs of the pico stuff. I recommend you ask jon elson. He must help all pico stepper customers with this tuning.
[03:38:53] <klickrr> double redundant PID loops sounds like overkill, as the gecko controllers do the same thing with the servo... although I think the main point of the pico board is for steppers to have encoders, so if it works with that, it technically should work with what I got...
[03:39:16] <eric_U> pid probably isn't suitable for a dualing regulator setup
[03:39:20] <klickrr> yea, I have been in communication with jon,and he's been great, i just figured the EMC PID thing might be a good question to ask here
[03:39:28] <cradek> if you had not already bought the geckos I'd definitely recommend other amps
[03:39:41] <eric_U> what amps?
[03:39:44] <klickrr> well i like gecko's... so
[03:39:55] <klickrr> i have no problems with them, they hold the servo's great, and with EMC PID
[03:40:01] <klickrr> 's set to 0 they move perfectly
[03:40:05] <cradek> (they work best with legacy software that only does step/dir)
[03:40:25] <klickrr> you like trajectory systems?
[03:40:42] <cradek> sorry this is a tangent that is probably not helpful
[03:40:53] <klickrr> hehe, yea well, that's what IRC is for :)
[03:41:06] <cradek> jon elson may even have some pid settings that just work with the step generator
[03:41:17] <klickrr> it was nice to finally see my machine move, even if it only was an inch before a fault occured
[03:41:44] <klickrr> can you set P, I or D to negative values?
[03:41:55] <klickrr> does that make any sense
[03:42:01] <cradek> nope
[03:42:28] <cradek> I bet you should try P only. try largish P and everything else 0.
[03:42:34] <klickrr> k, well my input/output scales are set correctly, at least they move positive when the should, and negative when they should
[03:43:04] <klickrr> yea, but if there was an error, P wouldn't really help..
[03:43:07] <eric_U> setting all to zero doesn't sound right to me somehow
[03:43:12] <cradek> I agree
[03:43:30] <cradek> without P, I don't see how you can get any output
[03:43:51] <cradek> I have to run
[03:44:12] <klickrr> really I bought the pico systems to get feedback into EMC, which it does, when the motors are dis-engaged and I spin them, it shows the movement, which is coool.. but i don't really need EMC doing PID, as the gecko controller makes it basically a DIR/STEP kind of interface, granted I dno't know how that goes into the Pico board exaclty.. but setting PID to 0 make it do that kind of
[03:44:15] <cradek> I think jon elson is usually up very late. he may even respond to an email.
[03:44:25] <klickrr> yea he does
[03:44:38] <klickrr> i've just emailed him like 5 times now and feel bad :) eheh
[03:44:44] <cradek> :-)
[03:44:50] <klickrr> but i don't mind bugging the IRC channel as much eheh
[03:45:01] <cradek> but ... you paid him, not us
[03:45:05] <klickrr> true
[03:45:09] <cradek> goodnight :-)
[03:45:11] <klickrr> night
[03:45:58] <eric_U> did you try it without the pid?
[03:46:53] <eric_U> does Jon give suggestions on settings?
[03:47:42] <klickrr> well he has sample config files on his site
[03:47:46] <eric_U> there was a thread on CNC zone about closed loop steppers, this is basically what you are doing
[03:47:58] <klickrr> http://www.pico-systems.com/codes/univstep/
[03:48:00] <eric_U> I think
[03:48:25] <klickrr> yes, i realize that's what i'm doing... but setting P to 1 and I to 1 made it fail horribly
[03:48:29] <klickrr> I'm wondering why
[03:48:29] <eric_U> so you have encoders separate from the ones on your motors?
[03:48:33] <klickrr> no
[03:48:44] <klickrr> but that board reads those encoders as well
[03:48:50] <eric_U> so you are using your motor encoders twice
[03:48:51] <klickrr> basically emc reads those encoders
[03:48:57] <klickrr> yes
[03:49:32] <eric_U> doesn't really make sense to close the loop on that, but it does make sense to check for lost steps
[03:49:37] <klickrr> the gecko controllers read them and position the motors perfectly, move them perfectly
[03:49:42] <SWPadnos> if you have PID all set to 0, and the FF012 terms are also zero, you should never see any motion
[03:49:42] <klickrr> right, i agree with you
[03:49:55] <eric_U> so the closed loop stepper thread is the place to start
[03:50:00] <SWPadnos> no it isn't
[03:50:06] <eric_U> why not?
[03:50:08] <klickrr> swpadnos: well it moves, up until FERROR limits
[03:50:09] <SWPadnos> the USC is a velocity generator
[03:50:35] <SWPadnos> you need to read back the number of steps output or encoder feedback to see how far it's asked the motors to move
[03:51:05] <SWPadnos> due to clock differences, unattainable velocity values (ie, a rate close to but not quite whatthe motion controller wants), etc
[03:51:10] <klickrr> I have the USC with the gecko interface board
[03:51:23] <klickrr> ok, so you think I need the PID then
[03:51:40] <SWPadnos> klickrr, if you have the PID correctly connected, then setting P, I, D, FF0, FF1, and FF2 to 0 should guarantee that there is no motion
[03:51:49] <SWPadnos> if the motor moves with all those coefficients at 0, then you have a problem
[03:52:09] <klickrr> well ok, let's go that route, which is fine, setting P to 1, I to 1 and D to 0, the initial hold when I start the machien is perfect, I move it a tiny amount and then it accelerates and moves about an inch (FERROR) and fails..
[03:52:26] <SWPadnos> as far as I know, you don't just run the motion controller command position into the USC driver
[03:52:32] <eric_U> you have a scale wrong
[03:52:54] <SWPadnos> or the gecko itself needs a wire to be moved :)
[03:53:14] <klickrr> ok, i have the scale wrong... how could it possibly konw what the right scale value should be
[03:53:24] <eric_U> it's unstable
[03:53:30] <klickrr> are there 2 different scale numbers, besides input and output
[03:53:30] <eric_U> after you close the loop in emc
[03:53:52] <SWPadnos> if you swap the A and B wires going into the USC, then it will count backwards
[03:53:59] <klickrr> wjat are FF0. FF1. amd FF2
[03:54:07] <SWPadnos> so the input scale and output scale aren't necessarily the same
[03:54:23] <klickrr> right, but they move in the right direction as they should, i verified that
[03:54:47] <SWPadnos> also, I don't recall how the scales work with the USC, it may be velocity (like, this much makes the machine move at 1 unit/second)
[03:55:03] <SWPadnos> versus position, with the encoder feedback
[03:55:27] <eric_U> doesn't matter that much
[03:55:33] <SWPadnos> it matters a whole lot
[03:56:02] <eric_U> you're still feeding back position
[03:56:05] <SWPadnos> if you have 1000 counts/inch, and the USC is looking for a "this many units/second" number, 1000 is a very large number
[03:56:11] <SWPadnos> feedback yes, output no
[03:56:34] <SWPadnos> think like an analog drive, which is what the USC is intended to emulate
[03:56:51] <SWPadnos> you never output 1000 (or 10000) to a +/- 10V drive
[03:56:52] <klickrr> ok, is there anyway to increase the debugging enough to have EMC say "PID Failed out becauce of this reason>......" well i'm sure it won't be perefect, but I'm getting nothing, just "joint following error"
[03:56:55] <klickrr> dmesg shows nothing more
[03:57:15] <eric_U> you are getting unstable behavior
[03:57:22] <SWPadnos> you can use halscope to see what the PID inputs and outputs were, and trigger on the following error
[03:57:32] <klickrr> ahh, ok
[03:57:34] <eric_U> it's moving one way, position feeback says it's moving the opposite direction
[03:57:47] <klickrr> eric: I think that might e the case
[03:58:10] <eric_U> swap a and b
[03:58:12] <SWPadnos> or, it's got the wrong scale and it's asking for way too much speed
[03:58:36] <eric_U> seems a lot less likely
[03:58:44] <SWPadnos> if the motor ever stays still, then the gecko is correctly connected
[03:58:55] <klickrr> when i first hooked up the gecko's I had the motor polarity's wrong, so it obviously would go the wrong way and lose the position, I changed them and it worked fine, then I get into EMC and it seems like it's the same thing.. but INPUT_SCALE and OUTPUT_SCALE are set right for what they should be... with P=0 I=0 and D=0 they move in the correct direction...
[03:58:58] <eric_U> I think we determined that
[03:59:18] <eric_U> you may have some ff?
[03:59:18] <SWPadnos> check to see if FF0,FF1,and FF2 are also zero
[03:59:23] <klickrr> well, my scale is wrong, but when i move it 1 inch it moves about 1.5 inches... so it's not dramatically off
[03:59:28] <klickrr> they aren't
[03:59:29] <klickrr> they are:
[03:59:52] <klickrr> FF0 = 0
[03:59:52] <klickrr> FF1 = 1.004
[03:59:52] <klickrr> FF2 = 0.002
[03:59:57] <klickrr> which i don't even know what those are
[04:00:15] <klickrr> BIAS is 0
[04:00:16] <SWPadnos> feedforward
[04:00:26] <SWPadnos> now, what are INPUT_SCALE and OUTPUT_SCALE?
[04:00:42] <eric_U> actually, adding some P would help that
[04:00:43] <klickrr> -10000 and 10000
[04:00:50] <SWPadnos> ok, that's not correct
[04:00:54] <klickrr> ok
[04:01:10] <klickrr> i think i set input to negative because it was going the wrong way
[04:01:14] <klickrr> should i change both?
[04:01:22] <klickrr> i think i changed both and it seemed odd
[04:01:39] <SWPadnos> they shouldn't be the same magnitude for the USC
[04:01:57] <klickrr> well ok, they aren't perfectly set meaning they aren't 10000 but what does that matter
[04:02:03] <klickrr> i'll fix that later
[04:02:07] <klickrr> they are close enough
[04:02:11] <SWPadnos> what are the encoder resolution, gearing, and screw pitch?
[04:02:11] <klickrr> within 50%
[04:02:27] <klickrr> yes i know how to calculate it.. but that's not my issue right now
[04:02:29] <SWPadnos> they're different units!
[04:02:36] <klickrr> it doesn't matter
[04:02:41] <SWPadnos> yes, it matters a whole lot
[04:02:53] <klickrr> EMC doens't understand how scale translates to physicaly units int he real world
[04:02:59] <klickrr> it's close
[04:03:03] <SWPadnos> wait a minute, and listed
[04:03:07] <SWPadnos> listen too :)
[04:03:12] <klickrr> it's not magnitudes off, which i would agree with you
[04:03:28] <SWPadnos> it *IS* orders of magnitude magnitude off
[04:03:42] <SWPadnos> the input scale is in encoder ticks per unit of distance
[04:03:55] <SWPadnos> the output scale is *NOT*
[04:04:27] <SWPadnos> it is related to frequency
[04:04:39] <SWPadnos> or distance / time, once that frequency goes out to the drive
[04:05:13] <SWPadnos> I'm looking at the source now, but if you look at the USC sample config, it has 4000 INPUT_SCALE and 1.000 output_scale
[04:05:52] <klickrr> http://www.pico-systems.com/codes/univstep/univstep.ini
[04:05:59] <klickrr> please show me where you are reading that
[04:06:03] <eric_U> dang, I hate it when swp is right
[04:06:05] <SWPadnos> I'm looking at the version in CVS
[04:06:27] <SWPadnos> ok, in that version, they're the same :)
[04:06:48] <klickrr> yes, i of course used the ones published on the site... shame on me to use the published ones....
[04:07:01] <SWPadnos> CVS is published, and automatically installed
[04:07:24] <SWPadnos> and is more recent too
[04:07:42] <klickrr> ok, so you think I should set output scale to 1.00 ?
[04:08:00] <SWPadnos> I'm not sure what it should be
[04:08:16] <klickrr> i'm looking at my old EMC configs and they are 1.0 as well, my input scales are what I changed to my encoder's
[04:08:18] <SWPadnos> it's probably best to figure out the actual encoder scale first - should save trouble later
[04:08:22] <SWPadnos> ye;
[04:08:24] <SWPadnos> yep
[04:08:39] <klickrr> well my old EMC configs are for a totally different system
[04:08:50] <klickrr> but seeing the output scales 1.0 versus 10 freaking thousand is a big deal
[04:08:57] <klickrr> so yes that is many magnitudes off
[04:09:05] <klickrr> i could see that causing the PID loop an issue
[04:09:54] <klickrr> so what should the FF0,1 and 2 be set to?
[04:09:59] <SWPadnos> hmmm. it could be that it's supposed to be the same now
[04:09:59] <klickrr> did the values I showed look alright?
[04:10:28] <SWPadnos> not really. a "normal" stepper system would have 1.0 for FF0, and 0 for FF1 and FF2 (I think)
[04:10:41] <klickrr> i remember EMC 1 they were both big numbers, but looking at my configs (which same computer as for the new machine, the one we are talking about) the output scale is 1.0
[04:10:43] <SWPadnos> that could be 0, 1, and 0 rather than 1, 0, 0
[04:11:28] <SWPadnos> ok, the frequency is calculated as the velocity input (which would be the PID output) * scale, so it might just want to be the same magnitude as INPUT_SCALE
[04:12:58] <klickrr> ok
[04:13:15] <klickrr> i'm trying to get unlazy enough to go downstairs and test this theory out
[04:13:28] <SWPadnos> P = 150
[04:13:30] <SWPadnos> I = 100
[04:13:31] <SWPadnos> D = 0.1
[04:13:32] <SWPadnos> BIAS = 0.0
[04:13:34] <SWPadnos> FF0 = 0
[04:13:36] <SWPadnos> FF1 = 1
[04:13:37] <SWPadnos> FF2 =0.0
[04:13:39] <SWPadnos> that's what's in the CVS ini file
[04:13:45] <klickrr> yea
[04:13:53] <klickrr> 0,1,0 for FF's.. ok
[04:13:57] <SWPadnos> more or less the same for all axes, though the first does have the 1.004 / 0.002
[04:14:05] <SWPadnos> note P=150, I=100 ...
[04:14:06] <klickrr> well i zero'd PID's cause of the issues
[04:14:17] <klickrr> what about input/output scale?
[04:14:20] <SWPadnos> those seem set for some machine of Jon's, not a basis for further tuning
[04:14:57] <SWPadnos> get the correct encoder scale factor, and use it for both (I think I was wrong about the magnitude)
[04:15:05] <klickrr> 4000 is the correct number
[04:15:10] <SWPadnos> hmmm
[04:15:11] <klickrr> 500CPR
[04:15:16] <klickrr> 2 turns/inch
[04:15:29] <klickrr> times 4, for quadrature encoder decoding
[04:15:35] <SWPadnos> if 10000 made it move 1.5" or so, then 4000 wouldn't be right - it would be closer to 6000-7000
[04:15:47] <klickrr> i said that but i didn't measure shit
[04:15:50] <SWPadnos> ah
[04:15:54] <klickrr> i was 7 feet away from the machine
[04:15:57] <klickrr> looking at it move
[04:16:04] <SWPadnos> stick your head in there next time ;)
[04:16:12] <klickrr> i just meant that it wasn't 1 inch versus 10 feet
[04:16:13] <klickrr> ehhe
[04:16:16] <SWPadnos> (for the record, do not stick your head in the machine ;) )
[04:16:30] <klickrr> yea, with the new servo's on this machine, not a good plan
[04:16:36] <SWPadnos> heh
[04:17:05] <SWPadnos> note that you need to change a jumper on the USC if you want to use encoder feedback rather than step output
[04:17:21] <SWPadnos> if you didn't change that jumper when you cahnged the sign of the scale, then you have a problem
[04:17:26] <klickrr> well I have the DIP's set to read the encoder values in EMC
[04:17:29] <SWPadnos> and there's a separate jumper for each channel
[04:17:31] <eric_U> just dont' stick your finger in there, don't ask how I know
[04:17:32] <SWPadnos> ok
[04:17:43] <klickrr> emc reads in realtime the movement of the motors
[04:17:46] <SWPadnos> right - DIP switches, not jumpers
[04:17:50] <SWPadnos> ah, right
[04:17:54] <klickrr> from my standpoint that's pretty cool, as i've never had a machine do that before
[04:18:08] <SWPadnos> yeah, I was jazzed when I got that to work :)
[04:18:19] <klickrr> granted, the machine doesn't work correctly yet :) but hopefully we'll get there eheh
[04:18:25] <SWPadnos> yep
[04:18:29] <klickrr> ok, i'm going downstairs, i'm setting output scale to 1.0
[04:18:43] <SWPadnos> have fun. I think I'll go upstairs and get some sleep ;)
[04:18:44] <klickrr> i'll try and login from there probably , unless it works perfectly, then i'm throwing a party
[04:18:57] <klickrr> sleep is overrated
[04:19:17] <SWPadnos> rest isn't
[04:23:24] <klickrr0> ok
[04:24:37] <klickrr0> with output scale set to 1 versus 10000 the machine doesn't move... interesting
[04:24:53] <SWPadnos> yeah, it needs to be high like INPUT_SCALE
[04:25:20] <klickrr0> ok hmm
[04:25:23] <klickrr0> no wait
[04:25:27] <klickrr0> that was with PID set to 0
[04:25:32] <klickrr0> i set P to 100 and I to 100
[04:25:35] <klickrr0> something's different, hold on
[04:26:51] <klickrr0> hmm, no, failure...
[04:27:14] <klickrr0> well that's odd
[04:27:36] <klickrr0> it seems to move a hundredth of an inch every second
[04:27:41] <klickrr0> like some timing interval is coming....
[04:28:03] <SWPadnos> hmmm
[04:28:10] <SWPadnos> disconnect the step line from the gecko
[04:28:29] <K`zan> I had a similar problem. Turns out I was not using the config file I thought I was :).
[04:28:33] <eric_U> that sounds like noise on the encoder line
[04:29:08] <SWPadnos> it depends on whether the position readout is changing or the motor is moving (or both)
[04:29:21] <eric_U> or is that with a commanded move?
[04:30:38] <klickrr0> ok i have no idea what's going on
[04:30:53] <klickrr0> are we sure the output scale should be set to 1.0 ?
[04:31:00] <SWPadnos> no
[04:31:03] <klickrr0> ok
[04:31:10] <SWPadnos> I think I said a few times that I was wrong about that :)
[04:31:18] <klickrr0> cause it's moving so slowely a turtle woudl pass it like a nascar to a snail
[04:31:33] <klickrr0> 1 thousandth of an inch per second
[04:31:36] <klickrr0> speed demon :)
[04:31:50] <SWPadnos> that's about right for EDM
[04:31:57] <klickrr0> ehhe
[04:33:13] <K`zan> Anyone here using dxf2gcode and if so, is there a set of English docs for it anywhere that I have missed?
[04:33:22] <klickrr0> ok i set it to 4000 (like the input scale) the machine JUMPS in the correct direction but instantanously faults out
[04:34:09] <SWPadnos> can you stick the entire ini file on pastebin.ca ?
[04:34:25] <klickrr0> ok, let me measure to make sure my scale's are right
[04:34:45] <klickrr0> i have a digital guage that's accurate to half a ten thousandth of a inch or something
[04:38:41] <klickrr0> ok i'm withint 2 thousanths of an inch
[04:38:43] <klickrr0> that's close enough
[04:39:16] <klickrr0> I set P, I and D to 0 and it works
[04:39:27] <klickrr0> up until FERROR gives me a joint following error....
[04:39:43] <SWPadnos> except that it's trying to be a stepper motor - that doesn't do any feedback-based correction
[04:39:52] <klickrr0> right
[04:40:05] <klickrr0> ok, i'm setting I to 1, nothng else
[04:40:08] <klickrr0> gonna see what happens
[04:40:34] <klickrr0> wow, without even moving it took off by itself
[04:40:40] <klickrr0> albeit slowing accelearting
[04:40:50] <klickrr0> which is exactly what I would do
[04:41:18] <eric_U> set P to something, I and D are the work of the devil
[04:41:49] <klickrr0> ok, setting I to negative 1 works more like I would expect
[04:41:52] <klickrr0> it's oscillating
[04:41:57] <klickrr0> so setting it negative is the key
[04:42:08] <klickrr0> it's oscillating about a quarter turn
[04:42:11] <eric_U> it will never work that way
[04:42:11] <klickrr0> slowing back and forth
[04:42:12] <klickrr0> hahaha
[04:42:16] <SWPadnos> I should never cause oscillation
[04:42:25] <klickrr0> well it will if not tuned properlly
[04:42:26] <eric_U> I always causes oscillation
[04:42:28] <SWPadnos> I'm pretty sure it should be positive
[04:42:36] <klickrr0> well negative is doing what it should
[04:42:47] <klickrr0> i' mgonna work with P first
[04:42:49] <eric_U> oscillation is not "what it should"
[04:42:57] <SWPadnos> the normal way to tune is to set everything to 0, then increase P until it starts to oscillate
[04:43:03] <dave_1> I should give you long term settling
[04:43:29] <SWPadnos> once that happens, you back it off (varying amounts depending on the method you're using), and add in some I to make it settle on the correct spot
[04:43:33] <klickrr0> oscillation is what it should if not tuned properly but if the polarity is correct, my ponit was that with I, or P positive it FLEW off it's set point, with it negative, it's clearly trying to negotiate towards it instead of away from it
[04:43:47] <SWPadnos> you can also add D if P causes overshoot (or something like that)
[04:43:49] <dave_1> when P is high enough to just sustain osc the set to 0.6 X
[04:43:52] <eric_U> because you have your inputs backwards
[04:43:57] <klickrr0> SWP, I agree, just I was a less violent way to test my negative/positive theory
[04:44:18] <klickrr0> ok, i' mgonna just start with P
[04:44:28] <SWPadnos> remember to remove the FF0-2
[04:44:30] <SWPadnos> set them to 0
[04:45:16] <SWPadnos> incidentally, you can fiddle with these numbers "live", by using halcmd (if you're not doing that already)
[04:45:54] <dave_1> I tend to use the calib but halcmd makes sense
[04:46:19] <klickrr0> ok, setting P made it go crazy, it's very strange
[04:46:46] <dave_1> so ... binary search??
[04:46:47] <klickrr0> deadband is set to a thousandth of an inch, you think that's large enough?
[04:46:52] <SWPadnos> not for tuning
[04:47:10] <klickrr0> doesn't really matter, i surely will be testing out of deadband.. nevermind
[04:47:10] <SWPadnos> but then again, if you have very powerfull motors, you may not want a lot of oscillation
[04:47:20] <klickrr0> they are pretty powerful i think
[04:47:29] <klickrr0> nema 34
[04:47:30] <SWPadnos> oh, deadband - I misread that as following error
[04:47:42] <klickrr0> they weigh 10 pounds each i think
[04:47:43] <SWPadnos> heh - that's only powerful for small mills ;)
[04:47:52] <klickrr0> well yes
[04:47:58] <dave_1> I typically set deadband at about 1.6 counts
[04:48:16] <dave_1> and folowing error ... out of sight
[04:48:20] <klickrr0> so that would be close...
[04:48:27] <klickrr0> i think
[04:48:34] <SWPadnos> 4 counts - close enough for tuning
[04:48:46] <klickrr0> ok, halcmd, never used it, i' mgonna try this
[04:48:52] <SWPadnos> halcmd -kf
[04:49:03] <SWPadnos> then you can setp pid.0.Pgain <whatever>
[04:49:12] <SWPadnos> setp pid.0.Igain 0
[04:49:12] <klickrr0> could not open shared memory
[04:49:13] <SWPadnos> ...
[04:49:20] <SWPadnos> is EMC running?
[04:49:24] <klickrr0> no
[04:49:28] <SWPadnos> well ... :)
[04:49:37] <klickrr0> oh, i'm supposed to start that :)
[04:49:41] <klickrr0> i thought it replaced EMC
[04:49:42] <klickrr0> ehhe
[04:49:42] <klickrr0> ok
[04:49:43] <dave_1> details :-)
[04:49:44] <SWPadnos> that was the "live tuning" idea - EMC has to be alive to use it ;)
[04:50:33] <klickrr0> ok, i have no idea what to do with this
[04:50:39] <klickrr0> give me a command that might be useful
[04:51:17] <SWPadnos> first, tab completion works
[04:51:26] <SWPadnos> setp is the "set parameter" command
[04:51:34] <SWPadnos> and the PIDs are called pid.0, pid.1 ...
[04:52:00] <SWPadnos> so if you type setp pid.0<tab><tab> - halcmd will show you all the parameters you can set for pid.0
[04:52:15] <klickrr0> gotcha
[04:52:16] <SWPadnos> there's also a help command
[04:52:25] <SWPadnos> and quit or exit will exit
[04:57:52] <klickrr0> ok, FF1 had more to do with it then I thought, when I set that to 0 the machine doesnt move.. hmm
[04:58:33] <dave_1> machine should move with just P = xxx and everything set to 0
[04:58:40] <SWPadnos> FF1=0 and everything else =0 means "output the input command directly to the output"
[04:58:54] <SWPadnos> err - FF1=1
[04:59:35] <klickrr0> ok, i set everything to 0, PID, FF's, and then I set P to 1, and it works.... somewhat
[04:59:50] <klickrr0> i had to change my input scale to negative, and now it holds and moves pretty well
[04:59:55] <klickrr0> i think i need to increase it though
[04:59:57] <SWPadnos> it'll be sluggish - so you increase P (you don't have to change the command position)
[05:00:04] <dave_1> OK . increase P
[05:00:42] <klickrr0> ok now it twitches
[05:01:11] <dave_1> does the twitch die out after awhile?
[05:01:15] <klickrr0> nope
[05:01:22] <klickrr0> when it's idle it's twitching
[05:01:31] <klickrr0> looks like a thousand of an inch
[05:01:35] <klickrr0> maybe i should increase deadband
[05:01:38] <klickrr0> lemme try that
[05:02:04] <eric_U> heh, I said the input was backwards approximately 1:10 ago
[05:02:47] <klickrr0> well with PID and set to 0, with FF0's set, it seemed to work alright
[05:03:10] <klickrr0> so yes I agree something was backwards, but there's more then just one variable that makes a differenc,e in this case it's 8 :)
[05:05:17] <dave_1> this is servo's with tach feedback?
[05:08:02] <dave_1> assuming that is so ... if you put a 9 v battery across the servo amp input do you get pretty much max velocity on the axis?
[05:08:21] <eric_U> no its universal stepper with servos and geckos
[05:09:16] <dave_1> ok ... that changes things and I don't have much experience there.
[05:10:15] <klickrr> ok, well i'm upstairs now, my wireless keyboard stopped working downstairs, probably the batteries... I appreciate everyone's help, in the last 5 minutes I'm much more confident that I can get it tuned and working properly
[05:10:38] <klickrr> I got the Y axis to move way beyond the FERROR amount and with the deadband increased a little it appeared to not jitter at idle
[05:10:46] <klickrr> and it moved smoothly of course
[05:10:59] <klickrr> after 6 months of work it's nice to see the machine move
[05:11:12] <eric_U> what kinda machine?
[05:11:16] <klickrr> well, 6 months of anticipation, i didn't work on it for 6 months solid or anything eheh
[05:11:21] <klickrr> i built one
[05:11:23] <klickrr> with 8020
[05:11:27] <klickrr> aluminum extrusions
[05:11:32] <eric_U> router
[05:11:38] <klickrr> yea, gantry style
[05:12:10] <klickrr> http://www.cnczone.com/forums/showthread.php?t=54974
[05:12:16] <klickrr> I haven't posted a picture recently
[05:12:34] <klickrr> it's got the Z axis complete, with motors everywhere, and the electronics box obviously
[05:12:36] <eric_U> nice
[05:12:38] <klickrr> i need to update that post
[05:12:54] <klickrr> put post #3 shows basically the size of the machine
[05:12:55] <dave_1> it is always a thrill whenit does what you command.
[05:13:03] <klickrr> yes it is
[05:13:27] <klickrr> when i set P to 1 and it went the opposite direction, then randomly moved back and forth, it wasn't that great eheheh.. but now it appears to be doing what I say :)
[05:13:48] <klickrr> stupid batteries had to die on the keyboard
[05:14:28] <klickrr> well it's good to know that EMC will get feedback of my servo motors position in any event.. that's a major improvement on my old system, which had no feedback into EMC
[05:15:09] <klickrr> i gotta get all my limit switches hooked up though, the machine has a lot of power, and is much scarier then my first... so i want limit switches eheh
[05:15:34] <dave_1> good idea
[05:15:52] <klickrr> so what type of machine/(s) do you work with?
[05:16:10] <dave_1> Mazak V5
[05:16:51] <klickrr> well based on the picture i found, that looks like a hell of a machine
[05:17:06] <eric_U> it's just a toy to dave
[05:17:12] <dave_1> pretty much like the one at Galesburg that is on the wiki
[05:17:36] <dave_1> My shop won't take anything larger at this point
[05:17:36] <klickrr> you work with it for your job? or other?
[05:17:44] <dave_1> I
[05:17:55] <dave_1> I've been retired for 15 years
[05:18:07] <klickrr> well that's a hell of a machine ehhe
[05:18:18] <klickrr> how much does it weigh?
[05:18:35] <klickrr> retired for 15 years.... i haven't been working for 15 years
[05:18:47] <dave_1> webpages.charter.net/bengvall/emc/emcconversion.html
[05:19:18] <dave_1> about 9000 lbs
[05:19:24] <klickrr> hold crap
[05:19:28] <klickrr> holy
[05:19:47] <dave_1> getting it into the shop was an adventure
[05:19:59] <klickrr> my aluminum machine weighs in at... hmm, my guess is 300 pounds, at most, i think that's heavy, i dread moving that.. i can't even imagine that machine
[05:20:29] <eric_U> I'd really hate to move at this point
[05:20:36] <dave_1> 15K forklift set it thru the door ... then 1.5" rollers from there
[05:20:41] <eric_U> but at least it will be cheaper to rent the forklift only once
[05:20:41] <klickrr> so what do you make with it?
[05:20:53] <eric_U> he makes machine guns
[05:20:57] <klickrr> you should use rockets to move it :)
[05:20:58] <dave_1> mostly small parts
[05:21:10] <klickrr> eheh, machine guns
[05:21:14] <dave_1> related to muzzleloaders
[05:21:28] <eric_U> if you look in the picture at the bottom of the page you see all the batf agents surrounding his house
[05:21:40] <dave_1> don't laugh ... I spend the afternoon playing router on a prototype stock .. ( wood )
[05:22:09] <dave_1> I'm trying to get a .58 cal ready for hunting season this year
[05:22:10] <eric_U> with the mazak?\
[05:22:11] <klickrr> wow
[05:22:39] <dave_1> pretty limiting with a 4K spindle
[05:22:47] <eric_U> did it work?
[05:22:51] <dave_1> yep
[05:22:56] <klickrr> you have pictures of guns, and paws
[05:23:02] <klickrr> quite different
[05:23:46] <dave_1> lets see ... some place I posted pictures of a breechblock for a Starr carbine
[05:23:49] <klickrr> so when is the next EMC meetup?
[05:23:53] <K`zan_emc> Well, I'm out of ideas for now. Downloaded Mach3 and will look at that and see if it is worth the hassle.
[05:23:58] <dave_1> about a month
[05:24:06] <K`zan_emc> My brain hurts, night all.
[05:24:13] <klickrr> oh really, where is it at?
[05:24:13] <dave_1> take care
[05:24:21] <klickrr> nioght
[05:24:22] <dave_1> Galesburg, IL
[05:24:47] <dave_1> check web ... cnc-workshop.com should do it
[05:24:57] <klickrr> 7 hour drive.. hm
[05:25:29] <dave_1> beats beats 30 hours
[05:25:30] <klickrr> oh my birthday, eheh
[05:25:35] <klickrr> you in cali?
[05:25:42] <dave_1> E Wa
[05:25:48] <klickrr> ah, well then you fly
[05:25:55] <K`zan> This one too :).
[05:26:02] <dave_1> drove once , flew once
[05:26:03] <klickrr> cheaper then gas probably
[05:26:04] <K`zan> Night folks
[05:26:15] <dave_1> will drive this year ... with wife along
[05:26:43] <klickrr> i don't think i'd be very useful but going might be fun
[05:26:46] <dave_1> drive/fly about breaks even ... with rental car for a week
[05:27:05] <dave_1> lots to learn ... never a dull moment
[05:27:15] <dave_1> all the emc develop crew is there
[05:27:39] <klickrr> yea, even though I use EMC, i really don't know much about it underneath
[05:27:46] <dave_1> Ray Henry does a nice series of classes on cnc and emc
[05:27:50] <klickrr> that' evident with my lack of PID tuning knowledge heeh
[05:28:07] <dave_1> pid tuning is mostly an art ..
[05:28:14] <dave_1> is shouldn't be but
[05:28:25] <klickrr> well, yes i know, but i mean in regards to how it integrates within EMC
[05:28:27] <dave_1> halscope has made it much easier
[05:28:50] <klickrr> i've programmed microcontrolers to do PID logic before with servo's... but just cause of i've done that doesn't mean i know how to do it in EMC
[05:28:54] <dave_1> the code is all there ... to read ;-)
[05:29:01] <klickrr> hehe true :)
[05:29:24] <klickrr> just gotta find the time
[05:29:59] <dave_1> I pretty much use ... and sometime test ... I can break almost any code
[05:30:16] <klickrr> hehe
[05:30:37] <dave_1> emc has come a long ways since .9J patch to build realtime
[05:30:57] <klickrr> yea, i've been using emc for a while now..., i don't think since .9, but for like 2-3 years i think
[05:31:12] <klickrr> i wrote my own controller at first
[05:31:22] <klickrr> and it was just so much work to maintain my own machine control interface
[05:31:34] <klickrr> especially without a realtime OS, the jerks were horrible
[05:31:35] <dave_1> that emc1 in early user stages ... maybe 1999 or 2000.
[05:31:45] <dave_1> I had the first ppmc controller from Jon.
[05:31:53] <klickrr> oh yea
[05:31:59] <dave_1> and that dates me pretty well.
[05:32:18] <klickrr> ehhe, i built a machine from www.hobbycnc.com back in... hmm, 2004 i think
[05:32:22] <klickrr> but i didn't use emc then
[05:32:28] <klickrr> maybe 20034
[05:32:30] <klickrr> 2003
[05:32:31] <dave_1> I think that last statement explains why I use emc
[05:33:18] <dave_1> My first machine was a converted cinncinati tracermill ... kinda like a BP ... still have it.
[05:33:23] <klickrr> so are you going to the meetup in june?
[05:33:27] <dave_1> yes
[05:33:58] <klickrr> oh wow it costs $100
[05:34:22] <dave_1> and food and travel and lodging ... it counts up
[05:34:39] <klickrr> it includes lodging??
[05:34:43] <dave_1> no
[05:34:49] <klickrr> oh, i was going to say ehhe
[05:34:56] <dave_1> you can camp out on the grounds
[05:35:01] <klickrr> heheh, yea
[05:35:18] <klickrr> oh, Jon might be there, it says "unconfirmed"
[05:35:30] <dave_1> I'm long past the stage where I can sleep on the ground
[05:35:58] <dave_1> Jon has indicated he might be there Sun afternoon or Mon from what I last heard.
[05:36:06] <klickrr> yea
[05:36:33] <dave_1> I can sleep on the ground I'm just too stiff afterwards to get vertical again.
[05:36:45] <klickrr> ehhe
[05:37:21] <dave_1> gotta run
[05:37:30] <klickrr> later, thanks for your help
[05:37:53] <dave_1> good talking to you. Good show on the machine ... a little tuning and you will be making stuff.
[05:38:26] <fenn> cnc workshop is worth going to at least once
[05:39:27] <eric_U> is it over?
[05:42:43] <klickrr> based on the 2006 pictures i'd be the youngest person at the event, and i'm not young
[05:43:24] <eric_U> dave is at least 30
[05:43:31] <klickrr> i'm 28
[05:43:38] <klickrr> my birthday would be during the cnc workshop eheh
[05:44:25] <klickrr> i don't really care, i'm just joking around
[05:45:26] <klickrr> it's the whole week wow...not sure i could go for that long regardless
[05:47:42] <klickrr> you going?
[05:48:14] <eric_U> don't think so
[05:48:50] <eric_U> who is the guy that looks like Kasunich's twin in those pics?
[05:48:57] <fenn> klickrr: i'm 26 and there were some younger people there
[05:49:10] <fenn> (but not much)
[05:49:29] <fenn> anyway, it'd be good to get some new ideas into these fuddy duddies
[05:58:14] <eric_U> where did I see emc related pics of cnc workshop? don't see them on the wiki
[06:00:29] <fenn> here's some http://fenn.freeshell.org/retrofest/default.html
[06:01:52] <eric_U> those are old, rick-0-matic has hair
[06:02:18] <fenn> more http://www.electronicsam.com/images/KandT/cncworkshop/ http://www.electronicsam.com/images/KandT/cncworkshop07/
[06:02:42] <fenn> i guess jepler is who you're referring to as "jmk's clone"
[06:03:00] <eric_U> probably, called him his evil twin
[06:03:09] <eric_U> is that the back of your head?
[06:03:36] <fenn> in this pic? i think its cradek http://www.electronicsam.com/images/KandT/cncworkshop07/DSC_3749.JPG
[06:03:48] <fenn> i didnt go to '07
[06:03:53] <eric_U> I see
[06:04:30] <eric_U> who are the 2 guys on the left?
[06:05:49] <eric_U> I like the picture of JMK on top of the Mazak
[13:55:54] <BigJohnT> am I being a PIA here http://pastebin.ca/1024828
[13:57:46] <BigJohnT> can anyone translate the timing chart on page 14 here http://www.allegromicro.com/en/Products/Design/an/2821003.pdf to step direction timing we use with EMC?
[14:02:57] <SWPadnos> steplen and stepspace are 2 us each, dir_setup and dir_hold are 1 us each
[14:03:57] <SWPadnos> interesting - there's a minimum "dirspace" as well - I'm not positive the dirsetup and dirhold will guarantee that (so maybe those should be 2 us each also)
[14:14:18] <BigJohnT> thanks SWPadnos: I'll add that to the wiki site
[14:14:36] <SWPadnos> ok - I hope it's correct :)
[14:14:50] <BigJohnT> It's got to be better than guessing
[14:15:02] <SWPadnos> it's more like informed guessing
[14:15:12] <BigJohnT> SWAG
[14:15:48] <SWPadnos> IWAG :)
[14:16:03] <BigJohnT> :)
[14:22:19] <jepler> remember that signal conditioning and optoisolation can increase timing requirements. That's why you need to know the timings for a driver board, not just the step translator chip that is contains.
[14:23:15] <SWPadnos> it's just a hobby
[14:23:26] <SWPadnos> I'm betting there isn't much more on the board
[14:23:38] <SWPadnos> (good point though)
[14:25:55] <cradek> my drivers have RC filters and schmitt triggers on step/dir. if I pick the L297 option in stepconf, it doesn't work at all
[14:26:12] <BigJohnT> I did put a note that that one is not confirmed
[14:27:24] <BigJohnT> I wonder if anyone that buys his boards can get them to work?
[14:27:48] <SWPadnos> probably. just use 5-10 us for everything and it should be fine
[14:29:07] <SWPadnos> the EZ board has no protection circuitry whatsoever
[14:29:30] <SWPadnos> (unless you cound the jumpers which, when removed, provide excellent protection)
[14:29:33] <SWPadnos> count
[14:29:43] <jepler> hah
[14:30:32] <eric_U> is mesa coming out with a brushless driver board?
[14:33:12] <jepler> I see the 7I39 Dual 250W 3 Phase BLDC driver listed on their website, not sure if it's new or not.
[14:33:41] <eric_U> I missed that one, lemme look
[14:33:51] <jepler> I also don't know whether it's compatible with the 5i20 firmware in emc 2.2 -- I notice that the documentation pdf says it takes 3 PWM inputs
[14:34:05] <SWPadnos> no, they've had that for a while, but I think it will only work with SoftDMC
[14:34:34] <eric_U> hadn't thought about needing 3 inputs
[14:34:36] <SWPadnos> unless you make the PWM-update thread run at about 10 KHz (which it may not be able to)
[14:34:53] <jepler> yeah I think it will not work with the present m5i20 driver in emc
[14:35:19] <jepler> seb k. would know whether the work he's doing will enable it in emc 2.3, but I don't think he's around
[14:35:22] <SWPadnos> I'm pretty sure the commutation is done with the SoftDMC processor in the FPGA
[14:36:01] <SWPadnos> it also needs 6 PWM channels on a single connector to drive 2 motors
[14:36:10] <eric_U> there is a xilinx chip visible on the board
[14:37:00] <SWPadnos> I'm sure PeteW will come on in a fwe minutes and correct me :)
[14:37:03] <SWPadnos> few
[14:37:26] <eric_U> it turns out you are usually wrong about everything
[14:37:29] <eric_U> :)
[14:37:35] <SWPadnos> yep, I'm good at it! :)
[14:38:37] <eric_U> that thing is pretty low voltage anyway
[14:38:49] <eric_U> the high voltage version will only take 50v
[14:38:54] <SWPadnos> the connector pinout shows hall sensor feedback and 6x PWM (no direction) - I'm sure it doesn't work directly with hostmot2
[14:39:07] <eric_U> makes sense
[14:39:22] <eric_U> I wanted it for another application anyway
[14:39:52] <SWPadnos> JonE has or is working on a brushless motor driver
[14:39:55] <eric_U> I have a design for a similar board, don't know why I was thinking it would work for emc too
[14:39:57] <jepler> http://pico-systems.com/acservo.html
[14:40:10] <SWPadnos> yeah, that one :)
[14:40:15] <eric_U> my application is special, I'm blowing up motors
[14:40:20] <jepler> I think that 5i20 can produce waveforms that are good to drive this board (it's pwm + direction if I recall correctly)
[14:40:35] <SWPadnos> yep - I think it mimics an analog drive
[14:40:49] <jepler> (the only special bit is the requirement of 500ns off time, can't go to 100% duty cycle)
[14:40:54] <eric_U> I think Jon would sell more boards if he bolted his inductors down
[14:41:09] <SWPadnos> same as his servo drives
[14:41:14] <SWPadnos> heh
[14:41:37] <eric_U> of course, that drives the cost up
[14:42:18] <eric_U> from inspecting commercial drives, he has more inductance there than he needs
[14:42:58] <SWPadnos> he's big on output filtering
[14:43:16] <eric_U> it's a good thing
[14:44:54] <eric_U> I was reading about an audio power amp design. the designer said "and it has a xxx valued inductor on the output like all successful power amp designs"
[14:45:59] <SWPadnos> reminds me of a wedding photographer who told us "all professionals use 1/125 of a second"
[14:46:35] <eric_U> well, I think the inductor was more important than the particular value in that case
[14:46:43] <SWPadnos> of course, he was talking to people who worked with commercial and sports photographers
[14:46:54] <SWPadnos> (who almost never use 1/125 :) )
[14:51:40] <PeterW> Apropos 7I39, not currently supported by Hostmot2, but its just a pinout option.
[14:51:41] <PeterW> Probably would be nice to combine 3 10 bit PWM gens in one register for efficiency though.
[14:53:47] <jepler> if not for efficiency, then at least to change them all at the same moment
[14:53:49] <jepler> hi PeterW
[14:54:03] <eric_U> you need dead-time
[14:54:20] <PeterW> Hi, Yes that to...
[14:54:34] <PeterW> 7I39 does the dead time
[14:55:35] <jepler> I don't know enough about bldc -- will a brushless motor run well if emc is updating the pwm registers at a rate between 1kHz to 10kHz?
[14:55:50] <jepler> (more likely in the 1kHz-2kHz range)
[14:56:01] <PeterW> Also we have the 8I20,8I22 coming out soon, these are 3 phase AMPs using the Fairchild IGBT modules, 30A Peak 16 A RMS 320V
[14:57:48] <jepler> PeterW: have you given any thought to coming to cnc workshop? we're all a lot of fun in person (well, everybody but me is at any rate)
[14:58:08] <PeterW> Depends on speed, 1 KHz update would be a little crunchy at high speeds, but for servos might be ok,
[14:59:07] <PeterW> I'm so behind, I dont think I can do it this year, does sound like fun though...
[14:59:36] <jepler> I'll pencil you in for 2009 then
[14:59:51] <PeterW> OK!
[15:02:01] <lerman> PeterW: Have you considered making a board with an ATA interface?
[15:04:03] <cradek> isn't that disappearing?
[15:04:13] <PeterW> I've considered ESATA, but for external low latency I/O we probably will have cabled PCIE first.
[15:04:36] <lerman> Probably not disappearing. Still used for optical drives.
[15:05:42] <PeterW> Even with SATA I would use a SATA/PATA bridge chip to cheapen/simplify FPGA design
[15:05:46] <lerman> The idea of mounting putting something that is packaged like a disk drive and has a bunch of connectors is pretty neat (to me).
[15:06:11] <lerman> Does SATA keep the low latency?
[15:06:31] <eric_U> pcie seems like the way to go
[15:07:47] <PeterW> Not sure about SATA, I know the PCIE bridge chips we use only add about 150 nS of latency to block transfers
[15:15:33] <SWPadnos> PeterW, have you messed at all with the PCIe parallel cards?
[15:15:42] <SWPadnos> (not that you would, just wondering :) )
[15:17:36] <PeterW> No, not yet, I have the data sheet fir the NetMOS chip used in some but its pretty skimpy on register level details
[15:17:50] <PeterW> (for)
[15:18:18] <SWPadnos> ok. I bought one when I was at a Micro Center, but haven't had a chance to play with it
[15:18:40] <SWPadnos> I'm curious aboout legacy port mapping and the timing of inb/outb
[15:19:38] <PeterW> Yes or whether they just supply a windows driver and the host interface hardware is totally different
[15:19:43] <SWPadnos> yep
[15:21:02] <PeterW> On our first PCIE FPGA cards we are going to cheat and use s PCIE/PCI bridge with PCI core in FPGA
[15:21:48] <SWPadnos> no no, use a PCIe/PCI bridge, then a PLX9054, then the FPGA! saves gates! :)
[15:23:04] <PeterW> Well PLX has that chip (8111+9056 in multichip BGA) = 8311 but that a little too Rube Goldberg for me
[15:23:19] <SWPadnos> heh
[15:24:30] <PeterW> Neat trick with little PCIE/PCI bridge is that you can bootstrap the FPGA from the PCIE bridges GPIO bits (slowly...)
[15:25:13] <SWPadnos> are the PCI IDs in the bridge chip?
[15:26:20] <PeterW> The bridge chips ID,yes but the FPGA will of course have its own (once PCI interface is loaded)
[15:27:28] <SWPadnos> ok, that's what I was thinking of - how do we know that there's an FPGA we can program, before it's programmed?
[15:31:55] <PeterW> Probably the bridge chips subsystem ID will reflect the type of card so we know theres a FPGA there. Also this is only for bootstrap,
[15:31:57] <PeterW> normally the FPGA will just be a PCI device behind the bridge, initialized at power up via SPI flash. The bootstrap ability allows
[15:31:58] <PeterW> reprogramming without a JTAG umbilical
[15:33:05] <PeterW> (reprogramming and first time bootstrap)
[15:33:45] <SWPadnos> ah, so you're planning on putting a configuration EEPROM on this board?
[15:34:13] <SWPadnos> (it would be great on the 5ixx as well)
[15:35:56] <PeterW> Yes, thats the normal way it will work so normal BIOS PCI enumeration works, also programming the FPGA via bit banging will be slow
[15:37:26] <PeterW> On the 5Ixx I figure that the card is always detected and downloading the bit file is pretty trivial so its not much of an advantage to have local storage
[15:38:00] <SWPadnos> the advantage is that the card would have the correct program during the boot process
[15:39:49] <alex_joni> SWPadnos: use OTP FPGAs :P
[15:40:03] <SWPadnos> you mean CPLDs :)
[15:40:08] <alex_joni> yeah, that
[15:40:12] <PeterW> Right there are some advantages there (especially when emulating older hardware in the FPGA)
[15:41:30] <PeterW> Theres ACTEL, Always seemed like I'd end up with thousands of slightly bad chips with those...
[15:43:20] <SWPadnos> yeah, the Fusion line is EEPROM cell based I think
[15:43:37] <SWPadnos> radiation resistant even, since the configuration isn't in SRAM
[15:43:56] <SWPadnos> I think Lattice also has some that are EEPROM based
[15:44:58] <PeterW> There are also some Xilinx parts (Spartan 3AN?) that have the SPI chip inside
[15:45:21] <SWPadnos> oh, cool
[15:45:52] <renesis_> what chips are quartus software for?
[15:45:58] <SWPadnos> Altera
[15:46:15] <renesis_> everyone in efnet/#electronics doing fpga lately been favoring those
[15:46:33] <SWPadnos> they have good chips and inexpensive dev kits
[15:46:45] <renesis_> this is usually our goals =)
[15:46:46] <SWPadnos> but their tools are Windows-only unfortunately
[15:46:58] <SWPadnos> Xilinx has free Linux tools
[15:46:59] <jepler> SWPadnos: I think that there is a paid version of quartus for linux
[15:47:02] <renesis_> oooh
[15:47:07] <jepler> but yeah you can program xilinx for free-like-beer on linux
[15:47:08] <SWPadnos> right - I was just going to mention that
[15:47:18] <renesis_> ok
[15:47:35] <renesis_> well i run windows for cad/cam/eda/everything stuff
[15:47:47] <renesis_> so yeah life sucks, ima try the altera stuff
[15:47:52] <jepler> (free-like-beer quartus xp in vmware worked for me while I was programming on an altera fpga though)
[15:47:56] <renesis_> i been using vista a bit lately
[15:47:58] <renesis_> w t f
[15:48:13] <jepler> (that's windows xp, not a version of quartus)
[15:48:17] <SWPadnos> hmmm. Lattice has a Linux version now
[15:48:38] <SWPadnos> I don't know if it's free-like-beer - it requires website registration
[15:48:39] <renesis_> jepler: neat
[15:49:04] <renesis_> almost anything eda wats website registration
[15:49:11] <renesis_> atmel doesnt have a database for users
[15:49:18] <renesis_> so you have to enter info in every fucking time
[15:49:51] <renesis_> i put random garbage and notes about GET A FUCKING DATABASE suggestions now
[15:50:02] <alex_joni> renesis_: unless you get a browser which does that for you
[15:50:13] <renesis_> so yeah id prefer actual site registration over that
[15:50:15] <jepler> altera and xilinx both have some kind of process you have to go through to get the devkit software
[15:50:20] <jepler> I don't recall the details
[15:50:25] <renesis_> yeah im not trying to make my computer ultra hijackable
[15:50:26] <renesis_> ty
[15:50:41] <renesis_> jepler: yeah its like sample stuff
[15:50:54] <alex_joni> bbl
[15:50:54] <renesis_> they might even make you talk to them
[15:51:18] <renesis_> dude what company was it, called me house, asked me if i wanted help, wished me good luck?
[15:51:28] <renesis_> they do ide for embedded
[15:51:31] <renesis_> oh, IAR
[15:52:05] <renesis_> 'so how is IAR working out for you?' me: 'im using gcc, my arm works now'
[15:52:10] <SWPadnos> heh
[15:52:29] <renesis_> 'well is there anything i can help you out with?'
[15:52:35] <renesis_> like wtf YEAH LEAVE ME ALONE =\
[15:53:18] <renesis_> i totally wanna do schema entry on something soon
[15:53:44] <renesis_> else my discrete digi skills gonna disintegrate =(
[15:54:04] <renesis_> microcontrollers will make you stupid, !
[15:54:25] <SWPadnos> try Altium
[16:02:16] <renesis_> i guess, i prob try quartus thing first
[16:02:34] <renesis_> because i know few people i can get help from and the chips are cheaper
[16:03:01] <renesis_> like, really fpga footprints kinda piss me off
[16:03:23] <renesis_> i with they made them in like microcontroller range of footprints
[16:03:27] <renesis_> *wish
[16:05:16] <jepler> it would be neat for hobbyists to have a not-too-small fpga in a dip or soic package that is easy to put on a home-fabricated board -- but they must not see dollar signs behind that idea
[16:06:54] <PeterW> Yes I dont know why they dont make at least a few low pin count FPGAs, not everything needs so may pins
[16:09:28] <PeterW> There are some DIP modules you can get from Enterpoint, dont know how cheap they are
[16:10:02] <jepler> vq100 or cp132 packages are physically small; a company that caters to hobbyists could probably fit that and support chips (eeprom, clock, voltage regulation) on a wide-DIP format module..
[16:10:54] <jepler> I guess 14mm is a little bigger than I thought
[16:12:49] <jepler> too bad you'd have to waste most of the 66 available I/O points to do it though
[16:13:44] <jepler> (thinking of the 66 I/O 100k gates in XC3S100E VQ100 package, which is <$10 qty 1)
[16:14:30] <PeterW> I think that basically what the Enterpoint modules are, I think they use the CP132 which will fit in a .6" wide Dip module
[16:15:53] <jepler> I/O standards also complicate things since hobbyists are accustomed to doing things like driving LEDs directly off I/O pins
[16:16:29] <PeterW> I've though about it for a generic 40 pin replacement device, Diodes to get power from almost any pin, a few solder jumpers for ground selection, quick switches for 5V tolerance
[16:17:02] <jepler> I'd buy one and toss it in the pile of hardware I've never used in a finished project :-P
[16:17:59] <PeterW> Well theres that, good to keep the T/D ratio fairly low
[16:19:44] <jepler> T/D ratio?
[16:22:12] <PeterW> Talk/Do
[16:24:26] <jepler> oh that
[16:27:12] <PeterW> My problem is that its so much easier to start new shiny projects than finish old tarnished ones that have collided with reality...
[16:27:39] <jepler> I know the feeling
[16:27:48] <cradek> jepler: do you have a picture of the 80% award?
[16:28:09] <cradek> maybe we should revive it.
[16:28:38] <jepler> cradek: I don't immediately find it
[16:28:57] <cradek> darn
[16:29:54] <jepler> cradek: ah maybe I found it
[16:30:24] <cradek> uh-oh, I may get the most of them around here
[16:49:06] <dimas_> hi all
[16:49:52] <dimas_> what is the simplest sequence I could set in hal to test my interface board and one driver connected?
[17:08:49] <BigJohnT> stepconf
[17:09:45] <BigJohnT> you can test most things from there...
[17:09:58] <BigJohnT> * BigJohnT off to the other shop
[17:32:25] <dimas_> thanks to BigJohnT, stepconf is what I needed
[17:52:10] <JanVanGilsen> Hi, i wanted to inform you guys that my 5-axis tilting rotation table machine is working. thanks for those who helped me :)
[17:53:26] <skunkworks_> JanVanGilsen: great!
[17:53:33] <skunkworks_> do you have any pictures?
[17:54:07] <JanVanGilsen> yes, I'll put some online,
[17:54:21] <skunkworks_> Neat - thanks
[17:54:38] <skunkworks_> You get extra brownie points for video..
[17:54:38] <skunkworks_> ;)
[17:54:55] <JanVanGilsen> maybe i'll make a movie next week, when I'm going to cut something :)
[17:57:48] <cradek> did you write kinematics for this machine so the tooltip stays in place when you move the angular axes??
[17:57:52] <cradek> -?
[17:59:05] <JanVanGilsen> yes, i did
[17:59:08] <JanVanGilsen> http://imagebin.org/18537
[17:59:20] <JanVanGilsen> http://imagebin.org/18539
[17:59:23] <skunkworks_> lerneaen_hydra: your ini and hal files on your message board seem to be broken links.
[17:59:32] <cradek> excellent
[17:59:57] <skunkworks_> That is flippen cool.
[17:59:59] <lerneaen_hydra> skunkworks; oops, thanks
[18:00:26] <lerneaen_hydra> hey, 5axis, cool
[18:00:27] <cradek> interesting - on your machine you do not need any special tool length compensation in the kinematics.
[18:00:31] <JanVanGilsen> when it's finiched i'll put the kinematics on the wiki
[18:00:53] <skunkworks_> A video would be awsome.
[18:01:29] <skunkworks_> awesome even
[18:04:27] <JanVanGilsen> cradek: i'm tring to figure out the tool length compensation i added it to my kinematics, bu i'ts possible that it wil work without that ..
[18:05:21] <cradek> I guess you do need to use the new tool length compensation configuration [TRAJ]TLO_IS_ALONG_W=1
[18:05:40] <cradek> in your kinematics you should have axis W always apply only to joint 2 (tool up/down)
[18:06:27] <cradek> because Z can be any combination of in/out, up/down on your machine depending on the angle of A
[18:06:48] <JanVanGilsen> I only have one problem, when going into "world wode" the jogspeeds for the A and C axis are not afactet by the deg/min slider but by the mm/min slider
[18:07:17] <cradek> yes jogging for kins machines has problems and is currently being rewritten
[18:07:42] <cradek> if you have both forward and inverse kins, you can switch to joint mode to jog, then back to world mode
[18:08:32] <JanVanGilsen> indeed, but you'll lose position when changing orientation.
[18:08:48] <cradek> yes
[18:09:09] <cradek> I hope we find some time during cnc workshop to work on kins jogging
[18:09:15] <JanVanGilsen> i just put the mm/min slider to a speed that doesn't give me following errors on the rotations
[18:10:46] <JanVanGilsen> is there an axample of a kinematics/configuration that uses [TRAJ]TLO_IS_ALONG_W=1 ?
[18:11:01] <cradek> yes 5axis in cvs trunk
[18:11:56] <cradek> http://cvs.linuxcnc.org/cvs/emc2/src/emc/kinematics/5axiskins.c?rev=1.7
[18:13:09] <skunkworks_> JanVanGilsen: what are you planning on making with it?
[18:13:32] <cradek> maxkins is the kins for my XYZBC machine and it implements full U,V,W
[18:13:43] <cradek> (also uses TLO along W)
[18:15:48] <JanVanGilsen> I also made a BiPod: http://imagebin.org/18541
[18:15:57] <JanVanGilsen> http://imagebin.org/18543
[18:16:42] <cradek> neat!
[18:18:08] <JanVanGilsen> I also have 2 students working on a hot-wire foam cutter, but they are having problems tuning the usc-interface
[18:19:08] <JanVanGilsen> and we converted 2 3-axis stepper machines :), quite alot of EMC in our CAM lab atm :)
[18:19:44] <jepler> all very cool
[18:20:34] <jepler> based on your 5-axis and bipod projects, you now need to force your students to fix all of emc's limitations and bad behavior with non-trivkins machines
[18:20:43] <cradek> yay!
[18:20:45] <jepler> I figure with a few student-years of effort it should be doable
[18:22:54] <cradek> JanVanGilsen: on your bipod how do you control the pen?
[18:22:56] <JanVanGilsen> I'm graduating next month, I'm coaching students (from the 3rd year) working on EMC prodjects.
[18:26:16] <JanVanGilsen> there's no pen on the bipod, the backgrond displays the movements of the mass (nut and bolt) in joint and world mode
[18:26:37] <jepler> oh, it's not something drawn by the bipod
[18:27:05] <cradek> ah I see
[18:27:19] <JanVanGilsen> no, its made with autocad :)
[18:28:29] <JanVanGilsen> the bold lines cross in the home position
[18:33:47] <dimas_> my interface board and first driver are working with stepconf test
[18:42:46] <JanVanGilsen> I also wrote a program for the bipod in vb.net, but it works better with emc :)
[18:45:04] <JanVanGilsen> cradek: when using TLO_IS_ALLONG_W, does AXES has to be 9 in the ini file?
[18:46:00] <cradek> I think so
[18:47:42] <cradek> u,v,w are so trivial for you. that's cool.
[18:47:52] <JanVanGilsen> okey, i'll try that friday
[18:48:54] <cradek> I should build a tilting rotary for my bridgeport. I have one 12" rotary that would be a nice A axis already
[18:48:54] <JanVanGilsen> thanks alot, hopefully i can posty a movie next week =)
[18:49:42] <cradek> (I forget what the weight limit for the table is)
[18:51:12] <tomp2> cool JanVanGilsen, its like Hektor
[18:52:05] <JanVanGilsen> *googles hektor*
[18:52:30] <tomp2> graffitti cnc, Hektor bi-pod
[18:52:42] <JanVanGilsen> indeed, but i dont have a spray can or a pen atached :)
[18:55:24] <tomp2> your mill is very nice, i like the tool chuck
[18:55:38] <JanVanGilsen> i gave the bipodkins component a bipodkins.l parameter, representing the distance between the contact points of the wires with the motor axes
[18:56:18] <JanVanGilsen> but the kinematics is explained in the manual so i think nobody is realy intrested in my kinematics file :)
[18:56:36] <tomp2> ah, so 4 links, not just 2?, always interested in your work :)
[18:57:39] <JanVanGilsen> http://www.hightechsystemsllc.com/rapid_changer.html
[18:59:45] <tomp2> oops, well it looked as professional as the rest of your system
[19:02:59] <JanVanGilsen> http://pastebin.ca/1025129 --> bipodkins
[19:05:57] <JanVanGilsen> in fact the 5-axis mill was made from scrap lying around at our college :)
[19:10:46] <JanVanGilsen> only the toolchanger and the face-plate were bought (online)
[19:13:36] <JanVanGilsen> well, I have to go, I'll be back on friday, when I'm testing the tooloffsets :-)
[19:15:26] <lerneaen_hydra> skunkworks; fixed
[19:22:00] <skunkworks_> lerneaen_hydra: thanks :)
[21:41:50] <alex_joni> good night all
[22:40:40] <BigJohnT_> Gamma-X whats UP?
[22:51:05] <pjm> cool, just made my 1st test of EMC with my homemade XY table, and its working perfectly
[23:36:27] <tom1> hah, I moved 3Dchips over to a commercial cnc, there wasnt enuf memory, so i truncated the file and got Headless chips. I'm gonna call the mfctr & complain "Hey EMC has no problem!"
[23:39:22] <eric_U> the comps in those things are always junk
[23:39:46] <eric_U> the cnc I was using today has a 486 in it, you can see the bios flash by as it boots
[23:51:06] <tomp2> (soft cnc, same as that emc runs on ;)
[23:52:14] <eric_U> then you should tweek them a little
[23:52:14] <tomp2> I wish Paul C. would have some fun.
[23:58:48] <tomp2> " I've got a mechanism that changes the tool orientation without changing the tool tip position relative to XYZ co-ordinates. It work with two motors and capable to achieve any points that perpendicular to the surface of upper half of a globe." ( from the CNC_ToolKit Digest today )