#linuxcnc-devel | Logs for 2015-06-28

[13:51:40] <kwallace> Oops: http://www.reuters.com/article/2015/06/28/us-space-spacex-launch-idUSKCN0P80NM20150628
[16:49:37] <kwallace> In looking at the section 9.5.4. Canon: http://linuxcnc.org/docs/html/remap/structure.html#_calling_conventions_python_to_ngc . What 'line' in 'emccanon.STRAIGHT_TRAVERSE(line,x0,y0,z0,0,0,0,0,0,0)' ?
[16:50:00] <kwallace> Oops, what is 'line'
[17:00:17] <cradek> the gcode program's corresponding line number
[17:07:47] <kwallace> As a guess...
[17:07:50] <kwallace> for i in range(num_pecks):
[17:07:51] <kwallace> z_target = z_start - ((i + 1) * peck_length)
[17:07:51] <kwallace> line = i * 2
[17:07:51] <kwallace> emccanon.STRAIGHT_FEED(line,x_start,0,z_target,0,0,0,0,0,0)
[17:07:51] <kwallace> emccanon.STRAIGHT_TRAVERSE((line + 1),x_start,0,(z_target - backoff_length),0,0,0,0,0,0)
[17:08:42] <kwallace> But it just does a feed to the last position.
[17:09:16] <cradek> these moves all come from one line in the gcode file, right?
[17:09:57] <cradek> if so then line should always be that line number or you'll make the guis behave really strangely. for debugging, you can turn on TASK ISSUE debug and see what it's generating
[17:11:56] <cradek> I have an old email from D Rogge saying that you added tapered threading to g76, and you were going to prepare a patch for linuxcnc for review. did you do that and I missed it? I would sure like to see that.
[17:12:48] <skunkworks> zlog
[17:13:03] <kwallace> Uh, well, I meant to.
[17:13:38] <cradek> (how is your g74 different from g83 or g73?)
[17:13:46] <cradek> heh I sure know how that is :-)
[17:15:12] <kwallace> It's just a peck drill with a G74 attached to be compatible with Smid.
[17:15:47] <cradek> oh I guess I don't know what that means
[17:16:13] <kwallace> http://wiki.linuxcnc.org/cgi-bin/wiki.pl?G74_-_Peck_Drilling/Face_Grooving
[17:16:39] <kwallace> Smid = https://books.google.com/books?id=w7-jBgAAQBAJ&pg=PA222#v=onepage&q&f=false
[17:17:11] <cradek> I've reached a page unavailable for viewing
[17:18:03] <cradek> well anyway, it would be interesting to see if you can use remap to do a canned cycle, complete with working in multiple planes and step/repeat
[17:18:18] <kwallace> Hmm, it works for me. I'll try something different.
[17:18:34] <cradek> ... or reached your viewing limit for this book
[17:18:40] <cradek> I don't know how it determines that
[17:18:48] <cradek> it's a google mystery
[17:18:58] <kwallace> http://www.amazon.com/CNC-Programming-Handbook-Third-Edition/dp/0831133473
[17:20:36] <kwallace> For now I'm trying to do a bare bones lathe peck drill, then expand it as I go. The remapping is not going too well for me so far.
[17:20:47] <cradek> Sign in to view the search results.
[17:20:56] <cradek> (sometimes I hate the internet)
[17:21:19] <cradek> well only the huge-companies part of it, not us normal folks
[17:21:47] <kwallace> Sorry about that, I try not to link to pages that need a login.
[17:22:06] <cradek> aside from the book can you tell me generally how a lathe peck drill is different from g83 or g73?
[17:22:11] <cradek> oh it's totally not your fault
[17:23:22] <kwallace> Basically, I think our users are used to G74 to invoke a peck drill, instead of G83 or G73.
[17:23:42] <cradek> oh it's the same except for the number?
[17:26:22] <kwallace> http://wallacecompany.com/tmp/Screenshot_Smid_G74.png
[17:28:05] <cradek> ok so it's a stripped down version of g73 or g83 (can't tell for sure which)
[17:28:20] <kwallace> http://wallacecompany.com/tmp/Screenshot.Smid_G74-2.png
[17:29:37] <cradek> could possibly do the remap in gcode, so it decomposes into the appropriate existing cycle?
[17:30:03] <kwallace> I'm not sure of the details. It might be a canned cycle which you can call once then just feed it new positions, but that would not make sense for a lathe.
[17:30:11] <cradek> looks like implicit R0
[17:31:39] <kwallace> http://wallacecompany.com/tmp/Screenshot_Smid_G74.png
[17:31:40] <cradek> it says "full length pecks" so I bet this is like G83
[17:32:19] <cradek> er no I guess it's G73 (chip break, not full retract)
[17:33:09] <kwallace> It's not clear to me what X is supposed to do.
[17:33:26] <cradek> surely it just sets the X location
[17:34:08] <cradek> I can imagine a grooving tool that makes sense to "drill" at X other than 0
[17:34:10] <kwallace> The last move sets the start location, so X must be an end location?
[17:34:31] <cradek> no, all the pecky motion is at X=whatever
[17:34:50] <kwallace> I think for the face grooving part of the cycle.
[17:34:59] <kwallace> Peck should be in Z.
[17:35:43] <cradek> yeah I think this is describing exactly the G17 G73 R0 type motion we already have
[17:36:01] <cradek> I can't see any difference
[17:36:42] <cradek> for those following along at home, the third image is http://wallacecompany.com/tmp/Screenshot_Smid_G74-3.png
[17:37:06] <kwallace> I think infeed one peck in Z, move to X end, retract a back-off length in Z, return to X start, next Z peck...
[17:37:38] <kwallace> Oops.
[17:37:40] <cradek> if that's described in smid I totally missed it
[17:38:17] <cradek> smid doesn't say what X does except "X0 for cutting on centerline"?
[17:38:47] <archivist> an odd statement on its own
[17:39:07] <kwallace> Hmm, I have another book mark... processing... processing...
[17:39:22] <cradek> I admit I'm mixing in metaknowledge of how the canned cycles we already have work
[17:39:48] <cradek> smid calls it "Peck Drilling" and I doubt it would be called that if it also cut sideways
[17:40:22] <cradek> bbl, banana bread is done, yummm
[17:42:57] <kwallace> http://wallacecompany.com/tmp/Screenshot_Smid_4.png http://wallacecompany.com/tmp/Screenshot_Smid_5.png
[17:44:01] <kwallace> http://www.helmancnc.com/face-grooving-with-g74-g-code-a-cnc-programming-tutorial/
[17:44:33] <kwallace> Yum, that does smell good.
[17:47:34] <kwallace> See G74 on this page: http://diy.haascnc.com/g-codes-lathes
[17:49:18] <archivist> that last one forgets to mention drilling with it :)
[17:52:39] <kwallace> I think it's all one algorithm that was found to be able to do drilling and grooving dependent on the input.
[17:55:19] <archivist> I can see that, I bet many dont face groove because of the tooling needed, just as easy these days with live tooling and then mill at a radius
[17:55:26] <kwallace> The only way to tell is to have one of each lathe and try all the combinations.
[17:56:28] <archivist> I have a rather odd double ended slide to think about one day, forward and rear tools
[18:00:30] <kwallace> Right off the bat, the Tormach lathe UI was made to be a rear tool setup, but with the base configuration being gang tooling, it seems front and rear tools are common.
[18:01:51] <archivist> I could use g74 with X on the drill just to move each drill into line http://www.collection.archivist.info/archive/DJCPD/PD/2013/2013_04_18_Bechler_N.AE/IMG_1529.JPG
[18:03:29] <archivist> bottom dual rocking tools http://www.collection.archivist.info/archive/DJCPD/PD/2012/2012_08_31_Bechler_N.EA/IMG_1338.JPG
[18:07:34] <kwallace> I think that is an early Swiss machine?
[18:08:31] <archivist> yes 1950's to 1960's
[18:08:37] <kwallace> http://www.cnc-training.com/tandp/jul03.htm
[18:12:54] <archivist> came from the place I used to work at as part of the redundancy package http://www.collection.archivist.info/searchv13.php?searchstr=bechler
[18:13:30] <archivist> lots to do to convert to cnc
[18:22:28] <kwallace> Is there a sub-spindle?
[18:24:20] <archivist> there are the three on the drill attachment and another on a screw head slotting attachment
[18:25:46] <archivist> cant remember if the three drills have rotation as well
[18:26:02] <kwallace> It seems one would need to fit a ball screw to the main spindle, each tool slide, and the sub-spindle. $$ Ka Ching $$
[18:26:52] <archivist> most of the screws are spring return acme is all you need
[18:28:17] <archivist> the biggest problem is multiple independent moves to get operation speed up
[18:34:05] <kwallace> If I understand correctly, motion is controlled by cams and return springs. The cams provide a set end point and feed rate. I'm thinking more on the lines that each spindle and tool slide would be an independent axis with position control along the axis travel rather than a set screw end point.
[18:36:24] <kwallace> My HNC lathe has a parting tool slide, just above the spindle: http://www.wallacecompany.com/cnc_lathe/HNC/00003-1a.jpg
[18:38:00] <kwallace> It uses set screws to set the end of travel, and hydraulic valves to set feed rate. The plan is to remove the hydraulics and fit a ball screw.
[18:38:53] <archivist> I am thinking of pushing the rocker arms from where the cams are
[18:46:00] <kwallace> No matter what, it looks like it will be a fair bit of work. I would tend to just restore the lathe to original condition. Although 'just' would be misleading.
[18:47:52] <archivist> project resting for the last few years :)
[21:11:25] <cradek> kwallace: I agree with you that the back-tool lathe view has to be added to gremlin, not hacked into .axisrc
[21:21:45] <kwallace> Too bad the Tormach version is just as bad, it does work though.
[21:31:47] <kwallace> I just found this, maybe, relating to the emccanon line variable:
[21:31:55] <kwallace> http://linuxcnc.org/docs/html/remap/structure.html#_the_em_argspec_em_parameter_a_id_remap_argspec_parameter_a
[21:32:04] <kwallace> https://github.com/araisrobo/linuxcnc/blob/master/configs/sim/remap/getting-started/python/util.py
[21:32:38] <kwallace> Section 3.3.4 in the manual
[21:34:53] <kwallace> Oops, looking closer, this might be for debugging.