Hyppää sisältöön
    • Suomeksi
    • På svenska
    • In English
  • Suomi
  • Svenska
  • English
  • Kirjaudu
Hakuohjeet
JavaScript is disabled for your browser. Some features of this site may not work without it.
Näytä viite 
  •   Ammattikorkeakoulut
  • Kajaanin ammattikorkeakoulu
  • Opinnäytetyöt (Avoin kokoelma)
  • Näytä viite
  •   Ammattikorkeakoulut
  • Kajaanin ammattikorkeakoulu
  • Opinnäytetyöt (Avoin kokoelma)
  • Näytä viite

Ohjelmallisen CAD-kirjaston laajentaminen Python-ohjelmointikielellä

Haapakoski, Niko (2025)

 
Avaa tiedosto
Haapakoski_Niko.pdf (1.751Mt)
Lataukset: 


Haapakoski, Niko
2025
Näytä kaikki kuvailutiedot
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2025052817370
Tiivistelmä
Opinnäytetyössä perehdyttiin ohjelmalliseen CAD-suunnitteluun ja kehitettiin Python‑kirjasto, joka yhdistää parametrisen mallinnuksen ja lujuuslaskennan automatisoinnin. Työ aloitettiin katsauksella 3D‑geometrian esitystapoihin (BREP, CSG, mesh, vokseli) ja OpenCascade‑ytimen rooliin Build123d- ja CadQuery‑kirjastoissa. Kirjallisuuskatsauksen jälkeen vertailtiin OpenSCAD‑, CadQuery‑ ja Build123d‑ympäristöjä sekä tarkasteltiin versiohallintaa ja avoimen lähdekoodin lisenssejä (MIT vs.\ GPL).

Kirjasto koostuu kolmesta päämoduulista. Poikkileikkausanalyysi laskee mielivaltaisten ja standardiprofiilien jäyhyysmomentit GMSH‐meshin perusteella ja sisältää vakioprofiileille funktiot CadQuery‐geometrian muodostamiseen sekä tarjoaa valmiita lujuusopin kaavoja vakioprofiileille. Palkki‐FEM on yksiulotteinen Euler–Bernoulli‐ratkaisija, joka tuottaa tukireaktiot, leikkaus‐ ja taivutusdiagrammit sekä taipumat. 2D‐ristikkolaskin ratkaisee sauvojen voimat ja tukireaktiot globaalista tasapainoyhtälöstä lineaarisena yhtälöryhmänä.

Kirjaston käyttö demonstroitiin optimoimalla teräsrakenteinen autokatos Optuna‑kirjaston TPE‑algoritmilla. Optimointi pienensi useita mitoitusparametreja, kuten ristikon korkeutta, profiilien poikkileikkauksia ja lautojen määrää kuitenkin säilyttäen kaikkien lujuuskriteerien täyttymisen. Tuloksissa osoitettiin, että geometrian parametrisointi ja lujuuslaskenta voidaan yhdistää tehokkaaksi, automatisoiduksi työnkuluksi.

Kirjaston lähdekoodi on saatavilla GitHubissa: https://github.com/NHaapakoski/cq_mechanical_strength_calc
Kokoelmat
  • Opinnäytetyöt (Avoin kokoelma)
Ammattikorkeakoulujen opinnäytetyöt ja julkaisut
Yhteydenotto | Tietoa käyttöoikeuksista | Tietosuojailmoitus | Saavutettavuusseloste
 

Selaa kokoelmaa

NimekkeetTekijätJulkaisuajatKoulutusalatAsiasanatUusimmatKokoelmat

Henkilökunnalle

Ammattikorkeakoulujen opinnäytetyöt ja julkaisut
Yhteydenotto | Tietoa käyttöoikeuksista | Tietosuojailmoitus | Saavutettavuusseloste