maybe the home icon should be a little house
I can't tell if you're serious or kidding
yes - both
but the house icon would be more accurate for showing that the machine is in home position
well - several people have asked what the target means. it's not obvious that it means "homed"
but ... it comes on when you home
well, there is that :)
well I'm actually serious, it seems very discoverable, even if it's a total nonsense symbol (which I don't think it is)
does it turn off if you hit home again?
a house would be a pun, which would bother me I think
(until homing is finished)
if you have homing motion, yes it turns off until home is reestablished
if you aren't looking at the display when homing (like - looking at the machine, with a hand over the esc key), then you may not notice that it's a result of homing
the only other precedent we have in other guis is the different colors for the numbers
and it never turns off (unless you home again)
I think that's equally discoverable, but probably not as clear
not a problem, but I think K'zan isn't the first person to wonder what the target is
(and useless for 10% of men)
This is a very late reply but IMO we are a machine control and machine control is in essence different from other software and we ought to make certain that folk do not overlay their understand of "office" widgets with machine control actions.
[14:02:24] <alex_joni> http://www.lenauschule.de/img/url.gif
I think most people call it the emc2 livecd
looking at Ray's email, it dawned on me that we have no way of making core_stepper.hal automatically load the correct number of stepgens
Yep. Saw that also.
when you didn't need to specify step_type, you could use loadrt stepgen num_chan=[TRAJ]AXES
but a bit late.
no, I mean that there's no way to make it automatic, not that you forgot to put it in
Should have used the mesa examlpe throughout
true - he'd already have the DACs anyway
incidentally, that brings up another HAL issue
You might have guessed that I'm riding one of my favorite horses this morning. I named him "edgy."
there's no way to tell a driver what it should find
so I can't say "there should be two mesa cards, don't load if you find 0, 1, or >2 cards"
heh - there's the problem with autodetection
[15:12:08] <alex_joni> http://dsplabs.cs.utt.ro/~juve/emc/cd-cover/
see you guys later
whee -- I finally hooked pluto-step up to zenbot. it works quite nicely.
Yea. Another success.
of course I'm not cutting anything, so for all I know it could be way off the path
but G28 goes back to the reference location after running some gcode, so I'm optimistic
about 38k steps per second (1.2 in/min, SCALE 32000)
I'm using a 2kHz servo cycle
I use the go back to start a lot during testing.
btw does anyone see a downside to making 'loadrt threads' default to a 1kHz thread with floating-point? this would make doing quick tests with halrun just a tiny bit easier, since so often that's an acceptable thread setup...
(if thread1= period1= nofp1= are specified they would still be used)
I see the advantage for first timers.
oh, and "daisy" sounds fine on it; very important
(actually i have a feeling that if the step generation were uneven it would be pretty clearly heard in that program)
yeah it would also simplify some of the examples in the hal torturial
I'd think so. The ear is a pretty good way to test those sorts of things.
I'm trying to work through that now and will use it in class.
are you updating it as you go? a lot of the screenshots and texts don't quite match what has been changed over time.
I see that. I'm a bit conflicted about the fix up. Local v repository.
I've found that it doesn't work to save as 1.3.7 from the new lyx.
pissed me off a bunch.
unfortunately there are some serious barriers to getting the same lyx version on both dapper and hardy
but I don't want to talk about that now; it'll just get me down
if it's best for you to write in some other version (or even other format) in preparation for your presentation/classes, please do -- I'll do what it takes (later) to get it into the online / dapper / hardy documentation
I'll take notes as I work through it.
I do like the newer LyX. It has some very handy graphical features and some better work with float fitting and such.
So I may work in that and then we figure a way to move it to 6.06.
I'll keep those docs separate from my repository so I don't screw things way up.
whatever you feel is best. even if you commit by mistake, we can go back in time with cvs.
time to get away from the computer
(well, as soon as this gcode finishes and I MDI G28 anyway)
[17:29:43] <jepler> http://git.unpy.net/view?p=zenbot.git;a=blob;f=pluto.hal;hb=master
<-- the hal for pluto-step is actually short and sweet
.. and we're back at the reference point
rayh: you around?
just got back from HGR
that nice panel with breakers and outlets was sold yesterday
What did you get?
I did get the 2kva xfmr with the quad box on it
and I got 12 power strips at $1.49 each
You're better than I at figuring amps on the output of that. What will we be able to draw on each side?
2KVA = 16.67A at 120V
I haven't looked to see if it is split 120/240 or just single 120
I'm guessing the latter
That's what it looked like to me.
there is also a fuseholder mounted on the side - since there is only the one, I'm guessing it is secondary
looks like the size that would take a KTK or similar fuse
I'd bet split 240 since those are common duplex receptacles.
this is not to big or heavy - maybe 30 lbs tops
dual secondaries, wired in parallel for a single 120V output, black, white, and green heading into the quad box
FNM20 fuse on the secondary
Sounds like it's wasting some of it's potential.
dual primaries, currently wired in series for 480V
That will work no matter what Roland has for us.
2KVA = 16.67A at 120V, its fused at 20AA
Oh right. I was thinking 16 each side.
It does nearly double what was there last year.
incoming connection is a approx 0.8" knockout (1/2" trade size?) with a 45 degree liquitite fitting, and about 1" of liquitite
somebody disconnected it with a large cutter
I've got some liquidtite in the shop. I'll bring a chunk.
the LT is about 0.82 OD, dunno if that is 1/2" or 3/4" trade size
1/2 uses about a 7/8 opening
3/4 uses 1 1/8
ok, the knockout is definitely 1/2
Is that .82 ID or OD
Gotta be half.
looks like there is a ring that is part of the fitting, but its not crimped to the stub of LT
hopefully those aren't unobtainium
They do make non-crip. Usually have a plastic ring.
Nah. I'll bring extra fittings.
it was marked $39.99 but I got it for $30
Good price IMO.
I remember 2 years ago we had developers and their primary boxes separated from display and test areas.
Do we want to try that again this year?
rayh: - maybe you can answer.. we are planning on being there thrus,fri,sat.. How much extra should we pay roland above the weekend rate?
I think I'd take the regular rate - weekend rate / 5 * 2 and a bit for gratuity.
rayh: I think it was fine last year with us right next to the mazak
Guest604 is now known as skunkworks
jmkasunich, Got a question about threads if you've got a minute.
hal threads or 3/8-16 ;-)
I'm thinking base thread in a 3 axis stepper
I see read, make-pulses, write.
Now thinking about one tick of the thread. Does it do all three functions in sequence each time.
read, make pulses, write, go to sleep till next time
Okay. I'm trying to figure a good way for me to illustrate the way that threads work.
work instructions for an assembly line - "for each part that comes down the line, do these steps in this order, then you can doze off till the next part"
Yea that's about it.
Say I've got a couple of ddt's connected in series. Do both work on the same data during the same thread?
both run in the same thread
the signal propogating thru them can be delayed if you have them in the wrong order
Right. I can see that.
if you have input ---> ddt1 ---> intermediate ---> dd2 ---> output
you should run ddt1 first
Okay I think I've got at least a part of it.
ddt reads input and writes intermediate, then ddt2 reads the new value of intermediate and writes it to output
IOW, ddt1's calculations affect its output signals immediately
(I think thats not the way the PLCs you are used to work, but to do it that way could cause huge delays if there are many blocks in series)
So all of the functions assigned to a thread are done in the order for each tick of the thread.
I see that there is only one function for ladder and that is as it should be for the way a ladder works.
cradek: I have a question about 5-axis (as on max5)
starting at X0 Y0 Z0 A0 B0 C0 U0 V0 W0
if I move G0W1, then A90 will I get the same result as A90 then W1?
(same end pose - I realise the intermediate pose won't be the same)
* alex_joni ponders going to bed
seems like a good idea.. good night all
jmkasunich: I think you're supposed to (is there something degenerate about the case in your question?)
I'm just making sure I understand what W does
and where its origin it
what I have in mind is setting W to something like 0.25, then doing all kinds of BCXYZ moves
then set W to zero, and repeat all those moves
the first set should give me a twisty groove, and the second one should deepen the groove
(If I properly understand the way W works)
jmkasunich: imagine W moving the controlled point up and down the tool
thats what I thought
so if I put it 1/4" beyond the end of the tool, I can cut a shallow groove, then repeat with it on the end to get the final depth
That was a fun adventure. I found a combination in qcad that would loop without end and add something to memory on each loop, well long enough to run this box out of memory. It began eating stuff like x, and gnome, and firefox and ....
jmkasunich: yes I think so
oh, nother question
combined angular and linear moves
feeds tend to be "mysterious" in that case aren't they?
as in I should use inverse time?
it's not a mystery, but yes inverse time is best
let me find the docs
[23:40:37] <cradek> http://www.linuxcnc.org/docview/html//gcode_main.html#sub:Feed-Rate
ok, so for moves that may contain an arbitrary mix of axes, I should compute which has the farthest to move, then calc the time using the appropriate rate (either ipm or deg p m) and finally invert that time to get the feed
I don't see how it helps to decompose it into the various axes
so I know whether it is limited by a linear axis or an angular one
you know the approximate distance the tool will move on the part
you know what rate you want (ipm), so you know the time
for X0A0 to X0.01A90, I am angular limited - so many degrees per minute
for X0A0 to X1A1, I am linear limited, so many inches per minute
with inverse time feed mode, it doesn't matter what the distance units are, that's the point
but I have to tell it how long the move should take don't I?
yes, in minutes
ok, X0A0 to X0.01A90 - to compute that time, take 90 divided by my max angular feed rate
no, you should program the feed rate you want
it may go slower
but that's fine
you are confusing me
it's mutual :-)
background - I am not writing g-code
I'm writing code that writes g-code
move_to knows where you are
and where you want to go
say you want to remove meterial at nominally 1ipm
but it doesn't know (unless it calculates it) whether the limiting axis will be linear or angular
if you're making an angular cut of 90 degrees at 1inch radius, that cut will be pi/2 inch, so it should take 2/pi minutes
that's the inverse feed rate you can program
if X moves a tad, who cares, the cut length is about the same, the feed stays about the same
you just have to consider the length of the cut on the work, no matter how many axes move to make it
you are assuming that the tooltip is at 1" radius, and therefore moves (relative to the work)
what if I'm keeping the tip fixed in work coords (or moving it a tiny bit) but radically reorienting it?
the tip might not be cutting at all, but the shank could be
if it will be cutting, consider the "length" of cut the same way
it it won't be cutting, use a G0
(I think that's what makes this challenging)
for any cutting move, you consider how much will be removed, and the removal rate you want; this gives you a time
a strict interpretation of http://www.linuxcnc.org/docview/html//gcode_main.html#sub:Feed-Rate
says I can overspeed the angular axes
doesn't matter what moves to do it
go up one sentence before that header
so I'm using inverse time to allow me to specify two feeds, one angular and one linear, and generate a time based on the limiting one
you are saying don't worry about angular at all, just figure out how much of a cut you are taking and spec that time
I agree that is good if you know how much of a cut you are taking
the proportions between angular and linear feeds is fixed by the move
ok, I think I'm catching on now
does EMC respect the machine limits in inverse time mode?
in units per minute mode, it is sucky because you have to specify one, and the one it makes sense to specify changes
that's why there is inverse time
yes of course
well, axis limits, you know
ok, I'm remembering ancient stuff
if I tell it to make a mixed axis move in 0.001 seconds, it will decide which axis is the limiting factor, and move accordingly?
yes it will maintain coordination and respect limits
that would look the same as a rapid