View
218
Download
0
Category
Preview:
Citation preview
INOM EXAMENSARBETE TEKNIK,GRUNDNIVÅ, 15 HP
, STOCKHOLM SVERIGE 2017
Analys av muskelaktivitet i underbenet vid gångEn studie på tre olika fotledsortoser
DIDRIK NIMANDER
SIMON SÖDERLUND
KTHSKOLAN FÖR TEKNIK OCH HÄLSA
i
Detta examensarbete har utförts i samarbete med Karolinska Institutet
Handledare på Karolinska Institutet: Åsa Fröberg, Karolinska Institutet, Institutionen för klinisk vetenskap, intervention och teknik, Enheten för ortopedi och bioteknologi.
Analys av muskelaktivitet i underbenet vid gång -En studie på tre olika fotledsortoser
Analysis of muscle activity of the lower leg at walking
speed -A study on three types of ankle foot orthoses
D i d r i k N i m a n d e r S i m o n S ö d e r l u n d
Examensarbete inom medicinsk teknik Grundnivå, 15 hp
Handledare på KTH: Tobias Nygren och Mattias Mårtensson Examinator: Mats Nilsson
Skolan för teknik och hälsa
Kungliga Tekniska Högskolan KTH STH
SE-141 86 Flemingsberg, Sweden http://www.kth.se/sth
2017
Sammanfattning
Projektet syftade till att undersoka skillnaden pa tre olika utformningar av fotledsortoser nar det kommer till muskel-
aktivitet i underbenet vid gang. Det genomfordes pa grund av att det finns fa studier pa hur olika fotledsortoser
forhaller sig till varandra, darmed ar kunskapen begransad. Tillvagagangssattet var att skriva ett matlabskript som
manipulerade och analyserade all indata och levererade jamforbara resultat for de enskilda ortoserna.
Analysen skedde i fyra overgripande moment dar det forsta var att manipulera EMG:ts radata for att forenkla anal-
ysen av den, det andra momentet var att definiera stegtider utifran fotsuletrycksdata. Tredje momentet innefattade
att manipulera referensdata pa samma satt som i moment ett och det fjarde var att uttrycka EMG-data i procent
av referensdatan.
Efter att EMG-data analyserats sa jamfordes de olika ortoserna genom att medelvarden fran samtliga forsokspersoner
beraknades i Excel.
Resultaten visade att muskelaktiviteten i ”Triceps Surae” overlag verkar minska med okad plantarflexion. Slutsatsen
fick delas upp muskel for muskel och har ingen genomgaende trend utan slutsatsen blev olika for varje muskel.
iii
Abstract
The aim of this project is to investigate the differences in muscle activity of the lower leg between three types of ankle
foot orthoses. The reason behind the project is that there is little knowledge about differences between different
types of orthoses. The method used to tackle this task was to write a Matlab script that manipulated and anlyzed
all the data required to yield a result for each individual orthoses that then could be used to compare them to each
other.
This was done in four major steps, the first of which was to manipulate the EMG-data of the chosen file so that it
became easier to analyze, the second step was to use the data from a pressure sole to determine when steps started
and ended. Thirdly, the reference data was manipulated in the same way as in step one. The fourth and final step
was to express the chosen file in percent of the reference data. Finally, Excel was used to compare the different
orthoses by calculating mean values from the test subjects data.
The results showed that the muscel actvity in ”Triceps Surae” seems to decrease with increased plantarflexion.
The conclussion had to be divided into one conclussion per muscle, the different conlussions differed for every muscle.
v
Forkortningar
AW - Aircast walker
BF - Barfota
DB - Dorsal brace
DF - Dorsalflexion
EMG - Elektromyografi
FT - Fotsuletryck
GL - Gastrocnemius lateralis
GM - Gastrocnemius medialis
MVC - Maximum Voluntary Contraction
PF - Plantarflexion
ROM - Range of motion
RMS - Root Mean Square
Sol - Soleus
TA - Tibialis anterior
TS - Triceps Surae
vii
Innehallsforteckning
1 Introduktion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.1 Mal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 Avgransningar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
2 Bakgrund . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
2.1 Datainsamling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
2.2 Fysiologi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
2.3 Ortos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
2.4 Elektromyografi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
3 Metod . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
4 Resultat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
5 Diskussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
6 Slutsats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
7 Kallforteckning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Bilagordddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddllll
Bilaga A Figurerddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddll
Bilaga B Tabellerdddddddddddddddddddddddddddddddddddddddddddddddddddddddddddlll
Bilaga C Matlabskriptdddddddddddddddddddddddddddddddddddddddddddddddddddddddlll
ix
1. Introduktion
Varje ar drabbas ungefar 2 600 personer i Sverige av
halseneruptur framst i aldern 40-59 och en del av dessa
behover i samband med det suturera halsenan(1,2).
Denna operation kraver lang rehabilitering och ett
vanligt behandlingsalternativ ar da att anvanda en
fotledsortos for att avlasta halsenan under
rehabiliteringstiden(3).
Det man stravar efter ar en fotledsortos som
immobiliserar fotleden pa ett sadant satt att man
tillater tillrackligt med rorlighet for att minska atrofi,
men motverka att halsenan utsatts for krafter som kan
motverka lakningsprocessen(4,5).
I dagslaget finns det begransat med kunskap om hur
olika fotledsortoser skiljer sig med avseende pa
muskelaktivitet. Med anledning av detta syftar det har
projektet till att analysera Elektromyografi(EMG)-data
fran vadmuskulaturen vid gang med tre olika
utformningar pa fotledsortoser som ar avsedda for att
immobilisera fotleden, samt vid barfotagang.
Resultaten fran detta projekt ar planerade att anvandas
i en mer omfattade, hittills, opublicerad studie dar man
aven anvander ultraljudsbilder pa halsenan for att
berakna hur mycket kraft den utsatts for. Data som
analyseras i detta projekt kommer fran denna, mer
omfattande studie som leds av Asa Froberg
(Specialistlakare, Ortopedkliniken, Karolinska
Huddinge).
1.1 Mal
Malet ar att undersoka skillnader i muskelaktivitet i
underbenet mellan tre olika fotledsortoser samt utan
ortos. Resultatet ska astadkommas genom analys av
erhallen EMG-data samt data fran
fotsuletrycksmatningar.
1.2 Avgransningar
Den EMG-data som erhallits innehaller matningar fran
fyra stycken muskler: Gastrocnemius lateralis (GL),
Gastrocnemius medialis (GM), Soleus (Sol) och Tibialis
anterior (TA). Det ar muskelaktiviteten i dessa muskler
som kommer att undersokas.
De data som anvands kommer fran atta man i aldern
40-50 detta pa grund av att det var mer relevant med en
homogen testgrupp for att jamfora ortoserna nar bara
halften av de tankta antalet forsokspersoner skulle
testas. Anledning till att man valdes framfor kvinnor ar
att halseneruptur i 90 % av fallen drabbar man och den
grupp med flest incidenser ar man i aldern 40-59(2,3).
1
2. Bakgrund
2.1 Datainsamling
I studien fran vilken data har erhallits har tre stycken
varianter av fotledsortoser anvants som alla har som
uppgift att immobilisera fotleden pa olika satt. De tre
sorterna som kallas ”Dorsal brace” (DB, se figur
A.1),”Aircast Walker” (AW, se figur A.2) och ”Range of
motion” (ROM, se figur A.3) gar alla att stalla in for att
modifiera i vilken position fotleden lases i, ortoserna har
testats for tva till tre olika installningar beroende pa
ortos (se tabell 2.1 nedan).
Tabell 2.1. Tabell over de olika installningarna och
ortostyperna som testades under forsoken.
Ortos Installning 1 Installning 2 Installning 3
Barfota 2 km/h 3 km/h 10 km/h
AW 3 kil 1 kil 0 kil
ROM 30 PF 10 PF 10 DF
DB 1 kil 0 kil
For varje installning som testades gjordes forsoken tre
ganger om. Forsoken planeras att goras pa 16 stycken
forsokspersoner i 40-55 ars aldern, varav atta stycken
ska vara man och atta ska vara kvinnor.
En del av projektet var att delta under nagra av dessa
forsok for att fa insikt i hur samtlig data har framtagits.
Matningarna gick till sa att forsokspersonen anlande till
labbet och fick borja med att gora en gipsavgjutning for
en av ortostyperna, namligen DB (se figur A.4). Nar
detta var avklarat paborjades uppkoppling av alla
matinstrument som kravdes for forsoken.
Forst applicerades EMG-elektroderna (se figur A.5).
Omradena dar elektroderna skulle fastas rakades och
tvattades sen med sprit for att forbattra haftning och
minska impedans. De tva elektroderna placerades mitt
pa respektive muskel och med tva centimeters avstand
fran varandra.
Nasta steg var att tejpa fast ultraljudsproben och
goniometern, ultraljudsproben applicerades pa halsenan
och goniometern pa sidan av foten (se figur A.6). Till
sist fick personen ta pa sig tryckfotsulor (se figur A.7),
dessa holls pa plats med strumpor.
Nar alla matinstrument var pa plats fick varje
forsoksperson genomga de olika testerna i en slumpvald
ordning. Detta for att minska effekterna av trotthet och
ovanhet.
2.2 Fysiologi
De muskler pa vilka matningar har gjorts ar Tibialis
anterior(TA) som ar belagen framfor tibialisbenet och
vars huvudsakliga funktion ar att dorsalflektera
fotleden(7). Utover den ar det de tre stora musklerna pa
vaden som utgor Triceps surae(TS) som matningar
genomforts pa, dessa tre ar Gastrocnemius lateralis(GL),
Gastrocnemius medialis(GM) samt Soleus(Sol)(7).
De tva Gastrocnemius musklerna ar belagna sa att
medialis ligger medialt, alltsa pa insidan av benet och
lateralis ligger lateralt d.v.s. pa utsidan av benet, under
de tva Gastrocnemius musklerna ar Soleus belagen(7).
Den huvudsakliga uppgiften for TS ar att boja fotleden
med PF(7).
2.3 Ortos
En ortos kan definieras som en produkt som appliceras
externt for att modifiera strukturen och den funktionella
karaktaren av neuro-muskel och skelettsystemen(6). De
tre utformningarna pa fotledsortoser som har anvants i
testerna har alla som uppgift att pa olika satt forhindra
fotleden fran att boja sig for langt uppat, alltsa
dorsalflexion (DF) eller for langt nerat , det som kallas
plantarflexion (PF) eller bade och, i fallet av
halseneruptur ar det framforallt dorsalflexion som vill
undvikas da detta stracker ut halsenan.
2
2.4 Elektromyografi
EMG kan definieras som en studie av muskelfunktion
genom insamling av elektriska signaler som uppstar nar
en muskel anvands(8). EMG-signalen ar baserad pa
aktionspotentialer i muskelmembranet fran
depolarisations- och repolarisations processer(8). Med
hjalp av EMG kan man ta reda pa vad muskeln gor vid
olika intressanta ogonblick(8). Det finns tva vanliga
sorters EMG, nEMG (needle EMG) och sEMG (surface
EMG)(8).
Dessa anvands for att studera muskelaktivitet, nEMG
anvands framst vid kliniska undersokningar for att
diagnostisera neuromuskulara sjukdomar och sEMG
anvands flitigare vid rehabiliteringsmedicin, ergonomi
och idrottsrelaterad forskning(9). Vid traditionell sEMG
anvands tva elektroder for att ta upp signalerna fran
muskeln(9).
Data som anvands i detta projekt har erhallits med
sEMG. Obehandlad EMG-data ar svartolkad, darfor sa
bearbetas ofta data som har samlats in.
Baslinjen hos EMG-data kan pa grund av amplifikation
vid insamling vara forskjuten bort fran nollnivan(8).
Om detta ar fallet sa maste det korrigeras sa att
baslinjen hamnar pa den sanna nollnivan, detta gors for
att berakningen med avseende pa amplitud inte ska bli
felaktig(8).
Radatat fran EMG har medelvardet noll eftersom de
negativa komponenterna tar ut de positiva, pa grund av
detta vill man omvandla de negativa amplituderna till
positiva amplituder(8). For att i fortsatt behandling
kunna berakna t.ex. medelvarde och maxvarde(8).
Bruset i en EMG-matning ar slumpmassigt vilket leder
till att radata hos de omraden med hog aktivitet som
uppstar periodiskt i samband med gang inte kan
reproduceras med exakt samma utseende(8). Det ar
darfor varje stegs data skiljer sig nagot fran de andra.
For att minimera brusets paverkan i detta avseende sa
utjamnar man ofta kurvan med hjalp av t.ex. RMS(8).
Nar EMG-data samlas in ar det viktigt att alla
matningar gors under samma tillfalle da en valdigt liten
skillnad i elektrodernas placering pa muskeln kan leda
till markbara skillnader i utdata(8). Pa grund av detta
och att EMG:ts radata i sig inte har nagot varde nar det
kommer till att jamfora flertalet forsokspersoner med
varandra, ar det vanligt att man utrycker all data i
procent av MVC (”Maximum Voluntary Contraction”)
for att gora dem jamforbara(8).
MVC ar det varde som uppnas under en maximal
isometrisk kontraktion av en muskel(10). I detta fall har
forsokspersonen uppmanats att mot ett motstand ta i
allt vad personen kunde i tre korta intervall med nagon
sekunds vila emellan. Personen gjorde tva olika
ovningar, en for TA-muskeln och en for de tre musklerna
i TS. Bada ovningarna gjordes en gang innan testerna
och en gang efter utan att flytta pa elektroderna. Vilket
da ledde till att det finns sex stycken prov pa MVC per
ovning.
Har har definitionen for ett steg bestamts vara tiden
fran halnedsattning till halnedsattning. Det finns ett
antal liknande studier som testat muskelaktivitet i
samband med ortoser, nagra av dessa pekar emot att
okad PF leder till sankt muskelaktivitet i TS(4,11,12).
Daremot finns det fa studier som jamfor flera olika
ortoser i samma studie.
3
3. Metod
MATLAB R2014b (Mathworks Inc, Natick,
Massachusetts, USA) har anvants for att skapa skriptet
(se bilaga C for koden). For att anvanda koden behover
ett antal filer laddas in, EMG-filerna bor vara textfiler
dar tid ligger i kolumn ett och Sol, GL, GM och TA, bor
ligga i kolumn 5-8 i just den ordningen. Filerna for
fotsuletryck bor vara i formatet ”.asc” dar alla de 198
tryckcellerna fran tva sulor ar med, varje kolumn
motsvarar en tryckcell och den fotsulas tyckceller man
onskar information ifran bor ligga pa kolumn 100-198.
Analysen av EMG-data har gjorts i fyra huvudsakliga
moment, har foljer en beskrivning av dessa moment och
hur de utfordes.
Moment 1
Initialt behovde radata (se figur 3.1) manipuleras fran
EMG-matningarna man ville analysera, alla filer for en
viss installning valdes och detta gjordes med samtlig
data.
Figur 3.1. Figuren visar radata fran EMG.
Figur 3.2. Baslinjen hos datasetet har har sankts.
1. Sankte baslinjen hos EMG-data till noll.
EMG-kurvans baslinje ligger lite over noll. Datasetets
medelvarde beraknades och sen subtraherades detta
medelvarde fran varje punkt i datasetet sa att hela
EMG-kurvan sanktes och baslinjen hamnade pa noll (se
figur 3.2).
2. Tog absolutbeloppet av EMG-kurvan.
Absolutbeloppet av datasetet beraknadess och pa sa satt
eliminerades alla negativa bidrag (se figur 3.3, ovre).
Figur 3.3. Absolutbeloppet av kurvan visas har (ovre)
och sen har kurvan blivit utjamnad (undre).
3. Anvande Root Mean Square (RMS) for att utjamna
kurvan.
RMS anvandes for att utjamna EMG-kurvorna, varje
punkt fick ett nytt varde baserat pa ett RMS-varde av
alla punkter fran 100 punkter innan till 100 punkter
efter den aktuella punkten i datasetet (se figur 3.3,
undre).
Moment 2
I moment tva definierades steg utifran
fotsuletrycksmatningar (FT-matningar) stegen foljer
har.
1. Bestamde max av de 99 tryckcellerna i fotsulan.
4
Trycksulan bestar av 99 element, for varje enskild
tidpunkt plockades det element med hogst bidrag ut for
att underlatta analys.
2. Definierade steg med hjalp av FT-matningarna.
Bestamde tidpunkter da varje steg startade och slutade
genom att identifiera halnedsattningar i datamangden.
3. Omvandlade start- och sluttider for stegen.
FT-matningarna genomfordes med en annan frekvens an
EMG-matningar sa tidpunkterna skalades om for att
stamma overens med motsvarande EMG-data.
Moment 3
For att astadkomma jamforbara resultat manipulerades
matdata fran referensforsok, i detta fall 10 km/h
forsoken. Alla tillgangliga forsok som utforts barfota i
10 km/h laddades in i programmet.
1. Upprepade moment 1 och moment 2 for matningar
utforda barfota i 10 km/h.
Detta gjordes for ”BF 10 km/h” filer for att kunna
uttrycka forsoksresultaten i procent av detta.
2. Lat anvandaren manuellt fa valja steg.
Skriptet later har anvandaren se stegen i tva stycken
figurer och uppmanar denne att valja ut de steg som ska
anvandas. Detta gjordes for 10 km/h matningar och sen
ocksa for det forsok som analyseras (se figur 3.4 och 3.5).
Figur 3.4. Forsta figuren som visas for att se hur
stegen ar definierade for ett av 10 km/h forsoken. De
roda strecken markerar halnedsattningar sa
mellanrummet mellan tva streck ar ett steg.
Figur 3.5. Andra figuren som visas for att se hur
EMG-data ser ut for varje steg (radata anvands) i ett av
10 km/h forsoken. De roda strecken ar samma som i
figuren innan men omskalade i tid for att passa
EMG-data.
3. Beraknade medeltoppen for varje valt steg.
Koden identifierade har maxpunkten i det valda steget
och beraknade ett medelvarde pa 30 punkter runt
omkring toppen.
4. Medelvardet over alla steg beraknades.
Medelvardet av alla stegs medeltoppvarde bestamdes
och ett varde som kan anvandas for att uttrycka resten
av all data i procent av 10 km/h hade uppnatts.
Moment 4
I ett fjarde avslutande moment jamfordes referensdata
och den data som skulle analyseras.
1. Uttryckte de filer som vill undersokas data i procent
av 10 km/h.
Varje datapunkt i den data som skulle analyseras
dividerades med det varde som uppnatts i moment 3.4.
2. Klippte ut steg fran EMG-data.
Stegtiderna som skriptet genererat i moment 2.3
anvandes sen for att plocka ut EMG-data steg for steg.
5
3. Bestamde medeltoppvardet.
Moment 3.3 upprepades har for varje steg av de data
som skulle analyseras.
4. Ett slutgiltigt medelvarde over alla steg
Moment 3.4 upprepades aven detta for samma data.
I detta projekt valdes det att tio steg fran bade
referensdata och den data som analyserades skulle
anvandas (se figur 3.6).
Efter att skriptet utfort dessa steg sa fordes alla varden
in i ett Microsoft Excel 2011 (Microsoft, Redmond,
Washington, USA) ark for att sen manuellt berakna de
slutgiltiga resultaten genom att ta medelvarden over
alla tester med samma ortos och installning. For varje
muskel beraknades aven ett 95 %-igt konfidensintervall
for varje ortos over de olika installningarna, detta
gjordes enligt ekvationen: Iµ = (x ± λα/2∗σ√n
).
Dar Iµ ar konfidensintervallet, x ar medelvardet, λα/2
ar konfidenskoefficienten(1,96 i detta fall), σ ar
standardavvikelsen och n ar provstorleken.
Figur 3.6. Figur over alla de 10 valda stegen for en
ortosinstallning, de svarta stracken markerar de
maxpunkter som skriptet anvander i moment 3.3.
6
4. Resultat
Skillnaden pa muskulaturens aktivitet med olika ortoser
och installningar visas i tabell 4.1.
Tabell 4.1. Medelaktiviteten over de atta
forsokspersonerna
Ortos Sol GM GL TA
BF 2k 30,2 % 61,8 % 28,7 % 42,3 %
BF 3k 36,3 % 56,9 % 27,5 % 39,5 %
DB 0 kil 25,2 % 48,5 % 27,3 % 34,7 %
DB 1 kil 27,7 % 46,2 % 25,2 % 36,8 %
ROM 10PF 19,3 % 48,4 % 37,2 % 64,4 %
ROM 30PF 25,3 % 30,6 % 29,9 % 61,7 %
ROM 10DF 31,5 % 36,9 % 28,6 % 60,7 %
AW 0 kil 29,9 % 45,9 % 20,4 % 52,8 %
AW 2 kil 16,2 % 33,9 % 16,3 % 50,4 %
AW 3 kil 16,4 % 32,9 % 14,7 % 56,6 %
I Sol lag medelaktiviteten mellan 16-33 % med ortoser
och deras olika installningar, jamfort med 30,2 % vid
barfotagang 2 km/h (se figur 4.1), se tabell 4.1 for mer
detaljerad information. Hogst medelaktivitet i Sol med
nagon av ortoserna forekom nar ROM 10 DF (31,5 %)
installningen anvandes och lagst var aktiviteten nar AW
2 kil (16,2 %) installningen anvandes.
Medelaktiviteten i GM lag mellan 30-49 % med nagon av
ortoserna jamfort med 61,8 % vid barfotagang 2 km/h
(se figur 4.1). Hogst aktivitet var det med installningen
DB 0 kil (48,5 %) och lagst med ROM 30 PF (30,6 %).
GL hade medelaktivitet mellan 14-38 % nar nagon ortos
anvandes medan medelaktivitet lag pa 28,7 % vid
barfotagang 2 km/h (se figur 4.1). Storst aktivitet
forekom nar installningen ROM 10 PF (37,2 %) och
minst forekom med installningen AW 3 kil (14,7 %).
Hos TA lag medelaktiviteten mellan 34-65 % med de
olika ortoserna jamfort med 42,3 % vid barfotagang 2
km/h (se figur 4.1). Installningen ROM 10 PF hade
hogst aktivitet med 64,4 % och lagst hade installningen
DB 0 kil med 34,7 %.
Figur 4.1. Medelvarden for muskelaktiviteten vid BF.
Maximala vardet pa muskelaktivitet som nagon
forsoksperson uppnadde med DB lag pa 39,4 % (0 kil)
och 52,9 % (1 kil) for Sol. For GM lag det pa 65,2 % (0
kil) och 67,5 % (1 kil), for GL lag det pa 54,4 % (0 kil)
och 53,3 % (1 kil) och for TA lag det pa 53,7 % (0 kil)
och 61,6 % (1 kil). Se tabell B.1 i bilaga B.
Minimala vardet for muskelaktivitenten lag pa 13,9 %
(0 kil och 1 kil) for Sol och for GM lag det pa 34,1 %
(0 kil) och 30,4 % (1 kil). Minimum for GL lag pa 10,8
% (0 kil) och 14,2 % (1 kil), for TA lag det pa 14,8 % (0
kil) och 18,6 % (1 kil). Se tabell B.2 i bilaga B.
Skillnaden pa medelmuskelaktivitet mellan DB 0 kil och
DB 1 kil var +2,5 % for Sol, -2,3 % for GM, -2,1 % for
GL och +2,1 % for TA (se figur 4.2).
Figur 4.2. Medelvarden for muskelaktiviteten med
ortosen DB.
Maximala vardet for muskelaktiviteten med ROM lag
pa 28,1 % (10 PF), 57,5 % (30 PF) och 68,3 % (10 DF)
for Sol. For GM lag det pa 58,0 % (10 PF), 41,9 % (30
7
PF) och 55,0 % (10 DF), for GL lag det pa 74,4% (10
PF), 56,4 % (30 PF) och 66,9 % (10 DF) och for TA lag
det pa 106,5 % (10 PF), 96,8 % (30 PF) och 93,4 % (10
DF)(se tabell B.1).
Minimala vardet for muskelaktivitenten lag pa 15,7 %
(10 PF), 14,7 % (30 PF) och 18,1 % (10 DF) for Sol och
for GM lag det pa 37,3 % (10 PF), 20,0 % (30 PF) och
19,6 % (10 DF). Minimum for GL lag pa 24,4 % (10
PF), 15,4 % (30 PF) och 9,2 % (10 DF), for TA lag det
pa 22,6 % (10 PF), 30,3 % (30 PF) och 39,4 % (10 DF)
(se tabell B.2).
Skillnaden pa medelmuskelaktivitet fran 10 PF till 30
PF och fran 10 PF till 10 DF for ROM var +6 % och
+12,2 %for Sol. For GM var det -17,8 % och -11,5 %,
for GL var det -7,3 % och -8,6 %. For TA var det -2,7 %
och -3,7 % (se figur 4.4).
Maximala vardet for muskelaktiviteten med AW lag pa
64,4 % (0 kil), 21,7 % (2 kil) och 27,5 % (3 kil) for SOL.
For GM lag det pa 66,7 % (0 kil), 62,7 % (2 kil) och
63,6 % (3 kil), for GL lag det pa 33,2 % (0 kil), 32,2 %
(2 kil) och 21,0 % (3 kil) och for TA lag det pa 109,6 %
(0 kil), 82,6 % (2 kil) och 117,2 % (3 kil)(se tabell B.1).
Minimala vardet for muskelaktivitenten lag pa 12,1 % (0
kil), 9,6 % (2 kil) och 10,3 % (3 kil) for Sol och for GM
lag det pa 32,4 % (0 kil), 17,3 % (2 kil) och 18,8 % (3
kil). Minimum for GL lag pa 8,0 % (0 kil), 8,1 % (2 kil)
och 7,2 % (3 kil), for TA lag det pa 31,1 % (0 kil), 31,3
% (2 kil) och 25,7 % (3 kil). Se tabell B.2.
Skillnaden pa medelmuskelaktiviteten fran 0 kil till 2 kil
och fran 0 kil till 3 kil for AW var -13,7 % och -13,5 %
for Sol. For GM var det -12,0 % och -13,0 %, for GL var
det -4,1 % och -5,7 %. For TA var det -2,4 % och +3,8
% (se figur 4.5).
I figur 4.6 ar samtliga ortoser och barfotamatningarnas
data samlade i samma diagram for att gora det enklare
att jamfora.
Figur 4.4.Medelvarden for muskelaktiviteten med
ortosen ROM.
Figur 4.5. Medelvarden for muskelaktiviteten med
ortosen AW.
8
Figur 4.6. Figur over alla forsoks medelaktivitet samlat i ett diagram.
For Sol-muskeln var konfidensintervallen enligt foljande:
BF 27,3-39,3 %, DB 24,0-28,9 %, ROM 18,5-32,3 % och
for AW 11,9-29,7 % (se figur 4.7).
Figur 4.7 Diagram over konfidensintervall pa varje
ortos och dess installningar for soleus muskeln.
GM-muskeln hade konfidensintervallen: BF 54,6-64,1 %,
DB 45,2-49,5 %, ROM 28,4-48,8 % och for AW 29,3-45,8
% (se figur 4.8).
Figur 4.8 Motsvarande figur 4.7 men for GM.
GL-muskeln hade konfidensintervallen: BF 26,9-29,3 %,
DB 24,1-28,4 %, ROM 26,7-37,1 % och for AW 13,8-20,5
% (se figur 4.9).
Figur 4.9 Motsvarande figur 4.7 men for GL.
TA-muskeln hade konfidensintervallen: BF 38,2-43,7 %,
DB 33,7-37,9 %, ROM 60,1-64,4 % och for AW 49,7-56,8
% (se figur 4.10).
Figur 4.10 Motsvarande 4.7 men for TA.
9
I foljande tabell och figurer visas samma resultat som
ovan men med en forsokpersons bidrag till TA-muskeln
borttagen.
Tabell 4.2. Tabell over skillnaden i TA-muskelns
medelvarde innan och efter forsokpersonens
TA-matningarna rensats bort.
Ortos Innan Efter
ROM 10pf 64.4 % 57.4 %
ROM 30pf 61.7 % 61.7 %
ROM 10df 60.7 % 56.4 %
AW 0kil 52.8 % 47.9 %
AW 2kil 50.4 % 44.7 %
AW 3kil 56.6 % 45.7 %
Figur 4.11. Motsvarande diagram till det i figur 4.4
men utan en forsokspersons TA-bidrag.
Figur 4.12. Ovan ar motsvarande diagram men i
detta fall till det i figur 4.5.
10
5. Diskussion
I figur 4.6 som aterfinns i resultat sa har alla
medelvarden sammanstallts i ett och samma diagram.
I figur 4.7 visas de beraknade konfidensintervallen for
Sol och da samtliga intervall overlappar de andra sa kan
man statistiskt inte sarskilja ortosernas resultat fran
varandra.
Eftersom det inte gick att jamfora de olika ortoserna mot
varandra pa ett bra satt utifran de initiala resultaten sa
beraknades for varje muskel ett konfidensintervall for
varje ortos och dess installningar. Detta ligger da som
grund till en jamforelse muskel for muskel.
Vidare visar figur 4.8 konfidensintervallen for GM och
det som kan utronas fran dessa intervall ar att
BF-matningarnas intervall inte overlappar ovriga tre,
darfor ar differensen tillracklig for att saga att
barfotagang ger hogre muskelaktivitet i GM an nagon av
ortoserna. De tre olika utformningarna pa ortos skiljer
sig inte tillrackligt for att uttala sig om skillnad mellan
dessa.
Figur 4.9 visar att for GL sa overlappar AW-ortosens
intervall inte de andra tre och kan sagas ha lagre
muskelaktivitet overlag an de andra tva ortoserna samt
barfotagang. Aven har overlappar ovriga tre matningars
konfidensintervall varandra och har darfor inte
signifikant differens.
Till sist sa visar figur 4.10 att DB-ortosen har lagst
muskelaktivitet foljt av barfotagang och sedan
AW-ortosen och hogst aktivitet har ROM-ortosen, har
overlappar inga av konfidensintervallen.
Det tidigare forskning pekat pa verkar stamma i stora
drag, att okad PF leder till lagre aktivitet i TS
(atminstone tva av tre muskler i alla matningar har
sankts med okande PF, fler kilar leder till okad PF). Se
tabell B.1.
Det ska tillaggas att for resultaten i tabell B.1 har inte
alla installningar bidrag fran samtliga atta
forsokspersoner med i berakningen. BF 3k, ROM 10PF,
ROM 30PF och ROM 10DF har alla endast bidrag fran
sju personer. Anledningen ar att samtliga har haft
nagon forsoksperson dar tio bra steg inte kunnat valjas,
valet foll pa att enbart berakna medelvardet over sju
personer stallt mot alternativet att genomfora dessa
urval manuellt. DB 0 kil har endast sju personers bidrag
for TA-muskeln da en forsoksperson hade ett TA-varde
pa 226.4 % vilket ansags var tillrackligt avvikande fran
ovriga varden for att motivera att den inte skulle tas
med i medelvardesberakningen.
Initialt amnade projektet att ha MVC-matningar som
referens for att uttrycka all data i procent av MVC men
under testkorningar av skriptet med dessa matningar
som referens upptacktes det att manga matningar kom
over 100 % av MVC , vissa sa hogt som 200-600 %.
Eftersom MVC ska vara ett matt pa den maximala
muskelaktiviteten som forsokpersonen viljemassigt kan
uppbringa sa vackte detta oro.
Det kan vara svart for personer som inte ar vana att
gora ovningar dar muskeln far arbeta sa pass intensivt,
ar det svart att fa ett rattvist MVC-varde. En
diskussion med handledaren resulterade i insikten att
ovningarna som forsokspersonerna gjort for att fa ut
MVC-varden inte var tillrackligt kravande for att
forsokspersonerna skulle fa ut ett bra MVC-varde.
Med denna insikt kan det ifragasattas om MVC ger ett
rattvist resultat och darmed har istallet matningar
utforda barfota i 10 km/h anvants som
referensmatningar.
Da det ar ett vedertaget alternativ till MVC att anvanda
ett maxvarde som uppmatts under matningarna, i detta
projekt skedde detta under 10 km/h matningarna. Det
ar ett rimligt alternativ da man anvander en aktivitet
som for de flesta forsokspersonerna star i konstant
relation till den aktivitet man vill undersoka.
Det ovannamnda tillsammans med faktumet att
forsokspersonerna inte kan annat an att anvanda
musklerna sa mycket som kravs for att springa 10 km/h
under dessa matningar sa ansags detta var en bra
matning att anvanda som referens till ovriga matningar.
11
Figur 4.4 samt figur 4.5 visar att aktiviteten i TA ar
markbart hogre an hos resten av musklerna, detta kan
vara fallet for dessa ortoser. Daremot kan detta ocksa
bero pa att en forsoksperson hade markbart mycket
hogre aktivitet i TA an resterande (se tabell 2 med
maximumaktivitet).
Den forsoksperson vars TA-aktivitet stack ut lag pa over
90 % for samtliga forsok med ROM- och AW-ortoserna,
detta kan vara en orsak till att vardena har blivit sapass
mycket hogre. Det verkar som att denne forsokpersons
TA-bidrag kan vara paverkade av nagon slags storning.
For att se hur mycket den enskilde forsokpersonens
matvarden paverkade resultatet gjordes en berakning
utan denna forsokspersons bidrag for ROM- och
AW-ortoserna vilket resulterade i tva diagram(se figur
4.11 och 4.12).
Resultaten med det alternativa datasetet visar pa en
tydlig sankning i AW-diagrammet(se figur 4.12) och en
viss skillnad for ROM(se figur 4.11). Tabell 4.2 ovan
visar forandringen av resultaten. Om dessa resultat
anvants for konfidensintervall berakning sa ar det
mycket mojligt att storre overlapp hade skett. Eftersom
det inte finns nagot konkret bevis pa att dessa
matningar utsatts for storningar ansags det lampligt att
stanna vid detta som diskussionspunkt och inte anvanda
dessa resultat for att dra nagra slutsatser.
En annan diskussionspunkt i detta projekt ar koden.
Det finns ett moment i analysen dar koden tenderar att
vara opalitlig. Osakerheten kommer in i det steg dar
koden automatiskt ska identifiera var stegen borjar
utifran FT-matningarna, faktumet att varje
forsoksperson och varje installning ger stora skillnader i
hur filerna ser ut sa ar det svart att fa en automatiserad
kod som gor ratt i alla tankbara fall.
For att ta bort osakerheten med den automatiserade
identifieringen sa tillats anvandaren grafiskt se hur
stegen ar identifierade och sen utifran den informationen
valja ut steg dar start- och sluttid var korrekt
identifierad av koden.
I ett fatal fall har skriptet inte identifierat tillrackligt
med steg for att genomfora analys pa det relaterade
forsoket (tio steg anvandes i analysen). I de fall da
tillrackligt med steg inte identifierats finns det tva
alternativ. Alternativ ett skulle vara att genomfora
analysen manuellt och alternativ tva att forsoka
modifiera parametrarna for identifiering av steg sa att
det blir bra for just det forsoket.
Under analysen av data blev det uppenbart att valen av
steg hade en relativt stor paverkan pa resultaten. Detta
sker da vi ser pa den maximala punkten under ett steg.
Tva stegs maxpunkt kan skilja sig ganska mycket mellan
varandra och eftersom det ar anvandaren som manuellt
valjer steg sa paverkar dessa val resultatet.
I och med att atta forsokspersoner valdes ut kan det
antas att det skedde en utjamning av antalet ”for stora”
steg och antalet ”for sma” steg. En positiv synpunkt i
detta ar att undertecknade utforare inte hade
forvantningar pa hur resultaten bor se ut nar stegen
valdes och har darfor inte medvetet valt steg som ger ett
visst resultat, stegen som valts bort ar endast sadana
som har uppenbara storningar i sin data.
En av utmaningarna i studien var utvecklingen av det
automatiserade skriptet da olika forsoksdata hade
markant skillnad i utseende. Rekommendation for
framtida studier ar att utveckla skriptet genom t.ex. fler
bivillkor for att oka antalet steg som valjs korrekt.
Det anvandarstyrda valet av steg kompenserar till viss
del for skriptets begransningar. Begransningarna ledde
till att det i ett fatal forsok inte gick att identifiera tio
steg.
De punkter som diskuterats har kan senare granskas
vidare i den bredare studien dar aven ultraljud pa
halsenan kommer undersokas for att ytterligare
utvardera de tre olika ortoserna.
12
6. Slutsats
Slutsatsen som kan dras muskel for muskel ar att for Sol
finns inte signifikant differens for att skilja de olika
ortoserna at. Ortoserna kunde inte heller sarskiljas fran
barfotagang.
For GM kunde barfotagang sarskiljas fran alla ortoser
som den matning med hogst aktivitet. Differensen
mellan ortoserna inte var tillracklig for vidare slutsatser.
Resultaten for GL ledde till slutsatsen att AW kunde
sarskiljas som den med lagst aktivitet. Ovriga tre
konfidensintervall overlappade och kunde darfor inte
sarskiljas.
Till sist sa var slutsatsen for TA att samtliga ortoser
samt barfotagang kunde skiljas at da inget av
konfidensintervallen overlappade med nagon av de
andra. Dar ROM hade hogst aktivitet, sedan kom AW
och BF i den ordningen och lagst hade DB.
13
7. Kallforteckning
1. Nilsson Helander K, Olsson N, Eriksson BI, Karlsson
J. Individualiserad behandling viktig vid akut
halseneruptur. Lakartidningen [Internet].
2014;111:CXWT(Lakartidningen.
2014;111:CXWT).[cited 2017 Apr 18]. Available from:
http://www.lakartidningen.se/Klinik-och-
vetenskap/Klinisk-oversikt/2014/09/Individualiserad-
behandling-viktig-vid-akut-halseneruptur/
2. Huttunen TT, Kannus P, Rolf C, Fellander-Tsai L,
Mattila VM. Acute Achilles Tendon Ruptures. Am J
Sports Med [Internet].[cited 2017 Apr 21]. SAGE
Publications; 2014 Jul 23;42(10):2419–23. Available
from: http://dx.doi.org/10.1177/0363546514540599
3. Moller M, Olsson N. Halseneruptur, akut (AHR)
[Internet]. Internetmedicin. [cited 2017 Apr 19].
Available from:
http://www.internetmedicin.se/page.aspx?id=843
4. Akizuki KH, Gartman EJ, Nisonson B, Ben-Avi S,
McHugh MP. The relative stress on the Achilles tendon
during ambulation in an ankle immobiliser: implications
for rehabilitation after Achilles tendon repair. Br J
Sports Med [Internet]. 2001 Oct 1;35(5):329
LP-333.[cited 2017 Apr 17]. Available from:
http://bjsm.bmj.com/content/35/5/329.abstract
5. Kearney RS, Parsons N, Underwood M, Costa ML.
Achilles tendon rupture rehabilitation: a mixed methods
investigation of current practice among orthopaedic
surgeons in the United Kingdom. Bone Joint Res
[Internet]. British Editorial Society of Bone and Joint
Surgery;
2015 Apr 1;4(4):65–9.[cited 2017 Apr 19]. Available from:
http://www.ncbi.nlm.nih.gov/pmc/articles/PMC4448123/
6. Standardization IO for. ISO 8549-1:1989. Prosthetics
and orthotics - Vocabulary - Part 1: General terms for
external limb prostheses and external orthoses. Geneva
Switzerland: International Organization for
Standardization; 1989.
7. Robert J. Stone JAS. Atlas of Skeletal Muscles
[Internet]. 6th ed. McGraw-Hill. McGraw-
Hill Publishing; 2008.[cited 2017 Apr 17]. Available from:
https://mustafaqamar.files.wordpress.com/2015/01/atlas-
of-skeletal-muscles-6th-edition.pdf
8. Konrad P. The ABC of EMG [Internet]. 1.4.
Scottsdale: Noracon INC USA.; 2006. 1-61 p.[cited 2017
Apr 19]. Available from:
http://www.noraxon.com/docs/education/abc-of-
emg.pdf
9. Gronlund C. Spatio-temporal processing of surface
electromyographic signals [Internet]. Biomedical
Engineering. Umea universitet; 2006. 11 p.[cited 2017
Apr 21]. Available from: https://www.diva-
portal.org/smash/get/diva2:145189/FULLTEXT01.pdf
10. Al-Qaisi S, Aghazadeh F. Electromyography
Analysis: Comparison of Maximum Voluntary
Contraction Methods for Anterior Deltoid and Trapezius
Muscles. Procedia Manuf [Internet].
2015;3:4578–83.[cited 2017 Apr 20]. Available from:
http://www.sciencedirect.com/science/article/pii/
S235197891500476X
11. Lee KH, Matteliano A, Medige J, Smiehorowski T.
Electromyographic changes of leg muscles with heel lift:
therapeutic implications. Arch Phys Med Rehabil.
United States; 1987 May;68(5 Pt 1):298–301.
12. Froberg A, Komi P, Ishikawa M, Movin T, Arndt
A. Force in the Achilles Tendon During Walking With
Ankle Foot Orthosis. Am J Sports Med [Internet].
SAGE Publications; 2009 Feb 19;37(6):1200–7.[cited
2017 Apr 18]. Available from:
http://journals.sagepub.com/doi/abs/10.1177/0363546508330126
14
Figur A.5. EMG-elektrodernas placering.
Figur A.6. Ultraljudsproben (vanster) och Goniometern (hoger) pa plats.
3
Bilaga B. Tabeller
Tabell B.1. Maximumaktiviteten over de atta forsokspersonerna.
Ortos Sol GM GL TA
BF 2 k 46,3 % 87,7 % 48,6 % 61,2 %
BF 3k 58,6 % 70,5 % 40,5 % 53,8%
DB 0kil 39,4 % 65,2 % 54,4 % 53,7 %
DB 1kil 52,9 % 67,5 % 53,3 % 61,6 %
ROM 10pf 28,1 % 58,0 % 74,4 % 106,5 %
ROM 30pf 57,5 % 41,9 % 56,4 % 96,8 %
ROM 10df 68,3 % 55,0 % 66,9 % 93,4 %
AW 0kil 64,4 % 66,7 % 33,2 % 109,6 %
AW 2kil 21,7 % 62,7 % 32,2 % 82,6 %
AW 3kil 27,5 % 63,6 % 21,0 % 117,2 %
1
Tabell B.2. Minimumaktiviteten over de atta forsokspersonerna.
Ortos Sol GM GL TA
BF 2 k 22,2 % 35,9 % 17,5 % 18,3 %
BF 3k 24,9 % 39,4 % 20,1 % 20,1 %
DB 0kil 13,9 % 34,1 % 10,8 % 14,8 %
DB 1kil 13,9 % 30,4 % 14,2 % 18,6 %
ROM 10pf 15,7 % 37,3 % 24,4 % 22,6 %
ROM 30pf 14,7 % 20,0 % 15,4 % 30,3 %
ROM 10df 18,1 % 19,6 % 9,2 % 39,4 %
AW 0kil 12,1 % 32,4 % 8,0 % 31,3 %
AW 2kil 9,6 % 17,3 % 8,1 % 31,3 %
AW 3kil 10,3 % 18,8 % 7,2 % 25,7 %
2
Bilaga C. Matlabskript
KexMain2
clear
clc
Heel=zeros(3,20);
warning(’off’,’all’);
addpath(genpath(’Data’));
cont=true;
FT4,Heeltime1,FT5,Heeltime2,FT6,Heeltime3,steps,steps2,steps3,K101,K102,K103,Toetimesol1,Toetimegm1,Toetimegl1,
Toetimegm2,Toetimegl2,Toetimeta2,Heeltimesol2, Heeltimegm2,
Heeltimegl2,Heeltimeta2,Toetimesol3,Toetimegm3,Toetimegl3,Toetimeta3,Heeltimesol3, Heeltimegm3,
Heeltimegl3,Heeltimeta3,startpoint1,endpoint1,startpoint2,endpoint2,startpoint3,endpoint3= load10K();
goodsteps2= step-
choose(steps,FT4,Heeltime1,Heeltimesol1,Heeltimegm1,Heeltimegl1,Heeltimeta1,K101.data(startpoint1:endpoint1,5),
K101.data(startpoint1:endpoint1,7),K101.data(startpoint1:endpoint1,6),K101.data(startpoint1:endpoint1,8));
goodsteps3= step-
choose(steps2,FT5,Heeltime2,Heeltimesol2,Heeltimegm2,Heeltimegl2,Heeltimeta2,K102.data(startpoint2:endpoint2,5),
K102.data(startpoint2:endpoint2,7),K102.data(startpoint2:endpoint2,6),K102.data(startpoint2:endpoint2,8));
goodsteps4= step-
choose(steps3,FT6,Heeltime3,Heeltimesol3,Heeltimegm3,Heeltimegl3,Heeltimeta3,K103.data(startpoint3:endpoint3,5),
K103.data(startpoint3:endpoint3,7),K103.data(startpoint3:endpoint3,6),K103.data(startpoint3:endpoint3,8));
sol10kdone,gm10kdone,gl10kdone,ta10kdone = calc10K(goodsteps2,goodsteps3,goodsteps4);
goodstepsdone=[];
%————————————————————————————-
p=1;
pp=1;
for k=1:3 [filename,pathname,filterindex]=uigetfile(’*.txt’,’Choose EMG’);
filename2,pathname2,filterindex2=uigetfile(’*.asc’,’Chose pressure’);
EMG=importdata(filename);
FT=importdata(filename2);
x1=FT.data(2:end,100:193);
jump=100;
tresh=20;
type=6;
pre=0.10;
FT2,Heeltime,Toetime= FTfix(x1,jump,tresh,type,pre);
startpoint,endpoint=timefix(EMG);
EMGsol=EMG.data(startpoint:endpoint,5);
EMGgm=EMG.data(startpoint:endpoint,7);
EMGgl=EMG.data(startpoint:endpoint,6);
1
EMGta=EMG.data(startpoint:endpoint,8);
[EMGcentsol,EMGabssol,EMGrmssol]=EMGfix(EMGsol);
Gcentgm,EMGabsgm,EMGrmsgm=EMGfix(EMGgm);
Gcentgl,EMGabsgl,EMGrmsgl=EMGfix(EMGgl);
Gcentta,EMGabsta,EMGrmsta=EMGfix(EMGta);
[solcomp,gmcomp,glcomp,tacomp] =
compare10K(EMGrmssol,EMGrmsgm,EMGrmsgl,EMGrmsta,sol10kdone,gm10kdone,gl10kdone,ta10kdone );
%————————————————————-
[steps,Toetimesol,Toetimegm,Toetimegl,Toetimeta,Heeltimesol, Heeltimegm, Heeltimegl,Heeltimeta] =EMGsteps(
Heeltime,Toetime,FT2,solcomp,gmcomp,glcomp,tacomp);
[goodsteps,Selection] =
stepchoose(steps,FT2,Heeltime,Heeltimesol,Heeltimegm,Heeltimegl,Heeltimeta,EMGsol,EMGgm,EMGgl,EMGta);
valdasteg=[’Steps selected for ’,num2str(k),’ are: ’,num2str(Selection)];
disp(filename);
disp(filename2);
disp(’———————————————–’);
disp(valdasteg);
disp(’———————————————–’);
for l=1:length(goodsteps) goodstepsdone(1,p).data=goodsteps(l);
p=p+1;
end % lagger in data fran musklerna for varje steg i en strukt % stepinfodone. for l=1:numel(goodsteps) ll=1;
while ll¡=(numel(goodsteps(l).sol))
stepinf(1,ll)=goodsteps(l).sol(ll);
stepinf(2,ll)=goodsteps(l).gm(ll);
stepinf(3,ll)=goodsteps(l).gl(ll);
stepinf(4,ll)=goodsteps(l).ta(ll);
ll=ll+1;
end stepinfodone(1,pp).info=stepinf;
pp=pp+1;
end
check=true;
n=1;
check2=true;
while check==true if n¿=length(Toetime) check=false;
end Toetimesec(n)=(Toetime(n)/100);
n=n+1;
end n=1;
while check2==true if n¿=length(Heeltime) check2=false;
end Heeltimesec(n)=(Heeltime(n)/100);
n=n+1;
end for kk=1:length(Heeltimesec);
Heel(k,kk)=Heeltimesec(kk);
end disp(Heeltimesec);
disp(’———————————————–’);
end [soldone,gmdone,gldone,tadone,indsol,indgm,indgl,indta ] =EMGcalc(goodstepsdone);
figure(1) xlabel(’Time’);
ylabel(’mV’);
2
plot(EMGsol);
figure(2) xlabel(’Time’);
ylabel(’mV’);
plot(EMGcentsol);
figure(3) subplot(2,1,1);
plot(EMGabssol);
xlabel(’Time’);
ylabel(’mV’);
title(’Rectified’);
subplot(2,1,2);
plot(EMGrmssol);
xlabel(’Time’);
ylabel(’mV’);
title(’Smoothed’);
for i=1:numel(Toetime) figure(4);
subplot(4,1,1);
hold all;
plot(solcomp,’b’);
plot([Toetimesol(i),Toetimesol(i)],[min(solcomp),max(solcomp)],’r’);
title(’Sol’);
xlabel(’Time’);
ylabel(’% of 10 km/h’);
subplot(4,1,2);
hold all;
plot(gmcomp,’b’);
plot([Toetimegm(i),Toetimegm(i)],[min(gmcomp),max(gmcomp)],’r’);
title(’GM’);
xlabel(’Time’);
ylabel(’% of 10 km/h’);
subplot(4,1,3);
hold all;
plot(glcomp,’b’);
plot([Toetimegl(i),Toetimegl(i)],[min(glcomp),max(glcomp)],’r’);
title(’GL’);
xlabel(’Time’);
ylabel(’% of 10 km/h’);
subplot(4,1,4);
hold all;
plot(tacomp,’b’);
plot([Toetimeta(i),Toetimeta(i)],[min(tacomp),max(tacomp)],’r’);
title(’TA’);
xlabel(’Time’);
ylabel(’% of 10 km/h’);
end
a=1;
b=0;
for kk=1:numel(goodstepsdone) peaksindSol(kk)=indsol(kk)+b;
3
peaksindGm(kk)=indgm(kk)+b;
peaksindGl(kk)=indgl(kk)+b;
peaksindTa(kk)=indta(kk)+b;
for kkk=1:numel(goodstepsdone(kk).data.sol) stepswithpeaksSol(a)=goodstepsdone(kk).data.sol(kkk);
stepswithpeaksGm(a)=goodstepsdone(kk).data.gm(kkk);
stepswithpeaksGl(a)=goodstepsdone(kk).data.gl(kkk);
stepswithpeaksTa(a)=goodstepsdone(kk).data.ta(kkk);
a=a+1;
b=b+1;
end
end for k=1:numel(goodstepsdone) figure(5);
subplot(4,1,1);
hold all;
plot(stepswithpeaksSol,’b’);
plot([peaksindSol(k),peaksindSol(k)],[0,1],’k’);
title(’Sol’);
xlabel(’Time’);
ylabel(’% of 10 km/h’);
subplot(4,1,2);
hold all;
plot(stepswithpeaksGm,’b’);
plot([peaksindGm(k),peaksindGm(k)],[0,1],’k’);
title(’Gm’);
xlabel(’Time’);
ylabel(’% of 10 km/h’);
subplot(4,1,3);
hold all;
plot(stepswithpeaksGl,’b’);
plot([peaksindGl(k),peaksindGl(k)],[0,1],’k’);
title(’Gl’);
xlabel(’Time’);
ylabel(’% of 10 km/h’);
subplot(4,1,4);
hold all;
plot(stepswithpeaksTa,’b’);
plot([peaksindTa(k),peaksindTa(k)],[0,1],’k’);
title(’Ta’);
xlabel(’Time’);
ylabel(’% of 10 km/h’);
end
muskelaktivitet=[soldone,gmdone,gldone,tadone];
str=[’ Sol:’, num2str(soldone), ’, GM:’, num2str(gmdone), ’, GL:’ num2str(gldone), ’, TA:’,num2str(tadone)];
str2=[filename , ’ and ’ , filename2];
h = msgbox(str,str2);
set(h, ’position’, [100 440 600 100]) ah = get( h, ’CurrentAxes’ );
ch = get( ah, ’Children’ );
set( ch, ’FontSize’, 20 );
4
uiwait(h);
close all;
%—————————————–
function
[FT4,Heeltime1,FT5,Heeltime2,FT6,Heeltime3,steps,steps2,steps3,K101,K102,K103,Toetimesol,Toetimegm,Toetimegl,Toetimeta,Heeltimesol,
Heeltimegm, Heeltimegl,Heeltimeta,Toetimesol2,Toetimegm2,Toetimegl2,Toetimeta2,Heeltimesol2,
Heeltimegm2,
Heeltimegl2,Heeltimeta2,Toetimesol3,Toetimegm3,Toetimegl3,Toetimeta3,Heeltimesol3,
Heeltimegm3,
Heeltimegl3,Heeltimeta3,startpoint,endpoint,startpoint2,endpoint2,startpoint3,endpoint3] =
load10K()
%laddar in filerna
filename3,pathname3,filterindex3=uigetfile(’*.txt’,’Choose 10K 1’);
filename6,pathname6,filterindex6=uigetfile(’*.asc’,’Chose pressure 1’);
filename4,pathname4,filterindex4=uigetfile(’*.txt’,’Choose 10K 2’);
filename7,pathname7,filterindex7=uigetfile(’*.asc’,’Chose pressure 2 ’);
filename5,pathname5,filterindex5=uigetfile(’*.txt’,’Choose 10K 3’);
filename8,pathname8,filterindex8=uigetfile(’*.asc’,’Chose pressure 3’);
K101=importdata(filename3);
K102=importdata(filename4);
K103=importdata(filename5);
FT=importdata(filename6);
FT2=importdata(filename7);
FT3=importdata(filename8);
x1=FT.data(2:end,100:193);
%Tar ut data for hoger sula. x2=FT2.data(2:end,100:193);
x3=FT3.data(2:end,100:193);
jump=35;
% hur manga punkter den hoppar innan den letar efter nasta lutning tresh=40;
% type=4;
pre=0.05;
FT4,Heeltime1,Toetime1= FTfix(x1,jump,tresh,type,pre);
FT5,Heeltime2,Toetime2= FTfix(x2,jump,tresh,type,pre);
FT6,Heeltime3,Toetime3= FTfix(x3,jump,tresh,type,pre);
startpoint,endpoint=timefix(K101);
startpoint2,endpoint2=timefix(K102);
startpoint3,endpoint3=timefix(K103);
Gcentsol1,EMGabssol1,EMGrmssol1=EMGfix(K101.data(startpoint:endpoint,5));
Gcentsol2,EMGabssol2,EMGrmssol2=EMGfix(K102.data(startpoint2:endpoint2,5));
Gcentsol3,EMGabssol3,EMGrmssol3=EMGfix(K103.data(startpoint3:endpoint3,5));
GcentGM1,EMGabsGM1,EMGrmsGM1=EMGfix(K101.data(startpoint:endpoint,7));
GcentGM2,EMGabsGM2,EMGrmsGM2=EMGfix(K102.data(startpoint2:endpoint2,7));
GcentGM3,EMGabsGM3,EMGrmsGM3=EMGfix(K103.data(startpoint3:endpoint3,7));
GcentGL1,EMGabsGL1,EMGrmsGL1=EMGfix(K101.data(startpoint:endpoint,6));
GcentGL2,EMGabsGL2,EMGrmsGL2=EMGfix(K102.data(startpoint2:endpoint2,6));
GcentGL3,EMGabsGL3,EMGrmsGL3=EMGfix(K103.data(startpoint3:endpoint3,6));
GcentTA1,EMGabsTA1,EMGrmsTA1=EMGfix(K101.data(startpoint:endpoint,8));
5
GcentTA2,EMGabsTA2,EMGrmsTA2=EMGfix(K102.data(startpoint2:endpoint2,8));
GcentTA3,EMGabsTA3,EMGrmsTA3=EMGfix(K103.data(startpoint3:endpoint3,8));
[steps,Toetimesol,Toetimegm,Toetimegl,Toetimeta,Heeltimesol, Heeltimegm, Heeltimegl,Heeltimeta]=EMGsteps(
Heeltime1,Toetime1,FT4,EMGrmssol1,EMGrmsGM1,EMGrmsGL1,EMGrmsTA1);
steps2,Toetimesol2,Toetimegm2,Toetimegl2,Toetimeta2,Heeltimesol2, Heeltimegm2,
Heeltimegl2,Heeltimeta2=EMGsteps(
Heeltime2,Toetime2,FT5,EMGrmssol2,EMGrmsGM2,EMGrmsGL2,EMGrmsTA2);
steps3,Toetimesol3,Toetimegm3,Toetimegl3,Toetimeta3,Heeltimesol3, Heeltimegm3,
Heeltimegl3,Heeltimeta3=EMGsteps(
Heeltime3,Toetime3,FT6,EMGrmssol3,EMGrmsGM3,EMGrmsGL3,EMGrmsTA3);
end
function [goodsteps,Selection] = step-
choose(steps,x,Heeltime,Heeltimesol,Heeltimegm,Heeltimegl,Heeltimeta,EMGsol,EMGgm,EMGgl,EMGta)
% plotar grafer sa man kan valja vilka steg som gar att anvanda.
for i=1:numel(Heeltimesol) figure(5);
set(figure(5),’Position’, [0,200,600,600]);
subplot(4,1,1);
hold all;
plot(EMGsol,’b’);
plot([Heeltimesol(i),Heeltimesol(i)],[min(EMGsol),max(EMGsol)],’r’);
title(’Sol’);
xlabel(’Time’);
ylabel(’mV’);
subplot(4,1,2);
hold all;
plot(EMGgm,’b’);
plot([Heeltimegm(i),Heeltimegm(i)],[min(EMGgm),max(EMGgm)],’r’);
title(’GM’);
xlabel(’Time’);
ylabel(’mV’);
subplot(4,1,3);
hold all;
plot(EMGgl,’b’);
plot([Heeltimegl(i),Heeltimegl(i)],[min(EMGgl),max(EMGgl)],’r’);
title(’GL’);
xlabel(’Time’);
ylabel(’mV’);
subplot(4,1,4);
hold all;
plot(EMGta,’b’);
plot([Heeltimeta(i),Heeltimeta(i)],[min(EMGta),max(EMGta)],’r’);
title(’TA’);
xlabel(’Time’);
ylabel(’mV’);
end
for i=1:length(Heeltime)
6
figure(8);
hold all;
set(figure(8),’Position’, [600,100,600,600]);
plot(x,’b’) plot([Heeltime(i),Heeltime(i)],[0,max(x)+10],’r’);
title(’Steps for 10 km/h’);
xlabel(’Time’);
ylabel(’Pressure’);
end for k=1:(length(Heeltimesol)-1);
str(k)=[’Step ’, num2str(k)];
end [Selection,ok] = listdlg(’ListString’,str);
if ok==1
close all;
else uiwait(figure(5));
uiwait(figure(8));
end
lm=1;
% lagger in de valda stegen i goodsteps
for kk=1:length(Selection) goodsteps(kk)=steps(Selection(kk));
end kk=1;
end
function [ sol10kdone,gm10kdone,gl10kdone,ta10kdone ] = calc10K(steps,steps2,steps3 ) re
%Dessa tre forloopar ger ut maxvardet och dess indexvarde fran de valda %stegen. for i=1:length(steps)
[sol10k1(i),indsol(i)]=max(steps(i).sol);
gm10k1(i),indgm(i)=max(steps(i).gm);
gl10k1(i),indgl(i)=max(steps(i).gl);
ta10k1(i),indta(i)=max(steps(i).ta);
end for i=1:length(steps2) [sol10k2(i),indsol2(i)]=max(steps2(i).sol);
gm10k2(i),indgm2(i)=max(steps2(i).gm);
gl10k2(i),indgl2(i)=max(steps2(i).gl);
ta10k2(i),indta2(i)=max(steps2(i).ta);
end for i=1:length(steps3) [sol10k3(i),indsol3(i)]=max(steps3(i).sol);
gm10k3(i),indgm3(i)=max(steps3(i).gm);
gl10k3(i),indgl3(i)=max(steps3(i).gl);
ta10k3(i),indta3(i)=max(steps3(i).ta);
end
% Dessa forloopar tar vardet fran 15 punkter innan maxvardet och 15 punkter %efter maxvardet och lagger dem i
en ny vektor. for k=1:length(steps) if indsol(k)¡15 p=-indsol(k)+1;
else p=-15;
end if indsol(k)¿(length(steps(k).sol)-15) pp=(length(steps(k).sol)-indsol(k)-1);
else pp=15;
end for ii=p:pp
sol10k12(k)=steps(k).sol(indsol(k)+ii);
end end for k=1:length(steps) if indgm(k)¡15 p=-indgm(k)+1;
else p=-15;
7
end if indgm(k)¿(length(steps(k).gm)-15) pp=(length(steps(k).gm)-indgm(k)-1);
else pp=15;
end
for ii=p:pp gm10k12(k)=steps(k).gm(indgm(k)+ii);
end end
for k=1:length(steps) if indgl(k)¡15 p=-indgl(k)+1;
else p=-15;
end if indgl(k)¿(length(steps(k).gl)-15) pp=(length(steps(k).gl)-indgl(k)-1);
else pp=15;
end for ii=p:pp
gl10k12(k)=steps(k).gl(indgl(k)+ii);
end end for k=1:length(steps) if indta(k)¡15 p=-indta(k)+1;
else p=-15;
end if indta(k)¿(length(steps(k).ta)-15) pp=(length(steps(k).ta)-indta(k)-1);
else pp=15;
end for ii=p:pp
ta10k12(k)=steps(k).ta(indta(k)+ii);
end end
%————————————————
for k=1:length(steps2) if indsol2(k)¡15 p=-indsol2(k)+1;
else p=-15;
end if indsol2(k)¿(length(steps2(k).sol)-15) pp=(length(steps2(k).sol)-indsol2(k)-1);
else pp=15;
end for ii=p:pp
sol10k22(k)=steps2(k).sol(indsol2(k)+ii);
end end for k=1:length(steps2) if indgm2(k)¡15 p=-indgm2(k)+1;
else p=-15;
end if indgm2(k)¿(length(steps2(k).gm)-15) pp=(length(steps2(k).gm)-indgm2(k)-1);
else pp=15;
end
for ii=p:pp
gm10k22(k)=steps2(k).gm(indgm2(k)+ii);
end end
for k=1:length(steps2) if indgl2(k)¡15 p=-indgl2(k)+1;
else p=-15;
end if indgl2(k)¿(length(steps2(k).gl)-15) pp=(length(steps2(k).gl)-indgl2(k)-1);
else pp=15;
end for ii=p:pp
gl10k22(k)=steps2(k).gl(indgl2(k)+ii);
end end for k=1:length(steps2) if indta2(k)¡15 p=-indta2(k)+1;
else p=-15;
end if indta2(k)¿(length(steps2(k).ta)-15) pp=(length(steps2(k).ta)-indta2(k)-1);
else pp=15;
8
end for ii=p:pp
ta10k22(k)=steps2(k).ta(indta2(k)+ii);
end end
%————————————————
for k=1:length(steps3) if indsol3(k)¡15 p=-indsol3(k)+1;
else p=-15;
end if indsol3(k)¿(length(steps3(k).sol)-15) pp=(length(steps3(k).sol)-indsol3(k)-1);
else pp=15;
end for ii=p:pp
sol10k32(k)=steps3(k).sol(indsol3(k)+ii);
end end for k=1:length(steps3) if indgm3(k)¡15 p=-indgm3(k)+1;
else p=-15;
end if indgm3(k)¿(length(steps3(k).gm)-15) pp=(length(steps3(k).gm)-indgm3(k)-1);
else pp=15;
end
for ii=p:pp
gm10k32(k)=steps3(k).gm(indgm3(k)+ii);
end end
for k=1:length(steps3) if indgl3(k)¡15 p=-indgl3(k)+1;
else p=-15;
end if indgl3(k)¿(length(steps3(k).gl)-15) pp=(length(steps3(k).gl)-indgl3(k)-1);
else pp=15;
end for ii=p:pp
gl10k32(k)=steps3(k).gl(indgl3(k)+ii);
end end for k=1:length(steps3) if indta3(k)¡15 p=-indta3(k)+1;
else p=-15;
end if indta3(k)¿(length(steps3(k).ta)-15) pp=(length(steps3(k).ta)-indta3(k)-1);
else pp=15;
end for ii=p:pp
ta10k32(k)=steps3(k).ta(indta3(k)+ii);
end end
%Tar medelvardet av de nya vektorerna. sol10k13=mean(sol10k12);
gm10k13=mean(gm10k12);
gl10k13=mean(gl10k12);
ta10k13=mean(ta10k12);
sol10k23=mean(sol10k22);
gm10k23=mean(gm10k22);
gl10k23=mean(gl10k22);
ta10k23=mean(ta10k22);
sol10k33=mean(sol10k32);
gm10k33=mean(gm10k32);
gl10k33=mean(gl10k32);
ta10k33=mean(ta10k32);
9
%Tar medelvardet av alla enskilda muskeldata som tagits fram. sol10kdone=(sol10k13+sol10k23+sol10k33)/3;
gm10kdone=(gm10k13+gm10k23+gm10k33)/3;
gl10kdone=(gl10k13+gl10k23+gl10k33)/3;
ta10kdone=(ta10k13+ta10k23+ta10k33)/3;
end
function [x,Heeltime,Toetime] = FTfix(x1,jump,tresh,type,pre)
[rows,columns]=size(x1);
% Kollar hur manga trycksensorer i trycksulan som ar under tresh. for t=1:rows count=0;
for tt=1:columns if x1(t,tt)¡=tresh count=count+1;
end end % om det ar mer an 87 av de 99 trycksensorerna som ar under tresh sa % slas alla som ar over ner till 0. if
count¿=87 for tt=1:columns if x1(t,tt)¿tresh
x1(t,tt)=0;
end end end end
x=max(x1’);
n=1;
v=max(x)*pre;
i=9;
while i¡(length(x)-jump) k=0;
kk=0;
% Kollar om varderna runt punkten x(i) ar mindre fore och storre efter, % sa att man kan fa ut tiderna for nar ett
steg borjar. for ii=1:type
if (max(x)*.5¿x(i) x(i)¿v ((diff([x(i),x(i+ii)])¿0) (diff([x(i),x(i-ii)])¡0) ) ) k=k+1;
end
end % Ger bara ut tider da foregaende vilkor har uppfylts for varje punkt % (type ar hur manga punkter fore och
efter som den ska kolla). if k==type Heeltime(n)=i;
i=i+jump;
n=n+1;
else i=i+1;
end
end
p=1;
n=1;
i=50;
ii=0;
while i¡(length(x)-jump) k=0;
% Kollar om varderna runt punkten x(i) ar storre fore och mindre efter, % sa att man kan fa ut tiderna for nar
man lyfter foten. for ii=1:type if (max(x)*.5¿x(i) x(i)¿v ((diff([x(i),x(i+ii)])¡0) (diff([x(i),x(i-ii)])¿0) ) ) k=k+1;
end
end % Ger bara ut tider da foregaende vilkor har uppfylts for varje punkt % (type ar hur manga punkter fore och
efter som den ska kolla). if k==type Toetime(n)=i;
i=i+jump;
n=n+1;
else i=i+1;
10
end
end
end
function [startpoint,endpoint] = timefix(EMG)
% Fixar till sa att FT-data och EMG data ar synkade. trigped=EMG.data(2:end,9);
time=EMG.data(2:end,1);
for i=2:1:numel(trigped)
if trigped(i)-trigped(i-1)¿=0.05 startpoint=i;
starttime=time(i);
break;
end
end
for ii=1:1:numel(time)
if time(ii)¿=15+starttime endpoint=ii;
break;
end
end
end
function [ EMG4,EMG5,EMG7] = EMGfix(EMG2)
%Behandlar EMG data % Detailed explanation goes here
EMG3=mean(EMG2);
n=1;
%Skjuter ner medelv?rdet till 0 niv?, kurvan d? centrerad kring 0 for i=1:length(EMG2)
EMG4(n,1)=EMG2(i)-EMG3;
n=n+1;
end %Tar absolut beloppet av kurvan, rektifierar EMG5=abs(EMG4);
q=1;
%Smoothar kurvan med 100 punkter innan och 100 efter, sedan medelvardet av %dessa i punkten
for k=101:(length(EMG5)-100) p=1;
for ii=-100:100 EMG6(p,1)=EMG5(k+ii);
p=p+1;
end
EMG7(q,1)=rms(EMG6);
q=q+1;
end
end
function [solcomp,gmcomp,glcomp,tacomp] = com-
pare10K(EMGrmssol,EMGrmsgm,EMGrmsgl,EMGrmsta,sol10kdone,gm10kdone,gl10kdone,ta10kdone
)
11
%UNTITLED8 Summary of this function goes here % Detailed explanation goes here
% Gemfor all annan data mot data fran 10 km/h. Sa man far ut andelen av 10km/h.
for i=1:length(EMGrmssol) solcomp(i)=(EMGrmssol(i)/sol10kdone);
end
for i=1:length(EMGrmsgm) gmcomp(i)=(EMGrmsgm(i)/gm10kdone);
end
for i=1:length(EMGrmsgl) glcomp(i)=(EMGrmsgl(i)/gl10kdone);
end
for i=1:length(EMGrmsta) tacomp(i)=(EMGrmsta(i)/ta10kdone);
end
end
function [steps,Toetimesol,Toetimegm,Toetimegl,Toetimeta,Heeltimesol, Heeltimegm,
Heeltimegl,Heeltimeta] =EMGsteps(Heeltime,Toetime,FT,solcomp,gmcomp,glcomp,tacomp)
solconvert=numel(solcomp)/numel(FT);
gmconvert=numel(gmcomp)/numel(FT);
glconvert=numel(glcomp)/numel(FT);
taconvert=numel(tacomp)/numel(FT);
for i=1:1:numel(Heeltime)
Heeltimesol(i)= Heeltime(i)*solconvert;
Heeltimegm(i)= Heeltime(i)*gmconvert;
Heeltimegl(i)= Heeltime(i)*glconvert;
Heeltimeta(i)= Heeltime(i)*taconvert;
end
for ii=1:1:(numel(Heeltime)-1) a=Heeltimesol(ii);
b=Heeltimesol(ii+1);
steps(ii).sol=solcomp(a:b);
end
for ii=1:1:(numel(Heeltimegm)-1) a=Heeltimegm(ii);
b=Heeltimegm(ii+1);
steps(ii).gm=gmcomp(a:b);
end
for ii=1:1:(numel(Heeltimegl)-1) a=Heeltimegl(ii);
b=Heeltimegl(ii+1);
steps(ii).gl=glcomp(a:b);
end
for ii=1:1:(numel(Heeltimeta)-1) a=Heeltimeta(ii);
b=Heeltimeta(ii+1);
steps(ii).ta=tacomp(a:b);
end for i=1:1:numel(Toetime) Toetimesol(i)=Toetime(i)*solconvert;
Toetimegm(i)=Toetime(i)*gmconvert;
Toetimegl(i)=Toetime(i)*glconvert;
12
Toetimeta(i)=Toetime(i)*taconvert;
end
function [emgsol4,emggm4,emggl4,emgta4,indsol,indgm,indgl,indta ] =EMGcalc(steps)
%Den har forloopen ger ut maxvardet och dess indexvarde fran de valda %stegen. for i=1:length(steps)
[emgsol2(i),indsol(i)]=max(steps(i).data.sol);
ggm2(i),indgm(i)=max(steps(i).data.gm);
ggl2(i),indgl(i)=max(steps(i).data.gl);
gta2(i),indta(i)=max(steps(i).data.ta);
end %Dessa forloopar tar vardet fran 15 punkter innan maxvardet och 15 punkter %efter maxvardet och lagger
dem i en ny vektor.
for k=1:length(steps) if indsol(k)¡15 p=-indsol(k)+1;
else p=-15;
end if indsol(k)¿(length(steps(k).data.sol)-15) pp=(length(steps(k).data.sol)-indsol(k)-1);
else pp=15;
end for ii=p:pp
emgsol3(k)=steps(k).data.sol(indsol(k)+ii);
end end for k=1:length(steps) if indgm(k)¡15 p=-indgm(k)+1;
else p=-15;
end if indgm(k)¿(length(steps(k).data.gm)-15) pp=(length(steps(k).data.gm)-indgm(k)-1);
else pp=15;
end
for ii=p:pp
emggm3(k)=steps(k).data.gm(indgm(k)+ii);
end end
for k=1:length(steps) if indgl(k)¡15 p=-indgl(k)+1;
else p=-15;
end if indgl(k)¿(length(steps(k).data.gl)-15) pp=(length(steps(k).data.gl)-indgl(k)-1);
else pp=15;
end for ii=p:pp
emggl3(k)=steps(k).data.gl(indgl(k)+ii);
end end for k=1:length(steps) if indta(k)¡15 p=-indta(k)+1;
else p=-15;
end if indta(k)¿(length(steps(k).data.ta)-15) pp=(length(steps(k).data.ta)-indta(k)-1);
else pp=15;
end for ii=p:pp
emgta3(k)=steps(k).data.ta(indta(k)+ii);
end end %Tar medelvardet av de nya vektorerna. emgsol4=mean(emgsol3);
emggm4=mean(emggm3);
emggl4=mean(emggl3);
emgta4=mean(emgta3);
end
13
Recommended