CAD

tutorial openSCAD

tutorial openSCAD
Realizarea unei piese mecanice necesită un desen. A început cu hârtie, iar primele programe CAD au folosit exact același stil. Există chiar și pătrate standard pe desene, astfel încât fiecare desen să fie identificat. Toate acestea sunt utile atunci când începeți să intrați în producție în corporații mari. Cu toate acestea, atunci când începeți să realizați o piesă mecanică nouă, este posibil să doriți alte metode.

Metodele 3D CAD vă permit să vedeți întreaga piesă așa cum este. De asemenea, îl puteți răsuci și răsuci. În software-ul avansat, puteți simula, de asemenea, mișcarea. În toate cazurile, desenați piesele folosind o interfață grafică. Acest lucru este minunat pentru a face cutii și cilindri, dar atunci când doriți să realizați forme mai complexe, este posibil să aveți nevoie de metode matematice.

Introduceți un mod standard de a descrie orice material cu comenzi.

Ceea ce face openSCAD atât de special?

În openSCAD, nu desenezi nimic cu indicatorul sau stiloul tău. Codificați întreaga piesă cu comenzi și funcții. Acest lucru este incomod pentru inginerii mecanici, dar pentru programatori, aveți o altă situație. În afară de preferințele personale, aveți și avantajul preciziei. Când îl proiectați cu cod, aveți precizia acolo în cod.

Cea mai puternică caracteristică a openSCAD este operațiile binare. Puteți utiliza operatori binari pentru a pune bucăți împreună sau a tăia materialul. Este ușor să faci un cub cu o gaură în centru, retragând cilindrul din cub. Unele dintre aceste operațiuni sunt disponibile în alte programe CAD, dar este normal să le folosești în openSCAD.

Care sunt nevoile proiectului dvs?

După ce ați pus designul pe un șervețel, s-ar putea să credeți că trebuie să vedeți ce se întâmplă atunci când încercați să-l faceți un design complet. Nu vă faceți griji; există o fereastră de previzualizare pe care o puteți privi în timp ce codificați. Odată ce ați înțeles ideile de bază, veți ști dacă este cea mai potrivită pentru proiectul dvs.

Pe scurt, dacă doriți să creați piese mici care au forme complexe, ar trebui să încercați openSCAD. Pentru echipamente complete și sisteme mecanice, doriți să utilizați aplicații grafice mai avansate. Acestea fiind spuse, totul este o chestiune de gust. Puteți crea forme complicate cu doar cod, ați lua în considerare codificarea unei mașini întregi?

Se instalează

OpenSCAD, disponibil în depozitele dvs. standard pentru majoritatea distribuțiilor, poate fi, de asemenea, instalat folosind un snap și AppImage. Interesant este faptul că aveți și un al doilea pachet care include șuruburi, roți dințate și forme generice. Cel mai nou pachet se află în opțiunea de deschidere pe noapte.

sudo apt install openscad
sudo snap instalează openscad-seara

Dacă doriți să utilizați șuruburile incluse care vin ca pachet separat, utilizați depozitele de distribuție.

sudo apt instalează openscad-mcad

Utilizarea pieselor incluse este o altă problemă, acoperită mai jos.

Mai multe forme standard

Principiile scripturilor CAD sunt că aveți câteva forme geometrice standard. Folosești aceste forme și le combini în forme mai complexe. Formele standard sunt cerc, pătrat și poligon pentru 2D. Pentru 3D, aveți o sferă, cub, cilindru și poliedru. Folosind unele dintre acestea pentru a construi și altele pentru a tăia, puteți crea forme foarte complexe.

Există, de asemenea, o funcție de text care creează un text 2D. Când trebuie să creați desene pentru procesare ulterioară, puteți utiliza comanda de proiecție. Această comandă taie o formă 3D de-a lungul unui plan, astfel încât să o puteți transfera într-un desen. De asemenea, puteți adăuga forme din alte programe sau chiar imagini, utilizând comanda de import. Acest lucru funcționează și cu formele 3D.

În plus, puteți extrage forme din obiecte existente.

Transformări

În mod implicit, creați toate piesele în punctul central al grilei în toate dimensiunile. Acest lucru îi face pe toți să se suprapună. Odată ce aveți mai multe forme, doriți să le așezați în locul potrivit și să le rotiți. Aceste funcții sunt simple, traducerea pune obiectul în alt loc. Comanda rotire roteste obiectul sau obiectele copil. De asemenea, aveți funcția oglindă, care creează o copie a obiectului oglindit în jurul axei date.

