Mittaussignaalin käsittely Raspberry Pi:llä
Kortelainen, Jouni (2017)
Kandidaatintyö
Kortelainen, Jouni
2017
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi-fe201801111307
https://urn.fi/URN:NBN:fi-fe201801111307
Tiivistelmä
Työn tavoitteena oli selvittää millaiseen signaalinkäsittelyyn Raspberry Pi 3 B soveltuu. Soveltuvuutta arvioitiin tutkimilla laitteelle saatavia työkaluja, laitteella toteutettuja sovelluksia sekä sen tehokkuutta. Työ perustui kirjallisiin lähteisiin, sekä laitteella suoritettuihin testeihin.
Raspberry Pi:llä voidaan käyttää MATLAB:a, Simulink:iä sekä LabVIEW:a. MATLAB:n ja LabVIEW:n käyttö edellyttää ethernet yhteyttä toiseen tietokoneeseen. Simulink-mallit voidaan kääntää Raspberry Pi:llä toimiviksi, eikä käytönaikaista yhteyttä tarvita.
Raspberry Pi:llä voidaan käyttää korkean-tason kieliä. Stackexchangen tietokantojen mukaan suosituimmat Linuxin datankäsittelyn kielet olivat R ja Python. Molempiin on saatavalla monia signaalinkäsittelyssä käytännöllisiä kirjastoja, jotka ovat ilmaisia. R:n on myös saatavalla MATLAB:n Signal Processing Toolbox:n sisältämät funktiot.
Viime vuosina Raspberry PI on saanut suosiota myös kaupallisella puolella. Sitä käytetään usein yksinkertaisiin tehtäviin, joihin ei tahdota ostaa kallista laitteistoa, kuten digitaalisten mainoskylttien ohjaamiseen. Parhaimpina puolina pidetään halpaa hintaa, laskentatehoa, pientä virrankulutusta sekä joustavuutta. Laitteessa on myös omia GPIO pinnejä, joihin voidaan kytkeä suoraan kiinni erilaisia sensoreita, jotka eivät käy perinteisiin tietokoneisiin.
Yksi laitteen yleisistä käyttökohteista on dataloggeri, jolla käsitellään ja talletetaan mittausdataa. Dataloggerissa voidaan laskea esimerkiksi liikkuvaa keskiarvoa näytteiden välillä. Testin mukaan ikkunakoolla 10 Raspberry Pi laski liikkuvan keskiarvon 300 datapisteelle noin 11 millisekunnissa.
FFT-testissä Raspberry Pi laski Fourier muunnoksen nopeinten 2^4 datapisteelle, johon kului aikaa noin 43 mikrosekuntia. Liikkuvan keskiarvon sekä FFT:n laskenta onnistuu siis hyvin esimerkiksi 1 Hz näytteistystaajuudella jokaiselle näytteelle.
Tutkimuksia tehdessä laitteesta ei löydetty suuria puutteita, ja se osoittautui hyväksi vaihtoehdoksi pieniin signaalinkäsittelyn tehtäviin, joissa ei tarvita suurta laskentatehoa. The objective of this paper was to find out what kind of signal processing Raspberry Pi 3 is capable of. Capability was measured by researching what kind of tool are available for the device, what kind of applications have been done and how powerful the device is. The paper was based on written sources and test done with the device.
MATLAB, Simulink and LabVIEW can be used with Raspberry Pi. The use of MATLAB and LabVIEW require Ethernet connection between Raspberry Pi and a host computer. Simulink models can be compiled and executed on Raspberry Pi, without connection to the host.
According to the StackExchange’s database, High-level languages R and Python are currently the most used data-analysis languages on Linux. Both of the languages have multiple free libraries for signal processing, which makes them well suited. All of MATLAB’s Signal Processing Toolbox functions are also available in R from a free library.
During the last few years, Raspberry Pi has gained a lot of favor in commercial sector. The device is often used in simple tasks were a PC is not an affordable investment. One of these tasks is control unit of digital signs. Cheap price, low power consumption, computing power and flexibility are often regarded as the best parts of Raspberry Pi. The device also has its own GPIO pins that can be used with sensor that are not suitable to be used with ordinary computers.
One of the common applications is a datalogger, which handles and saves data. Datalogger could also be used to calculate moving average for the measurement signal between samples. According to a test, with window size of 10, Raspberry Pi calculate the moving average for 300 data points in about 11 milliseconds.
In a FFT-test Raspberry Pi calculated the Fourier transformation fastest for 2^4 data points. Calculation time was about 43 microseconds. Low time of moving average and FFT calculation indicates that the device could easily be used with 1 Hz sampling frequency and moving average or FFT can be calculated for every sample.
During the research device didn’t appear to have big shortcomings and it proved to be a good option in small signal processing applications, that don’t need a lot of computing power.
Raspberry Pi:llä voidaan käyttää MATLAB:a, Simulink:iä sekä LabVIEW:a. MATLAB:n ja LabVIEW:n käyttö edellyttää ethernet yhteyttä toiseen tietokoneeseen. Simulink-mallit voidaan kääntää Raspberry Pi:llä toimiviksi, eikä käytönaikaista yhteyttä tarvita.
Raspberry Pi:llä voidaan käyttää korkean-tason kieliä. Stackexchangen tietokantojen mukaan suosituimmat Linuxin datankäsittelyn kielet olivat R ja Python. Molempiin on saatavalla monia signaalinkäsittelyssä käytännöllisiä kirjastoja, jotka ovat ilmaisia. R:n on myös saatavalla MATLAB:n Signal Processing Toolbox:n sisältämät funktiot.
Viime vuosina Raspberry PI on saanut suosiota myös kaupallisella puolella. Sitä käytetään usein yksinkertaisiin tehtäviin, joihin ei tahdota ostaa kallista laitteistoa, kuten digitaalisten mainoskylttien ohjaamiseen. Parhaimpina puolina pidetään halpaa hintaa, laskentatehoa, pientä virrankulutusta sekä joustavuutta. Laitteessa on myös omia GPIO pinnejä, joihin voidaan kytkeä suoraan kiinni erilaisia sensoreita, jotka eivät käy perinteisiin tietokoneisiin.
Yksi laitteen yleisistä käyttökohteista on dataloggeri, jolla käsitellään ja talletetaan mittausdataa. Dataloggerissa voidaan laskea esimerkiksi liikkuvaa keskiarvoa näytteiden välillä. Testin mukaan ikkunakoolla 10 Raspberry Pi laski liikkuvan keskiarvon 300 datapisteelle noin 11 millisekunnissa.
FFT-testissä Raspberry Pi laski Fourier muunnoksen nopeinten 2^4 datapisteelle, johon kului aikaa noin 43 mikrosekuntia. Liikkuvan keskiarvon sekä FFT:n laskenta onnistuu siis hyvin esimerkiksi 1 Hz näytteistystaajuudella jokaiselle näytteelle.
Tutkimuksia tehdessä laitteesta ei löydetty suuria puutteita, ja se osoittautui hyväksi vaihtoehdoksi pieniin signaalinkäsittelyn tehtäviin, joissa ei tarvita suurta laskentatehoa.
MATLAB, Simulink and LabVIEW can be used with Raspberry Pi. The use of MATLAB and LabVIEW require Ethernet connection between Raspberry Pi and a host computer. Simulink models can be compiled and executed on Raspberry Pi, without connection to the host.
According to the StackExchange’s database, High-level languages R and Python are currently the most used data-analysis languages on Linux. Both of the languages have multiple free libraries for signal processing, which makes them well suited. All of MATLAB’s Signal Processing Toolbox functions are also available in R from a free library.
During the last few years, Raspberry Pi has gained a lot of favor in commercial sector. The device is often used in simple tasks were a PC is not an affordable investment. One of these tasks is control unit of digital signs. Cheap price, low power consumption, computing power and flexibility are often regarded as the best parts of Raspberry Pi. The device also has its own GPIO pins that can be used with sensor that are not suitable to be used with ordinary computers.
One of the common applications is a datalogger, which handles and saves data. Datalogger could also be used to calculate moving average for the measurement signal between samples. According to a test, with window size of 10, Raspberry Pi calculate the moving average for 300 data points in about 11 milliseconds.
In a FFT-test Raspberry Pi calculated the Fourier transformation fastest for 2^4 data points. Calculation time was about 43 microseconds. Low time of moving average and FFT calculation indicates that the device could easily be used with 1 Hz sampling frequency and moving average or FFT can be calculated for every sample.
During the research device didn’t appear to have big shortcomings and it proved to be a good option in small signal processing applications, that don’t need a lot of computing power.