Myo Thant Sin Aung / Mbed 2 deprecated 2ndOfilter_DNNHL_e01

Dependencies:   QEI mbed

Fork of 2ndOfilter by velo_filter

Committer:
NiNiHtayLwin
Date:
Sun Jul 22 09:41:09 2018 +0000
Revision:
0:f2a2b5a88616
Child:
1:57f0db59db9f
2ndOFil

Who changed what in which revision?

UserRevisionLine numberNew contents of line
NiNiHtayLwin 0:f2a2b5a88616 1 #include "QEI.h"
NiNiHtayLwin 0:f2a2b5a88616 2 #include "mbed.h"
NiNiHtayLwin 0:f2a2b5a88616 3 Serial pc(USBTX, USBRX);
NiNiHtayLwin 0:f2a2b5a88616 4 double prv_time = 0.0;
NiNiHtayLwin 0:f2a2b5a88616 5 double now_time = 0.0;
NiNiHtayLwin 0:f2a2b5a88616 6 double samp_time = 0.0;
NiNiHtayLwin 0:f2a2b5a88616 7 double now_x = 0.0;
NiNiHtayLwin 0:f2a2b5a88616 8 double now_d = 0.0;
NiNiHtayLwin 0:f2a2b5a88616 9 double prv_d = 0.0;
NiNiHtayLwin 0:f2a2b5a88616 10 double pr2v_d = 0.0;
NiNiHtayLwin 0:f2a2b5a88616 11 double a = 0.0;
NiNiHtayLwin 0:f2a2b5a88616 12 double b = 0.0;
NiNiHtayLwin 0:f2a2b5a88616 13 double c = 0.0;
NiNiHtayLwin 0:f2a2b5a88616 14 double PI = 3.1416;
NiNiHtayLwin 0:f2a2b5a88616 15 double fc = 0.05/(2*PI);
NiNiHtayLwin 0:f2a2b5a88616 16 double C =(2*PI*fc)*(2*PI*fc) ;
NiNiHtayLwin 0:f2a2b5a88616 17 double B = sqrt(2*C);
NiNiHtayLwin 0:f2a2b5a88616 18 int main()
NiNiHtayLwin 0:f2a2b5a88616 19 {
NiNiHtayLwin 0:f2a2b5a88616 20 Timer myTime;
NiNiHtayLwin 0:f2a2b5a88616 21 myTime.reset();
NiNiHtayLwin 0:f2a2b5a88616 22 myTime.start();
NiNiHtayLwin 0:f2a2b5a88616 23 pc.baud(57600);
NiNiHtayLwin 0:f2a2b5a88616 24 while(1) {
NiNiHtayLwin 0:f2a2b5a88616 25 now_time = myTime.read_ms()/1000.0;
NiNiHtayLwin 0:f2a2b5a88616 26 samp_time = now_time - prv_time;
NiNiHtayLwin 0:f2a2b5a88616 27 now_x = sin(2*PI*0.5*now_time) + 0.5*sin(2*PI*100*now_time);
NiNiHtayLwin 0:f2a2b5a88616 28 a = ((samp_time*samp_time)*C)*now_x;
NiNiHtayLwin 0:f2a2b5a88616 29 b = (2+(samp_time*B))*prv_d;
NiNiHtayLwin 0:f2a2b5a88616 30 c = pr2v_d;
NiNiHtayLwin 0:f2a2b5a88616 31 now_d = (a+b-c)/(((samp_time*samp_time)*C)+(samp_time*B)+1);
NiNiHtayLwin 0:f2a2b5a88616 32
NiNiHtayLwin 0:f2a2b5a88616 33 pc.printf(" %F %F %F %F\r", now_time, samp_time, now_x, now_d);
NiNiHtayLwin 0:f2a2b5a88616 34 printf("\n\r");
NiNiHtayLwin 0:f2a2b5a88616 35 prv_time = now_time;
NiNiHtayLwin 0:f2a2b5a88616 36 prv_d = now_d;
NiNiHtayLwin 0:f2a2b5a88616 37 pr2v_d = prv_d;
NiNiHtayLwin 0:f2a2b5a88616 38 }
NiNiHtayLwin 0:f2a2b5a88616 39 }