CAD

výukový program openSCAD

výukový program openSCAD
Výroba mechanické součásti vyžaduje výkres. Začalo to papírem a první CAD programy používaly přesně stejný styl. Na výkresech jsou dokonce standardní čtverce, takže každý výkres je identifikován. To vše je užitečné, když začnete vyrábět ve velkých korporacích. Když však začnete vyrábět nový mechanický kus, možná budete chtít jiné metody.

Metody 3D CAD vám umožní vidět celý kus tak, jak je. Můžete jej také otočit a otočit. V pokročilém softwaru můžete také simulovat pohyb. Ve všech případech kreslíte dílky pomocí grafického rozhraní. To je skvělé pro výrobu krabic a válců, ale když chcete vytvářet složitější tvary, možná budete potřebovat matematické metody.

Zadejte standardní způsob popisu libovolného materiálu pomocí příkazů.

Čím je openSCAD tak výjimečný?

V openSCADu nic nekreslíte ukazatelem ani perem. Celý díl kódujete příkazy a funkcemi. To je pro strojní inženýry nepříjemné, ale pro programátory máte jinou situaci. Kromě osobních preferencí máte také výhodu přesnosti. Když jej navrhnete s kódem, máte v kódu přesnost.

Nejvýkonnější funkcí openSCADu jsou binární operace. Binární operátory můžete použít k skládání kusů nebo k vyřezávání materiálu. Vytvoření krychle s otvorem ve středu je snadné vytažením válce z krychle. Některé z těchto operací jsou k dispozici v jiném CAD softwaru, ale jejich použití v openSCADu přirozeně nepřichází v úvahu.

Jaké jsou vaše potřeby projektu?

Poté, co umístíte svůj design na ubrousek, můžete si myslet, že musíte vidět, co se děje, když se pokusíte udělat z něj plný design. Nebojte se; existuje okno náhledu, na které se můžete dívat při psaní kódu. Jakmile pochopíte základní myšlenky, budete vědět, zda je pro váš projekt nejvhodnější.

Stručně řečeno, pokud chcete vytvářet malé kousky, které mají složité tvary, měli byste vyzkoušet openSCAD. Pro plné vybavení a mechanické systémy chcete použít pokročilejší grafické aplikace. Když už jsme to řekli, je to všechno otázka vkusu. S pomocí kódu můžete vytvářet složité tvary, uvažovali byste o kódování celého automobilu?

Instalace

OpenSCAD, který je k dispozici ve vašich standardních úložištích pro většinu distribucí, lze také nainstalovat pomocí snapu a AppImage. Zajímavé je, že máte také druhé balení, které obsahuje šrouby, ozubená kola a obecné tvary. Nejnovější balíček je v snapscapu každou noc.

sudo apt install openscad
sudo snap install openscad-nightly

Pokud chcete použít přiložené šrouby, které se dodávají jako samostatný balíček, použijte úložiště vaší distribuce.

sudo apt install openscad-mcad

Použití zahrnutých dílů je další věc, která je pokryta dále dolů.

Několik standardních tvarů

Princip skriptování CAD spočívá v tom, že máte několik standardních geometrických tvarů. Tyto tvary použijete a zkombinujete do složitějších tvarů. Standardní tvary jsou kruh, čtverec a mnohoúhelník pro 2D. U 3D máte kouli, krychli, válec a mnohostěn. Pomocí některých z nich k sestavení a jiných k řezání můžete vytvářet velmi složité tvary.

K dispozici je také textová funkce, která vytváří 2D text. Pokud potřebujete vytvořit výkresy pro další zpracování, můžete použít příkaz projekce. Tento příkaz vyřízne 3D tvar podél roviny, takže jej můžete přenést do výkresu. Pomocí příkazu import můžete také přidat tvary z jiných programů nebo dokonce obrázků. To také funguje s 3D tvary.

Kromě toho můžete vytlačovat tvary z existujících objektů.

Transformace

Ve výchozím nastavení vytváříte všechny kusy ve středu mřížky ve všech dimenzích. Díky tomu se všechny překrývají. Jakmile máte několik tvarů, chcete je umístit na správné místo a otočit. Tyto funkce jsou jednoduché, překlad umístí objekt na jiné místo. Příkaz rotace otočí objekt nebo podřízené objekty. Máte také funkci zrcadlení, která vytváří kopii objektu zrcadleného kolem dané nápravy.

