COMPUTER-CONTROLLED CUTTING

For Week4 : vinyl cutter assignment goto:
Week4 vinyl cuttter page

Ring shade

Download final scad code

scad

Assignment

group:

characterize your lasercutter, making test part(s)
that vary cutting settings and dimensions

individual:

Characterizing laser cutter in lab

Result

test cut
When using 3mm thick cardboard, 2.60mm fitted the most, but we decided to set our offset value to 0.45mm (which means 2.55mm in thickness), because the joints get loose as you keep assemble and diassemble.
As we assumed, the direction mattered. Vertical gap worked better, but it makes the parts weaker that easily break while assembling.

Material : Cardboard
Material thickness : 3mm
Offset value : 0.45

Go to group page for further information.

Press-fit Kit

Research

I browsed through the press-fit kit projects in former Fabacademy.
Here are the projects I found interesting…
Tiffany Tseng (2011)
Kathy Sinclair (2013)
Sang-won Leith (2014)

Coming up with ideas

Draw some sketch for brain-storming ideas and picked one up which is the most feasible at this point…
sketch

Design : OpenSCAD

Parametric design was the requirement of the assignment, so I chose OpenSCAD to make the model.

General info on OpenSCAD

OpenSCAD does not focus on the artistic aspects of 3D modeling, but instead focuses on the CAD aspects. (OpenSCAD User Manual Wiki)

Putting it simply, with OpenSCAD you can make solid 3D CAD objects by just writing a code.

Tutorials
For beginners
Full OpenSCAD manual
Japanese material
Full OpenSCAD manual (translate)
OpenSCADで始めるプログラマブルな3Dモデリング

OpenJSCAD
OpenJSCAD
OpenSCAD runs in a browser.

Making model

Here is basic ring module.
scad
Take a look on the first few lines of the code, these are the values you can tweak around.
In order to make desirable pressfit, adjust the value “offset” according to the characteristic of your laser cutter. This value changes the actual width of the kerfs so that they fit each other to make sufficient pressfit kit.

thick = 3; //thickness of the material
offset = 0.45; //enter offset characteristic to the laser cutter

radius = 100;   //radius of the ring
joints = 20;    //number of joints
joint_depth = 10;   //joint depth

Taking basic ring module, the following code cut it into 1/1, 1/2 and 1/3 size.
scad

Code (contains size error! Revised code at the bottom of this page)

thick = 3; //thickness of the material
offset = 0.45; //enter offset characteristic to the laser cutter

diameter = 100;   //diameter of the ring
joints = 20;    //number of joints
joint_depth = 10;   //joint depth


module shade_ring(diameter, joints, joint_depth){
    difference(){
    cylinder(r=diameter, h=thick);
    cylinder(r=diameter-joint_depth*2, h=thick);

    rotate( 360/(joints*2), [0,0,1])
     for ( i = [0:joints] ) {
      rotate( i*360/joints, [0, 0, 1])
       translate( [0, diameter-joint_depth, 0] ) cube(size=[thick-offset, joint_depth, thick]); 
     };

     for ( i = [0:joints] ) {
      rotate( i*360/joints, [0, 0, 1])
       translate( [0, diameter-joint_depth*2, 0] ) cube(size=[thick-offset,joint_depth,thick]); 
     };
    }
 
}; //module shade_ring

module shade_ring_cut(diameter, joints, joint_depth, angle){
intersection(){
    translate([-diameter*2,0,0]) cube(size=[diameter*4, diameter*2, diameter*2]);
    rotate([0,0,angle]) translate([-diameter*2,-diameter*2,0]) cube(size=[diameter*4, diameter*2, diameter*2]);
    
   difference(){
    cylinder(r=diameter, h=thick);
    cylinder(r=diameter-joint_depth*2, h=thick);

    rotate( 360/(joints*2), [0,0,1])
     for ( i = [0:joints] ) {
      rotate( i*360/joints, [0, 0, 1])
       translate( [0, diameter-joint_depth, 0] ) cube(size=[thick-offset, joint_depth, thick]); 
     };

     for ( i = [0:joints] ) {
      rotate( i*360/joints, [0, 0, 1])
       translate( [0, diameter-joint_depth*2, 0] ) cube(size=[thick-offset,joint_depth,thick]); 
     };
    };
    };
};//module shade_ring_cut


projection(cut = true){
shade_ring(diameter, joints, joint_depth);
// 1/3 (120degree)
translate([300,0,0]) shade_ring_cut(diameter, joints, joint_depth, angle=120);
// Half (180degree)
translate([600,0,0]) shade_ring_cut(diameter, joints, joint_depth, angle=180);
}

Download Data (contains size error! Revised data at the bottom of this page)

scad data
svg
STL

Laser cutting

First attempt failiure

What I discovered was OpenSCAD does not have scale data. I had to scale it with some other software after exported from OpenSCAD.

Second attempt ended up in failure too


This time I tried scale it on illustrator but again it resulted in failure. I stuck at this point and spent almost a week trying to fix it.

Finaly succeeded get it in right size


After all, the problem was the parameter in command to generate cylinder. I had to put radius not diameter, so the size was twice as big as I expeced.

Looks like the Death Star…

Download final scad code

scad