Stampa 3D base TribeBot
Added by Andrea Belloni almost 10 years ago
Riporto qui quanto segnalato da Moreno sotto "segalazioni", penso che queste discussioni siano più comode sul forum relativo al progetto
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Da recente incontro si è deciso di fare una base per i TribeBots simile a questo modello [http://www.dfrobot.com/index.php?route=product/product&keyword=chaser&product_id=1287#.Vcusp3WsX3A[]] .
Ho disegnato su Tinkercad un modello di prova e salvato in formato STL, prelevabile dalla sezione FILE del progetto .
Qui è possibile visionare il modello 3D fatto su TinkerCad [[http://www.dfrobot.com/index.php?route=product/product&keyword=chaser&product_id=1287#.Vcusp3WsX3A]]
Qualcuno potrebbe stamparne uno per visionarlo dal vivo per poi provare a montargli sopra un LillyPad?
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Il modello TinkerCad è a questo link : [[https://www.tinkercad.com/things/hfw4FjaemTd-tribebotboard13]]
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Replies (30)
RE: Stampa 3D base TribeBot - Added by Michele Vece over 9 years ago
Per visualizzare il risultato clicca qui, seleziona Design e poi Reload and Compile
//!OpenSCAD diametroEXT = 25; posizione_fori = 21.7; diametroINT = posizione_fori-(diametroEXT-posizione_fori); //oppure 18.4 spessoreSUP = 2; altezzaPIEDI = 20; ruotaFori = 8.1; difference(){ union(){ cylinder(r1=diametroEXT, r2=diametroEXT, h=altezzaPIEDI, center=false); difference(){ cylinder(r1=diametroEXT, r2=diametroEXT, h=(0 - spessoreSUP), center=false); cylinder(r1=diametroINT, r2=diametroINT, h=(0 - spessoreSUP), center=false); } } for (i = [1 : abs(1) : 22]) { translate([(posizione_fori * sin((ruotaFori + (360 / 22) * i))), (posizione_fori * cos((ruotaFori + (360 / 22) * i))), 0]){ cylinder(r1=1.5, r2=1.5, h=(0 - spessoreSUP), center=false); } } for (i = [1 : abs(1) : 3]) { translate([(diametroEXT * sin(((360 / 3) * i))), (diametroEXT * cos(((360 / 3) * i))), 0]){ cylinder(r1=(diametroEXT / 2), r2=(diametroEXT / 1), h=altezzaPIEDI, center=false); } } cylinder(r1=diametroINT, r2=diametroEXT, h=altezzaPIEDI, center=false); }
RE: Stampa 3D base TribeBot - Added by Michele Vece over 9 years ago
Una cosa che non ho capito è perché le curve vengono renderizzate così spigolose, c'è un parametro per aumentare la definizione?
RE: Stampa 3D base TribeBot - Added by Roberto Mariani over 9 years ago
Michele Vece ha scritto:
Una cosa che non ho capito è perché le curve vengono renderizzate così spigolose, c'è un parametro per aumentare la definizione?
Dalla documentazione https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/Primitive_Solids#cylinder puoi giocare con i 3 parametri $fa $fs $fn per aumentare la definizione
Di seguito lo stesso script creato da te, con inseriti (quasi a caso) alcune di quei parametri... ovviamente è più lento per crearlo.
//!OpenSCAD diametroEXT = 25; posizione_fori = 21.7; diametroINT = posizione_fori-(diametroEXT-posizione_fori); //oppure 18.4 spessoreSUP = 2; altezzaPIEDI = 20; ruotaFori = 8.1; difference(){ union(){ cylinder(r1=diametroEXT, r2=diametroEXT, h=altezzaPIEDI, center=false, $fa=1); difference(){ cylinder(r1=diametroEXT, r2=diametroEXT, h=(0 - spessoreSUP), center=false, $fa=1); cylinder(r1=diametroINT, r2=diametroINT, h=(0 - spessoreSUP), center=false, $fa=1); } } for (i = [1 : abs(1) : 22]) { translate([(posizione_fori * sin((ruotaFori + (360 / 22) * i))), (posizione_fori * cos((ruotaFori + (360 / 22) * i))), 0]){ cylinder(r=1.5, h=(0 - spessoreSUP), center=false, $fs=0.1); } } for (i = [1 : abs(1) : 3]) { translate([(diametroEXT * sin(((360 / 3) * i))), (diametroEXT * cos(((360 / 3) * i))), 0]){ cylinder(r1=(diametroEXT / 2), r2=(diametroEXT / 1), h=altezzaPIEDI, center=false, $fa=1); } } cylinder(r1=diametroINT, r2=diametroEXT, h=altezzaPIEDI, center=false, $fa=1); }
RE: Stampa 3D base TribeBot - Added by Michele Vece over 9 years ago
...infatti poi ho scoperto anch'io $fa e $fs.
$fn dovrebbe servire per definire il numero di facce che deve avere una figura curva, non è consigliato per definire meglio gli ogetti.
Il codice che stiamo utilizzando per le stampe delle due basi per testare i Tribebot è questo (.SCAD file):
//!OpenSCAD diametroEXT = 25; posizione_fori = 21.7; diametroINT = 18.4; //oppure posizione_fori-(diametroEXT-posizione_fori) spessoreSUP = 2; altezzaPIEDI = 23; // altezza piedi base circolare esclusa ruotaFori = 8.1; larghezzaPIEDI = 1.6; // per definire la larghezza della base dei piedini (divisore del diametroEXT consiglio valori tra 1.5+stretti e 2+larghi) //rimuovere commenti per rendering in alta definizione //$fa = 1; //$fs= 0.1; difference(){ union(){ cylinder(r1=diametroEXT, r2=diametroEXT, h=altezzaPIEDI+spessoreSUP, center=false); difference(){ cylinder(r1=diametroEXT, r2=diametroEXT, h=(spessoreSUP), center=false); cylinder(r1=diametroINT, r2=diametroINT, h=(spessoreSUP), center=false); } } for (i = [1 : abs(1) : 22]) { // è possibile selezionare solo i fori utili // if (i == 1 || i == 8 || i == 9 ||i == 12 ||i == 13 ||i == 20 || i == 21 || i == 22) { translate([(posizione_fori * sin((ruotaFori + (360 / 22) * i))), (posizione_fori * cos((ruotaFori + (360 / 22) * i))), 0]){ cylinder(r1=1.5, r2=1.5, h=(spessoreSUP), center=false); } // } } translate([0,0,spessoreSUP]){ for (i = [1 : abs(1) : 3]) { translate([(diametroEXT * sin(((360 / 3) * i))), (diametroEXT * cos(((360 / 3) * i))), 0]){ cylinder(r1=(diametroEXT / larghezzaPIEDI), r2=(diametroEXT / 1), h=altezzaPIEDI, center=false); } } } cylinder(r1=diametroINT, r2=diametroEXT, h=altezzaPIEDI+spessoreSUP, center=false); }
RE: Stampa 3D base TribeBot - Added by Michele Vece over 9 years ago
per apportare modifiche clicca qui
{{html(
<iframe width="854" height="480" id="vs_iframe" src="http://www.viewstl.com/?embeded&url=https://dev.hacklabterni.org/attachments/download/1141/TribeBot_23x1.9_motori.stl&noborder=yes" style="border:0;margin:0;"></iframe>
)}}
- « Previous
- 1
- 2
- Next »