Ostatní transformace vyžadují vysvětlení. Stručně řečeno, trup vytváří vnější linie mnoha tvarů. Zkuste dva kruhy a zkombinujte je s trupem (). Nebo kód níže.

přeložit ([- 10,0,0])
trup ()
válec (30, 5, 1);
krychle (9);
koule (12);

Operace Minkowski se obvykle používá k vytváření hran; pokud je chcete zaoblit, použijte kouli.

Booleovské operace

Mnoho kusů nelze vytvořit pouze pomocí čtverců, válců a koulí. První věcí, kterou můžete udělat, je zkombinovat a vyříznout mnoho tvarů do jednoho tvaru. K tomu používáte booleovské operátory. Jsou to unie, rozdíl a průnik.

svaz()
krychle ([35, 5, 2], střed = true);
válec (h = 2, r = 5, střed = true);

V kódu výše získáte jediný kus, který má uprostřed žárovku. Chcete-li vytvořit trubku, vezmete rozdíl mezi jedním válcem a druhým.

rozdíl ()
válec (h = 15, r1 = 30, r2 = 30, střed = true);
válec (h = 15, r1 = 25, r2 = 25, střed = true);

Jak budeme pokračovat, budete používat tyto a další. Zde je příklad průniku.

průsečík()

otočit ([45,0.0])
válec (h = 40, r = 4, střed = true);
přeložit (5,5,5)
válec (h = 40, r = 6, střed = true);

Křižovatka ponechává pouze překrývající se věci; touto metodou můžete vytvořit mnoho tvarů.

Pro smyčky

Mnoho z vašich návrhů bude mít stejný kus mnohokrát, zvažte terasu. Obvykle jsou vyrobeny z několika prken s mezerami mezi nimi. V takovém případě vytvoříte jedno prkno a jednoduše je budete iterovat smyčkou for.

mezera = 8;
plank_width = (bed_width / 4) - mezera;
num_planks = 4;
pro (plank_x_pos = [0: 1: num_planks - 1])

přeložit ([plank_width * plank_x_pos + gap * plank_x_pos, 0,0])
krychle ([plank_width, 4 200]);

Bez smyčky for byste napsali kostku a překládali příkazy čtyřikrát. Také byste museli vypočítat, jak daleko další prkno půjde. I s pouhými čtyřmi kusy vypadá toto řešení mnohem jednodušší. V příkladu můžete také vidět proměnné, které je třeba nastavit. Všechny proměnné jsou nastaveny v době kompilace, což je důležité, protože pokud narazíte na hodnoty v jiných programovacích jazycích, můžete narazit na problémy s laděním. Jak uvidíte později, můžete celou terasu vytvořit také modul.

Matematika

V openSCADu máte k dispozici několik matematických funkcí. Podporované funkce jsou většina trigonometrických funkcí, zaokrouhlování různými způsoby a logaritmická funkce. Níže vidíte příklad.

pro (i = [0:36])
přeložit ([i * 10,0,0])
válec (r = 5, h = cos (i * 10) * 50 + 60);

Výše uvedená funkce vytváří dlouhou přímou řadu válců různé výšky. Hlavní funkce jsou spojeny s trigonometrií. S náhodnými zaokrouhlovacími funkcemi a standardními operátory však můžete vytvořit skoro všechno. K dispozici je také podpora vektorů, matic a druhé odmocniny. I s těmito funkcemi se můžete dostat opravdu daleko. Nezahrnují však vše, co si dokážete představit; místo toho můžete vytvářet funkce.

Moduly a funkce

V instalaci openSCAD je zahrnuto mnoho modulů. Můžete si však stáhnout i jiné knihovny. Ve své distribuci pravděpodobně najdete MCAD, nazývaný také openscad-mcad. Instalace pod Ubuntu.

$ sudo apt install openscad-mcad

Uvnitř tohoto balíčku najdete oba moduly a funkce. Než začnete s jakýmkoli projektem, porozhlédněte se po knihovnách a modulech. Knihovna šroubů již existuje, a to je jen začátek. Chybí část vašeho designu? Vytvořte si vlastní moduly; použijete je k výrobě nových kousků. Když použijete parametry, můžete z nich vytvořit mnoho verzí. Nejlepším způsobem, jak vytvořit modul, je vytvořit design jako samostatný soubor, zjistit, co musí být dynamické, a přidat „modul“ kolem kusu.

