#emc-devel | Logs for 2009-12-21

[00:32:36] <jepler> why is the angle in the XY plane the only one that is interesting (out of all possible, um, 36 pairs?)
[00:34:03] <jepler> what is the outut when there's no movement on that plane?
[00:34:04] <jepler> output
[00:34:16] <jepler> does this angle "wind up" or not, say if you do G2 circles forever
[00:34:37] <jepler> does it do much better than using a custom ddt+atan2-type component
[00:53:48] <Dave911_> Dave911_ is now known as Dave911
[03:03:24] <cradek> I don't think that's adequate for a knife machine anyway, and I agree it sounds like clutter
[03:04:43] <cradek> seems to me knife machines can be run excellently by writing smart gcode. this is especially true for emc because we can interpolate a rotary (C) move during an arc
[03:05:13] <cradek> I suspect anything else is just not going to work very well
[03:06:03] <cradek> you could even use a gcode filter to add the rotary moves
[11:49:51] <micges_work1> micges_work1 is now known as micges_work
[17:03:54] <alex_joni> cradek: is there any threading improvement that is not part of 2.3.4-1 ?
[17:04:16] <cradek> yeah, totally redone
[17:04:38] <alex_joni> got a friend that has issues with a 30-slot wheel
[17:04:56] <cradek> using interpolated position?
[17:05:42] <jepler_> jepler_ is now known as jepler
[17:10:11] <skunkworks_> big dreams
[17:10:12] <skunkworks_> http://cnczone.com/forums/showthread.php?t=94452&highlight=emc2
[17:15:51] <jepler> I feel like Frank T. deserves an answer about rtnet and timing, but the only answer I have is "you gotta try it and let us know for the sake of posterity"
[17:17:23] <jepler> I couldn't care less about ethernet; I don't understand the excitement about it
[17:17:53] <alex_joni> it's got neat connectors
[17:18:11] <skunkworks_> and pretty decent isolation.
[17:19:04] <jepler> what I think: It would be neat if there was an "open source" fpga board design that could run hostmot2, even if not many people would use it
[17:19:22] <alex_joni> pci based?
[17:19:26] <jepler> *shrug*
[17:19:28] <alex_joni> or ethernet connected?
[17:19:52] <jepler> pci or parport would be the obvious choices imo
[17:20:27] <alex_joni> hmm.. jone is doing a lot of work because he's afraid parport is going away
[17:20:40] <alex_joni> I doubt that will happen in the next 5 years though
[17:21:34] <jepler> this hypothetical board would be intended to work with emc with as few driver changes as possible. ethernet means big driver changes. parport, pci (or any fast local bus) mean almost no changes required
[17:22:18] <jepler> if you ask me again in the future after there's a proven ethernet design that works with emc2 (hostmot2 or other), I'd change my answer on whether you should combine hostmot2 and ethernet into a tasty fermented beverage
[17:22:42] <alex_joni> I think mesa is working on an ethernet connected 7i37
[17:22:42] <skunkworks_> heh
[17:22:55] <alex_joni> err.. not 7i37
[17:23:31] <jepler> the
[17:23:59] <alex_joni> 7i43
[17:25:32] <jepler> putting an ethernet jack on the same board as an fpga is the easy part
[17:28:34] <cradek> "if I've understand right, beagle-board is a small computer, based on CPU and memory. This architecture is not favorable to this embedded system."
[17:30:25] <cradek> hmm, I kept reading, and I guess I just don't agree with his goals - I wish him all success.
[17:44:05] <jmkasunich> he sure wants to re-invent a lot
[17:44:12] <jmkasunich> sounds like I used to sound
[17:53:27] <micges> jmkasunich: used to?
[18:00:31] <jmkasunich> I haven't wanted to re-write EMC for a long time ;-)
[18:12:11] <skunkworks_> jmkasunich: you took something inflexable and made it flexable.
[18:43:15] <jepler> I think you're excused from rewriting software from the ground up after the first time
[18:45:26] <cradek> I wish we (?) had rewritten task too, before we all got tired
[19:41:15] <alex_joni> cradek: it's just a break
[19:55:28] <CIA-62> EMC: 03micges 07joints_axes3 * rb907c86d9210 10/src/emc/usr_intf/axis/scripts/axis.py: In Axis show current velocity in joint mode
[20:10:19] <jepler> micges: how does that display make sense
[20:10:35] <jepler> at least the metric/inch conversion is obviously senseless
[20:11:40] <jepler> unless, uhhhh, are you displaying cartesian velocity together with joint positions? that also doesn't seem to make sense
[20:11:50] <jepler> * jepler scratches his head
[20:13:52] <micges> good question...
[20:19:33] <micges> yep this isn't correct
[20:28:07] <Dave911> Hi guys ... since you were talking about tangential knife type applications ... is the thought that a component can be added to the hal to derive the tangential vector without messing with the Motion component? Has that been done for things like a vinyl cutting machine?? Big X-Y gantry machine with a Z air cylinder and a C axis for the knife direction.
[20:28:09] <Dave911> I'm thinking that the FPGA proposal guy is about 23 years old ....... ;-)
[20:29:35] <micges> Dave911: here messing with knife will be done soon
[20:29:38] <jepler> Dave911: I've never had a blade machine like that, but it seems like you need to have the blade oriented at the beginning of the move before the tip enters the paper. so you can't just look at the current tangential velocity.
[20:29:53] <jepler> I am pretty much sure you should just suck it up and program the blade direction through C-axis moves :-P
[20:31:11] <Dave911> jepler: hahaha .... if only my customers had such expectations .... all of the commercial tangential apps do the C axis moves as part the CNC control.... I like your thinking though... Where are those CAM guys when you need them! ;-)
[20:31:39] <Dave911> micges: cool ... so you have an active application...
[20:32:14] <skunkworks_> I would think that could also be written as an input filter.. (pre-proccess the gocode coming in to add the c axis)
[20:32:21] <jepler> Dave911: I have the luxury of not caring about customers
[20:32:33] <Dave911> I know of a customer who has been struggling with WinCNC for about 3 years trying to get a decent CNC control out of them for a tangential knife app.
[20:33:41] <Dave911> jepler: I'm jealous ..... ;-) There seems to a be a lot of bonehead customers right now ... way cheap... (of course they are not my customers ... ;-) )
[20:34:19] <Dave911> skunkworks: Input filter .... yep I can see that as a solution also ..
[20:35:47] <Dave911> cradek: I was chatting with you about Python Debuggers before. WinPdb or something similar. I loaded up a Java IDE known as Eclipse and it has a add in called PyDev. I just got it loaded but it looks pretty cool. Editor and Debugger all in one... It took a little while to get it setup but it is very interesting ..
[20:37:01] <micges> git seems down
[20:37:54] <jepler> cradek is aware of the problem.
[20:38:58] <Dave911> Guys .... what would be a good example program to look at for creating an input filter.. Any come to mind - right off the top of your head?
[20:47:43] <skunkworks_> uh oh...
[20:48:46] <seb_kuzminsky> micges: if you merge master into joints_axes3 it'll fix the buildbot failures that just happened
[20:49:17] <seb_kuzminsky> well, maybe it wont fix the "update failed" ones, but the "runtests" ones should work again ;-)
[20:49:28] <micges> I know, thanks :)
[20:50:20] <seb_kuzminsky> ok cool
[21:27:30] <CIA-62> EMC: 03micges 07joints_axes3 * r802b44003473 10/src/emc/usr_intf/axis/scripts/axis.py: Revert "In Axis show current velocity in joint mode"
[21:31:17] <cradek> for tangential knife: you "just" need an input filter or a custom interpreter
[21:31:36] <cradek> doing it at the backend won't work - you have to do it at the front end (IMO)
[21:32:23] <cradek> since it's a 2D problem maybe it would be more appropriate to accept dxf/hpgl than gcode
[21:33:06] <skunkworks_> didn't someone make a input filter for dxf..
[21:33:11] <skunkworks_> or start to..
[21:38:29] <skunkworks_> http://wiki.linuxcnc.org/cgi-bin/emcinfo.pl?Simple_EMC_G-Code_Generators
[21:39:16] <cradek> this is so easy to do if you have the vectors... later when it's chopped up into servo cycle rate position samples, it's way way too late
[21:40:02] <jepler> if you're at some position and you know the tangent there is theta, you don't want to slew to that angle over the next 1ms .. you want to be at that angle at the start of that ms
[21:40:56] <cradek> yes and I can't see how it's possible to ever start a move
[21:41:39] <skunkworks_> you would have to predict the future.
[21:43:12] <Dave911> Input filter for DXF ... wow, that would be no easy task. I'm just thinking about how much stuff I need to tell a CAM package to turn a DXF file into Gcode ....
[21:43:14] <Dave911> I think that Mach3 handles the C axis generation at the planner stage. I've tested Mach3's tangential knife operation and it works... sort of. At the time the project was delayed anyway and then I ran into some things that really turned me off as far as a Mach3 solution and tangential knife. I wouldn't propose it to a customer.
[21:43:40] <cradek> taking a 2d import is easier for a knife machine, since the output is 2d
[21:45:08] <cradek> yes you could certainly handle it in emc. you could handle it in the gcode too. but adding a hal output that says "I'm going left now!!" is totally useless
[21:46:43] <CIA-62> EMC: 03micges 07joints_axes3 * r5d7864b71179 10/ (15 files in 7 dirs): Merge branch 'master' into joints_axes3
[21:47:37] <Dave911> Perhaps the entire filter idea is the right way to go... I can see that once it is at the hal level it is probably way to late as there is no way to look ahead and see what is next...
[21:47:39] <Dave911> Mach3 picks up the knife when the turning angle is greater than a specified number of degrees. That way the material doesn't tear when making a right turn due to the blade spinning in place.
[21:48:33] <cradek> yep that's just another case like the start of a move
[21:48:45] <cradek> depending on the knife involved, maybe that angle is different
[21:48:47] <jepler> the control should do what the gcode says
[21:48:50] <skunkworks_> we have some commercial knife cutting machines.. I would have to look and see if it picks up the knife on sharp corners.
[21:49:09] <skunkworks_> never noticed.
[21:49:09] <jepler> I am having trouble putting on the hat which allows me to say that G0X1 / G0Y1 should perform Z moves
[21:49:38] <cradek> I can sure imagine a knife machine that takes 2d vector input and cuts along it in a useful way
[21:50:11] <jepler> on the other hand, I have a stubborn friend who says that cutter comp mode should never "add arcs", and that's clearly nuts, so maybe in a similar way I'm on the wrong side of this argument.
[21:50:12] <cradek> I don't know/care if gcode would be involved
[21:50:47] <cradek> jepler: nah - he's just wrong :-)
[21:50:55] <cradek> stubborn does not make right
[21:51:11] <jepler> cradek: but do you see the analogy I'm making?
[21:51:17] <cradek> certainly not
[21:51:20] <jepler> oh
[21:51:21] <jepler> forget it then
[21:51:43] <cradek> (yes)
[21:52:31] <cradek> I think the two sane approaches are 'special pluggable interpreter' (not necessarily taking gcode - infrastructure not yet present) and 'input filter' (that makes gcode including Z moves)
[21:52:45] <Dave911> jepler: I was trying .... ;-)
[21:52:49] <jepler> since I re-added biarcs to truetype-tracer I'm wondering if 2.4 shouldn't get a new text on its splash screen. http://emergent.unpy.net/files/sandbox/new-splash.ngc http://emergent.unpy.net/files/sandbox/new-splash.png
[21:53:28] <jepler> the letter shapes look excellent zoomed in, too
[21:53:34] <cradek> pretty
[21:53:45] <cradek> but ... all those youtube videos of the old one...
[21:55:01] <jepler> I guess all those people will have to submit new videos
[21:55:07] <cradek> (italicize the rectangle?)
[21:55:17] <jepler> anyway, it'll be a way to gauge penetration of 2.4
[21:55:23] <cradek> I like how it meets the g
[21:55:26] <cradek> yeah
[21:55:50] <cradek> what's the font?
[21:55:51] <Dave911> fwiw.. that is nice!
[21:56:33] <jepler> #define TTFONT "/usr/share/fonts/truetype/freefont/FreeSerifBoldItalic.ttf"
[21:56:47] <jepler> whatever the old one was didn't exist on my new system
[21:57:10] <jepler> this one exists on all of 5.10 (who cares), 6.06 (who cares), 8.04, and 9.10
[21:57:46] <alex_joni> micges: around?
[21:57:47] <cradek> I like it
[21:58:05] <alex_joni> micges: seen http://www.linuxcnc.org/component/option,com_kunena/Itemid,20/func,view/catid,31/id,1366/lang,en/#1366 ?
[21:58:28] <cradek> jepler: those are the best font outlines ever. that's slick.
[21:58:37] <skunkworks_> I find this oddly scifi http://www.youtube.com/watch?v=RmsjTILE9ik
[22:00:20] <cradek> jepler: maybe we should put a truetype-tracer plug in the comments
[22:00:29] <micges> alex_joni: yes I've tested it for him yesterday, it works
[22:03:44] <jepler> http://emergent.unpy.net/files/sandbox/new-splash-r2.png http://emergent.unpy.net/files/sandbox/new-splash-r2.ngc
[22:06:02] <alex_joni> those feel a bit too flowy for me
[22:06:08] <alex_joni> e.g. not really technical
[22:07:10] <alex_joni> how big is it compared to the old logo?
[22:07:15] <jepler> similar size
[22:08:47] <jepler> the old is 0.45 .. 6.92" and the new is 0.42 .. 6.94
[22:08:51] <jepler> so it's .04" bigger
[22:09:49] <jepler> and .02" taller
[22:10:16] <jepler> what it should really do is set the scaling factor #3 so it always fits on the current machine
[22:11:01] <skunkworks_> are the limits of the machine accessable?
[22:11:05] <jepler> to the GUI? sure
[22:11:07] <skunkworks_> from gcode?
[22:11:16] <jepler> the GUI would modify the #3=... line before loading the part program
[22:11:26] <jepler> no, they're not available from gcode
[22:11:35] <skunkworks_> wow..
[22:12:01] <skunkworks_> that might freak people out. ;)
[22:14:10] <jepler> another idea would be to have a splash gcode contest .. 2D, under 1500 lines, fits within some reasonable limit like 4x7" that should work in all but the smallest systems..
[22:15:15] <jepler> alex_joni: point taken about the font
[22:15:24] <jepler> I wanted something curvey because ttt does that so well now :-P
[22:27:37] <jepler> we could always go with http://emergent.unpy.net/files/sandbox/retro-splash.png
[22:27:44] <jepler> (from the font called 'CBM')
[22:30:03] <jepler> bbl all
[22:42:57] <alex_joni> jepler: lol :)
[22:43:08] <alex_joni> between the two, I like the curvey one better :D
[22:43:49] <cradek> heh, I love it
[22:44:29] <seb_kuzminsky> it looks like it should have the space invaders sprites attacking from above
[22:44:40] <SWPadnos> or a pac-man or something
[23:56:32] <micges> cradek: new task should have many cool feature like reverse gcode run, jog during pause, definable RFL, hal pins for task, clear interface to interpreter (to allow interp change), support for adding new NML messages, have some infrastructure to definable G and M gcodes
[23:56:56] <micges> just named few ;)
[23:57:49] <micges> I'll create wiki for some thoughts about it
[23:57:55] <micges> good night all