Cases eingefügt

Dependencies:   mbed

Committer:
Jacqueline
Date:
Mon Apr 16 14:18:35 2018 +0000
Revision:
2:a227732e1412
Parent:
0:e611a0b9f02a
h

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Jacqueline 0:e611a0b9f02a 1 #include <mbed.h>
Jacqueline 0:e611a0b9f02a 2
Jacqueline 0:e611a0b9f02a 3 #include "EncoderCounter.h"
Jacqueline 0:e611a0b9f02a 4 #include "Controller.h"
Jacqueline 0:e611a0b9f02a 5 #include "IRSensor.h"
Jacqueline 0:e611a0b9f02a 6
Jacqueline 2:a227732e1412 7 // DigitalOut myled(LED1);
Jacqueline 0:e611a0b9f02a 8
Jacqueline 2:a227732e1412 9 //DigitalOut led0(PC_8);
Jacqueline 2:a227732e1412 10 //DigitalOut led1(PC_6);
Jacqueline 2:a227732e1412 11 //DigitalOut led2(PB_12);
Jacqueline 2:a227732e1412 12 //DigitalOut led3(PA_7);
Jacqueline 2:a227732e1412 13 //DigitalOut led4(PC_0);
Jacqueline 2:a227732e1412 14 //DigitalOut led5(PC_9);
Jacqueline 0:e611a0b9f02a 15
Jacqueline 2:a227732e1412 16 //AnalogIn distance(PB_1);
Jacqueline 2:a227732e1412 17 //DigitalOut enable(PC_1);
Jacqueline 2:a227732e1412 18 //DigitalOut bit0(PH_1);
Jacqueline 2:a227732e1412 19 //DigitalOut bit1(PC_2);
Jacqueline 2:a227732e1412 20 //DigitalOut bit2(PC_3);
Jacqueline 0:e611a0b9f02a 21
Jacqueline 2:a227732e1412 22 IRSensor irSensorF(PC_2);
Jacqueline 2:a227732e1412 23 IRSensor irSensorR(PC_3);
Jacqueline 2:a227732e1412 24 IRSensor irSensorL(PC_5);
Jacqueline 0:e611a0b9f02a 25
Jacqueline 2:a227732e1412 26 BottomSensor lineDetector(RX/D0);
Jacqueline 0:e611a0b9f02a 27
Jacqueline 0:e611a0b9f02a 28 DigitalOut enableMotorDriver(PB_2);
Jacqueline 0:e611a0b9f02a 29 DigitalIn motorDriverFault(PB_14);
Jacqueline 0:e611a0b9f02a 30 DigitalIn motorDriverWarning(PB_15);
Jacqueline 0:e611a0b9f02a 31
Jacqueline 2:a227732e1412 32 PwmOut pwmLeft(PA_9);
Jacqueline 2:a227732e1412 33 PwmOut pwmRight(PA_8);
Jacqueline 0:e611a0b9f02a 34
Jacqueline 0:e611a0b9f02a 35 EncoderCounter counterLeft(PB_6, PB_7);
Jacqueline 0:e611a0b9f02a 36 EncoderCounter counterRight(PA_6, PC_7);
Jacqueline 0:e611a0b9f02a 37
Jacqueline 0:e611a0b9f02a 38 Controller controller(pwmLeft, pwmRight, counterLeft, counterRight);
Jacqueline 0:e611a0b9f02a 39
Jacqueline 0:e611a0b9f02a 40 int main()
Jacqueline 0:e611a0b9f02a 41 {
Jacqueline 0:e611a0b9f02a 42
Jacqueline 0:e611a0b9f02a 43 controller.setDesiredSpeedLeft(150.0f); // Drehzahl in [rpm]
Jacqueline 0:e611a0b9f02a 44 controller.setDesiredSpeedRight(-150.0f);
Jacqueline 0:e611a0b9f02a 45 enable = 1;
Jacqueline 0:e611a0b9f02a 46 enableMotorDriver = 1; // Schaltet den Leistungstreiber ein
Jacqueline 0:e611a0b9f02a 47
Jacqueline 0:e611a0b9f02a 48 while(1) {
Jacqueline 0:e611a0b9f02a 49
Jacqueline 0:e611a0b9f02a 50 myled =! myled;
Jacqueline 0:e611a0b9f02a 51
Jacqueline 2:a227732e1412 52 if (irSensorf.read() < 0.2f) led0 = 1;
Jacqueline 0:e611a0b9f02a 53 else led0 = 0;
Jacqueline 0:e611a0b9f02a 54
Jacqueline 2:a227732e1412 55 if (irSensorR.read() < 0.2f) led1 = 1;
Jacqueline 0:e611a0b9f02a 56 else led1 = 0;
Jacqueline 0:e611a0b9f02a 57
Jacqueline 2:a227732e1412 58 if (irSensorL.read() < 0.2f) led2 = 1;
Jacqueline 0:e611a0b9f02a 59 else led2 = 0;
Jacqueline 0:e611a0b9f02a 60
Jacqueline 2:a227732e1412 61 //if (irSensor3.read() < 0.2f) led3 = 1;
Jacqueline 2:a227732e1412 62 //else led3 = 0;
Jacqueline 0:e611a0b9f02a 63
Jacqueline 2:a227732e1412 64 //if (irSensor4.read() < 0.2f) led4 = 1;
Jacqueline 2:a227732e1412 65 //else led4 = 0;
Jacqueline 0:e611a0b9f02a 66
Jacqueline 2:a227732e1412 67 //if (irSensor5.read() < 0.2f) led5 = 1;
Jacqueline 2:a227732e1412 68 //else led0 = 5;
Jacqueline 0:e611a0b9f02a 69
Jacqueline 0:e611a0b9f02a 70 printf("iSumLeft: %f, iSumRight: %f, counterDiff; %d \n\r", controller.getIntegralLeft(), controller.getIntegralRight(), (counterLeft.read()+counterRight.read()));
Jacqueline 0:e611a0b9f02a 71
Jacqueline 0:e611a0b9f02a 72 wait(0.2f); // 100 ms
Jacqueline 0:e611a0b9f02a 73
Jacqueline 0:e611a0b9f02a 74 }
Jacqueline 0:e611a0b9f02a 75 }