Chcete-li použít modul, voláte jej podle názvu. Vzhledem k tomu, že mnoho modulů se dodává v samostatných souborech, musíte v horní části souboru umístit příkaz zahrnutí. Věnujte pozornost rozdílu mezi výrazem „zahrnout“ a výrazem „použít“. Pokud chcete, aby se vše v souboru spouštělo, „zahrňte“ to, pokud chcete, aby byly definovány pouze moduly a funkce, „použijte“ soubor. Abyste se ujistili, že můžete moduly používat, musíte je umístit do aktuálního adresáře modelu nebo do jedné z vyhledávacích cest.

Nejprve se podívejme na několik, které si můžete stáhnout a použít.

Šrouby

V balíčku z předchozí části najdete spoustu věcí. Jedna skupina jsou šrouby! Můžete si je vyzkoušet načtením do aplikace a voláním modulu. V knihovně MCAD najdete mnoho šroubů. Existuje mnoho dalších sbírek z jiných zdrojů. Chcete-li použít šroub, vytvořte soubor, který obsahuje příkaz include pro modul, který potřebujete. Nyní, kdekoli chcete modul použít, můžete pomocí názvu modulu vytvořit šroub.

zahrnout ;
ball_groove (12, 40, 2);

Jedná se o šroub, do kterého se vejde míč. Můžete také najít nuts_and_bolts_scad, který definuje metrické šrouby a šrouby. Návrháři použili web, kde najdete šrouby, a vytvořili metodu, kterou můžete použít. Dalším příkladem je otvor pro šroub.

zahrnout
rozdíl ()
krychle ([12,16,20], střed = pravda);
přeložit ([0,0, -3])
boltHole (8, length = 300);

Výše uvedený kód vytvoří dostatečně velkou díru pro šroub M8, tento příklad vytvoří kostku a vystřihne dva válce dvou velikostí. To není příliš komplikované, ale složitost rychle roste, když používáte jiné komponenty. Přidejte šrouby do parametrických polí a uvidíte, jak knihovna pomáhá.

Výroba vozíku

Chcete-li vytvořit jakoukoli konstrukci jakékoli složitosti, budete muset vyrobit jeden kus po druhém. Později je vzájemně kombinujete. Jak jsme již zmínili dříve, můžete používat moduly a funkce. Nejlepší způsob, jak začít, je rozhodnout se, kde potřebujete nastavit proměnné. Pro jednoduchý vozík potřebujete výšku, rozvor a délku. Musíte nastavit hodnoty na jednom místě a použít je, aby se součásti vešly kolem designu. Možná budete potřebovat více hodnot, ale nedávejte je všechny, když začnete. Když začnete nový projekt, nebudete mít připravené všechny části, takže buďte připraveni věci změnit.

rozvor = 150;
délka vozu = rozvor * 1.2;
šířka vozu = 50;
průměr kola = 25;
výška zavěšení = (průměr kola / 2) + 5;
přeložit ([rozvor / 2, šířka, 0])
otočit ([90,0,0])
válec (r = poloměr kola, 10, střed = true);
přeložit ([rozvor / 2, - (šířka), 0])
otočit ([90,0,0])
válec (r = poloměr kola, 10, střed = true);

Kód zobrazuje kód pro první dvě kola. Pokud se nad tím trochu zamyslíte, pravděpodobně vyrobíte zadní kola. Chcete-li přidat flak, povrch, kam jde všechno, stačí přidat kostku. Použijte proměnné, které jste vložili do kódu.

přeložit ([0, 0, výška zavěšení])
krychle ([cartlength, cartwidth, 10], center = true);

Tento flak je ve stejné výšce jako kola, takže jsme se o to postarali s hodnotou výšky zavěšení. Přeložený příkaz ovlivňuje to, co je přímo za ním. Všimněte si, že na konci řádku není středník. Když se příkazy uvnitř stanou dlouhými, použijete kolem nich složené závorky.

