Main > Everything Else
Need a little help with a 3D print
(1/2) > >>
danny_galaga:
At the moment I'm kinda pushing sheet uphill with learning what I need to know. I have an old computer that needs updating so I'm just using the online version of sketchup on my partners laptop. I'm using Cura on her laptop to slice. I find it hard to tell if it will work properly or not even though there is a preview function in cura.

So the bit I'm having trouble with is making that lip work. you can see from the 3d drawing how it should be (if you look closely there are some artifacts from me not doing something right and I suppose it means it wont 3d print). The best ive managed so far is the pic attached. not a lip. just 4 little bumps. So ive tried using the push/pull by first making the rim 1mm, then pulling the lip up 1.6mm where id drawn a circle. ive also tried pulling the whole thing to 2.6mm, then pushing the face down 1.6mm, leaving a lip. I have a feeling my problem is somehow related to how i draw a circle for the rim but damned if i can see how else you would do it. I've also tried making a profile and using follow me. i think the 3d drawing ive attached is from that attempt..

what could i be doing wrong? What is the simplest way to do this?
PL1:

--- Quote from: danny_galaga on April 16, 2020, 06:49:30 am ---What is the simplest way to do this?

--- End quote ---
Not sure how to do that in Sketchup, but it's easy to do in OpenSCAD with translates (moves) and six difference (cylinder - cylinder) commands.
- One for the body
- One for the lip
- Four for the screw mounts

I'll make a parametric version and post the code + an .STL for you -- LMK the diameters (outer and inner), thicknesses, and the center-to-center distance between adjacent screw-holes.


Scott
EDIT: Here's the code -- we just need to adjust the variables on lines 7-17 to suit your needs, render, and export to .STL.   ;D

--- Code: ---// Danny_Galaga part

/////////////////////////////
//      Define variables
/////////////////////////////

ScrewDist = 60;        // Center-to-center distance between adjacent screw-holes
ScrewThick = 2;       // Screw tab thickness
ScrewOD = 14;         // Screw tab outer diameter
ScrewLargeID = 8;     // Screw tab large inner diameter
ScrewSmallID = 5;     // Screw tab small inner diameter
// If no countersink is desired, use same value for both large and small inner diameters
BodyOD = 76;          // Body outer diameter
BodyID = 60;          // Body inner diameter
BodyThick = 2;        // Body thickness
LipOD = 64;           // Lip outer diameter
LipThick = 1.6;       // Lip thickness (height above body, not total thickness)

// Hole diameter values need to be *very slightly* larger to account for the 180-sided polygon used to render circles -- see "undersized holes" at https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/Primitive_Solids#cylinder
$fn=180; // Number of fragments (polygon sides) used to render a circle

/////////////////////////////
//      Make the part
/////////////////////////////

difference() { // Screw tab 1
    translate([ScrewDist/2, ScrewDist/2, ScrewThick/2])
    cylinder(ScrewThick, d=ScrewOD, center=true);

    translate([ScrewDist/2, ScrewDist/2, ScrewThick/2])
    cylinder(h=ScrewThick+0.1, d1=ScrewLargeID, d2=ScrewSmallID, center=true);
}  // End of screw tab 1
//

difference() { // Screw tab 2
    translate([ScrewDist/2, -ScrewDist/2, ScrewThick/2])
    cylinder(ScrewThick, d=ScrewOD, center=true);

    translate([ScrewDist/2, -ScrewDist/2, ScrewThick/2])
    cylinder(h=ScrewThick+0.1, d1=ScrewLargeID, d2=ScrewSmallID, center=true);
}  // End of screw tab 2
//

difference() { // Screw tab 3
    translate([-ScrewDist/2, -ScrewDist/2, ScrewThick/2])
    cylinder(ScrewThick, d=ScrewOD, center=true);

    translate([-ScrewDist/2, -ScrewDist/2, ScrewThick/2])
    cylinder(h=ScrewThick+0.1, d1=ScrewLargeID, d2=ScrewSmallID, center=true);
}  // End of screw tab 3
//

difference() { // Screw tab 4
    translate([-ScrewDist/2, ScrewDist/2, ScrewThick/2])
    cylinder(ScrewThick, d=ScrewOD, center=true);

    translate([-ScrewDist/2, ScrewDist/2, ScrewThick/2])
    cylinder(h=ScrewThick+0.1, d1=ScrewLargeID, d2=ScrewSmallID, center=true);
}  // End of screw tab 4
//

difference() { // Body
    translate([0, 0, BodyThick/2])
    cylinder(BodyThick, d=BodyOD, center=true);

    translate([0, 0, BodyThick/2])
    cylinder(BodyThick+0.1, d=BodyID, center=true);
}  // End of body
//

difference() { // Lip
    translate([0, 0, BodyThick+LipThick/2])
    cylinder(LipThick, d=LipOD, center=true);

    translate([0, 0, BodyThick+LipThick/2])
    cylinder(LipThick+0.1, d=BodyID, center=true);
}  // End of lip
//

