#emc-devel | Logs for 2009-04-24

[02:29:41] <jepler> quiet night
[02:30:35] <jmkasunich> yeah
[02:31:13] <jmkasunich> my wallet is whimpering a bit (just won a couple ebay auctions)
[02:32:19] <jmkasunich> * jmkasunich gets busy on the job that will pay for that
[02:34:42] <cradek> yay for tax refunds!
[02:35:03] <cradek> is it an interesting job?
[02:39:02] <jmkasunich> more intake manifolds
[02:39:22] <jmkasunich> 48 of them this time - will be an interesting exercise in optimizing g-code
[02:39:49] <jmkasunich> and fixturing - I'm making a set of soft jaws so I can get a better grip on the raw casting for the first operation
[02:40:12] <jmkasunich> facing with the tormach face mill should be _much_ faster than using a small endmill, but I need a solid grip on the part
[02:41:09] <jmkasunich> I'm also gonna be trying out "drill-mills" (endmills with 90 degree drill points on the end)
[02:41:36] <jmkasunich> that will take me from 3 tools per part down to 2
[02:42:07] <jmkasunich> face it with the facemill, then drill the screw holes, touch up the bore, and chamfer everything with the drill-mill
[02:55:33] <cradek> ah cool, I've been wanting to try those for something too.
[02:55:55] <cradek> I thought you needed ball end for the bore though
[02:56:33] <jmkasunich> the carb end bore is just a very minor cleanup - a 45 deg chamfer will be fine for each step
[02:57:01] <jmkasunich> the block end gets more radical internal bore work (the casting cores aren't very accurate)
[02:57:09] <jmkasunich> but I think the 45 deg will work OK there too
[03:03:48] <jmkasunich> cradek: I thought if you had separate limits you don't even need override limit to get off of the one you are on?
[03:04:01] <jmkasunich> only need override limits if you are "on both" and EMC doesn't know which way is safe
[03:06:38] <cradek> that's incorrect. you always need to use override limits. if you have separate switches, it will only let you jog the correct way.
[03:07:03] <cradek> either way, you get only one jog and then the amps turn back off and you have to override again if you're still on the switch.
[03:07:21] <jmkasunich> oops, I guess I'm spreading misinformation
[03:08:05] <cradek> if you are on both limits, it has to let you do any old jog - that's the only difference as far as I remember.
[03:09:08] <cradek> what are you using for your soft jaws? some kind of plastic?
[03:09:44] <jmkasunich> steel
[03:09:51] <jmkasunich> just some scraps I had around
[03:10:04] <jmkasunich> "soft" in this case just means "machined to suit the part"
[03:10:15] <cradek> can you fit two on the table at a time to minimize tool changes? either the same end, or opposite ends like those motor mounts we did?
[03:10:38] <jmkasunich> I thought about that
[03:10:44] <jmkasunich> maybe I should think some more
[03:11:35] <jmkasunich> last time setup: http://willepadnos.net/jmkasunich/carb-flange-setup-1996.jpg
[03:12:03] <jmkasunich> the part needs to be clamped very close to the side of the jaws, and hangs down quite a bit
[03:12:10] <jmkasunich> that's why I had the vise on its side
[03:12:20] <jmkasunich> was gonna do the same this time, which means one part only
[03:12:47] <jmkasunich> but if I made the soft jaws hang out past the ends of the vise a bit, I could sit the vise upright and put a part on each end of the jaws
[03:13:15] <jmkasunich> I'm not using the same vise - the one in the pic doesn't have removable jaws
[03:13:46] <cradek> that sounds great if it will be able to tighten on both
[03:13:57] <jmkasunich> it would tighten fine
[03:14:07] <jmkasunich> in fact, it would be a more balanced load on the vise
[03:14:17] <jmkasunich> I think the problem will be supporting the lower ends of both parts
[03:14:30] <cradek> are you sure you need to?
[03:14:33] <jmkasunich> they'll have to be rotated 90 deg around Z from what they are in the picture
[03:14:56] <jmkasunich> I guess that depends on how hard I grab them
[03:15:17] <jmkasunich> its basically a 2-point mount, unless the other end is tied down
[03:15:35] <jmkasunich> the 3rd point makes things much more rigid, and much more repeatable
[03:15:51] <jmkasunich> even with soft jaws milled to seat the part, it isn't very stable for rotation around Y
[03:16:04] <cradek> I thought you'd have four if you could go around the ears with your custom jaws
[03:16:33] <jmkasunich> yeah, but it will be two pairs separated by maybe 1/4" tops
[03:16:33] <cradek> yeah I suppose not. would be better if the 'bottom' of the ears were flat, but I'm sure they're not
[03:16:46] <jmkasunich> nope, casting draft plus roughness
[03:17:27] <cradek> how about around the neck below the ears?
[03:17:30] <jmkasunich> lets see - 48 parts * 2 toolchanges doing it 1-up
[03:17:43] <jmkasunich> 24 parts * 2 changes doing it 2-up
[03:17:49] <jmkasunich> savings of 48 changes
[03:18:14] <jmkasunich> at 45 seconds each, = 36 minutes
[03:18:20] <jmkasunich> I bet I'd spend that on setup
[03:18:57] <jmkasunich> can't really grab the neck - 1) its thin walled, 2) would block the drill from coming thru when I drill the mounting holes
[03:21:07] <cradek> if you do 1-up and have jaws, maybe you can change parts much faster than you can change tools
[03:22:23] <jmkasunich> thats a thought
[03:23:22] <cradek> also you could leave the spindle going then, if that's a problem
[03:24:12] <jmkasunich> that depends on how safe I want to be
[03:25:14] <jmkasunich> doesn't end of program stop the spindle?
[03:26:18] <cradek> m2 yes, % no, iirc
[03:27:44] <jmkasunich> one of these days I'm gonna wire up that foot switch to the drill press
[03:28:05] <jmkasunich> the problem is I never think of it when I'm not in the middle of a project
[12:31:09] <CIA-1> EMC: 03bigjohnt 07v2_3_branch * 10emc2/docs/src/gcode/overview.lyx: minor edits
[12:38:07] <CIA-1> EMC: 03bigjohnt 07TRUNK * 10emc2/docs/src/gcode/overview.lyx: minor edits
[12:38:08] <CIA-1> EMC: 03bigjohnt 07TRUNK * 10emc2/docs/src/hal/pyvcp.lyx: minor edits
[13:07:53] <steve_stallings> steve_stallings is now known as steves_logging
[13:55:58] <jepler> I think what robert melville is suggesting is that in a system with both-limit-x, if emc was commanding x+ when the limit input went high, you can only jog x- off the limit
[13:56:14] <jepler> one input for the axis, but using extra information emc has to figure out which of two real switches it must have been
[13:57:08] <cradek> you may be right - good job divining that
[13:57:24] <jepler> read his message again and see if you think that's what it says
[13:58:02] <cradek> yes I think you are right
[13:58:56] <cradek> I can't decide what I think about that.
[14:01:02] <jepler> one way to hit a limit on a servo system is to loose feedback. if the axis was intended to be stationary when feedback was lost, it's even money which way it'll go. Imagine it went towards + but just before it hits the limit switch, emc starts commanding -. Now you can only jog further onto the limit switch.
[14:02:42] <jepler> I can come up with situations where this heuristic can be wrong, but they all seem pretty contrived
[14:03:23] <cradek> yeah there are all sorts of reasons you can hit a limit switch. I think the situation he's talking about, where he's jogging around on purpose, is fixed by homing + soft limits
[14:04:10] <cradek> for a machine without homing and soft limits, I can see where you'd want it more, since you'd regularly hit the switches - maybe even in normal operation.
[14:04:22] <cradek> like "lifting Z up to the top"
[14:05:08] <cradek> so I wonder what the real "use case" is here, and what problem we're trying to solve.
[14:05:55] <cradek> btw, please carefully spell lose "lose" to help stop the spread of that particular insanity
[14:09:34] <jepler> oh dear
[14:09:40] <jepler> I've done that twice recently that I'm aware of
[14:10:04] <cradek> maybe the internet is slowly making you stupid
[14:14:58] <jepler> I'd rather believe that than think I was always stupi
[14:14:59] <jepler> d\
[14:15:01] <jepler> argh
[14:31:45] <steves_logging> steves_logging is now known as steve_stallings
[14:32:47] <steve_stallings> I am pretty sure that Robert was indeed thinking about using knowledge of last commanded direction to supplement the decision about locking out movement.
[14:33:16] <steve_stallings> He is surely thinking about stepper systems. In that case the needed signals are available to implement his needs using HAL>
[14:34:05] <steve_stallings> A single limit switch pin can be fed to two EMC inputs based on last direction commanded.
[14:34:13] <cradek> I bet you're right - he may be able to rig it up in HAL.
[14:34:40] <cradek> IMO, his time would be better spent setting up correct homing and soft limits, though.
[14:35:17] <cradek> he could home to his existing limit switches with no hardware changes needed.
[14:35:45] <steve_stallings> Agreed, but sometimes that can be more than just an electrical thing. Many machines come with a single switch and two trip dogs on an axis.
[14:36:33] <steve_stallings> Also, many stepper systems users are struggling to maximize usage of the few available inputs on a parallel port.
[14:36:35] <cradek> yeah, but you can still home to that single switch and then have soft limits
[14:37:15] <steve_stallings> Yes, soft limits are a good solution. Many people, myself included, fail to take advantage of that.
[14:39:32] <jepler> 2 inputs (all limit, all home) is probably the setup I'd recommend for an input-limited system
[14:41:32] <steve_stallings> FYI, my Thinkpad boot problems got solved by BIOS settings, now I get to fix the wired Ethernet driver problem. I get to download and compile an installable module for the driver. Should be fun for a Linux newbie (still).
[14:42:12] <cradek> it's pretty easy to build a driver to suit your installed kernel nowadays.
[14:43:16] <cradek> (if the driver author/distributor has a clue)
[14:43:30] <steve_stallings> We shall see.... I plan to use another system with working net connection to do the build. Since both were installed from EMC live CD, I assume just copying over the compiled binary will work.
[14:45:00] <cradek> yes if they have the same kernel.
[14:45:10] <steve_stallings> Driver is from Intel, lots of info about this chip and 8.04 LTS available on the net. Early attempts at driver caused dead machines because driver left EEPROM mapped as R/W memory and other bugs in Linux wrote over it. Now solved.
[14:46:08] <cradek> dead machine??!
[14:46:57] <steve_stallings> Well, dead Ethernet port. At the time beta testers did not know what was happening and laptop vendors just replaced motherboards as the standard fix.
[14:47:13] <cradek> ouch, sounds very painful.
[14:47:35] <steve_stallings> Yea, some of the comments on developer forums were not too kind.
[14:48:41] <cradek> I suppose ibm does not make the needed information available.
[14:49:36] <steve_stallings> EEPROM was left mapped so ethernet tools in Linux could edit MAC address. Actual bug was related to function trace (ftrace) and malloc problems not caused by driver.
[14:50:10] <steve_stallings> IBM/Lenovo just recommends using maint release of 8.04 LTS or 8.10, either of which contains the fix.
[14:50:25] <steve_stallings> Unfortunately that avenue is not available to me if I want RTAI.
[14:50:26] <cradek> cool.
[14:50:41] <cradek> yeah, not easily anyway.
[14:50:58] <cradek> you would have to build it yourself, which is painful. building the driver should be easier.
[14:51:29] <steve_stallings> Hope to try this afternoon if things are relatively quiet at the office today.
[14:52:15] <steve_stallings> Matt will be my lifeline... 8-)
[14:53:35] <steve_stallings> steve_stallings is now known as steves_logging
[20:42:14] <micges> in TRUNK messages in rs274ngc_return.hh are not translatable even if they have _ prefix
[20:44:13] <jepler> thanks for the note. I'll fix it, I think I know the reason
[20:48:16] <CIA-1> EMC: 03jepler 07TRUNK * 10emc2/src/po/Submakefile: this file has user messages in it
[20:58:08] <CIA-1> EMC: 03eric-johnson 07TRUNK * 10emc2/src/hal/components/feedcomp.comp: Cosmetic change, mainly adding license information.
[21:01:40] <CIA-1> EMC: 03eric-johnson 07TRUNK * 10emc2/src/hal/components/joyhandle.comp: *** empty log message ***
[22:01:25] <alex_joni> BJT-Work: around?