On May 18 2013 1:50 AM, David Armstrong wrote:
> On 17/05/13 19:54, EBo wrote:
>> On May 17 2013 12:26 PM, Kent A. Reed wrote:
>>> On 5/17/2013 1:46 PM, EBo wrote:
>>>> Glad I could give you a gafaugh (or how ever it is spell it).  I
>>>> meant
>>>> g-code -> STEP-NC.  Since there is source for a demonstration 
>>>> parser
>>>> using ISO 14649, that might be a fruitful path and what I had in
>>>> mind
>>>> when I made my comment.  I just do not know enough about ISO 14649
>>>> to
>>>> know if it is feasible.
>>> Aha. I don't know enough either, but let me quote from the STEP-NC
>>> DLL
>>> Programming Guide I found on the StepTools site
>>> 
>>> (http://www.steptools.com/support/stepnc_docs/stepncdll/index.html).
>>>
>>> [That APT is invoked in a modern-era document might tweak Dave
>>> Engvall's
>>> interest as well.]
>>>
>>>
>>> ---begin quote---
>>>
>>> 2.0 APT Object
>>>
>>> 2.1 Concept
>>> The APT object is used to create AP-238 files from APT data. APT is 
>>> a
>>> legacy language from the 1950’s that defines tool path geometries. 
>>> In
>>> the beginning it was used in a similar way to FORTRAN except it
>>> created
>>> machine tool programs rather than computer programs. In recent 
>>> years
>>> CAM
>>> systems have replaced APT systems but many CAM systems still write
>>> APT
>>> data so it is the most widely available common denominator for tool
>>> path
>>> information.
>>>
>>> APT is the most important but not the only source of data for the
>>> DLL.
>>> There are functions to read several flavors of RS274D/ISO 6983 
>>> files,
>>> for example, see the ImportHass, ImportSiemens and ImportFanuc
>>> functions, and there are functions to read STEP files to define the
>>> geometries and tolerances of the workpiece, stock, fixtures and
>>> cutting
>>> tools, for example see the Workpiece and Rawpiece functions.
>>>
>>> The legacy APT programming language is state driven. Each time a 
>>> new
>>> tool path is created the current feed, speed and other quantities 
>>> are
>>> added to that tool path as necessary. The APT object has been 
>>> written
>>> for APT parsers so it is also state driven. Hence, at any time 
>>> there
>>> is
>>> a current workpiece, workplan, workingstep, feed, speed and so on
>>> (see
>>> the GetCurrent functions).
>>>
>>> STEP-NC is NOT state driven. The APT object takes the state driven
>>> commands of APT and converts them into a graph of STEP-NC objects
>>> where
>>> every quality of every object is explicitly attached to that 
>>> object.
>>> Only the APT object has a state model in the STEP-NC DLL. The other
>>> objects use navigation models in which a given argument is used as
>>> the
>>> starting point to find other objects. It can be argued that another
>>> version of the APT object should be written for more modern
>>> applications
>>> that is not state driven. The process object contains some of the
>>> required functionality.
>>>
>>> ---end quote---
>>>
>>> This doesn't indicate how much work is required to salt the DLL so 
>>> an
>>> imported RS274D (aka G-Gode) file becomes a valid and useful 
>>> STEP-NC
>>> file but the second paragraph of the quote seems to indicate the
>>> transformation you have in mind can be done. Perhaps more is said
>>> elsewhere in the guide.
>> I am of two minds for this.  The first is that we should be able to
>> write some simple test cases for a g-code to STEP-NC converter.  
>> Does
>> anyone have access to an industrial STEP-NC capable machine to test 
>> the
>> results?  The second idea is to talk to computer language people and 
>> see
>> if anyone would be interested in playing with this as a student 
>> project.
>> Depending on how deep you go, it could be a full blown dissertation.
>> The idea of abstracting generic state machines to OO (or other)
>> paradigms is well into graduate territory.  But it would not have to 
>> be
>> that fancy, just a reinterpretation of the defined APT states to a 
>> non
>> state machine model.  But to start, if we could define just a couple 
>> of
>> the basic motions (G00/G01, and maybe G02/G03, M00, M02, M03, M05, 
>> M06,
>> M30).  Even a subset of those can write a usable program...  Just a
>> though, but we would want access to a STEP-NC compliant machine to 
>> test.
>>
>>     EBo --
>>...
>
> following the step nc discussions
> here's a link to a parser for step part 21 files
> thought this may be useful in further thoughts
>
> http://code.google.com/p/iso-14649-toolkit/wiki/ReadmeFile

Sorry I did not post this link before.  Yesterday I downloaded, 
compiled, and ran the examples.  The code is old (last updated in 2009). 
I am guessing that it is no longer active.  I will say that I was able 
to get it to compile with only a couple of changes on the latest 
gcc-4.8.0 compiler (on a Gentoo system with a 3.7.10 kernel).  If we go 
this rout, we should track down the authors and see about getting them 
involved, forking the project, taking it over, I do not know, but I will 
say that the project as stands looks orphaned and the code is just the 
parser -- not a running system.

   EBo --


------------------------------------------------------------------------------
AlienVault Unified Security Management (USM) platform delivers complete
security visibility with the essential security capabilities. Easily and
efficiently configure, manage, and operate all of your security controls
from a single console and one unified framework. Download a free trial.
http://p.sf.net/sfu/alienvault_d2d
_______________________________________________
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers

Reply via email to