Diagonaal berekenen lukt, meerdere outputs nog niet

Dependencies:   mbed FastPWM HIDScope MODSERIAL QEI

Committer:
TimDouma
Date:
Wed Oct 12 14:39:29 2016 +0000
Revision:
1:709a462b8373
Parent:
0:46a1642a10c8
Child:
2:bf1466ac4e6f
Diagonaal berekenen lukt, meerdere ouputs niet;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
TimDouma 0:46a1642a10c8 1 #include "mbed.h"
TimDouma 0:46a1642a10c8 2 #include "math.h"
TimDouma 0:46a1642a10c8 3 #define SERIAL_BAUD 115200
TimDouma 1:709a462b8373 4 #include "iostream"
TimDouma 0:46a1642a10c8 5
TimDouma 0:46a1642a10c8 6 Serial pc(USBTX,USBRX);
TimDouma 0:46a1642a10c8 7 Ticker TickerAfstandBerekenen;
TimDouma 0:46a1642a10c8 8 // in te voeren x en y waardes (de positie waar we heen willen)
TimDouma 0:46a1642a10c8 9 volatile float x = -30.0;
TimDouma 0:46a1642a10c8 10 volatile float y = 200.0;
TimDouma 0:46a1642a10c8 11
TimDouma 0:46a1642a10c8 12 // waardes
TimDouma 0:46a1642a10c8 13 volatile const float a = 50.0; // de afstand van gekozen assenstelsel tot de armas (assenstelsel precies in het midden)
TimDouma 0:46a1642a10c8 14 volatile const float Bar = 200.0; // lengte van de armen
TimDouma 0:46a1642a10c8 15 //volatile float D1 = 9.0;
TimDouma 0:46a1642a10c8 16
TimDouma 0:46a1642a10c8 17
TimDouma 0:46a1642a10c8 18 // functie om D1 en D2 te berekenen
TimDouma 0:46a1642a10c8 19 float AfstandBerekenen ()
TimDouma 0:46a1642a10c8 20 {
TimDouma 0:46a1642a10c8 21 float BV1 = sqrt(pow((a+x),2) + pow(y,2)); // diagonaal (afstand van armas tot locatie) berekenen
TimDouma 0:46a1642a10c8 22 float BV2 = sqrt(pow((x-a),2) + pow(y,2));
TimDouma 0:46a1642a10c8 23
TimDouma 0:46a1642a10c8 24 float D1 = pow(BV1,2)/(2*BV1); // berekenen van de afstand oorsprong tot diagonaal
TimDouma 0:46a1642a10c8 25 float D2 = pow(BV2,2)/(2*BV2);
TimDouma 0:46a1642a10c8 26
TimDouma 0:46a1642a10c8 27 pc.baud(SERIAL_BAUD);
TimDouma 1:709a462b8373 28 pc.printf("\r\n D1 = %f en D2 = %f\r\n", D1, D2);
TimDouma 0:46a1642a10c8 29
TimDouma 1:709a462b8373 30 return D1 ;
TimDouma 0:46a1642a10c8 31 }
TimDouma 0:46a1642a10c8 32
TimDouma 0:46a1642a10c8 33 /*
TimDouma 0:46a1642a10c8 34 void MotorhoekBerekenen (){
TimDouma 0:46a1642a10c8 35 if (x > -a){
TimDouma 0:46a1642a10c8 36 float MotorHoek1 = 180 - atan(y/(x+a)) - acos(
TimDouma 0:46a1642a10c8 37 */
TimDouma 0:46a1642a10c8 38 int main()
TimDouma 0:46a1642a10c8 39 {
TimDouma 0:46a1642a10c8 40
TimDouma 0:46a1642a10c8 41 //TickerAfstandBerekenen.attach(&AfstandBerekenen, 0.1);
TimDouma 0:46a1642a10c8 42 float D1 = AfstandBerekenen();
TimDouma 0:46a1642a10c8 43 //float D2 = AfstandBerekenen(x,y);
TimDouma 0:46a1642a10c8 44 pc.baud(SERIAL_BAUD);
TimDouma 1:709a462b8373 45 pc.printf("D1 = %f\r\n", D1);
TimDouma 0:46a1642a10c8 46 //AfstandBerekenen();
TimDouma 0:46a1642a10c8 47 while (true) {
TimDouma 0:46a1642a10c8 48
TimDouma 0:46a1642a10c8 49 }
TimDouma 0:46a1642a10c8 50 }