Signaalin käsittelyn näyttöjen laajennus NoUI-sovelluskehykseen
Korhonen, Milla (2025)
Korhonen, Milla
2025
All rights reserved. This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2025052817487
https://urn.fi/URN:NBN:fi:amk-2025052817487
Tiivistelmä
Opinnäytetyön aiheena on erilaisten näkymien luominen signaalien mittausdatasta ja koota ne yhteen paikkaan. Työn taustalla on yrityksen jo olemassa olevat palvelut signaalinkäsittelyä varten. Yksikään olemassa oleva palvelu ei kuitenkaan tarjoa jokaista tarvittavaa toiminnallisuutta, jonka vuoksi yritys joutuu käyttämään useampia halutun lopputuloksen saavuttamiseksi. Opinnäytetyön tarkoituksena on luoda vastaavia näkymiä ja koota ne yhteen paikkaan.
Päätavoitteena oli luoda Signals-sovellus osaksi suurempaa sovelluskehyskokonaisuutta, Nome UI Frameworkia (NoUI). Toinen tärkeä tavoite oli käyttää kehityksessä uudelleenkäytettäviä komponentteja, sillä sovelluskehyskokonaisuudesta haluttiin yhtenevä kaikkien osien välillä.
Työn keskeisimpinä toteutustapoina oli JavaScriptillä ohjelmointi, Viten ja Reactin käyttäminen kehitystyössä sekä uudelleenkäytettävät komponentit. Työssä käytettiin myös eri tietokantoja (ArangoDB ja IoTDB) sekä pilvitallennuspalvelu CloudFlarea, joista numeerista mittausdataa haettiin. Muita käytettyjä menetelmiä olivat sulautettu SQL-kieli, BLOB sekä esiallekirjoitetut URL-osoitteet. Kehitystyön alussa kartoitettiin nykyisiä työkaluja ja näkymiä, jotka toimivat aineistona. Niiden pohjalta työ tehtiin iteratiivisena ohjelmistokehityksenä, jossa versioita syntyi useampi ennen lopullista ratkaisua.
Työn teoriaosuus on kirjoitettu uudelleenkäytettävien komponenttien näkökulmasta, ja siihen hyödynnettiin erilaisia tieteellisiä tutkimusaineistoja sekä verkkokirjoja. Aihe valittiin, koska se liittyi läheisesti myös käytännön toteutukseen.
Tuloksena syntyi Signals-sovellus, joka liitettiin osaksi sovelluskehystä. Se toteutti yhtenevän ulkoasun, muodosti erilaisia näkymiä mittausdatan pohjalta ja kokosi ne yhteen paikkaan.
Työ osoitti, että uudelleenkäytettävillä komponenteilla parannetaan sovelluksen ylläpidettävyyttä sekä käytettävyyttä. Lopputuote on hyvä perusta sovelluksen jatkokehitystä varten, ja suositeltuja jatkokehityssuuntia ovat signaalinkäsittelytoimintojen lisääminen sekä käyttäjäkohtaisen muokattavuuden parantaminen. The purpose of this thesis was to create different charts of raw signal data for a company called Nome Oy. Nome’s field of activity includes condition monitoring in various industries, software development and customer projects.
The work was based on the company’s existing services for signal processing. Since none of the existing solutions covered all the necessary functionality, the development was driven by the need to unify multiple separate tools into a single application.
The main goal was to create Signals application as a part of larger framework called NoUI (Nome UI Framework). In addition, the other key object was to integrate the various signal processing views into a single user interface.
The application was implemented in JavaScript, using Vite and React. Raw signal data was retrieved from various sources (ArangoDB, IoTDB, CloudFlare) and utilized JSON structures, SQL queries, and presigned URLs as part of the data handling process.
The theoretical part of the thesis was focused on the importance of reusable components in application development.
The result was an application called Signals, which meets the needs of the company and provides a base for further development. Recommendations for further development include adding new signal processing functions.
Päätavoitteena oli luoda Signals-sovellus osaksi suurempaa sovelluskehyskokonaisuutta, Nome UI Frameworkia (NoUI). Toinen tärkeä tavoite oli käyttää kehityksessä uudelleenkäytettäviä komponentteja, sillä sovelluskehyskokonaisuudesta haluttiin yhtenevä kaikkien osien välillä.
Työn keskeisimpinä toteutustapoina oli JavaScriptillä ohjelmointi, Viten ja Reactin käyttäminen kehitystyössä sekä uudelleenkäytettävät komponentit. Työssä käytettiin myös eri tietokantoja (ArangoDB ja IoTDB) sekä pilvitallennuspalvelu CloudFlarea, joista numeerista mittausdataa haettiin. Muita käytettyjä menetelmiä olivat sulautettu SQL-kieli, BLOB sekä esiallekirjoitetut URL-osoitteet. Kehitystyön alussa kartoitettiin nykyisiä työkaluja ja näkymiä, jotka toimivat aineistona. Niiden pohjalta työ tehtiin iteratiivisena ohjelmistokehityksenä, jossa versioita syntyi useampi ennen lopullista ratkaisua.
Työn teoriaosuus on kirjoitettu uudelleenkäytettävien komponenttien näkökulmasta, ja siihen hyödynnettiin erilaisia tieteellisiä tutkimusaineistoja sekä verkkokirjoja. Aihe valittiin, koska se liittyi läheisesti myös käytännön toteutukseen.
Tuloksena syntyi Signals-sovellus, joka liitettiin osaksi sovelluskehystä. Se toteutti yhtenevän ulkoasun, muodosti erilaisia näkymiä mittausdatan pohjalta ja kokosi ne yhteen paikkaan.
Työ osoitti, että uudelleenkäytettävillä komponenteilla parannetaan sovelluksen ylläpidettävyyttä sekä käytettävyyttä. Lopputuote on hyvä perusta sovelluksen jatkokehitystä varten, ja suositeltuja jatkokehityssuuntia ovat signaalinkäsittelytoimintojen lisääminen sekä käyttäjäkohtaisen muokattavuuden parantaminen.
The work was based on the company’s existing services for signal processing. Since none of the existing solutions covered all the necessary functionality, the development was driven by the need to unify multiple separate tools into a single application.
The main goal was to create Signals application as a part of larger framework called NoUI (Nome UI Framework). In addition, the other key object was to integrate the various signal processing views into a single user interface.
The application was implemented in JavaScript, using Vite and React. Raw signal data was retrieved from various sources (ArangoDB, IoTDB, CloudFlare) and utilized JSON structures, SQL queries, and presigned URLs as part of the data handling process.
The theoretical part of the thesis was focused on the importance of reusable components in application development.
The result was an application called Signals, which meets the needs of the company and provides a base for further development. Recommendations for further development include adding new signal processing functions.