CAD

openSCAD cilindar

openSCAD cilindar
Pripremajući ovaj članak, želio sam otkriti koje osobe imaju problema s openSCAD-om. Na moje iznenađenje, najčešće pitanje bilo je o stvaranju cilindra. Postoji naredba cilindra o kojoj ćete prvo naučiti detalje. Nakon toga vidjet ćete inovativne načine stvaranja cilindara po vašem ukusu. Također možete oduzeti cilindre drugim dijelovima kako biste stvorili zanimljivije stvari. Većina čitatelja koji ovdje dođu vjerojatno žele vidjeti šuplji cilindar ili neku cijev. Nastavite čitati, imamo puno toga za vas.

Naredba cilindra

Ako koristite najjednostavniju verziju naredbe cilindra, potreban vam je samo jedan parametar. To čini jedan čvrsti jednoliki cilindar i ništa više. Imajte na umu da će taj cilindar biti standardnog radijusa i visine vrijednosti u zagradama. Naredba ima mnogo opcija, hajde da ih prokopamo.

cilindar (r1 = 20);
cilindar (r1 = 20, r2 = 5);
cilindar (r1 = 20, h = 40);
cilindar (r = 20, h = 40);
cilindar (r1 = 20, r2 = 5, h = 40, središte = točno);

Prva dva cilindra u gornjem kodu nemaju smisla jer nemaju visinu. Česta pogreška je kada zaboravite vrijednost i ne izgleda onako kako ste namjeravali. Kada koristite varijable, isto se događa ako koristite nedefiniranu varijablu. U ovom slučaju za visinu, ali provjerite dnevnik konzole kad ga pokrenete.

Konus

Treći je konus, razlog je što vrijednost r2 ima standardnu ​​veličinu. Pokušajte s četvrtim i pogledajte što će se dogoditi. Posljednji stvara konus gdje imate potpunu kontrolu nad dimenzijama. Ovaj je jednostavan za upotrebu za čvrste čunjeve. Postavili ste dva polumjera i visinu i gotovi ste. Također možete koristiti promjer ako vam to više odgovara.

Vrijednost središta = istina vrijedi za z os, ostavljajući konus na pola od "tla". Zadana vrijednost je false, što čini da dno konusa takoreći završi na "tlu". Također možete odabrati koliko će stijenke čunjeva biti blizu kružnim s parametrom '$ fn'.

Šuplji cilindar

Hej, čekaj malo! Ovo stvara samo čvrste komade, kako mogu izbušiti rupe u njima? Pitate, hvala vam! reći ću ti. Odgovor je sve u razlici. Naredba koja je. Razmotrite donji kod, on sadrži dva cilindra koji su obuhvaćeni kovrčavim zagradama i naredbu razlika.

razlika()
cilindar (r = 30, h = 40);
cilindar (r = 28, h = 41);

Jednostavno rečeno, kada imate nekoliko komada, tada odsiječete materijal iz prvog dijela koristeći sve sljedeće dijelove. U tom slučaju iz cilindra izrežete cilindar. Ako želite izrezati bilo koji drugi oblik, možete i to učiniti. Isprobajte kocku ili kuglu! Obratite pažnju na zanimljive, a ponekad i razorne učinke koje vrijednost $ fn može imati na ovaj kod.

Šuplji konus

To možete učiniti i s konusom, samo upotrijebite vrijednosti dvostrukog radijusa. Budući da definirate oba čunjeva, imate veliku kontrolu nad konačnim rezultatom. Najjednostavniji šuplji konus su samo dva čunjeva jedan u drugom debljine materijala.

razlika ()
cilindar (r1 = 30, r2 = 12, h = 50);
cilindar (r1 = 25, r2 = 7, h = 45);

Ovaj konus je pokriven na vrhu, možete ga otvoriti jednostavnim postavljanjem druge visine više od prve. Budući da imate dva cilindra, možete promijeniti bilo koji od dva. Kao primjer, možete izrezati ravnu rupu kroz nju promjenom drugog cilindra. Također možete odabrati kocku, ali imajte na umu da to može izrezati previše materijala iz konusa.

Piramida

