I've been working on a GUI, called GWiz, to do this type of thing.

See: http://www.se-ltd.com/~lerman/gallery/G-Wiz for some photos from the
previous version that was written in C++ using Qt.

The new version uses wxPython. Adding an additional Wizard requires
generating a graphic for it, creating a configuration file that defines the
parameters, and generating a gcode subroutine to implement the function.
Then those files are added to a new directory in the tree of Wizards.

With the addition of gcode subroutines, branching, and looping, the current
interpreter is capable of doing most of the things I've seen in Jon's files.

Ken

[EMAIL PROTECTED]
Mark Kenny Products Company, LLC
55 Main Street                     Voice: (203)426-7166
Newtown, CT 06470                    Fax: (203)426-9138
http://www.MarkKenny.com


-----Original Message-----
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] Behalf Of Javid
Butler
Sent: Sunday, February 25, 2007 3:53 PM
To: Enhanced Machine Controller (EMC)
Subject: Re: [Emc-users] macros


The topic came up before I had researched or thought out enough to do what I
would call a proposal, but here's a rough idea.

I've been part of a task group that is using a Device Description Language
to create profiles that will ensure interoperability between complex
intelligent lights from different manufacturers.  In that application the
devices would send their profile, in DDL format, to the controller, which
could then automatically assign control channels so that, for example, three
different lights from three different manufacturers would all change to the
same shade of red when the console operator selected red.  I've also played
around a small bit with HDLs for programmable logic.

So when Jon posted the link to his very cool programs the thought popped
into my head that the code he had developed already formed a good base
interpreter for a Part Description Language that could replace the need for
a CAD program, at least for simple parts.  The relationship between "PDL"
and G-code would be analogous to the relationship between C and assembly.

It could look something like this:

Part: Sample
    Blank:
        Bar
        Xlimits a0.000, a2.000  (a indiacating absolute, r indicating
relative)
        Ylimits a0.000, a4.000
        Zlimits a0.000, a-0.125
    FeedTable:
        6061-T6    (external table named for material, or could be fully
described here)
    ToolTable:
        endmill 0.125 NoCool (or external tool table)
    SquarePocket:
        Side 1.000
        Center X a1.000, Y a2.000
        Depth 0.050
    Bore:
        Radius 0.250
        Center XYCenter
        Depth 0.125
EndPart

This would do the same thing as putting 2 of the programs Jon has together.
The whole thing of course would include all of the programs he has and then
some.

The feed table could include a wide variety of feedrates specific to that
material, but with factors for different cutting tools and coolants, so that
if you change the tool to an endmill with flood coolant it would generate
the same toolpath, but with a different feedrate.  Spindle speed could be
factored in as well. If you want the same part in a different material you
just change the feed table.

In the example both the pocket and the bore have the same center, but they
are called out differently.

A pallet could be multiples of a single part or several different parts, but
could call the parts by name.

Jon, if you have a library or collection of the routines that you can email
to me at [EMAIL PROTECTED] (or I can just download them, but you said
there were ones that were not up there) I'd be willing to put them together
into a working prototype.

Thanks,
Javid


----- Original Message -----
From: "Jon Elson" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>; "Enhanced Machine Controller (EMC)"
<emc-users@lists.sourceforge.net>
Sent: Sunday, February 25, 2007 11:57 AM
Subject: Re: [Emc-users] macros


> Ray Henry wrote:
>
>>Jon's code, and several other routines have been consolidated into what
>>we affectionately called CP1.
>>
> I take it this is no longer a part of EMC2, as I can't find anything
> that looks like it
> on my EMC2 system.  That is probably OK, as it was pretty rough, anyway.
>
> I'd be glad to contribute the latest versions of what I have now, in
> vanilla c.  Not all
> of them are on my web pages.
>
> Jon
>
> -------------------------------------------------------------------------
> Take Surveys. Earn Cash. Influence the Future of IT
> Join SourceForge.net's Techsay panel and you'll get the chance to share
> your
> opinions on IT & business topics through brief surveys-and earn cash
> http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
> _______________________________________________
> Emc-users mailing list
> Emc-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/emc-users
>



-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users

-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users

Reply via email to