#emc-devel | Logs for 2007-11-14

[00:03:35] <jmkasunich_> you can build anything with boxes and cones
[00:03:46] <jmkasunich_> (cylinder = special case of cone)
[00:04:00] <jmkasunich_> I don't recall if vismach supports cones or just cylinders
[00:30:36] <fenn> cone is just a tapered cylinder with radius 0
[01:00:19] <jmkasunich_> the generic kind of cone I was talking about doesn't neccessarily have radius zero at the end
[01:00:32] <jmkasunich_> truncated cone really - arbitrary radius at each end
[01:00:44] <jmkasunich_> if one is zero, its a true cone, if both are the same its a cylinder
[01:46:14] <cradek> jmkasunich_: yes it does cones (all those kinds)
[02:39:35] <CIA-18> 03cradek 07TRUNK * 10emc2/configs/5axis/ (5axis.ini 5axis.tbl 5axis.var 5axis_sim.hal README): simulated 5 axis XYZBC bridge mill
[02:47:23] <CIA-18> 03cradek 07TRUNK * 10emc2/configs/5axis/5axis.ini: fix editor, startup mode
[02:58:43] <CIA-18> 03cradek 07TRUNK * 10emc2/src/emc/usr_intf/axis/scripts/axis.py: more fallout from axis_mask stuff
[03:01:36] <cradek> jepler: would you please check that axis_mask fix for home and limit icons before I backport it?
[03:09:33] <CIA-18> 03cradek 07TRUNK * 10emc2/src/Makefile: for 5axis config
[03:09:45] <CIA-18> 03cradek 07TRUNK * 10emc2/src/emc/usr_intf/axis/scripts/5axisgui.py: get the home position right
[04:37:41] <LawrenceG> jepler: any suggestions on how to get started with xilinx webpack? Is there a blinking led tutorial or something similar?
[08:03:54] <alex_joni> cradek: the teleop stuff works by supplying a vector
[08:04:08] <alex_joni> but yes, that vector is defined along XYZABC(UVW?) axes
[08:04:24] <alex_joni> so you could teleop (1,0.2,0.1,3,2.5, 0)
[08:18:15] <tissf_> tissf_ is now known as tissf
[13:12:48] <jepler> LawrenceG: I haven't actually programmed any devices with xilinx ise yet. I have been using my experience with altera's IDE to get by in the xilinx tools, and originally I followed guides and hints from this website: http://www.fpga4fun.com/
[13:18:26] <jepler> LawrenceG: specifically http://www.fpga4fun.com/ISEQuickStart.html looks like it'll help you blink an LED
[13:49:19] <jepler> cradek_: I assume the problem before your change is that on an XYZBC machine, the home symbol for B would appear next to C and the home symbol for C maybe didn't appear?
[13:50:53] <jepler> ok, I see now where it appears
[13:50:59] <jepler> the fix you made sure looks plausible
[13:53:38] <jepler> hm I seem to have porked up lathe configurations somehow !?
[13:56:41] <jepler> but after fixing that, the lathe home symbols are broken :(
[14:00:50] <CIA-18> 03jepler 07TRUNK * 10emc2/src/emc/usr_intf/axis/scripts/axis.py: one additional home/limit fix needed for lathes
[14:01:32] <CIA-18> 03jepler 07TRUNK * 10emc2/src/emc/usr_intf/axis/scripts/axis.py: fix bug I introduced on lathes with rev 1.136
[14:03:08] <CIA-18> 03jepler 07v2_2_branch * 10emc2/src/emc/usr_intf/axis/scripts/axis.py: backport from TRUNK: fix display of home and limit symbols for machines with missing axes (e.g., XYZBC)
[14:03:26] <CIA-18> 03jepler 07v2_2_branch * 10emc2/debian/changelog: note new fix
[14:08:05] <cradek_> jepler: thanks
[14:08:22] <cradek_> do lathes still have special code? It seems like they shouldn't need it, or am I forgetting something?
[14:08:30] <cradek_> oh, the diameter thing I bet
[14:11:36] <jepler> yes
[14:11:45] <jepler> they depended on "Y" being there where "Dia" is displayed
[14:12:28] <cradek_> oh I see
[14:38:34] <alex_joni> hi guys
[14:39:45] <jepler> hi alex
[14:40:55] <alex_joni> what's up?
[14:43:06] <jepler> not much
[14:43:13] <alex_joni> that's always nice
[14:43:28] <jepler> I know I still need to test that pause/step change for you but I haven't gotten around to it yet..
[14:43:53] <alex_joni> no hurry.. it's mostly working already
[14:44:48] <alex_joni> today has been a pretty nice day..
[14:46:18] <jepler> toying around with the idea of a "key matrix scanner" component
[14:46:58] <alex_joni> da
[14:47:01] <alex_joni> sorry :)
[14:47:03] <jepler> currently trying to wrap my head around how the scanner and debounce would interact -- would one debounce the output of the scanner, or the input?
[14:50:36] <alex_joni> input usually
[14:51:24] <jepler> wow look at the dust blowing outside (from the construction site)
[14:51:36] <alex_joni> * alex_joni looks
[14:57:58] <jepler> so the scanner would have to scan each row for more than "debounce" periods, instead of moving to the next row each period
[14:58:58] <cradek_> jepler: I think the problem I'm having with soft limits on rotary axes is related to your change: not in range joint 5 target -360 maxlimit 180 minlimit -180
[14:59:21] <cradek_> I actually commanded 0 in this case
[15:00:56] <jepler> hmmmmm
[15:03:32] <cradek_> I homed, commanded C180, then C0
[15:04:11] <cradek_> with G0
[15:05:21] <jepler> when I originally imagined doing this, one of the requirements was that to do the tricky angle reduction, the previous position should be outside +-360 degrees, but I didn't seem to actually write that part of the code..
[15:06:51] <cradek_> did you see stuart describe the fanuc scheme for unlimited rotaries?
[15:06:59] <jepler> no
[15:07:30] <cradek_> if you command C90 it will go in the positive direction until it gets to 90. If you command C-90, it goes in the negative direction until it gets to 90
[15:08:04] <cradek_> of course that's clearly insane because 90 and -90 are the same position
[15:08:14] <cradek_> but, that seems to be one of the schemes some machines agree on
[15:08:33] <jepler> that's clearly nuts
[15:08:40] <cradek_> yes, yes it is
[15:09:05] <alex_joni> oh my
[15:12:01] <cradek_> cradek_ is now known as cradek
[15:17:39] <CIA-18> 03jepler 07TRUNK * 10emc2/src/hal/components/timedelta.comp: make this work on sim, even though latency-test is not particularly useful
[15:23:13] <CIA-18> 03jepler 07TRUNK * 10emc2/src/hal/utils/comp.g: 'personality' didn't show in manpages if it was used only to control array size
[15:52:35] <jepler> cradek: (I know you probably don't know the answer to this..) in the fanuc system, how do you command a movement in the negative direction to 0 degrees? Are C0 and C-0 different?
[15:53:00] <cradek> sorry I don't know
[16:29:58] <CIA-18> 03cradek 07TRUNK * 10emc2/bin/.cvsignore: basic 5 axis bridge kins with fixed pivot length
[16:29:58] <CIA-18> 03cradek 07TRUNK * 10emc2/configs/5axis/5axis_sim.hal: basic 5 axis bridge kins with fixed pivot length
[16:29:58] <CIA-18> 03cradek 07TRUNK * 10emc2/nc_files/cone.ngc: basic 5 axis bridge kins with fixed pivot length
[16:29:58] <CIA-18> 03cradek 07TRUNK * 10emc2/src/Makefile: basic 5 axis bridge kins with fixed pivot length
[16:29:59] <CIA-18> 03cradek 07TRUNK * 10emc2/src/emc/kinematics/5axiskins.c: basic 5 axis bridge kins with fixed pivot length
[16:30:02] <CIA-18> 03cradek 07TRUNK * 10emc2/src/emc/task/emccanon.cc: basic 5 axis bridge kins with fixed pivot length
[16:30:35] <skunkworks> bridge?
[16:31:42] <cradek> hmm, in at least AXIS on a metric config, the accel is teleop is wrong
[16:33:10] <cradek> skunkworks: a bridge mill where Z is on the bridge, C is on Z, B is on C, and the spindle is on B
[16:34:00] <jepler> looks a bit like this: http://timeguy.com/cradek-files/emc/5axis.png
[16:34:58] <CIA-18> 03compile-farm 07BDI-4.51 ( * 10emc2head/: build FAILED ; see http://linuxcnc.org/compile_farm/emc2head_slot6_log.txt
[16:35:08] <CIA-18> 03compile-farm 07Ubuntu 5.10 (breezy) realtime (2.6.12-magma) * 10emc2head/: build FAILED ; see http://linuxcnc.org/compile_farm/emc2head_slot2_log.txt
[16:36:31] <jepler> cradek: did you use "rtapi_math.h"?
[16:36:42] <cradek> um, oops
[16:39:59] <CIA-18> 03cradek 07TRUNK * 10emc2/src/emc/kinematics/5axiskins.c: oops
[16:40:01] <skunkworks> cradek: cool
[16:40:07] <CIA-18> 03cradek 07TRUNK * 10emc2/nc_files/cone.ngc: better entry
[16:41:28] <CIA-18> 03jepler 07TRUNK * 10emc2/docs/man/man3/intro.3rtapi: document rtapi_math.h and rtapi_string.h so I can point accusingly at people who don't remember to use those istead of the system includes
[16:41:41] <cradek> ha
[16:41:48] <CIA-18> 03compile-farm 07BDI-4.51 ( * 10emc2head/: build PASSED
[16:41:52] <CIA-18> 03compile-farm 07Ubuntu 5.10 (breezy) realtime (2.6.12-magma) * 10emc2head/: build PASSED
[16:43:03] <jepler> cradek: I ran 'cone.ngc' but I don't understand what is conical about it
[16:43:32] <cradek> imagine the part it's cutting
[16:44:51] <jepler> a beveled circle?
[16:45:17] <cradek> yeah, like you said, a cone
[16:45:54] <jepler> * jepler keeps pressing "v" on 5axisgui to cycle the preset views .. damn, still doesn't work
[16:46:00] <jepler> maybe it'll work if I press "v" again..
[16:46:52] <cradek> I'm getting occasional position jumps and "Exceeded soft limit" errors in some rotary moves - I wonder if your unfinished code isn't suitably disabled
[16:46:59] <cradek> or, maybe something else is wrong
[16:49:11] <skunkworks> cradek: a new project?
[16:50:12] <jepler> cradek: does the "C" axis on that machine have unconstrained rotation?
[16:54:20] <cradek> jepler: on stuart's yes, on mine, no
[16:56:02] <skunkworks> Ah :)
[16:57:32] <cradek> jepler: vismach is worth ... a million words
[18:40:33] <LawrenceG> jepler: thankyou for the link.... now to try and wrap my head around vhdl programming
[18:52:38] <jepler> LawrenceG: fwiw I started with verilog and stuck with it. it's much less verbose than vhdl..
[18:59:38] <LawrenceG> jepler: thanks... I have a mesa card and would like to learn about what I can do with 200k gates. There seem to be all kinds of uses for custom hardware
[19:20:19] <CIA-18> 03cradek 07TRUNK * 10emc2/src/emc/task/emccanon.cc: more battle with tiny moves
[19:20:19] <CIA-18> 03cradek 07TRUNK * 10emc2/src/emc/kinematics/tp.c: more battle with tiny moves
[19:22:28] <cradek> strange. with kins = BOTH, I can MDI and run a program without homing or switching to world mode
[19:30:48] <jepler> I don't think that's what's intended..
[19:40:44] <cradek> with nontrivkins, problems with tiny moves show up more easily
[19:41:13] <cradek> I've failed to make some full circles because of specifying the destination point equal to (what I think is) the current point
[19:42:20] <cradek> in the middle of a complex move from x=0 to x=0, I see x go up to 0.003 and back down
[19:42:40] <cradek> (but I don't understand why)
[19:42:55] <jepler> is the numeric stability of your kinematics so poor that it only works to 3 decimal places?
[19:43:30] <cradek> seems doubtful, it's very simple
[19:43:49] <cradek> I wonder if inverse and forward are run once cycle apart (with movement in between)
[19:43:52] <jepler> perhaps there's a bug in the __asm__ versions of the trig primitives that I borrowed
[19:48:03] <jepler> huh, contrary to what you said earlier, I can't put my 5axis sim in coordinated mode or run a program
[19:48:49] <jepler> * jepler can't quite figure out what's going on
[19:49:44] <jepler> in joint mode there are 6 joints shown, but 'home all' only homes 5 of them
[19:49:58] <cradek> just start it, machine on, mdi tab, g0x100
[20:01:15] <jepler> hmmmm .. this program fits within the little box shown by axis, but apparently it exceeds machine limits
[20:01:40] <cradek> it hits a limit when running?
[20:01:55] <jepler> yes, 728121: ERROR: linear move on line 4 would exceed limits
[20:02:05] <cradek> that's sure going to happen...
[20:02:10] <jepler> when "B" rotates, the available Z coordinates are different
[20:02:26] <cradek> the available everything coords are different
[20:02:40] <cradek> insert a longer tool and it gets worse still
[20:04:11] <cradek> (well once that works)
[20:09:21] <jepler> yeah
[20:10:46] <jepler> http://emergent.unpy.net/files/sandbox/cone.py
[20:11:38] <cradek> spirally cone shape?
[20:12:05] <jepler> yeah
[20:12:09] <cradek> neat
[20:12:16] <cradek> do check it in
[20:12:24] <jepler> I think that the head keeps the right orientation the whole time
[20:12:33] <jepler> though there's what seems like a spurious 90 degree offset in there
[20:12:38] <cradek> you didn't use inverse time...
[20:12:57] <cradek> I guess you don't really need it for this
[20:13:17] <cradek> but yeah, the 90 seems wrong
[20:13:32] <cradek> brb
[20:18:03] <cradek> pretty sure C0 should point in +X...
[20:27:40] <fenn> why would you need inverse time mode if your xyzabc refers to the tool tip?
[20:28:29] <jepler> I don't know, but one thing that comes to mind is that in a rotating move the parts of the tool other than the tip can be travelling faster than the tip
[20:35:37] <alex_joni> cool stuff guys
[20:35:41] <alex_joni> * alex_joni goes to bed
[20:35:47] <jepler> night alex
[20:35:50] <jepler> (gee it's early!)
[20:38:27] <cradek> If you look on the unmodified Ubuntu CD, you *will* find gcc. </paul_c>
[20:38:58] <jepler> possibly true, painfully irrelevant
[20:41:13] <alex_joni> jepler: half past 10.. quite early for me
[21:35:05] <cradek> oh look, motion/teleop is missing uvw stuff
[21:35:30] <cradek> but, I don't see why that makes the accel so wrong
[21:42:24] <cradek> wonder if something is wrong with servo_period in sim
[21:44:35] <jepler> it is the week for noticing that sim doesn't work, or works at best poorly