#emc-devel | Logs for 2009-09-01

[00:10:10] <CIA-8> EMC: 03mshaver 07master * rb3a1730d62d3 10/configs/smithy/ (9 files): Fix PROGRAM_PREFIX to be compatible with pickconfig.
[00:52:31] <steve_stallings> cradek --- FYI, a source of high quality replacement balls http://www.precisionballs.com/
[01:57:19] <steve_stallings> steve_stallings is now known as steves_logging
[02:51:57] <cradek> yep thanks - that's where I got them last time
[02:52:32] <cradek> I love their pricing - you say what you need, then they tell you a seemingly-random price between $50 and $150 :-)
[03:05:02] <cradek> whoah, since last time, they have their prices and ordering online
[03:05:03] <cradek> woo
[03:16:28] <cradek> ... until it crashed
[03:49:54] <cradek> and it's back
[03:52:07] <cradek> heh, .2500+-.00001 is much cheaper than .2483+-.000025
[06:34:24] <micges_work> jepler: you forget to attach your probe patch to my last bug report on sf
[06:42:05] <micges_work> hi all
[07:35:11] <alex_joni> hi
[07:36:41] <micges_work> alex_joni: I still don't understand probe special condition in interpreter..
[07:38:38] <alex_joni> what part?
[07:39:21] <micges_work> after convert_probe probe flag is set on, what next?
[07:40:38] <micges_work> I don't see any conditions with it
[07:44:06] <micges_work> only in read()
[07:45:44] <alex_joni> hang on, opening the sources
[07:46:56] <alex_joni> ok, so first you have STRAIGHT_PROBE() in canon
[07:47:21] <alex_joni> which puts aa EMC_TRAJ_PROBE message on the interp_list
[07:47:46] <micges_work> yes
[07:47:53] <alex_joni> that one has a precondition
[07:47:59] <alex_joni> in emcTaskCheckPreconditions()
[07:48:10] <alex_joni> it's EMC_TASK_EXEC_WAITING_FOR_MOTION_AND_IO
[07:48:22] <micges_work> I see
[07:48:23] <alex_joni> so it doesn't get executed before all motion and io commands are done
[07:49:58] <micges_work> ok, that parts is working
[07:53:55] <micges_work> question is that why interpreter calls set_probe_data() if probe didn't finish executing?
[07:54:03] <micges_work> that's the case in that bug
[07:54:48] <alex_joni> hmm..
[07:54:55] <alex_joni> set_probe_data() is called from read()
[07:57:49] <alex_joni> so my guess is that interp() is moving on, although it shouldn't
[07:59:23] <micges_work> some special case becouse when loaded to axis like a program, everything works ok
[08:02:34] <micges_work> but thanks for explanation
[08:03:05] <alex_joni> I'm still looking at the sources
[08:03:18] <alex_joni> but it's a bit hard without actually running it ;)
[08:03:39] <alex_joni> my guess is that something happens in emcTaskExecute()
[08:04:53] <alex_joni> I would try to look at task.execState
[08:05:06] <micges_work> ok
[08:05:09] <alex_joni> maybe something happens to it, when switching to the file called by the MDI o-word
[08:05:14] <micges_work> will try
[08:07:02] <alex_joni> hmm.. I think I saw a bug
[08:08:26] <alex_joni> http://git.linuxcnc.org/gitweb?p=emc2.git;a=blob;f=src/emc/task/emctaskmain.cc;h=4bfc90174bcc5f15daa06a0839880a35cd3d0d7c;hb=HEAD#l2282
[08:08:43] <alex_joni> the else on line 2282
[08:08:53] <alex_joni> it should be for the if at line 2262
[08:09:00] <alex_joni> but I'm not sure the {} match up for that
[08:12:31] <micges_work> it's correct maching
[09:12:59] <micges> micges is now known as micges_plasma
[10:43:16] <micges_plasma> about ja3: (identity kins) when you have 4 joints and 2 axes, homed icons in Axis will never match their joints
[10:59:11] <alex_joni> 4!=2
[11:03:46] <micges_plasma> sorry supid question
[11:03:52] <micges_plasma> stupid even
[11:50:38] <jepler> micges_work: hmph, thanks
[11:55:42] <micges_plasma> jepler: motion.digital-out-nn should be set to 0 if estop occurs? or not?
[12:00:39] <micges_work> cradek wrote that it probably should, but not for sure
[12:03:22] <jepler> I am sure the docs do not specify.
[12:06:11] <micges_plasma> I see
[12:37:34] <jepler> I am in favor of someone who has a stake in the matter writing a spec that covers stuff like what happens to digital and analog outputs on estop, abort, m2, and whatever other conditions we've realized are problems
[12:38:20] <jepler> if the spec is sane, and it doesn't seem likely to break existing systems, and the implementation is good, then we should incorporate it.
[12:38:46] <jepler> "set digital-out-nn to 0 at estop" is maybe 1/8 of the total spec
[12:39:00] <micges_plasma> mhm
[12:42:26] <jepler> hi SWPadnos !
[12:42:45] <SWPadnos> hi
[12:42:59] <jepler> winbase.h:#define INFINITE0xFFFFFFFF
[12:43:12] <SWPadnos> I finally realized that I had forgotten to fire up Chatzilla after rebooting
[12:43:22] <jepler> we missed you
[12:43:23] <SWPadnos> (I was wondering why I kept getting work done the last few days :) )
[13:58:36] <micges_work> bbl
[14:41:34] <CIA-8> EMC: 03jepler 07master * r33b205e8d3c6 10/scripts/emc-environment.in: Export LD_LIBRARY_PATH
[14:44:10] <CIA-8> EMC: 03jepler 07v2_3_branch * rf5f3826aa008 10/scripts/emc-environment.in: Export LD_LIBRARY_PATH
[15:05:16] <cradek> hi seb!
[15:18:09] <seb_kuzminsky> good morning :-)
[15:37:17] <cradek> guess how my mesa stuff is working - that's right, perfectly
[15:37:55] <micges> like always ;)
[15:39:51] <cradek> last night pcw was talking about how the quadrature error count? flag? could be made available in hal
[15:40:04] <cradek> I think that would be super cool
[15:40:22] <micges> me too
[15:41:01] <micges> to many hours to badly wired encoders was spent ;)
[15:42:23] <cradek> with that and checking for index pulse drift, you could be very sure you would catch encoder noise errors and that would really help everyone sleep well
[15:43:00] <micges> yeah
[15:45:20] <seb_kuzminsky> it'd be easy to export that flag from the fpga to hal
[15:45:28] <seb_kuzminsky> i'll put it in my todo file
[15:46:49] <cradek> cool
[15:47:05] <cradek> I'll hook them to axis.N.amp-fault or however it's spelled
[15:47:13] <cradek> sometimes I think we need more "faulting" axis inputs
[15:48:26] <micges> such as?
[15:48:33] <micges> beside encoder-fault
[15:51:49] <micges> cradek: I think we need more general fault inputs besides estop-in
[15:52:32] <cradek> encoder fault, pid saturation, and a real (hardware) amplifier fault are three I'd like to have
[15:52:42] <micges> like toolchager-lock,
[15:53:30] <micges> what indicates second? mechanical lock ?
[15:54:18] <cradek> possibly
[15:54:23] <cradek> I think it is rare
[16:00:32] <cradek> maybe also loss of encoder signal could cause that (during axis runaway?)
[16:25:13] <micges> mesa doesn't have infrastructure to catch loss of encored signal?
[16:25:36] <cradek> how could it do that?
[16:26:21] <micges> hmm
[16:28:59] <micges> err I think that is not possible
[17:39:54] <jepler> maybe the fix is to rename the pin
[17:40:12] <jepler> (amplifier-fault)
[17:40:29] <cradek> so there'd still be just one pin, but we'd name it -something-was-wrong?
[17:41:23] <cradek> it's true that it's silly to try to list the things a user might want to choose for fault conditions and hardcode some message for each of them
[17:44:37] <CIA-8> EMC: 03jepler 07master * r655bb2187420 10/src/hal/components/Submakefile: 'manpages' is not a real file
[17:59:24] <SWPadnos> an external fault input (int) or fault input+fault type inputs, plus a list of user-configurable strings, would fix that problem
[18:12:01] <robh> if ur adding axis faults, how about some spindle fault inputs? as most vfds etc have a spindle truble/fault output
[18:13:40] <cradek> I hardwired my vfd fault felay in the estop chain
[18:13:44] <cradek> and relay
[18:40:40] <micges> imho there should be more fault inputs or they could be configurable like SWPadnos said
[18:50:18] <jepler> I see the "right" way as providing appropriately-named inputs to the realtime motion controller to make it drop into various desirable states.
[18:50:46] <jepler> hal realtime components can generate operator messages, and it's a mistake to think we can list all the desired operator messages and have a different input for each of them
[18:53:02] <jepler> "lp1 on fire"
[18:56:31] <micges> right we can't list all of them so maybe add 'num_faults=n' load time parameter for motion and create some easy way to define text to operatorError() when they are triggered
[18:57:42] <micges> or maybe connect tihs with defer-format modyfications and move defined text to user space
[19:08:55] <jepler> I like the idea of having N fault inputs (this is no worse than having a N-input OR gate, and maybe better), but making it something other than the motion controller that prepares the message
[19:09:09] <jepler> having an N-message catalog sucks compared to using printf-style formatting to create an appropriate message