Deep Learning on a Microcontroller Unit in a Hand-Prosthesis Control Context
(2021) BMEM05 20211Department of Biomedical Engineering
- Abstract
- This master's thesis investigates in what capacity a typical hand-prosthesis classification ANN (Artificial Neural Network) can be deployed on a microcontroller unit. A working, implemented interface is presented along with extra scripts, applications and functions for easy training and testing. Performance of different architectures as well as model-conversion tools are evaluated and compared. Furthermore, potential drawbacks, advantages of ANN architectures and tools are discussed. A dense neural network, albeit primitive, implementation on current readily available microcontrollers might be feasible as a classifier in a real time hand-prosthesis context. Finally, possible solutions and improvements are proposed.
- Popular Abstract (Swedish)
- Att använda maskininlärning på en mikrokontroll för att styra handproteser
Det har länge experimenterats med elektriskt drivna handproteser för att återfå funktionalitet hos patienter som undergått en amputation. Vid muskelkontraktioner, i exempelvis underarmen, genereras elektriska signaler som kan fångas upp och användas till att styra en handprotes. Här behöver vi alltså fatta ett beslut om vilken rörelse en handprotes ska genomföra varje gång vi observerar en ny uppsättning insignaler. Detta är känt som ett typiskt klassificeringsproblem inom maskininlärning och kan, bland annat, lösas med ett artificiellt neuralt nätverk (ANN). Under en träningsfas lärs detta nätverk upp och följaktligen kan nätverket fatta rationella beslut även... (More) - Att använda maskininlärning på en mikrokontroll för att styra handproteser
Det har länge experimenterats med elektriskt drivna handproteser för att återfå funktionalitet hos patienter som undergått en amputation. Vid muskelkontraktioner, i exempelvis underarmen, genereras elektriska signaler som kan fångas upp och användas till att styra en handprotes. Här behöver vi alltså fatta ett beslut om vilken rörelse en handprotes ska genomföra varje gång vi observerar en ny uppsättning insignaler. Detta är känt som ett typiskt klassificeringsproblem inom maskininlärning och kan, bland annat, lösas med ett artificiellt neuralt nätverk (ANN). Under en träningsfas lärs detta nätverk upp och följaktligen kan nätverket fatta rationella beslut även på okänd data. Större neurala nätverk kan lära sig mer komplexa problem och då talar man ofta om deep learning.
I samband med utveckling av teknik har det relativt nyligen blivit möjligt att implementera neurala nätverk direkt på mikrokontroller - små, specialiserade datorer. På så vis, går det att lokalt göra klassificering, istället för att först skicka iväg all information och sedan vänta på ett svar från en annan dator eller en molnbaserad lösning. Detta medför ett antal fördelar så som responstid, ingen internetuppkoppling behövs samt känslig information behöver inte lämna enheten. Således är maskininlärning på en mikrokontroll ett viktigt steg i riktning mot snabba, kontrollerbara handproteser. Den största nackdelen är att modeller och nätverk kan behövas omvandlas och förenklas innan de implementeras på mikrokontrollen.
I examensarbetet konstruerades ett system bestående av en mikrokontroll, en styrbar handprotes samt fem elektroder. Program skrevs både för träning och testning av implementerad kod på mikrokontrollen. Vidare utvärderades olika neurala nätverk, men även verktyg för att omvandla modeller till mikrokontroller.
Det visar sig att lättillgängliga mikrokontroller är tillräckliga, både hastighets- och minnesmässigt, för simpla neurala nätverk när det gäller att styra en handprotes. Ett vanligt riktmärke för tid mellan muskelkontraktion och rörelse av handprotes är 200 millisekunder. Alla testade modeller presterade väl under detta, vilket tillåter vidare efterbehandling för ökad robusthet.
När det kommer till prestanda på mikrokontroller är en liten förlust av noggrannhet ofta oundviklig på grund av omvandling. Hur stor påverkan detta har på rörelsemöjligheterna av handprotesen och hur systemet beter sig i slutändan är dock inte helt lätt att förutse. (Less)
Please use this url to cite or link to this publication:
http://lup.lub.lu.se/student-papers/record/9059634
- author
- Nilsson, Hannes LU
- supervisor
- organization
- course
- BMEM05 20211
- year
- 2021
- type
- H2 - Master's Degree (Two Years)
- subject
- keywords
- electromyography, deep learning, microcontroller, hand-prosthesis control, artificial neural network
- language
- English
- additional info
- 2021-11
- id
- 9059634
- date added to LUP
- 2021-06-29 14:32:26
- date last changed
- 2021-06-29 14:32:26
@misc{9059634, abstract = {{This master's thesis investigates in what capacity a typical hand-prosthesis classification ANN (Artificial Neural Network) can be deployed on a microcontroller unit. A working, implemented interface is presented along with extra scripts, applications and functions for easy training and testing. Performance of different architectures as well as model-conversion tools are evaluated and compared. Furthermore, potential drawbacks, advantages of ANN architectures and tools are discussed. A dense neural network, albeit primitive, implementation on current readily available microcontrollers might be feasible as a classifier in a real time hand-prosthesis context. Finally, possible solutions and improvements are proposed.}}, author = {{Nilsson, Hannes}}, language = {{eng}}, note = {{Student Paper}}, title = {{Deep Learning on a Microcontroller Unit in a Hand-Prosthesis Control Context}}, year = {{2021}}, }