Model Based Definition (MBD)

As we move further into the realm of 3D CAD software, something that is still catching on is the idea of driving all specifications directly from the model file, instead of having a separate drawing.  There are various terms for this, but I’ve seen Model Based Definition (MBD) most recently.  I personally am not critical of this idea.  I am critical of moving 100% to this form of documentation without better support from our 3D CAD packages and ASME/ISO standards.

Models are generally considered basic.  All this means is that the tolerance is derived from some “other” specification.  This is normally in the form of associated Geometric Tolerances. To fully define a part in MBD, you’ll need a GD&T scheme, often supplemented by traditionally dimensioning and tolerancing where needed.  The difference is that if drawings are not used, this has to be done within the model itself and then is somehow communicated to the manufacturer.  The task to communicate this information to the manufacturer via the model is harder than it might seem as first glance.  This is due to the myriad of 3D CAD formats and versions now available.  GD&T information may not translate to other formats, such as STEP and IGES. 

Additionally, any information that would’ve appeared on the drawings now has to appear within the model itself.  So, shortcutting the drawing step doesn’t mean one gets to ignore the information that would’ve been included on a drawing. It just means all of that now needs to appear in the model.

With that said, ASME Y14.41 supposedly standardizes this effort.  In my opinion (and yes I’ve read it and “own” a copy), it is lacking right now.

If considering a MBD program, just make sure everyone understands that the model is now the drawing; and that means it will need to be as accurately detailed as the drawing would’ve been; and since this information is now in the model, a method of communication will have to be established with the manufacturer if they don’t have the ability to use the format where the GD&T information resides. 

An alternative is to use the drawing in conjuction with the model, which together provide the complete specification.  In this case, the drawing will still be the primary specification (usually for critical-to-function specifications), but it makes use model to complete the specificaiton.  The model can either be basic, or used with some traditional tolerance.  Where the model is basic, I’ve seen companies place a generic profile feature control frame in the general notes.  This FCF is applied to the model for any dimensions that are unspecified on the drawing.  If such as system is employed, it is important to clearly state this on the drawing to prevent ambiguities.

Quantity and Balloons in SolidWorks 2010

Adding quantities to balloons is something that many of us do when making assembly drawings in SolidWorks.  This is a very manual and sloppy process which involves adding carefully placed text next to each balloon that points to a part with multiple instances.  Some people use split balloons, but still manually edit each one for the desired affected.

Tobin Sparks and BalloonNote

Along came Tobin Sparks.  Tobin was just starting out in the world of macro and API within SolidWorks.  Tobin was a quick study, learning from the likes of handleman (expert API guy) on Eng-Tips and myself (macro hack).  Tobin saw a need and filled it by creating the BalloonNote macro.  This macro simplified the process of adding quantities to balloons.  The macro does have its quirks, but overall it is very well conceived and executed.

BalloonNote screen shot

For the past eight months, BalloonNote has really been the state of the art when it comes to adding quantities to balloons.  OK, that’s a slight overstatement, but the macro is very cool.

What’s New Announcment at SWW09

Either way, SolidWorks has stepped up.  At SolidWorks World 2009, the What’s New presentation showed off many new abilities planned for SolidWorks 2010.  One of those new functions is the adding of quantities to balloons.  Strangely, there are some eerie similarities between the SW2010 function and Tobin’s macro.  I cannot get into too much detail beyond the announcement itself.  I will say that it will be nice to have the functionality built into SolidWorks.

SWW09: Focus Groups (Drawings and Sheet Metal)

As previously mentioned, I attended two focus groups (also called roundtable discussions) this year.  These are generally held on Sunday before all the major SolidWorks World activities begin on Monday.

Sheet Metal

The first group I attended was for sheet metal functionality.  Though attendence was very light, the number of different methodologies and opinions was high.  My own interest in the topic is the problem with being forced to use assemblies to fully document sheet metail parts with inserts.  This is an issue because if you start a drawing of a part, you cannot later replace that part with an assembly.  So, if you create a sheet metal part with no inserts and then you need to add inserts on some later revision, you are forced to recreate the drawing practically from scratch.  This is a horid time and resource sink.