To se može činiti nebitnim, ali to je koristan trik koji morate imati na umu dok nastavljate koristiti openSCAD. Svi cilindri i ostali elementi približni su oblik. Pročitali ste ranije o parametru $ fn, ovdje ga iskoristite. Imajući ovo na umu, možete pomisliti: Piramida je stožac s četiri stranice. Ispravno! upotrijebite $ fn = 4 i imate konus s četiri stranice, što znači piramidu.

razlika ()
cilindar (r1 = 30, r2 = 12, h = 40, $ fn = 4);
cilindar (r1 = 25, r2 = 7, h = 35, $ ​​fn = 4);

Unutarnji cilindar reže isti cilindar kao i vanjski. Dok se ne počnete igrati s parametrom $ fn. Da biste se upoznali s učincima ovog parametra, pokušajte napraviti četveronožnu stolicu. Kako parametar $ fn utječe na rezultat? Također, kako možete pokriti vrh ili dno?

Kombinirajući mnoge

Da biste često koristili cilindre, trebali biste naučiti kako kombinirati mnoge od njih. Konačni rezultat može biti vrlo složen, a ponekad čak i koristan. Jedna od mogućnosti je postavljanje gornjeg dijela cilindra. Da biste to dobro izveli, morate početi koristiti varijable. Neka vam bude navika stavljati ih na vrh onoga što dizajnirate. Olakšava kasnije izradu modula.

debljina = 5;
baser = 30;
topr = 12;
visina = 50;
union ()
// Donji konus
razlika ()
cilindar (r1 = baser, r2 = topr, h = visina);
cilindar (r1 = baser-thickn, r2 = topr - thickn, h = visina + thickn);

// Gornja lopta
prevedi ([0, 0, visina])
razlika()
kugla (r = topr);
kugla (r = topr -deblja);
prevedi ([0, 0, -topr])
kocka (veličina = topr * 2, središte = točno);

Počevši od vrha, imate varijable. Oni su za debljinu, radijus baze, radijus vrha i visinu. Izjava sindikata spaja dijelove. Unutar zagrada imate konus, a zatim gornju kuglu. Budući da su unutar sindikata, na kraju će postati jedan komad. Možete učiniti još više kada koristite mnogo cilindara u mnogim kutovima.

Izrada epruvete

Krećući se od čunjeva, napravite epruvetu. Prvo morate razmotriti koje oblike čine epruveta. Glavni dio je cilindar, ništa neobično, samo redovita razlika između dva cilindra. Ako duljinu postavite kao varijablu, tu vrijednost možete koristiti kao referencu. Morate znati gdje cijev završava i postaje polusfera na dnu. Za definiranje kugle upotrijebit ćete i radijus cijevi.

gomolj = 20;
tubl = 80;
debljina = 2;
razlika ()
cilindar (r1 = gomolj, r2 = tuljak, h = cjevčica);
cilindar (r1 = gomolj - thickn, r2 = gomolj - thickn, h = tubl);

Isprobajte ovo, a imat ćete samo jednostavan cilindar, da biste cijelu cijev rastopili zajedno s polusferom. U zadanom openSCAD-u nema polusfere, morate ga napraviti. Koristite razliku između dvije kugle da biste stvorili šuplju kuglu, a zatim uklonite drugu kocku koja odsječe kuglu.

razlika ()
kugla (gomolj);
kugla (tubr - debljina);
prevedi ([0, 0, -tubr])
kocka (veličina = gomolj * 2, središte = točno);

Sad imate dva odvojena dijela. Sljedeći je korak sastaviti ih. Ovdje možete koristiti naredbu union. Poput naredbe razlika, i unija uzima sve dijelove redom. U zajednici poredak nije toliko važan jer je dodatak. Kôd će izgledati pomalo ružno jer ovdje ne koristimo module.

union ()
// Glavna cijev
razlika ()
cilindar (r1 = gomolj, r2 = tuljak, h = cjevčica);
cilindar (r1 = gomolj - thickn, r2 = gomolj - thickn, h = tubl);

// Donja kugla
prevedi ([0, 0, tubl])
razlika ()
kugla (gomolj);
kugla (tubr - debljina);
prevedi ([0, 0, -tubr])
kocka (veličina = gomolj * 2, središte = točno);


// Gornji prsten
razlika ()
cilindar (r = grlo + debljina, h = debljina);
cilindar (r = grlo, h = debljina);