Celelalte transformări au nevoie de exemple de explicat. Pe scurt, carena creează liniile exterioare de mai multe forme. Încercați cu două cercuri și combinați-le cu carena (). Sau codul de mai jos.

traduce ([- 10,0,0])
hull ()
cilindru (30, 5, 1);
cub (9);
sfera (12);

Operația Minkowski este de obicei utilizată pentru a crea margini; dacă doriți ca acestea să fie rotunjite, utilizați o sferă.

Operații booleene

Multe piese nu pot fi create doar cu pătrate, cilindri și sfere. Primul lucru pe care îl puteți face este să combinați și să tăiați multe forme într-o singură formă. Folosiți operatori booleani pentru a face acest lucru. Sunt uniune, diferență și intersecție.

uniune ()
cub ([35, 5, 2], centru = adevărat);
cilindru (h = 2, r = 5, centru = adevărat);

În codul de mai sus obțineți o singură piesă care are un bec în centru. Pentru a face un tub, luați diferența dintre un cilindru și altul.

diferență()
cilindru (h = 15, r1 = 30, r2 = 30, centru = adevărat);
cilindru (h = 15, r1 = 25, r2 = 25, centru = adevărat);

Pe măsură ce vom merge mai departe, veți folosi aceste și multe altele. Iată un exemplu de intersecție.

intersecție()

rotire ([45,0.0])
cilindru (h = 40, r = 4, centru = adevărat);
traduce (5,5,5)
cilindru (h = 40, r = 6, centru = adevărat);

Intersecția lasă doar lucrurile suprapuse; puteți crea multe forme folosind această metodă.

Pentru bucle

Multe dintre desenele tale vor avea aceeași piesă de multe ori, ia în considerare un patio. De obicei, sunt realizate din mai multe scânduri cu goluri între ele. În acest caz, faceți o singură scândură și pur și simplu iterați peste ele cu o buclă for.

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

traduce ([plank_width * plank_x_pos + gap * plank_x_pos, 0,0])
cub ([lățime_plank, 4.200]);

Fără bucla for, ați fi scris cubul și ați traduce afirmațiile de patru ori. De asemenea, ar fi trebuit să calculați cât de departe ar merge următoarea scândură. Chiar și cu doar patru piese, această soluție arată mult mai ușor. În exemplu, puteți vedea și variabile care trebuie setate. Toate variabilele sunt setate la timp de compilare, acest lucru este important deoarece puteți întâmpina probleme de depanare dacă vă gândiți la ele ca la valori în alte limbaje de programare. După cum veți vedea mai târziu, puteți face din tot curtea un modul.

Matematică

Inclus în openSCAD, aveți la dispoziție câteva funcții matematice. Caracteristicile acceptate sunt cele mai multe funcții trigonometrice, rotunjind în diferite moduri și funcție logaritmică. Puteți vedea un exemplu mai jos.

pentru (i = [0:36])
traduce ([i * 10,0,0])
cilindru (r = 5, h = cos (i * 10) * 50 + 60);

Funcția de mai sus creează un rând lung și drept de cilindri cu înălțime diferită. Funcțiile principale sunt conectate la trigonometrie. Cu toate acestea, cu funcții de rotunjire aleatorii și cu operatorii standard, puteți crea aproape totul. Există, de asemenea, suport pentru vectori, matrice și rădăcină pătrată. Chiar și cu aceste funcții, puteți ajunge foarte departe. Cu toate acestea, ele nu acoperă tot ce vă puteți imagina; în schimb, puteți crea funcții.

Module și funcții

Aveți multe module incluse în instalarea openSCAD. Cu toate acestea, puteți descărca și alte biblioteci. În distribuția dvs., probabil că găsiți MCAD, numit și openscad-mcad. Pentru a instala sub Ubuntu.

$ sudo apt instalează openscad-mcad

În interiorul acestui pachet, găsiți atât module, cât și funcții. Înainte de a începe orice proiect, căutați în jur biblioteci și module. Există deja o bibliotecă de șuruburi și acesta este doar începutul. Îți lipsește o parte din design? Creați-vă propriile module; le folosești pentru a face piese noi. Când utilizați parametri, puteți face mai multe versiuni din ele. Cel mai bun mod de a crea un modul este să faceți designul ca un fișier separat, să aflați ce trebuie să fie dinamic și să adăugați „modul” în jurul piesei.

