Filter emg 7-10-15 v1
Dependencies: HIDScope mbed MODSERIAL
Kalibratie.cpp@18:eec0880fcded, 2015-10-12 (annotated)
- Committer:
- Bartvaart
- Date:
- Mon Oct 12 10:14:18 2015 +0000
- Revision:
- 18:eec0880fcded
- Parent:
- 17:cfe44346645c
- Child:
- 19:6c0245063b96
Lijkt te werken, moet nog getest worden met echte metingen
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Bartvaart | 16:8f175d2a472f | 1 | #include "Kalibratie.h" |
Bartvaart | 17:cfe44346645c | 2 | #include "Filterdesigns.h" |
Bartvaart | 17:cfe44346645c | 3 | |
Bartvaart | 17:cfe44346645c | 4 | Timer Timermax; |
Bartvaart | 17:cfe44346645c | 5 | Timer Timermin; |
Bartvaart | 17:cfe44346645c | 6 | AnalogIn emg2(A0); //Analog input van emg kabels |
Bartvaart | 17:cfe44346645c | 7 | |
Bartvaart | 17:cfe44346645c | 8 | DigitalOut LedGreen(LED2); |
Bartvaart | 17:cfe44346645c | 9 | DigitalOut LedRed(LED1); |
Bartvaart | 17:cfe44346645c | 10 | |
Bartvaart | 17:cfe44346645c | 11 | void Init() |
Bartvaart | 17:cfe44346645c | 12 | { |
Bartvaart | 17:cfe44346645c | 13 | LedGreen = 1; |
Bartvaart | 17:cfe44346645c | 14 | LedRed = 1; |
Bartvaart | 17:cfe44346645c | 15 | } |
Bartvaart | 17:cfe44346645c | 16 | |
Bartvaart | 17:cfe44346645c | 17 | double KalibratieMax(bool &readymax) //Kalibratie van de maximum waarde |
Bartvaart | 17:cfe44346645c | 18 | { |
Bartvaart | 17:cfe44346645c | 19 | Timermax.start(); //Start de timer |
Bartvaart | 17:cfe44346645c | 20 | |
Bartvaart | 17:cfe44346645c | 21 | LedGreen.write(0); //Led aan |
Bartvaart | 17:cfe44346645c | 22 | double ymax = 0; |
Bartvaart | 18:eec0880fcded | 23 | double gem = 0; // omdat y min nog niet is gedefinieerd moet er daarvoor in de plaats een waarde 0 worden doorgestuurd naar het programma Filterdesigns. Omdat het onduidelijk is dezse ymin te gaan noemen in een bestand waar ymin ook wordt bepaald heet deze in dit geval gem |
Bartvaart | 16:8f175d2a472f | 24 | |
Bartvaart | 17:cfe44346645c | 25 | while(Timermax <= 5) { //Als timer onder de 5 seconden is dit uitvoeren |
Bartvaart | 17:cfe44346645c | 26 | double u = emg2.read(); |
Bartvaart | 18:eec0880fcded | 27 | double y = Filterdesigns(u, gem); |
Bartvaart | 17:cfe44346645c | 28 | if (y > ymax) { //Als de gemeten waarde groter is dan de opgeslagen waarde wordt dit de nieuwe opgeslagen waarde |
Bartvaart | 17:cfe44346645c | 29 | ymax = y; |
Bartvaart | 17:cfe44346645c | 30 | } |
Bartvaart | 17:cfe44346645c | 31 | else { |
Bartvaart | 17:cfe44346645c | 32 | } |
Bartvaart | 17:cfe44346645c | 33 | } |
Bartvaart | 17:cfe44346645c | 34 | Timermax.stop(); |
Bartvaart | 17:cfe44346645c | 35 | LedGreen.write(1); //Led aan |
Bartvaart | 17:cfe44346645c | 36 | readymax = 1; // Zodat systeem weet wanneer kalibratie voltooid is |
Bartvaart | 17:cfe44346645c | 37 | return ymax; |
Bartvaart | 17:cfe44346645c | 38 | } |
Bartvaart | 17:cfe44346645c | 39 | |
Bartvaart | 17:cfe44346645c | 40 | double KalibratieMin(bool &readymin) //Kalibratie van de minimum waarde |
Bartvaart | 17:cfe44346645c | 41 | { |
Bartvaart | 17:cfe44346645c | 42 | Timermin.start(); |
Bartvaart | 17:cfe44346645c | 43 | |
Bartvaart | 17:cfe44346645c | 44 | LedRed.write(0); |
Bartvaart | 17:cfe44346645c | 45 | double ymin = 10; |
Bartvaart | 18:eec0880fcded | 46 | double gem = 0; |
Bartvaart | 17:cfe44346645c | 47 | |
Bartvaart | 17:cfe44346645c | 48 | while(Timermin <= 5) { |
Bartvaart | 17:cfe44346645c | 49 | double u = emg2.read(); |
Bartvaart | 18:eec0880fcded | 50 | double y = Filterdesigns(u, gem); |
Bartvaart | 17:cfe44346645c | 51 | |
Bartvaart | 17:cfe44346645c | 52 | if (y < ymin) { |
Bartvaart | 17:cfe44346645c | 53 | ymin = y; |
Bartvaart | 17:cfe44346645c | 54 | } |
Bartvaart | 17:cfe44346645c | 55 | else { |
Bartvaart | 17:cfe44346645c | 56 | } |
Bartvaart | 17:cfe44346645c | 57 | } |
Bartvaart | 17:cfe44346645c | 58 | |
Bartvaart | 17:cfe44346645c | 59 | Timermin.stop(); |
Bartvaart | 17:cfe44346645c | 60 | LedRed.write(1); |
Bartvaart | 17:cfe44346645c | 61 | readymin = 1; |
Bartvaart | 17:cfe44346645c | 62 | return ymin; |
Bartvaart | 17:cfe44346645c | 63 | } |