Ovdje ga dizajniramo naopako, ovo ovisi o vama. Učinite ono što je prikladno za određeni slučaj. Uvijek ga možete okretati kad ga koristite. Gornji prsten ima oštre rubove, to možete popraviti pomoću kruga i zakrenuti_ekstrudirati. Postoje i drugi načini za to, istraživanje i eksperimentiranje!

rotate_extrude (konveksnost = 10, $ fn = 100)
prevedi ([tubr, 0, 0])
kružnica (r = thickn, $ fn = 100);

Kombinirajući mnogo cilindara

Nakon što napravite cijev od nekoliko cilindara, možda ćete ih htjeti povezati na različite načine. Da biste to učinili, možete ponovno koristiti sindikat. Recimo da želite jednu cijev pod kutom od četrdeset pet stupnjeva u odnosu na drugu cijev. Da biste to postigli, postavite kutnu cijev na pola velike cijevi.

union ()
cijev (50, 4, 300);
prevedi ([0, 0, totlength / 2]) zakreni ([45, 0, 0])
cijev (50, 4, 150);

Kad ovo probate, izvana izgleda sjajno. Kad pogledate unutra, vidite da imate obje cijele cijevi. Kratki blokira protok u dugoj cijevi. Da biste to riješili, trebate izbrisati oba cilindra unutar cijevi. Možete uzeti u obzir cijeli spoj jedan komad i staviti odgovarajuće cilindre nakon njega unutar razlike.

razlika ()
union ()
cijev (50, 4, 300);
prevedi ([0, 0, totlength / 2]) zakreni ([45, 0, 0])
cijev (50, 4, 150);


cilindar (r = 50 - 4, h = totle length);
prevedi ([0, 0, totlength / 2]) zakreni ([45, 0, 0])
cilindar (r = 50 - 4, h = totle length / 2);

Kao što vidite, prvi se cilindar proteže cijelom dužinom cijevi. To će izbrisati sve što je unutar velike cijevi, ali i malu cijev koja se naslanja također treba izbrisati. Naredba translate pomiče cijev do polovice, zatim se okreće i stavlja cilindar unutar cijevi. Zapravo se kôd kopira odozgo i cijev se zamjenjuje cilindrom.

Vodovod

Ako želite napraviti više cijevi, možete upotrijebiti modul u gornjem primjeru i započeti širenje. Kôd je dostupan na https: // github.com / matstage / openSCAD-Cilindri.git, U vrijeme pisanja ovog članka, postoje samo ove dvije, ali često provjeravajte da biste vidjeli više. Možda ćete moći stvoriti uzbudljivije stvari.

Unutar bloka

Ako želite napraviti motor s unutarnjim izgaranjem, potrebna vam je cilindrična rupa u čvrstom komadu. Ispod je primjer, najjednostavniji mogući, za kanale za hlađenje i klipove treba dodati još mnogo toga. To je ipak za još jedan dan.

modul cilindar blok (
cilindarR = 3,
Rub = 1,
numCylinders = 8)

razlika ()
kocka ([cilindarR * 2 + rub * 2,
cilindarR * 2 * numCylinders + Edge * numCylinders + Edge, 10]);
za (x = [0: 1: numCilindri-1])
prevedi ([cilindarR + rub, cilindarR * x * 2 + rub * x + cilindarR + rub, 0])
cilindar (r = cilindarR, h = 12);

Ovdje imate kocku koja raste prema broju cilindara koji želite unutar bloka. Sve vrijednosti u modulu su zadane, tako da ih možete koristiti bez vrijednosti. Da biste ga koristili, upotrijebite 'use 'na vrhu datoteke, a zatim dodajte cilindar (numCylinders = 8). Možete koristiti ili izostaviti bilo koju vrijednost, a ako ih izostavite, bit će zadana. Ukratko, unutrašnjost modula započinje s vrijednostima, a zatim stvara kocku koja će biti dovoljno duga da stane u cilindre. Zatim se nastavlja uklanjanjem cilindara s izjavom za. Zahvaljujući izjavi for, možete napraviti veći ili manji blok. Za naprednije module možete staviti ograničenja koja mijenjaju dizajn kada se dostignu određene vrijednosti. Možda želite napraviti V ako je 8 ili više cilindara.

