#emc | Logs for 2005-05-14

[00:00:14] <daryl> Just noticed your e-mail request... one sec
[00:01:19] <Imperator_> anonimasu: ok, thanks
[00:01:41] <anonimasu> Imperator_: how does it look?
[00:01:59] <daryl> On its way
[00:02:03] <anonimasu> does it look sane..
[00:02:14] <Imperator_> but you have to enter a name at the top of that admin page, then others can see who made changes, now Mr. has edited :-)
[00:02:26] <Imperator_> it lookss ok, i think
[00:02:28] <anonimasu> ah
[00:02:29] <anonimasu> :)
[00:02:30] <anonimasu> hehe
[00:02:30] <anonimasu> will do
[00:03:02] <Imperator_> at User Name
[00:05:07] <Imperator_> the current position can easyly taken from the HAL pins by the PLC
[00:05:51] <anonimasu> the current position shoudnt go to the plc :)
[00:06:13] <Imperator_> yes, but the plc can read it
[00:06:22] <Imperator_> if it needs the position
[00:06:25] <anonimasu> hm, that is actually good now that I think about it..
[00:06:29] <anonimasu> so you can verify where you are..
[00:06:36] <anonimasu> before you start on a toolchange..
[00:07:07] <Imperator_> jep
[00:07:21] <paul_c> daryl: Can you try compiling a 2.6.9 or 2.6.10 kernel with RTAI-3.2
[00:07:35] <anonimasu> Imperator_: I think that approach is good and generic..
[00:07:57] <anonimasu> if you want you can code the stuff as a macro or just do as dmess said and do the changess in the gcode
[00:08:01] <daryl> paul_c, I guess that's the next step. That's what you have working?
[00:08:08] <anonimasu> err stuff.. in the gcode..
[00:08:08] <paul_c> yup
[00:08:13] <anonimasu> directly..
[00:08:27] <anonimasu> although not what I'd want but possible :)
[00:08:31] <daryl> Now I can't get it to fail.
[00:08:37] <Imperator_> yes like the integrator wants to do it
[00:08:44] <anonimasu> * anonimasu nods
[00:08:44] <daryl> It's moody.
[00:08:59] <Imperator_> the rest is then done by HAL
[00:09:02] <anonimasu> can you wire all logic through CL like that?
[00:09:06] <anonimasu> ?
[00:09:31] <paul_c> daryl: When you're done, email me the kernel config along with the output of /proc/version
[00:09:35] <anonimasu> limit switches and stuff or estop, and things like that..
[00:09:49] <Imperator_> I mean that every special M code is a HAL pin, then you can switch something with that pin out of the g-code
[00:10:02] <anonimasu> then you can configure your signals to cut the power to your toolchanger if you want..
[00:10:13] <Imperator_> jep
[00:10:16] <daryl> I tried to build a 2.6.10 kernel a few days ago, but ran into problems. I wasn't using the 3.2 rtai though. For the patch, shoulhttp://download.gna.org/adeos/patches/v2.6/i386/d I go with the one for 2.6.10 here:?
[00:10:24] <daryl> paul_c, done with what?
[00:10:33] <daryl> Compiling 2.6.10?
[00:10:41] <anonimasu> or ignore the limit switches when you need to reach further to the toolchanger..
[00:11:03] <anonimasu> paul_c: have you been following at all?
[00:11:09] <Imperator_> and the limit switch stuff can also be made by the plc. you can route the switch first to the plc, then to the input pin of the motion controller, then the plc can switch the limit swich of
[00:11:13] <paul_c> daryl: When you're done compiling the kernel & rtai, mail the configs over
[00:11:54] <daryl> Ok..
[00:12:10] <daryl> Thanks for your time paul.
[00:12:21] <paul_c> http://download.gna.org/rtai/testing/v3/
[00:12:49] <daryl> 3.2-test3?
[00:13:50] <paul_c> daryl: One sec while I check something
[00:14:56] <Imperator_> paul_c: RTAI 3.2 is now stable
[00:18:12] <Imperator_> ok time to leave
[00:20:16] <paul_c> daryl: Use the patch from the adeos team rather than the RTAI one
[00:20:24] <anonimasu> hm..
[00:20:29] <anonimasu> well I guess not.
[00:20:57] <paul_c> anonimasu: Following the PLC discussion ?
[00:21:14] <anonimasu> toolchanger/other stuff
[00:21:15] <anonimasu> yeah
[00:21:38] <daryl> paul_c, from here:? http://download.gna.org/adeos/patches/v2.6/i386/
[00:22:22] <paul_c> yup
[00:22:30] <anonimasu> I was curious on your oppinion of that idea..
[00:22:41] <daryl> rtai-3.2 is stable now... I'll download the stable one.
[00:23:23] <paul_c> daryl: And use CONFIG_M586 rather than MK7
[00:23:49] <daryl> ok
[00:24:30] <daryl> How about "[ ] Use register arguments (EXPERIMENTAL)"
[00:25:58] <paul_c> Turn that one off too.
[00:28:28] <daryl> Too tired to work on it right now... need to take a break.
[00:28:49] <daryl> Will let you know how it turns out.
[00:28:56] <paul_c> OK... Just looked at the "3.2 stable" patch
[00:29:18] <daryl> What do you think of it?
[00:29:39] <paul_c> and the 2.6.10 patch still contains an error that will cause a kernel build to fail if adeos is compiled as a module.
[00:29:44] <daryl> (you mean the one inside the rtai-3.2.tar.bz2 file?)
[00:29:50] <paul_c> yes.
[00:30:09] <daryl> So go with the one from the adeos site?
[00:30:13] <paul_c> yup
[00:30:18] <daryl> Ok.. thanks.
[00:30:29] <daryl> That might be what I ran into last time I tried 2.6.10
[00:31:44] <paul_c> if you hit problems compiling a kernel with the rtai patches, email the RTAI team and attach the kernel config along with the last few lines of the compile.
[00:32:08] <daryl> Yeah...
[00:33:41] <daryl> Well, I'm going to get some fresh air.
[00:35:53] <anonimasu> well, goodnight.
[00:36:27] <paul_c> anonimasu: Re: PLC
[00:37:02] <anonimasu> ?
[00:37:03] <paul_c> There needs to be a closer coupling between the interp & the PLC logic
[00:37:11] <anonimasu> yep
[00:38:29] <anonimasu> that's the suggestion in the wiki
[00:39:37] <anonimasu> macro functionality..
[00:39:56] <anonimasu> or well external macro functionality..
[00:40:20] <anonimasu> it much resembles the way dmess talked about how the toshiba machines did with their motion..
[00:41:40] <anonimasu> it's pretty easy to do other stuff with the same approach aswell..
[00:43:33] <paul_c> however, couple the PLC logic too closely to the interpreter, and you lose the ability to run it on a distributed system.
[00:44:05] <anonimasu> hm, I wonder what's most important..
[00:45:23] <anonimasu> is it possible to have limit switches on another box right now?
[00:45:29] <anonimasu> connected?
[00:45:42] <paul_c> No.
[00:46:35] <anonimasu> can you run the interpreter on one box and have the motion on another one?
[00:47:12] <paul_c> in theory, yes.
[00:48:42] <anonimasu> if you dont want to use the plc logic you don thave to, the plc is just bonded to the interpreter as HAL pins..
[00:48:57] <anonimasu> as far as I get it.. I dont quite understand HAL
[00:51:50] <anonimasu> well laters..
[00:51:54] <anonimasu> * anonimasu goes to bed
[04:32:20] <weyland> ne1 up?
[04:56:34] <weyland> knock knock...
[04:59:35] <joe2000chevy> hello
[04:59:42] <weyland> hey~!
[05:00:07] <weyland> trying to find someone to answer a question
[05:00:24] <weyland> know ne thing about cutter radius comp?
[05:01:41] <weyland> <cricket noises ensue...>
[05:02:48] <weyland> LOL
[05:03:02] <weyland> tap...tap...tap... this thing on? :)
[05:05:47] <weyland> okay, g'nite
[05:06:17] <joe2000chevy> oops
[06:24:52] <Phydbleep> At this time of night he needs to stay in the channel if he wants an answer.
[06:27:28] <Phydbleep> Especially on a Friday night. :)
[06:55:33] <Jymmm> no doubt
[06:55:55] <Jymmm> plus I dislike ppl that use aolbonics
[06:56:04] <Jymmm> well not the ppl, just the use of.
[07:01:49] <Phydbleep> ROFL.. AOL-Bonics... I like that. :)
[07:03:07] <Jymmm> ne any - what, you can't type one additional character
[07:03:16] <Jymmm> ne1 anyone
[07:03:17] <Jymmm> etc
[07:59:18] <Phydbleep> * Phydbleep is familiar with '1337 5peek' and has a similar distaste for it.
[08:01:07] <Phydbleep> * Phydbleep has been cleaning the shop and getting ready to build a sheet-metal break and fabricate a pc chassis.
[08:02:23] <nevyn> hrm friday night? timeist.
[08:02:29] <nevyn> it's saturday night here :)
[08:03:04] <Jymmm> Phydbleep why bother competing with chinese?!
[08:03:15] <Phydbleep> Saturday morning here. :)
[08:03:41] <nevyn> 16:34 < Phydbleep> Especially on a Friday night. :)
[08:04:29] <Phydbleep> Jymmm: Because I want a small case.. No CD/HD, 200W supply.. Mini-ATX that will netboot. :)
[08:04:52] <nevyn> hrm
[08:05:00] <nevyn> why miniatx?
[08:05:17] <nevyn> you're still gonna need FANS which are the noisy bits anyway
[08:05:24] <Phydbleep> [02:12] Phydbleep Saturday morning here. :)
[08:05:57] <Phydbleep> Drunk-thirty... I dont want to even think about going anywhere right now. :)
[08:06:16] <nevyn> via eden setup if you want quiet and small
[08:07:09] <Phydbleep> nevyn: Mini-ATX is what I have that needs a case or a trip to the bin. :)
[08:08:42] <Phydbleep> nevyn: asdqwe(something) wants the Gateway/Tyan dual P-II and the DTK I was sick of looking at. :)
[08:10:19] <nevyn> ah
[08:10:46] <Phydbleep> * Phydbleep has a cupboard full of obsolete junque. :)
[08:11:20] <Phydbleep> nevyn: Want a P-III/RAMBUS board?
[08:11:34] <nevyn> umm no.
[08:11:36] <Jymmm> Phydbleep well, find me some steppers in there!
[08:11:44] <nevyn> a PIV rambus board yes.
[08:11:51] <nevyn> a PIII rambus board ain't so good.
[08:12:02] <nevyn> the memory latency isn't setup for p6
[08:12:02] <Phydbleep> Sorry, P-III...
[08:12:11] <nevyn> :)
[08:12:43] <Phydbleep> How about a K6/2-450? 550?
[08:12:53] <nevyn> heh I have one of those floating around
[08:13:09] <nevyn> I was using it for a desktop untill I realised that it can't blit.
[08:13:18] <nevyn> the onboard video is really appaling
[08:13:35] <Phydbleep> This has an agp slot.
[08:14:48] <Phydbleep> Bernoulli 150 with a bunch of media?
[08:19:03] <nevyn> bah. he's not selling the batmobile
[08:19:12] <nevyn> he's selling the back to the future delorean tho.
[08:21:33] <Phydbleep> nevyn: '87 Aries K that needs a head-gasket? It's got the factory alloy wheels. :)
[08:22:16] <nevyn> news article about a guy that built cars for movies auctioning a heap off.
[08:22:34] <nevyn> including "Grease lightning"
[08:24:05] <nevyn> http://washingtontimes.com/upi-breaking/20050510-115436-4354r.htm
[08:31:38] <Phydbleep> Jymmm: I have exactly 1 stepper at the moment, It's from an OLD Seagate 3.5" 20 meg drive.
[08:33:26] <Phydbleep> Although I just scored another 90VDC 10A 4000 RPM motor and the 110VAC controller for it.
[08:35:21] <Jymmm> just send the 2nd over
[08:36:12] <Phydbleep> the 850W DC motor?
[08:36:26] <Jymmm> I'm wondering if I could use a variac instead of a XFMR
[08:36:52] <Phydbleep> Better off with a HF router speed controller.
[08:37:18] <Jymmm> really?
[08:37:59] <Phydbleep> With this motor? Yes, Brush type tool motor.
[08:38:16] <Jymmm> no, no, in general.
[08:39:00] <Phydbleep> Between the brush noise as they wear in and the clipper clips in my drive belt this thin sounds like a sewing machine. :)
[08:39:15] <Jymmm> http://www.xylotex.com/#3axis
[08:39:31] <Phydbleep> Jymmm: Depends on the motor and the available power to drive it.
[08:40:08] <Jymmm> I want to get that, but later on upgrade to a gecko. If I spend $50 for a 24vdc switching PS, I could spend the same amount for a variac
[08:40:29] <Jymmm> and use the same setup for the gecko, just dial in the new voltage
[08:40:47] <Jymmm> but I'm not sure if I still need the isolation a XFMR provides
[08:41:08] <Phydbleep> Make sure the variac will take the load... De-Rate it by 50% for brush motor control.
[08:41:52] <Jymmm> 2000W for $99
[08:41:58] <Jymmm> 500W for $50
[08:42:12] <Phydbleep> And that 'BEMF' will screw you if you dont watch it.. That is <12V drive for 30+V BEMF.
[08:43:02] <Jymmm> huh?
[08:43:40] <Phydbleep> BEMF == Back EMF (ElectroMotive Force)
[08:43:54] <Jymmm> right, when the stepper is deacc..
[08:44:18] <Jymmm> huh? ----> That is <12V drive for 30+V BEMF.
[08:44:33] <Phydbleep> Collapsing the field with a DC motor dumps the energy from the magnets back through the circuit.
[08:45:01] <Jymmm> that's what the 10,000mf Caps are for, right?
[08:45:16] <Jymmm> (10-20)
[08:45:22] <Phydbleep> And the power inductor and the bleed resistor.
[08:46:30] <Phydbleep> Inductors go inline with the motor coils to absorb part of that.
[08:46:56] <Jymmm> you mean a choke?
[08:47:03] <Phydbleep> The resistor is a 10megohm across the caps
[08:47:13] <Phydbleep> Yeah, choke.
[08:47:29] <Jymmm> I haven't seen that yet
[08:47:57] <Jymmm> http://www.xylotex.com/3AxSysKit.htm
[08:48:04] <Phydbleep> Any big dc motor should have a transformer looking lump next to it.
[08:49:15] <Jymmm> that's what I'm thinking about getting
[08:49:42] <Jymmm> I'd like to use xfmr+caps for PS, but can't find any 24V xfmrs
[08:49:49] <Phydbleep> As long as it's all matched go for it. :)
[08:50:09] <Phydbleep> use 2 12's in series.
[08:50:21] <Jymmm> Can't find any with enough VA
[08:50:36] <Jymmm> was even thinking 2 battery chargers
[08:50:49] <Jymmm> but can't find those cheap enough either.
[08:50:49] <Phydbleep> * Phydbleep has a transformer that weighs 25kg..
[08:51:06] <Phydbleep> Scrap metal yard.
[08:51:12] <Jymmm> none around here
[08:51:29] <Phydbleep> WTH are you?
[08:51:46] <Phydbleep> Dead microwave ovens.
[08:52:08] <Jymmm> Silicon Valley (South of SF), where real estate is 'bend over w/o vaseline'
[08:52:37] <Jymmm> I cant' rewind microwave trmrs right now.
[08:53:02] <Jymmm> hell, I can buy BRAND NEW microwaves cheaps ~$30
[08:53:19] <Jymmm> that's so sad
[08:53:22] <Phydbleep> You want to go north, Try the industrial area around the freeway stack that pancaked.
[08:53:45] <Jymmm> lol that's LA. 250 miles south of me
[08:53:50] <Phydbleep> Usually the diode or the controls die and the xfmr is fine.
[08:54:15] <Phydbleep> No, The one that dropped in '88? '89
[08:54:42] <Jymmm> it's all VERY expensive around here. Thus why many chains dont move in.
[08:55:13] <Phydbleep> No chain store.. You want the hole in the wall scrap-yards..
[08:55:57] <Phydbleep> Also try hitting exercise equipment stores and see if they have dead treadmills. :)
[08:56:41] <Jymmm> 600w microwave $29.90
[08:56:42] <Phydbleep> * Phydbleep has gotten 7 so far and all of them worked.
[08:57:22] <Jymmm> too bad cant' figure something todo with the magnatrons in em
[08:57:26] <Phydbleep> 6 DC w/ controller, 1 AC with a spring loaded pulley for speed control...
[08:57:59] <Jymmm> ah, the reason for you fucking with PS =)
[08:58:11] <Phydbleep> ?
[08:58:17] <Jymmm> PostScript
[08:58:34] <Phydbleep> That's for shaft encoders for the lead/crossfeed screws.
[09:00:13] <Phydbleep> * Phydbleep also needs to make a chuck-lock so the chuck will stay on in reverse.
[09:01:15] <Phydbleep> Nothing is more embarassing that hitting "REVERSE" and hearing *CLANK* as the chuck hits the ways.
[09:02:23] <Jymmm> better than hearing "CRRRRRRRACK POP EEEEEEEEEKKK"
[09:02:47] <Jymmm> then of course "DUCK!"
[09:02:47] <Phydbleep> What did you fubar?
[09:03:25] <Jymmm> no, the chuck/bit snapping in half and flying aroudn the room hitting someone
[09:04:21] <Phydbleep> Ah.. I am getting a chunk of 10mm Lexan for a chuck shield.
[09:08:23] <Phydbleep> I'm going to clamp it around a piece of 8" pipe and leave it out in the sun all day. That should give me ~ an 8" radius when I let it loose after it cools that night.
[10:19:52] <anonimasu> morning everyone
[10:27:34] <Phydbleep> G'morning anonimasu :)
[10:27:49] <anonimasu> what are you up to today?
[10:28:12] <Phydbleep> Same as always, ~ 5' 11"
[10:28:55] <anonimasu> hehe
[10:29:33] <anonimasu> I am trying to find out why my mill makes ~ surfaces
[10:29:47] <Phydbleep> Bout to fall over.. Tomorrow is junk day int eh hood so I had to lug all the heavy crap to the curb.
[10:30:15] <Phydbleep> Flex in the column?
[10:30:26] <anonimasu> nope..
[10:30:32] <anonimasu> it doent matter how light the cuts are...
[10:30:43] <anonimasu> 0.3 or 2mm
[10:30:48] <Phydbleep> Has to be flex in the tool or slop in the table then.
[10:30:49] <anonimasu> err 0.03mm or 2..
[10:31:03] <anonimasu> nope.. the table dosent have slop..
[10:31:32] <anonimasu> flexing would make it wose on heavy cuts...
[10:31:33] <Phydbleep> are X/Y/Z all square to each other?
[10:31:51] <Phydbleep> Sounds like column tilt
[10:32:03] <anonimasu> measured it a bit back..
[10:32:05] <anonimasu> they are square
[10:32:17] <anonimasu> I should re-check it today..
[10:32:26] <anonimasu> might be the damn gearbox causing vibrations
[10:32:52] <Phydbleep> Yeah, Ditch the gears and go belt.
[10:33:06] <anonimasu> well it's a reduction gearbox..
[10:33:12] <anonimasu> + the drive belts on the motor..
[10:33:16] <Phydbleep> Flywheel on the motor would help as well.
[10:33:35] <anonimasu> but I dont have time since I have parts I need to make..
[10:33:43] <anonimasu> but I cant have ~ surfaces..
[10:33:48] <Phydbleep> Damp out the system to a much lower freq.
[10:33:56] <A-L-P-H-A> sup peeps.
[10:33:57] <anonimasu> hm might work
[10:34:21] <Phydbleep> anonimasu: AC or DC motor?
[10:34:56] <Phydbleep> A-L-P-H-A: It's a Lathe! Muwahahaha!
[10:35:39] <anonimasu> Phydbleep: AC
[10:35:45] <anonimasu> Phydbleep: 3phase
[10:36:14] <A-L-P-H-A> Phydbleep,
[10:36:16] <A-L-P-H-A> ??
[10:36:26] <Phydbleep> anonimasu: Add ~ 3 kg to the shaft as a flywheel..
[10:36:46] <A-L-P-H-A> you finally cleaned the lathe?
[10:36:50] <A-L-P-H-A> are you gonna convert it to CNC?
[10:36:52] <Phydbleep> Scratch that.. What's the motor weigh?
[10:37:02] <anonimasu> loads..
[10:37:15] <anonimasu> 2hp
[10:37:27] <Phydbleep> Cleaned, bolted, belted and tested. :)
[10:37:42] <Phydbleep> 30kg?
[10:37:48] <anonimasu> I dont know
[10:38:22] <Phydbleep> Practice Procto-Numerology and take a guess.
[10:38:31] <anonimasu> 30
[10:38:54] <Phydbleep> Procto-Numerology == Pull a # out of your ass. :)
[10:39:40] <anonimasu> yep
[10:41:38] <Phydbleep> 30kg.. So ~14kg of it will be copper, 7kg for the armature, 9kg for the frame... Roughly 14kg swinging in the breeze so add 4 kg mass dampner.
[10:42:10] <Phydbleep> Take the resonant point down ~ 2 octaves. :)
[10:42:46] <anonimasu> hm where do i place that material?
[10:43:13] <Phydbleep> anonimasu: As a flat disk with hte pulley or on the other en of the shaft.
[10:44:34] <Phydbleep> If you can get to a lathe make a real flywheel with the mass concentrated at the rim.
[10:44:54] <anonimasu> Phydbleep: can go to work.. and make one..
[10:45:34] <Phydbleep> You get the concept though? The 3 phase 'kicks' and this will add mass to smooth it out.
[10:46:10] <anonimasu> I doubt that that's it.. really..
[10:46:33] <anonimasu> but well it's worth a shot..
[10:46:45] <Phydbleep> Cant hurt. :)
[10:47:27] <Phydbleep> Adding mass to the system will usually help smooth it out till the bearings are overloaded and take a crap. :)
[10:56:54] <Phydbleep> Check your gearlash as well.
[11:03:12] <anonimasu> * anonimasu sighs
[11:03:28] <anonimasu> what a mess..
[11:16:46] <les> hi anon
[11:16:57] <les> trying to tackle vibration?
[11:21:16] <anonimasu> yeah
[11:21:29] <anonimasu> I've got some parts for work I need to make..
[11:21:35] <les> find out what part is moving?
[11:21:46] <anonimasu> nope..
[11:21:52] <les> surely the column/head
[11:22:02] <anonimasu> hm, I belive it comes from the gearbox..
[11:22:04] <anonimasu> most lilely
[11:22:08] <anonimasu> but that's a hard thing to solve
[11:22:32] <les> the spindle drive gears?
[11:22:35] <anonimasu> yeah
[11:22:46] <anonimasu> maybe I should try adding more oil there..
[11:23:37] <anonimasu> I've gotten better results on alu before..
[11:23:47] <les> wouldn't the gears just tend to make motions in the axis of rotation?
[11:24:54] <anonimasu> yeah, but I think it travels through the column and becomes greater until it's at the spindle tip
[11:25:06] <anonimasu> vibration or somthing like that..
[11:25:15] <anonimasu> but it's odd it's been working nicely before
[11:25:26] <les> hmm
[11:25:27] <anonimasu> I did tram the mill not too long ago either..
[11:25:43] <les> spindle bearings ok?
[11:25:46] <anonimasu> yes
[11:26:13] <anonimasu> I havent milled that much
[11:26:38] <les> if the frequency is perfectly constant you could put a fourth order mass damper on it
[11:27:00] <anonimasu> hm, since the ~ looks the same it would most likely be constant
[11:27:10] <les> I am thinking of doing that on my gantry
[11:27:35] <les> but in that case the rocking poles are dependent on position
[11:27:45] <les> so it has to be adaptive
[11:27:52] <anonimasu> hm.. loads of mess then
[11:28:29] <anonimasu> I get the same ~ on 500 - 3000 rpm..
[11:28:36] <anonimasu> dosent make any difference
[11:29:04] <les> well a motor driven inertial mass would be the way to go for the gantry
[11:29:36] <les> for you perhaps a passive mass of a few kG with a spring
[11:29:51] <anonimasu> yep
[11:29:56] <les> it must be carefully tuned
[11:30:29] <anonimasu> * anonimasu nods
[11:31:05] <Imperator_> about inertia: how importand is it to make the load inertia the same as the one of the motor with a gear ?
[11:33:34] <les> Well it does not have to be exactly one to one
[11:33:46] <les> but needs to be within about 5
[11:33:59] <les> that write up I did shows that
[11:34:18] <Imperator_> what happens if the difference is bigger ??
[11:35:15] <les> things like the first case in the write up....the motor wastes all it's torque just trying to wind up it's own inertia
[11:36:36] <les> In my machine x axis is 1:1
[11:36:43] <les> y and z are about 5
[11:39:02] <Imperator_> for calculation i have to add the belt pulley which is mountet on the motor shaft to the motor inertia, right
[11:39:49] <les> If motor/load inertia is less than one it's more just a case of wasting money
[11:39:55] <les> yes all that stuff
[11:40:26] <les> just remember that with a transmission the inertia goes by the square of the ratio
[11:40:36] <Imperator_> jep
[11:40:41] <les> in the example I used 10:1
[11:40:55] <les> which made the inertia 100 times bigger
[11:41:19] <les> looking from the ballscrew coupling
[11:41:38] <anonimasu> brb
[11:41:46] <les> k
[11:42:29] <les> that kollmorgen software is the easiest way to calculate all that stuff
[11:42:50] <Imperator_> * Imperator_ searches there webside
[11:42:55] <les> One needs some engineering skiils to use it but no problem for you!
[11:43:52] <les> http://www.motionvillage.com/motioneering/app_engine/
[11:44:43] <Imperator_> there was a extremly good webside made by tU Munich but it is offline now
[11:45:47] <les> this software just lets you pick inertia ratio and other parameters then finds the right kind of motor
[11:46:33] <les> you put in the whole system....screws, loads, gravity, friction, etc
[11:46:59] <les> even inertia of gears and pulleys
[11:47:24] <Phydbleep> les: Did you see my recomendation?
[11:47:25] <les> pretty handy
[11:47:51] <les> PHY: no I don't think so...for what?
[11:48:48] <Phydbleep> anonimasu's preoblem.. I recommended that he add ~ 4kg to the motor shaft as a dampner and to check the gearlash.
[11:49:08] <les> ah
[11:49:42] <les> well with a carefully tuned rubber thing it could be a dynamic absorber
[11:50:07] <Phydbleep> Nope, just mass.
[11:50:19] <les> hmmm
[11:50:36] <les> that would lower the pole freq and increase the q
[11:51:12] <Phydbleep> I added ~ 3kg to the motor on the lathe and it took out the 'hunt' to maintain a constant speed.
[11:51:34] <les> what kind of motor?
[11:51:41] <Phydbleep> pmdc
[11:51:57] <les> I see. A flywheel!
[11:52:11] <Phydbleep> Yep. :)
[11:52:33] <les> rubber belt drive?
[11:53:21] <Phydbleep> b-section v-belt to the countershaft and 1.1" wide flat laminated belting.
[11:53:29] <les> ok
[11:53:29] <Phydbleep> to the headstock.
[11:54:08] <les> that's a fourth order system...and you must have retuned it advantageously
[11:54:57] <les> two complex conjugate pole pairs
[11:55:41] <Phydbleep> All the feedback for the controller is from the motor shaft.
[11:56:16] <les> tach or ir drop compensated back emf?
[11:56:34] <Phydbleep> Huh?
[11:56:42] <les> heh
[11:56:46] <Imperator_> nice software
[11:56:50] <les> does the motor have a taxh?
[11:57:04] <les> very handy martin
[11:57:10] <les> tach
[11:57:25] <Phydbleep> It's got an ir emitter/detector pair tied back into the speed controller.
[11:57:26] <Imperator_> thanks for the link les
[11:57:55] <Phydbleep> And a spped readout, so there is some rudimentary form of tach..
[11:58:07] <les> One of my bandsaws uses a 1.5 hp dc motor with a Dart speed control
[11:58:28] <les> It uses a compensated back emf for feedback
[11:58:49] <les> it is compensated for the IR drop of the motor
[11:59:02] <les> It hunts a little at the lower speeds
[11:59:09] <les> a tach would be better
[11:59:38] <Phydbleep> This is now stable from 8% to 130% of operational speed. :)
[12:00:06] <les> oh that's much better than my bandsaw.
[12:00:46] <les> I ought to throw a tach on there...the Dart control has an input for one.
[12:01:14] <Phydbleep> Yeah, This thing wants to readout the speed as .8 kph to 13 kph so I just ignore the decimal point. :)
[12:01:31] <les> heh
[12:01:32] <Phydbleep> Hehehe... 10.0 kph is 100%. :)
[12:02:29] <les> I can say that variable speed is handy on a bandsaw...you can tune it to miss the blade resonance
[12:03:04] <Phydbleep> * Phydbleep wonders if he could wire a PIC18F452 to Z-80 adapter..
[12:03:09] <les> My lathe also has cont. variable speed
[12:03:19] <les> it's a Boxford VSL 500
[12:03:36] <Phydbleep> Yeah, I like this because it has full torque at 8%.
[12:03:59] <les> mine would do that too if I throw that tach in
[12:04:27] <les> I can only do about 15% for full torque
[12:04:27] <Phydbleep> les: What do you need for the tach?
[12:04:32] <les> or 20
[12:04:57] <les> just a dc tach...I have some...just never put one on
[12:05:07] <Phydbleep> Slacker! :)
[12:05:12] <les> heh yeah
[12:05:17] <anonimasu> hm
[12:05:26] <les> I need to do that for the mills too
[12:05:52] <les> But I am out of big DC motors
[12:06:03] <anonimasu> it seems like I've got it better.
[12:06:06] <Phydbleep> * Phydbleep has 5? 6?
[12:06:08] <les> mill is just 3 phase 1 hp
[12:06:10] <anonimasu> I tightened up everything..
[12:06:18] <anonimasu> although cant take any heav cuts..
[12:06:22] <les> and?
[12:06:49] <anonimasu> the machining of a part will take a couple of hours
[12:07:07] <les> but lower vibration?
[12:07:12] <anonimasu> yeah
[12:07:24] <anonimasu> it's acceptable now..
[12:07:27] <anonimasu> but now good enough
[12:07:30] <Phydbleep> 4 golfcart size field motors, 2 pmdc motors on the shelf and the 1 on the lathe. :)
[12:08:01] <anonimasu> err not..
[12:08:09] <anonimasu> guess I'll have to look into dampers
[12:08:42] <les> they work...if the poles don't shift in frequency
[12:08:50] <Phydbleep> anonimasu: Did you check the gearlash in the gearbox?
[12:08:57] <les> PHY..golfcart size...wow
[12:09:11] <anonimasu> Phydbleep: no meaning with that
[12:09:21] <anonimasu> Phydbleep: I dont have pulleys and time to replace the gearbox now..
[12:09:43] <Phydbleep> les: Yeah, i've got to get 2 of them out from behind the tv and haul them to the shop. :)
[12:10:01] <anonimasu> I think it's from the gearbox the vibrations come..
[12:10:28] <Phydbleep> anonimasu: Grab the motor shaft, grab the spindle.. wiggle them in opposite directions.. That's the gearlash.
[12:10:38] <les> We just got new yamahaha electric carts at the course. Torquey!
[12:10:50] <anonimasu> I know..
[12:11:12] <Phydbleep> Hehehe.. One of these is from a 3500 lb steel plate airport cart. :)
[12:11:21] <les> I was a little sad though..since the parts I designed are for the EZ go and Clubcar brands
[12:11:28] <anonimasu> :/
[12:11:45] <Phydbleep> * Phydbleep has a whole ez-go or club-car rear axel.
[12:11:49] <anonimasu> hm, I wonder if I can dry mill it..
[12:12:12] <anonimasu> seems to work pretty well if you take 1mm cuts..
[12:12:23] <les> I designed the current throttle position sensor.
[12:12:33] <anonimasu> or if I should submerge the whole crap..
[12:12:36] <Phydbleep> les: It's the one with the motor transverse mounted over the diff.
[12:12:40] <anonimasu> and walk away and wait for it to finish
[12:12:56] <les> anon: heh yeah I guess
[12:13:15] <anonimasu> les: what do you guess?
[12:13:15] <anonimasu> :D
[12:13:21] <anonimasu> the one with leaving it be and waiting for it to finish
[12:13:31] <les> I guess you should walk away!
[12:13:33] <les> ha
[12:14:21] <les> The older throttle position sensor was a saturable reactor design
[12:14:38] <les> I thought it was a very good robust design
[12:14:58] <les> but they wanted to cut costs so I designed an optical one for them
[12:15:15] <anonimasu> 10x10x20mm of alu.. need to be machined down to 10x10x10
[12:15:46] <les> hmmm yeah that will be a while!
[12:15:47] <anonimasu> at 1mm stepdown per pass.. it takes 117 minutes for facing it..
[12:15:53] <Phydbleep> Hehehe.. Yeah.. Costs $400 for the Curtis PMC module to read the signal now. :)
[12:16:48] <anonimasu> hm, maybe I should just submerge it..
[12:16:57] <anonimasu> so I dont have to spray coolant on it..
[12:17:24] <les> I don't like the spray mist all over the shop
[12:17:40] <les> I try to use a cold air gun when I can
[12:18:00] <Phydbleep> Hmmm There's going to be a flood? les grab 2 of every machine tool and I'll start building an ark. :)
[12:18:07] <les> haha
[12:18:33] <anonimasu> there's machines that'd crank out a ark in a couple of weeks..
[12:18:34] <anonimasu> :)
[12:18:44] <Jymmm> 4 axis gantry router
[12:18:46] <anonimasu> yep
[12:18:50] <anonimasu> thoose posted here earlier
[12:18:50] <anonimasu> :)
[12:19:00] <Phydbleep> Hmm.. It's almost 06:30.. I should go fall over so I can get up at noon. :\
[12:19:02] <les> I um have to hit the head...have a little problem this morning.
[12:19:10] <les> where is the immodium?
[12:19:15] <Phydbleep> Nature shrieks?
[12:19:23] <les> yeah. bbl
[12:19:27] <anonimasu> :)
[12:20:32] <Phydbleep> Well G'night/morning/afternoon to whoever whereever. :)
[12:21:01] <Jymmm> does a 4th axis make that big a difference?
[12:21:32] <Phydbleep> Jymmm: It's not what you'vve got, It's how you use it?
[12:21:40] <anonimasu> Jymmm: not really
[12:21:55] <anonimasu> Jymmm: it makes for machining harder to make parts..
[12:22:28] <Jymmm> other than turning (literally) round stock, what else can you do with a 4th axis?
[12:22:53] <anonimasu> I was thinking about a tilt head ;)
[12:23:09] <Phydbleep> Yeah, Like you could machine all 6 chambers in a revolver cylinder in 1 pass that way.. No manual repositioning.
[12:23:30] <anonimasu> that makes for a bit less machining then using a ballnose and loads of passes..
[12:24:05] <Phydbleep> Or you could turn it 90 degrees and use it to make gears. :)
[12:24:09] <anonimasu> but well, the reason about the speed was the size of the 5axis gantry machines..
[12:24:40] <anonimasu> ^_^
[12:25:00] <anonimasu> http://www.solarcar.arizona.edu/updates/update_3_5_01.php
[12:25:34] <anonimasu> http://www.scaled.com/images/cnc-large.jpg
[12:25:43] <A-L-P-H-A> soooo nice.
[12:25:50] <A-L-P-H-A> hey again folks.
[12:26:02] <anonimasu> hehe
[12:26:03] <anonimasu> nice
[12:26:03] <anonimasu> yeah
[12:26:04] <anonimasu> brb
[12:26:06] <Jymmm> Well... I'm at a point that I could make a 4 insted of 3 axis router,
[12:26:17] <A-L-P-H-A> Jymmm. good luck. :D
[12:26:29] <A-L-P-H-A> 4's easy. I've got 4 on my lathe, and a rotary table on my mill...
[12:26:35] <A-L-P-H-A> to impress me, make 5. :D
[12:26:37] <A-L-P-H-A> hehehe
[12:26:48] <Jymmm> A-L-P-H-A why would I want to do that?
[12:26:54] <anonimasu> http://www.transfx.com/digital/cnc_machining.html
[12:26:55] <anonimasu> ;)
[12:27:17] <A-L-P-H-A> Jymmm, cause everyone wants to impress me.
[12:27:35] <Jymmm> A-L-P-H-A anyway... So, what's up in Toronto to do?
[12:27:51] <A-L-P-H-A> what are you interested in?
[12:28:07] <Jymmm> whatever
[12:28:18] <A-L-P-H-A> bars, awesome food, sights, night clubs...
[12:28:27] <Phydbleep> * Phydbleep wanders off to fall over.
[12:28:29] <Jymmm> I got that here, what else?
[12:28:31] <Phydbleep> G.nite. :)
[12:28:37] <Jymmm> g'night Phydbleep
[12:28:45] <A-L-P-H-A> CN Tower.
[12:28:52] <Jymmm> what else?
[12:28:58] <A-L-P-H-A> high taxes?
[12:29:08] <Jymmm> why would I want to go to Toronto instead of Disneyland?
[12:29:22] <A-L-P-H-A> well... if you're a pedophile you want to go to disneyland.
[12:29:46] <A-L-P-H-A> Toronto, I dunno. I just live here, and like it.
[12:46:57] <A-L-P-H-A> who's on ICQ?
[13:11:59] <les> you know, if you bend a lawn mower blade it just can't be straightened
[13:12:18] <les> must be autempered 1050 or something
[13:12:44] <les> austempered
[13:13:06] <les> off to the mower parts place.
[13:14:36] <nevyn> how did you BEND a mower blade...
[13:15:12] <Jymmm> probably tried to use it to cut that corned beef he makes every month
[13:16:15] <asdfqwega> bend a blade, that's nothing. I bent the blade and the shaft, once.
[13:17:05] <asdfqwega> Ooo, it was a lot of fun getting the arbor off the shaft
[13:26:54] <les> I hit an exposed tree root too fast
[13:26:59] <les> happens often
[13:27:13] <les> I'm kinda in the woods here
[13:27:25] <les> ground shriks a little and...
[13:27:31] <les> shrinks
[13:28:08] <les> I usually just go over them really slow first cut in the spring....
[13:28:22] <les> and chip em down with no problem
[13:28:32] <les> missed seing one though
[13:28:52] <les> man those blades are tough steel
[13:29:33] <les> This one is just bent a little...but enough to put it badly out of balance
[13:30:50] <les> gotta be 150 austempered to about RC50 or so
[13:30:57] <les> 1050
[13:37:07] <asdfqwega> I hit a rock.
[13:37:35] <asdfqwega> It was the size of a football.
[13:37:39] <les> yikes
[13:37:43] <A-L-P-H-A> anyone following the gecko yahoo group?
[13:37:53] <A-L-P-H-A> what's this about a low band pass thingier ma bobber?
[13:37:58] <asdfqwega> I don't know how it got there - I had mown there before
[13:38:39] <les> ALPHA let me check...mariss and I talked about that on the phone some
[13:38:50] <asdfqwega> We get a lot of 'ground shift' here, with the freeze-thaw cycles
[13:39:41] <A-L-P-H-A> asdfqwega, where abouts?
[13:40:46] <les> yeah the georgia red clay shifts a lot too
[13:41:17] <les> ALPHA: someone was asking about a low pass filter for stepper drives
[13:41:29] <les> that would not help his problem
[13:42:17] <asdfqwega> A-L-P-H-A: Ohio, USA
[13:42:20] <les> anything you stick in the ground tends to heave and pop out
[13:42:35] <les> unless it is below the frost line
[13:42:50] <les> but just 12" here
[13:42:57] <les> it was 48 in chicago
[13:43:11] <asdfqwega> Our frost line is about 30"
[13:43:20] <les> sounds about right
[13:44:37] <les> well off to the parts store...I may crank up the lathe and make a quick blade balancer too
[13:44:48] <les> just static...that will do I think
[14:39:48] <asdfqwega> Boy, I had a nasty surprise last night
[14:40:18] <asdfqwega> I was milling some steel for Phydbleep
[14:41:00] <asdfqwega> And the mill was acting funny on each pass
[14:41:14] <asdfqwega> Turns out, my spindle bearings were loose
[14:42:06] <asdfqwega> I don't know how long it's been like that, but they really loose
[14:43:12] <asdfqwega> I've got a threaded plate that cinches them up, and it took a full turn to tighten them up
[14:43:41] <asdfqwega> My spindle was floating +-0.005", at least
[15:38:43] <A-L-P-H-A> asdfqwega, what are you charging for mill work?
[15:57:18] <anonimasu> iab
[15:57:39] <anonimasu> I finally got it working better, with a 12mm 4flute cutter
[16:06:36] <asdfqwega> A-L-P-H-A: It depends on the job
[16:53:34] <robin_sz> meep?
[17:11:13] <anonimasu> meep
[17:13:09] <anonimasu> robin_sz: how's things going?
[17:14:17] <robin_sz> fine I think
[17:17:07] <anonimasu> ok
[17:17:10] <anonimasu> brb sauna time
[17:17:48] <anonimasu> robin_sz: will you be here for a while?
[17:17:58] <anonimasu> or are you leaving soon
[17:17:59] <robin_sz> mmm maybe
[17:18:26] <anonimasu> ok, I had some things I was curious about the message routing stuff..
[17:18:26] <Imperator_> Hi John
[17:19:43] <robin_sz> to be honest, its probably not worth worrying too much about the detaisl until you have a broad agreement by "the board" on what to do and in what direction
[17:21:14] <paul_c> damit... John - You about ?
[17:21:29] <Imperator_> Hi Paul
[17:21:36] <paul_c> Hi Martin
[17:21:51] <Imperator_> back in good old England ???
[17:22:02] <paul_c> Back home, yes.
[17:23:17] <Imperator_> how where the caves
[17:24:14] <paul_c> no gear or time.
[17:24:29] <Imperator_> hm
[17:25:01] <A-L-P-H-A> woohoo! helix entry into a part is nice. :) speeds up machining time as well. :D
[17:25:11] <A-L-P-H-A> got a part from like 5 minutes, to 2m:15s.
[17:25:17] <robin_sz> A-L-P-H-A: using Visual Mill?
[17:25:28] <A-L-P-H-A> no. mastercam. which isn't so master.
[17:25:33] <robin_sz> ahh.
[17:25:43] <robin_sz> VM does elical entries
[17:25:51] <A-L-P-H-A> I'm thinking of giving up mastercam, and going VM.
[17:25:58] <A-L-P-H-A> as it's 1/8th the cost.
[17:26:02] <robin_sz> yeah
[17:26:06] <robin_sz> caution though
[17:26:12] <A-L-P-H-A> $8, to $1.
[17:26:14] <robin_sz> VM basic does not have all the goodies
[17:26:19] <A-L-P-H-A> such as?
[17:26:32] <robin_sz> I foreget exactly what
[17:26:50] <A-L-P-H-A> I just want something to do helices for me for pocketing and such.
[17:26:56] <robin_sz> basic anly does box shaped stock I think
[17:27:09] <A-L-P-H-A> or else I'm going to have to use a sprial script to do my bidding.
[17:27:22] <jmkasunich> paul_c: I'm back
[17:28:11] <paul_c> need that kbuild stuff merged into HEAD before I can do a join effectively.
[17:28:16] <A-L-P-H-A> robin_sz, well... I was thinking, if I do'nt get what I want, I could always just tell some lisp scripts in autocad to draw out the tool path for me... and just run my script to convert 3d data points into tool paths, and manually edit the sucker.
[17:28:37] <jmkasunich> It's close, but not quite there yet
[17:28:47] <jmkasunich> need to solve a problem that affects TNG
[17:28:56] <A-L-P-H-A> how's the support with visual mill?
[17:30:01] <robin_sz> A-L-P-H-A: I dont have VM, a friend does, support is via your dealer
[17:30:10] <robin_sz> so, variable
[17:30:17] <jmkasunich> seems the TNG distro is missing modversions.h
[17:30:48] <jmkasunich> didn't matter before, we were using the default "export all non-static symbols" behavior
[17:31:10] <jmkasunich> but for 2.6, you need to explicitly export the kernel symbols you want to make available
[17:31:30] <jmkasunich> that should also work with older kernels, but it results in a chain of includes that wants modversions.h
[17:31:47] <jmkasunich> as far as I can tell, modversions.h is created during the kernel build
[17:32:01] <jmkasunich> I'm guessing it didn't get included on the disk for some reason
[17:32:22] <robin_sz> oh arse. I accidentally bought another winmodem
[17:32:29] <robin_sz> POS.
[17:33:53] <paul_c> you can generate modversions.h by running "make include/modversions.h" in the top level kernel src dir (if I recall...)
[17:34:25] <jmkasunich> maybe... but that only partly addresses the problem
[17:34:42] <jmkasunich> we would have to instruct everyone with TNG to do that before attempting a compile
[17:35:45] <paul_c> just looking at a 2.4.27 include tree.
[17:36:07] <jmkasunich> booting my TNG box to see what happens
[17:37:12] <Imperator_> hi alex
[17:37:30] <alex_joni> hey Martin
[17:37:42] <alex_joni> * alex_joni just got home
[17:37:46] <Imperator_> have emc2-kbuild now running on my bdi4.18 box with the new 2.6.10 kernel and rtai3.2
[17:37:48] <alex_joni> jmk: you around?
[17:37:55] <alex_joni> great :D
[17:37:56] <jmkasunich> yep
[17:38:01] <alex_joni> hey John
[17:38:06] <Imperator_> but it frezes all the time
[17:38:22] <alex_joni> Imperator_: try increasing the PERIOD as I said in my email
[17:38:36] <Imperator_> BASE Period
[17:39:18] <alex_joni> yup
[17:39:19] <paul_c> How many files export symbols ?
[17:39:24] <alex_joni> hal_lib
[17:39:25] <alex_joni> and rtapi
[17:39:32] <jmkasunich> rtapi.c and hal_lib.c
[17:40:36] <alex_joni> paul_c: hello
[17:40:38] <paul_c> 'bout the only thing that I can suggest at the moment is to #ifdef the symtab stuff in those two files.
[17:40:59] <jmkasunich> yeah, I was thinking about that... kinda crufty, but it will work
[17:41:04] <alex_joni> to remove it for older systems?
[17:41:12] <jmkasunich> yeah
[17:41:16] <alex_joni> ok
[17:41:25] <jmkasunich> * jmkasunich will do that
[17:41:36] <jmkasunich> (I can do it and test it on my TNG box)
[17:41:37] <alex_joni> BDI-TNG seems to be failing because the linuxkernel is not conigured
[17:41:40] <alex_joni> right?
[17:41:47] <alex_joni> configured even
[17:42:05] <alex_joni> paul_c: still over the pond?
[17:42:23] <jmkasunich> something like that... it must have been configured before it was built, but some of the config files didn't make it onto the CD
[17:42:42] <alex_joni> right.. well that's not such a big problem
[17:42:45] <jmkasunich> (rtai-config is also missing, remember we had to work around that)
[17:43:04] <alex_joni> I think an ifdef is not the best option, but it's ok to do it for now
[17:43:29] <alex_joni> what if we define the EXPORT_SYMBOL as a macro that doesn't do anything?
[17:44:23] <jmkasunich> can we do that, or would module.h simply re-define it?
[17:44:32] <anonimasu> iab
[17:44:50] <jmkasunich> that approach would certinly keep the source cleaner
[17:45:02] <alex_joni> probably will cause an warning about redefining the macro
[17:45:07] <alex_joni> but I'm not sure who will win
[17:45:09] <alex_joni> :)
[17:45:14] <anonimasu> robin_sz: I was curious on how you intended to send the messages out..
[17:45:24] <anonimasu> robin_sz: without going through the whole queue always for each message
[17:45:25] <alex_joni> an0n: by shouting
[17:45:32] <alex_joni> really load
[17:45:46] <paul_c> if EXPORT_SYMTAB is defined, modversions.h will be included at some point.
[17:46:15] <paul_c> * paul_c disappears for an hour or so.
[17:46:42] <jmkasunich> the old way we didn't define EXPORT_SYMTAB, nor did we invoke EXPORT_SYMBOL(foo)
[17:46:50] <alex_joni> right
[17:47:06] <alex_joni> what if we don't define EXPORT_SYMTAB
[17:47:15] <alex_joni> but define macro EXPORT_SYMBOL(foo)
[17:47:17] <jmkasunich> for 2.6, we still don't define EXPORT_SYMTAB
[17:47:22] <alex_joni> right...
[17:47:31] <alex_joni> at any point we don't need to define EXPORT_SYMTAB
[17:47:43] <jmkasunich> right
[17:47:53] <alex_joni> I hope ;)
[17:47:59] <jmkasunich> but we do need to hide the invokations of EXPORT_SYMBOL
[17:48:07] <alex_joni> or make them useless
[17:48:19] <jmkasunich> either by #ifdef (yuck) or by defining it as nothing
[17:48:19] <alex_joni> so that gcc will optimize them to /dev/null
[17:48:28] <alex_joni> right
[17:48:47] <jmkasunich2> I'll experiment a little on this box
[17:48:49] <alex_joni> there would be a third way.. but that's yuck too
[17:48:59] <jmkasunich2> what is it?
[17:49:00] <alex_joni> put the defines in another .c file
[17:49:07] <alex_joni> and link those for 2.6
[17:49:12] <alex_joni> but not for other systems
[17:49:23] <jmkasunich2> yeah, that is yuck ;-)
[17:49:28] <alex_joni> not really sure this even works ;-)
[17:49:43] <alex_joni> and you'll have to change 2 files for adding the same function
[17:49:52] <alex_joni> which is (double) yuck
[17:52:47] <alex_joni> an0n: wanna talk CL ?
[17:53:02] <alex_joni> jmk: did you succes in running emc2 on BDI4.20?
[17:53:18] <jmkasunich2> haven't had a chance to try it
[17:53:35] <anonimasu> alex_joni: why not?
[17:53:44] <anonimasu> alex_joni: have a look at the toolchanger at the wiki first
[17:53:45] <alex_joni> right.. was wondering if anybody else had the same problems with BASE_PERIOD
[17:53:53] <alex_joni> I already did, that's why I asked
[17:54:00] <anonimasu> * anonimasu nods
[17:54:01] <jmkasunich2> I will try it after I work on the TNG problem
[17:54:15] <alex_joni> as much as I like HAL, I don't think CL linked to HAL has the most benefits
[17:54:35] <alex_joni> CL needs to have a messaging interface to/from emc
[17:54:43] <alex_joni> right now that's NML
[17:55:05] <anonimasu> yep
[17:55:06] <anonimasu> I agree
[17:55:11] <jmkasunich2> NML msgs to set CL contacts and read CL coils?
[17:55:22] <anonimasu> I dont have a complete grasp of how HAL works really
[17:55:41] <alex_joni> nope
[17:55:44] <alex_joni> to send commands
[17:55:53] <alex_joni> not really CL stuff, but IO controller stuff
[17:55:55] <jmkasunich2> what kind of commands?
[17:56:05] <alex_joni> there is a module missing from inbetween the two
[17:56:15] <alex_joni> like get tool, do smthg
[17:56:24] <anonimasu> yeah
[17:56:33] <jmkasunich2> my lack of CL experience is showing... IMO, ladder logic _only_ interacts with the outside world thru contacts and coils
[17:56:33] <anonimasu> interpreter > plc
[17:56:52] <alex_joni> interpreter <-> iocontroller <-> plc
[17:56:57] <anonimasu> jmkasunich2: well you are correct..
[17:56:59] <anonimasu> yep
[17:57:05] <alex_joni> and plc might be connected to HAL
[17:57:13] <alex_joni> interpreter <-> iocontroller <-> plc -> HAL
[17:57:17] <anonimasu> * anonimasu nods
[17:57:20] <anonimasu> that's the way it should be
[17:57:29] <alex_joni> but only to take advantage of the same hardware
[17:57:47] <alex_joni> not to do serious dataflow with other HAL components (like motion)
[17:57:52] <jmkasunich2> interp <-NML-> iocontrol <-HAL-> plc <-HAL-> IO
[17:57:52] <anonimasu> agreed..
[17:58:01] <alex_joni> yeah.. that too
[17:58:02] <anonimasu> that should be on the interpreter side anyway..
[17:58:31] <alex_joni> jmk: sounds resonable
[17:58:38] <anonimasu> hm, nope I dont think you should have HAL between iocontrol and the plc..
[17:58:38] <jmkasunich2> iocontrol would be a user space process I think?
[17:58:44] <alex_joni> sure
[17:58:48] <anonimasu> I'd want iocontrol to be a separate protocol
[17:58:56] <jmkasunich2> well depends on what is in incontrol and what is in plc
[17:59:05] <alex_joni> but.. you need some macros (user definable) in iocontrol
[17:59:12] <anonimasu> because, that would allow hardware plc's.. to interact with it instead
[17:59:21] <jmkasunich2> some simple systems won't actually need a "plc", iocontrol can just talk straight to the I/O thru hal
[17:59:32] <alex_joni> say.. wait for contact (signal) 15 from plc,
[17:59:41] <alex_joni> then do some motion
[17:59:44] <anonimasu> jmkasunich2: it should go through the plc either way.. even if you are just toggling a pin
[17:59:55] <jmkasunich2> why?
[17:59:59] <alex_joni> then set some signal, then do some other motion, etc.
[18:00:00] <anonimasu> jmkasunich2: if the user dont need logic it dosent have to be in there
[18:00:23] <alex_joni> the user don't _have_ logic
[18:00:29] <alex_joni> that's the correct statement
[18:00:34] <anonimasu> yeah..
[18:00:45] <jmkasunich2> * jmkasunich2 is confused
[18:01:05] <alex_joni> jmk: how so?
[18:01:12] <jmkasunich2> how does plc connect to the rest of the world? coils and contacts, right?
[18:01:20] <anonimasu> inputs/outputs
[18:01:51] <alex_joni> right
[18:02:06] <jmkasunich2> coils = outputs, contacts = inputs (but both are assumed to be bits) I have no experience with "ladder logic" that manipulates things bigger than bits
[18:02:19] <anonimasu> well arrays of bits..
[18:02:43] <anonimasu> and things like that
[18:03:05] <alex_joni> they have timers & such
[18:03:08] <jmkasunich2> but rungs only manipulate single bits? the arrays are just a convenient way to store them...
[18:03:08] <alex_joni> but that's internal
[18:03:21] <anonimasu> yeah
[18:03:37] <jmkasunich2> ok, so the natural interface to a PLC is bits then
[18:03:47] <anonimasu> jmkasunich2: I dont get you..
[18:03:47] <jmkasunich2> ?
[18:03:57] <anonimasu> the way the plc talks to other stuff is rs232/can
[18:04:15] <jmkasunich2> ?
[18:04:25] <anonimasu> but the internal logic is triggered by a pin going high or low..
[18:04:25] <jmkasunich2> define "other stuff"
[18:04:42] <jmkasunich2> user interface/programming tools? remote I/O racks or cards?
[18:04:44] <anonimasu> other stuff pc/sensors/other plc's..
[18:04:45] <Jymmm> i2c ?
[18:04:49] <Imperator_> a PLC can have digital IOs->bits, analog IOs->words
[18:05:05] <anonimasu> yep.. but that's not possible for a software plc... :)
[18:05:10] <anonimasu> or can you do it with cl?
[18:05:34] <anonimasu> jmkasunich2: yeah all of that stuff..
[18:05:35] <anonimasu> you said
[18:06:08] <anonimasu> but if you have a iocontrol you could send the plc command if you would like to..
[18:06:10] <Jymmm> jmkasunich other stuff == Toaster, waffle iron, frig, etc
[18:06:11] <anonimasu> commands..
[18:06:12] <anonimasu> yeah
[18:06:45] <anonimasu> in this case I think that it would be the most convenient way since it allows for data transfer from and to the plc..
[18:06:45] <jmkasunich2> well user interfaces and programming tools don't count for this discussion... CL has a user interface, that is invisible to EMC (the interface that lets you defined rungs, etc)
[18:07:26] <anonimasu> and data transfer allows for a greater control over your programs and safety features..
[18:08:01] <jmkasunich2> * jmkasunich2 is getting seriously lost
[18:08:07] <anonimasu> like refusing to load the next tool unless the spindle is in the correct position
[18:08:20] <anonimasu> failsafe's.. like that..
[18:08:33] <jmkasunich2> can I step back and make sure we're using the same definitions?
[18:08:34] <Imperator_> anonimasu: have you ever worked with PLCs ???
[18:08:58] <anonimasu> Imperator_: a bit
[18:09:03] <jmkasunich2> PLC: a black box that periodically reads inputs, executes a series of rungs, and writes outputs
[18:09:03] <Imperator_> ok
[18:09:22] <anonimasu> Imperator_: I work with them every day :)
[18:09:37] <Imperator_> which brand ?
[18:09:46] <Imperator_> i work with the Siemens stuff
[18:09:47] <jmkasunich2> the PLC user interface lets you edit the rungs and such, but is otherwise invisible, and once the rung program is complete can be ignored completely
[18:09:48] <alex_joni> jmk: modern PLC's talk to servos (by some kind of BUS like CANopen, deviceNet, I2C, RS232, ethernet, etc)
[18:09:51] <anonimasu> sigmatek ones..
[18:10:00] <jmkasunich2> that's the part I don't get
[18:10:21] <jmkasunich2> well I get part of it
[18:10:23] <alex_joni> what don't you get?
[18:10:25] <anonimasu> Imperator_: www.sigmatek.at
[18:10:33] <alex_joni> you can define variables (inside the PLC)
[18:10:38] <alex_joni> and some even do PID's
[18:10:50] <anonimasu> yep..
[18:10:58] <jmkasunich2> but that isn't ladder logic anymore
[18:11:05] <alex_joni> it is...
[18:11:09] <alex_joni> but isn't
[18:11:10] <alex_joni> ;)
[18:11:17] <alex_joni> anyways.. we are talking of CL here
[18:11:18] <jmkasunich2> or at least it's ladder logic that's been stretched beyond recognition
[18:11:37] <anonimasu> * anonimasu nods
[18:11:42] <alex_joni> as that's the only PLC-in-software that we consider
[18:11:52] <alex_joni> there was another GPL one, but I think that's worse
[18:12:01] <anonimasu> I'd like iocontrol to be able to talk with real plc's also..
[18:12:03] <jmkasunich2> I do get the bus part - as far as I care, the bus is part of the PLC, and the remote I/O device that the bus connects to is PLC I/O just like local IK
[18:12:09] <jmkasunich2> s/IK/IO
[18:12:13] <Imperator_> normaly for bus stuff or PID stuff you have blocks prepared from the manufaturer
[18:12:31] <alex_joni> an0n: linked how?
[18:12:36] <alex_joni> pins?
[18:12:40] <alex_joni> wires?
[18:12:44] <anonimasu> alex_joni: rs232 or somthing like that..
[18:12:52] <alex_joni> ducttape?
[18:12:55] <anonimasu> yeah..
[18:12:56] <anonimasu> :D
[18:12:58] <alex_joni> :)
[18:13:01] <Imperator_> you call them like a function
[18:13:20] <jmkasunich2> and how do you call a function from a ladder rung?
[18:13:20] <anonimasu> just have the thought in mind.. :)
[18:13:24] <alex_joni> result_var := Martin(parameters)
[18:13:29] <Imperator_> it has inputs (bits, words, ... ) and outputs(return value)
[18:13:56] <Imperator_> in STL it looks a bit different
[18:13:59] <anonimasu> alex_joni: yep
[18:14:05] <alex_joni> ok.. let's back up a little
[18:14:12] <alex_joni> we have emc
[18:14:19] <alex_joni> we have a g-code
[18:14:25] <anonimasu> alex_joni: that's just on my wishlist, when designing the interface between the two..
[18:14:39] <Imperator_> when you are switching to the grafical mode (don't know how it is called in english) you have a block with input and output wires
[18:14:45] <alex_joni> this g-code has some IO-related codes in it (be it M, G, or even L...)
[18:14:59] <anonimasu> Imperator_: yep classes and objects..
[18:15:08] <anonimasu> yep
[18:15:12] <alex_joni> the interpreter reads this g-code, and reaches one of these functions
[18:15:25] <jmkasunich2> Imperator_: "switching to graphical mode"? ladder logic _is_ graphical... I've never seen a text based representation of it
[18:15:33] <alex_joni> then it composes a NML message and sends it to the IO-controller
[18:15:46] <alex_joni> agreed so far?
[18:15:57] <anonimasu> no
[18:16:00] <anonimasu> you missed a step..
[18:16:04] <alex_joni> what's that?
[18:16:22] <Imperator_> jmkasunich2: text based is STL (in derman AWL)
[18:16:26] <anonimasu> the interpreter loads the file containing the macro..
[18:16:32] <alex_joni> nope
[18:16:35] <alex_joni> why should it?
[18:16:46] <anonimasu> because the positoning is in there..
[18:16:46] <jmkasunich2> |--|/
[18:16:47] <alex_joni> does the interpreter interpret the macro too?
[18:16:48] <anonimasu> or well the M code for talking to the plc..
[18:16:51] <jmkasunich2> oops
[18:17:03] <alex_joni> why should it?
[18:17:07] <alex_joni> that's IO stuff
[18:17:11] <alex_joni> or?
[18:17:15] <anonimasu> no
[18:17:17] <anonimasu> that's the motion stuff
[18:17:19] <alex_joni> is it generic macro ?
[18:17:21] <anonimasu> I missed you sorry..
[18:17:29] <anonimasu> for toolchanges that is..
[18:17:33] <alex_joni> the IO can send a motion message to the motion part
[18:17:45] <anonimasu> * anonimasu does not agree
[18:17:53] <alex_joni> well.. then I go away
[18:17:54] <alex_joni> ;)
[18:17:55] <anonimasu> the IO shouldnt send messages to the motion part
[18:18:02] <alex_joni> * alex_joni has to leave for a while
[18:18:03] <anonimasu> lol
[18:18:09] <anonimasu> alex_joni: wait up a sec :)
[18:18:10] <alex_joni> laters
[18:18:34] <anonimasu> alex_joni: I think the plc should be kept separate from the motion stuff, and that the motion should be a macro within the interpreter..
[18:18:50] <alex_joni> you don't want to clutter the interp.
[18:18:56] <jmkasunich2> we discussed this some at Fest...
[18:19:01] <Imperator_> jmkasunich2: i have something for you in our lab !!! http://cimweb.cim.fh-aalen.de/vvl-tp4/german/tutorials/s7.htm
[18:19:09] <alex_joni> well.. feel free to slap our fingers ;)
[18:19:21] <jmkasunich2> today, the interp/task block is the "master" and it tells both io and motion what to do
[18:19:29] <Imperator_> it is in english. you need a mp3 player, to hear it.
[18:19:32] <alex_joni> jmk: go on
[18:19:39] <jmkasunich2> it can get messy if at times you let io start telling motion what to do
[18:19:54] <anonimasu> yep
[18:20:00] <jmkasunich2> Imperator_: I don't have an mp3 player
[18:20:24] <Imperator_> :-(
[18:20:34] <alex_joni> jmk: way to go ;)
[18:20:35] <alex_joni> :D
[18:20:41] <anonimasu> jmkasunich2: my fear was that programming physical stuff becomes "too" advanced.. to be useful
[18:20:44] <Imperator_> quicktime can also do it, maybe
[18:21:03] <Imperator_> in the main windows there is at the top left a speaker symbol
[18:21:19] <jmkasunich2> Imperator_: I also don't have a sound card ;-)
[18:21:29] <Imperator_> hmmmmm
[18:21:33] <alex_joni> but you could convert it to a text file
[18:21:35] <alex_joni> ;D
[18:21:42] <Imperator_> you can watch the pictures
[18:21:44] <jmkasunich2> it sounds like I need to learn about "modern" PLCs....
[18:21:46] <alex_joni> mpeg2text
[18:21:48] <alex_joni> :))
[18:21:58] <jmkasunich2> but aren't we talking about "Classic" ladder here?
[18:22:08] <anonimasu> jmkasunich2: yes
[18:22:16] <anonimasu> jmkasunich2: although the concept is still the same
[18:22:28] <anonimasu> plc's should be used for external logic..
[18:22:53] <anonimasu> if we had a stack of PLC's with encoder inputs and stuff it'd be a different beast to tackle..
[18:23:10] <alex_joni> an0n: don't jump too high ;)
[18:23:15] <alex_joni> let's do CL for now
[18:23:19] <anonimasu> alex_joni: yeah agreed
[18:23:26] <alex_joni> ok..
[18:23:28] <Imperator_> jep
[18:23:29] <alex_joni> so back to macros
[18:23:39] <alex_joni> who supports / interprets them?
[18:23:51] <anonimasu> the interpreter does
[18:23:55] <jmkasunich2> this is what I think of when somebody says ladder:
[18:24:04] <alex_joni> what do others say?
[18:24:08] <jmkasunich2> | in1 in2 out1 | +---| |--+--| |--------------( )---| | in3 | | +---|/|--+ | | | | in2 out2 | +---|/|----------------------( )---|
[18:24:15] <jmkasunich2> blast
[18:24:22] <alex_joni> jmk: we get your point
[18:24:23] <jmkasunich2> that didn't work
[18:24:32] <alex_joni> what about macros?
[18:24:37] <alex_joni> is that interpreter stuff?
[18:24:40] <anonimasu> I get your point it's much of how it looks today but thoose in/out things are blocks containing code..
[18:24:41] <jmkasunich2> in ladder?
[18:24:46] <anonimasu> yeah
[18:25:00] <anonimasu> it's interpreter stuff, although the interpreter needs to be able to wait for a OK signal from the plc..
[18:25:36] <anonimasu> alex_joni: external macros or somthing like that..
[18:25:39] <jmkasunich2> I have experience with only one kind of PLC... it is old
[18:25:48] <alex_joni> jmk: what do you think of macros?
[18:25:59] <alex_joni> it MUST be a macro that support IO and motion bits
[18:26:02] <jmkasunich2> it uses ladder logic only for _logic_, bits as input and output
[18:26:03] <Imperator_> jmkasunich2: have you sean my wiki page ?? http://wiki.linuxcnc.org/cgi-bin/emcinfo.pl?ToolChangerImplementation
[18:26:21] <jmkasunich2> it had two other languages available that were used for other things
[18:26:34] <jmkasunich2> basic was one, for sequential stuff
[18:26:34] <anonimasu> alex_joni: yes but the motion bits are inthe interpreter as g-code and the IO are left to the plc to handle
[18:26:49] <jmkasunich2> and the other was a control block language, for things like PID, etc
[18:26:53] <anonimasu> somthing like PG50 I think
[18:26:55] <anonimasu> :)
[18:26:55] <alex_joni> an0n: I disagree
[18:27:20] <alex_joni> a macro should give the user possibility to code IO _and_ motion stuff
[18:27:33] <alex_joni> if he wants he can do only motion in the macro
[18:27:44] <alex_joni> and call that as many times as he likes
[18:27:52] <anonimasu> * anonimasu nods
[18:27:55] <jmkasunich2> which means it should be evaluated by "task", not in the iocontroller _or_ the motion controller
[18:28:09] <alex_joni> is interp. part of task?
[18:28:15] <jmkasunich2> yes
[18:28:26] <alex_joni> ok.. I still have a valid picture of emc :D
[18:28:28] <jmkasunich2> "task" is the main loop, that calls interp
[18:28:31] <alex_joni> right
[18:28:35] <anonimasu> alex_joni: ofcourse he can, but what happens when the user feel that he has to disable a limit switch to be able to reach the toolchange position?
[18:28:53] <alex_joni> well.. that's definately motion
[18:29:01] <Imperator_> nope plc
[18:29:12] <anonimasu> alex_joni: is turning off the switch action a motion thing?`
[18:29:18] <anonimasu> err bypassing it?
[18:29:32] <Imperator_> the limit switch is wired to the plc, and from the plc then to motion, then the plc can cut the wire
[18:29:37] <jmkasunich2> you want to route a limit switch thru the plc and then to the motion controller? so the plc can temporarily disable it?
[18:29:37] <anonimasu> * anonimasu nods
[18:29:48] <anonimasu> or well all switches/estop/stuff..
[18:29:57] <jmkasunich2> that means your PLC must be realtime
[18:30:33] <jmkasunich2> _and_ that both the connection from the switch to the PLC and from the PLC to motion must be compatible (ie. both of them HAL)
[18:31:16] <anonimasu> * anonimasu nods
[18:31:38] <anonimasu> or well, you could do motion that way also..(thinking a bit more about it)
[18:31:41] <anonimasu> like keypads..
[18:31:48] <alex_joni> * alex_joni will be back later
[18:31:57] <anonimasu> alex_joni: laters
[18:32:02] <alex_joni> make sure you get something feasible out of this discussion
[18:32:07] <alex_joni> as in decisions !!!!
[18:32:17] <jmkasunich2> fat chance
[18:32:21] <alex_joni> modify the wiki accordingly, and I'll start to code
[18:32:22] <anonimasu> I need to run off in a while also..
[18:32:35] <alex_joni> jmk: even a message to the dev list would be smthg
[18:32:43] <anonimasu> alex_joni: we will continue after you get back and get somthing togther out of this..
[18:32:52] <alex_joni> ok.. later
[18:32:54] <alex_joni> bye
[18:32:54] <anonimasu> yep
[18:33:31] <jmkasunich2> * jmkasunich2 needs to work on the EXPORT_SYMBOL issue
[18:33:50] <anonimasu> jmkasunich2: if you have any wonders about modern plc's I might be able to point you in the direction of some papers
[18:34:21] <Imperator_> * Imperator_ wounders why in emc.ini there are axis with XYZRPW and not XYZABC ????????
[18:34:23] <anonimasu> :)
[18:34:46] <jmkasunich2> what I really want is an "old" (ie Classic) PLC, running in realtime, evaluating old-fashioned ladders with bits as input and output, and those bits coming from and going to HAL
[18:34:57] <anonimasu> jmkasunich2: same with me..
[18:34:58] <Imperator_> in motion we have XYZABC
[18:35:35] <anonimasu> jmkasunich2: that's the IO I was talking about
[18:36:14] <Imperator_> i think that is the easyest way. then CL has only to export HAL pins
[18:36:25] <anonimasu> yep
[18:36:27] <Imperator_> a NML interface would be a bigger task
[18:36:42] <anonimasu> but the interpreter would have to accept WAIT ( HAL PIN )
[18:36:45] <anonimasu> conditionals
[18:36:52] <anonimasu> and things like that
[18:37:00] <anonimasu> that's the tricky part
[18:37:19] <jmkasunich2> maybe not too bad
[18:37:26] <jmkasunich2> preconditions and postconditions
[18:37:30] <anonimasu> and variables.
[18:37:39] <anonimasu> so you can store you position, before the toolchange..
[18:37:59] <Imperator_> fred was always talking about that, but i don't know what that realy is
[18:38:40] <anonimasu> * anonimasu nods
[18:38:59] <jmkasunich2> seems like a fundamental divide is between "periodic" stuff (as in ladder rungs in a PLC) and "sequential" stuff (as in "store current position, move, wait for turret, restore current pos, etc")
[18:39:12] <jmkasunich2> I think I can explain pre and post stuff
[18:39:19] <anonimasu> yeah
[18:39:24] <jmkasunich2> but wait a bit (nature calls) ;-)
[18:39:34] <anonimasu> precondition ,)
[18:39:34] <anonimasu> ;)
[18:39:36] <anonimasu> for explaining
[18:40:32] <anonimasu> jmkasunich2: all that stuff is g-codes except for the acutal motion of the turrent..
[18:40:35] <anonimasu> :)
[18:40:57] <anonimasu> somthing like
[18:41:05] <anonimasu> store pos.X
[18:41:09] <anonimasu> store pos.Y
[18:41:39] <Imperator_> you can use parameter for that
[18:41:46] <Imperator_> P1=....
[18:41:50] <anonimasu> g0 z50
[18:42:30] <anonimasu> M3045 ( disable limit switches )
[18:42:38] <anonimasu> g0 x1000 y1000
[18:43:10] <anonimasu> M0394 T5 ( trigger ladder logic to remove current tool and change to tool 5)
[18:43:42] <anonimasu> g0 pos.X pos.Y
[18:43:51] <anonimasu> typo..
[18:43:58] <jmkasunich2> IOW, the language used to describe the toolchange operaton _is_ g-code
[18:44:00] <anonimasu> M3045
[18:44:03] <anonimasu> yeah.
[18:44:20] <jmkasunich2> ray was arguing that the language he'd like to use for that is ladder
[18:44:26] <anonimasu> * anonimasu nods
[18:44:41] <jmkasunich2> I think g-code makes more sense
[18:44:57] <Imperator_> together with a plc !
[18:45:00] <anonimasu> yes
[18:45:10] <Imperator_> the plc does the complex logic
[18:45:11] <jmkasunich2> you nodded... were you at fest? (I don't know who anon actually is)
[18:45:18] <anonimasu> nope..
[18:45:19] <Imperator_> if the user needs that
[18:45:20] <anonimasu> I am in sweden..
[18:45:31] <anonimasu> if the user needs positioning from the plc that can be added later.
[18:45:40] <anonimasu> but it's not the most cruical part..
[18:45:55] <anonimasu> but generally I belive this is the correct way..
[18:46:09] <anonimasu> I got the idea when dmess was talking about how everything was a macro at the toshiba machines..
[18:46:16] <Imperator_> thats the reason why we want to make some stuff in g-code !! That positioning is completly done only in g-code
[18:46:20] <anonimasu> yep
[18:46:29] <jmkasunich2> the argument is about "where" the toolchange logic is stored... on the machines Ray knows, it is in hundreds of pages of ladder
[18:47:03] <anonimasu> well, in a real application on a machine that would be the way to do it aswell..
[18:47:12] <Imperator_> i can copy the stuff out of out siemens Sinumerik 840D
[18:47:20] <jmkasunich2> but for the machines you are describing, it sounds like mose of it is in the form of g-code subroutines or macros
[18:47:35] <anonimasu> the ones I am describing..
[18:47:49] <Imperator_> i had sometimes a quick look on that, because we had to change something at the toolchange programm
[18:48:01] <anonimasu> hm, well, the machine dosent position the toolchanger.. the machine positions the table at the toolchange location..
[18:48:12] <anonimasu> the plc takes care of the toolchange logic finding/replacing the tool...
[18:48:21] <anonimasu> as separate as possible..
[18:48:57] <jmkasunich2> ok, so the information is split
[18:49:03] <jmkasunich2> some in g-code subroutings, some in the plc
[18:49:07] <anonimasu> yeah, motion/I/O logic
[18:49:09] <Imperator_> jep
[18:49:27] <jmkasunich2> the plc does not (and cannot) cause machine table motion
[18:49:33] <jmkasunich2> ?
[18:49:34] <anonimasu> yep..
[18:49:43] <anonimasu> or rather "should not"
[18:49:53] <anonimasu> although you might still have conditions where you need to pass data to the plc..
[18:49:57] <jmkasunich2> IMO it should be "cannot"
[18:50:21] <anonimasu> jmkasunich2: I agree :)
[18:50:27] <Imperator_> the g-code says move the spindel to the changing position, then it calls the plc. the plc turns the tool karusell and moves it out of the box under the spindel, then the g-code commands the spindel to move down, ....
[18:50:36] <anonimasu> yep
[18:50:39] <jmkasunich2> right
[18:50:46] <anonimasu> wait ( stuff )
[18:50:51] <anonimasu> g0 z0
[18:51:06] <anonimasu> wait ( stuff ) //tool release clamping action
[18:51:24] <anonimasu> g0 z50
[18:51:35] <anonimasu> Imperator_: exactly
[18:51:53] <Imperator_> and that g-code files are in a special location of the controller, the user cant see them, he can only call them
[18:51:58] <anonimasu> yep
[18:52:02] <Imperator_> something like that
[18:52:43] <Imperator_> but there must be a comand in the g-code that says the plc it has to open the clamping
[18:52:52] <Imperator_> g0z0
[18:52:59] <Imperator_> m134 (open clamping)
[18:53:11] <Imperator_> z5
[18:53:18] <anonimasu> Imperator_: the wait command waits for the PLC to comfirm stuff..
[18:53:22] <anonimasu> that it's done..
[18:53:25] <Imperator_> m135 (rotate tool karusell)
[18:53:27] <anonimasu> ie release clamps..
[18:53:39] <jmkasunich2> is "wait" something already in g-code, or something you are proposing to add?
[18:53:39] <anonimasu> let me write it again..
[18:53:44] <anonimasu> nope..
[18:53:47] <anonimasu> it's what I am proposing to add.
[18:53:47] <Imperator_> the plc has to know what it has to do
[18:53:55] <anonimasu> Imperator_: that's within the ladder logic..
[18:54:25] <jmkasunich2> m135 is a command from the g-code to the ladder... the ladder must respond by doing the actual turning
[18:54:33] <anonimasu> yeah..
[18:54:46] <Imperator_> ok, then the plc has to read the position from the axis halpins and knows because of the position what to do
[18:55:00] <jmkasunich2> the problem I have with this it that IMO things like turning a turrent are a lousy match for ladder logic
[18:55:11] <jmkasunich2> that is a _sequential_ operation
[18:55:21] <anonimasu> jmkasunich2: you can do loops in ladder logic..
[18:55:31] <anonimasu> "turn until tool X shows up"'
[18:55:37] <anonimasu> although not that simple..
[18:55:55] <Imperator_> no loops in ladder, only jumps, but the result is the same
[18:56:09] <anonimasu> Imperator_: depends on which kind of ladder you are programming..
[18:56:09] <jmkasunich2> right, you _can_, but it is far easier to write and understand in a sequential language
[18:56:17] <Imperator_> that is no problem for the ladder program john
[18:56:55] <jmkasunich2> "modern" ladder or "classic" ladder?
[18:56:56] <Imperator_> like i said i only know siemens, but loops are a problem because of the cycle time of the plc
[18:57:09] <anonimasu> Imperator_: what are your lowest cycle time?
[18:57:12] <Imperator_> don't know the difference john
[18:57:22] <jmkasunich2> right- classic ladder runs the ladder from beginning to end, no loops or anything
[18:57:36] <anonimasu> hm, that adds up as a problem..
[18:57:52] <anonimasu> if that's the case cl is kind of usless..
[18:58:03] <jmkasunich2> not at all
[18:58:04] <anonimasu> if you are thinking of automation..
[18:58:09] <jmkasunich2> ladder logic replaces relays
[18:58:09] <Imperator_> anonimasu: don't know it now, but if you have a loop in the programm the cycle can last some seconds, and if the cycle time is set to 0,2s then the plc gos to estop
[18:58:31] <Imperator_> then classic ladder, john
[18:58:32] <jmkasunich2> relays are completely parallel devices, ladder simulates that by evaluating things frequently
[18:58:34] <anonimasu> Imperator_: hm, the plc's I work with have interrupt capability..
[18:59:03] <jmkasunich2> anonimasu: and all this stuff is programmed in ladder?
[18:59:12] <Imperator_> i think siemens can do that also, but i had never used that. Siemens can do everything (thats the problem)
[18:59:44] <anonimasu> jmkasunich2: c-ish but the commands exist if you decide you want to program them in ladder..
[18:59:55] <anonimasu> conditionals and for loops and while loops..
[19:00:06] <jmkasunich2> well there is one of the reasons we are having such a hard time communicating
[19:00:08] <Imperator_> in cl you do a loop in that way that you are jumping over the rest of the code to the end
[19:00:27] <anonimasu> * anonimasu nods
[19:00:33] <jmkasunich2> * jmkasunich2 thinks PLC == Ladder
[19:00:40] <anonimasu> cultural differencies *grins*
[19:01:00] <jmkasunich2> actually the only PLC I know (knew) well used three different languages
[19:01:06] <Imperator_> ladder is one language with that you can programm plcs
[19:01:21] <Imperator_> a grafical language
[19:01:41] <Imperator_> there is also STL, or graphset, or even C
[19:02:01] <Imperator_> classicladder can do also graphset, i think
[19:02:21] <jmkasunich2> ladder was used for things it did well (periodic stuff, simulated relays, bits only), control blocks were used for PID loops and similar stuff, still periodic, but analog as well as bits, and finally basic for sequential stuff
[19:02:49] <anonimasu> * anonimasu nods
[19:03:52] <Imperator_> i think that the programming software makes out of all this a plc programm that runs periodicaly
[19:04:05] <Imperator_> it's only to help the user
[19:04:13] <jmkasunich2> if you use Imparator's definition ("ladder is one language you can use to program PLCs"), then what makes something a PLC instead of a normal compputer?
[19:04:33] <Imperator_> it is a computer
[19:04:56] <jmkasunich2> but we are talking of a "PLC" within EMC
[19:05:05] <anonimasu> there really is no difference..
[19:05:11] <Imperator_> i think the OS of the PLC runs it's program periodicaly, if the period igets to long it knows there is a error and stops
[19:05:14] <anonimasu> it's as real as a physical plc..
[19:05:21] <anonimasu> although limited in functionality
[19:05:53] <jmkasunich2> by that logic, you could call EMC's current io controller a "PLC"
[19:06:06] <anonimasu> cl is a plc..
[19:06:09] <jmkasunich2> it just happens to be written in C
[19:06:22] <jmkasunich2> not CL, bridgeportio
[19:06:23] <Imperator_> where is that code ?
[19:06:35] <anonimasu> jmkasunich2: how would you like it to be handled?
[19:06:44] <anonimasu> things like rotating the tool carousel?
[19:07:19] <jmkasunich2> I'm not sure
[19:07:31] <jmkasunich2> I just know that this kind of communication is very frustrating
[19:07:40] <Imperator_> :-)
[19:07:42] <Imperator_> jep
[19:07:51] <Imperator_> fly to europe john
[19:07:53] <anonimasu> explain a bit more please..
[19:07:53] <anonimasu> :)
[19:08:02] <anonimasu> yeah
[19:08:13] <Imperator_> do you have skype
[19:08:17] <anonimasu> yes
[19:08:43] <Imperator_> i'm Imperator_666
[19:08:56] <jmkasunich2> when one person says "PLC" and means "ladder logic, so the electrician can understand it", and another person says PLC and means "some modern thing that has no resemblence to relay logic", we cannot communicate
[19:09:14] <Imperator_> a plc is the box
[19:09:32] <jmkasunich2> except when it is a virtual PLC inside a computer
[19:09:36] <Imperator_> it can be programmed in different languages
[19:09:38] <Imperator_> jep
[19:09:58] <Imperator_> for example the Siemens WinAC
[19:10:18] <Imperator_> that is a plc from siemens running on a windoze box
[19:10:33] <Imperator_> if you have a profibus card in the windoze machine
[19:10:54] <anonimasu> I am an0nimasu
[19:11:05] <anonimasu> * anonimasu nods
[19:11:16] <anonimasu> it's just a question of definition what a PLC is..
[19:11:26] <Imperator_> you can also use diferent languages in one plc programm
[19:11:33] <jmkasunich2> suppose you have a doze box running WinAC, with a digital I/O card and a serial port, and the serial port connects to another digital I/O card across the room
[19:11:43] <anonimasu> I can go by jmkasunich's definition when we discuss this, but it kind of limits everything lots..
[19:12:16] <Imperator_> WinAC can only comunicate through a bus, like Profibus, but go on
[19:12:41] <jmkasunich2> is that a PLC with a serial interface (treating the remote I/O as something separate) or is it a PLC with digital I/O, some of which is on the other side of the room
[19:12:47] <Imperator_> John install skype
[19:12:50] <jmkasunich2> s/serial port/bus/
[19:13:17] <jmkasunich2> WTF is skype?
[19:13:22] <Imperator_> the PLC is that in the windoze box
[19:13:36] <anonimasu> hm, I am going to move to my friend's place instead..
[19:13:44] <jmkasunich2> and what is the I/O across the room - it's not part of the PLC?
[19:14:12] <Imperator_> the outside part is only a stupid io box that execudes commands that it gets over the Profibus
[19:14:24] <Imperator_> www.skype.com
[19:14:31] <anonimasu> well it's still a part of the PLC..
[19:14:35] <jmkasunich2> but from the perspecive of the guy programming the thing, does he care where the I/O is?
[19:14:40] <anonimasu> nope.
[19:14:41] <Imperator_> but without a sound card it is a bit useless
[19:14:43] <jmkasunich2> or can he treat it all the same?
[19:15:01] <anonimasu> he can have the io down in australia if he wishes..
[19:15:22] <jmkasunich2> skype is telepone? that won't help at all
[19:15:31] <jmkasunich2> I can't communicate without drawing pictures ;-)
[19:15:39] <anonimasu> you can draw with it too I think
[19:16:00] <anonimasu> cant remember...
[19:16:00] <anonimasu> heh
[19:16:09] <anonimasu> it dosent matter to the guy programming it..
[19:16:19] <Imperator_> jep
[19:16:29] <anonimasu> if you have a set of modules in the other end of the world..
[19:16:36] <Imperator_> if you are using Siemns IO modules !!!
[19:16:50] <anonimasu> the only time where it matters.. is if you are using CAN to another PLC..
[19:16:58] <jmkasunich2> ok then, I would say that the PLC is not just the windoze box, but the whole thing, inlusing the remote I/O
[19:17:01] <anonimasu> yeah
[19:17:04] <anonimasu> exactly..
[19:17:17] <anonimasu> and at that stage is where I'd call it a "system" not a plc..
[19:17:23] <jmkasunich2> skype looks like voice only
[19:17:35] <anonimasu> jmkasunich2: exactly
[19:17:53] <jmkasunich2> ok, now in our case, the "system" is all of EMC
[19:18:08] <anonimasu> yep
[19:18:10] <Imperator_> at the siemens programming software you have a hardware configurator, there you are stiking together your hardware. You take a PLC, then you stick the Profibus module to it. Then you have a wire called Profibus. Then you take Profibus modules and stick it to the bus.
[19:18:28] <jmkasunich2> ok, I get that
[19:18:45] <jmkasunich2> the PLC I used to use was called Automax
[19:18:45] <anonimasu> the plc's I program have that too but well, it's for electricians that cant get used to not wiring things togther ;)
[19:19:09] <anonimasu> mostly
[19:19:18] <anonimasu> never heard about them
[19:19:40] <jmkasunich2> it used multi-bus within the rack, and "remote-I/O" to connect multiple racks
[19:20:04] <robin_sz> * robin_sz sighs
[19:20:04] <anonimasu> ok
[19:20:20] <jmkasunich2> the configuartor would let you say "this rack has 1 CPU card and 2 digital input cards and 1 digital output card and 1 remote I/O network card"
[19:20:35] <jmkasunich2> then you could configure the remote rack(s) that the network connected to the same way
[19:20:46] <jmkasunich2> so that's not too different from the seimens thing
[19:21:01] <anonimasu> * anonimasu nods
[19:21:20] <anonimasu> robin_sz: howcome?
[19:21:36] <jmkasunich2> BTW, the reason you never heard about it.. it was used mostly for system level work by the company that made it (Reliance Electric), not sold to the general public
[19:21:46] <anonimasu> hm ok
[19:22:27] <jmkasunich2> (and also Reliance was mostly a USA company)
[19:22:42] <robin_sz> anonimasu: well, does anyone actually want to use remote IO boxes?? it seems we have a system crippled by a messaging layer that can have IO on a differetn continent, but cant run smooth motion even on an old bridgeport :(
[19:23:03] <anonimasu> robin_sz: agreed
[19:23:26] <anonimasu> robin_sz: I thought about it after paul said ti..
[19:23:28] <anonimasu> said it..
[19:23:46] <jmkasunich2> robin_sz: _if_ I was going to try to support remote I/O, it wouldn't be thru NML
[19:23:47] <robin_sz> said what?
[19:23:47] <anonimasu> that coupling CL too closely with the interpreter would be bad in that case..
[19:24:03] <robin_sz> ahh.
[19:24:06] <robin_sz> oh well.
[19:24:23] <robin_sz> we ordered a Baldor control for the bridgeport this week :(
[19:24:36] <anonimasu> :/
[19:24:59] <robin_sz> I spent a few days trying with a head version of emc1
[19:25:06] <jmkasunich2> robin_sz: I would treat the g200x as a "remote I/O" device, having several analog (pulse train) outputs, some traditional analog ins and outs, digital I/O, etc
[19:26:20] <jmkasunich2> where were we
[19:27:30] <anonimasu> hm, we were trying to decide what approach to take on toolchanging
[19:27:39] <anonimasu> motion at interpreter level or at plc level..
[19:27:41] <jmkasunich2> right ;-)
[19:27:43] <anonimasu> what stuff goes where
[19:28:00] <anonimasu> trying to agree on somthing
[19:28:04] <anonimasu> ;)
[19:28:16] <robin_sz> doesnt it all go in the "toolchanger" module?
[19:28:26] <Imperator_> I think it would be a good thing if Rhay wirtes a Suggesstion 2 to the wiki page
[19:28:27] <anonimasu> nope..
[19:28:46] <anonimasu> robin_sz: the motion goes into a macro..
[19:29:04] <anonimasu> robin_sz: the actual hardware motion of the changer goes into the plc (cl)
[19:29:17] <robin_sz> surely the toolchnger is capable of injecting motion requests into the queue?
[19:29:23] <anonimasu> nope
[19:29:31] <robin_sz> oh, thats how I woudl do it
[19:29:51] <jmkasunich2> how would you make sure the interpreter knows the state of the machine after the toolchange was done?
[19:29:52] <anonimasu> robin_sz: the point is to keep the motion at the interpreter level to make it simplier to program it
[19:29:59] <robin_sz> all the toolchnging stuff wrapped up in one lump
[19:30:02] <anonimasu> wait ( M432 )
[19:30:33] <robin_sz> same way it knows now
[19:30:39] <jmkasunich2> not true
[19:30:50] <jmkasunich2> "now", the interp commands all motion of the table
[19:31:10] <robin_sz> why shoudl the toolchnger injecting G1 X45 Y7 be any different from the file reader doing that?
[19:31:45] <jmkasunich2> you want the toolchanger to inject actual g-code into the interpreter?
[19:32:01] <robin_sz> or call canonical functions
[19:32:11] <robin_sz> but why not inject gcode?
[19:32:29] <jmkasunich2> the two are completely different... pick one or the other and I'll play devils advocate
[19:32:47] <jmkasunich2> maybe we'll come up with something I can't break - that might be the answer
[19:33:02] <anonimasu> robin_sz: because that's not how a plc does it..
[19:33:02] <robin_sz> ok, lets go with injecting gcode
[19:33:11] <robin_sz> anonimasu: so what?
[19:33:16] <anonimasu> robin_sz: if you want to injecto g-code why not wire the pins directly to the intrepreter.
[19:33:21] <jmkasunich2> ok, injectint g-code solves the problem of the interp not knowing the machine state
[19:33:37] <jmkasunich2> now, how do you know when to inject g-code
[19:33:55] <jmkasunich2> some command in the main g-code stream tell you to, right?
[19:33:57] <robin_sz> when the interp calls T6?
[19:33:59] <anonimasu> robin_sz: I wouldnt want to program that with a stick..
[19:34:01] <anonimasu> :)
[19:34:06] <Imperator_> what is "injectint g-code" ??????
[19:34:14] <anonimasu> a typo that is.
[19:34:15] <jmkasunich2> IOW, a g-code subroutine call
[19:34:23] <robin_sz> hmm
[19:34:24] <robin_sz> no
[19:34:38] <Imperator_> that is what we have suggestet in the wiki, right
[19:35:10] <robin_sz> the "toolchnager" would be pre-programmed with some logic, part of that would incldue asking for motion, not really a subroutine
[19:35:23] <robin_sz> more sort of "ask for this, wait for it to be done"
[19:35:39] <jmkasunich2> so the main g-code stream (aka the part program) contains a T6 or whatever
[19:35:40] <anonimasu> robin_sz: when you need motion you pass it back to the interpreter..
[19:35:54] <robin_sz> well, inject a command,
[19:36:03] <robin_sz> wait for isMoving() to return false
[19:36:13] <robin_sz> or whatever
[19:36:13] <jmkasunich2> that is sent down to the toolchanger, and the toolchanger sends back up a snippet of g-code asking the machine to move to toolchange location?
[19:36:22] <robin_sz> it might do
[19:36:29] <robin_sz> it might open doors on the carouself
[19:36:37] <robin_sz> turn on the hydraulics ...
[19:36:38] <robin_sz> whatever
[19:36:49] <anonimasu> isnt that the stuff you should do on the plc?
[19:36:57] <jmkasunich2> those other things are easier... it's the table motion that is the issue here
[19:37:26] <robin_sz> it should all happen from a single module, a lump of code, that talsk to the motion and to the IO (via a PLC if you like)
[19:37:36] <robin_sz> not several differetn lumps IMHO
[19:37:39] <jmkasunich2> a lump of hardcoded code?
[19:38:09] <anonimasu> robin_sz: the macro approach makes for other things also like chip ejectors part catchers..
[19:38:52] <anonimasu> oh well *stops advocating*
[19:38:54] <robin_sz> jmkasunich2: possibly the core logic hardocde for a particular toolchamger, the number of tools, the positions read from a file or whatever
[19:39:03] <Imperator_> have no problem if some of the code is in the g-code part and some in the plc
[19:39:15] <Imperator_> like in the siemens controllers
[19:39:24] <jmkasunich2> so every new toolchanger needs a new C program? not good - that is basically what we have today
[19:39:36] <robin_sz> no
[19:39:47] <anonimasu> bbl.. moving myself to my friends place..
[19:39:57] <anonimasu> if you come to anything while I am gone add it to the wiki :)
[19:39:58] <robin_sz> what we have today is stuff hardcoded into the core
[19:40:07] <robin_sz> toolchnage messages and the like
[19:40:20] <robin_sz> why on earth would I want toolchange messages on a plasma?
[19:41:16] <robin_sz> why would a mill need to be cluttered with air pressure messages and arc good signals?
[19:41:18] <jmkasunich2> are you trying to be difficult, or does it just sound that way
[19:41:24] <robin_sz> of fuck it
[19:41:28] <robin_sz> bye
[19:41:42] <Imperator_> hmmmm
[19:42:12] <jmkasunich2> bye
[19:42:19] <jmkasunich2> (to robin)
[19:47:19] <Imperator_> * Imperator_ prepars something to eat
[19:47:36] <jmkasunich2> * jmkasunich2 goes back to EXPORT_SYMBOL
[20:42:52] <Jymmm> sounds like robin is frustrated
[20:44:59] <paul_c> He's trying to goad people in to developing something he can peddle without doing any of the hard work himself.
[20:45:21] <Jymmm> peddle?
[20:45:28] <Jymmm> he's selling emc?
[20:45:41] <Phydbleep> Sherline is for $10/CD
[20:45:42] <paul_c> nope.
[20:46:02] <Jymmm> Phydbleep ?!
[20:46:45] <Phydbleep> Sherline is selling emc through their secure store for $20 for 2 cd's.
[20:47:24] <Jymmm> Well, that's probably duplication charges.
[20:47:31] <Jymmm> PITA Tax
[20:48:26] <Phydbleep> $20 for $0.20 worth of CD and <$0.30 for the label and case?
[20:49:30] <Jymmm> Phydbleep : Yes, PITA Tax. If you are too lazy to download it, We'll back it available to you, but you're gonna pay for the convienance.
[20:49:39] <Jymmm> s/back/make/
[20:50:28] <paul_c> Phydbleep: You using sherlineonline.com ?
[20:50:29] <Jymmm> Phydbleep : In other words.... They really don't want to, but will upon request.
[20:50:56] <Phydbleep> Nope, Was just looking at the outrageous prices. :)
[20:51:37] <paul_c> the two disk set is well old...
[20:52:39] <paul_c> thesherlineshop.com is flogging bdi-4.18 @ $17.50
[20:52:59] <paul_c> that is outragous !
[20:53:12] <Jymmm> how big is BDI ?
[20:53:34] <paul_c> With the Sherline files, a single disk.
[20:53:42] <Jymmm> single floppy?!
[20:53:45] <paul_c> 648Megs
[20:53:49] <Jymmm> oh, heh
[20:54:09] <Jymmm> I was gonna say.... $18 for a FDD, that is just rude.
[20:55:00] <Jymmm> silly question, do any of the disc have a link to download from?
[20:56:37] <Jymmm> should change the license to read "IF you charge for duplication, you must provide a link to download from as well"
[20:56:56] <jmkasunich2> why?
[20:57:31] <Jymmm> jmkasunich so just let the dumbasses be dumbasses?
[20:57:31] <Phydbleep> To keep emc from being sold as a commercial product.
[20:58:28] <jmkasunich2> for folks with dialup, being able to buy a CD has real value... I got my first two BDI's that way
[20:59:02] <Jymmm> jmkasunich That's fine, I'm just saying for those that aren't aware that it's available for download.
[21:00:24] <jmkasunich2> agreed... if you mean that the seller must point potential buyers to a download link, that is one thing, but if the seller must provide the download bandwidth themselves, that is another
[21:00:44] <jmkasunich2> suppose John Doe has only dialup, and spends the hours to download the disk
[21:00:45] <Jymmm> jmkasunich Just provide a link, not necessarily host it themselves.
[21:01:01] <jmkasunich2> realizes "god that was a pain, I should make copies so other folks don't have to do the same"
[21:01:07] <jmkasunich2> he can't host it, he has dialup
[21:01:39] <Phydbleep> He can link back to the main emc/bdi pages for the download link.
[21:01:42] <Jymmm> that sounds link the BitTorrent concept
[21:02:00] <jmkasunich2> not really
[21:02:12] <jmkasunich2> bittorrent doesn't do a thing for the receiver
[21:02:14] <Jymmm> jmkasunich "...make copies for others"
[21:02:33] <jmkasunich2> it only helps when you have multiple people attempting to dl at the same time
[21:03:09] <jmkasunich2> doesn't matter - as long as you agree that he doesn't have to host it himself, then I'm with you
[21:03:28] <Jymmm> jmkasunich : Nah, just a link to the source is all.
[21:03:37] <Jymmm> s/source//
[21:04:09] <Phydbleep> jmkasunich: Yeah, The link could even be a torrent file, They just have to provide the alternative to buying the cd.
[21:05:01] <Jymmm> Eh, a http link would be better, many dont even know what a torrent is
[21:05:25] <Phydbleep> Plus it makes sure that people know where to find new versions if the link is back to the main emc download page.
[21:06:15] <Phydbleep> * Phydbleep thinks it would probably suck to be told "Oh, You paid $20 for the OLD version"..
[21:21:59] <jmkasunich2> hey ray!
[21:22:26] <jmkasunich2> made it back (and your wife let you in)?
[21:22:40] <rayh> Hi John. Yes to both.
[21:22:44] <jmkasunich2> ;-)
[21:22:57] <Jymmm> rayh how much were the flowers?
[21:23:06] <rayh> Lots.
[21:23:20] <Jymmm> heh
[21:23:35] <rayh> Good to be home.
[21:23:35] <Jymmm> or should I say diamonds?
[21:24:02] <rayh> A bit tired from all the driving.
[21:24:14] <anonimasu> iab
[21:24:37] <anonimasu> did you come to a conclusion about the toolchanger?
[21:24:44] <jmkasunich2> no
[21:24:49] <rayh> Linuxcnc.org down or is it just me.
[21:25:06] <anonimasu> jmkasunich2: howcome?
[21:25:13] <jmkasunich2> looks down to me
[21:25:17] <rayh> I was impressed with how well the old tool turret took to the new software.
[21:25:46] <jmkasunich2> anonimasu: the discussion didn't last too much longer after you left
[21:25:59] <jmkasunich2> especially when robin showed up and slightly hi-jacked it
[21:26:03] <anonimasu> * anonimasu nods
[21:26:15] <anonimasu> well, I guess we cant aim to make eveyone happy.
[21:26:17] <rayh> We had a four bit signal from the encoder.
[21:26:30] <jmkasunich2> rayh: how did you guys hook your tcl code to the rest of emc?
[21:26:34] <rayh> That gave us 1 ->8 for tool number.
[21:26:42] <anonimasu> jmkasunich2: or what do you think?
[21:26:59] <rayh> We did a compare in tickle with desired tool number.
[21:27:19] <jmkasunich2> to be honest, right now my plate is too full with other stuff
[21:27:31] <rayh> kicked off the indexer raise and spin and waited for numbers to match.
[21:27:46] <jmkasunich2> but how did you get the tool number out of task, and how did you tell task that the toolchange was done?
[21:28:13] <rayh> I turned on the stop air and added a bit of delay after the match and it
[21:28:23] <rayh> sat down perfect every time.
[21:28:38] <jmkasunich2> right - I understand that you were able to controll the changer with tcl
[21:28:46] <rayh> the file tkio has all of the tool commands from nml
[21:28:49] <jmkasunich2> the question is how did that tck talk to emc?
[21:28:59] <jmkasunich2> ok
[21:29:15] <jmkasunich2> and your tcl program was running under iosh?
[21:29:25] <jmkasunich2> or emcsh?
[21:29:36] <rayh> Get the tool number from tool prep. It gets that when the g code txx is issued
[21:30:18] <rayh> When tool change is issued (m6) the interp or canon reads the tool change pos
[21:30:33] <jmkasunich2> OK, I'm just trying to fit your tcl program into the pictures we were drawing at NIST
[21:30:35] <rayh> from the ini and moves there, tells the IO to change tool and waits.
[21:30:46] <rayh> it doesn't fit.
[21:31:02] <rayh> This is old code.
[21:31:03] <jmkasunich2> ?
[21:31:51] <rayh> We could have hacked bridgeportio almost as easily because it has the NML there
[21:32:10] <jmkasunich2> the basic picture (task_read calling interp which calls canon which queues things, then task_execute taking them off the queue and dispatching to motion or io) fits old code and new
[21:32:37] <rayh> Yes it does at the upper levels.
[21:32:57] <rayh> interp sends a tool prep command to io
[21:33:05] <jmkasunich2> so your tck code replaced the IO box on the drawing? or was it a new box alltogether
[21:33:12] <rayh> We pick it up and store the tool number in tkio
[21:33:43] <rayh> canon finds the tool change location in ini
[21:33:52] <Imperator_> Hi Rayh
[21:34:04] <rayh> it sends a move to tool change when m6 is encountered
[21:34:14] <rayh> Hi Martin. You getting rested up?
[21:34:33] <rayh> After the move to tool change position it tells the IO to change tool
[21:34:57] <anonimasu> I'll be back later..
[21:34:59] <Imperator_> jep
[21:35:03] <rayh> at which point we spin the tool indexer to the new position and drop it
[21:35:32] <rayh> tkio tells the status that tool #xx is in the spindle and task
[21:35:38] <rayh> sends the next motion command.
[21:35:45] <Imperator_> have you sean the page in the wiki ?? I have added my idea that i tryed to explain at fest, mabe you have sometimes time to add your idea
[21:35:54] <jmkasunich2> is there actually a "tool change position" on the lathe? I thought the tool turret just traveled with the slide, and you can change tools anywhere?
[21:36:03] <rayh> I was going there when linuxcnc.org crashed.
[21:36:13] <Jymmm> <rayh> sends the next motion command. Heh... Mill'in by Motown!
[21:36:33] <rayh> jmkasunich2: correct but we need to clear the longest tool
[21:36:45] <Phydbleep> jmkasunich: You should at least retract the turret from the work before it tries.. Just in case. :)
[21:37:30] <rayh> It would be nice if that position could be dynamic rather than ini but a fixed position is how the old one worked as well.
[21:37:32] <jmkasunich2> yeah.. but it sounds like on a lathe you _might_ want tool_change_position to be relative rather than absolute
[21:37:42] <rayh> Yep.
[21:37:43] <jmkasunich2> (ie. pull back 1 inch)
[21:38:30] <rayh> In fact it would be great to be able to read tool change position as clearance from tools between current and next in the tool length table.
[21:39:13] <jmkasunich2> gotta be carefull there... tool 1 = 1", tool2 = 2", tool 3 = 1.2", changing from 1 to 3 passes thru 2
[21:39:16] <rayh> If the cuttoff tool was #8 you only moved back that far if #8 was cycled past.
[21:39:21] <Phydbleep> tcp on a lathe should be X(doesn't matter), Y retract to -.5 (If 0 is surface of stock)
[21:39:59] <rayh> On a lathe, x does matter if it is a tool working from the side.
[21:40:27] <jmkasunich2> and it might matter which side as well
[21:40:34] <jmkasunich2> RH vs LH tools
[21:40:38] <Phydbleep> jmkasunich: true. :)
[21:41:08] <rayh> brb phone
[21:41:09] <Phydbleep> I was speaking of turning straight in only.
[21:41:36] <jmkasunich2> realistically, the part program will need to include a clearance move before the tool change
[21:41:45] <jmkasunich2> suppose it's a face grooving tool
[21:42:49] <Imperator_> normaly you go up to a safty plane
[21:43:01] <Imperator_> in the g-code program
[21:43:01] <jmkasunich2> on a mill you can make a Z move to clear the work, then go to tool change position from anywhere
[21:43:11] <Imperator_> jep
[21:43:16] <jmkasunich2> but with a lathe, it can be more complicated
[21:43:18] <Phydbleep> Yeah, LH would be +X -Y, RH -X -Y
[21:44:00] <paul_c> Phydbleep: Lathes (generally) do not have a Y axis
[21:44:40] <Phydbleep> And then there's the screwy situation where you run with the toolpost behind the work and the cutter is inverted.
[21:44:50] <jmkasunich2> I can never remember the lathe axis mapping
[21:44:57] <paul_c> X & Z
[21:45:05] <jmkasunich2> X is carriage, Z is cross-slide, or the other way around?
[21:45:16] <paul_c> 'tother way round
[21:45:30] <Phydbleep> paul_c: I labeld mine X = ways, Y = crossfeed, Z to be added, A to be added.
[21:45:38] <paul_c> Z moves towards/away from the chuck
[21:45:43] <rayh> Hi paul_c Got home and recovering?
[21:45:58] <Phydbleep> rayh: Was it a wild party?
[21:46:02] <jmkasunich2> Phydbleep: that seems more logical to me, but is different than the rest of the world
[21:46:23] <paul_c> Apart from a minor disagreement with the goons @ IAD
[21:46:26] <jmkasunich2> I have the same issue here - I'm gonna be doing one of those 3-in-1 machines, lathe/mill/drill
[21:46:57] <rayh> Wot. They didn't like your looks?
[21:46:59] <jmkasunich2> for mill mode, the axis would be X, Y, Z, but for lathe mode it would be Z, X, nothing
[21:47:02] <Phydbleep> X= Z1, Z = X1?
[21:47:30] <paul_c> rayh: Something about traces of explosives in my bag.
[21:48:10] <rayh> Out playing at Les's
[21:48:17] <Phydbleep> paul_c: Did you ask what did their wives want with the rdx for?
[21:48:19] <paul_c> guess they got a little upset about 8 hard disks in my carry on...
[21:48:43] <jmkasunich2> maybe they thought you were smuggling data
[21:48:48] <Phydbleep> paul_c: Spare brains. :)
[21:48:59] <paul_c> and I thought lighters were banned....
[21:49:40] <Phydbleep> They're supposed to be.. Anything with a pressurized tank.. Might get away with a Zippo
[21:49:47] <Imperator_> what about 5-axis interpolators and export regulation of the USA ???
[21:49:48] <daryl> Lighters, hair spray - ok. Allen key - no.
[21:49:54] <paul_c> walked right through with two in my pocket.
[21:50:35] <Phydbleep> paul_c: Leaving the US?
[21:50:42] <Imperator_> you walked out with a 5-axis interpolator, houuu
[21:51:09] <paul_c> Phydbleep: Left !
[21:51:45] <paul_c> jmkasunich2: BTW SCSI installs work.
[21:52:00] <jmkasunich2> with no changes?
[21:52:35] <Phydbleep> paul_c: That explains it.. You're not a citizen and you were leaving.. You could have proably got on with a 10kg satchel charge and been told "Have a nice day."
[21:53:35] <rayh> I figured out a way to pay off the us debt.
[21:53:59] <Phydbleep> rayh: Sell politicians as hot air generators?
[21:54:00] <rayh> You put a postal service at each of those checkpoints and charge
[21:54:29] <jmkasunich2> you mean to mail your pocketknife, lighter, etc home?
[21:54:31] <rayh> 20 bucks to fail that contraband but family heirloom to yourslef.
[21:54:37] <jmkasunich2> already being done
[21:54:45] <jmkasunich2> at least at the cleveland airport
[21:55:01] <paul_c> $1.5trillion @ 70 cents a shot....
[21:55:26] <rayh> Gotta start someplace.
[21:55:29] <Phydbleep> * Phydbleep is a firm believer that the crime rate would plummet if the general population was armed.
[21:55:41] <jmkasunich2> private enterprise, not gov't... unmanned drop bin, and a pile of envelopes... you put the item in and address it, drop it in the bin
[21:55:46] <Phydbleep> And probably a lot more polite. :)
[21:55:48] <jmkasunich2> dunno how you pay
[21:56:07] <Phydbleep> jmkasunich: COD shipping.
[21:56:18] <Imperator_> at the german airports they give you the choise to throw it away or to put it in an envelope to send it home, a letter box is also there
[21:56:23] <jmkasunich2> Phydbleep: probably right (about both the armed pop and shipping)
[21:57:22] <rayh> I did like the efficiency of the Frankfurt airport.
[21:57:23] <Phydbleep> Anybody else in here read Heinlein?
[21:57:30] <jmkasunich2> a little
[21:57:57] <daryl> Phydbleep... you talking about the us? I thought the general population was armed.
[21:58:00] <rayh> Phydbleep: What titles are you thinking.
[21:58:23] <Phydbleep> daryl: No, just dangerous. :)
[21:58:49] <Phydbleep> rayh: Moon iss a harsh Mistress, Star child, Couple of others. :)
[21:59:02] <rayh> You get the left arm and the right, and you got the right to keep and bear em.
[21:59:09] <jmkasunich2> daryl: where did you get that idea?
[21:59:24] <rayh> Time enough for love, the cat who walks through walls, friday...
[21:59:25] <Phydbleep> * Phydbleep wants the right to keep and arm bears..
[21:59:31] <rayh> Nope never heard of the guy.
[21:59:50] <daryl> American tv.
[22:00:06] <daryl> ;)
[22:00:07] <Phydbleep> .50 cal should be about right for a grizzly to swing. :)
[22:00:16] <jmkasunich2> the vast majority of americans are _not_ armed
[22:00:30] <jmkasunich2> a significant percentage may own guns, but they don't carry
[22:01:27] <Phydbleep> Some of the crazier ones (like me) believe that if someone wants to get shot, They'll bring the gun and bullets.
[22:01:54] <Phydbleep> * Phydbleep has far ruder things up his sleeves than guns.
[22:02:40] <Phydbleep> Did you know that composite ski tips make the sweetest crossbow limbs?
[22:03:23] <paul_c> do you mind if we change the subject....
[22:04:01] <jmkasunich2> ok... tell me about the SCSI install?
[22:04:34] <paul_c> Did an install from 4.21-test and it worked first time.
[22:04:59] <jmkasunich2> but not 4.20 I'll bet
[22:05:14] <paul_c> didn't try 4.20
[22:05:23] <jmkasunich2> is 4.21 uploaded and mirrored yet?
[22:05:30] <Phydbleep> Cool, 4.21 is ready to test?
[22:05:53] <paul_c> yes
[22:06:05] <paul_c> I'll email a copy over.
[22:06:13] <jmkasunich2> no thanks
[22:06:24] <Phydbleep> paul_c: If you have >256meg of ram how much swap does it want?
[22:06:32] <jmkasunich2> if/when I decide to install something on the HP server I'll use 4.21
[22:06:58] <paul_c> swap is usually twice the memory.
[22:06:59] <Phydbleep> * Phydbleep has a netboot machine to test on.
[22:07:16] <Phydbleep> So 768 for a diskless machine.
[22:07:51] <rayh> I was impressed with Matt's LTSP network.
[22:07:58] <jmkasunich2> ?
[22:08:08] <rayh> That seems like a very clean way to do these things.
[22:08:32] <jmkasunich2> what's LTSP (thought you said LISP at first)
[22:08:43] <daryl> Argh.
[22:08:45] <rayh> Linux Terminal Server Project'
[22:09:02] <daryl> paul_c, you using rtai-3.2?
[22:09:11] <Phydbleep> rayh: tftp/netboot?
[22:09:23] <paul_c> daryl: Yes
[22:10:20] <paul_c> jmkasunich2: 4.20 doesn't see the SCSI drive - That's a kudzu bug.
[22:10:21] <daryl> I just built it... copied /usr/realtime/modules/* to /lib/modules/.../rtai and did a depmod. It barfed
[22:10:45] <daryl> WARNING: Loop detected: /lib/modules/2.6.10-adeos/kernel/adeos/adeos.ko needs rtai_hal.ko which needs adeos.ko again!
[22:12:05] <jmkasunich2> that's what I figured out before fest... 4.20 uses version foo.36 of kudzu IIRC, the bug was fixed in foo.38 (and they're at something like foo.111 now)
[22:12:27] <daryl> Because of that one error, it appears to be refusing to do much of anything. Lots of messages like:
[22:12:28] <daryl> WARNING: Module /lib/modules/2.6.10-adeos/kernel/drivers/usb/input/touchkitusb.ko ignored, due to loop
[22:13:12] <paul_c> daryl: Does the RTAI tests run ?
[22:13:16] <daryl> Yup.
[22:13:28] <jmkasunich2> gotta go feed the dog (and me)
[22:14:20] <daryl> I did the copy and depmod thing because I thought emc needed that done. I can undo my copy and redo the depmod without it and give it a try.
[22:14:50] <LawrenceG> .
[22:15:53] <daryl> paul_c, as expected, I get unknown symbols from the rtai stuff if I don't copy over the modules.
[22:16:13] <daryl> (when I run emc)
[22:16:53] <Imperator_> paul_c: what can i do if the rtai test fails ?? that "run" script in /usr/realtime/..../latency/ dir
[22:17:54] <Imperator_> have updated dbi4-18 with 2.6.10 and rtai 3.2 because there was something wrong with the realtime stuff after the installation
[22:18:25] <Imperator_> that "run" script in /usr/realtime/..../latency/ dir frezes my box !!!
[22:25:23] <daryl> paul_c: Think I should rebuild the kernel with adeos in it, rather than as a module?
[22:27:04] <paul_c> just tryig soething...
[22:32:33] <Imperator_> have compiled it in
[22:33:45] <paul_c> trying a compile with some of the configure parameters...
[22:34:16] <daryl> compile of what?
[22:35:47] <Imperator_> rtai
[22:36:48] <Imperator_> i have compiled rtai into the kernel but it freezes when i run the test programs
[22:38:02] <daryl> paul_c: Just noticed that when building emc it gave warnings about the rtai module symbols...
[22:38:02] <daryl> Building modules, stage 2.
[22:38:03] <daryl> MODPOST
[22:38:03] <daryl> *** Warning: "rt_task_wait_period" [/home/daryl/emc/emc2/src/vitalmod.ko] undefined!
[22:38:07] <daryl> etc
[22:39:10] <daryl> Oh yeah... ignored those because the build script said to. ;)
[22:40:15] <daryl> Imperator_: I had problems like that orginally, I think. Once I disabled all sorts of stuff that I didn't really need in the kernel, it started working.
[22:40:40] <Imperator_> hm, i have done that also
[22:40:59] <daryl> ACPI and APM disabled?
[22:41:12] <Imperator_> jep
[22:41:37] <paul_c> processor versin ?
[22:41:52] <daryl> paul_c: me?
[22:42:09] <paul_c> Imperator_...
[22:42:27] <Imperator_> celeron 400MHz
[22:42:36] <Imperator_> i have set it to Pii
[22:43:01] <paul_c> try a plain old 586
[22:43:19] <Imperator_> ok
[22:43:43] <Imperator_> preentible kernel should that be on ?
[22:44:07] <daryl> Mine is on.
[22:44:15] <daryl> But that doesn't mean it should be.
[22:44:18] <Imperator_> here it is off
[22:44:47] <paul_c> what was that register option you had set daryl ?
[22:45:06] <daryl> [ ] Use register arguments (EXPERIMENTAL)
[22:45:12] <daryl> That may have been related.
[22:45:32] <daryl> In my experience it's generally good to not enable things marked experimental. :)
[22:46:08] <daryl> What kernel version you using Imperator_ ?
[22:46:20] <Imperator_> 2.6.10
[22:46:43] <daryl> The kernel I was using before defaulted with pretty much everything turned on (irritating).
[22:46:51] <daryl> At least the 2.6.10 kernel defaults with most things off.
[22:48:33] <Imperator_> what is better RTAI as module or to compile it in the kernel
[22:57:04] <paul_c> daryl: Dunno what is wrong with your install - Got exactly the same prob here with a SuSE 9.1 install.
[22:57:19] <daryl> I think it might be a depmod problem
[22:57:28] <daryl> I don't see why it thinks adeos depends on rtai_hal.
[22:58:50] <paul_c> rtai_hal requires adeos.ko, but certainly not the other way round.
[22:58:56] <daryl> yeah
[23:00:18] <daryl> The rtai tests use the rtai-load script and have a .runinfo in their dirs. Rtai-load does the insmoding it appears.
[23:01:47] <paul_c> All the BDI-4 installs use /lib/modules/`uname -r`/rtai
[23:02:14] <paul_c> and the emc modules go in /extras
[23:02:45] <daryl> Sure... but from the rtai point of view, is that the right thing to do?
[23:04:32] <paul_c> if it wasn't, why do they provide a --with-modules-dir option to configure ?
[23:04:47] <daryl> Who's they?
[23:04:54] <daryl> rtai?
[23:14:05] <paul_c> cfsodit - Looks like adeos needs to be built in to the kernel and not as a module.
[23:14:56] <daryl> cfsodit?
[23:15:23] <paul_c> compound "sodit"
[23:17:14] <daryl> * daryl must be stupid.
[23:17:30] <paul_c> some bright spark declared an array in adeos/x86.c and exports it in arch/i386/kernel/adeos.c
[23:28:25] <alex_joni> * alex_joni is back
[23:28:29] <alex_joni> g'morning
[23:28:36] <Imperator_> morning
[23:28:50] <alex_joni> heh.. what are you doing still up?
[23:29:25] <Imperator_> try to find out where the interpreter is now
[23:29:27] <paul_c> alex_joni: The same could be asked of you...
[23:29:33] <Imperator_> fred has changed something
[23:29:41] <alex_joni> paul_c: I just got home ;)
[23:29:42] <daryl> So... built adeos into kernel and tried the copy modules -> /lib/modules/../rtai depmod thing and get this:
[23:29:48] <daryl> WARNING: Loop detected: /lib/modules/2.6.10-adeos/rtai/rtai_hal.ko which needs rtai_hal.ko again!
[23:29:53] <Imperator_> and i wait that my kernel gets redy
[23:30:07] <alex_joni> heh
[23:30:10] <alex_joni> is it cooking?
[23:30:11] <Imperator_> so early
[23:30:13] <paul_c> daryl: What version of gcc ?
[23:30:19] <Imperator_> jep
[23:30:29] <daryl> gcc version 3.4.2 20041017 (Red Hat 3.4.2-6.fc3)
[23:30:44] <alex_joni> that's way too new
[23:31:36] <daryl> I'd really rather not install a new toolchain on that machine.
[23:32:05] <alex_joni> does www.linuxcnc.org work for you guys?
[23:32:33] <daryl> Resolving host....
[23:32:42] <Imperator_> nope
[23:32:47] <alex_joni> :
[23:32:49] <alex_joni> :(
[23:32:54] <paul_c> Yes.. very slowly.
[23:33:01] <Imperator_> it is down for hours now ??!!
[23:33:03] <daryl> Connecting...
[23:33:12] <alex_joni> daryl: I think it's not wise to use such a new compiler
[23:33:25] <alex_joni> at least not for rtai & co.
[23:33:40] <daryl> alex_joni: Yeah. I'd have to agree... How easy is it to install an older in in fc3?
[23:33:56] <alex_joni> should be a few rpm's
[23:34:10] <alex_joni> from the gui it should be pretty easy.. but I don't have a clue of fc3
[23:34:21] <daryl> gui
[23:34:21] <daryl> ?
[23:34:29] <alex_joni> somerpm frontend
[23:34:47] <daryl> I think it's easier to install bdi-4.20
[23:35:26] <alex_joni> I agree ;)
[23:35:37] <alex_joni> it's proven to have worked...
[23:35:51] <daryl> We'll see if it works on this mother board.
[23:35:51] <paul_c> I grew to dislike RH-7.2 and had a nasty time with RH-8
[23:36:10] <daryl> I really should move to something other than redhat... it's just habbit at this point.
[23:36:32] <paul_c> then had a bad experience with another RPM based install - At that point, I switched to Debian.
[23:37:12] <daryl> * daryl prepares to destroy the fc3 install...
[23:37:58] <alex_joni> I used to do SuSE
[23:38:14] <alex_joni> liked it pretty much... but since Novell took it over.. :-x
[23:41:42] <asdfqwega> "I used to do SUSE"...man, sounds like somebody kicking a habit
[23:42:53] <alex_joni> asdfqwega, after installing about 4-5 distros from SuSE (probably about 20 installs) it is a habit
[23:43:04] <alex_joni> a nasty habit ;)
[23:43:31] <daryl> * daryl picks up bdi-4.20
[23:44:11] <daryl> Here goes. Die fc3 die.
[23:44:56] <asdfqwega> [dons trench coat] Psst, hey buddy, wanna get some .rpms?
[23:45:08] <alex_joni> some fresh ones :D
[23:45:21] <daryl> * daryl runs and hides.
[23:45:22] <alex_joni> how about .. wanna get some packets?
[23:45:31] <asdfqwega> I used to do Mandrake
[23:45:51] <alex_joni> I got them in all flavours: .rpms, .srpms, .deb, .tar.gz, .tar.bz2 .. you name it
[23:46:06] <daryl> Somehow SuSE sounds prettier.
[23:46:22] <asdfqwega> As a metaphor, that just works TOO well :P
[23:48:08] <asdfqwega> * asdfqwega prods Phydbleep with a cattle prod
[23:49:28] <alex_joni> paul_c: still about?
[23:50:30] <paul_c> yup - For a few mins..
[23:55:39] <alex_joni> right
[23:55:48] <alex_joni> did you follow the toolchanger stuff?