Antonia Baumgartner / Mbed 2 deprecated YB_copy

Dependencies:   mbed

Fork of Versuch21 by Antonia Baumgartner

Committer:
baumgant
Date:
Wed Apr 25 11:16:16 2018 +0000
Revision:
2:efa9a78591da
Parent:
1:6ef5bc60e69c
Child:
3:f44ef28cfb2d
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 0:b886f13e4ac6 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 0:b886f13e4ac6 26 DigitalOut myled(LED1); // LED 1
mrbb2 1:6ef5bc60e69c 27 DigitalIn button(USER_BUTTON); // Startknopf
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 2:efa9a78591da 36 PwmOut pwmRight(PA_8);
baumgant 2:efa9a78591da 37 PwmOut pwmLeft(PA_9);
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 Controller controller(pwmLeft, pwmRight, counterLeft, counterRight);
baumgant 0:b886f13e4ac6 45
baumgant 0:b886f13e4ac6 46 // Grosse Sensoren aufrufen
baumgant 0:b886f13e4ac6 47 IRSensorGF Sensor1(sensorValue1);
baumgant 0:b886f13e4ac6 48 IRSensorG Sensor2(sensorValue2);
baumgant 0:b886f13e4ac6 49 IRSensorG Sensor3(sensorValue3);
baumgant 0:b886f13e4ac6 50 // Kleine Sensoren aufrufen
baumgant 0:b886f13e4ac6 51 IRSensorK Sensor4(sensorValue4);
baumgant 0:b886f13e4ac6 52 IRSensorK Sensor5(sensorValue5);
baumgant 0:b886f13e4ac6 53 // Helligkeitssensor aufrufen
baumgant 0:b886f13e4ac6 54 IRSensorZ Sensor6(sensorValue6);
baumgant 0:b886f13e4ac6 55
baumgant 2:efa9a78591da 56 //------------------------------------------------------------------------------
baumgant 0:b886f13e4ac6 57
baumgant 0:b886f13e4ac6 58 int main()
baumgant 0:b886f13e4ac6 59 {
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 0:b886f13e4ac6 66
mrbb2 1:6ef5bc60e69c 67
baumgant 0:b886f13e4ac6 68 if(button==1) {
baumgant 0:b886f13e4ac6 69
baumgant 0:b886f13e4ac6 70 while (1) {
baumgant 0:b886f13e4ac6 71
baumgant 0:b886f13e4ac6 72 D = LHR.moving();
mrbb2 1:6ef5bc60e69c 73 //sl = spurhaltung.speedr();
mrbb2 1:6ef5bc60e69c 74 //printf("Status: %d\r\n", button);
mrbb2 1:6ef5bc60e69c 75 //sr = spurhaltung.speedl();
baumgant 0:b886f13e4ac6 76 motion.switching(D);
mrbb2 1:6ef5bc60e69c 77
baumgant 2:efa9a78591da 78
baumgant 0:b886f13e4ac6 79 }
baumgant 0:b886f13e4ac6 80 }
baumgant 0:b886f13e4ac6 81 }