Remco Dasselaar / Mbed 2 deprecated TotalControlEmg2

Dependencies:   HIDScope MODSERIAL QEI TextLCD mbed

Fork of TotalControlEmg2 by Remco Dasselaar

Committer:
RemcoDas
Date:
Wed Oct 28 09:28:48 2015 +0000
Revision:
50:16314b798754
Parent:
44:97f5622db2c4
Child:
51:dcbfdf3b9468
Final, schoongeveegd

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Bartvaart 16:8f175d2a472f 1 #include "Kalibratie.h"
Bartvaart 17:cfe44346645c 2 #include "Filterdesigns.h"
RemcoDas 50:16314b798754 3
RemcoDas 41:91c8c39d7a33 4 int samples = 100; // amount of samples taken
RemcoDas 50:16314b798754 5 double KalibratieMax(AnalogIn& emg, bool side){ //Calibration max value (contracted)
RemcoDas 41:91c8c39d7a33 6 double ymax = 0;
RemcoDas 41:91c8c39d7a33 7 for(int i = 1; i <= samples; i++) { //amount of samples
RemcoDas 25:c97d079e07f3 8 double u = emg.read();
RemcoDas 30:8ae855348d22 9 double y = 0;
RemcoDas 50:16314b798754 10 if(side){ // left EMG filter values
RemcoDas 30:8ae855348d22 11 y = FilterdesignsLeft(u);
RemcoDas 30:8ae855348d22 12 }
RemcoDas 30:8ae855348d22 13 else {
RemcoDas 50:16314b798754 14 y = FilterdesignsRight(u); // right EMG filter values
RemcoDas 30:8ae855348d22 15 }
RemcoDas 50:16314b798754 16 if (y > ymax && i >= samples / 10) { //Check on maximum, not first 10 samples (offset)
Bartvaart 17:cfe44346645c 17 ymax = y;
RemcoDas 50:16314b798754 18 }
RemcoDas 50:16314b798754 19 }
Bartvaart 17:cfe44346645c 20 return ymax;
RemcoDas 27:f62e450bb411 21 }
Bartvaart 17:cfe44346645c 22
RemcoDas 50:16314b798754 23 double KalibratieMin(AnalogIn& emg, bool side){ //Calibration min value (relaxed)
Bartvaart 17:cfe44346645c 24 double ymin = 10;
Bartvaart 22:c1811e60bfce 25 for(int i = 1; i <= samples; i++) {
RemcoDas 26:d9855716ced7 26 double u = emg.read();
RemcoDas 30:8ae855348d22 27 double y = 0;
RemcoDas 50:16314b798754 28 if(side){ // left EMG values
RemcoDas 30:8ae855348d22 29 y = FilterdesignsLeft(u);
RemcoDas 30:8ae855348d22 30 }
RemcoDas 30:8ae855348d22 31 else {
RemcoDas 50:16314b798754 32 y = FilterdesignsRight(u); // right EMG values
RemcoDas 41:91c8c39d7a33 33 }
RemcoDas 50:16314b798754 34 if (y < ymin && i >= samples / 10) { // not first 10 samples (offset)
Bartvaart 17:cfe44346645c 35 ymin = y;
RemcoDas 50:16314b798754 36 }
RemcoDas 50:16314b798754 37 }
Bartvaart 17:cfe44346645c 38 return ymin;
Bartvaart 17:cfe44346645c 39 }