Skip to main content

LUP Student Papers

LUND UNIVERSITY LIBRARIES

Deep Learning on a Microcontroller Unit in a Hand-Prosthesis Control Context

Nilsson, Hannes LU (2021) BMEM05 20211
Department 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:
author
Nilsson, Hannes LU
supervisor
organization
course
BMEM05 20211
year
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}},
}