the jogwheel thing from yesterday that has absolute and velocity mode which component is that?
it's already in the manual
* BigJohnT_ wonders why folks want to use a MPG for a jog button...
should the EMC2 and HAL chapter be moved from the Configuration section to the EMC Related HAL part and be with the rest of the HAL information?
it seems out of place where it is...
EMC: 03bigjohnt 07TRUNK * 10emc2/docs/src/gui/halui.lyx:
EMC: add foot to
EMC: 03bigjohnt 07v2_2_branch * 10emc2/docs/src/gui/halui.lyx: added foot to halui.mdi-command
wow this is the first time I've been able to download the live cd on dialup...
BigJohnT_ is now known as BigJohnT
did that take days?
was it ADSL?
that counts as dial-up
isn't that 128/128 usually?
that isn't asynchronous
ADSL2+M is 24 Mbit/s down, 3.5Mbit/s up
alex_jon1: could you check my account on sourcforge? I seem to be failing in sending emails to the list
or maybe it is me
[12:25:30] <skunkworks> http://www.pastebin.ca/1184185
odd - I changed my domain to mumblemumble
skunkworks: you need to have an postmaster account on your domain too
really? when did that change?
[12:34:12] <alex_jon1> http://alexandria.wiki.sourceforge.net/Mail+Problems+-+Spam,+Bounced+Mail,+Unreceived+Mail#s_no_postmaster
couple weeks ago I think
alex_jon1 is now known as alex_joni
alex_joni: that worked ;)
EMC: 03jepler 07TRUNK * 10emc2/docs/src/lyxdep.py: indicate the problem early when lyx file versions other than 221 are encountered
I'm considering how to make axis configurable for various combinations of rotaries.
the most limited approach is what I've already done: hard-code a particular configuration in the source code
(in this case, XYZBCUVW to match max5)
including configuring whether the tool or the work rotates, or not?
I suppose it doesn't matter, if the code can do either
slightly more flexible is allowing the user to specify a string similar to that one, which specifies the order in which the various translations or rotations are applied, including a minus sign to invert the sense of the next letter
so stuart's machine would become XYZ-ABUVW in that representation
can you put all the configuration-specific stuff in one place, so someone like stuart can see how to add a new configuration, and then eventually we'll have all the important ones?
then all we need is a way to pick between them, which is easy
oh I see - you want to write them all, all at once
in theory, if you have separate functions to translate and rotate each axis, all you need is a loop to iterate over the letters, and optionally invert the sign of the parameter sent to the "movement" function
yes, I already wrote the code
I guess the question in my mind is whether it's flexible enough
ok, whatever you did is probably the right way to do it :)
what does it not do?
it doesn't let you displace the center of rotation
isn't that just a matter of setting the linear axes' origins correctly?
cradek: yes, I think so
err - are you guys talking programmatically or mechanically?
SWPadnos: cradek is talking about emc configuration
defining XYZ 0,0,0 to be in the right spot with respect to the rotating axes
but the axes don't have to have intersecting axes of rotation
no, but where they don't have that, you have a pivot length (in your kinematics)
yes - that's the part that isn't in the AXIS code at the moment, right?
I think AXIS doesn't care about that
when you have the proper kinematics, then the gcode doesn't have to account for the pivot length (which is what you want)
hmm - I'd have to drink more to know :)
coffee that is
bring us some of your coffee. the stuff here is terrible.
it only shows the tooltip path and the tool vector
cradek: so you think this representation is probably OK?
heh - OK, when those tickets get below $1800 again
jepler: I don't feel like I know the answer to that
I'd say that it's an improvement, and if anyone needs the translation thing, they can add it
(or you will first if you find it an interesting problem)
I think the syntax to add a translation is pretty obvious: -1.0X -- but if I can skip writing it I'm happier
you'd end up with something like XYZ-1.0XB1.0X
to translate X before rotating B, then translate it back after
or whatever it ends up being..
would that also take care of the rotating work case? (like you were working on for gears cut on an A axis)
by rotating A before moving XYZ or something
hmm.. anyone knows where I could find a lathe chuck 3D model?
[14:15:26] <SWPadnos> http://sketchup.google.com/3dwarehouse/
nope, they don't have one ;)
yeah, I already searched the warehouse
this is with GEOMETRY=BX -- the cone is pointing an unfortunate direction, though http://emergent.unpy.net/files/sandbox/gear.ngc
all I see is text! :)
oops, meant to link to the image: http://emergent.unpy.net/files/sandbox/gear.png
SWPadnos: you should be able to parse that ngc
I did - the image wassimilar to the one jepler posted, only the cone was pointing a different direction :)
OK, I think I'll check it in
GEOMETRY is an ini setting?
yes -- [TRAJ]GEOMETRY seemed like the least inappropriate place
maybe DISPLAY or AXIS section - it's display only, not the trajectory planner that deals with it
mmmaybe you're right
ah -- using BZ makes the cone point the right way
hmmmm negating doesn't seem to work
unknown axis "-" :)
oh -- it was a "duh"
I reverse the string because the order that the transformations are applied is the reverse of the order I write them in the string
but then in the specification -BZ there is no axis that the - is applied to
are those arcs or lines on the gear perimeter?
it's all "straight lines"
a rotation gives you an arc even when it's a "G1"
that should be simple I think - the center of rotation is always 0,0 in the plane of rotation
wait -- what are you asking?
are you asking if the preview is made up of one straight line for each G1 move on the perimeter?
if it's possible/easy enough for the preview to show an arc when cutting is done by moving a rotary axis
yes, sort of
I'm wondering if the preview has straight lines for the peaks and valleys ofthe gear teeth
maybe this zoomed image will help to answer the question: http://emergent.unpy.net/files/sandbox/gear-zoomed.png
(slightly different gcode, using G0 and G1 moves)
err - it may - they seem more arc-ish there :)
the preview shows a curve even though the motion is written as G1
like axis' preview of arcs, it does an arbitrary subdivision of the move
ok, cool! - that's what I wanted/was asking about
I din't understand that, but it's OK
does this make any sense for documentation? I'm having trouble putting into words what GEOMETRY= does
[15:00:33] <jepler> http://pastebin.ca/1184301
let me digest that a bit. I think it's pretty reasonable, but I don't know if a "normal person" would need more
what does the BC do in the geometry string?
BigJohnT: that says when to apply the effect of the B and C rotary axes: UVW will be affected by the rotations created by B and C (because they're later in the string), but XYZ won't (because they're before)
take the simpler example: BZ
that makes the Z axis be rotated by B
so if you move out to Z1 and then move B, the entire cone moves around in a circle
if you wrote ZB, then doing the same thing would rotate the cone but the tip of the cone would stay fixed at the same spot
as it would in a machine?
it depends on the machine and on the kinematics.
so this is a way to display the backplot that more resembles the actual machine... Cool
yes, very cool
I think that a "normal person" might need a few examples :)
EMC: 03jepler 07TRUNK * 10emc2/src/emc/usr_intf/axis/scripts/axis.py: user-configurable preview of rotational axes
EMC: 03jepler 07TRUNK * 10emc2/src/emc/usr_intf/axis/extensions/emcmodule.cc: user-configurable preview of rotational axes
jepler: I think it's ok (the pastebin text), but another example can't hurt..
back at workshop I did something specific to chris's 5-axis machine .. hopefully this new code will cover other machines like archivist's (?) gear cutting machine and stuart's cinci
BigJohnT: one day we'll have vismach integrated in the AXIS preview with an exact model of the machine & tool :)
EMC: 03jepler 07TRUNK * 10emc2/docs/src/config/ini_config.lyx:
EMC: document [DISPLAY]GEOMETRY
EMC: fix some markup
BigJohnT: kidding.. jepler is probably preparing to take my head off
can I watch
* BigJohnT gets back to making chips
again - you guys are great.
SWPadnos: would this pass as a chuck? http://imagebin.org/24953
works for me, but I'm not the guy to ask ;)
it's not for turning .. so it should only resemble something :)
can't you make the base plate round (like the chuck itself)?
heh... that's because of the snapshot
it should be "fairly" round
this is a simulation tool, not the CAD to draw in.. so the exact shape is not that important
let the record show that alex_joni has offered to integrate vismach and axis
EMC: 03jepler 07TRUNK * 10emc2/src/emc/usr_intf/axis/scripts/axis.py: get rid of debugging messages
EMC: 03jepler 07TRUNK * 10emc2/configs/sim/axis_9axis.ini: specify geometry for this machine
ok I have that recorded on the records :)
EMC: 03jepler 07TRUNK * 10emc2/configs/stepper-xyza/inch.ini: specify the geometry for this machine
logger_dev: you didn't see anything
I'm logging. I don't understand 'you didn't see anything', alex_joni. Try /msg logger_dev help
couldn't GEOMETRY be the same as COORDINATES?
it could be, but you wouldn't put minus signs in COORDINATES
also, there's no dependency on the order of COORDINATES (AFAIK)
SWPadnos: I'm having some problems with Halscope ... and a question: How are "bit" type signals displayed? and can you sync on them?
The problem is false triggering.
BITs are displayed as either 0 or 1, and yes, you can trigger on them. I don't know if the level is automatic, the edge sensitivity is set from the rising/falling button
Lerman, also make sure the scope is in "normal" mode rather than auto
I get frequent false triggering on float values. The scope triggers and I can't find a value greater than the trigger value.
Yes. Running "normal" "single".
ok - just checking the basics first :)
when that happens, you should zoom out so you can see every sample displayed. I'm not sure how it decides which value to use when a single pixel represents multiple samples
Can't hurt. I'm having trouble getting homing to work. One problem is that my min and max Y limit switches were interchanged.
using one of them as the home switch as well, I presume??
The "f" value displayed on the bottom shows the distance to the trigger point as well as the value at the point.
Yes minlimit is the home switch. It would be nice if axis displayed different symbols when you hit the min and max limits.
yep, so you can find the trigger point easily, but since the pointer can only point at one pixel, I can't tell you which sample value is displayed if the pixel represents more than 1 sample
(But I guess you usually know which one you hit).
that would be nice
Then zoom in so that each pixel is only one sample.
Also, you shouldn't have to check override limits if you try to jog in the direction away from the limit switch.
But you need to check it even to enable the servos (on axis).
I think that's in the bowels of task actually
I can believe that.
you can't start up when on a limit, unless "ignore limits" is on
Bowels might be the right word.
start up meaning switching from machine off to machine on
lower intestine at least
Well, I have X and Y homing. Z is refusing -- I'm getting following errors. I think I need some more tuning.
Well. Cool except for this is "just" a conversion from emc to emc2. It shouldn't require this much effort.
if you have the old tuning values and the new values from some axis, then you may be able to use the same factors to calculate the new values for the other axes
or at least check to see whether they're in the same ballpark
well.. depends if the factor between the values is the same
if it's not, it gets tricky :)
you can still solve it with some newton ...
forgot the translation of that
[18:30:32] <alex_joni> http://en.wikipedia.org/wiki/Difference_operator
I remember some program I wrote in pascal a really long time ago that used newton series to mimic a certain function
you gavfe it pairs of values (input/output) to train it, and then (after constructing some polynome coefficients) it would calculate the output for other input values
[143471.401175] Default Trap Handler: vector 14: Suspend RT task df877000
does anyone have any hints for tracking this down?
cradek: do you only get it with the m5i20 driver loaded?
yes, I don't seem to get it in sim/axis or sim_step_cl
those don't load any RT drivers though, do they?
motion and all hal components are still in realtime
cradek: does halcmd show still work?
after the trap?
is this on hardy?
have you tried both m5i20 and hostmot2?
yes hardy, no hostmot2
I will try to trigger it again and then try halcmd
an interesting data point is that the 2.2 branch of m5i20 runs great
cradek: but we never set the watchdog-control to 3 in 2.2. ..
I think, anyway
I am using the same config, and it has that setp in it
does the same config run on 2.2 and trunk?
* alex_joni would have not expected that
cradek: ok, hmm
jepler: the bitfile in my 2.2 is one step older (with index mask, without watchdog fix)
sounds like this: http://osdir.com/ml/linux.distributions.emc.devel/2007-11/msg00001.html
yes halcmd show does still work
so do you see which thread is stopped?
the quoted text in this message suggests how to at least get an instruction pointer: http://osdir.com/ml/comedi/2003-01/msg00002.html
[18:50:20] <cradek> http://cvs.linuxcnc.org/cvs/emc2/src/hal/components/pid.c.diff?r1=1.33;r2=1.34
anyone spot it yet?
hmm.. not yet
more parens needed on the *(pid->satureated_count) ++; line?
EMC: 03cradek 07TRUNK * 10emc2/src/hal/components/pid.c: fix memory corruption crash
although (without looking) I assume that's a parameter and doesn't need dereferencing
I guess we'll see in a sec :)
cradek: see.. if you tune your servos properly it won't die :D
woohoo! at least I had the correct line :)
SWPadnos: with a typo
I'm a good typoist
cradek: argh, it was me?
IT WAS YOU!
* jepler hides and feels ashamed
I try to do something nice for you but you just complain that it's buggy and crashes your system
yeah I'm pretty ungrateful sometimes
back to trunk for me! yay!
I like the new AXIS message thingy, and the halscope save/load
yeah -- the message thing is a big "why didn't I listen sooner" kind of thing
* alex_joni still thinks emc2 should have a log with these..
cradek, BigJohnT http://wiki.linuxcnc.org/cgi-bin/emcinfo.pl?Simple_EMC_G-Code_Generators
gui for engraving "yay" uses qcad fonts
fenn, you helped too! thanks
LawrenceG: you da man!
open source software is inspiring
LawrenceG, one suggestion on the bezel maker: the number of divisions might be easier if it's "Major Divisions" and "Minor Divisions", instead of total ticks and "major every N"
so the one you made would be 11 major and 3 (or 4, depending) minor
yea... it takes a little playing, but the visual feedback is immediate
yep - not a big deal, but it occurred to me that I'd be more likely to know that I want a 0-10 knob with quarter subdivisions than one with 37 total ticks :)
(actually, I'd probably want 41 total ticks - that one only goes from 0-9 ;) )
you can have anyway you want it! fenns code for parsing qcad fonts is a gold mine.... they are very nice stroked fonts rather than ttf fonts that are meant to be filled
I guess I should get back to building up this computer - bbl
lunch time here... cu
i think the fonts are originally from the 'hershey' collection
cxf_fonts.tgz is 488kB which is over the wiki limit of 215kB; how do i put something in the dropbox?
fenn: tell me the URL and I'll see that it gets there
there's not an automated way for someone to do it, but I think I have the necessary shell access
its at http://fennetic.net/pub/irc/cxf_fonts.tgz
semi-long-lived copy at http://linuxcnc.org/dropbox/cxf_fonts.tgz
LawrenceG: you still around?
off to my fab shop...
cradek: hm, tell me if this is not a terrible idea: from the "A" channel of your spindle, use a simple circuit to produce an "A Delayed" signal, and use that as inputs to a quadrature counter.
sounds pretty terrible to me
for a fixed speed, it might be ok
I want it to work reliably from about 100-3000 rpm
BIT10 CounterMode 0 = quadrature 1 = up/down
looks like the old hostmot also has up/down mode
hm -- did the hal_m5i20.c modifications not get checked in yet?
doesn't look like
cradek: here's what I think you do in the wiring to use up/down mode (which I'd actually call step+direction mode): wire "B" to VCC if you want to count up, and wire "A" to the one output of the spindle counter.
it will count up on each rising edge of "A"
I will try it.
hm, I won't be able to tap. I will want a new encoder eventually.