so many meeps, so little time
wow ... there is life out hthere :)
a little anyway
I had a tough day today ...
guy bought one of my plasma systems off a customer who went bust ...
technically, its secondhand, I have no real responisbility to him
he thinks differently?
anyway, stupidly, I said Id help him out and set it up ...
turns out he cant even do a simple cad drawing ...
ctrl-c / ctrl-v to copy files just blew his mind
doing support for those folks takes SO much time
hell, I even had to show him where the - sign was ...
* robin_sz nods
sounds like he needs to get someone to help him in person
sounds like hes unsuited to cnc technology
too bad you committed without knowing what you were getting into
I guess you could always duck out
nah, he'll get the machine set up, I'll give him two afternoon sessions of hand holding
after that ... well its phone support and "see the manual" ...
I do machine support, not compter literacy classes
he must understand that at some level
* robin_sz thnaks his lucky stars he stopped selling them to people
so .. what gives at your end?
still working on axis
jeff's going on vacation tomorrow morning so I'm on my own
I might try to get it fixed up and release beta2 before he gets back
depends how the testing goes
this is the back plotter?
the new gui
* robin_sz hasnt been keeping track
[01:34:54] <cradek> http://axis.unpy.net
got some good feedback after last weekend (released it Sat.) but I don't think most people will use it until it's on BDI
I get a following error in nist.ngc
I *never* get following errors
is it fairly modular? eg easy to add custom tabs, different controls etc?
the beta works great, I'll help you get it running if you want to try it
well it's written in python so it's fairly easy to work on
adding stuff to the gui: not so easy
my next emc project will likely be for a press
* robin_sz nods
im likely to add various extra signals to emc, light guards on, pressure, bend angle, etc
being able to hook them into GUI components in a snae way would be a big plus
signals => messages
sounds like the gui is the least of your problems
well you have to start somewhere, and if my choices were tcl, X/athena, or python, I'd pick python
the biggest problem emc has is the hard coding of messages
I re-wrote tkemc in a modular form
and all the places you have to deal with each one explicitly
thats pure madness that is
which is basically the reason ive not done much with emc of late
I did start trying to re-write a lot of it to handle messages based on a single message type/class and the routing of the message based on some property of the message, not the actual static type
but it was too much for me ...
yeah that would be beyond me too
and sadly, I see no real future for emc until that is solved
I should be able to add a new spindle message, say, spindle_wibble_on
(assuming I have a spindle that can wibble)
adding a button to the GUI and a bit of code to the spindle module to handle that
shold not involve any other changes to the core of emc
that would sure be nice
thats the way it has to be ...
otherwise, it all fills up with weird messages no one needs, or you cant add messages you do need
like a pressbrake for example ...
I'll probably end up having to fork just to make up a pressbrak version
either that, or use existing messages
and try and remember what I used them for
there's plenty to choose from
but it gets very messy, very quickly
and .. I'd like a neat GUI
so I can do stuff to show exactly waht the metal orientation should be going into the press, simulate it bending etc etc etc
you are GUI look swell neeat :)
that sounds neat
axis has all of GL at its command
so it's a "simple matter of programming" as a coworker used to say
did you consider QT?
nope, I think it has a strange license
I just found a bug
that doesnt bother me much
oh it does me
you mean the bug, or the license?
helical arcs will cause following errors because the extra dimension isn't taken into account for the speed
if it involves paying, then so be it .. if its the best solution
If I felt that way I doubt I would be using or working on emc
you are just in it for the 'hobby' side of it then?
my real job is administering computers
I'd like to see it develop into to something useful for hobbyists and small businesses
I get the feeling most emc folks don't care about hobbyists
no, other way around I think
well, it complicated
I often hear things like "their machines are toys and I don't care about toy machines"
theres a lot of disagreement in various places regarding the code
thunderstorm here...losing the dsl line
personally, I'd like to see an 'open source' emc core
with a published LGPL interface to say, allow developers to write closed source GUIs
so a manufacturer of say small mills could have there own funky GUI
but any modifications to the core of emc would be gpl, so have to be made source avaialble
but that aint gonna happen
that might be a good idea, but why should we let them do closed source guis? That work can benefit the project
they still get the benefit of not having to write the engine
both the company and the emc project benefit then
no company is going to pay to have a GUI for their product written if they have to give the code away so their competitor can duplicate their product
have you heard of a small and partially succesful webserver called 'Apache' ?
funding is a reason...I have been pushing rtlinux apps in general with a large corporation
anyone know why I can't assign a bug to myself in the tracker?
the reason Apache is sooooo succesful is because you can build commercial apps on the apache core ... and many many compaonies contribute to the apache project because of that, thats why it is probanbly the most succesful open source project ever
argh really close thunderstorm...must go away a while...later
* robin_sz waves
I never worry about the weather bothering my computer or connection
as someone who likes to use emc for free, what does it do for me if a business can profit from emc?
it improves emc for you
say a company decides to build some emc powered maachines
they need a custome GUI
and say the motion queue fixing for 'segmotqueue'
so they hire a programmer ...
he fixes the core
and writes their gui
ok, point taken
as it is ...
that cant happen in emc2
so thats why companies will just use emcq
fix what they need
write the gui they nees
and keep the whole lot closed
I thnk we're missing out on possibilities
well, that's not what sherline did
I can download all their mods (but they're not anything useful)
I think you should talk about this at the Sunday meeting
um how many companies write their own cnc programs anyway? (this isn't web hosting)
fenn: almost all comapnies that use commercial CNC products write their own front ends
look at any modern cnc product
eg the Baldor 'MINT' stuff
Baldor provide the framework,
people develop their own front ends and apps
its a bit liek ...
well. say Python or Perl
the Perl/Python crews build the language
but devlopers use that to buld products
what license do the perl/python use?
Perl uses an 'artistic' license
duuno about python
the perl and python cores are GPL's
but not the stuff thats written in them
that could be any licence you choose
i'm not really sure about what counts as a "derivative work' or not
if some one took emc and cloned or modified the core .. that should be GPL, 100% certian
I think you should be able to build something with it thats not GPLd
like a GUI
that way companies can 'invest' a programmer
and still have something they can 'own' at the end of it
obviously, any GUI would have to be written form scratch
yeah but that should be really easy in emc2
impossible in emc2
because you have to use emc2 headers or something?
* asdfqwega needs to read more on GPL and OSS
in my opinion that limits emc2 to the hobby market
and will limit any potential commercialinvolvment to emc1
and probably means we'll never see any of the results
can't you re-license code if all of th contributors agree to do so?
(like that job that was advertised on the list)
yes you *could*
I imagine that would be like trying to herd cats...
you'd only have to do that to the signals and threading code right?
(blindlyguessing at code structure)
basically, youd need just the signals interface to be LGPL
so you could send commands on and see signals come back when stuff hapaned
are there really that many developers?
but thats pur GPL and unlikely to chaneg from what I gather
anyway ... I'll get moaned at for stirring soon :))
yeah its about bedtime
we ended up using Mach2 instead
its windows, but we write our own custom macros and screens for it ...
which was good.
but being windows it was bad
pseudo real time
(with emphasis on the pseudo)
i thought mach2 had some way of getting past the so-called "hardware abbstraction layer' and wasn't allthat bad
weell ... it almost does
compared to other windows controllers
but you still occasionally get no pulses for say 2 seconds
and then all the missing pulses turn up in a bunch
* fenn chokes
thats pretty bad
and the motion can be bad in places
i find it hard to believe that people wlil pay that mch money for stuff that doesn't even work
its dirt cheap
liek ... 50 dollars or something
up to 1000 lines of code per program
most of my gcode is sub 1000 lines anyway
so effectively its free
just a pity windows sucks so badly
well i'm off to bed
will be back in a month or two :)
sleep well :)
* robin_sz goes off to bed too
fenn is now known as rumplestiltskin
cradek you there
I can't quite figure out whether robin is in favor of GPL ("we'll never see any of the results [of commercial involvement in emc1]") or against it ("that limits emc2 to the hobby market").
GPL gets interpeted different ways by different people
jeff ... how much do you know about emc1
dave-e: the internals? Not much.
emc2 either for that matter
well, it is my impression that even when there is no movement commanded the servo loop should sample the encoder registers every cycle
You're already getting a blank look from me.
OK...maybe that is why no one has jumped on my post on the dev list.
I'm sorry I can't help you
the system does commanded movement...but then the axis drifts but the display doesn't update.
I keep hoping to get someone hooked by this so we can solve it.
are you displaying "commanded" or "actual"?
Maybe Fred or Will will answer.
going to bail...see you tomorrow
see you .. probably not tomorrow
hmm bad ethernet connection
hi paul, how's bdi-4 coming?
trying another install on a 433MHz board with a paltry 64Meg of memory.
Bombed out on me last night after running out of memory.
this is the linux cnc ish right?
i'm an engineering student... and i'm thinking about doing a EMC project for my graduating Major Project...
The topic kinda serves as a good description of what goes on in here ;)
hmm... i should definatly show up then...
i do have one quick question, though.... if it's ok...
We talk most days, so don't limit your self to Sundays
do you think six months would be enough time to get a small cnc robot up and running?
well not six months
more like 4.5
back in a bit - Have to hange a lightbulb
pemmet: do you mean you want to build the robot?
well i have access to some stand alone 3 axis robots...
that i could use with a linux box
and I have an old computer at home..
i'm not entirely sure what, the professor didn't give me all that information, but i could find out
it was actualy his idea, but it sounded like a really cool idea... and I think it would be fun to do..
wait, let me try to read his mind
MMMMM MMMMMMMMMM MMMMMMMMM
heh would you?
nope, didn't work
well.. nice try though
I need more practice
i'm sure you'll get it in time
at the most basic level, EMC puts out step and direction signals on a parallel port. You will have to figure out of you can get this to run your robot
but anyway, over the next semester, i would get a linux box, a 3 axis robot (which the profesor said woudl be perfect) and maybe make it mill a small little something by the end of the year...
if you want it to be useful, you'll have to write inverse kinematics so the robot can move to a spot on an XY grid, for instance
if you only want to impress your professor by making the robot wave around, you probably don't have to do that
it's not that kind of robot, i dont think
it can move x,y
and then spindle feed z
so the axes are all orthogonal?
so it'd be perfect for vertical milling on a small scale
but it's the concept that counts most
then it's child's play
well i'm also planning to throw some of my own machining into the mix...
i guess that's the plan in a nutshell
sounds by what you're saying, that i'm definatly not going to get in over my head...
my ideal oucome would be a fully functional machine, and then i could acutaly create something with it to prove the point
if nothing else, you could give it a felt-tip pen and draw a picture
haha i guess so...
much neater and quieter than cutting something
i'm sure i'll just end up stealing some scrap aluminum, and making something fun
we got loud machine shops for this anyway
so nobody'd notice
but as long as i can complete it over the next semester, i'd be all set!
yeah easy or hard on this project all comes down to the motors and drivers on the robot
pemmet: Google for Puma and Scara robots
mkay.. i'll also find out what kind of robots my prof has layin' around doing nothing
because he said they were putting several small ones into storage.. and i could have one of them
hexapods are cool
(they'd be free)
Which Uni are you at ??
but anyway.. i got class right now...
bummer... shipping on a bot would be wayyy pricey
which is why i wanna get one that's already on capus
but yea.. anyway, i got an industrial robotics class to head upto... thanks for all your help, i'm going to see if i can make this happen, and i'm sure i'll be in here plenty in the future as a result!
If you know what type of machine it is, we can certainly help with the kinematics
that'd be a great help
alright i'm leavin' for real, this time.. bye
N.B. Scara, Puma, & hexapod are allready coded up.
paul_c: he said it's an orthogonal machine
bog standard XYZ is trivial.
was just giving him some ideas to play with.
so if I did an axis release, could it still go on bdi-4, or are you way past that stage?
can rebuild at any time - Still have loads of work to before it is ready for public release.
I'm not ready yet, I just am wondering if I should bother trying to get it wrapped up
ok, I will keep it in mind
what did jepler end up giving you? was it a deb?
could you build it from source?
I'm hoping Ray & Co will do loads of testing over the next three weeks, and we can aim for a mid Jan release.
ok, great, we should have 1.0 easily ready by then no matter what
Jepler sent me the Debian rules and I built it here.
so you built a deb from the source?
Needed to do some tweeks for the 2.6.9 emc build.
dsl keeps droppin out today
03Zathras 07BDI build system * 10Babylon Cluster/04-slide.png: File changed. New revision:1.2
How's it hanging ?
hey sherline was telling me they were having trouble in fetching an iso from you
if you'd like i can set you up with an ftp account or something
so you can dump it
uploaded it last night.
i talked to joe this morning and he said that he thought matt might be having trouble getting or something
not sure what that's about
Do you have access to kane ?
cane you check the default dir for sherline...
i don't have root
what do you want me to check?
that bdi*.iso is in the home dir
in ~ ?
can you ftp in?
that dir is 700
what's the name of the file exactly?
currently ftp'd in.... Can seebdi-4.02.iso clearly.
Imperator_ is now known as Imperator_away
-rw-rw-r-- 1 sherline webusers 633100288 Dec 10 07:09 bdi-4.02.iso
tbl seems to have gone very quiet...
* SpeedBump waves
SpeedBump: using EMC ?
not yet. I'm working for a custom machine tool manufacturer and we are considering the use of EMC (or EMC2) as a control system for some of our systems.
emc2 is a long way from being ready for serious use.
I'm having some difficulty getting RTAI/fusion working on my system at the moment, but I'll eventually figure it out (some problem with hyperthreading/SMP I think)
You need a BDI install
ok I'll bite: what is a BDI install (or RTAI I assume)?
ah...brain dead install...got it
[23:22:12] <paul_c> http://www.linuxcnc.org/bdi/
the next release uses 2.6.9 and RTAI with all the trimmings
I'm also looking into ways of generating higher step rates using dedicated CPU's in a multiprocessor system...that's sort of why I hadn't really looked at the brain dead install (I'd seen it mentioned before)
lock freqmod to CPU2, and use CPU1 for everything else...
do you believe that will reliably generate step rates exceeding 400kHz?
1.25uSec base period...
Using a standard parport ?
not a cat in hells chance.
* SpeedBump grins
your average parport write takes one to two uSecs
that's what I was given to believe from my research
100KHz might be attainable, but I wouldn't bet on it being stable.
why do you need 400KHz step rates ?
I've reliably gotten 500kHz out of this laptop just locking a processor and using the TSC to time output. nearly 70% of the time is inside the kernel's parallel port routines...but that's plenty of time left over for trajectory updates per cycle...
because I have to sell the idea up the chain of command, and I know it will be a question. our current CNC can easilly outperform even that, but that number is sufficiently beyond our typical needs that it will be enough.
didn't think the kernel's parport routines were realtime thread safe.... Or do you mean inb() & outb() calls ?
That's a standard C function.
though I haven't seen any problems just using the parport routines...and they are thread and SMP safe
you can lock the port for exclusive access...it complains alot but it will do it
outb() gets replaced at compile time with trivial assembler code.
* SpeedBump nods
I've tried it both ways for timing comparison...
the overhead of using the parport routines is negligable given the massive delays incurred by doing port access
and I'm not doing anything with realtime stuff yet...I'm just breaking out a really big hammer and stealing with processor from the scheduler to run my tests
If you are not worried with code portability, you could macro outb() to the simplest asm call.
Use a PCI IO card, and save a bit more time.
yeah, but it's not worth it...as I said, just the outb assembly instruction has a fixed overhead (from what I can tell). The overhead of going through the parport subsystem is unimportant by comparison
* SpeedBump nods
I don't know that much about the PCI protocol...when I started my investigations I was under the impression that PCI used a negotiated protocol for bus control, implying relatively long delays for bus acquisition
the PCI bus is message based, yes.
I've learned that is not the case, but noone has yet given me verifiable numbers on response times, so I am going with the worst case for now.
but a 33MHz, the contention times are fairly low.
* SpeedBump nods
depending on what else is on the PCI bus.
I've done some with with PCI video capture cards and run into the bus latency problem with onboard data buffers that would overflow under heavy loads
To be honest, if you want reliable high speed pulse rates, an FPGA is the way to go.
* SpeedBump nods
bung it on a PCI card and open source the driver code...
yeah, that's a slightly harder sell (custom hardware development) but I might go that way. I've used motion cards from Motion Engineering Inc that were FPGA based
the code is of little value without the hardware.
having custom hardware does make the investment of business time in the idea a little less scary to those here who don't really "get" the GPL
and it also removes you a little from the problems of using commodity motherboards...
out of curiosity, are there any libraries or frontends that handle kerf offset calculations? I've got some ideas on how to do it, but it is one more thing we have to develop if so
You mean tool offsets ?
EMC handles that internally.
really...interesting. Is it documented anywhere? I'd need to evaluate its behaviour in corner cases (no pun intended)
G40,41,42 - Some notes in the Handbook...
right, but the exact behaviour of G41&42 aren't really specifically defained anywhere...I'd need to verify that the algorithm behaves properly in cases where the offset paths overlap
many NC's do this in a variety of wrong ways :)
not sure I follow "where the offset paths overlap"
difficult to describe a graphic...
imagine a 1" circle with a .25" slot going into it (looks like a lollipop)
If I offset to the interior with a tool width > .25" what happens to the slot?
and a 6mm offset..
I would say that that kind of error should have been picked up at the CAM stage.
well...it isn't really an error...the control *should* provide a warning to the operator and cut the circle without the entry slot (at least in most of our cases)
for example, when a waterjet is cutting the kerf width grows over time...
what you could cut when you start you can't necessarilly cut by the end of your run...
it's complex. this is one of the reasons we like the idea of PC based CNC...we get more flexibility in handling these conflicts
Ooo... Adaptive tool offset...
* SpeedBump nods