The year was 1801. Thomas Jefferson became the third President of the United States, Benedict Arnold died in England and Gespard Monge wrote La Geometrie Descriptive. While the exploits of Jefferson and Arnold are well documented, Monge has had a lesser-known but nonetheless significant impact on the world as we know it today. His dissertation helped to trigger a shift from physical models to mechanical drawings, driving the impending industrial revolution. Over time, manufacturing processes and practices evolved to rely more and more on engineering drawings. Computer-aided tools emerged and grew in number and sophistication to support the process. Finally today - fully two centuries after Monge's paper - a new standard in product development has emerged. That standard is 3-D solid models.
Why Are Solids Difficult?
The benefits for mold and die shops and other manufacturers of doing business based on solid models are well documented. Utilizing master models to drive downstream applications is clearly worth striving for. But what about transferring those solid models to in-house CAD/CAM/CAE systems? The results have likely not met your expectations. Even more bluntly, you may not have had any success at all. Another data exchange failure? Not really.
The data exchange industry has been on a path of providing data transfers of more and more complex data. Ten years ago, a common problem was transferring circular arcs and receiving the complement of what you created. Six and seven years ago, a common problem was exchange of surfaces. Three and four years ago, the common problem was trimmed surfaces. In each of these phases, the problem was tackled and for the most part solved. Solids are just the next phase of complex data we are trying to solve. But why is solids exchange so difficult?
Take a CAD model with 100 trimmed surfaces for example. If 90 or 95 percent of the trimmed surfaces translated, most people would be happy. In many cases the troublesome base surface and trim curves translate and can be retrimmed in the receiving system. But with a solid model you either have 100 percent success or zero. There is no middle ground. There is no such thing as part of a solid, and as a result there is no room for error. Data exchange technology is not known for being 100 percent successful all of the time. But now we have this requirement in order to realize production worthy solids data exchange. So where does the problem lie?
It is difficult to pinpoint the problem. All of the following factors impact a solids transfer:
- The quality of the original solid model,
- The tolerances used in both the sending and receiving systems,
- The standard that is used for the exchange, and
- The quality of the translators themselves.
There has always been an implicit assumption that the original native CAD model is perfect. Historically, the blame for translation problems has been placed on the translators or the translation standard itself. IGES (Initial Graphics Exchange Specification), STEP (Standard for the Exchange of Product Model Data) and other standards have taken a lot of heat over data exchange failures. Over the past three years, however, the industry has begun to scrutinize the geometry in a CAD solid model and has found that the data is not always as clean as has been assumed. In fact, recent studies have shown that 30 to 60 percent of CAD models officially released from design are not usable "as is" by those who receive those models. These problems include cracks in the solid, unintentional shafts or voids buried within a solid, basic violation of the geometric rules that define a solid and many others. It goes back to the old adage, "garbage in equals garbage out." You could have the best translator in the world, but if you give it bad data it will generate bad data. Translators don't repair or fix geometry problems - they just convert the geometry from one representation to another representation.
Ford Motor Company has spent a considerable amount of time studying this issue. They have found that some solid models are destined for data exchange failure even before it is attempted. Proper training and use of model quality tools in the design stage can avoid or minimize these problems.
Another common problem today is differences in tolerance value between the sending and receiving software systems. Let's say that you create a solid model in a system that has an internal tolerance of 10-3. So the numeric representation of the data is accurate to 0.001 mm. At this tolerance all of the surfaces that are supposed to share a common edge do, all of the trim curves that are supposed to lie on the surface do, etc. You translate the data to a system with an internal tolerance of 10-6 (0.000001 mm) and it reports that there are gaps in the model - it does not know how to trim certain surfaces, and there are other miscellaneous errors. What happened? Well the receiving system is looking for two adjacent surfaces to be within 0.000001 units of each other and the numeric data that it has to work with is only accurate to 0.001 units. As a result, you don't get a solid.
So what went wrong? Was it the receiving system for not generating accurate enough data? Was it the standard used in the transfer, the two translators or the sending system for not having been flexible enough to work with the data that the sending system generated? Nothing was really to blame - it was just an inherent difference between the ways the two CAD applications were programmed. The problem existed in both directions between loose tolerance and tight tolerance CAD/CAM/CAE applications. Going from a loose to a tight tolerance system will typically result in gapping issues in the receiving system (gaps between surfaces, untrimmed geometry, etc). Going from a tight to loose tolerance system will typically result in realism issues in the receiving system (sliver surfaces, edges with near zero length, etc). So the CAD/CAM and data exchange industries have a global problem that must be faced and resolved.
So where do CAD systems line up in the tolerance spectrum? On one end of the spectrum you have loose tolerance systems such as CATIA and I-DEAS whose internal geometric tolerance is around 0.1 and 0.01 mm. On the other end of the spectrum you have tight tolerance systems such as anything based on Parasolids or ACIS (two common geometry libraries used in commercial CAD systems). These tight tolerance systems, with an internal geometric tolerance around 0.000001 mm, include Unigraphics, SolidWorks, SolidEdge, Mechanical Desktop and Inventor. With the popularity of SolidWorks, SolidEdge, Mechanical Desktop and Inventor within the tool/die/mold industries and the tight tolerance that they have, it's easy to see why there are problems getting data from customers who use systems such as CATIA and I-DEAS.
There are flexible modeling systems in which you can set the tolerance prior to creating or translating the solid. If your receiving system supports this feature you can usually get the solid to translate. But the problem occurs when you try to work with that solid. Many times the receiving system will not be able to perform operations upon the data because the default internal tolerance required differs from the tolerance value you had to set to get the data to translate to begin with.
Most vendors have decided to support solids exchange via their STEP translators and this is where most of the solids exchange testing has been conducted. Organizations such as PDES, Inc. (a STEP consortium in the U.S.) and the ProSTEP Association (a STEP consortium in Europe) have lead the way in solids exchange via STEP pilot projects within their member companies and vendor translator testing forums. And it is with STEP that we have seen the most success in transferring solids between applications in production scenarios. Remember, solids modeling is the technological hurdle the data exchange industry faces today. And like other hurdles in the past, it will be resolved.
What is the hurdle beyond solids? That is already being discussed. Today, systems with parametrics, features, constraints, construction history and other methods for capturing "design intent" are becoming more popular. Unfortunately, these higher forms of CAD model intelligence are not yet defined in any data exchange standard. Today, there is a group in STEP working on defining parametrics but it will be some time before this technology becomes commercially available.
So, what do you do? There are a couple of options. The most popular way today of exchanging solids is through STEP. If the sending or receiving application in your transfer lacks a STEP translator, then convert it to IGES as a set of trimmed surfaces and stitch the surfaces back into a solid in the receiving system. In some cases, specialized, direct point-to-point translators may provide a solution for solid transfers. In all of these cases, you may realize considerable savings by using geometry repair tools to automate the geometry fix up rather than doing the repair manually. In the meantime, the CaD/CAM and data exchange industries will continue their work on delivering a solution to their customers.