Others in the group talked about using K-factors to determine the material used by the sheet metal part (for flat patterning), while others disregarded K-factors in favor of bend reduction techniques.

One request that seemed to get common acceptance is the idea of creating a table of all the bends of a part with their full characteristics, with the ability to highlight each bend by clicking on it within the table.  When this table is on a drawing, it was suggested that details be added to a specific layer.

The session  also revealed that some used work arounds to use the SolidWorks model to instruct sheet metal tooling to perform certain actions (either via direct or translated input).  Some use alternative features which do not match the final design in order to instruct a tool to produce the feature desired in the final design.

One work around solution did come out of this session.  Right now, the material mass number changes from bent state to flattened state.  Although this difference is minor, over a large quality of parts, the error multiples and can create issues in part handling.  Use a non-configuration custom property to link to the the material property (of a specific configuration?).  Use this custom property as the source for the mass regardless of the configuration or part state.

Drawings

A large portion of the drawings discussion revolved around printing and saving issues with Drawings.  It seems many people are experiencing similar problems.  When saving as a PDF, views randomly disappear.  When printing as a PDF, text locations get shifted.  Also, changes to parts at lower levels of an assembly may cause errors and view changes in higher level assembly drawings; meaning the the company has to open up all levels of a product’s assemblies to make sure that any change did not affect the drawings in unexpected ways.  It seems more people are having these kind of issues that I originally thought.  Many of the problems are magnified by use of PDM’s.

The meeting also focused on DimXpert and how to handle its dimensions.  One comment is that it should place dimensions per current standards within the model.  Another comment noted that datums and feature frames should drive the model.

I voiced my other major concern as well.  Symbols from the Gtol.sym library file should be stored within a drawing.  Right now, I cannot give native drawings to others outside of my organization because they will not be able to see symbols that we employ.  When a symbol is used within a drawing, it should be included in that drawing’s file and not require editing of any other user’s Gtol.sym file.

SWW09: Skeletons and Modelling Horizontally (live, nearly)

I’m rudely blogging live from a breakout session.  Of all people, it’s Matt Lombard I’m doing this to.  He will appreciate the ironic nature of this activity.  Will he hate me for it when he finds out?  No, unless my typing annoys him right now.

OK, I’m far enough back in the room where this doesn’t seem to be an issue, though there may be people around me that might be annoyed.  Again, no one seems to care.  (If the person next to me is trying to hint to me to stop by clearing your throat, let me apologize now.  Anyways, here we go!)

Matt says people are error phobic.  They worry if they have errors in a model.  This may cause unnecessary worry about finding errors in models.

Horizontal modelling is taking things to the extreme to protect your modelling data to avoid errors in the model.  Someone interested in this type of modelling approach is interested in trying to solve a problem they are experiencing.  The two methods to address such problems are to 1) ignore them when they crop up, or 2) presumptively stop daisy chaining references.  Link to objects that don’t break, such as sketches and planes.  Don’t link to solid faces, edges and vertices.

He compares a model created through regular practice with the same part modelled with horizontal modeling.  The relationships between features are all over the place with the regular methods, compared with clean results from horizontal modeling.  In the HM model, origin planes form the foundation, when are linked to reference places, then linked to reference sketch, with independent features that are all linked back to the reference sketch; at the end are the fillets.

Design intent is described by the edges.  HM allows one to lay out design intent with a set of sketches.  Features created from this will not fail if they are re-ordered (except for fillets).  Matt then demonstrate that HM doesn’t work quite by accident, so we continue the demonstration “theoretically”.  I think the failure to achieve the desired results shows just how hard it is to implement HM effectively.  Thank god watching Matt is entertaining because this type of issue in any other session would result in very boring dead time.  Matt actively engages the audience, which is now trying to address why SolidWorks created unintended relationships in his demonstration model.  Going through this process is interesting, but distracting.

