#emc | Logs for 2009-09-28

[00:11:18] <fenn> i gotta remember that for next time i'm attacked by romulans
[00:13:08] <Dave911> Does anyone know how InductoSyn linear scales work - these are part of a 1985 vintage GE Mark Century CNC controller on a big lathe. Do they have any type of standard interface?
[00:13:37] <Dave911> Pesky Romulans.....
[00:15:05] <fenn> those are just a bunch of ground pins lined up right? if so it's a http://en.wikipedia.org/wiki/Linear_variable_differential_transformer
[00:18:14] <fenn> "These devices contain a scanning plate (slider) and a scale. The scale is a meander pattern that is supplied with a carrier frequency. The slider contains two coils spaced 90° apart. The coils inductively pick up the signal and produce an alternating voltage amplitude that is proportional to the sine and cosine of the slider position within a scale pitch."
[00:18:26] <fenn> which i think is more or less the same thing
[00:22:57] <Dave911> I haven't seen them yet. Inductosyn is all over the web, but this is a 1985 vintage machine and I don't know if they have changed since then or what. I think it is similar to what you say - a sin/cos signal output like a resolver but in a linear fashion.
[00:22:59] <Dave911> How hard is EMC2 to setup with dual loops on the position. I think I saw that it is possible someplace ?? Or not.
[00:23:38] <fenn> it is possible.. i don't know how comfortable you are working with hal and control loops
[00:24:32] <fenn> you were probably thinking of http://jmkasunich.com/cgi-bin/blosxom/shoptask/wichita-trip-02-20-08.html
[00:24:34] <Dave911> I'm getting there... :-) Hal doesn't seem to bad so far but I've just been making connections so far. I don't have any problem doing control loops.
[00:29:37] <Dave911> Great, thanks for the link! Interesting...
[00:45:49] <cradek> Mire: +12 to 15: 150mA, -12 to 15: 100 mA
[00:46:50] <cradek> Dave911: I bet you a dollar they look like resolvers to the control
[00:47:24] <cradek> Dave911: if you can figure out the wiring, you'd get amazing quadrature resolution with the pico resolver boards
[00:49:01] <cradek> Mire: velocity command is +- 8.5v, NOT +- 10v
[00:49:16] <cradek> you can set the mesa's max output
[00:50:15] <dgarr> new video: my x3 small mill project: http://www.youtube.com/watch?v=rYxd_urjS5s
[00:51:17] <Dave911> >>I bet you a dollar they look like resolvers to the control
[00:51:19] <Dave911> Well then that should not be any problem then. I don't know if they are going to retrofit this lathe or not, but 1985 stuff is pretty old, so sooner or later.
[00:51:21] <Dave911> Thanks.
[00:52:39] <cradek> Dave911: my newest machine is from '84 :-)
[00:53:41] <cradek> I thought Mark Century was 70s technology (NC, not CNC)
[00:56:43] <Dave911> Oh, I'm not talking about the iron - the controls are original vintage. Iron is iron.. As long as it isn't worn, it should be good. :-)
[00:56:45] <Dave911> >>I thought Mark Century was 70s technology
[00:56:47] <Dave911> I really don't know when they started the Mark Century line but apparently there is a serial port on it and it will run up to a blazing 2400 baud!
[00:56:49] <Dave911> There seems to be a Mark Century line and then a Mark Century 2000 line also. You know back when we thought that the year 2000 was a long ways off.. ;-)
[00:57:09] <oPless> dgarr, what servos did you use?
[00:57:12] <cradek> haha
[00:57:33] <cradek> 2400 is an EXTREMELY fast tape reader
[00:57:42] <cradek> (1200 is a darn fast tape reader)
[00:57:46] <Dave911> I really can't find much info on the Mark Century line on the web. I think everything was electronic formats - so it would have to be scanned in to make it web compatible.
[00:58:10] <Dave911> I agree.. I wonder how much of the info I am getting is good??
[00:58:10] <cradek> yeah I've also noticed the web doesn't know much about the world before the web
[00:58:19] <dgarr> oPless: x,y keling nema23 brush motors, z keling nema34 brush motor, drive/amps pico-systems
[00:59:22] <Dave911> I thought a standard tape reader was 300 baud??? Or was it 110?
[00:59:32] <oPless> 110 iirc
[00:59:35] <cradek> hm, a month in penetrating oil and still the allen wrench twists before the set screw breaks loose
[01:00:01] <cradek> teletypes were 110. many later tape readers/punches were 300.
[01:00:32] <oPless> "nema23" and "nema34" are obviously standards, but what? Amps? torque?
[01:00:44] <cradek> mounting flange
[01:00:54] <cradek> maybe shaft size too, not sure about that
[01:01:48] <dgarr> shaft too --- yes (pretty sure) 23 ==>2.3in square flange
[01:01:54] <oPless> oh, I'm wondering about the oz-in (or Nm or Ncm)
[01:02:14] <cradek> NEMA23 has nothing to do with torque rating
[01:02:41] <oPless> just physical size, right cradek?
[01:02:50] <dgarr> oPless: specs are at kelinginc.net K23-120-36 and KL34-150-90
[01:03:28] <dgarr> the nema sizes are very popular in stepper motors
[01:10:15] <oPless> dgarr, hmm, I can't see the K23-120-36 anywhere :\
[01:12:28] <oPless> are these US$50 motors or closer to $100 ?
[01:13:00] <dgarr> oPless: the whole website doesn't render properly on my firefox -- text is overlapping, i've had the motors for several years, about $70 as i remember.
[01:13:24] <oPless> * oPless is trying to gauge what kind of motors he'll need
[01:14:02] <Mire> I have books on MarkCentury 1050 control... and scraps to go with...
[01:14:37] <dgarr> the file i have is not very complete: 36V, 4000rpm, 0.3N-m continuous, 1.6N-m peak, max I=19A, J=0.22kg*cm^2
[01:15:16] <dgarr> encoder was not included but it as a rear shaft
[01:16:04] <oPless> 0.3Nm ... that's what I need to know :)
[01:16:14] <oPless> cheers
[01:19:49] <oPless> ooh
[01:19:53] <oPless> that's not so bad
[01:53:07] <MarkusBec> MarkusBec is now known as MarkusBec_away
[02:20:21] <MarkusBec_away> MarkusBec_away is now known as MarkusBec
[02:33:51] <MarkusBec> MarkusBec is now known as MarkusBec_away
[02:39:44] <cradek> Mire: did you get it to not run away?
[02:45:00] <Valen1> Valen1 is now known as Valen
[03:54:46] <Valen1> Valen1 is now known as Valen
[04:43:51] <Dave911> >> <Mire>I have books on MarkCentury 1050 control
[04:43:53] <Dave911> Did you retrofit the machine with EMC2? I might be interested in the "manuals and scraps" if this lathe arrives without the books.
[08:09:21] <MarkusBec_away> MarkusBec_away is now known as MarkusBec
[09:22:46] <piasdom> g'mornin all
[09:58:32] <jthornton> your an early bird
[10:12:02] <piasdom> <me ?
[10:31:27] <Valen> am not
[10:38:45] <alex_joni> 12:57 < jthornton> your an early bird
[10:38:50] <alex_joni> not that early ;)
[10:38:56] <jthornton> lol
[10:39:04] <Valen> (19:58:33) jthornton: your an early bird
[11:21:46] <Valen1> Valen1 is now known as Valen
[11:22:11] <jthornton> I think I'll take the long way to work this clear crisp morning...
[11:27:04] <archivist> on the bike?
[11:29:03] <jthornton> yes
[11:45:58] <alex_joni> this is cool: http://www.youtube.com/watch?v=1DhMsKOZhD8&feature=player_embedded
[11:46:04] <alex_joni> jthornton: use one of those ^
[11:47:24] <jthornton> is he taking those street level pictures for google maps?
[11:47:28] <archivist> who maintains the sample gcode files
[11:47:50] <jthornton> tag your it archivist
[11:48:12] <archivist> arrrrgh
[12:41:02] <alex_joni> archivist: they are in git along with the rest of the sources
[12:41:07] <alex_joni> archivist: any reason you're asking?
[12:41:38] <archivist> fixing errors
[12:41:46] <archivist> adding comments etc
[12:42:00] <alex_joni> feel free to send any of us a diff
[12:43:41] <archivist> latest g76.ngc does not work for me :(
[12:46:53] <alex_joni> what does that mean?
[12:48:02] <archivist> trying to understand the error, it would be nice if one could copy the error message from axis
[12:49:01] <archivist> length of cutter compensation entry move is not grater than the tool radius
[12:50:18] <archivist> nearl line 26 when you load the file
[13:07:50] <alex_joni> sounds like the entry move is too short compared to your tool size
[13:07:58] <alex_joni> maybe it's a unit error?
[13:13:16] <archivist> the sample .ngc should state radii of the tools used
[13:25:04] <MarkusBec> MarkusBec is now known as MarkusBec_away
[14:23:56] <EbiDK> EbiDK is now known as EbiDK|AWAY
[15:28:46] <eric_unterhausen> I should have bought 50 pin cables from mesa
[15:29:28] <BJT-Work> yea, they are fun to find
[15:41:26] <EbiDK|AWAY> http://www.geekologie.com/2009/09/not_just_for_vampires_blood_en.php *blink* SFW
[16:27:52] <Valen1> Valen1 is now known as Valen
[16:39:05] <Valen> we made ours with bits from the local electronics store
[16:39:09] <Valen> <$10 all up
[16:44:22] <eric_unterhausen> no such store here
[16:45:05] <archivist> scrap yard?
[19:02:31] <cocor> salve
[19:09:20] <Vq> godafton herr cocor
[19:45:41] <MarkusBec_away> MarkusBec_away is now known as MarkusBec
[21:55:02] <Mire> hi everybody. I've made some headway but i'm not out of the woods.
[21:56:08] <Mire> resolver encoders work fine; i've got DRO is on spot, but I still get jumps and following errors when I attempt to jog.
[21:57:20] <Mire> servos jump, axis moves .015 or so when I select .001 and click +
[22:13:30] <Bridgeport_II> Does it do that every time?
[22:15:52] <Mire> yes, both axes.
[22:16:36] <archivist> tuned the pid yet?
[22:19:10] <Mire> Nope. but I did use the settings from a very similar setup.
[22:19:35] <Bridgeport_II> Have you turned the resolvers with the motors off and is the scale correct?
[22:19:51] <Mire> Yes. it is correct.
[22:20:28] <Mire> I am pretty green. I dropped in configs from a very similar setup.
[22:21:05] <Mire> It shouldn't be this far off
[22:23:40] <archivist> could be far enough off time to tune it
[22:28:39] <Mire> Goodthanks I'll try it. Only other changeable things are possibly the gains on the servoamps. PID tuning should be able to handle that, tho, as long as all signals are correctly oriented. Do I understand rite?
[22:29:39] <Mire> these are velocity mode amps with tachometers, if that makes a difference.
[22:32:43] <Mire> I've been worried about the possibility of the tach wires being reversed. cradek explained to me how to check them but I'm stuck w autoranging digital VM and am not confident in my results.
[22:34:32] <Mire> It's had me wondering just how serviceable Halscope is as a measuring tool... could I just define an analog in and incorporate an o-scope sig into my Halfiles for general use?
[22:35:58] <archivist> its pretty good we tuned my stepper system a bit the other day and ive seen many sorted by using it
[22:36:24] <andypugh> Is anybody not completely bored of my G76/G33 encoder problems?
[22:37:28] <andypugh> Specifically, does anyone know how spindle soordinated movement is handled? I am coming to the conclusion that it is to do with the control algorithm inside the code.
[22:38:06] <andypugh> ie, how the axis catches up with where it is meant to be, and how reactive it is if it leads or lags.
[22:38:46] <archivist> andypugh, lathe?
[22:38:52] <andypugh> I think I need to turn down the gain in the bit that responds to position errors.
[22:39:07] <andypugh> Yes, I have youtube video..
[22:40:04] <andypugh> http://www.youtube.com/watch?v=NDA48nLdbiI
[22:40:59] <andypugh> I thought it might be my super-long index pulse (180 degrees) so I made a new encoder with a shorter pulse and a lot more lines.
[22:41:08] <andypugh> (50 rather than 20)
[22:41:43] <archivist> my lathe was jerky and I was running very slow, we changed the pi in the encoder to use the interpolated value
[22:41:50] <andypugh> I think it is a tad better, but still useless, as any pulse like that in the thread is going to break the tool and/or lose a bunch of steps.
[22:41:53] <archivist> pi pin
[22:42:37] <archivist> I also made it a lot better by speeding up the acceleration rate
[22:42:53] <archivist> I get a nice thread now
[22:42:54] <andypugh> Yes, I am using the inerpolated value aready. The actual input to motion.spindle-revs looks totally linear, though I have a data log to process to check that.
[22:43:44] <andypugh> My accell is as fast as I can reliably go (300 whatevers)
[22:44:17] <archivist> mine was unusable, changed to interpolated much better, tuning acceleration and top speed to get better response and now its ok
[22:44:43] <andypugh> How many lines on your encoder?
[22:45:57] <archivist> 48
[22:46:08] <andypugh> OK, I have 50, so much the same
[22:46:14] <archivist> yup
[22:46:35] <andypugh> Though yours is probably a proper quadrature one? I ran out of lines so only have 1 channel and insex.
[22:47:50] <andypugh> And mine is also a bit of a bodge, being a bit of printed paper wrapped round the spindle.
[22:47:53] <archivist> nope single chan, original fitting on this lathe
[22:48:08] <archivist> index plus 48 I mean
[22:48:30] <skunkworks_> archivist: did you cut any threads? Happy?
[22:49:04] <archivist> happy now yes
[22:49:27] <eric_unterhausen> I wish I was happy, what's it like?
[22:49:30] <eric_unterhausen> :)
[22:49:41] <andypugh> I actually was cutting a decent thread, until I noticed that my spindle speed was too high, and the Z-axis was just running flat-out. It was when I dropped the spindle speed that I noticed the problem
[22:50:12] <andypugh> So I have a half-depth thread of rather arbitrary pitch....
[22:50:13] <archivist> I got wrong tpi if spindle was too fast before
[22:52:11] <archivist> I think the loop was going a bit unstable before
[22:52:30] <archivist> or was ringing
[22:52:41] <andypugh> I am vry curious how it works. EMC sees the index, then has to get the z-axis up to speed and into just the right place. It can't possibly "get up to pitch" instantly, so I am curious how it recovers position.
[22:53:30] <andypugh> Yes, my problem looks exactly like a "ringing" internal control loop. I want to turn down the gain, but rather assume it is hard-coded.
[22:53:42] <archivist> thats the reason for the gap before the cut as its limited
[22:53:52] <andypugh> Or perhaps there is a D-term.
[22:54:12] <archivist> is yours stepper or servo
[22:54:16] <andypugh> Stepper
[22:55:11] <andypugh> But I am talking about the control loop that takes encoder position as an input, and tries to get the z-axis where it belongs.
[22:55:38] <andypugh> Does EMC know how big the gap is?
[22:55:54] <andypugh> ie, am I missing something?
[22:56:44] <andypugh> If I started further back, would it have an easier job? I can't see that it knows where the thread start is at all.
[22:56:54] <MarkusBec> MarkusBec is now known as MarkusBec_away
[22:58:33] <archivist> I have been testing with the g76.ngc sample , was using the 2.2.8 version till today when I stated using the 2.3 version
[22:59:00] <archivist> 2.2.8 version starts .1" off the job
[23:01:27] <archivist> I do agree that the pid seemed wrong and I had to fiddle the acceleration and speed till I matched needs
[23:02:55] <andypugh> Is that 0.1" just the distance over which pitch is not guaranteed?
[23:03:39] <Mire> archivist: thank you ! it worked
[23:03:53] <archivist> that depends on acceleration and the loop
[23:04:15] <archivist> and the rpm you happen to be running at
[23:05:22] <andypugh> Mine seems like it might settle down given 12" or so. But I am only cutting 20mm of thread. (at 4mm pitch, which might be a part of the problem)
[23:06:50] <archivist> it has to get to a higher velocity for that pitch
[23:08:08] <andypugh> Indeed, though even at very low spindle speds (50 rpm) it is jerky
[23:13:17] <archivist> I just set this one to 4mm pitch, and have to keep the rpm up too slow and you can hear the warble from Z
[23:14:33] <andypugh> A warble would be bearable, have you seen the video of what I get? the carriage varies between 1500 and 200 mm/min 5 times a second
[23:15:32] <archivist> you wobble your camera too much to see
[23:16:03] <andypugh> Yeah, sorry, But I was mainly trying for a sound recording.
[23:16:04] <archivist> but mine was like that the other day
[23:17:19] <andypugh> I accept that it is a tricky thing to make to work, which is rather why I am surprised that the tunable parameters are not available, (or perhaps they are?)
[23:17:41] <archivist> I dont know if they are
[23:20:27] <skunkworks_> andypugh: are you using the interpolated output from the encoder?
[23:20:54] <skunkworks_> * skunkworks_ hasn't been keeping good track of the conversation..
[23:21:38] <archivist> we shall have to see the ini and hal files
[23:23:26] <andypugh> I am using the interpolated value, yes.
[23:25:45] <andypugh> http://www.atp.pwp.blueyonder.co.uk/g76b.png
[23:26:39] <archivist> very similar to how mine was
[23:26:43] <andypugh> Shows the issue nicely. motion.spindle-revs looks pretty much dead-straight. motor.psn-command is anything but.
[23:28:12] <andypugh> I am thinking I-term windup might be the problem.
[23:28:32] <archivist> pastebin the ini and hal
[23:28:58] <andypugh> ie it builds up too big an I-term during the initial accell, and then can never hit the right position.
[23:29:36] <andypugh> (Gets the garage keys and wanders out to boot the lathe up)
[23:33:17] <andypugh> Ah, it has been wanting to do a disk check all night, and I just flicked it on and walked out again. It might take a while to appear on my network
[23:38:51] <cradek> andypugh: can you zoom in so we can see your spindle-revs each servo cycle? each pixel on your screen is many servo cycles at the zoom level in http://www.atp.pwp.blueyonder.co.uk/g76b.png
[23:39:18] <cradek> 10 mSec/div will give one cycle per dot if you are using the default servo cycle time
[23:40:31] <cradek> it seems emc2.3 is very sensitive to rough spindle feedback
[23:41:02] <cradek> you are right that once it gets started wrong, it has trouble smoothing out because it has to stay within the axis's configured acceleration constraint
[23:41:59] <cradek> your use of debounce makes me suspicious that your spindle feedback is much rougher than it looks at first glance in this plot, hence my request that you zoom in
[23:42:22] <andypugh> I am running a 25,000 nS base thread, and debounce is currently off
[23:42:44] <archivist> I think his 4mm pitch helps to show it as well
[23:44:13] <cradek> yeah I bet high pitch plus very slow spindle is the worst
[23:44:17] <andypugh> Sorry, I am wrong, my base and servo threads look to have reverted to default
[23:45:10] <cradek> remind me where you put the latest files?
[23:45:21] <andypugh> Nowher yet.
[23:46:04] <andypugh> INI file is http://www.pastebin.ca/1583452
[23:49:39] <archivist> wee just tried a 1/2" pitch... not useable
[23:51:19] <andypugh> Sorry, the combination of the embedded IRC client and Pastebin seems to not work well with my browser
[23:51:29] <andypugh> The HAL files are at http://www.pastebin.ca/1583457
[23:52:50] <cradek> this must not be all of it
[23:55:33] <cradek> Mire: did you get controlled motion?