얕고 넓게

[Arm] OpenScad: Motor, GT2 본문

IT/Robot

[Arm] OpenScad: Motor, GT2

블랙오닉스 2023. 11. 5. 12:20

Step Motor

module nema11(){
      translate([-28/2,-28/2,0]) color("black", 0.5) cube([28,28,32]);
      translate([-0,-0,32]) color("white", 0.5) cylinder(30,5,5);
}

module nema17(){
      translate([-42/2,-42/2,0]) color("black", 0.5) cube([42,42,33]);
      translate([-0,-0,33]) color("white", 0.5) cylinder(30,5,5);
}

module nema23(){
      translate([-57/2,-57/2,0]) color("black", 0.5) cube([57,57,75]);
      translate([-0,-0,75]) color("white", 0.5) cylinder(30,6.36,6.36);
}

translate([0,0,0]) nema11();
translate([50,0,0]) nema17();
translate([100,0,0]) nema23();

GT2 2mm pitch

r = 0.555, pitch = 2

R * 3.141592 = 2mm * # of teeth

R = 2mm * # of teeth / 3.141592

R' = R - (2xU)

ex) 20 teeth, U=0.254

R = 2*20/3.141592 = 12.73

R' = 12.73 - 2*0.254 = 12.22

 

https://www.pfeiferindustries.com/timing-belt-pulley-pitch-diameter-outside-diameter-charts

 

Timing Belt Pulley Diameter Charts | Pfeifer Industries

> > > Timing Belt Pulley - Pitch Diameter and Outside Diameter Charts -->  --> --> --> The following timing belt pulley Pitch Diameter (P.D.) and timing belt pulley Outside Diameter (O.D.) charts allow the end user to quickly determine the dimensional req

www.pfeiferindustries.com

 

https://avtehnik.github.io/gt2-gear-genaretor/

 

Gcode box generator

Generate box for laser cutter or download drawing

avtehnik.github.io

https://www.youtube.com/watch?v=PDNIiLSTzG4

 

1. R' 원 그리기

2. R' - 0.75mm 원 그리기1

3. 1.11mm 원을 R" 에 외접

4. 0.3mm 원을 R' 내접, 1.11mm 원에 외접

module gt2_2mm(){
      //translate([0,0,0]) color("white", 0.5) circle(6.11,$fn=64);

     difference(){
      translate([0,0,0.05]) color("white", 0.5) cylinder(6,6.11,6.11, $fn=64);
      for(i = [0 : 1 : 19]) {
          x = cos(360/20*i)*(6.11-0.75+0.555);
          y = sin(360/20*i)*(6.11-0.75+0.555);
      translate([x,y,0]) color("red", 0.5) cylinder(6.1,0.555,0.555, $fn=32);
     }
    }
    //offset0 = atan(0.705/(6.11-0.75+0.555));
    //offset1 = atan((2-0.705)/(6.11-0.75+0.555));
    offset0 = 360*0.705/((6.11-0.75+0.555)*2*PI);
    offset1 = 360*-0.705/((6.11-0.75+0.555)*2*PI);
    for(i = [0 : 1 : 19]) {
        //x0 = cos(offset0+360/20*i)*(6.11-0.75+0.555);
        //y0 = sin(offset0+360/20*i)*(6.11-0.75+0.555);
        //x0 = cos(360/20*(0.705/2)+360/20*i)*(6.11-0.75+0.555);
        //y0 = sin(360/20*(0.705/2)+360/20*i)*(6.11-0.75+0.555);
        x0 = cos(offset0+360/20*i)*(6.11-0.15);
        y0 = sin(offset0+360/20*i)*(6.11-0.15);
     translate([x0,y0,0]) color("blue", 0.5) cylinder(6.1,0.15,0.15, $fn=32);
        //x1 = cos(offset1+360/20*i)*(6.11-0.15);
        //y1 = sin(offset1+360/20*i)*(6.11-0.15);
        //x1 = cos(offset1+360/20*i)*(6.11-0.75+0.555);
        //y1 = sin(offset1+360/20*i)*(6.11-0.75+0.555);
        x1 = cos(offset1+360/20*i)*(6.11-0.15);
        y1 = sin(offset1+360/20*i)*(6.11-0.15);
     translate([x1,y1,0]) color("green", 0.5) cylinder(6.1,0.15,0.15, $fn=32);
    }
}

version = 0.1;
echo("GT2-2mm pulley");
echo(str("Verstion: ", version));

translate([0,0,0]) gt2_2mm();

 


파랑, 초록 원 중심 좌표

  { \left(x-5.36+0.555 \right) }^{ 2  }  - { x  }^{ 2  }  + { \left(6.11-0.15 \right) }^{ 2  }   =   { \left(0.555+0.15 \right) }^{ 2  }   

x=59150350059=559150543095.918157227

y=5001247190.706311546

π180arccos(2980/2959)6.80604027

 

π180arctan(141/ 1183 )6.796933743

offset0 = 360*0.705/((6.11-0.75+0.555)*2*PI);
offset1 = 360*-0.705/((6.11-0.75+0.555)*2*PI);

'IT > Robot' 카테고리의 다른 글

[Arm] GT2 Pulley  (1) 2023.11.27
[Blender] 강좌, 단축키 정리  (1) 2023.11.20
[Motor] Torque 단위 변환  (0) 2023.11.03
[Robot Arm] 자료  (0) 2023.11.02
[Robot] Cycloidal Gear (RV Reducer)  (0) 2023.05.15