🧊.Week 5- 3D print and scanss.🧊

3D printing is always exciting, to watch something being built layer by layer right in front of your eyes is absolutely mesmerizing, the possibilities one unlocks with a machine like such is immense,
  • However 3D printing is treated more and more as alternatives for finished products. As a product designer with a certain OCD with finishes, this doesn't sit right with me
  • In my exploration for this week I put my 3D printer to do jobs That ONLY a 3D printer can do.
  • Understanding .gcode

    What is it
  • If you have ever 3D printed you might have some idea as to what a .gcode is.
  • To put it simply, gcode is a alphanumeric set of instructions that can communicate with your 3D printer regarding
    • Rapid movements - Indicated by G0
    • Precise movement in coordinate directions - Indicted by G1
    • Set extruder temp - Indicted by M104
    • Origin set - Indicted by G92
    • Bed temp Set - Indicted by M140
    • Pause and stop commands - Indicted by M0 & M1

    And many more set of commands controlling various aspects for a FDM print to come to life

  • Since a FDM print mostly needs nozzle head moving to specific coordinates, G commands are the most common in lines of .gcode, thus the prevalent name
    For starters i wanted to see a live gcode created by my slicer

    I imported an old stl just to read through the generated gcode and interpret it, now that i understand commands a little

    As you can see, various alphanumeric commands

    I read through a few lines roughly understanding whats going on

    If i wanted to control my own gcode, understanding what a correct working one was crucial

    The software is an old outdated creality print software, you can use many slicers like orca, ultimaker and more
    https://youtu.be/2fqDubW4t5I?si=ITK-Z_dBSkdkXYrI
    Above is a consice video explaining gcode.
    https://youtu.be/OE_daHEf1MM?si=PUP1JbDN3juhq6Sy
    Next i started by trying to create my own gcode using grasshopper

    Above link is a free youtbe tutorial led by a industry leader in non-planar printing

    Non-planar printing

    Non-planar 3D printing is an advanced technique where the print head moves in all three dimensions ( X 𝑋, 𝑌 and Z ) simultaneously, allowing material to be deposited along curved, contoured, or sloping surfaces rather than just flat, stacked horizontal layers. This approach improves surface quality, increases strength, and reduces support material.

    This is extremely cool because if you master this, your prints can come super smooth with minimal layer lines, and structures that are far superior

    I recommend using your tabs as Seen.
    In grasshopper you can press space or double left click to search for commands
    First we make a basic cylinder of certain height and diamter in grasshopper
    Commands

    Cylinder

    panel- set value for height

    Connect respective panels on height and dia

    Now we need to devide this surface type structures into curves/ paths that the tool can follow

    You can do so with the divide curve command
    Result
    Then we divide each curve into a set value of points to act as xy and z co ordinates
    commands

    Divide curve

    Result

    now we need a polyline

    a continuous curve extending throughout the cylinder

    We can make a tree of the previous curves and feed it into a polyline command
    Result

    Now we can take x,y and z co ordinates of each point and polyline, add other elements of extrude amount, speed, origin. Concatenate them all, and voila

    Something like this

    Each panel on the left indicates a a postion or a code, the result panel takes values from co ordinates and merges both to create a aphanumeric file.

    This is a sample grasshopper, real code will have many more factors

    Remember- What we have done till now only sets the working protocol, the start and end still have to be defined

    On the right side of the screen you can see the result being seen on a panel. and i have also set a start protocol and an end protocol which i then bring to a final panel creating a g code
    A basic gcode for a cylinder is ready.
    Right click and COPY DATA ONLY
    Paste the text onto the most complex software of all time- notepad
    Export it as .gcode, remeber to untick .txt default saving command

    You can now open this gcode on any slicer and your model should appear

    .Wireframe modeling using blender.

    Next i tried to create a tesseract type structure using wireframe modelling

    First we create a icosohedron using math funtions in blender.
    Commands-
  • Shift + A to add
  • mesh- math funtions- regular solid
  • If you don't find math functions, you can add it manually using add-ons on prefrences.
    Your icosohedron should appear
    We now use modifiers to create our shape.

    Wireframe modifier

    more modifiers

    bevel modifier

    Subdivision surface modifier

    Remember to apply your modifiers
    Wireframe icosehedron is ready
    Modify your thickness well. thinner structures like this that are curved at the bottom won't stick well to the bed plate. causing the print to fail
    Import STL to your slicer
    You can take help of the automatic lay on face option, to make one side of the model completely flat to the bed plate
    For the sake of preventing brims and print quality i chopped 3 mm of the bottom section to make it flat.
  • (and hoped to god it does not come off the plate while printing)
  • You can take help of the automatic lay on face option, to make one side of the model completely flat to the bed plate

    Result

    .Modelling that can be used ONLY on FDM.

    Before i started this, it was important to know my printers max possible overhang angles, as my print with complex structures wont have supports
    These were at max speed (300m/s ) 15 percent infill and on a bambulabs A1 printer

    I tried setting the fan at 100 percent for the entire print to cool down plastic quickly

    Lets jump to modelling now

    First we open rhino and set our document properties to mm
    We plot point's at the center, of the grid, 150 point array. the grasshopper looks something like this
    Result
    Now we need to create circles with our points as centres
    Once we do that such lines should appear
    Along those dots, we need to create more dots at a certain distance so that we can create ridge like structures
    With these new dots we can offset lines which we can join later to create gear like structures in an progressive manner
    Here we create a offset of the segments created by the dots as seen in the previous oic
    Now we need to bridge the two segments
    We cross connect start and end segments that we take into a curve module by nesting all together
    Result, you can see how the lines no connect with each other
    Now we take all geometry into one module, such that we can loft the structures
    Almost there
    Bake your loft into blender
    Baking might take time but VOILA
    Remeber to lock all your grasshopper commands that are computationzlly heavy, they will cause issues on restart, also hide them
    Result

    Exporting

    Export using stl with the same check boxes
    Remember to go to detailed export and switch to smnooth and slow and untick jaggered seams
    I have not documented every single detail to create but rather major steps. to create follow along the listed youtube video

    .Slicer.

    Once we have our model we can import it into our selected slicer

    im using bambu studio

    While i imported the model, the preview seemed correct, but
    My sliced model was FILLED and had NO texture
    I realised that the issue was in my slicer, where top layer was set to 5, causing the entire structuire to get filled
    once i bought that to zero, issue solved.
    The texture absence was due to an export error, and the fill was due to slicer, keep all ends tight while you make complex structures

    Final result

    Final result
    The top half of the print faces some issue

    i suspect its due t my ridge size(.5mm) be awfully close to my nozzle width(.4)

    Soon we try non- planar again😈😈😈😈

    𝄃𝄃𝄂𝄂𝄀𝄁𝄃𝄂𝄂𝄃.3D Scanning.𝄃𝄃𝄂𝄂𝄀𝄁𝄃𝄂𝄂𝄃

    What is 3D scanning
    3D scanning is the process of analyzing a real-world object or environment to collect 3D data regarding its shape, and texture.
    We were using the einscan 3D scanner for this week
  • It is a desktop/portable hybrid scanner that can scan using light as well as scanner dots.
  • The 3D gun with the einscan
    The 3D gun with the einscan
    The software used is a proprietery software called Einscan pro
    https://support.einscan.com/en/support/solutions/articles/60001048840-the-latest-software-for-einscan-pro-2x-v2-pro-hd
    First we name our file
    Second is mode selection.
    Second is mode selection.

    Different modes and how they work.

    For starters we tried a pottery vase, lined it with dots and started scanning.
    Unfortunately because of some techincial issue, the Einscan wasnt feeding anything to the pc, even the preview window on the top left of the software was blank.

    Temporarily working with Kiri Engine - Li-dar Scanning

    Photoscan result
    Li-dar scan result
    Some of the files in this weeks exploration are veryyyy heavy, thus I have added those files on drive and sharing a link here. https://drive.google.com/drive/folders/10e3MTSSuun_q6KfYZeDMSMj6cKZn07kZ?usp=share_link

    Link to heavy files that i cant post here

    Grasshopper file, lampshade
    complete grasshopper nodes file
    Download File
    STL for wireframe dodecahedron file
    Download File