Jan-Willem Bisschop
/
EMG_filter
EMG filter. Waarden nog niet perfekt.
main.cpp
- Committer:
- janwillembisschop
- Date:
- 2016-10-28
- Revision:
- 1:70dc835f3a37
- Parent:
- 0:2956e3501f8a
File content as of revision 1:70dc835f3a37:
#include "mbed.h" #include "HIDScope.h" #include "Filter.h" #include "FilterDesign.h" #include "Filter2.h" #include "FilterDesign2.h" AnalogIn emg1(A0); AnalogIn emg2(A1); Ticker sample_timer; HIDScope scope(4); // 2 scopes // Motor aanroepen DigitalOut motor_1(D7); //richting (1 of 0) PwmOut pwm_motor_1(D6); //snelheid (tussen 0 en 1?) DigitalOut motor_2(D4); //richting (1 of 0) PwmOut pwm_motor_2(D5); //snelheid (tussen 0 en 1?) InterruptIn stop(SW3); //stoppen InterruptIn turn_1(D9); //wisselen van kant (button 1) InterruptIn turn_2(D10); //wisselen van kant (button 2) Serial pc(USBTX, USBRX); //USB ports aanroepen Ticker faster_slower; //Ticker voor functie om sneller en langzamer te gaan DigitalOut led1(D2); DigitalOut led2(D3); DigitalOut led_red(LED_RED); DigitalOut led_green(LED_GREEN); DigitalOut led_blue(LED_BLUE); volatile double y1; volatile double y2; volatile double u1; volatile double u2; void sample() { double u1 = emg1.read(); // ongefitlerd double y1 = FilterDesign(u1); // gefilterd double u2 = emg2.read(); // ongefitlerd double y2 = FilterDesign2(u2); // gefilterd scope.set(0,u1); // ongefilterd emg1 naar scope 0 scope.set(1,y1); // gefilterd emg1 naar scope 1 scope.set(2,u2); // ongefilterd emg2 naar scope 2 scope.set(3,y2); // gefilterd emg2 naar scope 3 scope.send(); /* if (y1 > 0.05) { motor_1 = 1; pwm_motor_1 = 0.6; } else { pwm_motor_1 = 0; } if (y2 > 0.05) { motor_2 = 1; pwm_motor_2 = 0.6; } else { pwm_motor_2 = 0; } */ if (y1 >= 0.06) { led_red.write(0); // aan led_green.write(1); // uit led_blue.write(1); // uit } if (y2 >= 0.09) { led_red.write(1); // uit led_green.write(0); // aan led_blue.write(1); // uit } if (y1 >= 0.06 & y2 >= 0.09) { led_red.write(1); // uit led_green.write(1); // uit led_blue.write(0); // aan } else if (y1 < 0.06 & y2 < 0.09) { led_red.write(1); // uit led_green.write(1); // uit led_blue.write(1); // uit } } int main() { pc.baud(115200); sample_timer.attach(&sample, 0.01); // 500 Hz while(1) {} }