Pentru a utiliza un modul, îl numiți după numele acestuia. Deoarece multe module apar în fișiere separate, trebuie să puneți o declarație include în partea de sus a fișierului. Acordați atenție diferenței dintre declarația „include” și declarația „utilizați”. Dacă doriți ca totul dintr-un fișier să se execute, îl „includeți”, dacă doriți doar module și funcții definite, „utilizați” fișierul. Pentru a vă asigura că puteți utiliza modulele, trebuie să le introduceți în directorul curent al modelului sau într-una din căile de căutare.

În primul rând, să ne uităm la câteva pe care le puteți descărca și utiliza.

Șuruburi

În pachetul din secțiunea anterioară, puteți găsi o mulțime de lucruri. Un grup sunt șuruburi! Le puteți încerca încărcându-le în aplicație și apelând modulul. În Biblioteca MCAD, puteți găsi multe șuruburi. Există multe alte colecții din alte surse. Pentru a utiliza un șurub, creați un fișier care conține declarația include pentru modulul de care aveți nevoie. Acum, oriunde doriți să utilizați modulul, puteți utiliza numele modulului pentru a vă crea șurubul.

include ;
ball_groove (12, 40, 2);

Acesta este un șurub care se potrivește cu o minge. Puteți găsi, de asemenea nuts_and_bolts_scad, care definește șuruburile și șuruburile metrice. Designerii au folosit un site web unde puteți găsi șuruburi și au creat o metodă pe care să o utilizați. Un alt exemplu este o gaură pentru un șurub.

include
diferență()
cub ([12,16,20], centru = adevărat);
traduce ([0,0, -3])
boltHole (8, lungime = 300);

Codul de mai sus creează o gaură suficient de mare pentru șurubul M8, acest exemplu creează un cub și taie doi cilindri de două dimensiuni. Acest lucru nu este foarte complicat, dar complexitatea crește rapid atunci când utilizați alte componente. Adăugați șuruburile în casetele parametrice și puteți vedea cum vă ajută o bibliotecă.

Realizarea unei căruțe

Pentru a face orice construcție de orice complexitate, va trebui să faceți o singură piesă la un moment dat. Mai târziu, le combinați unul cu celălalt. După cum am menționat mai devreme, puteți utiliza module și funcții. Cel mai bun mod de a începe este să decideți unde trebuie să setați variabile. Pentru un cărucior simplu, aveți nevoie de înălțime, ampatament și lungime. Trebuie să setați valorile într-un singur loc și să le utilizați pentru a face părțile să se potrivească în jurul designului. Este posibil să aveți nevoie de mai multe valori, dar nu le puneți pe toate când începeți. Când începeți un proiect nou, nu veți avea toate piesele pregătite, așa că fiți pregătiți să schimbați lucrurile din jur.

ampatament = 150;
cartlength = ampatament * 1.2;
lățimea căruței = 50;
diametru rotativ = 25;
înălțimea suspensiei = (diametru rotativ / 2) + 5;
traduce ([ampatament / 2, lățime de coș, 0])
rotire ([90,0,0])
cilindru (r = raza rotilor, 10, centru = adevărat);
traduce ([ampatament / 2, - (lățimea de coș), 0])
rotire ([90,0,0])
cilindru (r = raza rotilor, 10, centru = adevărat);

Codul arată codul pentru primele două roți. Dacă vă gândiți puțin la asta, probabil puteți face roțile din spate. Pentru a adăuga fulgul, suprafața pe care merg toate lucrurile, trebuie doar să adăugați un cub. Folosiți variabilele pe care le introduceți în cod.

traduce ([0, 0, înălțimea suspensiei])
cub ([lungimea cartului, lățimea căruței, 10], centru = adevărat);

Totuși, acest flak are aceeași înălțime ca roțile, așa că am avut grijă de asta cu valoarea înălțimii suspensiei. Declarația tradusă afectează ceea ce se află imediat după ea. Rețineți că nu există punct și virgulă la sfârșitul unei linii. Când declarațiile din interior devin lungi, folosiți aparate dentare în jurul acestuia.

