#emc | Logs for 2008-03-14

[00:00:18] <BigJohnT> using Dallur's schematics I'm starting to understand when the velocity is changing and when it is steady
[00:00:59] <micges> now I'm trying to make my all improvements in official way in EMC
[00:01:41] <micges> then anybody wants to use it can
[00:01:54] <BigJohnT> my idea is arc voltage => voltage divider => analog to digital converter
[00:02:00] <BigJohnT> then into emc
[00:02:44] <BigJohnT> if I can get the digital into EMC the rest looks straitforward
[00:03:27] <micges> Dallur schema is quite hard to understand
[00:03:54] <micges> your idea is cool
[00:03:56] <BigJohnT> I focused down to the small part of the velocity first and it makes sense
[00:05:11] <BigJohnT> taking the signal posx-fb to a Ddt gives you a dirivitive. if it stays constant your not changing velocity
[00:05:23] <fenn> BigJohnT: you could do analog to pwm, then count the pwm with a timer
[00:05:36] <fenn> easier to opto-isolate 1 line
[00:06:00] <BigJohnT> fenn: can you elaborate just a bit on that?
[00:06:31] <BigJohnT> on how I can do that?
[00:06:33] <fenn> instead of transmitting a bunch of ones and zeroes, you count the number of cycles it takes a pulse to turn off
[00:06:49] <fenn> since i'm lazy i'd probably do it with a microcontroller, but there are special purpose chips to do it
[00:07:03] <BigJohnT> like a pic?
[00:07:08] <fenn> right
[00:07:18] <BigJohnT> hmmm
[00:07:46] <BigJohnT> so the analog => pic => pwm
[00:08:14] <BigJohnT> pwm = pulse width modulation right
[00:08:45] <micges> right
[00:09:13] <briang_> Good evening
[00:09:21] <fenn> TL494N might do what you want
[00:10:44] <fenn> * fenn gives up on googling
[00:11:19] <SkinnYPuppY> A lot of audio amps use that to run the switching P/S
[00:12:11] <micges> It's 1am
[00:12:17] <micges> good night all
[00:12:25] <SWPadnos> good night micges
[00:13:40] <SWPadnos> using PWM through an optoisolator isn't as trivial as it sounds - they often have different turn-on vs. turn-off times
[00:15:15] <SWPadnos> since you (presumably) have a unipolar signal, you can use a divider and an on-chip A/D (better would be and SPI A/D), and isolate using something like the Analog Devices ADuM1100 series
[00:15:58] <SWPadnos> those have a built-in 50mA isolated supply, and there are versions with up to 4 data lines in various combinations of in/out
[00:17:38] <BigJohnT> SWPadnos: now I feel like Gamma-X LOL
[00:17:43] <SWPadnos> heh
[00:17:50] <BigJohnT> ok the signal is 0-300 vdc
[00:18:10] <BigJohnT> divide it down to 0-10?
[00:18:20] <SWPadnos> probably lower actually
[00:18:25] <BigJohnT> 0-5?
[00:18:38] <SWPadnos> 10V ADCs are quite a bit more expensive than 0-5V ones :)
[00:18:47] <BigJohnT> ok
[00:18:53] <BigJohnT> what is SPI?
[00:19:01] <SWPadnos> Serial Peripheral Interface
[00:19:26] <SWPadnos> it's a serial protocol that uses clock, data in, and data out lines, plus a chip select usually
[00:20:08] <SWPadnos> oh hmmm. those may not be the ones that have a built-in supply
[00:20:23] <BigJohnT> if I can figure out the schematic I can build it. I've built some DRO's so I can solder small things
[00:20:37] <BigJohnT> if you can give me some hints...
[00:21:47] <BigJohnT> how do I "read" the SPI in EMC?
[00:22:06] <SWPadnos> that depends on how fast you ened the update rate to be
[00:22:11] <SWPadnos> s/ened/need/
[00:22:29] <SWPadnos> I don't know what kind of update rate a THC needs
[00:22:44] <SWPadnos> presumably faster than the 1KHz servo rate, or you could just use PID there
[00:23:21] <BigJohnT> well the fastest speed is about 400IPM so If I can update 800 times a minute that would be enough
[00:23:35] <SWPadnos> oh, that's very very slow then :)
[00:23:45] <BigJohnT> that's pretty slow huh
[00:23:55] <SWPadnos> 13 times a second, yeah - that's slow
[00:24:14] <BigJohnT> 1600 times a minute would give me once each 1/4"
[00:24:32] <SWPadnos> how about 6000-60000 times a minute? :)
[00:24:38] <SWPadnos> (ie, every 10 or 1 ms)
[00:24:47] <BigJohnT> ok, sounds good to me
[00:24:51] <BigJohnT> the faster the better
[00:25:04] <briang_> This looks complex. I was going to try and find out how to use the firewire drives that came with a machine I inherited. Haven't installed EMC yet.
[00:25:09] <SWPadnos> what do you expect to use for EMC, a parallel port, 5i20, pluto ...
[00:25:32] <BigJohnT> parallel port it is a stepper system
[00:25:33] <SWPadnos> briang_, we don't have any firewire drivers (or drivers for any smart drives, actually)
[00:26:25] <briang_> I know, but $1k/drive is kinda steep for replacement, 4 drives
[00:26:26] <SWPadnos> if those drives can take any other form of control, such as +/- 10V, step/dir, pwm, up/down, etc., then they can probably be made to work with EMC2
[00:26:36] <SWPadnos> you don't need $1k drives :)
[00:26:48] <SWPadnos> unless you have specific motors that require them
[00:27:13] <BigJohnT> step/direction servo drives from panasonic are <$500
[00:27:25] <SWPadnos> BigJohnT, getting data into the parallel port is an annoying task
[00:28:00] <BigJohnT> ok, what would be the better alternate?
[00:28:23] <SWPadnos> well, any of the FPGA cards, or using an analog card
[00:28:53] <BigJohnT> analog cards are not cheap... I haven't looked at FPGA cards
[00:29:02] <SWPadnos> they aren't exactly expensive
[00:29:22] <SWPadnos> the Mesa card is $200, there are analog input cards in the same realm
[00:29:24] <BigJohnT> so with a 5i20 could I get the analog into EMC easy
[00:29:43] <briang_> I'm not sure of the specs, but I think the motors are brushless servos, definitely not steppers
[00:29:52] <SWPadnos> well, it's just as hard at first, but much faster once the hard work is done ;)
[00:30:07] <BigJohnT> yep
[00:30:44] <BigJohnT> i'll do some studying on the 5i20
[00:30:57] <SWPadnos> I don't know if the driver for the 7i43, supporting HOSTMOT2, has the SPI devices enabled
[00:31:24] <SWPadnos> the 7i43 is a parallel-port connected Mesa card, similar to the Pluto, but with better industrial design and many many more gates
[00:32:17] <BigJohnT> ok, i'll study that one
[00:33:02] <BigJohnT> * BigJohnT has to cook some hot wings for the wife now, thanks for the help
[00:33:23] <SWPadnos> a parallel port can work, if you stick the SPI clocking routine in the BASE thread
[00:33:26] <SWPadnos> sure, enjoy
[00:33:33] <BigJohnT> ok
[00:33:45] <SWPadnos> that's probably fast enough for the <100 updates /second you need
[00:34:14] <BigJohnT> if I can work out a good solution then plasma cutters in EMC would be a breeze
[00:34:38] <SWPadnos> yeah - the problems always boil down to getting the data into EMC, through the parallel port :)
[00:34:53] <SWPadnos> if you add a port and just use binary, it's fast and easy (but wasteful of pins)
[00:35:11] <BigJohnT> the extra parallel port is $10
[00:35:22] <SWPadnos> if you want to use serial of some sort, then you have timing / latency problems, at least for relatively high speed data
[00:35:32] <SWPadnos> yes, it's pretty cheap, so may be a viable alternative
[00:36:24] <BigJohnT> if i can work out or find out the best way to get an adc into the parallel port the rest would be easy for me...
[00:37:44] <BigJohnT> the best thing is when I get it into EMC I can control when and if I adjust the torch height base on acceleration
[00:37:55] <BigJohnT> or the lack of
[00:38:22] <SWPadnos> sure
[00:38:36] <BigJohnT> SWPadnos: thanks
[00:38:47] <SWPadnos> for relatively slow data rates, like 100 samples a second, the parport is fine
[00:38:57] <BigJohnT> ok, cool
[00:39:16] <SWPadnos> you clock in the BASE_PERIOD, and have data available every 16 or so clocks
[00:39:24] <BigJohnT> ok
[00:39:32] <SWPadnos> anyway, have fun with the wings and the wife :)
[00:39:40] <BigJohnT> ok, thanks
[00:39:43] <BigJohnT> bbl
[00:39:54] <SWPadnos> see you
[00:43:43] <briang_> I'm home now, have to get all the specs on motors, drives, etc to talk easier. I'll be back another night
[00:45:33] <SWPadnos> ok. just take a look at the types of command they can take
[00:45:40] <SWPadnos> not over firewire :)
[00:47:36] <briang_> thanks and gnite
[01:12:26] <tomp2> wow micges! nice machine! The throat on your machine is huge. I knew that making the laser stationary is good thing, but never pictured such depth from tool to column ('throat').
[01:14:24] <JymmmEMC> micges: wow... nice
[01:18:26] <tomp2> the discussion about THC and analog to digital... sounds like a VtoF chip would work, and count the output.
[01:18:27] <tomp2> after reducing 300V to 5 there's not much danger left.
[01:19:00] <SWPadnos> counting frequency would probably need something with better timing than the BASE_PERIOD though, so you might as well use an A/D instead
[01:19:19] <SWPadnos> as long as the serial data rate is slow enough that the BASE_PERIOD can supply enough bits
[01:19:29] <SWPadnos> ... per required update
[01:21:34] <JymmmEMC> I have no clue what the hell y'all talkin bout, but there's only *ONE* definition of "THC"... http://en.wikipedia.org/wiki/Tetrahydrhttp://en.wikipedia.org/wiki/Tetrahydrocannabinolocannabinol
[01:21:52] <JymmmEMC> (and I don't care either ;)
[01:22:12] <SWPadnos> I think maybe you've been hitting the medicine a little bit too much tonight :)
[01:22:23] <tomp2> i thioght same thing 2 yrs ago
[01:22:41] <JymmmEMC> Hey, THC has meant that for the last 40+ years, and ya aint gonna change it now
[01:23:03] <SWPadnos> well, with that screwy link paste, I figure you've been testing that theory
[01:23:25] <tomp2> yeah go google EDM to find hockey results for Edmunton or Electronic Distance Measurement or Electronic Data Management....
[01:23:25] <JymmmEMC> SWPadnos: Not in 25+ years =)
[01:23:38] <SWPadnos> or EMC for that matter
[01:24:00] <SWPadnos> ElectroMagnetic Compliance testing ...
[01:24:00] <JymmmEMC> Other than "google finance" the #1 hit on google =)
[01:24:24] <SWPadnos> or that small storage / backup company, with their product EMC2
[01:24:34] <JymmmEMC> SWPadnos: nope, they're #4
[01:24:43] <JymmmEMC> even beat out thc.com
[01:25:04] <SWPadnos> still stuck on the THC, huh?
[01:25:19] <JymmmEMC> damn skippy!
[01:27:39] <tomp2> maybe do the VtoF in a 16F873, and hand it the desired value, get back the error signal. I can see lotsa small pic apps tied to hal doing process analysis.
[01:28:02] <SWPadnos> you still need serial or parallel comms to/from the PIC
[01:28:26] <SWPadnos> no point in doing V to F if the uC will do the control
[01:28:34] <SWPadnos> EMC doesn't need to know :)
[01:28:49] <tomp2> thats pretty simple as most pics have serial (or a max232 ) or eat up the digital io for a nbit parallele comm
[01:29:21] <SWPadnos> the issue is with EMC in that regard - there is no generic SPI driver at the moment (though someone had recently made one for their A/D project)
[01:29:21] <tomp2> oh i thougght he wanted emc to evaluate it, ok
[01:29:30] <SWPadnos> yes, that's the ideal
[01:29:47] <SWPadnos> get the data into EMC, and you have more control over how it's used
[01:32:31] <tomp2> I'm still trying to understand the prescaler idea in pics... the math never seems to add up
[01:32:41] <SWPadnos> for the PWM?
[01:32:47] <SWPadnos> or the A/D clock?
[01:32:51] <SWPadnos> (or the timers ...)
[01:33:26] <SWPadnos> notice how I restrained myself and made no mention of how bad at math the PICs are, ie, they can't "add up" that well at all ;)
[01:34:36] <tomp2> :) its just a programmable osc, but i'm using what they call 'pwm' to do that, the pulse train for EDM. thx for the idea that it aint precise.
[01:34:56] <SWPadnos> oh no, the prescalers should be quite precide
[01:34:58] <SWPadnos> precise
[01:35:48] <SWPadnos> it's just that the PIC has no "add with carry" instruction, so multibyte addition takes like 3 instructions per byte of prcision, plus loads/stores because there's only one arithmetic register
[01:36:57] <SWPadnos> once you set the overall PWM carrier frequency (probably once at initialization), you shouldn't have to mess with the prescalers again - you should only need to change the timer registers to change the duty cycle
[01:37:16] <SWPadnos> err - nevermind. you're changing the PWM frequency to change the step rate :)
[01:37:35] <tomp2> cant get 3khz, can get 3004 and 2997 hz what i meant by 'precise'. i thought a 20mhz clock would allow me to hit anything with 1us resolution
[01:37:58] <tomp2> maybe pwm isnt the way to go on that chip
[01:37:59] <SWPadnos> on a Mega AVR, you can do that
[01:38:08] <tomp2> good thought
[01:38:09] <SWPadnos> I don't think the PICs have a similar mode
[01:38:28] <SWPadnos> you need a chip with the "advanced PWM" module, not just any AVR PWM will work
[01:38:41] <tomp2> very good thought, thx
[01:38:44] <SWPadnos> sure
[01:38:57] <SWPadnos> let me know if you want the software too - I built an AVR-based pulse generator ;)
[01:50:10] <tomp2> ooh, ATtiny26 with 64mhz PLL scales to perfect microseconds, kewl!
[01:50:21] <tomp2> built in :)
[01:50:31] <SWPadnos> heh
[01:50:43] <SWPadnos> 64MHz PLL huh? that sounds a bit high
[01:52:02] <SWPadnos> that's cool. I didn't realize they had anything that fast :)
[01:55:03] <emtffke1> bummer...just tried out my little machine and it needs ALOT of work
[01:55:12] <emtffke1> accuracy is junk on it :(
[01:55:19] <SWPadnos> that is a bummer.
[01:55:31] <SWPadnos> at least the software setup was easy :)
[01:57:06] <SWPadnos> tomp2, the 8-bit resolution of timer1 (the only one that can use the high speed PLL output) may not be good enough for a wide range of pulse rates
[01:58:11] <SWPadnos> actually, I think (haven't read that far yet) that you can only program the timebase in powers of 2, since the prescaler is all that's used to set up the PWM period
[01:58:56] <tomp2> SWPadnos: I will need a spreadsheet to find what it can do ;)
[01:59:39] <SWPadnos> if you look at the Mega162, the PWM can have a programmable period, using a 16-bit counter
[02:00:12] <SWPadnos> I think the tiny PWM only supports the full 8-bit counter range, but I'm not positive yet
[02:00:23] <tomp2> emtffke: just take it 1 axis at a time. you may learn a lot from 1
[02:00:31] <toastyde1th> what's the error problem?
[02:00:31] <tomp2> SWPadnos: lookin now
[02:00:41] <toastyde1th> er accuracy error problem
[02:03:43] <SWPadnos> weird. I may need to get a newer version of the datasheet
[02:03:48] <emtffke1> well I am using a dremel as a cutting tool since its a mini mill.....the z axis wabbles all over the place
[02:03:53] <toastyde1th> oh
[02:04:33] <SWPadnos> they say the period can be changed, but I don't see where the duty cycle would go
[02:05:23] <emtffke1> now I'm debating...do i want to mess around with my little mill or say forget it and continue with the one I'm working on now?
[02:05:33] <toastyde1th> what are you working on now
[02:06:21] <emtffke1> a 24x48 mill....the one I'm playing around on now was just a small project to learn on and make mistakes
[02:06:43] <SWPadnos> tomp2, ah - now I get it. there are 3 OCR1x registers, but only two sets of outputs
[02:07:17] <SWPadnos> you set OCR1C to the PWM count limit, which sets the number of clocks it'll count for one "period"
[02:08:04] <SWPadnos> you set OCR1A and OCR1B to set the duty cycle (which you can probably leave at OCR1C/2, for ~50% duty steps
[02:08:39] <SWPadnos> or leave it at some value like 3, for 3-microsecond steps (assuming you're using the 1-us base clock)
[02:11:06] <tomp2> SWPadnos: right, it's F & D% (period & d%) but I'm not convinced i can get 1 to 9999uS on and 1 to 9999uS off from that system ( i dont need every one of those but it'd be nice )
[02:11:45] <SWPadnos> it's only got an 8-bit value for the counter, and you have to use at least 6 counts or so for it to work
[02:12:38] <SWPadnos> is this to drive step motors, or to drive a firing circuit?
[02:12:56] <tomp2> a period counter? and it gott be between 6 and 256? drive the firing circuit
[02:13:28] <SWPadnos> ok, so you want real control over the on and off time, but the actual frequency isn't primary, it's a function of whatever the on/off times are
[02:14:10] <SWPadnos> yes - 255 is the max you can use, and "a few" is the lowest you can use - remember that the resolution of on to off time is dependent on the period register
[02:14:52] <tomp2> right, i dont care about F , tho D% is a great control aid. I gotta read this stuff, or go back to 8051/8253 stuff :)
[02:15:47] <SWPadnos> with the mega PWM, if you want 10000 on and 10000 off, you'd program the period to 20000, and the compare value to 10000
[02:15:59] <SWPadnos> it's got 16-bit registers
[02:17:38] <tomp2> thats a lot more useful, even if its 'few' to 65535
[02:17:59] <SWPadnos> ah - the Mega162 internal RC clock is ~8MHz, and there is a /8 mode for the prescaler, making all the time values operate in us
[02:18:05] <SWPadnos> heh, waaaay more useful :)
[02:18:23] <SWPadnos> and a heck of a lot easier to program, that's for sure
[02:19:02] <tomp2> hey that is nice, if i could trigger my current pulses faster, i could even use 1/2 uS... ( too much inductance )
[02:19:27] <SWPadnos> what kind of output do you need for this?
[02:19:49] <SWPadnos> will an NPN darlington do it or do you need optoisolation?
[02:19:58] <tomp2> 1 to 300 amp , 100V open, 32 V discharge EDM pulses
[02:20:05] <tomp2> driving IRF's
[02:20:08] <SWPadnos> I mean from the micro
[02:20:21] <SWPadnos> ok, so a normal transistor output or even just the port pin is all you need
[02:20:30] <tomp2> i send osc to HP optos
[02:20:36] <SWPadnos> though a little interference is good :)
[02:20:43] <SWPadnos> ok
[02:21:06] <tomp2> i used to call them 'clock drivers'
[02:22:02] <tomp2> you been very helpful, i ought go study that Mega162, thx
[02:22:11] <SWPadnos> sure
[02:22:25] <SWPadnos> it's $6.67 at DigiKey (not in stock at the moment though)
[02:22:38] <tomp2> heh... page 1 of 323
[02:23:13] <SWPadnos> looking at doc2513? :)
[02:24:16] <tomp2> mouser in stock 6.77, yes thats the doc, doc
[02:24:43] <SWPadnos> ok, they're in stok at DK as well - I had just searched for a specific package (TQFP) which is out
[02:24:50] <SWPadnos> stock, even
[02:25:49] <SWPadnos> I can send you a blank board that uses a 162 and has some transistors and terminal blocks, if you like
[02:26:03] <tomp2> i'd really appreciate that
[02:26:07] <SWPadnos> actually, it also takes a MAX232 chip for a serial port, and has other stuff
[02:26:21] <SWPadnos> or, I could be nice and send you a populated board ;)
[02:26:26] <tomp2> got Max232 from my old 68hc11 stuff
[02:26:38] <SWPadnos> heh, probably not in a SO package
[02:26:47] <tomp2> I'll buy you a six pack of Singha
[02:26:58] <SWPadnos> http://www.cncgear.com/MPG/
[02:27:00] <SWPadnos> I
[02:27:06] <SWPadnos> I'll take the Sushi, thank you :)
[02:27:11] <emtffke1> what kind of circuits ya'll workin on?
[02:27:26] <tomp2> me, a pulse generator
[02:27:42] <emtffke1> for a pendant or something?
[02:28:33] <tomp2> no, an plasma pulse, eats steel with sparks 'EDM'
[02:28:47] <emtffke1> oh ok...
[02:28:51] <emtffke1> <~~~New Guy
[02:28:59] <SWPadnos> lemme root around and see what I've got assembled or blank
[02:29:03] <tomp2> everythings new to somebody
[02:29:48] <tomp2> SWPadnos: maybe i catch you at the fest? and can recompense
[02:30:00] <SWPadnos> ok, sounds good
[02:30:18] <SWPadnos> I should look at the cost of these things again - haven't sold many at $200 each :)
[02:30:34] <tomp2> woof! lotsa sushi
[02:30:39] <SWPadnos> heh
[02:30:50] <SWPadnos> for you, especially with no encoder, I can cut a deal :)
[02:30:59] <SWPadnos> and with no LED display or driver, it's even better
[02:31:17] <SWPadnos> those are over $30 total
[02:31:18] <SWPadnos> cost
[02:32:15] <tomp2> want a heidenhain rotary? i think it 1000 ppr ( i get 4.000 degrees out at .001deg rez ) but it's 11uA sinus
[02:32:27] <SWPadnos> heh - probably not :)
[02:33:17] <tomp2> whatever you want, lemme know tompDASHtagATsbcglobalDOTnet
[02:33:39] <SWPadnos> ok
[02:34:11] <SWPadnos> what would you lke me to send? something with all the peripherals, or just the board+CPU+terminals? (plus switching supply, I'll assume)
[02:37:30] <tomp2> well, i'd never be able to solder that surface mount stuff, and i dont knwo the board well, so i'll say whatever is needed for ...
[02:37:59] <SWPadnos> ok. hopefully you aren't in an all-fired hurry though :)
[02:38:05] <tomp2> i tell it on & off, and it generates the stream, and i amplify that output myslef
[02:38:17] <tomp2> no hurry, on the road alot now
[02:38:24] <tomp2> in portland maine tonight
[02:38:34] <SWPadnos> oh, a lot closer to me than normal
[02:38:44] <tomp2> where?
[02:38:51] <SWPadnos> I'm in Vermont
[02:39:15] <tomp2> oh cool, i came up from NH, and had a couple days in Boston
[02:39:27] <SWPadnos> heh - we may have almost overlapped then
[02:39:36] <SWPadnos> I was in Marlborough MA on Monday
[02:39:43] <tomp2> deham
[02:39:46] <tomp2> dedham
[02:39:50] <SWPadnos> ah
[02:40:23] <tomp2> my sisters working on a new movie about war camps there, does wardrobe
[02:40:32] <SWPadnos> oh, interesting
[02:40:52] <tomp2> they built a concentration camp there, 'dicaprio' that guy is in it
[02:41:03] <SWPadnos> Leo, baby
[02:41:14] <tomp2> i dunno, not a machine :)
[02:41:17] <SWPadnos> comeonoveranhaveadrink, baby!
[02:41:19] <SWPadnos> heh
[02:41:42] <SWPadnos> is the filming going on in Dedham?
[02:41:47] <SWPadnos> seems an odd place for it :)
[02:42:13] <tomp2> yeah, these movie companies look for old schools and factories as sites
[02:42:34] <tomp2> teher was a mental hosptial ( sorry for bad term ) there, and they used it
[02:42:50] <SWPadnos> ah, ok
[02:42:51] <tomp2> but had to build the 'barracks'
[02:43:33] <SWPadnos> Portlan is a ~4 hour drive from here, much less than anywhere in IL
[02:43:36] <SWPadnos> +d
[02:44:14] <tomp2> for some reason GE has big turbine works thru Maine
[02:44:36] <SWPadnos> also a relatively large facility in Rutland VT
[02:44:51] <SWPadnos> could have to do with the shipbuilding along the coast
[02:44:59] <tomp2> i'm working with one of their outside helper companies
[02:45:05] <SWPadnos> so was I :)
[02:45:18] <SWPadnos> working on EDM/ECDM tools there?
[02:45:31] <tomp2> yep, a bunch of em
[02:45:35] <SWPadnos> Winbro?
[02:45:48] <tomp2> Rich Technologies
[02:45:52] <SWPadnos> ok
[02:46:29] <SWPadnos> the big power supply I just did the controller for (using HAL) is to drive an ECDM machine
[02:47:14] <tomp2> really, used hal! thats a milestone, too bad we cant talk much about our work
[02:47:21] <SWPadnos> heh, indeed
[02:48:13] <SWPadnos> I wrote custom FPGA code for the 5i22, made that 16-bit analog I/O board, and wrote the HAL drivers for it and their control application
[02:48:24] <SWPadnos> plus userspace modbus for comms with their PLC
[02:48:56] <SWPadnos> but I have to sanitize it a little before I can check it in or stick it on the wiki
[02:49:17] <tomp2> really nice, at least the emc2 crowd knows it's now 'industrial strength'
[02:49:31] <SWPadnos> it was funny though - this is the customer that used LabView on another project, and couldn't get it to work right
[02:49:42] <SWPadnos> the main reason was so they could monitor things remotely
[02:49:43] <tomp2> tho RayH has been doing 'real stuff' for years
[02:49:57] <SWPadnos> they were impressed with halscope and the like, on a remote computer :)
[02:50:11] <SWPadnos> heh, lots of real stuff, since day one, with EMC
[02:50:21] <SWPadnos> (like the GM K&T, for example)
[02:56:12] <gezar> howdy guys
[02:57:33] <fenn> SWPadnos: i was imagining an AVR, not a PIC, if it makes you feel better :)
[02:57:42] <SWPadnos> oh, yay! :)
[02:58:11] <ds2> PICs are fine processors.
[02:59:13] <SWPadnos> as long as you don't really want to do anything :)
[02:59:30] <ds2> 'fine' as in RTFM == Read the 'Fine' Manual ;)
[02:59:39] <SWPadnos> heh
[02:59:50] <ds2> hey SWPadnos, you coming out for ESC this year?
[02:59:56] <SWPadnos> yep
[03:00:07] <ds2> cool
[03:00:09] <SWPadnos> and if I ever finish it, I'm doing a presentation on EMC2
[03:00:31] <SWPadnos> ESC-540, Friday at 1:00, room B1
[03:00:45] <ds2> cool... I'll stop by
[03:00:52] <SWPadnos> cool. don't heckle ;)
[03:00:56] <ds2> though 1:00 is not a good time
[03:01:05] <SWPadnos> I know - it's right in the middle of the day
[03:01:07] <SWPadnos> :)
[03:01:30] <ds2> SWPadnos: don't worry... I'll be working a booth btwn talks so you'll have a chance at revenge
[03:01:40] <ds2> no, 1:00 is my usual lunch time
[03:01:47] <SWPadnos> excellent! where will yoube?
[03:01:59] <SWPadnos> oh, the expo ends Thursday I think
[03:02:12] <ds2> donno yet, I haven't seen the allocation or schedules for the talks yet
[03:02:24] <SWPadnos> I mean which booth?
[03:02:37] <SWPadnos> except that the show will be closed then :)
[03:02:42] <ds2> oh... MontaVista but donno the assignment
[03:02:51] <SWPadnos> ah, ok
[03:02:58] <ds2> it is no big deal... I'm close enough for light rail there
[03:03:25] <SWPadnos> heh
[03:03:29] <ds2> hmmm }:-)
[03:03:41] <SWPadnos> the evil empire of RT Linux ;)
[03:03:59] <ds2> you mean the MV backed RT?
[03:04:05] <SWPadnos> or is that FSMLabs?
[03:04:09] <SWPadnos> heh - yeah
[03:04:14] <ds2> think there are 3 RT flavors
[03:04:31] <ds2> EMC uses one, there is the FSM version, then there is ours which is slowly drifting into mainline
[03:05:06] <SWPadnos> is yours based on RTAI or the Inog "-rt" patchsets?
[03:05:10] <SWPadnos> Ingo, that is
[03:05:13] <ds2> Igno -rt
[03:05:15] <SWPadnos> ugh - me Inog!
[03:05:57] <ds2> it is the locking that irritates me
[03:06:05] <SWPadnos> with -rt?
[03:06:14] <ds2> yep. the slighest problem and you see BUG()'s
[03:06:27] <ds2> the kernel used to be a nice and simple place
[03:06:30] <SWPadnos> you don't like his spinlock/semaphore changes?
[03:06:32] <SWPadnos> heh
[03:06:39] <SWPadnos> like back around 1.32
[03:06:51] <ds2> it adds too much complexity, IMO
[03:07:01] <SWPadnos> could be, for the mainline
[03:07:05] <fenn> fork!
[03:07:17] <ds2> I liked it back when 1.2 was around ;)
[03:07:21] <SWPadnos> but since so many people are doing audio and video now, it's actually useful
[03:07:34] <SWPadnos> hmmm. I wonder how good 1.2 support for hotplug was :)
[03:07:45] <ds2> I know why; I just don't like it :)
[03:07:54] <SWPadnos> and USB, and SATA, and AGP (let alone PCIe), and ... ;)
[03:07:55] <ds2> bah who needs hotplug :P
[03:08:20] <SWPadnos> imagine how many floppies you'd need now
[03:08:34] <ds2> floppies? heh.. haven't used them since forever
[03:08:41] <SWPadnos> you'd have to use other alphabets for the disksets
[03:08:44] <ds2> <--- daily arch is ARM
[03:08:59] <SWPadnos> cool. which ones do you like? (what manufacturer)
[03:09:01] <ds2> heh... like how SLS named their floppies?
[03:09:09] <fenn> * fenn notes that tomsrtbt still works
[03:09:15] <SWPadnos> they were all that way way back
[03:09:29] <ds2> like? donno... they all have little irritants
[03:09:40] <SWPadnos> ok, then dislike least :)
[03:09:57] <ds2> the PXA270's were nice (pre Marvell)
[03:09:58] <SWPadnos> there are apparently some from Cirrus (?) that have a floating point unit in them
[03:10:09] <ds2> the current OMAP's have a FPU
[03:10:15] <SWPadnos> OMAP?
[03:10:24] <ds2> the Cirrus ones like the WebPal boards have a nonstandard FPU
[03:10:29] <ds2> yeah, the TI ARM's
[03:10:32] <SWPadnos> ok
[03:10:48] <ds2> or more accurately, the BIG TI ARMs...TI has some MMU-less ARMs
[03:10:57] <SWPadnos> I'm still looking at options for an ARM-based rabbit replacement (haven't gotten to it yet :) )
[03:11:13] <SWPadnos> something people could use with the G-Rex, for example
[03:11:30] <ds2> hmmm MMU-less ones?
[03:11:45] <SWPadnos> I'd want to be able to compile parts of EMC2 for it, so maybe MMU, maybe not
[03:11:56] <ds2> btw, I think the FPU is standard for the newer ARMs -- ARM defined a VFP unit
[03:12:12] <fenn> SWPadnos: which parts?
[03:12:16] <SWPadnos> probably for ARM11, but not ARM7/9/cortex-M3
[03:12:24] <ds2> I would like to see a full port of EMC
[03:12:45] <SWPadnos> fenn, dunno, but if PID for example were going onto the ARM, I'd want to use the same source code if possible
[03:12:49] <SWPadnos> yeah, that too
[03:12:58] <SWPadnos> HAL on the ARM, everything else not
[03:13:10] <SWPadnos> or more precisely, all RT on the ARM, and userspace on the PC
[03:13:30] <SWPadnos> but HAL does throw a wrench in that too, so it needs more thought
[03:13:44] <fenn> why does hal throw a wrench in that?
[03:14:04] <fenn> you just need to be able to send nml to the doohickey
[03:14:12] <SWPadnos> because HAL is pretty much non-networking, so splitting the RT section from the userspace section is a problem
[03:14:21] <SWPadnos> sure, but for example AXIS has some HAL pins ...
[03:14:24] <fenn> oh pff
[03:14:30] <fenn> AXIS doesn't need to have hal pins
[03:14:34] <SWPadnos> and at the moment userspace can manipulate HAL (like halcmd, for example)
[03:14:52] <fenn> that's just laziness brought on by crappy NML code style
[03:14:54] <SWPadnos> in fact, userspace access is required to configure HAL
[03:14:56] <SWPadnos> heh
[03:15:01] <SWPadnos> the AXIS part maybe
[03:15:10] <SWPadnos> but not halcmd
[03:15:19] <fenn> oh, halcmd is fine
[03:15:26] <SWPadnos> not across a "network" ...
[03:15:27] <fenn> otherwise hal would be dependent on EMC
[03:15:36] <fenn> SWPadnos: ever heard of telnet? :)
[03:15:41] <SWPadnos> nope, never
[03:15:43] <fenn> good
[03:15:44] <SWPadnos> I'm too young
[03:16:01] <ds2> there are some very nice (and cheap) ARM boards complete with video out
[03:16:02] <SWPadnos> hmmm - ds2, do you know Steven Rostedt?
[03:16:06] <ds2> EMC on those would be very nice
[03:16:13] <ds2> SWPadnos: no, should I?
[03:16:27] <SWPadnos> he's listed on the contributors page on the MV site
[03:16:52] <SWPadnos> I met him at the first LinuxWorld expo (in San Jose, coincidentally), haven't seen him since
[03:17:08] <ds2> hmmm interesting. we are somewhat distributed so there are quite a few people I don't know
[03:17:12] <SWPadnos> ah
[03:17:13] <tomp2> is MV the 'hardhat linux' ( looking thru old demo cds )
[03:17:23] <ds2> tomp2: yep
[03:17:30] <SWPadnos> I'm the guy who screwed up the photo of him and Linus (on his disposable camera)
[03:17:35] <ds2> I am a relatie n00b at MV
[03:18:02] <SWPadnos> (and Linus was in a hurry, so there wasn't time for a re-shoot :) )
[03:19:12] <ds2> oh and most ARM board have real GPIO's unlike some newer PCs
[03:19:25] <fenn> i'm glad to see PC and microcontroller merging, finally
[03:19:30] <SWPadnos> well, time for me to get back to this presentation. see you later
[03:19:46] <tomp2> gnite
[03:20:05] <ds2> donno about merging... parts of the x86 world are so far away from microcontrollers
[03:20:23] <fenn> huh? ARM is by definition not x86
[03:20:52] <fenn> i'd argue something that runs debian linux is a PC
[03:21:23] <ds2> you said PC
[03:21:34] <ds2> like that...
[03:21:54] <fenn> o_O
[03:22:59] <fenn> you do know that debian runs on ARM's right?
[03:23:10] <ds2> I was responding lineby line
[03:23:26] <ds2> and yes, I am aware... Debian/SLUG is one example
[03:24:51] <eric_U> embedebian
[03:26:27] <toastyde1th> slug = lb * s^2 / ft
[03:27:58] <fenn> 32.174 lb? wtf is that?
[03:29:32] <toastyde1th> slug is english mass
[03:29:56] <fenn> a mass that accelerates by 1 ft/s² when a force of one pound-force (lbf) is exerted on it.
[03:30:29] <toastyde1th> yar!
[03:30:54] <fenn> this sounds like the sort of thing perpetuated by people who collect obscure units
[03:31:05] <ds2> hahahah
[03:31:18] <toastyde1th> it's obscure unless you need to calculate the force required to accelerate, uh, anything
[03:31:18] <fenn> the amount of time requred for a yak to plow a hectare
[03:31:31] <ds2> wonder if it is polite to ask a women how many slugs is she ;)
[03:31:39] <fenn> the area upon which one angel may dance
[03:31:46] <toastyde1th> is the kilogram dumb?
[03:32:02] <toastyde1th> the slug is the english unit of mass, just like the kilogram is the metric unit of mass.
[03:32:43] <ds2> apparently it is impolite to ask her how much she weights and even then no one answers in Newtons ;)
[03:33:10] <fenn> according to wikipedia, the slug was developed in the 19th century and didnt even have a name until at least the 1930's, so you can't say it was ever really used
[03:33:19] <toastyde1th> it was used, they just named it in 1930's
[03:33:29] <toastyde1th> instead of saying "slugs" they said lb/g
[03:34:01] <toastyde1th> because, you know, f=ma
[03:34:04] <toastyde1th> cannot use pounds
[03:34:17] <fenn> that's not what a slug is
[03:34:22] <toastyde1th> yes, it is.
[03:36:52] <fenn> my units file defines slug as 'lbf s^2 / ft'
[03:37:00] <toastyde1th> yep
[03:37:14] <fenn> which is equivalent to 14.59kg
[03:37:29] <fenn> now, is a pound a unit of force or mass?
[03:37:32] <toastyde1th> force
[03:37:39] <SWPadnos> lbf = pound force
[03:37:47] <SWPadnos> lb - pound mass
[03:38:03] <toastyde1th> actually, lb is force for the purposes of physics equations
[03:38:13] <toastyde1th> you do not use lbm because it's an aggrivating unit
[03:38:32] <toastyde1th> ft-lbs, lb/in^2
[03:38:32] <fenn> of course - it's not metric
[03:38:35] <toastyde1th> all units of force.
[03:39:49] <toastyde1th> well slugs and pounds have the same relationship as kg and newtons
[03:39:51] <fenn> i guess i've trained myself to use lbf
[03:39:54] <toastyde1th> so it's not really all that awkward.
[03:41:39] <fenn> and kgf - wtf is a newton :P
[03:41:54] <toastyde1th> are you kidding dude?
[03:42:00] <toastyde1th> I WILL ASSUME YES.
[03:42:06] <fenn> i know what a newton is, i just think it's dumb
[03:42:20] <toastyde1th> how could you possibly think that units of mass are dumb
[03:42:22] <fenn> if people used base units they might understand something
[03:42:34] <fenn> a newton is a force unit
[03:42:45] <toastyde1th> yes
[03:42:45] <ds2> a newton is one of those cracker things with fig filling
[03:42:49] <fenn> kg*m/s^2
[03:42:53] <toastyde1th> right
[03:43:13] <fenn> which is shorter, 'newton' or kg*m/s^2?
[03:43:42] <toastyde1th> if you're trying to do math and discuss forces, newton is
[03:44:28] <SWPadnos> which is shorter, 'volt' or 'kg*m^2/A*s^3' ?
[03:45:05] <ds2> the second cuz then you can see that you screwed up with the constants used for E&M :P
[03:45:19] <SWPadnos> shhh - that's Einstein's job
[03:45:41] <ds2> <--- had to take 3 different versions of E&M
[03:45:44] <fenn> fwiw i dont think mass should be a primary unit
[03:45:57] <toastyde1th> why
[03:46:05] <SWPadnos> how wold you express it using other base units
[03:46:07] <SWPadnos> would
[03:46:15] <ds2> and each version of E&M uses a different system of units
[03:46:43] <SWPadnos> E&M should all be the same, excapt all the K values change :)
[03:46:48] <SWPadnos> same with gas physics
[03:46:52] <SWPadnos> err - gas kinetics
[03:46:57] <fenn> there shouldn't be any K values
[03:47:05] <SWPadnos> tell the universe that
[03:47:18] <fenn> yarr!! listen here youniverse!
[03:47:31] <ds2> SWPadnos: there are factors of 2PI that vanish under certain combinations of units
[03:47:40] <toastyde1th> i don't see why mass isn't a base unit
[03:47:47] <fenn> it's Joule*seconds from here on out!
[03:47:49] <SWPadnos> only if the units already include those factors
[03:48:06] <SWPadnos> 2*pi is unitless
[03:48:07] <ds2> like CGS vs MKS
[03:48:13] <toastyde1th> radians ftw
[03:48:22] <ds2> the equations differ by 2PI
[03:48:36] <fenn> SWPadnos: only if you dont keep track of angular units
[03:48:55] <SWPadnos> no, there is a conversion between e.g. degrees and radians that has the 2pi factor
[03:49:16] <SWPadnos> you will of course have different constants (like 2*pi vs 1) using different unit systems
[03:49:17] <ds2> 2PI seems to also come from odd integrals
[03:49:30] <toastyde1th> 360 deg = 1 rev = 2pi rad
[03:49:32] <fenn> huh? that's like saying, "no there's a conversion between meters and feet that has the 3.28 factor"
[03:50:01] <SWPadnos> if you get different numbers after you apply the unitless conversion factors between your unit systems, then you made a calculation error or your equations were wrong
[03:50:12] <toastyde1th> srs
[03:51:01] <toastyde1th> i really like radians.
[03:51:26] <fenn> sure, radians are fine
[03:51:42] <fenn> it's not unitless though, radian is a base unit (or rev if you prefer)
[03:51:50] <toastyde1th> radians is unitless
[03:51:55] <toastyde1th> seriously, it's d/d
[03:51:59] <SWPadnos> yep
[03:52:14] <fenn> what is a radian?
[03:52:24] <SWPadnos> 1/2*pi-th of a circle
[03:52:32] <toastyde1th> the angle of an arc segment where the length of the arc equals the radius
[03:52:39] <SWPadnos> err - a 1/(2*pi)th of a circle
[03:52:42] <toastyde1th> nar
[03:52:46] <SWPadnos> heh
[03:52:51] <toastyde1th> i'm dead serious
[03:52:52] <fenn> ok, and this is different from just 1/2*pi-th of a meter, right?
[03:52:59] <SWPadnos> no
[03:53:12] <SWPadnos> pi or 17.4 or 57.29 are unitless conversion factors
[03:53:26] <fenn> a radian meter is 1.57 meters?
[03:53:29] <SWPadnos> they will not change the units expressed (such as length or time)
[03:53:49] <toastyde1th> fenn: radians are used to go from an angular displacement to a linear displacement
[03:54:00] <SWPadnos> toastyde1th had the definition - radians are only really useful for angular calculations
[03:54:25] <ds2> nah grads ;)|
[03:54:34] <toastyde1th> if you have a circle that is 6" in radius, and you rotate it pi radians
[03:54:36] <SWPadnos> but they're both length displacements, just in different coordinate systems (more or less)
[03:54:39] <toastyde1th> you went 6 inches linearly
[03:54:52] <fenn> units parsec radian*meter == 3.0856776e+16
[03:55:27] <fenn> hmmm
[03:55:39] <fenn> units is borked
[03:55:42] <SWPadnos> heh
[03:55:50] <fenn> why are angles not a base unit?
[03:55:57] <toastyde1th> angle IS a base unit
[03:56:07] <fenn> then why is radian not a unit of angle?
[03:56:09] <toastyde1th> well, not base
[03:56:16] <toastyde1th> because radians are a proportion
[03:56:24] <toastyde1th> just like pi is
[03:56:25] <SWPadnos> hmmm. angles are merely a useful conversion between polar and cartesian space
[03:56:31] <fenn> god dammit what's a unit of angle
[03:56:36] <toastyde1th> degree.
[03:56:38] <toastyde1th> revolutions.
[03:56:42] <SWPadnos> or radian ;)
[03:57:05] <toastyde1th> radian is defined in a linear system though
[03:57:08] <toastyde1th> length
[03:57:25] <toastyde1th> which is what makes it different from rev and deg
[03:57:26] <SWPadnos> hmmm. my calculator has radians in its units database
[03:57:32] <ds2> grads!!!!!
[03:57:39] <ds2> 400grad == 360deg
[03:57:39] <SWPadnos> the value is "1" - with no units listed :)
[03:57:47] <SWPadnos> yeah, we know grads. we're ignoring them ;)
[03:57:57] <fenn> units let me down :(
[03:58:32] <fenn> actually it was the whole world
[03:58:36] <fenn> fuck you world!
[03:58:56] <ds2> then make a new one ;) make clean; make world
[03:59:01] <cradek> fenn: bedtime?
[03:59:04] <fenn> i'm working on it
[03:59:07] <SWPadnos> heh
[04:00:17] <cradek> so funny. 70 yesterday, 65 today, snow accumulations tomorrow
[04:44:06] <fenn> world, my apologies. it's the SI that got it wrong
[04:51:27] <SkinnYPuppY> Tell em fenn
[05:06:34] <toastyde1th> Fenn: The man who wanted to eliminate base units. Tonight at nine, only on cnn.
[05:55:40] <micges> good morning all
[09:01:10] <Guest354> Q: Are there any plans to add Mechatrolink hardware support to emc?
[09:01:48] <SWPadnos> I don't think any of the core developers have any mechatrolink drives or documentation, so there are no plans
[09:02:39] <SWPadnos> aside from that, EMC tends to want to be in charge, and we don't have a good idea for how to use smart drives at the moment
[09:03:21] <SWPadnos> (also, there are issues with realtime access to peripherals like USB and FireWire, which would also be a problem)
[09:04:45] <Guest354> Thanks for your answers, I was thinking hardware, how clean a mechatrolink machine setup would be.
[09:04:58] <SWPadnos> yeah, it would be pretty all right :)
[09:05:39] <SWPadnos> but then, you still have a set of wires going from the controller (PC) to each drive, and wires going from the drives to each motor, so there isn't much reduction in that kind of stuff
[09:06:18] <SWPadnos> oh - I have a mechatrolink interface for an SGDH drive, so I guess one of the developers does have some hardware :)
[09:07:36] <Guest354> Well, the PC to drive connection would be the really nice part, since it would be only one mechatrolink cable to the pc. The drives are then daisy-chained
[09:07:52] <SWPadnos> yeah, that's true
[09:08:10] <SWPadnos> too bad it won't work :)
[09:13:28] <Guest354> So the best way to connect Yaskawa/Omron Sigma drives would be to buy one of the supported Servo Interface cards and wire to the drive and figure out how the drive can monitor the encoder feedback on its outputs.
[09:13:43] <SWPadnos> yes, I think so
[09:14:01] <SWPadnos> the Yaskawa drives will output synthesized quadrature feedback
[09:14:17] <SWPadnos> do you have absolute encoders on your motors?
[09:15:15] <Guest354> So, its a matter of selecting an interface card that accepts that signal. I'll need to study the list som more.
[09:15:36] <Guest354> No, I have incremental encoders
[09:15:47] <SWPadnos> most of the servo interfaces have wuadrature counters (Mesa, UPC, STG, Motenc ...)
[09:15:50] <SWPadnos> ok - just wondering
[09:16:11] <SWPadnos> the initialization of absolute encoders is a little weird, and EMC has no support for it at the moment
[09:18:01] <Guest354> The Sigma drives can treat an absolute encoder as an incremental by setting a flag in the drive.
[09:18:26] <SWPadnos> yes, the absolute encoders are essentially incremental, after the initial position readout
[09:19:43] <SWPadnos> I believe those drives can take step/dir, analog, or fwd/rev pulses for control
[09:19:54] <SWPadnos> (I haven't looked at the manual in a while)
[09:20:22] <Guest354> Yes, your right.
[09:38:08] <alex_joni> SWPadnos: what are you doing up so late/early?
[09:38:16] <SWPadnos> writing the ESC paper
[09:38:44] <SWPadnos> I was thinking of going to bed soon though
[09:39:17] <alex_joni> sun should be coming up soon
[09:39:22] <SWPadnos> in fact, why don't I do that now
[09:39:33] <SWPadnos> not here :)
[09:39:41] <alex_joni> 4h?
[09:40:38] <SWPadnos> hmmm - actually, I guess we've already passed Astronomical twilight, but sunrise isn't until 7:05 AM - closeto 1.5 hours away
[09:42:16] <SWPadnos> good night / morning
[09:44:03] <SWPadnos> does anyone have an Ubuntu forum account? http://ubuntuforums.org/showthread.php?t=673629
[09:47:23] <alex_joni> not me
[09:49:21] <archivist> not me
[10:07:21] <micges> not me
[10:51:19] <BigJohnT_> not me
[12:03:54] <BigJohnT> what C++ programming editor is a good one for linux?
[12:21:58] <alex_joni> I use mcedit
[12:22:07] <alex_joni> others use vi :P
[12:22:30] <BigJohnT> thanks I'll look them up
[12:22:38] <alex_joni> these are plain text editors
[12:22:44] <alex_joni> they provide some highlighting though..
[12:24:21] <BigJohnT> ok, I can't test a program in them right
[12:24:26] <alex_joni> right
[12:24:40] <alex_joni> there are IDE's for what you want
[12:24:56] <BigJohnT> IDE?
[12:25:01] <alex_joni> but I wouldn't know how they are called (I used Eclipse for Java stuff, and I heared it works for C++ too..)
[12:25:13] <alex_joni> http://en.wikipedia.org/wiki/Integrated_Development_Environment
[12:25:22] <BigJohnT> ok thanks
[12:25:31] <alex_joni> http://en.wikipedia.org/wiki/Comparison_of_integrated_development_environments
[12:25:51] <BigJohnT> thanks
[12:37:33] <lerman> I've added a new test directory under emc2/tests/interp. How do I go about telling cvs about it?
[12:45:18] <alex_joni> lerman: you need to cvs add
[12:45:21] <alex_joni> then cvs commit
[12:45:34] <alex_joni> only after the commit will it push the things to CVS
[12:45:45] <lerman> Tnx.
[12:46:19] <alex_joni> you need to cvs add the dir first
[12:46:25] <alex_joni> then cvs add each folder in it
[12:46:42] <alex_joni> but I see you figured it out
[12:47:42] <lerman> Yup. I think so.
[12:47:59] <lerman> I'm quite impressed by the test facility.
[12:48:23] <lerman> So I had to add at least one test.
[12:49:07] <lerman> For now on, whenever someone says that they aren't programmers so they can't contribute to EMC, I'm going to tell them to write some tests.
[12:50:12] <archivist> hmm what if i am a programmer.....
[12:50:27] <archivist> * archivist hides
[12:50:41] <lerman> Find a feature that you would like and program it.
[12:50:47] <lerman> :-)
[12:51:19] <lerman> Of course, only a very small part of emc is written in COBOL. :-)
[12:51:37] <lerman> So your contributions might be limited. :-)
[12:52:05] <archivist> Im old enough for cobble but luckily have never used it
[12:53:53] <alex_joni> lerman: how about docs?
[12:54:02] <alex_joni> *anyone* could write those :P
[12:54:46] <lerman> Especially if they would like to translate the docs to some useful language -- swahili or gujarati come to mind.
[12:55:30] <lerman> That's what we need. A bunch of new users who can't read english asking questions ina language we can't read.
[12:56:26] <alex_joni> lerman: we have some quite good docs in french lately
[12:57:08] <lerman> Although it would be more fun if they got on IRC with questions using a hebrew, arabic, russian, or chinese character sets.
[12:57:30] <lerman> I noticed those docs -- but am not qualified to tell whether they are any good.
[12:57:44] <alex_joni> you only need a proper IRC client with Unicode support
[12:58:19] <alex_joni> lerman: during the translation process there were a couple of pertinent questions, about places that weren't unclear
[12:58:20] <lerman> Someone suggested that before I commit my stuff, I update the docs. It seems that I'd have to enhance my skill set to update the user manual.
[12:58:26] <alex_joni> so I think it was a *very* good thing
[12:58:39] <alex_joni> why so? I find it quite easy...
[12:58:42] <jepler> alex_joni: you mean, places that *were* unclear?
[12:58:55] <alex_joni> jepler: sure I do
[12:58:56] <lerman> Good questions are sometimes as valuable as good answers.
[12:59:09] <alex_joni> jepler: I got up too early today
[12:59:14] <alex_joni> my brain is mush atm
[12:59:30] <lerman> First I need to update my config to build the docs.
[13:00:02] <alex_joni> lerman: you need a couple of packages for that
[13:00:06] <lerman> Then I need to find the source of the section I'm updating. (Named owords in particular).
[13:01:04] <lerman> For now, I think I'll at least update the wiki.
[13:01:40] <lerman> I'd like someone to play with the changes I made to allow subroutine calls from MDI.
[13:02:30] <lerman> I might also be requesting a change to Axis to allow copying from the source window.
[13:03:02] <lerman> I tried to copy from there and paste to MDI and found that I couldn't do that.
[13:03:51] <alex_joni> not even middle-click?
[13:04:24] <lerman> I'm not sure if I tried that.
[13:05:12] <lerman> The source window has line numbers -- it would be nice if you could copy from there without including the line numbers.
[13:06:43] <BigJohnT> bbl
[13:11:47] <lerman> configure: error: no convert, HTML documentation cannot be built
[13:12:19] <lerman> Where do I find 'convert'? What package should I install?
[13:12:22] <alex_joni> lerman: as I said.. you need additional packages
[13:12:29] <alex_joni> look at debian/rules
[13:12:36] <lerman> How do I find out which one?
[13:12:43] <lerman> where is debian/rules?
[13:12:54] <alex_joni> jas
[13:13:35] <alex_joni> convert is in imagemagik
[13:14:10] <alex_joni> imagemagick
[13:14:11] <lerman> E: Couldn't find package imagemagik
[13:14:27] <alex_joni> there is also "apt-cache search convert"
[13:14:31] <alex_joni> or "apt-file ..
[13:14:41] <lerman> tnx
[13:15:06] <alex_joni> lerman: the file I really meant was debian/control
[13:15:11] <alex_joni> emc2/debian/control
[13:15:22] <alex_joni> (which gets generated from emc2/debian/control.in)
[13:15:47] <lerman> checking for HTML support in groff... configure: error: no groff -Thtml, HTML documentation cannot be built
[13:16:02] <alex_joni> otoh, you don't need to create html docs if you don't want to
[13:16:09] <alex_joni> apt-get install groff ?
[13:17:24] <lerman> The error implies that groff exists but doesn't support -Thtml. But the apt-get insall fixed that.
[13:17:37] <lerman> OK -- ready to try this.
[13:23:58] <lerman> It sure takes a long time to build those docs.
[13:25:47] <alex_joni> lerman: only the first full build
[13:26:06] <alex_joni> the subsequent will be incrementals, only building the relevant subpart of it
[13:26:10] <lerman> That's what I assumed.
[13:27:52] <lerman> make: [checkref_fr] Error 1 (ignored)
[13:35:52] <lerman> bbl
[13:47:30] <jepler> lerman: yeah that's a problem I haven't figured out yet
[13:48:22] <lerman> Which problem? The french error?
[13:48:25] <jepler> lerman: that particular step checks that all the links in gcode.html (the hand-written gcode quick reference) point to anchors inside gcode_main.html (the full gcode documentation in lyx format)
[13:48:44] <jepler> lerman: but the checkref program is broken for non-ASCII characters
[13:49:01] <jepler> or maybe the lyx->html toolchain is generating the wrong anchors
[13:49:08] <jepler> I'm not sure exactly what part of it is wrong
[13:49:24] <jepler> but that is an error everyone sees, and it's not a fatal error
[13:49:36] <jepler> it just means that program isn't sure that clicking a link in gcode_fr.html will take you to the right spot in gcode_main_fr.html
[13:50:52] <lerman> The more I get involved with EMC, the more impressed I am. There's a whole hidden infrastructure that the average (or above average) user never sees.
[13:51:34] <lerman> I'm very impressed by the user manual; but I think I'm more impressed by the technology to build it.
[13:52:41] <jepler> it's got its flaws; you'll begin discovering them soon.
[13:53:06] <cradek> I wish the writing was all as good as the technology...
[13:53:21] <alex_joni> says the grammar-freak :P
[13:53:47] <lerman> I'm starting to look at a lyx tutorial. In response to my question about when to commit, Mario (I think) suggested that docs are very important.
[13:53:57] <jepler> for instance, if you don't edit with exactly the right version of lyx (lyx-qt-1.3.7-0ubuntu4) you will create huge diffs, break building the pdf documentation on dapper systems, and break building the html documentation on any system.
[13:54:24] <jepler> if you know the right incantation you can produce a lyx file that is *compatible* with lyx-qt-1.3.7 and the lyx->html processing software, but it will still create huge diffs when you commit it
[13:54:29] <archivist> i hate see ---(some other non gcode doc) in the gcode reference
[13:55:30] <lerman> How do I check what version I have? lyx-qt -version gives: LyX 1.3.7 of Tue, Jan 17, 2006 -- it doesn't say ubuntu.
[13:55:47] <jepler> $ dpkg -l lyx-qt | tail -1
[13:55:47] <jepler> ii lyx-qt 1.3.7-0ubuntu4 High Level Word Processor - Qt frontend
[13:56:11] <jepler> if you're using an updated ubuntu 6.06 (and haven't enabled the repository called 'backports') then this is the version you'll have
[13:56:55] <lerman> OK. I've got the right (or should I say write) version.
[13:58:11] <lerman> Is anyone ready to see what my MDI "fix" breaks?
[13:58:50] <lerman> Or should I ask if anyone has tried it yet?
[13:59:17] <jepler> I haven't tried it
[14:00:16] <lerman> I'm reasonably certain that if you don't enable it, it won't break anything. But if you do enable it, it will change the existing behavior considerably.
[14:00:49] <lerman> In particular, it won't reset the state before it executes MDI commands.
[14:01:54] <lerman> More precisely, it won't close the currently open file.
[14:05:29] <alex_joni> does that imply things like leaving G92 offsets in place at the end of a program?
[14:07:13] <lerman> It implies not doing the close and the reset that would normally be done. I'm not sure when the cancellation of G92 is done.
[14:07:23] <jepler> That's documented as a side-effect of M2
[14:07:26] <alex_joni> on executing M2 or M30
[14:07:56] <lerman> Then if you have an M2, that is done. If not, it is not done.
[14:07:57] <alex_joni> lerman: I only fear one thing as a sideeffect of your changes, and I plan to test it later
[14:08:12] <alex_joni> stepping
[14:08:15] <lerman> What do you fear?
[14:08:26] <lerman> elaborate on stepping
[14:08:29] <alex_joni> you can start a program by hitting step
[14:08:38] <lerman> yes...
[14:08:38] <alex_joni> which should execute only the first line of a program
[14:08:53] <alex_joni> but if the last program hasn't been closed/reset.. I'm not sure what happens
[14:09:29] <lerman> It is not clear to me what stepping will do if the line is a subroutine call. Will it step into the subroutine, or execute the whole subroutine.
[14:10:11] <cradek> step runs the motion(s) coming from one line of gcode
[14:10:12] <lerman> If done by inserting a MDI, it will now execute the whole subroutine.
[14:10:20] <lerman> I don't know what it did before.
[14:11:58] <alex_joni> lerman: I think it steps into the subroutine
[14:12:34] <lerman> I assume it is NOT done by inserting a MDI.
[14:12:40] <alex_joni> no
[14:12:48] <alex_joni> it's done just like executing a program
[14:13:07] <alex_joni> but only executing the output from one line from the interp
[14:13:23] <alex_joni> (interp still gets all stuff feeded..)
[14:13:32] <lerman> How is the interp told that?
[14:13:43] <jepler> archivist: besides "Tool Compensation Sources" I don't see any significant items that the gcode documentation refers to that aren't part of the emc2 docs. What were you referring to?
[14:13:55] <cradek> stepping is done in realtime, not by the interpreter
[14:14:21] <lerman> OK. I'm safe then. :-)
[14:15:30] <cradek> I think the only MDI commands issued by things other than the user are G92, G10 to manipulate offsets
[14:16:22] <cradek> I wonder if you broke the units-related part of those things
[14:16:28] <cradek> i.e. g20/g21 in the gcode program
[14:16:37] <lerman> Then I'm probably in the clear.
[14:16:51] <lerman> Why would that break?
[14:17:08] <alex_joni> lerman: last program had G21 in it
[14:17:24] <alex_joni> the user interface is set in inches
[14:17:35] <alex_joni> when a user touches off, a G54 offset is sent (AXIS assumes inches)
[14:17:41] <alex_joni> but emc is still in G21
[14:17:41] <lerman> Does M2/M30 reset that?
[14:18:08] <alex_joni> beats me..
[14:18:18] <alex_joni> (maybe cradek was thinking of something else entirely..)
[14:18:56] <lerman> The reason I didn't close the file was so that the subs within it would stay accessible. I could leave the file open, but reset all of the other stuff associated with closing the file if that were desirable.
[14:18:57] <alex_joni> http://www.linuxcnc.org/docview/html//gcode_main.html#sub:M0,-M1,-M2,
[14:19:06] <alex_joni> I don't see G20/21 there
[14:20:58] <lerman> I'm counting on you guys (aka youse) to make sure I get this right. I'm reasonably (or maybe unreasonably) ignorant about such matters.
[14:27:02] <cradek> 20 mpg at 100 mph in 1934: http://blog.modernmechanix.com/2008/03/14/diesel-car-breaks-worlds-record-despite-a-heavy-rain/
[14:29:23] <archivist> jepler 14.15 -> 12.2.15 is probably a good example both point to each other
[14:33:16] <jepler> archivist: what do you believe should be improved in those sections?
[14:34:06] <jepler> The issue you first raised was references to non-emc documentation (unless I misunderstood you) but I don't see that there.
[14:34:13] <archivist> I was going to write something a couple of weeks ago but got sidetracked. I need to think on ita bit
[14:35:11] <archivist> jepler no I meant being directed out of reference section for detail
[14:37:15] <skunkworks_> I don't get the comment.. http://www.youtube.com/watch?v=JCEwlfJj__A#GU5U2spHI_4
[14:38:22] <jepler> skunkworks_: you don't get it because it's in french
[14:38:49] <jepler> "For M8x125, (gcode that doesn't work on emc2)"
[14:39:09] <jepler> but I see F1.25 in there, that must be a feed of 1.25mm per revolution on this guy's control
[14:41:17] <skunkworks_> Ah..
[14:56:39] <alex_joni> bbl
[15:21:22] <skunkworks_> running spiral http://www.youtube.com/watch?v=lONum1RZv4k
[16:33:23] <fenn_> fenn_ is now known as fenn
[16:44:23] <gene_> I have excedrin heradache about 3e+18 I think.
[16:44:48] <SWPadnos> going for a record?
[16:44:49] <gene_> I have it all hooked up, and am getting an instant fault light.
[16:44:59] <SWPadnos> fault light where?
[16:45:46] <gene_> It appears I need time delay between energizing the VSR circuit, and th relase of the reset contact, I can't do it all within the reaction time of the relays.
[16:45:59] <gene_> on the vsr card
[16:46:22] <gene_> Yeah 100% failure
[16:46:26] <gene_> :-)
[16:46:44] <SWPadnos> well, you could use classicladder to do that
[16:46:55] <SWPadnos> or possibly timedelay
[16:47:18] <gene_> Tell me more, cause I'm also going to need to interlock it with the run buttons too.
[16:47:20] <SWPadnos> assuming you have both reset and whatever the other signal is connected to EMC
[16:47:43] <SWPadnos> I'm not sure how much help I'll be on (a) your drive or (b) classicladder :)
[16:47:46] <SWPadnos> HAL I can help with
[16:47:50] <gene_> connected via relays on the PMDX-106.
[16:48:02] <gene_> which eare responding to emc
[16:48:37] <SWPadnos> well, you need to figure out the sequence you need to provide the VSD
[16:49:01] <SWPadnos> once you have that, it's a piece of cake (or pie or something)
[16:49:24] <gene_> The normal start sequence with this vsr is to power it up with a multipole switch, and at powerup time, there must be a closed contact located on the back of the speed pot that opens when the pot is turned up fro zero.
[16:49:58] <gene_> I've not got that human hand time delay in releasing that 'back of the pot" switch, its instant.
[16:50:19] <SWPadnos> and the spindle PWM is actually replacing the pot?
[16:51:21] <SWPadnos> so the actual requirement is that the PWM has to be off until the relay has time to close - is that it?
[16:51:44] <gene_> the aa/d on the PMDX-106 is replacing the VSR's pot, and the PMDX-106 has its own pot that appears to work, but no switch to tally zero speed and act as an overload reaset.
[16:52:24] <gene_> From emc, there is no 'zero' speed other than turning it all off.
[16:52:58] <SWPadnos> hmmm. what happens if you program S0?
[16:52:59] <gene_> Yes, I'd guess half a second
[16:53:13] <SWPadnos> the PWM should be enabled, but at zero output
[16:54:29] <cradek> S0 M3 does not turn on the spindle-fwd signal
[16:54:53] <SWPadnos> oh, so you'd need something like S1M3 to actually get the output
[16:54:57] <gene_> Humm, lemme try that. Because the cessation of pwm pulses stops the PMDX-106, S0 just shuts it all off
[16:55:36] <gene_> spindle fwd is default, I'm using spindle _rev though
[16:56:39] <gene_> actually SPINDLE_CCW, on pin 14 I think.
[16:57:03] <alex_joni> then S1M4
[16:57:07] <SWPadnos> it should just be the negation of SPINDLE_CW when the spindle is supposed to be on
[16:57:26] <SWPadnos> alex_joni, I think both SPINDLE_ON and CW are being used
[16:57:26] <gene_> The PMDX-106 isn't set to ignore pwm, maybe I need to bring out both signals, with either one enableing things?
[16:57:39] <SWPadnos> one to enable the PCM, the other to set the direction on the VSD
[16:57:45] <SWPadnos> PWM that was
[16:58:04] <SWPadnos> uh - I thought that's what you had??
[16:58:15] <gene_> Thats what I'm doing now, if not spindle_ccw, then assume spindle_CW
[16:58:39] <gene_> understood, pwm
[16:59:14] <SWPadnos> I think the timedelay component might be useful for you
[17:00:04] <gene_> yeah, but in emc isn'y where I need it, darn it.
[17:00:17] <skunkworks_> BigJohnT: Not an absolute encoder - incremental.
[17:00:30] <SWPadnos> yeah, I'm thinking you have one too few outputs to the PMDX-106 / motor drive
[17:01:27] <gene_> Lemme study up on the pmdx-106 some more, I may be able to run all the relays without any pwm, and let its presence release the rest contact.
[17:01:46] <SWPadnos> you need "command" - fed from the PWM, "enable" - fed from SPINDLE_ON, and "direction", fed from SPINDLE_{CW,CCW}
[17:02:19] <BigJohnT> crap, ok I'll change it real quick
[17:02:22] <SWPadnos> it looks like the ENABLE is coming from the PMDX-106, based on the presence of a PWM signal
[17:04:14] <gene_> yes, thats all on relays, 3 of them, spdt, on the pmdx-106, and i had to add one more reed relay to that mix, but its coil is in the same circuit as the ac and dc enable poweer relays
[17:04:14] <BigJohnT> skunkworks_ thanks for catching that
[17:04:46] <BigJohnT> * BigJohnT leaves with tail between legs
[17:04:52] <gene_> so, lemme sit down and re-read the docs on the 106, back in few
[17:05:06] <SWPadnos> ok
[17:15:21] <gene_> It looks as if I'll need to bypass the power control functions of the pmdx-106 that I have hooked up to its relays now, and replace them with a power switch, probably in the 12 volt line.
[17:17:09] <gene_> What I don't know is if I can crowbar that neon indicator when its lit. That is what the zero speed switch on the back of the VSR's pot does.
[17:17:36] <gene_> I'd assume so, ther is no mechanical interlock to prevent it.
[17:18:27] <gene_> Anyway, I have a tv transmitter to work on this afternoon, so I'll quit bugging you for a few hours. :-)
[17:34:22] <BigJohnT> Oh boy, my G203V has arrived for my Z
[19:32:36] <fenn> thought-controlled CNC anyone? http://www.youtube.com/watch?v=kQLsjbQy7NI
[19:56:15] <BigJohnT> finally you can get it to do what you want not what you typed!
[19:59:51] <fenn> well, sorta
[20:00:09] <fenn> it will do what you intend, not what you want
[20:01:02] <fenn> malglico eh?
[20:22:47] <bill20r3> And you have to think in Russian.
[20:39:49] <SkinnYPuppY> SH&* did you see this one on the sidebar? RUN ! http://www.youtube.com/watch?v=Cgim0DNw1EE
[20:51:11] <Unit41> whats a good home made bipolar controller ?
[20:51:25] <SWPadnos> Valium
[20:51:27] <SWPadnos> oh, home made
[20:52:58] <fenn> take a lithium battery, extract the lithium
[20:54:09] <bill20r3> beer
[20:55:34] <alex_joni> Unit41: how good?
[20:55:51] <Unit41> something easy to build
[20:55:57] <Unit41> can be mass produced
[20:56:24] <Unit41> i have all the pcb and resistors i need
[20:56:40] <fenn> look at pminmo.com for ideas
[20:56:51] <Unit41> that site annoys me
[20:56:59] <SkinnYPuppY> ...
[20:57:01] <fenn> too bad
[20:57:14] <fenn> make a better one
[20:57:26] <SWPadnos> it also depends on what specs you're looking for. I don't know of any homebrew 100V/30A drives for example
[20:57:51] <Unit41> i fried 2 axis's on my aliencnc board
[20:57:53] <fenn> do they make steppers that big?
[20:57:55] <jepler> l297/l298 (if you want slightly higher voltage or thru-hole ICs) or allegro A3977 (if you want microstepping)
[20:58:00] <jepler> both for small current (<3A)
[20:58:00] <Unit41> i went to replace it and the guy is gone
[20:58:12] <Unit41> www.aliencnc.com is no more
[20:58:27] <fenn> open source hardware ftw
[20:58:39] <SWPadnos> and the price or cost. There's a new Gecko coming with 50V/3A limits for $35 (hard to beat that)
[20:59:23] <jepler> until it starts shipping, you can beat it
[20:59:49] <SWPadnos> that's a fair point
[20:59:50] <jepler> and if it is only capable of 10x microstepping you might still want to skip it
[21:00:16] <jepler> on the parport, 5x the pulse rate of a L298 half-stepping driver might be hard to obtain
[21:00:38] <SWPadnos> yeah, depends on the motors and the machine
[21:01:06] <SWPadnos> the aliencnc drive is permanent 1/8 microstepping
[21:01:47] <Unit41> that site rocks
[21:01:59] <SWPadnos> which one?
[21:02:05] <Unit41> pmio ftw
[21:02:33] <Unit41> pminmo
[21:03:07] <alex_joni> Unit41: the last email on the user list has some schematics + layouts
[21:03:22] <alex_joni> for a L297/298 driver
[21:03:36] <alex_joni> they also have a board where you can fit 3-4 drivers + some optos
[21:04:22] <alex_joni> Unit41: http://www.pucrs.br/feng/mecanica/laboratorios/gp4c/relatorio_projeto_cnc_3_eixos.pdf
[21:04:30] <alex_joni> go to page 75-80 or so
[21:04:32] <Unit41> http://anivo.com/reed/L297_L298/images/stepdrv.png
[21:04:36] <Unit41> not bad
[21:05:02] <alex_joni> I also saw a stepper driver recently using a PIC + transisters
[21:05:11] <alex_joni> it did microstepping, and looked decent
[21:05:18] <SWPadnos> bipolar?
[21:06:06] <alex_joni> I think so
[21:06:12] <SWPadnos> interesting
[21:06:14] <alex_joni> http://www.luberth.com/cstep/hardware.htm <- another list
[22:49:05] <JymmmEMC> Hola Earthlings!
[22:49:16] <alex_joni> you'd think so
[22:51:07] <JymmmEMC> alex_joni: Well, a tad better than finding a book that says "How to serve man"
[22:52:13] <alex_joni> well.. then I guess it's good night earthlinks :P
[23:51:21] <JymmmEMC> =)