Diagonaal berekenen lukt, meerdere outputs nog niet
Dependencies: mbed FastPWM HIDScope MODSERIAL QEI
main.cpp@2:bf1466ac4e6f, 2016-10-13 (annotated)
- Committer:
- TimDouma
- Date:
- Thu Oct 13 12:34:30 2016 +0000
- Revision:
- 2:bf1466ac4e6f
- Parent:
- 1:709a462b8373
- Child:
- 3:ac6f86c0db6e
linker en rechter D waarde gesplitst, ticker werkt alleen nog met een void functie;
Who changed what in which revision?
User | Revision | Line number | New 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 | 2:bf1466ac4e6f | 19 | float AfstandBerekenenLinks () |
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 D1 = pow(BV1,2)/(2*BV1); // berekenen van de afstand oorsprong tot diagonaal |
TimDouma | 0:46a1642a10c8 | 23 | pc.baud(SERIAL_BAUD); |
TimDouma | 2:bf1466ac4e6f | 24 | pc.printf("D1 = %f\r\n", D1); |
TimDouma | 0:46a1642a10c8 | 25 | |
TimDouma | 1:709a462b8373 | 26 | return D1 ; |
TimDouma | 0:46a1642a10c8 | 27 | } |
TimDouma | 0:46a1642a10c8 | 28 | |
TimDouma | 2:bf1466ac4e6f | 29 | float AfstandBerekenenRechts() |
TimDouma | 2:bf1466ac4e6f | 30 | { |
TimDouma | 2:bf1466ac4e6f | 31 | float BV2 = sqrt(pow((x-a),2) + pow(y,2));// diagonaal (afstand van armas tot locatie) berekenen |
TimDouma | 2:bf1466ac4e6f | 32 | float D2 = pow(BV2,2)/(2*BV2); // berekenen van de afstand oorsprong tot diagonaal |
TimDouma | 2:bf1466ac4e6f | 33 | pc.baud(SERIAL_BAUD); |
TimDouma | 2:bf1466ac4e6f | 34 | pc.printf("D2 = %f\r\n", D2); |
TimDouma | 2:bf1466ac4e6f | 35 | |
TimDouma | 2:bf1466ac4e6f | 36 | return D2 ; |
TimDouma | 2:bf1466ac4e6f | 37 | } |
TimDouma | 2:bf1466ac4e6f | 38 | void Blij() |
TimDouma | 2:bf1466ac4e6f | 39 | { |
TimDouma | 2:bf1466ac4e6f | 40 | pc.baud(SERIAL_BAUD); |
TimDouma | 2:bf1466ac4e6f | 41 | pc.printf("het werkt wel met een void functie\r\n"); |
TimDouma | 2:bf1466ac4e6f | 42 | } |
TimDouma | 2:bf1466ac4e6f | 43 | |
TimDouma | 2:bf1466ac4e6f | 44 | |
TimDouma | 0:46a1642a10c8 | 45 | /* |
TimDouma | 0:46a1642a10c8 | 46 | void MotorhoekBerekenen (){ |
TimDouma | 0:46a1642a10c8 | 47 | if (x > -a){ |
TimDouma | 0:46a1642a10c8 | 48 | float MotorHoek1 = 180 - atan(y/(x+a)) - acos( |
TimDouma | 0:46a1642a10c8 | 49 | */ |
TimDouma | 0:46a1642a10c8 | 50 | int main() |
TimDouma | 0:46a1642a10c8 | 51 | { |
TimDouma | 2:bf1466ac4e6f | 52 | float D1 = AfstandBerekenenLinks(); |
TimDouma | 2:bf1466ac4e6f | 53 | float D2 = AfstandBerekenenRechts(); |
TimDouma | 2:bf1466ac4e6f | 54 | |
TimDouma | 2:bf1466ac4e6f | 55 | TickerAfstandBerekenen.attach(&AfstandBerekenenLinks,1); |
TimDouma | 0:46a1642a10c8 | 56 | |
TimDouma | 0:46a1642a10c8 | 57 | pc.baud(SERIAL_BAUD); |
TimDouma | 2:bf1466ac4e6f | 58 | pc.printf("D1 = %f en D2 = %f\r\n", D1, D2); |
TimDouma | 2:bf1466ac4e6f | 59 | |
TimDouma | 0:46a1642a10c8 | 60 | while (true) { |
TimDouma | 0:46a1642a10c8 | 61 | |
TimDouma | 0:46a1642a10c8 | 62 | } |
TimDouma | 0:46a1642a10c8 | 63 | } |