izpis_h1_title_alt

Using Object-Oriented Design to Develop LabVIEW Components of an Accelerator Control System : master thesis
ID Subašić, Adi (Author), ID Blažič, Sašo (Mentor) More about this mentor... This link opens in a new window

.pdfPDF - Presentation file, Download (5,07 MB)
MD5: 47384C455774E827ABBF35A4EBE99EED

Abstract
This work analyzes software design methodologies and principles, later focusing on developing object-oriented components of an accelerator control system. It covers the topics of software design in great detail, while trying to keep the topics readable and understandable to a more general audience. Design techniques applicable in LabVIEW are introduced and the final object-oriented approach is presented. An overview of the physical structure and the software architecture of an accelerator control system is provided, along with a brief introduction to accelerator physics. Object-oriented design principles are utilized to develop software components for regulating devices that control the strength of magnets used for directing and focusing the particle beam, provide power for the accelerating column and manage the flow of particles before the start of acceleration. The operation of the devices is tested with simulators and the design is evaluated using a number of object-oriented design metrics. The performance evaluation of the system analyzed the object-oriented quality attributes based on the results from the design metrics. The performance results showed that the system was generally well designed. The system is modular, loosely coupled and incorporates cohesive classes. The system features usability in the form of template reuse, where new components can be developed by using the existing components presented in this work as a template. There is a potential for improvement of reusability through inheritance, which can be increased by making deeper inheritance trees. However, this avenue is not recommended for the current system as it is costly to implement and doesn't benefit the final product. Even in the future, for similar projects, increasing reusability through inheritance should be approached with caution.

Language:English
Keywords:software design principles, object-oriented design, LabVIEW development, accelerator control system
Work type:Master's thesis/paper
Typology:2.09 - Master's Thesis
Organization:FE - Faculty of Electrical Engineering
Place of publishing:Ljubljana
Publisher:[A. Subašić]
Year:2021
Number of pages:XXXII, 194 str.
PID:20.500.12556/RUL-127978 This link opens in a new window
UDC:681.5:004(043.2)
COBISS.SI-ID:68686851 This link opens in a new window
Publication date in RUL:30.06.2021
Views:919
Downloads:98
Metadata:XML DC-XML DC-RDF
:
Copy citation
Share:Bookmark and Share

Secondary language

