pl techniques for 3d printing
play

PL Techniques for 3D Printing Zachary Chandakana Anat Dan Tatlock - PowerPoint PPT Presentation

PL Techniques for 3D Printing Zachary Chandakana Anat Dan Tatlock Nandi Caspi Grossman Compilers generate our environment. Computerized Manufacturing CNC Computerized Manufacturing CNC Mold Making Robotic Assembly Computerized


  1. PL Techniques for 3D Printing Zachary Chandakana Anat Dan Tatlock Nandi Caspi Grossman

  2. Compilers generate our environment.

  3. Computerized Manufacturing CNC

  4. Computerized Manufacturing CNC Mold Making Robotic Assembly

  5. Computerized Manufacturing

  6. Computerized Manufacturing CAM Machine Instructions

  7. Computerized Manufacturing CAD IR CAM Machine Instructions

  8. Computerized Manufacturing CAD IR CAM Machine Instructions

  9. CAD/CAM : Idea → Part CAD CAM

  10. CAD/CAM : Idea → Part Where is the PL theory? - semantics - equivalence - refinement CAD - approximation CAM

  11. CAD/CAM : Idea → Part Where is the PL theory? - semantics - equivalence - refinement CAD - approximation CAM Already worthy challenge, but recently…

  12. Democratized Manufacturing

  13. 3DP: PL Opportunity 3D Printing Background Challenge: CAD Synthesis Challenge: Slicing Framework

  14. Idea

  15. CAD STL 1. Design Idea

  16. CAD STL 1. Design Idea 2. Slice G-code

  17. CAD STL 1. Design Idea 2. Slice 3. Print Part G-code

  18. CAD STL 1. Design Idea 2. Slice 4. OK? 3. Print Part G-code

  19. CAD STL 1. Design Idea 2. Slice 4. OK? iterate 3. Print Part G-code

  20. 3DP: PL Opportunity 3D Printing Background Challenge: CAD Synthesis Challenge: Slicing Framework

  21. Challenge: CAD Synthesis : CAD → STL : STL → G-code : G-code → Part

  22. Challenge: CAD Synthesis : Idea → CAD ??? : CAD → STL : STL → G-code : G-code → Part

  23. Today: Crowdsource Designs : Internet → Idea → STL

  24. Today: Crowdsource Designs : Internet → Idea → STL + Easy

  25. Today: Crowdsource Designs : Internet → Idea → option STL + Easy - Incomplete

  26. Today: Crowdsource Designs : Internet → Idea → option STL + Easy - Incomplete - Hard to modify

  27. Today: Crowdsource Designs : Internet → Idea → option STL Goal For idea i , even when: ( , i) = None there often exists similar i’ such that: ( , i’) = Some s So: adapt “almost” design s to a design for i !

  28. Example “Almost” Designs Rotated Hex Hole Broken Chicken Legs

  29. Inferring CAD to fix hex holder

  30. Inferring CAD to fix hex holder Bent wrench not seating parallel :(

  31. Inferring CAD to fix hex holder Bent wrench not seating parallel :( Simple mesh editing broke model.

  32. Inferring CAD to fix hex holder

  33. Inferring CAD to fix hex holder Infer (manual)

  34. Inferring CAD to fix hex holder Infer (manual) Tweak (small)

  35. Inferring CAD to fix hex holder Infer (manual) Tweak (small) Print (success)

  36. Inferring CAD to fix chicken Legs too thing => broke! Expanding leg in STL tedious.

  37. Inferring CAD to fix chicken Infer (manual) Tweak (small) Print (success)

  38. Challenge: CAD Synthesis decompiler : Internet → Idea → CAD : CAD → STL : STL → G-code : G-code → Part

  39. 3DP: PL Opportunity 3D Printing Background Challenge: CAD Synthesis Challenge: Slicing Framework

  40. Exploring Slicing Strategies Partitioning [Chopper 12] Curved Layer FDM [CAD 08] Parallelization Multi-material [OpenFab 13] Approx [Wireprint 14]

  41. 3DP Slicing Framework Today: roll your own framework Goal: LLVM / CIL for 3D Printing Should enable exploring many new strategies: - error compensation - G-code synthesis with Z3 - parallelizing peepholes - cross-part constraint - …

  42. 3DP: PL Opportunity Solid foundation: Goals: compiler theory fab theory - - fast solvers efficiency - - diverse synthesis self-stabilize - - num. methods tools - -

  43. Compilers generate our environment.

  44. Compilers generate our environment. PL folk can develop the tools to make it better.

  45. Thank You! Compilers generate our environment. PL folk can develop the tools to make it better.

Recommend


More recommend