Cours:Fabrication

De troyesGEII
Aller à : navigation, rechercher

CharlyGraal

https://www.youtube.com/channel/UCZ2wggss-0usQrapW_bGplQ/videos

openscad

http://static.fablab-lannion.org/tutos/openscad/#/pageDeGarde

https://www.apmep.fr/IMG/pdf/AtelierOpenSCAD.pdf


fichiers pour coupe de robotique

fichier longeron.scad : à placer dans le répertoire de travail

longeron.scad

tailleCube=7.5;
isConge=1;
isPercage=1;
rayonPercage=1.5;
conge=0.25;
$fn=25;

module longeronX(nbCubes=3,posX=0,posY=0,posZ=0)
{
    translate([posX*tailleCube,posY*tailleCube,posZ*tailleCube])
        rotate([0,0,0])
            longeron(nbCubes);
}

module longeronY(nbCubes=3,posX=0,posY=0,posZ=0)
{
    translate([posX*tailleCube,posY*tailleCube,posZ*tailleCube])
        rotate([0,0,90])
            longeron(nbCubes);
}

module longeronZ(nbCubes=3,posX=0,posY=0,posZ=0)
{
    translate([posX*tailleCube,posY*tailleCube,posZ*tailleCube])
        rotate([0,-90,0])
            longeron(nbCubes);
}

module longeron(nbCubes=3)
{
    difference()
    {
        translate([-tailleCube/2,-tailleCube/2,-tailleCube/2])
        cube([tailleCube*nbCubes,tailleCube,tailleCube]);
        if (isPercage==1)
        {
        for (i=[0:nbCubes-1])
        {
            translate([i*tailleCube,0,0])
            rotate([0,0,0])
                trou();
            translate([i*tailleCube,0,0])
            rotate([90,0,0])
                trou();
        }
        rotate([0,90,0])
            trou(nbCubes);
    }}
}


module boite()
{
    difference()
    {
     cube([tailleCube,tailleCube,tailleCube],center=true);
        if (isPercage==1)
        {
     rotate([0,0,0])
           trou();
     rotate([90,0,0])
           trou();
     rotate([0,90,0])
           trou();
    }
}
}

module trou(size=1)
{
        translate([0,0,(size-1)*tailleCube/2])
        {
            cylinder(h=tailleCube*size+2*conge, r=rayonPercage,center=true);
        if (isConge==1)
        {
        translate([0,0,-tailleCube*size/2-conge])
            cylinder(h=2*conge, d1=(rayonPercage+2*conge)*2,
                                d2=(rayonPercage)*2);
        translate([0,0,tailleCube*size/2-conge])
            cylinder(h=2*conge, d2=(rayonPercage+2*conge)*2,
                                d1=(rayonPercage)*2);
        }
            }
}
exemple d'utilisation du fichier longeron.scad 
include  <longeron.scad>
isConge=0;
isPercage=1;
$fn=45;

union()
{
    longeronX(5,0,0,0);
    longeronX(3,1,4,1);
    longeronZ(4,0,0,0);
    longeronZ(4,4,0,0);
    longeronX(5,0,0,4);
    longeronY(4,2,1,4);
    longeronZ(2,2,4,2);
}