2 losse EMG signalen van de biceps en deltoid

Dependencies:   HIDScope MODSERIAL mbed-dsp mbed Encoder

Fork of Lampje_EMG_Gr6 by Jesse Kaiser

Revision:
26:9859a71456fd
Parent:
25:a12d51345aa4
Child:
27:691779624530
--- a/main.cpp	Sat Nov 01 11:34:33 2014 +0000
+++ b/main.cpp	Sat Nov 01 12:52:52 2014 +0000
@@ -64,15 +64,15 @@
 
 arm_biquad_casd_df1_inst_f32 lowpass_biceps;
 arm_biquad_casd_df1_inst_f32 lowpass_deltoid;
-//lowpass filter settings: Fc = 5 Hz, Fs = 500 Hz, Gain = -3 dB
-float lowpass_const[] = {0.0009446914586925257, 0.0018893829173850514, 0.0009446914586925257, 1.911196288237583, -0.914975054072353};
+//lowpass filter settings: Fc = 2 Hz, Fs = 500 Hz, Gain = -3 dB
+float lowpass_const[] = {0.00015514839749793376, 0.00031029679499586753, 0.00015514839749793376, 1.9644602512795832, -0.9650808448695751};
 //state values
 float lowpass_biceps_states[4];
 float lowpass_deltoid_states[4];
 arm_biquad_casd_df1_inst_f32 highnotch_biceps;
 arm_biquad_casd_df1_inst_f32 highnotch_deltoid;
-//highpass filter settings: Fc = 20 Hz, Fs = 500 Hz, Gain = -3 dB, notch Fc = 50, Fs =500Hz, Gain = -3 dB
-float highnotch_const[] = {0.9149684297741606, -1.8299368595483212, 0.9149684297741606, 1.8226935021735358, -0.8371802169231065 ,0.969531252908746, -1.18733334554802E-16, 0.969531252908746, -1.18733334554802E-16, 0.939062505817492};
+//highpass filter settings: Fc = 10 Hz, Fs = 500 Hz, Gain = -3 dB, notch Fc = 49-51, Fs =500Hz, Gain = -3 dB (van Melvin)
+float highnotch_const[] = {0.9149684297741606, -1.8299368595483212, 0.9149684297741606, 1.8226935021735358, -0.8371802169231065 ,0.7063988100714527, -1.1429772843080923, 0.7063988100714527, 1.1429772843080923, -0.41279762014290533};
 //state values
 float highnotch_biceps_states[8];
 float highnotch_deltoid_states[8];
@@ -90,8 +90,8 @@
     static float number=0;
     total = total + filtered_biceps;
     number = number + 1;
-    if ( number == 500) {
-        *average = total/500;
+    if ( number == 250) {
+        *average = total/250;
         total = 0;
         number = 0;
     }
@@ -103,8 +103,8 @@
     static float number=0;
     total = total + filtered_input;
     number = number + 1;
-    if ( number == 500) {
-        *average_output = total/500;
+    if ( number == 250) {
+        *average_output = total/250;
         total = 0;
         number = 0;
     }
@@ -538,7 +538,7 @@
     * The looper() function will be called every 0.01 seconds.
     * Please mind that the parentheses after looper are omitted when using attach.
     */
-    log_timer.attach(looper, 0.001);
+    log_timer.attach(looper, 0.002);
 
     Ticker looptimer;
     looptimer.attach(looper_motor,TSAMP);
@@ -556,21 +556,21 @@
                 BlinkGreen();
                 while (1) {
                     pc.printf("In de loop.\n");
-                    if (filtered_average_bi > 0.05 && filtered_average_del > 0.05) {
+                    if (filtered_average_bi > 0.05 && filtered_average_del > 0.045) {
                         stopblinkgreen();
                         pc.printf("ShineGreen.\n");
                         ShineGreen();
                         wait (4);
                         break;
                     }
-                    if (filtered_average_bi < 0.05 && filtered_average_del > 0.05) {
+                    if (filtered_average_bi < 0.05 && filtered_average_del > 0.045) {
                         stopblinkgreen();
                         pc.printf("ShineBlue.\n");
                         ShineBlue();
                         batje_hoek = 2;
                         wait(4);
                         break;
-                    } else if (filtered_average_bi > 0.05 && filtered_average_del < 0.05)
+                    } else if (filtered_average_bi > 0.05 && filtered_average_del < 0.045)
 
                     {
                         stopblinkgreen();
@@ -584,7 +584,7 @@
                 BlinkGreen();
                 while (1) {
                     pc.printf("In de loop.\n");
-                    if (filtered_average_bi > 0.05 && filtered_average_del > 0.05) {
+                    if (filtered_average_bi > 0.05 && filtered_average_del > 0.045) {
                         stopblinkgreen();
                         pc.printf("ShineGreen.\n");
                         ShineGreen();
@@ -592,14 +592,14 @@
                         wait (4);
                         break;
                     }
-                    if (filtered_average_bi < 0.05 && filtered_average_del > 0.05) {
+                    if (filtered_average_bi < 0.05 && filtered_average_del > 0.045) {
                         stopblinkgreen();
                         pc.printf("ShineBlue.\n");
                         ShineBlue();
                         arm_hoogte = 1;
                         wait(4);
                         break;
-                    } else if (filtered_average_bi > 0.05 && filtered_average_del < 0.05)
+                    } else if (filtered_average_bi > 0.05 && filtered_average_del < 0.045)
 
                     {
                         stopblinkgreen();
@@ -610,8 +610,7 @@
                         break;
                     }
                 }
-                batje_hoek = 0;
-                arm_hoogte = 0;
+
             }
 
         }