logic control

Dependencies:   Motor mbed

Committer:
Ty
Date:
Thu Feb 19 14:30:31 2015 +0000
Revision:
0:c89dab5f3e1c
logic

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Ty 0:c89dab5f3e1c 1 #include "mbed.h"
Ty 0:c89dab5f3e1c 2 #include "Motor.h"
Ty 0:c89dab5f3e1c 3 Serial pc(USBTX,USBRX);//allows communication through the USB
Ty 0:c89dab5f3e1c 4 AnalogIn range(p19);
Ty 0:c89dab5f3e1c 5 float height;
Ty 0:c89dab5f3e1c 6 float rv;
Ty 0:c89dab5f3e1c 7 float dh;
Ty 0:c89dab5f3e1c 8 float er;
Ty 0:c89dab5f3e1c 9 Motor m(p26, p29, p30);
Ty 0:c89dab5f3e1c 10 int counter;
Ty 0:c89dab5f3e1c 11 int main()
Ty 0:c89dab5f3e1c 12 {
Ty 0:c89dab5f3e1c 13
Ty 0:c89dab5f3e1c 14 m.speed(0);
Ty 0:c89dab5f3e1c 15 while(1) {
Ty 0:c89dab5f3e1c 16 counter=0;
Ty 0:c89dab5f3e1c 17 m.speed(0);
Ty 0:c89dab5f3e1c 18 rv=range;
Ty 0:c89dab5f3e1c 19 height=(-75.7457492123552*pow(rv,2))+(90.6774745565381*rv)+(-4.00358328437282);
Ty 0:c89dab5f3e1c 20 pc.printf("%f,%f\n",rv,height);
Ty 0:c89dab5f3e1c 21 pc.printf("Enter desired height\n");
Ty 0:c89dab5f3e1c 22 pc.scanf("%f",&dh);
Ty 0:c89dab5f3e1c 23 while(counter<800){
Ty 0:c89dab5f3e1c 24 rv=range;
Ty 0:c89dab5f3e1c 25 height=(-75.7457492123552*pow(rv,2))+(90.6774745565381*rv)+(-4.00358328437282);
Ty 0:c89dab5f3e1c 26 er=dh-height;
Ty 0:c89dab5f3e1c 27 pc.printf("%f\n",er);
Ty 0:c89dab5f3e1c 28 if(er>0) {
Ty 0:c89dab5f3e1c 29 m.speed(-.5);
Ty 0:c89dab5f3e1c 30 }
Ty 0:c89dab5f3e1c 31 if(er<0) {
Ty 0:c89dab5f3e1c 32 m.speed(.8);
Ty 0:c89dab5f3e1c 33 }
Ty 0:c89dab5f3e1c 34
Ty 0:c89dab5f3e1c 35 counter = counter+1;
Ty 0:c89dab5f3e1c 36
Ty 0:c89dab5f3e1c 37 }//end while
Ty 0:c89dab5f3e1c 38 }
Ty 0:c89dab5f3e1c 39 }