Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Revision 3:d36d3cc7ee23, committed 2014-10-14
- Comitter:
- JKleinRot
- Date:
- Tue Oct 14 14:22:18 2014 +0000
- Parent:
- 2:fbda25b453b3
- Commit message:
- 14-10-14 versie met commentaar en tips van Gijs
Changed in this revision
| main.cpp | Show annotated file Show diff for this revision Revisions of this file |
diff -r fbda25b453b3 -r d36d3cc7ee23 main.cpp
--- a/main.cpp Mon Oct 13 13:30:59 2014 +0000
+++ b/main.cpp Tue Oct 14 14:22:18 2014 +0000
@@ -13,6 +13,10 @@
#define D0 1
#define D1 -1.709
#define D2 0.9625
+#define E1 1.823
+#define E2 -0.8372
+#define F1 0.007438
+#define F2 0.00701
//Pinverdeling en naamgeving variabelen
Encoder motor_arm1( //Encoder motor arm 1
@@ -114,23 +118,56 @@
void sample_EMG{
xbk = emg_bi.read(); //Uitlezen EMG signaal biceps
xtk = emg_tri.read(); //Uitlezen EMG signaal triceps
+ filter();
+ }
+
+
+ void filter()
+ {
+ /* do filtering */
+
+ }
+ ticker_sample_EMG.attach(sample_EMG,SAMPLETIME_EMG) //Ticker gaat de void sample_EMG uitvoeren en dus de EMG uitlezen iedere 0.005 seconden
+
+ while t<600{
+ xbkt(t)=xbk
+ ybkt(t) = ybk
+ xtkt(t) = xtk
+ ytkt(t) = ytk
+ t = t+1
}
- ticker_sample_EMG.attach(sample_EMG,SAMPLETIME_EMG) //Ticker gaat de void sample_EMG uitvoeren en dus de EMG uitlezen iedere 0.005 seconden
//Detrend
+ n = 600;
+
+ //hier wordt de som van de x en y waardes van het gemeten signaal berekend
+
+ int i, n //n = het aantaal samples dat we hebben, is afhankelijk van het tijdinterval dat we kiezen
+ for(i=0; i<n; i++) {
+ sum_bk = sum_bk + ybk(i) //functie met line 88 voor een soomatie van alle waardes
+ //sum = sum_bk
+ sum_tk += ytk(i) //betekenis van de += dat de waardes altijd bij elkaar op worden geteld
+ // ook mean van de x en dan met de juiste/betere manier
+ }
+
+ //hier wordt de mean van de x en y van het gemeten signaal gemeten
+
+ mean_ybk = sum_bk./n
+ mean_xbk = sum_xbk./n
+
//Hoogdoorlaatfilter 2Hz
while(true){
- ybk = A1*ybk1-A2*ybk2+B0*xbk-B1*xbk1+B2*xbk2 //Overdracht 2e orde hoogdoorlaatfilter
+ ybk = A1*ybk1+A2*ybk2+B0*xbk+B1*xbk1+B2*xbk2 //Overdracht 2e orde hoogdoorlaatfilter
xbk2 = xbk1 //xbk(n-2) wordt xbk(n-1) in de volgende loop
xbk1 = xbk //xbk(n-1) wordt xbk(n) in de volgende loop
ybk2 = ybk1 //ybk(n-2) wordt ybk(n-1) in de volgende loop
ybk1 = ybk //ybk(n-1) wordt ybk(n) in de volgende loop
- ytk = A1*ytk1-A2*ytk2+B0*xtk-B1*xtk1+B2*xtk2 //Overdracht 2e orde hoogdoorlaatfilter
+ ytk = A1*ytk1+A2*ytk2+B0*xtk+B1*xtk1+B2*xtk2 //Overdracht 2e orde hoogdoorlaatfilter
xtk2 = xtk1 //xtk(n-2) wordt xtk(n-1) in de volgende loop
xtk1 = xtk //xtk(n-1) wordt xtk(n) in de volgende loop