test
Dependencies: HIDScope MODSERIAL mbed-dsp mbed
Fork of emg_filter2 by
Revision 55:f215d954533c, committed 2014-10-20
- Comitter:
- Tanja2211
- Date:
- Mon Oct 20 11:17:50 2014 +0000
- Parent:
- 54:f3a9fa5f2b0e
- Child:
- 56:57a5fcfdce72
- Commit message:
- calibratie
Changed in this revision
EMGfilter.cpp | Show annotated file Show diff for this revision Revisions of this file |
--- a/EMGfilter.cpp Mon Oct 20 10:26:11 2014 +0000 +++ b/EMGfilter.cpp Mon Oct 20 11:17:50 2014 +0000 @@ -4,7 +4,6 @@ #include "arm_math.h" - // ****** emg filter shizzle ****** //Define objects @@ -13,6 +12,7 @@ float filtered_emgB; float filtered_emgT; +float MeanT1, MeanT2, MeanB1, MeanB2, MeanB3; float B0, B1, B2, B3, B4, B5, B6, B7, B8, B9, MOVAVG_B; float T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, MOVAVG_T; float drempelwaardeB1, drempelwaardeB2, drempelwaardeB3, drempelwaardeT1, drempelwaardeT2; @@ -48,6 +48,39 @@ * local in the looper function only. **/ +// Calibratie + +pc.printf("Calibratie drempelwaarde Triceps stand 1\n"); +wait(0.5); +int i; +int j=19; + + +for (i = 0, i<=j; i ++) +{ + /*variable to store value in*/ + uint16_t emg_valueT1i_C; + + float emg_value_f32T1i_C; + /*put raw emg value both in red and in emg_value*/ + emg_valueT1i_C = emgT1i_C.read_u16(); // read direct ADC result, converted to 16 bit integer (0..2^16 = 0..65536 = 0..3.3V) + emg_value_f32T1i_C = emgT1i_C.read(); + + //process emg + arm_biquad_cascade_df1_f32(&highpass, &emg_value_f32T1i_C, &filtered_emgT1i_C, 1 ); + filtered_emgT1i_C = fabs(filtered_emgT1i_C); + arm_biquad_cascade_df1_f32(&lowpass, &filtered_emgT1i_C, &filtered_emgT1i_C, 1 ); +} + // Mean Triceps stand 1 +{ + + MeanT1=filtered_emgT10_C*0.05+filtered_emgT11_C*0.05+filtered_emgT12_C*0.05+filtered_emgT13_C*0.05+filtered_emgT14_C*0.05+filtered_emgT15_C*0.05+filtered_emgT16_C*0.05+filtered_emgT17_C*0.05+filtered_emgT18_C*0.05+filtered_emgT19_C*0.05+filtered_emgT110_C*0.05+filtered_emgT111_C*0.05+filtered_emgT112_C*0.05+filtered_emgT113_C*0.05+filtered_emgT114_C*0.05+filtered_emgT115_C*0.05+filtered_emgT116_C*0.05+filtered_emgT117_C*0.05+filtered_emgT118_C*0.05+filtered_emgT119_C*0.05 + + +} + + + //BICEP EMG LEZEN void looperB() { @@ -70,7 +103,6 @@ scope.send(); // Moving Average Filter Biceps - { B0=filtered_emgB; @@ -84,11 +116,8 @@ B3=B2; B2=B1; B1=B0; - } } - - // Triceps EMG lezen void looperT() { @@ -110,9 +139,7 @@ scope.set(3,filtered_emgT); //processed float scope.send(); - // Moving Average Filter Triceps - - + // Moving Average Filter Triceps { T0=filtered_emgT; MOVAVG_T=T0*0.1+T1*0.1+T2*0.1+T3*0.1+T4*0.1+T5*0.1+T6*0.1+T7*0.1+T8*0.1+T9*0.1; @@ -126,11 +153,9 @@ T3=T2; T2=T1; T1=T0; - } } - int main() { Ticker log_timer;