home - about - advertise
    
 
 
Sponsors
Navigation
Partners

 
CAD TranslationFeature

Mechanism of Transfer of CAD Data Between Various Organizations

By Prabhu Swaminathan
November 11, 2004

Today, more companies than ever before are involved in manufacturing various parts of their end products using different subcontractors, many of whom are often scattered across the globe. The rise of such global efforts has created the need for sharing information among vendors involved in multi-disciplinary projects. Transfer of data is necessary so that, for example, one organization can be developing a CAD model, while another organization is performing analysis work on the same model, at the same time that a third organization is manufacturing the product. Data transfer fills the need to satisfy each of these functions in a specific way. Accurate transmission is of paramount importance. Thus, a mechanism for good data transfer is needed. This article explores the various ways to make this vital transfer possible. Our attention will be directed specifically towards 3D CAD systems.

List of Acronyms Used

  • IGES: Initial Graphics Exchange Specification
  • STEP: Standard for exchange of product model
  • 3D CAD: Three-dimensional Computer-Aided Design
  • CAM: Computer-Aided Manufacturing
  • CAE: Computer-Aided Engineering
  • CAA: Computer-Aided Analysis
  • FEA: Finite Element Analysis
  • SW: SolidWorks CAD software
  • XML: Extensible Mark up Language
  • DTD: Document Type Definition
  • DB: Data Base
  • AP: Application Protocol
  • B_rep: Boundary represented solid or object
  • DWG: AutoCAD drawing format

Introduction

Currently there exist numerous CAD systems to choose from. To select a CAD system that best fits a company’s needs involves several limiting factors relating to the type of business, the end product and the cost. 3D CAD software is becoming an increasingly popular choice. But is 3D CAD software a necessity?

I believe it is necessary for a variety of reasons. A 3D CAD model helps, for example, in visualizing spatial arrangements, establishing clearances, assembling, altering, then reassembling parts and kinematics. Each 3D CAD system has its distinct features suited to the needs of its users. While a large organization may need data retrieval tied with the CAD systems, in many cases to a main frame, a smaller organization may need only a workstation. The integration of 3D CAD with computer-aided engineering (CAE) analysis and computer-aided manufacturing (CAM) is yet another desired feature. Current 3D CAD systems are such that they integrate all of these together along with standard data translators. Some of the popular CAD systems with data translation capabilities are listed in the reference section.

As mentioned, there are often several separate participants in the manufacturing process. A typical workflow is shown in Figure 1 below, in which CAD data is transferred in a neutral or native CAD format.


Figure 1: CAD/CAM/CAE workflow (click on image to enlarge)

Methods of Data Transfer

There are three popular methods of data transfer.

  1. IGES Translator (Initial Graphic Exchange Specification)
  2. STEP Translator (Standard of Exchange of Product)
  3. Direct Translator

Both IGES and STEP methods rely on exporting the CAD data on a system to a text file format. The receiving system then inverts this information in the text data and produces a CAD model. Most CAD systems have these two methods built into their utilities. On some CAD systems these must be purchased as a separate license.

I.  IGES Translator

This method of translation originated around 1979. It is still one of the viable methods of  transferring CAD data. Typically, an IGES file is divided in 5 segments:

  1. Start segment
  2. Global segment
  3. Directory entry segment
  4. Parameter data Segment
  5. Terminating segment

The CAD features are defined using numeral (integers) as identifiers. Both geometric and non-geometric data are identified by numerals, and their attributes are specified in an 80- column format, typical of FORTRAN. Typically, the entities above 200 are non-geometric entities. Geometric entity, such as a point, is defined by 116. Line is defined by 110. Against each of the entities is a list of attributes. Spatial curves such as Rational B-Splines, surfaces, plane and other geometric entities are similarly defined with numerals. Similar numerals are used for other non-geometric entities.

Attributes for the geometric entity are defined in the directory segment; the corresponding data itself is defined in the parameter segment. The directory entry and the parameter portion contain all the information about the entity with linkage between the two segments.

The connection between attributes and data segment is made with bi-directional pointers.

Similar numerical identifiers are assigned for various finite element analyst entities and their post-processing entities.

IGES can transfer both 2D and 3D finite elements for an FEA type of analysis.

Pros and Cons of IGES