In a question from Matt about who is using HM, the audience answers.  One person states they use HM for multiple configuration components, but would not bother in a simple single configuration part.  Another individual states it is also useful in in-context model assemblies.  HM may also be useful in 2D drawings.  Of course, now the audience is trying to discuss the demonstration model.  There doesn’t really seem to be a consensus; again pointing back to issues with trying to employ HM.  Of course, maybe that just means there are more than one way to achieve stable HM.

HM models are modelled to live forever through changes.  Concept modelling may not be able to employ HM techniques since the part may not be fully understood at the time when modelling is started.

In an almost conclusionary lament, Matt states that everything in SolidWorks is like a balance between stability versus speed of use.  Using HM modelling techniques is a tool to use at the appropriate situation, such as well understood production items where the design is complete before modelling begins.

OK, just for the record (Matt), the only reason I’m live blogging is because I really do not have the time to get all the articles done that I want to this day.  I promise I will not do this in the future.  Thank you for your presentation.

SolidWorks World 2009, Pre-day and the pre-preday

There are officially four days for SolidWorks World 2009, Sunday through Monday; though, sometimes Sunday is sort of considered a pre-day even though its called “Day 1“.   However, activity begins even before Sunday.  I guess Saturday can be called the pre-preday.

Saturday fun

My Saturday was mostly spent flying from San Jose, CA to Orlando, FL, with a layover.  I met up with Alex the SolidWorks Geek in our Houston stop.   This is his first, and my second SolidWorks World.  We made it to the Swan & Dolphin resort in Orlando just in time to catch the tail-end of a secret meeting.  After that, many of us Twitters converged at the lobby bar for some drinks for a tweetup.  It was great meeting up with a lot of the bloggers and consummate SolidWorks users from around the country.

Sunday so far

So, Saturday was indeed a very long day.  Though I prolly should have a hang-over right now, I don’t (never really get those).  My Sunday started bright and early with attendance to some focus groups for SolidWorks sheet metal functionality at 8:30AM and drawings at 10:00AM.   These are sessions where SolidWorks users from various industries meet up with SolidWorks employees in face to face open discussions.  The fact that these sessions happen is a sure sign that (despite the appearance otherwise sometimes) SolidWorks does put forth significant effort to improve their software based on customer input.  These focus groups are good because users give first hand accounts about how they are using the software, including their likes, like-to-haves, frustrations and such.  I may go into specific details about these focus groups later.

It’s lunch time now. I hunger.

Virtual Sharps

In the past, I’ve settled on using the phrase “TO V.S.” after a dimension which is to a virtual sharp.  I’ve seen this type of referencing used elsewhere.  Another set of initials I’ve seen used is TSC, which I guess stands for theoretical sharp corner.  I think this is likely older wording.  I used to like the shorter “VS” myself because it refers to what I would consider a more common term.  However, none of this matters too much since the standards say nothing about what is proper.  ASME Y14.5-2009 uses the term Point Location, but doesn’t specify any identification symbols or abbreviations for this concept.

SolidWorks graciously offers a multitude of marks to create an identification of a virtual sharp.  The main problem I run into with SolidWorks and this function is that I’m working in drawing scales or with radii sizes that frequently make such marker nearly invisible without a magnification glasses.  The other problem is that none of the marks are identified in any standards.  Heck, a third problem is that fact that the functionality is extremely hidden.  You have to know how to make a virtual sharp mark because there’s not button, or icon specifically for it.  It’s a short series of steps that would be nearly impossible to guess at.

Those steps being (within a drawing): 1) Select each of the two object lines that intersect in space. 2) Select the Point function.  How is anyone to know intuitively to select the Point function? Hmm.  Anyway, at least SolidWorks offers some method.  That’s more than can be said about the standards.

I guess I should ask what are others doing to identify dimensions that are to virtual sharps?

Here is an  updated article about Virtual Sharps.