cyclops heat sink

Discussion in 'General' started by N3MIS15, Dec 14, 2014.

  1. N3MIS15

    N3MIS15 Member

    Joined:
    Mar 9, 2014
    Messages:
    15
    Likes Received:
    0
    I am making a model of the heat sink of the cyclops/chimera hotend and noticed a discrepancy in the fins measurements.

    1.75mm fins with 2.5mm spacing.
    8 fins at 1.75mm = 14mm
    7 spacings at 2.5mm = 17.5mm

    14mm + 17.5mm = 31.5mm

    The images on the chimera page say the the heatsink has a total height of 30mm.
    The math doesn't add up.

    I am trying the recreate the cyclops hotend in openscad so I can design a carriage around it. Any confirmations on measurements would be greatly appreciated.
     
  2. N3MIS15

    N3MIS15 Member

    Joined:
    Mar 9, 2014
    Messages:
    15
    Likes Received:
    0
    FWIW..
    Code:
    thread = 2.5;
    
    module filament_path() {
    	cylinder(r=4.2/2, h=30, center=true);
    	// top
    	translate([0, 0, 30/2-6.5/2]) cylinder(r=8/2, h=6.5, center=true);
    	translate([0, 0, 30/2-6.5-0.5]) cylinder(r1=4.2/2, r2=8/2, h=1, center=true);
    	// bottom
    	translate([0, 0, -30/2+14/2]) cylinder(r=7/2, h=14, center=true);
    	translate([0, 0, -30/2+14+0.5]) cylinder(r1=7/2, r2=4.2/2, h=1, center=true);
    }
    
    
    
    
    difference() {
    	cube([30 ,18, 30], center=true);
    	// filament paths
    	translate([-18/2, -18/2+6, 0]) filament_path(); //right
    	translate([+18/2, -18/2+6, 0]) filament_path(); //left
    	
    	// fins
    	for ( i = [0 : 6] ){
    		translate([0, 18/2-6/2, -30/2+(2.5/2+1.75/2)+((1.75+2.5)*i)]) cube([30,6,2.5], center=true);
    	}
    
    	// heasink mount holes
    	translate([0, -18/2+3, 30/2-8/2]) cylinder(r=thread/2, h=8, center=true);
    	translate([8.5, -18/2+15, 30/2-8/2]) cylinder(r=thread/2, h=8, center=true);
    	translate([-8.5, -18/2+15, 30/2-8/2]) cylinder(r=thread/2, h=8, center=true);
    
    	translate([4.5, -18/2+8/2, 5]) rotate([90, 0, 0]) cylinder(r=thread/2, h=8, center=true);
    	translate([-4.5, -18/2+8/2, 5]) rotate([90, 0, 0]) cylinder(r=thread/2, h=8, center=true);
    	translate([0, -18/2+8/2, -5]) rotate([90, 0, 0]) cylinder(r=thread/2, h=8, center=true);
    
    	// heater block mount holes
    	translate([9, 0, -30/2+3]) rotate([90, 0, 0]) cylinder(r=thread/2, h=18, center=true);
    	translate([-9, 0, -30/2+3]) rotate([90, 0, 0]) cylinder(r=thread/2, h=18, center=true);
    	translate([9, 0, -30/2+3+8]) rotate([90, 0, 0]) cylinder(r=thread/2, h=18, center=true);
    	translate([-9, 0, -30/2+3+8]) rotate([90, 0, 0]) cylinder(r=thread/2, h=18, center=true);
    
    	// fan mount?
    	translate([12, 18/2+8/2, 12]) rotate([90, 0, 0]) cylinder(r=2.8/2, h=8, center=true);
    	translate([-12, 18/2+8/2, -12]) rotate([90, 0, 0]) cylinder(r=2.8/2, h=8, center=true);
    }
    
    The only issue I have is the fins "for" loop.
     

Share This Page