Nyní musíte přidat nápravy a odpružení. Nápravy mohou být jednoduché válce, které procházejí mezi koly. Umístíte je stejným způsobem, jakým jste udělali kola pomocí otočení a překladu. Ve skutečnosti je nejlepší použít stejné hodnoty.

přeložit ([rozvor / 2,0,0])
otočit ([90,0,0])
válec (r = poloměr kola * 0.25, h = (šířka * 2) + 15, střed = true);

Kód zde uvádí přední nápravu na místo. Zadní náprava, nechám vás čtenáře přijít na to. Pozastavení můžeme vyřešit mnoha způsoby. V tomto případě to zjednodušíme.

// Suspenze
přeložit ([rozvor / 2, 0, výška zavěšení])
otočit ([90,0,0])

rozdíl ()
válec (r = výška zavěšení, 10, střed = true);
válec (r = výška zavěšení - 5, 11, střed = true);
krychle ([102, výška zavěšení / 6, 12], střed = true);

přeložit ([pozastavení výšky, 0, 0])
válec (r = výška zavěšení / 3, h = 12, střed = true);
přeložit ([- pozastavení výšky, 0, 0])
válec (r = výška zavěšení / 3, h = 12, střed = true);

Tento kód vytváří velmi hrubé pozastavení; používá pouze válce, takže to nebude nejlepší, když ho začnete používat. Ilustruje jeden způsob vytváření návrhů z primitiv; válec, krychle, a to je pro tento model vše. Jak budete postupovat, uděláte každý kousek modulem a tyto kousky umístíte.

Kód košíku je k dispozici na https: // github.com / matstage / Přeprava! Další vývoj může přijít později.

Knihovny

V dřívější části jste použili pouze kruhy. Jakékoli návrhy používající pouze tato primitiva nebudou nejlepší pro všechny aplikace. Musíte vytvořit dobře vypadající a efektivní vzory. Řešením je matematika! Chcete-li to přidat, měli byste začít používat knihovny jiných lidí.

V komunitě existuje velké množství knihoven vytvořených chytrými lidmi. Lidé, kteří staví, jsou uživatelé, kteří řeší své problémy a poté je laskavě sdílejí se všemi ostatními. Díky vám všem! Dobrým příkladem je dotSCAD; pro příklad zavěšení najdete Bézierovu křivku.

Export do jiného softwaru

Jakmile budete mít slušný design, můžete jej použít v jiném softwaru. Můžete exportovat do stl, dwg a řady dalších formátů. Vaši nadšenci 3D tisku mohou používat soubory STL přímo ve vašich průřezových programech.

Alternativy

Další vzrušující alternativou je ImplicitCAD. Tento software je velmi ve vývoji. Musíte spustit jeho příkazový řádek a vyžaduje to ve vašem systému Haskell. Většina standardních instalací nemá Haskell!

Závěr

Na první pohled je používání openSCADu velmi těžké. Překonat křivku učení je trochu boj, ale pro mnoho uživatelů to stojí za to. Díky projektům přispět do projektu. Na konci příkazu git máte k dispozici mnoho funkcí. Pouhé projití základů vytváření mechanických návrhů pomocí kódu mění způsob, jakým přemýšlíte o tvarech. To je výhodné, i když budete i nadále používat point and click, abyste vytvořili své další projekty.

  • https: // www.openscad.org / dokumentace.html?verze = 2019.05
  • http: // edutechwiki.unige.ch / en / OpenScad_beginners_tutorial
  • https: // www.openscad.org / cheatsheet / index.html
Hry Jak vyvíjet hru na Linuxu
Jak vyvíjet hru na Linuxu
Před deseti lety by jen málo uživatelů Linuxu předpovídalo, že jejich oblíbený operační systém bude jednoho dne populární herní platformou pro komerčn...
Hry Porty komerčních her s otevřeným zdrojovým kódem
Porty komerčních her s otevřeným zdrojovým kódem
Zdarma, s otevřeným zdrojovým kódem a multiplatformní herní enginy lze hrát staré i některé z poměrně nedávných herních titulů. Tento článek uvede sez...
Hry Nejlepší hry z příkazového řádku pro Linux
Nejlepší hry z příkazového řádku pro Linux
Příkazový řádek není při používání Linuxu jen vaším největším spojencem - může být také zdrojem zábavy, protože jej můžete použít k hraní mnoha zábavn...