IGES is a good method of data transfer. However, it lacks a means of transferring solid objects. This causes the user to spend more time to build the solid object on the receiving end. Although open-ended in terms of adding more entities, they are not standardized to be acceptable across all CAD systems.

II.  STEP Translation Methods

ISO 10303, or Standard for the Exchange of Product model data (STEP), defines a methodology for describing product data.

It is quite different from IGES. STEP goes into elaborate details for defining a neutral file and maintains the product’s life cycle. STEP is now becoming an international standard. The application protocols range from AP201 to AP234, the common one being AP203, which is tied to a schema known as “Config controlled Design.”

This second method is an extension of the first one, picking up where IGES left off, and after object-oriented programming started to pick up speed. STEP would be ideal to transfer objects (B_rep) instead of just polygonal faces or surfaces.

In STEP instead of using numerals, text is used in identifying the entity. For example “Cartesian_ point” is used as identifier for points. 116 will be the corresponding IGES entity.

These definitions follow from the EXPRESS schema. Express schema is a file that holds the definition of geometric entities for any AP and the validation rules.

Unlike IGES, this method transfers the solid body and saves considerable time on the receiving side. As the CAD models get more complex this feature plays an important role at the hands of the receiving end.

Geometrical entities have a full descriptive definition in STEP files.

STEP file output is based on EXPRESS language schema. EXPRESS language is a data modeling language. There are several schemas for product modeling. Each schema has an application associated with it and a set of validation rules. The STEP file is generated conforming to the rules and format in the EXPRESS Schema.

The development of EXPRESS language schema is a result of several organizations.

An Express language is unlike C or C++. It is more like a formatted design language. The geometric objects are defined in terms of ENTITIES.

An example of EXPRESS file is listed below.

SCHEMA TEST_SCHEMA;
ENTITY CARTESIAN_POINT;
      x_coordinate: REAL;
      y_coordinate: REAL;
      z_coordinate: REAL;
END_ENTITY;
END_SCHEMA;

When the CAD model is compiled with Express compiler it produces a STEP file shown below.

The corresponding Step file below is a snapshot taken from CATIA output.

A step file typically has a header portion and the data portion as shown below.

ISO-10303-21;
HEADER;
FILE_DESCRIPTION((''), '1');
FILE_NAME('CARTESIAN-POINT
',     
	'2002-07-05T09:19:11-04:00',
     	(''),
     	(''),
     	'CATIA.STEP INTERFACE',
     	'CATIA SOLUTIONS V4  RELEASE 2.4 FR 4.2.4',
     	'');
FILE_SCHEMA(('TEST_SCHEMA'));
ENDSEC;
DATA;
#1=CARTESIAN_POINT(10.0,20.0,30.0); 
#2=CARTESIAN_POINT(5.0,10.0,15.0);
#3=CARTESIAN_POINT(30.0,10.0,6.0);
ENDSEC;
END-ISO-10303-21;

When producing the model, a STEP file is taken as input and parsed by the EXPRESS compiler according to the schema to generate classes. ENTITIES are transformed into Classes. These are then used by the CAD software to display the model.

Object-oriented programming languages, such as C++, use these classes and display the model.

Most CAD/CAM/CAE systems are equipped to read both IGES and STEP files since these are now uniform standards. The current trend is moving towards making XML compatible file of the schema.

Relation between EXPRESS schema and XML

Express is a language for data modeling. Work is in progress to use XML language for data modeling. XML files are validated for data correctness and constraints similar to EXPRESS schema by DTD.

An equivalent XML file structure is shown on a conceptual basis. It can have a list of Entities and attributes for several geometric objects.

Using Java as an example for the object-oriented language, the word “entity CARTESIAN_POINT” will transform into an equivalent statement as (a pseudocode)

Class CARTESIAN_POINTS extends -----{
// ---- indicates appropriate inheritance
//For each vertex
CARTESIAN_POINTS C= new CARTESIAN_POINTS()
C. x =0.0; C.y=0.0; C.z=0.0 ;
}

XML coupled with Xerces dom (document object monitoring) parser offers another method of integration with Java. The downside of Java is its slowness. However, with the speed of processors increasing, one hopes this will draw more attention in the future in software development.

Java - being the language of the Internet, with its ease of connectivity and database platform independence, along with its security features - offers promise. Java’s reflection class, generating classes at run time is another feature that C++ does not offer. In this sense it offers power of late binding.

III.  Direct Translators (with Elysium)