--- End code ---
05SRT4:
Same, I dont use sketchup that often, I am mostly in Fusion 360. But this would be a really easy model to make in Tinkercad Free browser CAD app.

If you share some dimensions I could right up a .stl for you
PL1:

--- Quote from: danny_galaga on April 16, 2020, 06:49:30 am ---I'm using Cura on her laptop to slice. I find it hard to tell if it will work properly or not even though there is a preview function in cura.

--- End quote ---
Have you tried changing the view mode to "layers"?

That will show you the path that the print head follows, where it extrudes, where it moves without extruding, and where it lifts.
- There's a vertical slider so you can see each individual layer of the print.

If the lip is too thin compared to the nozzle width, Cura may be ignoring the parts where it can't calculate a smooth/complete path for your printer to poop plastic.   :lol


Scott
danny_galaga:

--- Quote from: PL1 on April 16, 2020, 08:18:21 am ---
--- Quote from: danny_galaga on April 16, 2020, 06:49:30 am ---What is the simplest way to do this?

--- End quote ---
Not sure how to do that in Sketchup, but it's easy to do in OpenSCAD with translates (moves) and six difference (cylinder - cylinder) commands.
- One for the body
- One for the lip
- Four for the screw mounts

I'll make a parametric version and post the code + an .STL for you -- LMK the diameters (outer and inner), thicknesses, and the center-to-center distance between adjacent screw-holes.


Scott
EDIT: Here's the code -- we just need to adjust the variables on lines 7-17 to suit your needs, render, and export to .STL.   ;D

--- Code: ---// Danny_Galaga part

/////////////////////////////
//      Define variables
/////////////////////////////

ScrewDist = 60;        // Center-to-center distance between adjacent screw-holes
ScrewThick = 2;       // Screw tab thickness
ScrewOD = 14;         // Screw tab outer diameter
ScrewLargeID = 8;     // Screw tab large inner diameter
ScrewSmallID = 5;     // Screw tab small inner diameter
// If no countersink is desired, use same value for both large and small inner diameters
BodyOD = 76;          // Body outer diameter
BodyID = 60;          // Body inner diameter
BodyThick = 2;        // Body thickness
LipOD = 64;           // Lip outer diameter
LipThick = 1.6;       // Lip thickness (height above body, not total thickness)

// Hole diameter values need to be *very slightly* larger to account for the 180-sided polygon used to render circles -- see "undersized holes" at https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/Primitive_Solids#cylinder
$fn=180; // Number of fragments (polygon sides) used to render a circle

/////////////////////////////
//      Make the part
/////////////////////////////

difference() { // Screw tab 1
    translate([ScrewDist/2, ScrewDist/2, ScrewThick/2])
    cylinder(ScrewThick, d=ScrewOD, center=true);

    translate([ScrewDist/2, ScrewDist/2, ScrewThick/2])
    cylinder(h=ScrewThick+0.1, d1=ScrewLargeID, d2=ScrewSmallID, center=true);
}  // End of screw tab 1
//

difference() { // Screw tab 2
    translate([ScrewDist/2, -ScrewDist/2, ScrewThick/2])
    cylinder(ScrewThick, d=ScrewOD, center=true);

    translate([ScrewDist/2, -ScrewDist/2, ScrewThick/2])
    cylinder(h=ScrewThick+0.1, d1=ScrewLargeID, d2=ScrewSmallID, center=true);
}  // End of screw tab 2
//

difference() { // Screw tab 3
    translate([-ScrewDist/2, -ScrewDist/2, ScrewThick/2])
    cylinder(ScrewThick, d=ScrewOD, center=true);

    translate([-ScrewDist/2, -ScrewDist/2, ScrewThick/2])
    cylinder(h=ScrewThick+0.1, d1=ScrewLargeID, d2=ScrewSmallID, center=true);
}  // End of screw tab 3
//

difference() { // Screw tab 4
    translate([-ScrewDist/2, ScrewDist/2, ScrewThick/2])
    cylinder(ScrewThick, d=ScrewOD, center=true);

    translate([-ScrewDist/2, ScrewDist/2, ScrewThick/2])
    cylinder(h=ScrewThick+0.1, d1=ScrewLargeID, d2=ScrewSmallID, center=true);
}  // End of screw tab 4
//

difference() { // Body
    translate([0, 0, BodyThick/2])
    cylinder(BodyThick, d=BodyOD, center=true);

    translate([0, 0, BodyThick/2])
    cylinder(BodyThick+0.1, d=BodyID, center=true);
}  // End of body
//

difference() { // Lip
    translate([0, 0, BodyThick+LipThick/2])
    cylinder(LipThick, d=LipOD, center=true);

    translate([0, 0, BodyThick+LipThick/2])
    cylinder(LipThick+0.1, d=BodyID, center=true);
}  // End of lip
//

--- End code ---

--- End quote ---

Thanks! That looks a bit too testicle for me as I really need a visual cue but if I'm stuck I'll revisit and maybe send you the dimensions.
Navigation
Message Index
Next page

Go to full version