OpenSCAD - Model a Bearing in less than ten minutes.

แชร์
ฝัง
  • เผยแพร่เมื่อ 25 ธ.ค. 2016
  • This shows how you can easily model a bearing in OpenSCAD.
    You can find code for this video at ( the code may be slightly different than in video ):
    github.com/mathcodeprint/open...
    There are two examples there:
    simplebearing.scad - This example is just the bare bones. No fancy parametric stuff here.
    github.com/mathcodeprint/open...
    parametric_bearing.scad - This shows how to use "Parameters", you know those things us mere mortals call constants. It also has the bearing as a module, and how to use the module.
    github.com/mathcodeprint/open...

ความคิดเห็น • 52

  • @tbtitans21
    @tbtitans21 2 หลายเดือนก่อน +1

    Everything I print is directly converted to millimeters so I would say the units are millimeters and thats a nice thing to count on without having to scale

  • @250-25x
    @250-25x 6 ปีที่แล้ว +4

    That was slicker then Eel doody! a 3 minute roller bearing! badass my man!

  • @NavySturmGewehr
    @NavySturmGewehr 5 ปีที่แล้ว +8

    Thank you very much for the video, it was the first think I made with openscad! I believe I improved on yours slightly and it didn't add too much complexity to include the radius'd edges. I look forward to following more of your videos!
    //X,Y,Z
    //Another attempt at a bearing
    //Render Options
    $fn = 50;
    //variables
    rw = 08.00; //Race width
    r = 00.50; //Radius
    id = 20.00; //Inside diameter of bearing
    od = id+(rw*2); //Outside diamter of bearing
    c_rw = rw-(r*2); //Corrected racewidth after minkowski
    d_bb = 05.00; //Diameter of the ball bearing
    r_o = d_bb*0.50; //race opening for lubrication
    //Bearing race assembly
    rotate_extrude() {
    difference() {
    //bearing races
    translate([((od/2)-(rw/2)),0,0]) {
    minkowski() {
    square (c_rw, center = true);
    circle (r = r);
    }
    }
    //bearing path
    translate([((od/2)-(rw/2)),0,0]) {
    circle (d = d_bb);
    }
    //cut out for bearing lubrication
    translate([((od/2)-(rw/2)),0,0]) {
    square([r_o,rw+r], center = true);
    }
    }
    }
    //Ball bearings
    for (ball = [0:30:360]) {
    rotate([0,0,ball])
    translate([((od/2)-(rw/2)),0,0])
    sphere(d = d_bb);
    }

  • @patrickrombaut9469
    @patrickrombaut9469 2 ปีที่แล้ว +1

    Very nice video, learned a lot in a small amount of time. Thanks, Patrick

  • @ironnoriboi
    @ironnoriboi 3 ปีที่แล้ว +14

    Hi, can you make a video where you create {whatever I need}?

  • @marcinjakubowski6010
    @marcinjakubowski6010 4 ปีที่แล้ว +1

    Nice and simple subtraction and circular extrusion.

  • @kevinbowker2385
    @kevinbowker2385 ปีที่แล้ว +1

    FANTASTIC!! Thank you for sharing this

  • @YigalBZ
    @YigalBZ 2 ปีที่แล้ว

    Thank you !! impressive and simple.

  • @WilberCalderon
    @WilberCalderon 5 ปีที่แล้ว +1

    Pare ser una herramienta de diseño 3D muy buena.
    Trataré de usarla para ver si la adopto.
    Saludos desde El Salvador.

  • @dragade101
    @dragade101 ปีที่แล้ว +1

    I dont know if a newer version solved this better but the rotate_extrude() function might be missing parameters of how it defaults. You had the shapes on the XY plane and they extruded while rotating about the Y axis and maybe thats a logical though process by the dev. I don’t think its too unusually. I would first think you stay within a plane, say your objects are within XY and you rotate about X but this is cleaner to think about (that you are drawing your cross section)

  • @iModel-ft6kh
    @iModel-ft6kh 6 ปีที่แล้ว

    Hi Do you use an external editor for openscad. If not why not.

  • @iModel-ft6kh
    @iModel-ft6kh 6 ปีที่แล้ว

    I understand thanks

  • @yksnimus
    @yksnimus 5 ปีที่แล้ว

    can you create joints in openscad? (i think theyre called mates on solidworks)

  • @dartme18
    @dartme18 3 ปีที่แล้ว

    Hi, there, just getting started in SCAD, and this is a super helpful tutorial to get acquainted with the language!
    4:40 did you mean for that circle to be off-center of the rectangles? Maybe the circle should be translate[15,0,0]) circle(3.5)? Or am I ignorant of good bearing design?

    • @dartme18
      @dartme18 3 ปีที่แล้ว

      Oh yeah, it seems to be a mistake because 4:25 "that's the centerpoint between these two...". The center point is 15.

    • @dartme18
      @dartme18 3 ปีที่แล้ว

      Same with the balls at 7:55 ... rotate([0,0,ball]) translate([15,0,0]) sphere (r=3.25)

    • @mathcodeprint
      @mathcodeprint  3 ปีที่แล้ว +1

      No, I think this was addressed in the comments quite some time ago. I was just going for an approach.

    • @dartme18
      @dartme18 3 ปีที่แล้ว +1

      @@mathcodeprint Okay, thanks! This was very helpful, and I've been able to use openscad for a couple drawings already. Thank you!

    • @1islam1
      @1islam1 ปีที่แล้ว

      @@dartme18 🔴 What Is Islam?
      🔴 Islam is not just another religion.
      🔵 It is the same message preached by Moses, Jesus and Abraham.
      🔴 Islam literally means ‘submission to God’ and it teaches us to have a direct relationship with God.
      🔵 It reminds us that since God created us, no one should be worshipped except God alone.
      🔴 It also teaches that God is nothing like a human being or like anything that we can imagine.
      🌍 The concept of God is summarized in the Quran as:
      📖 { “Say, He is God, the One. God, the Absolute. He does not give birth, nor was He born, and there is nothing like Him.”} (Quran 112:1-4) 📚
      🔴 Becoming a Muslim is not turning your back to Jesus.
      🔵 Rather it’s going back to the original teachings of Jesus and obeying him.

  • @nathanielkwak3307
    @nathanielkwak3307 7 ปีที่แล้ว +3

    Thanks for the video, there are a few things I'm confused about.
    the halfway point between 10.5 &19.5 is 15, not 14.75. I don' understand why the finished product looks right yet this non centered point is painfully apparent when taken one step at time?
    rotate_extrude(){
    difference(){
    union(){
    translate([10.5,0,0]) square([5,7],center=true);
    translate([19.5,0,0]) square([5,7],center=true);
    }
    translate([15,0,0])circle(r=3.5,center=true);
    }
    }
    yet this works exactly the same.
    //rotate_extrude(){
    //difference(){
    //union(){
    //translate([10.5,0,0]) square([5,7],center=true);
    //translate([19.5,0,0]) square([5,7],center=true);
    // }
    // translate([14.75,0,0]) circle (3.5);
    // }
    //}
    just put this in and you can see it's not centered?
    union(){
    translate([10.5,0,0]) square([5,7],center=true);
    translate([19.5,0,0]) square([5,7],center=true);
    }
    translate([14.75,0,0]) circle (3.5);
    But I finished your final and it appears to be centered? Very confused by this?

    • @kaio37k
      @kaio37k 6 ปีที่แล้ว

      The reason for the measurement difference is because of the limited vertices in a single sphere correct? Given the sphere was perfectly round, they would be touch at 15?

    • @AndersJackson
      @AndersJackson 6 ปีที่แล้ว

      Add comments, and you will remember for later. :-)

    • @maxscott3349
      @maxscott3349 2 ปีที่แล้ว

      The races are not the same thickness I guess. The sphere is right where he subtracted the circle from the two squares.

  • @caveman42
    @caveman42 6 ปีที่แล้ว +2

    How did the height of the object change when you did Rotate_Extrude() ? it was a flat 1mm piece. But after you did the Rotate_Extrude, it was all of a suddenly 10mm tall?

    • @alttrashpoubelle7602
      @alttrashpoubelle7602 2 ปีที่แล้ว

      I would like to know too

    • @zxxvcc
      @zxxvcc 2 ปีที่แล้ว

      @@alttrashpoubelle7602 according to the docs (top Google result for rotate_extrude) the 2d shapes get automatically rotated 90 degrees round the X axis before being extruded round z. Kinda weird.

    • @zxxvcc
      @zxxvcc 2 ปีที่แล้ว

      Actually that's mentioned at the 9 minute mark ☺️

  • @Hermiel
    @Hermiel 4 ปีที่แล้ว +3

    How WOULD one add a bevel or a chamfer to the outer edge of the ring? Would it have to be cut using a separate piece of geometry?

    • @mathcodeprint
      @mathcodeprint  4 ปีที่แล้ว +1

      Yes. Generally speaking you would use a difference to remove the material. In another video I try to build the raceway starting with 2d geometry and rotate_extrude. In that case you can include the chanfer in the 'sketch'. Chamfer and Fillet can be difficult. There are also various libraries that can help with this.

    • @Hermiel
      @Hermiel 4 ปีที่แล้ว

      @@mathcodeprint I've been doing some digging on forums. It seems that this is simply one of OpenSCAD's natural shortcomings. It's hard to bevel an edge when it can't be selected explicitly, and as an edge grows in complexity, beveling it becomes more difficult and expensive.

    • @robertnusser1984
      @robertnusser1984 3 ปีที่แล้ว +1

      It's quite easy to bevel. I drew another square and a difference between that and a circle to create the bevel shape, then moved it to the correct location, then a difference with the rest:
      rotate_extrude(){
      difference(){
      difference(){
      union(){
      translate([10.5,0,0]) square([5,7], center = true);
      translate([19.5,0,0]) square([5,7], center = true);
      };
      translate([14.75,0,0]) circle(3.5);
      }
      translate([-19,0,0]){
      difference(){
      translate([40,0,0]) square([5,9], center = true);
      translate([37,0,0]) circle(5);
      }
      }
      }
      }

  • @proterotype
    @proterotype 11 หลายเดือนก่อน +1

    Thanks from 6 years in the future.

  • @tobiasrabelink7733
    @tobiasrabelink7733 6 ปีที่แล้ว +2

    Can you make a video of how to design a mechanica siren rotor And stator???

  • @YigalBZ
    @YigalBZ 2 ปีที่แล้ว

    at 4:43: why is the center 14.75 and not 15? which is the center between 10.5 and 19.5?

    • @mathcodeprint
      @mathcodeprint  2 ปีที่แล้ว +1

      Because i am a little careless at times :)

    • @YigalBZ
      @YigalBZ 2 ปีที่แล้ว +1

      @@mathcodeprint Thanks god, you are human !

  • @nathanconder7235
    @nathanconder7235 5 ปีที่แล้ว

    $fn = 50;
    rotate_extrude(){
    difference(){
    union(){
    translate([10.5,0,0]) square([5,7], center=true );
    translate([19.5,0,0]) square([5,7], center=true );
    }
    translate([14.75,0,0]) circle( 3.5 );
    }
    }
    for ( ball = [0:30:360] ) {
    rotate([0,0,ball])
    translate([14.75,0,0])
    sphere( r=3.25 );
    }

  • @chizhang3263
    @chizhang3263 6 ปีที่แล้ว +3

    notice something is wrong with the codes but its always a damn typo lolol

    • @loekwous
      @loekwous ปีที่แล้ว

      And every time I saw it coming haha

  • @jesuschal3802
    @jesuschal3802 3 ปีที่แล้ว

    Why the need of union?

    • @mathcodeprint
      @mathcodeprint  3 ปีที่แล้ว +1

      So the difference is applied to the union in one operation. Otherwise you would need to apply difference to each square separately.

  • @JeffsTravels
    @JeffsTravels ปีที่แล้ว +1

    pretty underwhelming until six minutes 20 seconds in. Then I saw the light.

  • @YigalBZ
    @YigalBZ 2 ปีที่แล้ว

    Can it be printed without support? the balls would be floating.

  • @mba2ceo
    @mba2ceo 2 ปีที่แล้ว

    PLZ ENLARGE the FONT

  • @wave5342
    @wave5342 5 ปีที่แล้ว +1

    can u fakin give link

    • @mathcodeprint
      @mathcodeprint  5 ปีที่แล้ว

      Absofakinlutely :) , look in description, just added.

    • @wave5342
      @wave5342 5 ปีที่แล้ว +1

      @@mathcodeprint
      ❤️❤️❤️

  • @bobbobless522
    @bobbobless522 6 ปีที่แล้ว +5

    Openscad has got to be the most stupidest 3d software out there.

    • @malloott
      @malloott 4 ปีที่แล้ว +1

      @Robert Slackware no because a modern 3d cad is way better at everything this is trying to do. I am really hard pressed to find what makes someone use this.

    • @malloott
      @malloott 4 ปีที่แล้ว

      @Robert Slackware If someone uses the machine that controls the CNC to draw in 2020 they are stupid. A 3D cad capable machine (for simple drawings and assemblies) can be had for under 400euro easily(not even taking 2nd hand into account). When cnc machines and their components cost many times that.
      But this would have been a valid point about 10 years ago for sure.