The third method of translating CAD data is via direct translators. Among the direct translators is CADporter from Elysium. CADporter is not CAD software for making models, but rather a CAD file reader. This product can read several different formats of CAD files from various vendors. The first two translators – IGES and STEP - are not error free. On occasion it’s necessary to put in considerable time finding and fixing errors. The difference in graphic tolerance and STEP tolerance can lead to problems. The reason for this is that as the CAD model gets more complicated there are more chances that these can fail. If the model is simplified then the translation works virtually error free. But many people may be involved in the modeling and each has a different level of skill in building these models. This complexity, although a challenge to the person making the model, can create some trouble spots in the translation. An alternative now exits that will read the CAD data from different vendors and transfer those to the host’s native CAD system.

Figure 2 shows an interaction between CAD vendors with Elysium operated from within SolidWorks. As depicted, it is a two- way transfer between the CAD systems shown. With this type of integration, a CAD system can import a Pro/ENGINEER part and rewrite it to another vendor format such as CATIA or AutoCAD DWG format.


Figure 2: Interface with CAD/CAE vendors

This allows for the building of a team center. An example of the formation of a team center is shown from within SolidWorks.

Figure 3 shows an interaction between an internal organization and outside vendors depositing their native CAD files into a database. SolidWorks integrated with Elysium can read several of the native CAD files delivered by a vendor and export them to a CAD system the organization is set up with.


Figure 3: An example of forming a team center

Each of the transfer methods discussed has its merits. If geometry is the only concern, then a direct translator is preferable. The team center concept should work well in this case although a firewall would need to be installed. A direct translator would also mean an extra cost for an organization; other vendors must also have access to the direct translator.

STEP file is the next best alternative. Many CAD software systems have this utility built into their cost. It is gaining as the international standard. Its advantages are that it maintains the lifecycle of the product, it will transfer solid objects and it will transfer if the models are simplified without error. The file is in readable form. But where the STEP format doesn’t exist for a particular application, IGES must be the solution.

Despite its cumbersome wire frame method, IGES is the most generally available and useable method of data transfer; where no other suitable method is available, one must resort to its use.

Conclusion

Demonstrating the workflow process illustrated in Figure 1, the crane model below (Figure 4) is one I developed using a 2D CAD program and fabricated with GibbsCAM software. Its individual pieces were cut using GibbsCAM software with NC machine and assembled together. It not only shows the workflow process but also enables the study of stress patterns (not shown here). It is an assembly of Space truss with Sprocket mechanism. The method of import into CAM was a direct feed of CAD Data.


Figure 4: Fabricated model from GibbsCAM (view 1)


Figure 5: Fabricated model from GibbsCAM (view 2)

References
  1. Digital representation for communication of product definition data US, PRO/IPO-100 IGES 5.2
  2. STEP by STEP Tools Inc., Troy, NY
  3. CATIA by Dassault Systemes, Paris, France
  4. Pro/ENGINEER by Parametric Technology Corporation, Needham, MA
  5. AutoCAD by Autodesk, San Rafael, CA
  6. SolidWorks by SolidWorks, Concord, Massachusetts
  7. CADporter by Elysium Incorporated, Southfield, MI
  8. Unigraphics by UGS, Plano, TX
  9. XML and EXPRESS as schema definition languages, Daniel Rivers-Moore, Rivcom Limited, Wanborough, Swindon,Wiltshire, UK, 1998
  10. xml.apache.org ( Apache Software Foundation)
  11. XML and Java by Nicholas Chase, QUE publication
  12. Patran by MSC.Software Corporation, Los Angeles, CA
  13. GibbsCAM by Gibbs and Associates, Moorpark, CA
  14. ST-Developer Tools Reference, Troy, NY

Acknowledgements
The author would like to extend his thanks to the companies mentioned in this article for their contribution to the CAD/CAE/CAM data transfer methods.
 

About the Author

Prabhu Swaminathan works is a Senior Engineer in the Computer System Technogy group at at Electric Boat Corporation. He has been involved with 3D CAD systems and data translations with several CAD/CAM software systems. Previously, he held positions in the structural engineering field that involved problem-solving using finite element analysis. He writes his own software for 3D computer graphics and FEA for performing structural analysis.

More Select CAD Translation Articles

  
 

Newsletter

Get all the week's articles
FREE!
(current issue)