Acum, trebuie să adăugați osii și suspensii. Osiile pot fi cilindri simpli care merg între roți. Le așezați la fel cum ați făcut roțile folosind rotirea și translatarea. De fapt, cel mai bine este să folosiți aceleași valori.

traduce ([ampatament / 2,0,0])
rotire ([90,0,0])
cilindru (r = raza de rulare * 0.25, h = (lățime de cărucior * 2) + 15, centru = adevărat);

Codul de aici pune puntea față în poziție. Axa spate, vă las cititorul să vă dați seama. Putem rezolva suspendarea în multe moduri. În acest caz, o vom simplifica.

// Suspendare
traduce ([ampatament / 2, 0, înălțimea suspensiei])
rotire ([90,0,0])

diferență()
cilindru (r = înălțimea suspensiei, 10, centru = adevărat);
cilindru (r = înălțimea suspensiei - 5, 11, centru = adevărat);
cub ([102, suspensionheight / 6, 12], center = true);

traduce ([suspensionheight, 0, 0])
cilindru (r = înălțimea suspensiei / 3, h = 12, centru = adevărat);
traduce ([- suspensionheight, 0, 0])
cilindru (r = înălțimea suspensiei / 3, h = 12, centru = adevărat);

Acest cod creează o suspensie foarte brută; folosește doar cilindri, deci nu va fi cel mai bun atunci când începeți să-l utilizați. Acesta ilustrează un mod de a crea modele din primitive; cilindru, cub și bine, asta este pentru acest model. Pe măsură ce progresați, veți face din fiecare piesă un modul și veți plasa acele piese.

Codul pentru coș este disponibil la https: // github.com / matstage / Carriage! Dezvoltări ulterioare pot veni ulterior.

Biblioteci

În partea anterioară, ați folosit doar cercuri. Orice proiectare care utilizează numai acele primitive nu va fi cea mai bună pentru toate aplicațiile. Trebuie să creați modele arătoase și eficiente. Soluția este matematica! Pentru a adăuga acest lucru, ar trebui să începeți prin utilizarea bibliotecilor altor persoane.

Există un număr mare de biblioteci construite de oameni inteligenți în comunitate. Oamenii care construiesc sunt utilizatori care își rezolvă problemele și apoi le-au împărtășit cu blândețe tuturor celorlalți. Multumesc tuturor! Un bun exemplu este dotSCAD; pentru exemplul de suspensie, puteți găsi o curbă Bézier.

Exportul către alte programe software

După ce aveți un design decent, vă recomandăm să îl utilizați într-un alt software. Puteți exporta în stl, dwg și o serie de alte formate. Pasionații dvs. de imprimare 3D pot utiliza fișierele stl direct în programele dvs. de feliere.

Alternative

O altă alternativă interesantă este ImplicitCAD. Acest software este foarte dezvoltat. Trebuie să executați linia de comandă și necesită Haskell pe sistemul dvs. Majoritatea instalărilor standard nu au Haskell!

Concluzie

La prima vedere, utilizarea openSCAD este foarte grea. Depășirea curbei de învățare este un pic cam dificilă, dar merită pentru mulți utilizatori. Mulțumim proiectelor pentru a contribui la proiect. Aveți la dispoziție multe funcții la sfârșitul unei comenzi git. Doar să treci prin noțiunile de bază pentru a crea modele mecanice prin intermediul codului, îți modifică modul în care te gândești la forme. Acest lucru este benefic chiar dacă veți continua să folosiți punctul și faceți clic pentru a vă face celelalte proiecte.

  • https: // www.openscad.org / documentare.html?versiune = 2019.05
  • http: // edutechwiki.unige.ch / ro / OpenScad_beginners_tutorial
  • https: // www.openscad.org / cheatsheet / index.html
Microsoft Sculpt Touch Wireless Mouse Review
I recently read about the Microsoft Sculpt Touch wireless mouse and decided to buy it. After using it for a while, I decided to share my experience wi...
AppyMouse On-screen Trackpad and Mouse Pointer for Windows Tablets
Tablet users often miss the mouse pointer, especially when they are habitual to using the laptops. The touchscreen Smartphones and tablets come with m...
Middle mouse button not working in Windows 10
The middle mouse button helps you scroll through long webpages and screens with a lot of data. If that stops, well you will end up using the keyboard ...