Re: Thoughts on EMC's design and implemenation
Well, Adam
Let me take a first cut at an answer. It may not be complete or accurate
so the usual disclaimers apply as well as a few concerning crazed authors.
I have been hanging around this project for about 4+ years -- I think.
It started with a few grants to the NIST by other gov agencies and some
associations. The early code was written almost entirely in c and c++.
The early efforts uses rather costly proprietary real-time systems that
were out of reach of the hobby motion folk. Development was capability
based. They needed it to do something so thy wrote the code to do it.
C and C++ are the core languages. C has to be used to write many of the
device specific and real-time stuff but where it is not required,
most of the code is written in C++.
When real-time patches became available for linux, and the code rather
easily compiled for it, the path to low cost software motion control
opened up. Along with that opening up came a demand for better graphical
interfaces as the text mode stuff of that day did not do well on the shop
floor. Tickle was an easy language with which to make connectors between
the NML that is at the core of the rcslib and the emc projects and user
type buttons and displays. And in this role it does rather well yet.
As you probably know tickle was started and copyrighted by the University
of California at Berkley by John Osterhaut who labored there as a
professor. It traveled to Sun where if flourished for a while even as
that company pushed what many thought was it's competetor, Java. Then it
moved to Scriptics along with the core developers and maintainers. From
there is has migrated to ActiveState where it continues to be maintained.
It may be dead, and no one bothered to tell me. Last I heard it was
continuing to be released on most all platforms and development
continues. Some have even suggested that the development map for future
releases of tickle includes much of the class stuff that is currently a
part of itcl.
Tickle has had the advantage of allowing Paul and Fred to demo an EMC
black box where the real time processes ran on one PC using linux and the
graphical and human interface ran on a MS-Windows box along with some
cad/cam stuff that will only run on that proprietary os. I also know
that there has been efforts to consolidate the control of several
machines at the same time on a Mac -- thus creating a machining cell.
These experiments can be done because tickle is available across several
platforms.
Yes there are probably better -- spell that more compact and faster --
ways of writing and running gui's these days but for flexibility and ease
of coding at beginning levels, it is difficult to beat Tcl/Tk. Hell,
even I could learn to do it and my last programming class was IBM card
Fortran on a 360-70 with a four hour turn around. Can you spell obsolete
old &**%$#!
But now that many useful graphical routines have been proven in tickle,
they should be migrated to something much better. I'd opt for QT even
though it is proprietary and a commercial user needs to have the
libraries licensed to them. Tickle is also proprietary but no
limitations are placed on the use of current releases.
> thoughts about EMC's design and
> implementation
are put up here and on the developer list rather often. They sometimes
become the topic of discussion at rather long and heated phone
conversations, or extended dinners at the NAMES convention in Detroit as
well. Some have suggested a www based chat on a more or less regular
schedule.
We are at the point where the open source developers community is being
forced to take a more active, guiding role in development. Some pressure
is being put on NIST to back away a bit. Trust me on this, you can help.
m2cw
Ray Henry
On Monday 09 September 2002 07:51 pm, you wrote:
> I have been interested in motion control for as long as I can remember.
> I stumbled upon EMC a year or so ago and have learned a lot from
> reading posts and source.
>
> I was currious if anyone had any thoughts about EMC's design and
> implementation. EMC and supporting software has been coded in a wide
> range of languages (I thought Tcl was dead :)). Why is that? I know
> that C has been the typical language to write this kind of software in
> but C++ is getting more and more popular across the board.
>
> Any thoughts or commnets would be appreciated.
>
> Thanks.
>
> --adam
>
> >>> Please CC: me copy your reply <<<
> >>>
> >>> I recive a lot of email and can <<<
> >>>
> >>> not subscribe to this list. Thanks. <<<
Date Index |
Thread Index |
Back to archive index |
Back to Mailing List Page
Problems or questions? Contact