Istiskivanje iz ravnog oblika

Drugi način stvaranja cilindra je izrada kruga i istiskivanje. Puni cilindar ima samo dvije crte:

linearno_ekstrudiranje (15)
krug (20);

To stvara 15 (nema jedinica u openSCAD-u) s radijusom 20. Promjer možete koristiti pomoću parametra d. Samo stvaranje cilindra nije vrlo korisno, ali istu tehniku ​​možete koristiti za bilo koji 2D oblik. To ćete vidjeti kasnije. Dok je šuplji cilindar kod je malo duži.

linearno_ekstrudiranje (15)
razlika ()
krug (20);
krug (18);

To je isto, ali, kao što smo učinili ranije, uklonite središnji krug. Također ga možete saviti u krug s verzijom rotate_extrude. Ovo je izvrsno za izradu krafni, najjednostavnija verzija izgleda poput jedne.

rotate_extrude (kut = 180, konveksnost = 10)
prevedi ([30,0,0])
razlika ()
krug (20);
krug (10);

Ovaj kod stvara šuplji polukrug. Napomena s kojom biste trebali biti oprezni je da je prevod potreban ili ćete dobiti pogrešku: „POGREŠKA: sve točke za rotateextrude () moraju imati isti X koordinatni znak (raspon je -2.09 -> 20.00) ". Brojevi će ovisiti o vrijednosti u krugu. Budući da ovo stvara isti oblik kao cilindar, može se činiti beskorisnim. Nije! Najbolja upotreba ove naredbe je učiniti ravni oblik nekako funkcionalnim. Priručnik za primjer ima jednostavan poligon, stvara okrugli oblik u kojem možete voditi remen. Također ga možete izvrtati. Kôd u nastavku stvara vadičep.

prevedi ([- 80,0,0])
linearno_ekstrudiranje (80, uvijanje = 900, mjerilo = 2.0, kriške = 100)
prevedi ([2, 0, 0])
kvadrat (10);

Primjer u priručniku prikazuje poligon koji može biti koristan. Kôd u nastavku može biti što god želite, ali ilustrira moć činjenja na ovaj način.

prevedi ([0, -80, 0])
rotate_extrude (kut = 275)
prevedi ([12,3,2])
poligon (točke = [[0,0], [20,17], [34,12], [25,22], [20, 30]]);

Možete eksperimentirati s oblikom poligona dok ga ne ispravite za svoju aplikaciju. Ako vam se čini malo zastrašujuće pomoću samo brojeva, možete stvoriti profil u drugim CAD programima i uvesti dxf rezultat pomoću naredbe import ().

Zaključak

Izrada cilindra je jednostavna, ali samo početak postupka. Škakljiv je dio napraviti s njim nešto korisno. Također ga morate uključiti u svoj dizajn i možda stvoriti složenija pitanja od cilindara. Pronađite načine i izazove za svoje stalno širenje znanja pomoću openSCAD-a. Ne zaboravite koristiti dokumentaciju i oslanjati se na drugi softver kad se to brojevima i slično ne može lako postići. Nešto što nije pokriveno u ovom postu je da možete crtati stvari u Inkscapeu i Blenderu i uvesti ih u openSCAD. Izvoz iz openSCAD-a u stl i druge formate dobro je podržan, a ako ste stvarno znatiželjni, pogledajte kreacije na Thingiverse. Imaju gomilu entuzijasta koji doprinose stvarima na njihovoj web lokaciji.

Trackpad i pokazivač miša na ekranu AppyMouse za Windows tablete
Korisnicima tableta često nedostaje pokazivač miša, posebno kada su navični koristiti prijenosna računala. Pametni telefoni i tableti osjetljivi na do...
Srednja tipka miša ne radi u sustavu Windows 10
The srednja tipka miša pomaže vam u pomicanju kroz dugačke web stranice i zaslone s puno podataka. Ako se to zaustavi, na kraju ćete koristiti tipkovn...
Kako promijeniti lijevu i desnu tipku miša na računalu sa sustavom Windows 10
Sasvim je normalno da su svi uređaji računalnog miša ergonomski dizajnirani za dešnjake. Ali postoje dostupni uređaji za miš koji su posebno dizajnira...