Version 23 (modified by 5 years ago) (diff) | ,
---|
Konstrukcijske Tehnike
- Konstrukcijske Tehnike
- Projektne naloge skupine Razvoj programske opreme
-
Projekti
- 1. Zapolnjevanje lukenj in špranj v panelih tokamaka
- 2. Odstranjevanje majhnih značilk iz podstruktur panela tokamaka
- 3. Divertor
- 4. Struktura hladilnih prstov panelov tokamaka
- 5. Limiter surface
- 6. Detekcija Plasma Facing Components
- 7. Priprava parameteriziranega modela S zobnika
- 8. Skupek projektov za pripravo parametričnih modelov segmentov …
- Zahtevki
- Povezave
Cilj predmeta pri vajah je združiti znanje o 3D modeliranju, metodiki konstruiranja in ostalih strokovnih predmetih in to prikazati na primeru razvoja izdelka / programske opreme. Velik poudarek je na realnosti problema in na sistematični in strokovni obravnavi. Pri metodiki konstruiranja je bil poudarek na kreativnosti in iskanju rešitev. Tokrat je teža na drugem delu razvoja izdelka, ki pomeni do delavniške risbe izdelana tehnična dokumentacija. Upoštevati je potrebno tudi stanje tehnike in regulativo. Zaželeno je, da se izdela tudi prototip izdelka. Del postavljenih nalog bodo študentom ponujene (prispevale so jih različna podjetja). Od študentov se pričakuje, da polovico nalog poiščejo sami. Pričakuje se delo v skupinah od 2 do 5 študentov. Ocenjuje se, da bo za izdelavo seminarske naloge posameznik vložil okoli 100 ur časa.
Značilne skupine nalog:
- Konstrukcija orodja (npr. štanca ali brizganje plastike).
- Konstrukcija stroje ali naprave.
- Projektiranje in preračun nosilne konstrukcije.
- Projektiranje strojnih instalacij.
- Razvoj serijskega izdelka.
- Razvoj programske opreme.
Vaje so namenjene predvsem konzultacijam z asistenti in spremljanju dela na projektu. Posamezna skupina študentov bo delala le na eni od zgoraj naštetih nalog. Vsako končno poročilo mora vsebovati spodaj navedeno vsebino:
Za primer projekta, ki predvideva razvoj in konstruiranje izdelka:
- Definicijo naloge z jasno postavljenimi zahtevami
- Funkcijska struktura / diagram poteka.
- Pregled patentov ali regulative.
- Sistematičen pristop pri iskanju rešitev, ureditev v morfološki matriki.
- Vrednotenje in izbor rešitev.
- FMEA (analiza možnih oblik napak) pri konstrukciji ali procesu.
- Optimiranje konstrukcije / procesa (npr. numerične simulacije).
- 3D model konstrukcije / izdelka.
- Delavniške risbe.
- Prototip izdelka.
Za primer projekta, ki temelji na razvoju programske opreme:
- Definicijo naloge z jasno postavljenimi zahtevami.
- Funkcijska struktura / diagram poteka (predstavitev delovanja programa).
- Pregled obstoječih rešitev.
- Sistematičen pristop pri iskanju rešitev.
- Vrednotenje in izbor rešitev.
- Predstavitev delovanje programa (npr. prikaz in opis delovanja dela kode, ki je ključnega pomena za delovanje programa).
- Natančna navodila glede uporabe programa (manual).
- Prikaz rezultatov oz. delovanje programa (npr. predstavitev 3D sestava zmodeliranega s pomočjo programa, predstavitev modela z uporabo jsc3d ipd.),
- Prednosti in slabosti programa.
- Ideje za naprej (katere bi bile možne izboljšave ipd.)
Glede na vrsto projektne naloge se spreminja vsebina in teža zgoraj naštetih točk. Vsaka skupina mora v poročilu vsebovati vsaj 80 % od zgoraj naštetih točk.
Predmeti bodo pridobili na vrednosti, če jih med seboj povežemo v zaokroženo celoto – cilj je na sistematičen in strokoven način razvijati podjetniške ideje. En problem, ki se prične obravnavati pri metodiki konstruiranja, se nato nadgradi predmetu Konstrukcijske tehnike in še pri kakšnem. Študentom, ki uspešno sodelujejo pri EGPR seminarju (letni semester), se prizna vaje pri predmetu konstrukcijske tehnike. Vaje morajo biti zaključene ob koncu semestra. V nasprotnem primeru je potrebno ponovno opravljanje vaj.
Predstavitve projektov
Osnova za predstavitev bodo predstavljala poročila, narejene na Trac Wiki spletni strani projekta.
Nekaj napotkov za izdelavo končnih poročil:
- dodajte kazalo z
[[PageOutline]]
- izgled poročila na strani naj bo takšen, da bo v predogledu tiskanja izgledal OK. To vključuje tudi barvno usklajenost uporabljenih elementov, teksture, ...
- Slikovno gradivo mora biti avtorsko. Podatki morajo biti ustrezno citirani s podanimi referencami oziroma spletnimi povezavami.
Datum predstavitve projektov bo predvidoma v jauarju 2020. Točneje bo določena naknadno.
Domače naloge in ocenjevanje
Da bi zagotovili sprotno delo se po vsakih vajah predvideva izdelava domačih nalog s katerimi študentje prikažejo osnovne sposobnosti razumevanja problematike programiranja. Vsak študent dobi v domači nalogi svoj seznam vaj, ki jih mora izdelati do naslednjega tedna (do en dan prej (do ure 23:59) pred naslednjo vajo.). Domače naloge so OBVEZNE (!) in predstavljajo enega izmed splošnih pogojev za doseganje pozitivne oceno iz vaj.
V prvem delu so domače naloge iz splošnega programiranja v Pythonu, drugem delu pa so domače naloge iz področja modeliranja na podlagi Python programskega jezika (PythonOcc, SALOME SHAPER...) .
Skupna ocena pri vajah KT je okvirno sestavljena iz:
- Prisotnost 5% OPOMBA! Za priznavanje vaj mora biti prisotnost na vajah vsaj 80%!
- Domače naloge 20%
- Priprava zahtevnika, jasnost 5%
- Funkcijska struktura / diagram poteka (predstavitev delovanja programa). 10%
- Pregled patentov, regulative, sorodnih rešitev in vrednotenje. 10%
- Projektni program 40%
- Delovanja, modularnosti, parametričnosti in jasnosti kode.
- Skupinsko delo in razdelitev posameznih podprogramov po študentih.
- Izvedba programskega dela po časovnici (pravočasnost in sprotnost).
- Komentarji pri shranjevanju dela na SVN in WIKI (uporabljaj preview).
- Predstavitev 3D sestava (in posameznih sklopov) na strani WIKI v obliki. jsc3d
- Predstavitev projekta s strani WIKI 10%
OPOMBA! Procenti predstavljajo le okviren del končne ocene upoštevajoč, da je skupina vsaj deloma izvedla vse zgodnje alineje. Ne zanemarite določenih sklopov ocene! Npr. projekt z delujočim programom vendar brez pripravljenega poročila in obratno bo ocenjen z negativno oceno!
Cilj projektnih nalog je čim bolj približati predlagano izvedbo končnemu industrijskemu partnerju, kar sestoji iz prepričljivosti vseh navedenih kriterijev. Pri vrednotenju rezultatov vseh skupin se uporabljajo priporočila ECTS priročnika.
Nekatera pojasnila pri podajanju ocene. Glede problematike/regulativ/patentov je mišljeno, da idejo predstavite kot svojo v primerjavi z obstoječimi rešitvami.
Projektne naloge skupine Razvoj programske opreme
Predavanja Konstrukcijske tehnike so v predavalnici IV/2 vsak ponedeljek 10:00-13:00
Razpored terminov po skupinah 16 študentov
- skupina III-6 četrtek 8:00 - 9:30
- skupina III-6 četrtek 14:00 - 15:30
Prve uvodne vaje bodo v četrtek 17.10.2019 v zgornjih terminih. Nato pa ob četrtkih redno vsak teden oz. po dogovoru.
Pomemben del vaj KT je tudi pridobitev znanja programiranja CAD jedra v jeziku Python.
V predvidenem časovnem planu razvoja izdelka programiranje (dela) izdelka v CAD jedru OpenCascade ali SHAPER nadomesti naloge 7.-14. tedna. Prvi del vaj je tečaj jezika Python s poudarkom na OpenCascade ali SHAPER, ki se izvaja vzporedno z nalogo do koncipiranja rešitve. V dveh urah tedensko ima vsaka skupina eno uro praktičnih Python osnov na računalniku v učilnici III-6 in nato še konzultacijo o napredku na projektu, ki jo študentje opravijo izven laboratorija. V drugem delu sledi individualno programiranje celote ali delov izdelka v dogovorjeni zahtevnosti, poročilo in predstavitev.
Vsebina in obseg projektne naloge se določi na vajah. Skupina študentov (do 3) lahko predlaga svojo tematiko naloge, ki pa jo je potrebno podrobno verificirati po obsegu in zahtevnosti. Če take naloge ne bodo predlagali, jim bo tematika dodeljena. Sami pa bodo morali uporabiti tehnike s predavanj, da problem ustrezno razdelajo. Projektne naloge so lahko individualne. Skupno delo si slušatelji razporedijo sami. Delo na računalniku pa je individualno in ni skupno, ter je ocenjevano ločeno od projektne skupine.
PythonOcc je priredba knjižnice OpenCascade za programiranje v jeziku Python.
Namestitev okolja za delo doma
1. Mozilla Firefox
Priporočamo uporabo brskalnika Firefox. V njem si lahko nastavite privzeti jezik tako da izberete Options-Content-Languages-Add-Slovenian in ga premaknemo navzgor. Namestite si še slovenski črkovalnik v brskalnik s strani https://addons.mozilla.org/en-US/firefox/addon/slovar-za-slovenski-jezik
2. Tortoise SVN
Za shranjevanje domačih nalog in s tem datotek na strežnik je potrebno namestiti TortoiseSVN s strani http://tortoisesvn.net/downloads.html Izberemo 64-bitno verzijo programa. Verzijo Windows lahko preverimo z raziskovalcem windows (explorer) Help-About. TortoiseSVN namestimo kot administrator.
Za dolpoteg (checkout) imenika projekta na namizju z desnoklikom miške na namizju izberemo SVN Checkout... ter za URL napišemo svn://lecad.si/kt/ipriimek, kjer je ipriimek vaše prijavno ime. Na namizju bo imenik z vašimi datotekami katere potem lahko shranite nazaj na strežnik z ukazi SVN add in Commit.
3. Pycharm
Python urejevalnik. Link za prenos: PyCharm Community (ne Proffesional).
4. SALOME
Za namestitev SALOME-a shranite Windows paket SALOME-8.3.0-WIN64.exe ki se nahaja na spodnji povezavi:
http://www.salome-platform.org/downloads/current-version
Odpakirajte Windows paket SALOME-8.3.0-WIN64.exe kot administrator (desni klik --> Run as Administrator) v C:\Program Files.
Program SALOME se zažene s skriptom run_salome.bat ki se nahaja v C:\Program Files\SALOME-8.3.0-WIN64\WORK.
Uporabljali bomo navodila za Salome 8.3. Za programiranje v geometrijskem modulu si poglejte Geometry module Python Interface ter navodila za python OCC.
Projekti
Projektno delo bo vsebovalo različna orodja, ki jih bomo spoznali la vajah. Za projektno delo bo dodeljen tudi dostop do superračunalnika HPCFS http://hpc.fs.uni-lj.si/ .
Študenti se bodo lahko sami organizirali v skupine ter izbrali projekt, ki jih najbolj interesira.
V nadaljevanju so podani še nepotrjeni predlogi projektov za študijsko leto 2019/2020.
V okviru vsakega projekta je zahtevana tudi izdelava skupnega poročila na Trac Wiki strani projekta. V proces izdelave poročila morajo biti vključeni vsi študenti, ki sodelujejo na projektu.
1. Zapolnjevanje lukenj in špranj v panelih tokamaka
Poenostavitev CAD modelov je nujna pri numeričnih simulacij trdosti ali dinamike tekočin. Potrebno je pripraviti algoritem v Python3 programskem jeziku, ki bo tako omogočal zahtevano poenostavitev CAD modela oz. v našem primeru odstranitev lukenj.
Primer modelov je na voljo na [trac.lecad.si/kt1 trac.lecad.si/kt1]:
Predvideno število študentov na projektu: 2
Sodelujoči na projektu 2019holes: [...]
2. Odstranjevanje majhnih značilk iz podstruktur panela tokamaka
Odstranitev majhnih kosov pri poenostavitvi CAD modela plašča (Blanket). Blanket moduli zagotavljajo varovanje pred visokimi toplotnimi obremenitvami znotraj vakuumske posode in visoko energetskih nevtronih, ki jih proizvajajo fuzijske reakcije.
Ta projekt zahteva odstranitev značilk preko iteriranja po volumnu ter iskanjem neželenih značilk. Model je nato potrebno ponovno predelati tokrat brez teh elementov.
Predvideno število študentov na projektu: 2
Sodelujoči na projektu: 2019features : [...]
3. Divertor
Funkcija Divertor-ja je, da odstrani različne nečistoče iz plazme. Sestavljen je iz 54 kaset, vsaka s tremi elementi ki so obrnjene proti plazmi. Cilj projekta je izdelava postavitve stukture površine in podstruktur v različnih postavitvah nagiba kot tudi prostorske postavitve.
Primer modelov je na voljo na [trac.lecad.si/kt1 trac.lecad.si/kt1]:
Predvideno število študentov na projektu: 1
Sodelujoči na projektu 2019fdivertor: [...]
4. Struktura hladilnih prstov panelov tokamaka
Na podlagi referenčnega modela prsta je potrebno pripraviti uporabniški vmesnik v SALOME oz. SMITER-ju za generiranje poenostavljenega 3D modela prstov poljubnih dimenzij. Ta model mora biti narejen tako, da se ga lahko mreži s heksaedrično mrežo.
Nato se bo prst ustreznih dimenzij združilo s površinskih modelom panela, izpostavljenega plazmi. Pri tem je potrebno površinski model panela spremeniti v volumskega tako, da se ga lahko mreži s heksaedrično mrežo. Za namene mreženja s heksaedrično mrežo je potrebno napisati dodaten podprogram.
Končni 3D model mora biti ustrezen za preračun temperature s FEM.
Referenčni modeli prstov so na voljo na vizualizacijskem strežniku:
- /home/penkod/KT/2018/modeli/EHF_finger.brep
- /home/penkod/KT/2018/modeli/NHF_finger.brep
Napotki in navodila za mreženje v SMITER-ju:
- Navodila: SMITER menu Help -> User's Guide -> Mesh Module -> User's Guide
- Tutorial oz. primer: SMITER menu Help -> SMITER GUI Documentation, poglavje Meshing CAD models
Predvideno število študentov na projektu: 2
Sodelujoči na projektu 2019fingers: [...]
5. Limiter surface
Z iskanjem največjega obsega možne ovojnice želimo dobiti mejno plast plazme oziroma ovojnico najbolj zunanjih točk notranjosti tokamaka.
Primer modelov je na voljo na vizualizacijskem strežniku:
- /home/penkod/KT/2018/modeli/Simple_Blanket_Panels.step
- /home/leon/smiter/study/step/ITER-inner_wall_surfaces_sides_V2.stp
- /home/leon/smiter/study/step/ITER-inner_wall_surfaces_sides.stp
Predvideno število študentov na projektu: 2
Sodelujoči na projektu 2019flimiter: [...]
6. Detekcija Plasma Facing Components
Potrebno je poiskati površine, ki so obrnjene proti plazmi. To naredimo tako, da eksplodiramo model do ploskvic (face) in nato iz centra vlečemo daljice (žarke) ter iščemo preseke ali pa iz vsakega centra ploskvice proti centru iščemo ali je kakšna ploskev presekala pot. Pomagamo si lahko tudi z mrežnim modelom, ki ga naredimo v ta namen.
Primer modelov je na voljo na vizualizacijskem strežniku:
- /home/penkod/KT/2018/modeli/Simple_Blanket_Panels.step
- /home/leon/smiter/study/step/ITER-inner_wall_surfaces_sides_V2.stp
- /home/leon/smiter/study/step/ITER-inner_wall_surfaces_sides.stp
Predvideno število študentov na projektu: 3
Sodelujoči na projektu 2019pfctrace: [...]
7. Priprava parameteriziranega modela S zobnika
Cilj projekta je razvoj orodja ter pripadajočega grafičnega vmesnika za SHAPER modul (integriran v SALOME okolje, uporaba Python3 programskega jezika), ki bo omogočal kreiranje parametiriziranega 3D geometrijskega modela zobniške dvojice s S ozobjem.
Grafični vmesnik oz. program mora biti sprogramiran tako, da lahko sprejme naslednje parametre za kreiranje geometrije zobniške dvojice:
- modul
- število zob z1
- število zob z2
- vpadni kot profila
- kot poševnosti
- širino zobnikov
- razmerje zaokrožitev v korenu/modul (𝜌𝐹/𝑚)
Nato se predvideva nadgradnjo programa tako, da bo omogočal izdelavo CAD modela zobniške dvojice s S ozobjem z upoštevanjem izbranega tolerančnega območja debeline zoba in izbranega tolerančnega območja korenskega in temenskega premera. Tako bi se omogočilo izvoz CAD modela glede na zgornjo, srednjo ali spodnjo vrednost predpisanega tolerančnega območja.
Gradivo za uporabo SALOME okolja in SHAPER modula je na voljo na seznamu povezav.
Predvideno število študentov na projektu: 3
Sodelujoči na projektu 2019sgear: [...]
8. Skupek projektov za pripravo parametričnih modelov segmentov fuzijskega reaktorja tipa tokamak
Vsi zaobjeti projekti imajo enak cilj: Sprogramirati parametričen model enega izmed segmentov fuzijskega reaktorja tipa tokamak (ITER) v različnih nivojih podrobnosti (Level Of Detail - LOD) z uporabo SHAPER modula v SALOME okolju. Vsi modeli v sklopu teh projektov naj imajo enako absolutno koordinatno izhodišče tako, da ko se posamezni segmenti združijo v en sestav ne pride do prekrivanja med posameznimi sklopi.
Gradivo za uporabo SALOME okolja in SHAPER modula je na voljo na seznamu povezav.
8.1 LOD Divertor
Funkcija Divertor-ja je, da odstrani različne nečistoče iz plazme. Sestavljen je iz 54 kaset, vsaka s tremi elementi ki so obrnjene proti plazmi.
Predvideno število študentov na projektu: 2
Sodelujoči na projektu 2019LODdivertor: [...]
8.2 LOD Blanket
Blanket moduli zagotavljajo varovanje pred visokimi toplotnimi obremenitvami znotraj vakuumske posode in visoko energetskih nevtronih, ki jih proizvajajo fuzijske reakcije.
Predvideno število študentov na projektu: 2
Sodelujoči na projektu 2019LODblanket: [...]
8.3 LOD Cryostat
Celotna vakuumska posoda je zaprta v kriostatu ki zagotavlja izolacijo za sistem superprevodnih magnetov in drugih komponentov.
Predvideno število študentov na projektu: 2
Sodelujoči na projektu 2019LODcryostat: [...]
8.4 LOD Vacuum vessel
Vakuumska posoda zagotavlja zaprto, vakuumsko okolje za fuzijske reakcije.
Predvideno število študentov na projektu: 2
Sodelujoči na projektu 2019LODvessel: [...]
8.5 LOD Magnet system
48 elementov magnetnega sistema bo ustvaril magnetno polje 200 000 krat večje kot magnetno polje Zemlje.
Predvideno število študentov na projektu: 2
Sodelujoči na projektu 2019LODmagnets: [...]
ITER se bo temeljil na treh virih zunanjega segrevanja, da se bo plazma segrela na temperaturo, ki je potrebna za fuzijo.
Zahtevki
Evidenca domačih nalog, datoteke pri delu na vajah, in komunikacija se vodi za vsakega študenta posebej na strani http://trac.lecad.fs.uni-lj.si/
- zelena nima odprtih postavk
- oranžna eno nerešeno zadevo
- rdeča število rešenih/vseh zadev
Povezave
Izvedba vaj
- python - Besedila domačih nalog v programskem jeziku Python in nekaj primerov uporave Pythona
- Ocenjevalec nalog v C-ju ali Python-u- Kontrola pravilnosti delovanja domačih nalog
SALOME
- salome - Razvojno okolje SALOME
- salome_shaper - SHAPER primeri
- Predstavitev SHAPER modula
- SHAPER dokumentacija
- SHAPER primeri na Youtube
- SHAPER interaktivni tutorial
Python OpenCascade
- Predstavitev odprtokodnega jedra Open CASCADE
- Vaje v Pythonu z uporabo PythonOcc in OpenCascade
- PythonOcc/primitives - Izdelava modelov z OpenCascade
Trac Wiki
- TracGuide -- Built-in Documentation
- Trac FAQ -- Frequently Asked Questions
- TracSupport -- Trac Support
Razno
- Izpitni red pri predmetih prof. Tavčarja
- Besedilo naloge RPK 2010 -- v obliki PDF
- Besedilo naloge RPK 2009 -- v obliki PDF
- Besedilo naloge RPK 2008 -- v obliki PDF
- Besedilo naloge RPK 2007 -- v obliki PDF
- Program za virtualni stroj -- Namesti kot administrator pred namestitvijo Virtualnega računalnika vaje.zip
- Navidezni računalnik za vaje (553MB) - za VB 1.6.x-3.x - Odpakiraj vse v začasni imenik in dvo-klikni na datoteko namesti.
- Računalniška grafika -- Navodila za programiranje OpenGL grafike v Fortranu
- Programski jezik C -- Uvod v C (Stanislav Rupar)
- C Programming - Pregledna Wiki knjiga za jezik C
- naloge - Besedila domačih nalog v programskem jeziku C
- opengl-intro - Računalniška grafika z OpenGL
- fortran - Primeri v FOTRAN 95
- jsc3d - Prikaz na spletni strani z jsc3d
- lab-intro - Razvojno okolje za laboratorijske vaje
Arhiv
- Stari napotki za 2008-2009
- Stari napotki za 2009-2010
- Stari napotki za 2010-2011
- Napotki vaj KT za 2011-2012
- Napotki vaj KT za 2012-2013
- Napotki vaj KT za 2013-2014
- Napotki vaj KT za 2014-2015
- Napotki vaj KT za 2015-2016
- Napotki vaj KT za 2016-2017
- Napotki vaj KT za 2017-2018
- Napotki vaj KT za 2018-2019
For a complete list of local wiki pages, see TitleIndex.
Attachments (10)
-
sgear1.png (123.9 KB) - added by 5 years ago.
Vir: Jože HLEBANJA Gorazd HLEBANJA: CONSTRUCTIVE MEASURES TO INCREASE THE LOAD-CARRYING CAPACITY OF GEARS The characteristics of S-gears, Machine Design, 2008
- sgear2.jpg (31.2 KB) - added by 5 years ago.
- Blanket_1.png (327.9 KB) - added by 5 years ago.
- K1.jpeg (70.2 KB) - added by 5 years ago.
- crown_small.jpg (159.6 KB) - added by 5 years ago.
- cryo_lower_1.jpg (132.4 KB) - added by 5 years ago.
- Vacuum_vessel_3.png (568.5 KB) - added by 5 years ago.
- ivessel-LOD1-5sections.png (114.9 KB) - added by 5 years ago.
- Magnet_System.jpg (630.4 KB) - added by 5 years ago.
- toroidal.jpg (134.4 KB) - added by 5 years ago.