Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Solving Iterative Design Problems with TactonWorks


Published on

Automation tools can do a lot more than just build SolidWorks models and drawings. Learn how Razorleaf Corporation (and independent imlementation firm) solves complex iterative design problems using the TactonWorks configurator engine.

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Solving Iterative Design Problems with TactonWorks

  1. 1. Solving Iterative Design Problems with TactonWorks<br />Paul Gimbel, Business Process Sherpa<br />Razorleaf Corporation<br />
  2. 2. BACKGROUND<br />Razorleaf Corporation<br />SolidWorks Service Partner<br />Services ONLY (we’re not trying to sell you any products, we’re neutral)<br />Data Management (EPDM, Enovia, SmarTeam, Aras, V6, MatrixOne)<br />Design Automation (DriveWorks, Tacton, Custom Programmed API)<br />Workflow Automation (Microsoft SharePoint and Tools)<br />Paul Gimbel (aka “The Sherpa”)<br />Mechanical Engineer, SolidWorks Demojock, Automation Implementer<br />All Razorleaf presentations will be available at<br />and on<br />
  3. 3. Agenda<br />This is NOT a TactonWorks sales pitch (I don’t sell TactonWorks)<br />Although if you’re looking at TactonWorks, this might be a good look at how the product can be used<br />This is NOT a TactonWorks training course<br />Although if you are a TactonWorks user, you may learn something new<br />New thinking process for design automation<br />I’ll pass around an assumption and preconceived notions box, if everyone can just drop theirs in and pass it around, I’d appreciate it.<br />The Razorleaf<br />Army<br />Donate your outdated beliefs and preconceived notions<br />
  4. 4. What do we mean by an ITERATIVE PROCESS?<br />Marked by iteration.<br />The act or an instance of iterating.<br />See iterate.<br />
  5. 5. Case Study: Safety Rails<br />
  7. 7. The Basic Problem: Too Many Unknowns<br />The User Knows:<br />Overall Length<br />We need to know:<br />Number of segments<br />Length of each segment<br />
  8. 8. Traditional Approach 1: Ask For More Information<br />Given: Overall Length<br />Solution 1: Ask for more information<br />Cascading Input Approach<br />Min and Max f(Overall Length)<br />60<br />60<br />
  9. 9. Cascading User Interfaces: The Address Book<br />
  10. 10. Traditional Approach 2: Make Assumptions<br />
  11. 11. The New Paradigm…Darn Them!!<br />In case you were wondering:<br />(from<br />
  12. 12. Quick Background: What is TactonWorks<br />TactonWorks<br />SolidWorks Add-In (Gold Solution Partner)<br />Drive SolidWorks models<br />Tacton Configurator<br />Configuration solver engine<br />Configuration problem<br />A problem with a finite number of solutions and a set of guidelines<br />Note: 16,214,875,175,438,624 IS A FINITE NUMBER<br />Pretty much everything is really finite if you think about it<br />
  13. 13. How and Why Does TactonWorks Work Here?<br />Holistic approach<br />Consider all constraints and options at once<br />Develop a complete solution set to present back to the user<br />Re-solve the complete solution set each time<br />No dependencies<br />
  14. 14. Starting Our Design Tree<br />
  15. 15. Variant Tables: Your Storeroom in TactonWorks<br />
  16. 16. Populating Your Variant Table<br />
  17. 17. Using Variant Tables to Select Components<br />Inherited Attributes<br />
  18. 18. Creating Attributes<br />1 2 0 0 k<br />Ʊ<br />
  19. 19. Omnidirectional Constraints<br />All of<br /> These<br /> Are<br /> Equivalent. <br /> All<br /> Are<br /> Just As<br /> Effective.<br />
  20. 20. TactonWorks Design Tree Dynamics<br />3<br />
  21. 21. The Omnidirectional User Interface<br />Locking in the segment length yields inconsistent choices<br />
  22. 22. Dynamic User Interface<br />
  23. 23. Referencing Specific Instances<br />
  24. 24. Dynamic Constraints<br />
  25. 25. Generic Instance Constraints<br />Generic instance references expand to address all instances<br />This is the same as:<br />Segment[1].StartLocation=Segment[2].EndLocation<br />AND<br />Segment[2].StartLocation=Segment[3].EndLocation<br />AND<br />Segment[3].StartLocation=Segment[4].EndLocation<br />AND….<br />
  26. 26. This and All and Custom Collections<br />Collections group a series of components together<br />THIS collection is a collection of a component and all of its subcomponents<br />ALL collection crosses boundaries to any component in the implementation<br />The THIS collection used at the top-level assembly is the same as ALL<br />
  27. 27. Dynamic Quantities<br />Component quantities can be:<br />Static values (ex. 3)<br />One component for each member of a variant table (aka Domain)<br />Driven by an attribute (on the direct parent or TLA)<br />
  28. 28. User Interface Steps and Dynamics<br />User interface steps solve a portion of the design tree<br />That branch of the design tree must be known going into the step<br />All component quantities must be known<br />To create dynamic quantities:<br />Create a step to determine the qty<br />The next step can use that qty<br />Create a parallel area in the tree<br />
  29. 29. Creating an Inputs Component – The Full Process<br />Create a component in the Design Tree to collect the inputs<br />Create attributes for your inputs<br />Create default values using constraints with ~=<br />Create parallel attributes in the top-level component<br />Use to ensure that the values are passed<br />2<br />4<br />1<br />3<br />5<br />
  30. 30. Updating the UI for an Inputs Component<br />Create a new first UI step (Top Part = Inputs) for new attributes<br />Set Qty and Overall Length to be Read-Only in the second UI step<br />
  31. 31. Summary<br />Dynamics allows us to replicate a portion of our tree<br />Static values, attribute values or domain size<br />References can be direct (ex. Segment[1]) or generic (Segment[instance])<br />Collections (all. and this.) make global constraints easier<br />Dynamic quantities must be solved in a previous user interface step<br />Create a parallel Inputs component to collect information -<br />Make values ReadOnly once they have been established in a step<br />
  32. 32. Questions (and hopefully Answers)<br />Here’s the Audience Participation Portion of the Show<br />
  33. 33. Still Open For Questions!!!<br />PLEASE!!<br />Let’s see if they really read the evaluation forms…<br />In the comments section, after your comments………everyone write…<br />“Wow, that last climb was steep!”<br />Cadel Evans beats Alberto Contador to the line at Fleche-Wallonne. <br />Photo by AFP/Getty Images.<br />For the complete version of the presentation, including presenter notes, full code and models, visit after the show! Yes, it’s free.<br />
  34. 34. SolidWorks Trivia Question #1<br />SolidWorks used to have a release cycle of around nine months. When a second major release appeared in 1997, what was the second version called?<br />SolidWorks 97v2<br />SolidWorks R97v2<br />SolidWorks 97Plus<br />Skippy the Wonder CAD<br />Secondary releases were known as “plus” releases. SolidWorks released 97Plus, 98Plus and 2001Plus.<br />
  35. 35. SolidWorks Trivia Question #2<br />The first release of SolidWorks, SolidWorks 95, included a printed User’s Guide. How many pages were in the SolidWorks 95 User’s Guide?<br />22<br />107<br />15<br />248,315<br />The user’s guide was a scant 22 pages in a format somewhere around 6” wide x 9” tall.<br />
  36. 36. SolidWorks Trivia Question #3<br />How many SolidWorks Certified Trainers existed worldwide with the release of SolidWorks 97Plus?<br />10<br />25<br />100<br />1000<br />Trick question. <br />SolidWorks began <br />training certification in 1997.<br />
  37. 37. SolidWorks Trivia Question #4<br />Before deciding on SolidWorks, which of the following names were being considered by Jon Hirshtick?<br />The Magical Mystery Mechanical Tour<br />Digital Interactive Prototyping With Advanced Deployment (or DIPWAD for short)<br />Bro/ENGINEER<br />All of the above<br />OK, fine. <br />I made this one up.<br />