Antonia Baumgartner / Mbed 2 deprecated YB_copy

Dependencies:   mbed

Fork of Versuch21 by Antonia Baumgartner

Committer:
baumgant
Date:
Wed May 09 13:33:59 2018 +0000
Revision:
5:93d3efe46493
Parent:
4:3c6d2c035243
PES2;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
baumgant 0:b886f13e4ac6 1 #include <mbed.h>
baumgant 0:b886f13e4ac6 2 #include "EncoderCounter.h"
baumgant 0:b886f13e4ac6 3 #include "Controller.h"
baumgant 0:b886f13e4ac6 4 #include "IRSensorG.h"
baumgant 0:b886f13e4ac6 5 #include "IRSensorGF.h"
baumgant 0:b886f13e4ac6 6 #include "IRSensorK.h"
baumgant 0:b886f13e4ac6 7 #include "IRSensorZ.h"
baumgant 0:b886f13e4ac6 8 #include "Spurhaltung.h"
baumgant 0:b886f13e4ac6 9 #include "LHR.h"
mrbb2 1:6ef5bc60e69c 10 #include "Motion.h"
baumgant 0:b886f13e4ac6 11
baumgant 2:efa9a78591da 12 //------------------------------------------------------------------------------
baumgant 2:efa9a78591da 13
baumgant 0:b886f13e4ac6 14 //Motorbefehle von LHR
baumgant 4:3c6d2c035243 15 int D, sl, sr;
baumgant 0:b886f13e4ac6 16 Timer timey;
baumgant 0:b886f13e4ac6 17
baumgant 2:efa9a78591da 18 //------------------------------------------------------------------------------
baumgant 0:b886f13e4ac6 19
baumgant 0:b886f13e4ac6 20 AnalogIn sensorValue1(PC_2); // Frontsensor mitte
baumgant 0:b886f13e4ac6 21 AnalogIn sensorValue2(PC_3); // Frontsensor links
baumgant 0:b886f13e4ac6 22 AnalogIn sensorValue3(PC_5); // Frontsensor rechts
baumgant 0:b886f13e4ac6 23 AnalogIn sensorValue4(PB_1); // Seitlicher Sensor links
baumgant 0:b886f13e4ac6 24 AnalogIn sensorValue5(PA_4); // Seitlicher Sensor rechts
baumgant 0:b886f13e4ac6 25 AnalogIn sensorValue6(PB_0); // Helligkeitssensor
baumgant 4:3c6d2c035243 26 DigitalIn mybutton(USER_BUTTON);
baumgant 4:3c6d2c035243 27 DigitalOut myled(LED1);
baumgant 0:b886f13e4ac6 28 DigitalOut power_5v(PC_4); // 5V auf Sensoren, geschalten
baumgant 0:b886f13e4ac6 29
baumgant 0:b886f13e4ac6 30 DigitalOut enable(PC_1);
baumgant 0:b886f13e4ac6 31
baumgant 0:b886f13e4ac6 32 DigitalOut enableMotorDriver(PB_2);
baumgant 0:b886f13e4ac6 33 DigitalIn motorDriverFault(PB_14);
baumgant 0:b886f13e4ac6 34 DigitalIn motorDriverWarning(PB_15);
baumgant 0:b886f13e4ac6 35
baumgant 5:93d3efe46493 36 PwmOut pwmRight(PA_9);
baumgant 5:93d3efe46493 37 PwmOut pwmLeft(PA_8);
baumgant 0:b886f13e4ac6 38
baumgant 2:efa9a78591da 39 EncoderCounter counterLeft(PB_6, PB_7);
baumgant 2:efa9a78591da 40 EncoderCounter counterRight(PA_6, PC_7);
baumgant 0:b886f13e4ac6 41
baumgant 2:efa9a78591da 42 //------------------------------------------------------------------------------
baumgant 0:b886f13e4ac6 43
baumgant 0:b886f13e4ac6 44
baumgant 0:b886f13e4ac6 45 // Grosse Sensoren aufrufen
baumgant 0:b886f13e4ac6 46 IRSensorGF Sensor1(sensorValue1);
baumgant 0:b886f13e4ac6 47 IRSensorG Sensor2(sensorValue2);
baumgant 0:b886f13e4ac6 48 IRSensorG Sensor3(sensorValue3);
baumgant 0:b886f13e4ac6 49 // Kleine Sensoren aufrufen
baumgant 0:b886f13e4ac6 50 IRSensorK Sensor4(sensorValue4);
baumgant 0:b886f13e4ac6 51 IRSensorK Sensor5(sensorValue5);
baumgant 0:b886f13e4ac6 52 // Helligkeitssensor aufrufen
baumgant 0:b886f13e4ac6 53 IRSensorZ Sensor6(sensorValue6);
baumgant 0:b886f13e4ac6 54
baumgant 2:efa9a78591da 55 //------------------------------------------------------------------------------
baumgant 0:b886f13e4ac6 56
baumgant 0:b886f13e4ac6 57 int main()
baumgant 0:b886f13e4ac6 58 {
baumgant 5:93d3efe46493 59 Controller controller(pwmLeft, pwmRight, counterLeft, counterRight);
baumgant 0:b886f13e4ac6 60 power_5v = 1; // Einschalten 5V Speisung der Sensoren
baumgant 0:b886f13e4ac6 61 enable = 1;
baumgant 0:b886f13e4ac6 62 enableMotorDriver = 1; //Schaltet den Leistungstreiber ein
baumgant 0:b886f13e4ac6 63 LHR LHR(Sensor1, Sensor2, Sensor3, Sensor4, Sensor5, Sensor6);
baumgant 0:b886f13e4ac6 64 Spurhaltung spurhaltung(Sensor2, Sensor3);
mrbb2 1:6ef5bc60e69c 65 Motion motion(counterLeft, counterRight, controller, spurhaltung, Sensor1, Sensor2, Sensor3, Sensor4, Sensor5, Sensor6);
baumgant 4:3c6d2c035243 66
baumgant 4:3c6d2c035243 67 while(1) {
baumgant 0:b886f13e4ac6 68
baumgant 4:3c6d2c035243 69 if (mybutton == 0) { // Button is pressed
baumgant 4:3c6d2c035243 70 wait(1);
baumgant 4:3c6d2c035243 71 while (1) {
baumgant 4:3c6d2c035243 72 D = LHR.moving();
baumgant 4:3c6d2c035243 73 motion.switching(D);
baumgant 5:93d3efe46493 74 /*printf("Sensor1:%d\r\n", Sensor1.read());
baumgant 5:93d3efe46493 75 printf("Sensor2:%d\r\n", Sensor2.read());
baumgant 5:93d3efe46493 76 printf("Sensor3:%d\r\n", Sensor3.read());
baumgant 5:93d3efe46493 77 printf("Sensor4:%d\r\n", Sensor4.read());
baumgant 5:93d3efe46493 78 printf("Sensor5:%d\r\n", Sensor5.read());
baumgant 5:93d3efe46493 79 printf("\r\n");*/
baumgant 5:93d3efe46493 80 wait(0.05f);
baumgant 4:3c6d2c035243 81 }
baumgant 4:3c6d2c035243 82 }
baumgant 0:b886f13e4ac6 83 }
baumgant 5:93d3efe46493 84 }