Language:Slovenian
Title:Uporaba objektno usmerjenega načrtovanja pri razvoju LabVIEW-komponent sistema vodenja pospeševalnika : master study program second cycle of Electrical engineering
Abstract:
V magistrskem delu najprej obravnavamo metodologije in načela načrtovanja programske opreme, kasneje pa se osredotočamo na razvoj objektno usmerjenih komponent sistema za nadzor pospeševalnika. Bolj podrobno so zajete teme načrtovanja programske opreme, hkrati pa poskušamo ohraniti preglednost in razumljivost tudi za širše občinstvo. Omenjene so tehnike načrtovanja, ki se uporabljajo v programskem okolju LabVIEW, bolj podrobno pa je predstavljen pristop, ki temelji na objektno usmerjenem programiranju. V delu smo podali pregled fizičnih struktur in arhitektur programske opreme sistema za vodenje pospeševalnika ter kratek uvod v fizikalne osnove delovanja pospeševalnika. Objektno usmerjena načela načrtovanja se uporabljajo za razvoj programskih komponent za vodenje naprav, ki nadzorujejo moč magnetov za usmerjanje in oblikovanje snopa delcev, zagotavljanje moči pospeševalnim stebrom in upravljanje snopa delcev pred začetkom pospeševanja. Delovanje naprav je preizkušeno s simulatorji, zasnovo pa smo ovrednotili z uporabo številnih objektno usmerjenih metrik načrtovanja. V prvem poglavju obravnavamo kompleksnost sistema in njen vpliv na razvoj programske opreme. Najprej obravnavamo kompleksne sisteme v fizičnem svetu in podajamo nekatere pogosto uporabljane lastnosti za opisovanje kompleksnosti. Poudarek je na analizi vzrokov za povečanje kompleksnosti digitalnih sistemov. Drugo poglavje obravnava različne pristope načrtovanja programske opreme, ki jih je mogoče uporabiti za lažji in učinkovitejši razvoj programske opreme. Analiziramo atribute kakovosti programskih sistemov, s čimer želimo doseči sistem načrtovanja učinkovite programske opreme. Na podlagi teh lastnosti kakovosti se nato uvede nekaj osnovnih pravil načrtovanja programske opreme. Nato obravnavamo proces razvoja programske opreme in raziskujemo različne strategije njenega načrtovanja. Predstavljen je koncept programskega sloga, ki predstavlja okvir za načrtovanje in razvoj, v okviru katerega lahko uporabljamo različne strategije načrtovanja. Po opisu različnih pristopov k načrtovanju se drugo poglavje osredotoča na objektno usmerjen slog načrtovanja. Predstavljeni so osnovni elementi, ki tvorijo konceptualni okvir objektno usmerjenega modela. Kasneje podrobneje analiziramo osrednje koncepte objektov in razredov, njihove relacije in medsebojno delovanje. Potem sledi opis lastnosti kakovosti objektno usmerjenega načrtovanja in predstavitev nekaterih vodilnih načel načrtovanja. Nato predstavimo možnosti načrtovanja komponent v okolju LabVIEW. Predstavimo tudi zgodnji pristop, v katerem so bila uporabljena vodilna načela objektno usmerjenega modela, čeprav je bil razvit pred podporo objektno usmerjenemu programiranju v programskem okolju LabVIEW. Nato analiziramo konceptualni in implementacijski vidik pristopa ter predstavimo nekatere splošne standarde za načrtovanje programske opreme v okolju LabVIEW. Na koncu poglavja je predstavljen objektno usmerjen pristop k načrtovanju v okolju LabVIEW. Analiziramo objektno usmerjene lastnosti LabVIEW in obravnavamo razlike v primerjavi z drugimi objektno usmerjenimi programi. Tretje poglavje predstavi osnovne pojme fizikalnega ozadja pospeševalnika in podaja pregled sistema za nadzor pospeševalnika. Opisane so glavne komponente pospeševalnega sistema ter fizikalne enačbe, ki opisujejo vedenje delcev v pospeševalnih sistemih. Linearni pospeševalniki pospešujejo snop delcev po linearni poti. Razdelimo jih na osnovne tipe glede na način pospeševanja delcev. Analiziramo vpliv elektromagnetnih potencialov in polj na dinamiko žarka ter opišemo glavne vrste magnetov v pospeševalnih sistemih. Najpomembnejši so upogibni (dipolni) magneti in fokusni (kvadropolni) magneti, ki spremenijo smer delcev in fokusirajo žarek. Večpolni magneti višjega reda se uporabljajo za bolj zapletene pospeševalnike in bolj fine nastavitve. Nato so v poglavju opisane fizične zgradbe pospeševalnika, načelo pospeševanja in sestavni deli, ki se uporabljajo na snopu delcev. Predstavljeno je načrtovano delovanje sistema za pospeševanje od točke vbrizgavanja delcev do izhoda pospeševalnika in opisan splošni namen pospeševalnika. Nato v poglavju razpravljamo o fizični arhitekturi sistema vodenja za pospeševanje in opišemo, kje so nameščene različne naprave za vodenje sistema, kako se vzpostavi komunikacija med njimi in kako se ukazi pošiljajo posameznim komponentam strojne opreme. Četrto poglavje zajema razvoj različnih programskih komponent, ki so opisane v tem delu. Opišemo splošni pristop k načrtovanju razredov in objektov ter znotraj vsake komponente in metode obravnavo napak v sistemu. Predstavljeni so načini komunikacije z razvitimi komponentami, seznam operacij, ki jih je mogoče izvesti na vsaki od komponent, in nabor podatkov, ki jih je možno pridobiti. Prikažemo postopek doseganja osnovne funkcionalnosti vsake od komponent, pri čemer opišemo izvedbo razredov in objektov, ki sestavljajo komponento. Pri vsaki od komponent posebej razložimo obravnavo napak. Na koncu je predstavljen postopek preverjanja funkcionalnosti vsake komponente z uporabo simulatorjev. V petem poglavju ocenimo izvedeno zasnovo na podlagi številnih kazalnikov oz. metrik objektno usmerjenega programiranja. Opisana so teoretična izhodišča in pomen vsake metrike ter formule, uporabljene pri izračunih. Vsaka od teh metrik se izračuna za vsako komponento posebej in za vse tri komponente kot celoto (običajno z iskanjem aritmetične sredine vrednosti posameznih rezultatov). Nato se rezultati analizirajo z vsako metriko in oceni kakovost zasnove. V šestem poglavju vrednotimo rezultate in na podlagi ocenjenih kazalnikov ocenimo kakovost zasnove komponent sistema. Na podlagi ocenjenih kazalnikov analiziramo atribute kakovosti objektno usmerjenega sistema. Rezultati so pokazali, da je bil sistem v splošnem dobro zasnovan. Sistem je modularen, ohlapno povezan in vključuje kohezivne razrede. Prednost opravljene analize je, da lahko razrede, ki izkazujejo ugodne kazalnike, ponovno uporabimo kot predloge za razvoj novih programskih komponent. Rezultati analize kažejo na možnost za izboljšanje ponovne uporabnosti z dedovanjem na osnovi globljih dednih dreves. Vendar ta način za trenutni sistem izvedbe sistema vodenja pospeševalnika ni priporočljiv, saj je zelo drag za izvedbo in ne bi bistveno pripomogel k lastnostim končnega izdelka. Tudi v prihodnosti je treba pri podobnih projektih previdno pristopiti k večji ponovni uporabi z dedovanjem.

Keywords:načela načrtovanja programske opreme, objektno usmerjeno načrtovanje, razvoj v okolju LabVIEW, sistem vodenja pospeševalnika

Similar documents

Similar works from RUL:
Similar works from other Slovenian collections:

Back