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

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

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 />